《電子技術應用》
您所在的位置:首頁 > 嵌入式技術 > 設計應用 > 基于iCAN協議的嵌入式從站模塊設計
基于iCAN協議的嵌入式從站模塊設計
來源:電子技術應用2014年第3期
勾 璇, 尹 崗
(內蒙古工業大學 電力學院, 內蒙古 呼和浩特010080)
摘要: 對我國自行研發的iCAN總線協議作了簡單介紹,給出了一種基于iCAN協議的嵌入式從站模塊的設計方法,對軟硬件進行了相應的說明。從站模塊為嵌入式核心模塊,內部嵌入32位ARM微處理器LPC11C14,并帶有標準的CAN-bus通信電路接口及通用的I/O接口,使用者只需根據自己的需要設計好不同底板,就可拋開CAN-bus 產品復雜的設計過程,制造出適用于不同工業控制環境的產品。
中圖分類號:TH865
文獻標識碼:A
文章編號: 0258-7998(2014)03-0071-04
The design of embedded slave module based on iCAN protocol
Gou Xuan, Yin Gang
College of Electric Power, Inner Mongolia University of Technology, Hohhot 010080, China
Abstract: This paper introduces the iCAN bus protocol simply, which is developed by our country. A method of embedded slave module that based on iCAN protocol is proposed. The hardware and software are explained in this paper. As the core of the embedded module, it has a 32-bit ARM microprocessor inside. The standard CAN bus communication interface circuit and the general I/O interface is designed. Without using the complex design process of CAN-bus, the users can create different industrial control products simply according to their needs.
Key words : CAN bus; iCAN protocol; LPC11C14; embedded

    在工業控制系統網絡化趨勢下,工業控制系統逐漸采用更加徹底的分布式結構,而在這個發展過程中,現場總線的應用起到了主導作用[1]。作為市場上占有率很高的現場總線之一,CAN-bus總線憑借其良好的開放性、可靠性和實時性以及較低的成本,在工業控制、遠程數據傳輸等領域中獲得了廣泛應用[2]。
    iCAN(Industrial CAN)協議即“工業CAN應用層協議”是我國自行研發的現場總線技術標準,它的物理層和數據鏈路層完全兼容CAN2.0B協議規范。iCAN協議優先保障通信數據的可靠性與實時性,以相對簡單的方式進行數據通信,有效降低了硬件實現成本。它的出現為中國中小型CAN-bus應用網絡提供出一種簡單、可靠、穩定的應用層協議,更為可貴的是iCAN協議是我國具有完全自主知識產權的總線協議,它為我國開發具有自主知識產權的現場總線技術標準提供了寶貴的經驗[3]。
    本設計采用NXP公司的LPC11C14微處理器作為模塊核心,這是一種內嵌CAN控制器的32位ARM芯片。初始化后,LPC11C14將進行數據信號的采集,基于iCAN協議的報文解析與打包,并完成于主站的通信功能。
1 總體方案設計
1.1 基本結構及功能

    基于iCAN協議的嵌入式從站模塊(以下簡稱iCAN從站模塊)由三部分組成:微處理器系統模塊、CAN總線通信模塊、本地應用電路。從站模塊功能結構圖如圖1所示。

    iCAN從站模塊中選用的微處理器LPC11C14內部嵌入CAN控制器,因此微處理器系統包括微處理器及CAN控制器兩部分。iCAN從站模塊主要完成三部分功能: (1)通過本地應用電路將不同的應用對象的各功能單元連入iCAN總線,應用對象包括4路模擬量輸入、4路模擬量輸出、8路數字量輸入和8路數字量輸出;(2)通過CAN收發器與iCAN主站相連,將采集到的數據上傳至主站或執行主站下達的命令; (3)通過串行接口與上位PC機相連,完成對模塊用戶參數的配置。
