1 引言
電子負(fù)載監(jiān)控系統(tǒng)相當(dāng)于整個(gè)功率模擬電子負(fù)載系統(tǒng)的綜合管理平臺(tái),完成對(duì)整個(gè)電子負(fù)載系統(tǒng)的性能監(jiān)視和運(yùn)行控制,承擔(dān)著系統(tǒng)各部分運(yùn)行性能的監(jiān)測、故障報(bào)警、狀態(tài)控制等任務(wù)。單元控制器則是整個(gè)電子負(fù)載監(jiān)控系統(tǒng)中聯(lián)系電子負(fù)載模塊和監(jiān)控上位機(jī)的橋梁,是上下層CAN網(wǎng)絡(luò)可靠通信的關(guān)鍵所在。本文主要介紹以TMS320LF2407為主控芯片的電子負(fù)載監(jiān)控系統(tǒng)單元控制器的硬件電路設(shè)計(jì)、通信規(guī)則和軟件實(shí)現(xiàn)。
2 基于CAN總線監(jiān)控系統(tǒng)整體結(jié)構(gòu)
電子負(fù)載監(jiān)控系統(tǒng)是一個(gè)基于CAN總線的兩級(jí)結(jié)構(gòu)的通訊網(wǎng)絡(luò),整個(gè)系統(tǒng)的結(jié)構(gòu)如圖1所示。
上層Top-CAN BUS 網(wǎng)絡(luò)主要負(fù)責(zé)對(duì)電子負(fù)載模塊的整體監(jiān)控。監(jiān)控上位機(jī)確定整個(gè)系統(tǒng)的控制策略,然后通過Top-CAN BUS 網(wǎng)絡(luò)傳達(dá)到各個(gè)單元控制器。在此,監(jiān)控上位機(jī)并不直接與電子負(fù)載單元進(jìn)行通信。因此,每個(gè)電子負(fù)載模塊都是上層Top-CAN BUS 網(wǎng)的一個(gè)子節(jié)點(diǎn)。監(jiān)控上位機(jī)通過CAN卡與上層Top-CAN BUS網(wǎng)絡(luò)相連,作為上層Top-CAN BUS網(wǎng)的主節(jié)點(diǎn)。
下層Bot-CAN BUS 網(wǎng)絡(luò)主要負(fù)責(zé)收集各個(gè)電子負(fù)載單元的狀態(tài)信息和傳達(dá)上位機(jī)指令。單元控制器通過下層Bot-CAN BUS 網(wǎng)絡(luò)與各個(gè)電子負(fù)載單元直接進(jìn)行通信。將上位機(jī)發(fā)送的指令傳達(dá)給各個(gè)電子負(fù)載單元,同時(shí)收集各個(gè)電子負(fù)載單元的狀態(tài)信息,并對(duì)這些信息進(jìn)行一定的處理,然后傳送給上位機(jī)。因此,每個(gè)電子負(fù)載單元都是下層Bot-CAN BUS 網(wǎng)的一個(gè)子節(jié)點(diǎn)。
在整個(gè)監(jiān)控系統(tǒng)中,單元控制器同時(shí)作為上層Top-CAN BUS網(wǎng)的子節(jié)點(diǎn)和下層Bot-CAN BUS網(wǎng)的主節(jié)點(diǎn),是連接兩層CAN網(wǎng)絡(luò)的樞紐。監(jiān)控上位機(jī)通過單元控制器實(shí)現(xiàn)對(duì)各個(gè)電子負(fù)載單元的監(jiān)控。
3單元控制器硬件電路設(shè)計(jì)
3.1 主控芯片選擇:
單元控制器的設(shè)計(jì)要兼顧速度特性和穩(wěn)定性,因此在本設(shè)計(jì)中選用了TI公司的TMS320LF2407作為主控芯片。它是一款內(nèi)置CAN模塊的DSP芯片,它具有內(nèi)在的操作靈活性,高速的運(yùn)算能力等特點(diǎn)。TMS320LF2407的CAN模塊完全支持CAN2.0A/B協(xié)議,可以工作在標(biāo)準(zhǔn)模式和擴(kuò)展模式,內(nèi)置6個(gè)郵箱完成數(shù)據(jù)收發(fā),可編程位定時(shí)器設(shè)置,進(jìn)行自測試,CAN模塊內(nèi)各部分的結(jié)構(gòu)和功能基本上和流行的PHILIPS增強(qiáng)型CAN控制器SJAl000相同。而且,電子負(fù)載單元中采用的主控芯片也是TMS320LF2407,這樣可以實(shí)現(xiàn)系統(tǒng)CAN網(wǎng)絡(luò)接口的一致性和方便性。
3.2 CAN BUS接口電路設(shè)計(jì):
單元控制器作為上下層CAN網(wǎng)聯(lián)系的橋梁,需要兩個(gè)CAN BUS節(jié)點(diǎn)的接口。采用的TMS320LF2407主控芯片,具有一個(gè)內(nèi)置的CAN控制器,只需要采用一片CAN收發(fā)器即可構(gòu)成上層CAN的接口。由于TMS320LF2407的工作電壓是3.3V,如果采用常用的PCA82C250系列收發(fā)器的話,就需要加電平轉(zhuǎn)換電路,增加了電路設(shè)計(jì)的復(fù)雜性。因此,在本設(shè)計(jì)中采用了TI公司推出的3.3V系列CAN收發(fā)器SN65HVD230。SN65HVD230是該系列的第一個(gè)產(chǎn)品,其輸出轉(zhuǎn)換時(shí)間是可編程的,有助于設(shè)計(jì)人員減小電磁干擾從而提高系統(tǒng)設(shè)計(jì)的可靠性。其構(gòu)成的上層Top-CAN BUS接口電路如圖2所示。
對(duì)于下層CAN BUS接口電路的設(shè)計(jì),采用擴(kuò)展一片CAN控制器SJA1000和收發(fā)器PCA82C250的方式來實(shí)現(xiàn)。[1]
由于TMS320LF2407沒有提供與SJA1000 CAN控制器的直接接口信號(hào),本設(shè)計(jì)中采用INTEL方式,為使TMS320LF2407滿足SJA1000的接口信號(hào)要求,做了以下幾點(diǎn)設(shè)計(jì)。
l 將TMS320LF2407的數(shù)據(jù)線D0-D7作為CAN的地址、數(shù)據(jù)復(fù)用線,采用TMS320LF2407的數(shù)據(jù)線選擇CAN的內(nèi)部端口和傳送數(shù)據(jù)。
l 采用地址線A0、寫選通信號(hào)WR和端口選通信號(hào)STRB的邏輯組合產(chǎn)生TMS320LF2407的ALE地址有效信號(hào)。
l 采用讀信號(hào)和A0的邏輯組合產(chǎn)生SJA1000的讀選通信號(hào)RD,用寫信號(hào)和A0的邏輯組合產(chǎn)生SJA1000的寫選通信號(hào)WR。
l 采用TMS320LF2407的I/O空間選通信號(hào)IS和高位地址的譯碼信號(hào)的組合邏輯產(chǎn)生SJA1000的片選信號(hào)CS。
采用這種設(shè)計(jì)方法是將TMS320LF2407的數(shù)據(jù)線改為適應(yīng)CAN控制器的數(shù)據(jù)地址線。將TMS320LF2407的A0作為地址數(shù)據(jù)選擇線,A0=1時(shí),地址有效;A0=0時(shí),數(shù)據(jù)有效。即用奇數(shù)地址選擇端口,用偶數(shù)地址傳送數(shù)據(jù)。同時(shí),通過信號(hào)的邏輯組合,在地址有效期間不產(chǎn)生讀寫信號(hào),而是產(chǎn)生滿足CAN的地址有效信號(hào)ALE;在數(shù)據(jù)有效期間產(chǎn)生滿足CAN的讀寫邏輯信號(hào)時(shí)序。[2]
TMS320LF2407與SJA1000的接口邏輯如表1所示:
表1
其下層Bot-CAN BUS接口電路如圖3所示:
SJA1000與PCA82C250之間應(yīng)加隔離光耦,實(shí)現(xiàn)總線上各CAN節(jié)點(diǎn)間的電氣隔離。為突出主要接口電路,圖3中省略。
其中,采用一片GAL20V10B作為接口邏輯轉(zhuǎn)換電路。其邏輯轉(zhuǎn)換如下:
CS=!A15#!A14#IS;
ALE=A0&!STRB&!RW;
WR=A0#STRB#RW;
RD=A0#STRB#!RW;
4 CAN應(yīng)用層通訊協(xié)議及其軟件實(shí)現(xiàn)
4.1電子負(fù)載監(jiān)控系統(tǒng)中,監(jiān)控上位機(jī)與單元控制器之間所采用的部分CAN應(yīng)用層協(xié)議如下:
l 用一組相互獨(dú)立的固定數(shù)字作為每個(gè)電子負(fù)載模塊的標(biāo)識(shí)符。
l 單元控制器從上電開始,每隔一定時(shí)間向監(jiān)控上位機(jī)發(fā)送常規(guī)通訊幀,監(jiān)控上位機(jī)接收到數(shù)據(jù)后返回確認(rèn)信號(hào),即可判斷各個(gè)電子負(fù)載模塊的存在狀態(tài)。
l 單元控制器接收到監(jiān)控上位機(jī)發(fā)布的指令,執(zhí)行之后返回確認(rèn)信號(hào)。
l 監(jiān)控上位機(jī)發(fā)送數(shù)據(jù)請(qǐng)求指令,單元控制器隨即發(fā)送數(shù)據(jù),每種類型的數(shù)據(jù)均采用固定格式。
4.2 上位機(jī)與電子負(fù)載單元控制器通訊軟件流程圖如圖4所示。
5 結(jié)論
本文所設(shè)計(jì)的雙CAN網(wǎng)單元控制器應(yīng)用在電子負(fù)載監(jiān)控系統(tǒng)中,按照預(yù)先設(shè)定的CAN應(yīng)用層通訊協(xié)議,取得了良好的監(jiān)控效果。在信息量較大和現(xiàn)場環(huán)境復(fù)雜的情況下,能夠確保通信的準(zhǔn)確可靠性,具有良好的抗干擾性能。