本實(shí)用新型發(fā)明屬于工業(yè)通訊領(lǐng)域,尤其涉及一種基于Cortex-M3的CANOpen串口透傳模塊的設(shè)計(jì)與實(shí)現(xiàn)。
背景技術(shù):
CAN現(xiàn)場總線是一種由帶CAN控制器組成的高性能串行數(shù)據(jù)局域通信網(wǎng)絡(luò),是國際上應(yīng)用最廣泛的現(xiàn)場總線之一。它的總線長度最遠(yuǎn)可達(dá)10千米,數(shù)據(jù)傳輸速率最高可達(dá)1Mbps。采用非破壞總線仲裁技術(shù),即使網(wǎng)絡(luò)負(fù)載很重也不會(huì)出現(xiàn)網(wǎng)絡(luò)癱瘓現(xiàn)象。此外,CAN的每幀信息都有CRC校驗(yàn)和其它檢錯(cuò)措施,有很好的檢錯(cuò)效果。由于CAN總線具備以上優(yōu)點(diǎn),它目前已經(jīng)被廣泛應(yīng)用到工業(yè)機(jī)器人、汽車電子、電力系統(tǒng)和航空工業(yè)等領(lǐng)域中,并形成了國際標(biāo)準(zhǔn)。
CANOpen是一種架構(gòu)在控制局域網(wǎng)路(Controller Area Network,CAN)上的高層通訊協(xié)定,包括通訊子協(xié)定及設(shè)備子協(xié)定,常在嵌入式系統(tǒng)中使用,也是工業(yè)控制常用到的一種現(xiàn)場總線。CANOpen設(shè)備間的通訊模型,包括主從(client/server)模型,與CANOpen主站對應(yīng)的從站設(shè)備不斷出現(xiàn),從汽車的門把手到工業(yè)現(xiàn)場環(huán)境數(shù)據(jù)采集裝置等低速率通訊設(shè)備都必須帶有一個(gè)CANOpen從站,這樣設(shè)備廠商就必須花費(fèi)一部分精力用于CANOpen從站的研究,因此提供一種低成本CANOpen從站轉(zhuǎn)串口的模塊顯得必要和緊迫。
技術(shù)實(shí)現(xiàn)要素:
本實(shí)用新型要解決的問題是:提供一種CANOpen串口透傳模塊,能高效的完成從CANOpen從站到串口的協(xié)議轉(zhuǎn)換,成本較低,便于大規(guī)模使用。
本實(shí)用新型的技術(shù)方案為:一種CANOpen串口透傳模塊,包括基本模塊、微處理器模塊、CAN接口模塊和數(shù)據(jù)存儲模塊,基本模塊、CAN接口模塊和數(shù)據(jù)存儲模塊分別與微處理器模塊連接,微處理器模塊連接串口設(shè)備,其中;
基本模塊包括電源和時(shí)鐘電路,用于提供電源和時(shí)鐘信號;
微處理器模塊為基于Cortex-M3內(nèi)核的微處理器,用于處理通訊協(xié)議的轉(zhuǎn)換;
CAN接口模塊連接CAN總線,用于CAN報(bào)文數(shù)據(jù)的接收和發(fā)送;
數(shù)據(jù)存儲模塊為EEPROM。
所述基本模塊中,電源為IODO電源,時(shí)鐘電路包括晶振和復(fù)位電路,晶振誤差在20PPM以內(nèi)。
CAN接口模塊包括CAN控制器和CAN收發(fā)器,CAN收發(fā)器采用高速光耦與CAN控制器進(jìn)行光電隔離,在總線兩端的設(shè)備加120歐姆的匹配電阻,CAN收發(fā)器的CANH和CANL與地之間并聯(lián)兩個(gè)30PF的電容。
相對于現(xiàn)有技術(shù),本實(shí)用新型具有如下優(yōu)勢:
(1)本實(shí)用新型將具備串口通訊協(xié)議的設(shè)備無縫連接到CAN網(wǎng)絡(luò)中,大大增加了此類設(shè)備的應(yīng)用場景,同時(shí)大大增加了CANOpen主站的外圍從站設(shè)備類型,同時(shí)大大降低了從站設(shè)備的研發(fā)周期,相應(yīng)從站設(shè)備廠家再也不用關(guān)心從站協(xié)議的實(shí)現(xiàn)過程,只需要專心實(shí)現(xiàn)自己的設(shè)備功能即可,大大加速了相應(yīng)設(shè)備的產(chǎn)品化進(jìn)程;
(2)本實(shí)用新型模塊化、低成本化,便于集成到各種設(shè)備中,同時(shí)具備高速轉(zhuǎn)換,高速計(jì)算的特性,滿足大部分場合需求。
附圖說明
圖1為本實(shí)用新型的結(jié)構(gòu)示意圖。
具體實(shí)施方式
下面結(jié)合附圖說明本實(shí)用新型發(fā)明的實(shí)施過程。
本實(shí)用新型為一種基于Cortex-M3的CANOpen串口透傳模塊,包括基本模塊、微處理器模塊、CAN接口模塊及數(shù)據(jù)存儲模塊等四部分,如圖1所示,基本模塊、CAN接口模塊和數(shù)據(jù)存儲模塊分別與微處理器模塊連接,微處理器模塊連接串口設(shè)備。
基本模塊,主要由保證系統(tǒng)正常工作的外圍電路組成,包含電源和時(shí)鐘電路,電源采用IODO電源,能提供5V和3.3V穩(wěn)定電壓即可,時(shí)鐘電路的晶振的誤差在20PPM以內(nèi);基本模塊的電路結(jié)構(gòu)為現(xiàn)有技術(shù),這里就不再贅述。
微處理器模塊,其主要是指基于Cortex-M3內(nèi)核的微處理器,此類處理器性價(jià)比較高,適合用來處理CANOpen從站協(xié)議,其主要工作是負(fù)責(zé)CANOpen從站協(xié)議的實(shí)現(xiàn),并將其轉(zhuǎn)換成串口協(xié)議。比如STM32系列,本實(shí)施例采用TI公司的STM32F105R8,它集成CAN2.0控制器,性價(jià)比較高。微處理器模塊的工作流程如下:首先初始化工作,包括系統(tǒng)初始化,CAN控制器及串口控制器初始化等,其次,是CANOpen從站協(xié)議單元與相應(yīng)的主站設(shè)備完成網(wǎng)絡(luò)狀態(tài)轉(zhuǎn)換,待CANOpen從站協(xié)議單元正常啟動(dòng)后協(xié)議轉(zhuǎn)換單元開始工作,主要用來平衡CANOpen從站和串口協(xié)議相關(guān)的狀態(tài),完成CANOpen 協(xié)議到串口協(xié)議的無縫對接,最后是串口協(xié)議單元將數(shù)據(jù)打包成串口數(shù)據(jù)報(bào)文進(jìn)行傳輸。這里對微處理器模塊中的程序設(shè)置為現(xiàn)有技術(shù),不再詳述。
CAN接口模塊,主要包括CAN控制器和CAN收發(fā)器,其中如果微處理器集成了CAN控制器則不需要外接CAN控制器,如果微處理器沒有集成CAN控制器則需要外接CAN控制器,CAN控制器主要完成報(bào)文控制、數(shù)據(jù)濾波等功能,CAN收發(fā)器選擇的是TJA1050,它是CAN協(xié)議控制器和物理總線的接口,是一種標(biāo)準(zhǔn)的高速CAN收發(fā)器,主要用來完成CAN報(bào)文數(shù)據(jù)的接收和發(fā)送。CAN接口模塊中,CAN收發(fā)器采用高速光耦與CAN控制器進(jìn)行光電隔離,高速光耦提高了總線節(jié)點(diǎn)的抗干擾能力,能避免數(shù)據(jù)受到不必要的外界影響并能保護(hù)元器件,另外在總線兩端的設(shè)備加120歐姆的匹配電阻會(huì)使數(shù)據(jù)通信的抗干擾性以及可靠性大大加強(qiáng),CANH和CANL與地之間分別并聯(lián)一個(gè)30PF的小電容,可以濾除總線上的高頻干擾并且具有一定的防電磁輻射的能力。
數(shù)據(jù)儲存模塊主要是用來儲存系統(tǒng)的配置信息,如CAN波特率,串口波特率等信息,要求的儲存空間一般比較小,1K的片外EEPROM已經(jīng)足夠使用,也可以選擇微處理器自帶EEPROM。數(shù)據(jù)存儲模塊的主要用途是通過上位機(jī)將串口參數(shù)、CAN參數(shù)以及轉(zhuǎn)換參數(shù)數(shù)據(jù)寫入到EEPROM,其中串口參數(shù)主要包括串口通訊速率、串口號、奇偶校驗(yàn)、數(shù)據(jù)位及停止位等,CAN參數(shù)主要包括波特率、CAN ID及幀類型等,轉(zhuǎn)換參數(shù)主要包括轉(zhuǎn)換模式、轉(zhuǎn)換方向以及是否將CAN幀信息及幀ID轉(zhuǎn)發(fā)到串行幀中,模塊啟動(dòng)后上述配置數(shù)據(jù)將被加載到相應(yīng)的工作單元中。本實(shí)施例采用的存儲介質(zhì)為AT24C02,它是一個(gè)2K位字長的EEPROM。
本實(shí)用新型的工作過程如下:
首先,串口透傳模塊上電進(jìn)行初始化工作,具體包括系統(tǒng)初始化,CAN控制器及串口控制器初始化等;
其次,是微處理器模塊實(shí)現(xiàn)協(xié)議轉(zhuǎn)換,CANOpen從站協(xié)議單元與相應(yīng)的主站設(shè)備完成網(wǎng)絡(luò)狀態(tài)轉(zhuǎn)換,平衡CANOpen從站和串口協(xié)議相關(guān)的狀態(tài),完成CANOpen協(xié)議到串口協(xié)議的無縫對接;
最后是微處理器模塊將數(shù)據(jù)打包成串口數(shù)據(jù)報(bào)文發(fā)送給串口設(shè)備進(jìn)行傳輸。
以上所述為本實(shí)用新型發(fā)明最佳的實(shí)施方式,但并不用于限制本實(shí)用新型,凡在本實(shí)用新型的原則和精神之內(nèi)所做的任何修改、等同替換、均應(yīng)包含在本實(shí)用新型的保護(hù)范圍之內(nèi)。