1.2 模塊硬件電路設計
    iCAN從站模塊的硬件結構框圖如圖2所示,主要包括微處理器、通用輸入輸出模塊、CAN通信模塊、UART通信模塊、存儲器擴展模塊及各基礎電路模塊。微處理器采用基于Cortex內核的ARM芯片LPC11C14,其內置1路CAN控制器,通過外接 CAN 收發器可方便地進行 CAN 數據收發。通用輸入輸出模塊設計了8路數字量輸入端口、8路數字量輸出端口、4路模擬量輸入端口、4路PWM輸出端口,這樣即可滿足在不同工業環境下對接口的要求。LPC11C14芯片擁有8通道10位AD轉換器,它們可在8個引腳中實現輸入多路復用,利用該芯片這一優勢,本模塊設計了4路模擬量輸入。模塊初次上電時,用戶可在PC上通過串口調試助手對模塊基本參數進行設置,這些參數包括:節點MACID、CAN通信波特率、A/D采樣次數、PWM周期。模塊的用戶參數設置數據通過存儲器擴展模塊進行保存,當模塊再次上電時將從片外存儲器中讀取已保存數據進行初始化。

1.2.1器件選型
 為提高模塊的實時性和可靠性,iCAN從站模塊選用NXP公司推出的Cortex-M0內核微處理器LPC11C14,工作頻率高達50 MHz,運算控制能力較強,每秒可以執行超過4 500萬條指令,并且配有SWD調試功能;同時這款芯片擁有4個通用定時器,16位和32位各兩個,均帶有PWM輸出/匹配/捕捉功能;另外芯片擁有8通道10位ADC,它們可在8個引腳中實現輸入多路復用,并且10位轉換時間最小僅為2.44 ?滋s;芯片的這些特點輕松滿足了模塊對通用接口上的要求[4]。除此之外,LPC11C14這款芯片是針對控制局域網(CAN)2.0B標準研制的,集成了C_CAN控制器,是業界首款在片上直接支持CAN控制器的Cortex-M0微控制器,是目前市場上性價比最高的一款微處理器,從而解決了使用ARM微處理器所造成的成本提高的問題。
1.2.2 CAN總線通信模塊硬件設計
    通過CAN總線通信模塊可使iCAN從站模塊和iCAN總站完成通信,實現將采集數據上傳或執行主站下達的命令的任務。CAN總線接口硬件電路如圖3所示。

    LPC11C14內部集成有一個兼容CAN2.0B的CAN控制器,只需增加一個 CAN 總線收發器就能滿足設計要求。ISO1050是TI公司的電氣隔離式CAN收發器,此器件有一個被硅二極管絕緣隔柵分開的邏輯輸入和輸出緩沖器,具有DC 2500V的隔離功能。ISO1050DUB的輸入電源與輸出電源之間必須用電源隔離模塊隔開,但由于本模塊硬件部分需要做到盡量小,因此電源隔離這部分需要用戶在底板上實現。為實現有效的瞬態保護,在CAN信號輸出部分加了低電容瞬態電壓抑制器PSM712。PSM712可以保護收發器在瞬時高電壓情況下不受損壞。
2 軟件設計
2.1 主程序設計

    iCAN從站模塊的主要功能是對外部數字/模擬輸入信號進行循環采集,在接收到主站的命令幀時,向主站發送響應幀并執行命令。所有的功能都在一個主循環里實現。首先進行各功能模塊的初始化,初始化完畢后判斷是否已進行用戶參數配置,配置好參數后,檢測是否接收到有效CAN報文,若接收到則進行報文處理。當有中斷發生時,執行中斷程序。主流程圖如圖4所示。
2.2 CAN模塊通信程序設計
    基于LPC11Cxx系列的微控制器的ZLG_CAN通用驅動庫提供了完整、可靠的CAN操作API,調用API既可以完成對CAN控制器和報文對象的配置,并實現CAN中斷的管理、CAN通信等工作。但是,通過ZLG_CAN通用驅動庫來進行應用編程,仍然涉及到十幾個底層接口函數,不便于移植和維護。因此本設計中的CAN模塊編程部分采用了對通用驅動的函數進行了進一步封裝的zlg_can程序模塊,圖5為CAN模塊編程流程框圖。

