《電子技術(shù)應(yīng)用》
您所在的位置:首頁 > 通信與網(wǎng)絡(luò) > 設(shè)計(jì)應(yīng)用 > 一種雙CAN口同步通訊板的設(shè)計(jì)
一種雙CAN口同步通訊板的設(shè)計(jì)
維庫
摘要: 一種雙CAN口同步通訊板的設(shè)計(jì),隨著現(xiàn)代戰(zhàn)爭要求武器系統(tǒng)在戰(zhàn)場條件下的可靠性和維修性提高,,傳統(tǒng)分離式控制系統(tǒng)的快速保障難以滿足要求,。這里提出一種基于TMS320LF2407A的雙CAN口同步通訊板設(shè)計(jì),TMS320LF2407A是TI公司推出的一款定點(diǎn)DSP控制器
關(guān)鍵詞: 設(shè)計(jì) 通訊 同步 CAN
Abstract:
Key words :

 隨著現(xiàn)代戰(zhàn)爭要求武器系統(tǒng)在戰(zhàn)場條件下的可靠性和維修性提高,,傳統(tǒng)分離式控制系統(tǒng)的快速保障難以滿足要求,。這里提出一種基于TMS320LF2407A的雙CAN同步通訊設(shè)計(jì),,TMS320LF2407A是TI公司推出的一款定點(diǎn)DSP控制器,,它采用了高性能靜態(tài)CMOS技術(shù),,使得供電電壓降為3.3V,,減小了控制器的功耗;40MIPS的執(zhí)行速度使得指令周期縮短到25ns(40MHz),,從而提高了控制器的實(shí)時(shí)控制能力,;集成了32K字的閃存(可加密)、2.5K的RAM,、500ns轉(zhuǎn)換時(shí)間的A/D轉(zhuǎn)換器,,片上事件管理器提供了可以滿足各種電機(jī)的PWM接口和I/O功能,此外還提供了適用于工業(yè)控制領(lǐng)域的一些特殊功能,,如看門狗電路、SPI,、SCI和CAN控制器等,從而使它可廣泛應(yīng)用于工業(yè)控制領(lǐng)域,。

  2 雙CAN口同步通訊板總體設(shè)計(jì)方案

  TTCAN通過獨(dú)占窗口的方式解決消息傳送的確定性問題,,提高總線利用率,試圖滿足應(yīng)用發(fā)展的要求,。但是在惡劣環(huán)境的高誤碼率下,,傳送的可靠性下降,容錯的措施不成熟,,成本較高。PLC可編程邏輯控制器,,一種數(shù)字運(yùn)算操作的電子系統(tǒng),,專為在工業(yè)環(huán)境應(yīng)用而設(shè)計(jì)的。它采用一類可編程的存儲器,用于其內(nèi)部存儲程序,,執(zhí)行邏輯運(yùn)算,順序控制,,定時(shí),計(jì)數(shù)與算術(shù)操作等面向用戶的指令,,并通過數(shù)字或模擬式輸入/輸出控制各種類型的機(jī)械或生產(chǎn)過程。是工業(yè)控制的核心部分,。 圖1為雙CAN口同步通訊板原理圖。

雙CAN口同步通訊板原理圖

  考慮到PLC的循環(huán)工作模式,、數(shù)據(jù)發(fā)送時(shí)刻的隨機(jī)性以及數(shù)據(jù)傳輸?shù)姆菍?shí)時(shí)性等因素,,則將MPC2515 CAN獨(dú)立控制器作為PLC與同步通訊板之間的內(nèi)部通訊接口,。針對系統(tǒng)TTCAN網(wǎng)絡(luò)必須在指定時(shí)隙內(nèi)實(shí)時(shí)完成數(shù)據(jù)接收,、發(fā)送,、交換和處理的特點(diǎn),,只有將 TMS320LF2407的內(nèi)部CAN控制器配合內(nèi)部高速總線、高速RAM以及DSP強(qiáng)大的運(yùn)算能力,,才能滿足TTCAN網(wǎng)絡(luò)要求,,因此選用 TMS320LF2407的內(nèi)部CAN控制器作為TTCAN網(wǎng)絡(luò)的通訊接口,。

  3 雙CAN口同步通訊板接口硬件設(shè)計(jì)

  3.1 同步信號接口

  同步信號是指在同一載體內(nèi)同時(shí)發(fā)出的多個信號源,,使接收者能收到更多或更好的信息。同步信號應(yīng)包含行同步信號,、場同步信號和色同步信號(彩色負(fù)載波)三種,。為了進(jìn)一步提高同步信號抗干擾能力,,在兩條差分傳輸線輸入端采用磁珠消除疊加在同步信號上的共模干擾,,并采用高速光耦隔離對通訊板其他器件的干擾,,這樣可以確保同步信號接口的可靠性,,其電路設(shè)計(jì)如圖2所示,。

