一種CAN總線(xiàn)高層通信協(xié)議的設計與實(shí)現
對于每個(gè)模塊,上電1s后若未收到任何通信信息,則按計算延時(shí)發(fā)送自身的地址碼和溫度電流采樣值。延時(shí)時(shí)間的計算為[6]:
tdelay=t×add
其中:tdelay-為延時(shí)發(fā)送時(shí)間;
t-為單位延時(shí)時(shí)間常數,該值根據通信速率定義;可以取1個(gè)位周期,在波特率為100khz時(shí)為10μs;
add-為模塊地址編碼。
主模塊是id10=0的模塊,因此具有最高的優(yōu)先級。上電后主模塊首先向總線(xiàn)廣播發(fā)送自身的地址碼和溫度電流采樣值,然后即按順序向從機發(fā)送指令,等待從機的回答。主機1秒鐘后若未收到任何通信信息則認為該模塊出錯,發(fā)出報警。同樣從機1s后若未收到主機任何通信信息則認為主機出錯,按照源地址優(yōu)先級由其 余模塊中地址最低的模塊充當主模塊,并將其id10由1改為0,以獲得最高通信優(yōu)先權。
各模塊檢測到自身故障時(shí),將切斷輸出,退出通信,并向上位機報警,同時(shí)發(fā)出聲光報警。
5 結束語(yǔ)
本文中所介紹的can高層通信協(xié)議,結構簡(jiǎn)單、使用靈活、可靠性極高,實(shí)現也比較容易。很適合在節點(diǎn)數不多、通信可靠性要求高、控制結構較簡(jiǎn)單的小型控制系統中應用,具有一定的實(shí)用價(jià)值。
參考文獻
[1] can基本知識[eb]. http://www.zlgmcu.com.
[2] 控制器局域網(wǎng)(can)未來(lái)的工業(yè)微處理器串行通訊[eb]. http://www.zlgmcu.com.
[3] 周立功等. 增強型80c51單片機速成與實(shí)戰[m]. 北京:北京航空航天大學(xué)出版社,2003.
[4] 饒運濤等.現場(chǎng)總線(xiàn)can原理與應用技術(shù)[m]. 北京:北京航空航天大學(xué)出版社,2003.
[5] 蔣建文等. can總線(xiàn)通信協(xié)議的分析和實(shí)現[j]. 計算機工程,2002,2.
[6] 鄭尊標.數字化智能電源模塊研究[d]. 浙江:浙江大學(xué),2001.
[7] canbus現場(chǎng)總線(xiàn)基礎方案芯片篇[eb]
評論