2.3 基于iCAN協議的報文處理程序設計
    iCAN 協議為CAN總線的應用層協議,iCAN協議定義的通信方式是“面向節點,基于連接的通信方式。面向節點是指源節點地址及目的節點地址均已給定,即對于任何一個報文參與通信的雙方是確定的,基于連接是指在網絡中任何一個參與通信的從站設備都必須和主站設備建立一個獨立的通信連接。這樣也為對任何一個設備的通信進行監控提供可能[5]。
    此外,iCAN協議也是一種主從方式的協議。iCAN協議中規定了三種通信模式: (1)主從通信模式,主站對從站發送命令幀,從站模塊回發響應幀來應答。這種通信模式為本模塊的常態通信模式。(2)事件觸發通信模式,用于在從站模塊輸入端口狀態發生改變時,主動向主站傳送數據。這種通信模式彌補了主從通信模式下總線利用率低的問題。(3)定式循環傳送模式,用于從站模塊在固定的時間間隔(由主站設置)向主站傳送數據。
    iCAN 協議使用了擴展幀格式CAN報文,對CAN報文的29位標識符和報文數據都做了詳細規定。報文標識符制定了數據通信中的源節點MACID和目標節點 MACID, 并指示了報文的功能以及所要訪問的資源。在iCAN協議中,使用資源節點來對設備進行描述,在iCAN網絡中,iCAN設備對iCAN主站而言就是許多資源節點的集合,通過資源節點主站和從站來完成數據交換[6]。iCAN標識符分配如圖6所示。

 

 

    iCAN協議規定了7種功能碼,主要有連續寫端口、連續讀端口、事件觸發傳送、建立連接等,這部分軟件就基于這幾種功能碼進行模塊化編寫。
    iCAN協議通信方式是基于連接的,任何通信都是在連接的基礎上進行建立連接是iCAN協議通信第一步,也是最重要的一步。這里介紹一下建立連接的程序流程,當從站模塊接收到主站發來的建立連接命令幀時,首先判斷報文是否合法且從站模塊尚未與其他模塊建立連接,若報文非法或已處于連接狀態,則向主站回發異常響應報文;若通過判斷,則繼續判斷連接定時參數是否為零,若為零,則從站模塊直接與主站建立連接并回發正常響應幀,若不為零,則先啟動連接定時器,再與主站建立連接回發報文。建立連接的程序流程圖如圖7所示。

    本設計中的iCAN從站模塊收發的數據均符合 iCAN 協議報文的格式,當收到一幀CAN報文時,首先對其進行報文解析,翻譯成iCAN協議規定的報文格式,再做處理;同樣,當從站模塊要發送一幀報文時,首先需將iCAN報文翻譯成CAN報文,然后再經過CAN通信程序進行發送。
2.4 用戶參數配置軟件設計
 從站模塊初次上電后,用戶需要對其基本參數進行設置,可設置的參數包括:節點MACID、CAN通信波特率、A/D采樣次數、PWM周期。因此,進行了“iCAN模塊用戶參數配置軟件”設計,如圖8所示。點擊“恢復出廠設置”按鈕即將參數設置為:模塊節點編號01,CAN波特率設置為500 kb/s,A/D采樣次數設置為64,PWM周期設置為3(1 ms)。

3 系統調試與運行
3.1模塊硬件

    iCAN從站模塊為核心模塊,用戶可根據自己的需求設計合適的底板,配合使用。這就要求本模塊體積要足夠小,因此本模塊按32 mm×32 mm的尺寸設計,把數字量輸入輸出、模擬量輸入輸出都通過排針引出。由于面積小,器件較多,因此采用雙面貼片。
3.2 模塊軟件通信調試
 將iCAN從站模塊插到測試底板上,將測試底板的CAN接口和USBCAN分析儀相連接,USBCAN分析儀的另一端連接PC(這里用PC模擬iCAN主站)。
    打開iCAN模塊用戶參數配置軟件,設置好端口號,點擊“連接”按鈕,紅燈亮,表示串口已連接正常;然后填寫各參數預設置的數值,填好后點擊“寫入”按鈕,觀察“返回狀態顯示窗口”,若出現“WRITEOK”字樣即說明設置成功。
    打開CANPro通信軟件,點擊“啟動”按鈕,彈出打開設備對話框,設備索引號設置為“0”,將波特率設置為500 Mb/s,與iCAN模塊波特率設置一致選中iCAN窗口,進行下面的測試。
3.2.1 MAC ID檢測
    硬件連接正常時,iCAN從站模塊上電后,主動向主站發送MAC ID檢測命令,以檢測iCAN從站模塊的節點號在網絡中是否唯一。若1 s內未收到MAC ID檢測響應幀,則iCAN模塊進入可操作狀態。
3.2.2 建立連接
    MAC ID檢測通過后,編號為“0”的主站節點發送“建立連接”命令幀,CyclicMaster這里設置為0,表示不裝載連接定時器;從站收到正確的命令幀,返回響應幀,數據部分分別為DI、DO、AI、PWM的數目,單位為B;此時編號為2的節點又向iCAN從站模塊發送建立連接命令幀,iCAN從站模塊收到后,返回異常響應幀,告知本節點已與其他節點建立連接。