同步信號接口電路

  3.2 同步通訊板與PLC CAN接口

  該接口電路使用CAN2.0B協(xié)議實(shí)現(xiàn)與PLC的數(shù)據(jù)通訊,。TMS320LF2407通過10 MHz SPI接口配置MPC2515的參數(shù),。數(shù)據(jù)收/發(fā)控制均采用硬件方式將信號接入TMS320LF2407的外部中斷源INT2與INT3,。TMS320LF2407可以對MCP2515進(jìn)行讀操作,;當(dāng)RX0BF和RX1BF為高電平時(shí),,表明MCP2515未接收到有效數(shù)據(jù)。發(fā)送請求控制使用TMS320LF2407的IO接口向MCP2515發(fā)出硬件請求命令TX0RST,, TX1RST,,TX3RST來實(shí)現(xiàn)快速發(fā)送請求,。其電路設(shè)計(jì)如圖3所示,。

同步通訊板與PLC CAN接口電路

  4 雙CAN口同步通訊板軟件設(shè)計(jì)

  雙CAN口同步通訊板軟件分為3個模塊:

 ?。?)CAN隨機(jī)通訊模塊負(fù)責(zé)與PLC的隨機(jī)CAN通訊,,接收來自PLC的突發(fā)數(shù)據(jù),發(fā)送來自TTCAN網(wǎng)絡(luò)數(shù)據(jù),;

  (2)TTCAN通訊模塊負(fù)責(zé)與TTCAN網(wǎng)絡(luò)通訊,,TTCAN是一種基于CAN總線充分利用時(shí)間觸發(fā)與事件觸發(fā)兩種機(jī)制優(yōu)點(diǎn)的新型協(xié)議,,其具有帶寬利用率高,、通訊延時(shí)低以及消息傳輸可管理等特點(diǎn),對于分布式硬實(shí)時(shí)系統(tǒng)的應(yīng)用以及解決網(wǎng)絡(luò)控制系統(tǒng)中消息延時(shí)具有重大的意義,。在同步信號控制下按時(shí)序要求向TTCAN網(wǎng)絡(luò)發(fā)送數(shù)據(jù)和接收來自PLC的隨機(jī)CAN數(shù)據(jù):

 ?。?)數(shù)據(jù)緩沖模塊負(fù)責(zé)PLC和TTCAN網(wǎng)絡(luò)數(shù)據(jù)的同步,完成必要的通訊處理任務(wù),。圖4為各模塊之間的協(xié)同工作流程,。

