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