3.2.3 采集模擬量輸入端口
    iCAN從站模塊與主站建立連接后,就可與主站進行通信,響應主站命令。這里以采集模擬量輸入端口為例,介紹iCAN從站模塊的通信功能。
 主站發送命令幀,讀取4路模擬量端口的輸入數據,每路模擬量16 bit,用2 B表示,因此命令幀數據部分08表示讀取8 B數據;iCAN從站模塊接收命令幀,在極短時間內回發響應幀, 返回4路模擬量輸入端口的數值。
    本設計在對iCAN總線協議深入研究的基礎上,結合經濟性和實用性的原則,設計了一種基于iCAN協議的嵌入式從站模塊,使更多的研究者可拋開CAN-bus 產品復雜的設計和漫長的測試過程,制造出適用于不同工業控制環境的產品,為進一步開發設計基于CAN-bus產品提供了便利。
參考文獻
[1] 周立功單片機發展有限公司. 基于iCAN協議的CAN bus分布式控制系統[J].產業技術與信息, 2006(4):84-85.
[2] 陽憲惠.現場總線技術及其應用[M].北京:清華大學出版社, 2008.
[3] 張健,蔣新華,陳興武.CAN總線在基于ARM嵌入式數控系統中的應用[J].自動化與儀表,2008(7):25-27.
[4] 廣州周立功單片機發展有限公司.深入淺出Cortex-M0—LPC1100系列[Z]. 2013.
[5] 周立功.iCAN 現場總線原理與應用[M].北京:北京航空航天大學出版社,2007.
[6] 馮江濤.基MCGS和iCAN的分布式監控系統[J].工業控制計算機,2008(2):18-19.