各模塊之間的協(xié)同工作流程

  4.1 CAN隨機(jī)通訊模塊軟件

  首先初始化TMS320LF2407的SPI接口,,然后設(shè)置MCP2515 CAN的通訊參數(shù)完成模塊的初始化,。函數(shù)SPI_WRITE_COMMAND(unsigned int ADDRESS,,unsigned intDATA)更新MCP2515的指定寄存器中的內(nèi)容;函數(shù)SPI_READ_COMMAND (unsigned int ADDRESS) 讀取MCP2515指定寄存器,;函數(shù)RTS_123(unsigned int NUM)從數(shù)據(jù)緩沖區(qū)提取數(shù)據(jù)按指定通道數(shù)據(jù)發(fā)送給PLC;函數(shù)RANDOM_RCV()將來自PLC的數(shù)據(jù)經(jīng)查詢接收后存放到數(shù)據(jù)緩沖區(qū),。

  4.2 TTCAN通訊模塊軟件

  該模塊由甬?dāng)?shù)CAN_INIT()完成對TMS320LF2407內(nèi)部CAN控制器的初始化及通訊參數(shù)設(shè)置,;函數(shù)dsp_can_send(unsigned int IDH,unsigned int IDL,,unsigned int*data1)從數(shù)據(jù)緩沖區(qū)提取數(shù)據(jù)向TTCAN網(wǎng)絡(luò)發(fā)送,;接收中斷服務(wù)函數(shù)CAN_RCV_ISR()從TFCAN網(wǎng)絡(luò)接收數(shù)據(jù)并存入數(shù)據(jù)緩沖區(qū),;而同步信號接收函數(shù)sytem_syn()實(shí)現(xiàn)與TTCAN網(wǎng)絡(luò)的同步以及發(fā)送時(shí)隙的控制,。

  4.3 數(shù)據(jù)緩沖模塊軟件設(shè)計(jì)

  該模塊是雙CAN口同步通訊板的核心,其目的就是確保來自PLC的隨機(jī)數(shù)據(jù)經(jīng)該模塊后可以實(shí)現(xiàn)向,,TTCAN網(wǎng)絡(luò)發(fā)送的數(shù)據(jù)是在同步信號控制下,,按指定時(shí)隙發(fā)送,,來自TTCAN網(wǎng)絡(luò)的數(shù)據(jù)經(jīng)該模塊做必要的解析后轉(zhuǎn)發(fā)給PLC。為此設(shè)計(jì)兩個循環(huán)隊(duì)列緩沖區(qū)mcp2515_rcv_buffer和dsp_rcv_buffer實(shí)現(xiàn)PLC數(shù)據(jù)與TTCAN網(wǎng)絡(luò)同步,。實(shí)現(xiàn)方法如下:

 ?。?)通訊板接收到PLC數(shù)據(jù)后,將其數(shù)據(jù)存放到mcp2515_rcv_buffer緩沖區(qū)中,,然后MCP2515指示索引 mep2515_rcv_index加1;DSP CAN同步數(shù)據(jù)發(fā)送時(shí)按索引dsp_send_index的值從mcp2515_rcv_buffer緩沖區(qū)對應(yīng)位置提取發(fā)送數(shù)據(jù),,然后該索引值加1,,dsp_send_index==mcp2510_rcv_index,,表明MCP2515緩沖器已滿,。

  (2)同步CAN口接收的數(shù)據(jù)存放到dsp_rcv_buffer緩沖區(qū),,然后指示索引dsp_rcv_index加1,;MCP2515數(shù)據(jù)發(fā)送使用索引 mcp2510_send_index在循環(huán)緩沖區(qū)dsp_rcv_buffer提取對應(yīng)的數(shù)據(jù)發(fā)送給PLC CAN,。當(dāng)mcp2510_send_index==dsp_rcv_index,,表明DSP接收緩沖區(qū)空;(dsp_rcv_index+1)% FIFOMAX==mcp2510_send_index表明DSP緩沖隊(duì)列滿,。

  5 結(jié)束語

  該雙CAN口同步通訊板在連續(xù)600 h、不同數(shù)據(jù)流量的測試中表現(xiàn)良好,,無任何異常?,F(xiàn)已成功應(yīng)用于某型防空武器火力控制分系統(tǒng),。實(shí)踐表明該設(shè)計(jì)能夠很好擴(kuò)展PLC在防空武器系統(tǒng)TTCAN 網(wǎng)絡(luò)上的應(yīng)用,,極大提高了火力控制系統(tǒng)在戰(zhàn)場條件下的可靠性和可維護(hù)性,,符合模塊化設(shè)計(jì)總要求,。同時(shí),,該雙CAN口同步通訊板也可廣泛用于事件觸發(fā)數(shù)據(jù)與 TTCAN網(wǎng)絡(luò)的接入應(yīng)用,。


 

此內(nèi)容為AET網(wǎng)站原創(chuàng),,未經(jīng)授權(quán)禁止轉(zhuǎn)載。