此內容為AET網站原創,未經授權禁止轉載。
亚洲一区二区欧美_亚洲丝袜一区_99re亚洲国产精品_日韩亚洲一区二区
亚洲美女视频| 欧美在线观看www| 亚洲欧美日韩综合| 夜夜嗨av一区二区三区四季av| 国内精品久久久久久久影视麻豆| 国产精品久久久久毛片软件 | 91久久国产精品91久久性色| 极品少妇一区二区| 国语自产精品视频在线看8查询8| 国产日韩欧美在线视频观看| 国产精品一区二区久久国产| 国产精品久线观看视频| 国产精品免费视频观看| 国产精品久久久久久久免费软件 | 国产日本欧洲亚洲| 国产伦精品一区二区三区在线观看| 国产精品国产自产拍高清av王其| 国产精品福利在线观看| 国产精品护士白丝一区av| 国产精品久久久久久模特| 欧美日韩成人综合| 亚洲精品国精品久久99热一| 91久久综合亚洲鲁鲁五月天| 亚洲国产欧美一区二区三区久久| 亚洲国产经典视频| 91久久精品日日躁夜夜躁欧美 | 最近中文字幕日韩精品| 91久久久久久久久| 91久久精品一区二区三区| 日韩午夜视频在线观看| 亚洲神马久久| 亚洲在线视频观看| 欧美在线亚洲在线| 亚洲高清视频在线| 亚洲精品视频免费观看| 夜夜嗨网站十八久久| 亚洲一区日韩| 欧美一区在线视频| 久久美女性网| 欧美激情精品| 欧美手机在线| 国产精品久久久久91| 国产精品综合色区在线观看| 精久久久久久| 亚洲精品综合久久中文字幕| 一本一本久久a久久精品综合妖精 一本一本久久a久久精品综合麻豆 | 久久精品国产亚洲精品| 亚洲精品国产精品国自产观看 | 久久久91精品国产一区二区三区| 久久久久久色| 欧美激情影音先锋| 国产精品美女久久久久久2018 | 欧美在线视频二区| 老司机免费视频久久| 欧美日韩国产高清视频| 国产精品美女在线观看| 在线国产日韩| 亚洲色无码播放| 亚洲第一视频| 亚洲性视频网站| 久久久99精品免费观看不卡| 欧美另类一区二区三区| 亚洲网站在线观看| 国产精品国产三级国产aⅴ入口| 国产亚洲毛片在线| 亚洲精品资源美女情侣酒店| 欧美一级片久久久久久久| 亚洲精品一区二区网址| 欧美在线精品一区| 欧美日韩一区二区三区在线视频| 国产欧美日韩综合一区在线观看| 亚洲国产精品久久人人爱蜜臀| 亚洲视频欧美在线| 亚洲欧洲精品一区二区| 欧美一区二区三区四区高清 | 国产欧美一区视频| 亚洲精选视频免费看| 久久精品国产精品亚洲精品| 亚洲欧美激情视频| 欧美精品一区二区视频| 国产手机视频精品| 一区二区三区 在线观看视| 亚洲国产精品激情在线观看| 午夜视频一区在线观看| 欧美精品18videos性欧美| 国产一区二区主播在线| 亚洲图色在线| 国产精品99久久不卡二区| 亚洲精品在线一区二区| 欧美精品不卡| 国产视频一区三区| 在线综合欧美| 一区二区福利| 欧美国产第二页| 极品少妇一区二区三区精品视频| 亚洲欧美国产毛片在线| 亚洲调教视频在线观看| 欧美精品免费看| 在线看视频不卡| 欧美在线观看视频在线| 亚洲免费视频在线观看| 欧美日韩国语| 亚洲日本欧美日韩高观看| 亚洲激情视频在线播放| 久久亚洲欧洲| 国产亚洲一区二区三区在线播放| 亚洲天堂av在线免费观看| 一区二区冒白浆视频| 欧美韩日一区二区| 亚洲国产一区二区视频| 亚洲国产天堂网精品网站| 久久精品理论片| 国产麻豆日韩欧美久久| 亚洲免费视频观看| 新狼窝色av性久久久久久| 国产精品视频大全| 亚洲伊人久久综合| 先锋影音网一区二区| 国产精品xvideos88| 这里只有精品在线播放| 亚洲视频免费在线| 欧美日韩免费观看一区三区| 最新国产乱人伦偷精品免费网站 | 欧美吻胸吃奶大尺度电影| 一区二区三区精品视频在线观看| 亚洲神马久久| 国产精品s色| 亚洲一区免费在线观看| 欧美一区二区三区精品电影| 国产欧美视频一区二区| 午夜综合激情| 久久人体大胆视频| 黄色精品网站| 亚洲精品日本| 欧美日韩国产精品一区| 一本色道久久综合亚洲二区三区| 亚洲一本大道在线| 国产精品伊人日日| 久久er精品视频| 免费欧美高清视频| 亚洲精品字幕| 亚洲欧美中文日韩在线| 国产欧美日韩专区发布| 亚洲高清视频在线观看| 欧美裸体一区二区三区| 日韩亚洲不卡在线| 午夜精品美女久久久久av福利| 国产精品自拍一区| 亚洲电影有码| 欧美激情亚洲| 亚洲午夜伦理| 久久美女性网| 亚洲美女视频在线观看| 亚洲欧美欧美一区二区三区| 国产尤物精品| 亚洲精品一区二区三区四区高清| 欧美午夜久久| 欧美一区二区三区久久精品茉莉花| 噜噜噜躁狠狠躁狠狠精品视频| 亚洲韩国青草视频| 亚洲免费视频在线观看| 国内综合精品午夜久久资源| 99成人在线| 国产精品伊人日日| 亚洲激情网站| 国产精品大片免费观看| 久久aⅴ国产欧美74aaa| 欧美精品系列| 亚洲一区在线观看视频| 久久综合久久综合久久综合| 亚洲精品一区二区三| 羞羞色国产精品| 亚洲国产另类久久精品| 午夜精品婷婷| 在线日韩成人| 亚洲欧洲av一区二区三区久久| 在线日韩av片| 性欧美大战久久久久久久免费观看| 在线观看亚洲精品| 亚洲资源av| 有码中文亚洲精品| 亚洲欧美美女| 亚洲国内自拍| 久久疯狂做爰流白浆xx| 亚洲三级免费| 久久深夜福利| 在线视频一区观看| 欧美r片在线| 欧美一区二区免费| 欧美日韩一区在线观看视频| 亚洲第一毛片| 国产精品久久国产精麻豆99网站| 亚洲国产精品高清久久久| 国产精品久久久久久亚洲调教| 亚洲精品美女久久久久| 国产欧美日韩精品一区| 中文精品一区二区三区 | 亚洲国产免费看| 国产乱子伦一区二区三区国色天香| 日韩一区二区高清|