測(cè)量設(shè)備CANopen通信的快速實(shí)現(xiàn)
2012-02-03
作者:致遠(yuǎn)電子
來源:來源:電子技術(shù)應(yīng)用2011年第12期
1 引言
測(cè)量設(shè)備在日常生活生產(chǎn)中應(yīng)用非常廣泛,例如常見的溫度濕度計(jì)、電表、汽車儀表等。工業(yè)生產(chǎn)現(xiàn)場(chǎng)的控制系統(tǒng)中,控制終端根據(jù)各種自動(dòng)化測(cè)量設(shè)備測(cè)量出的數(shù)據(jù)對(duì)各種現(xiàn)場(chǎng)設(shè)備進(jìn)行相應(yīng)的控制,這就需要測(cè)量設(shè)備具有總線通信接口,以連接到控制網(wǎng)絡(luò)中。CAN總線是測(cè)量設(shè)備行業(yè)中流行且應(yīng)用成熟的通信方式,基于CAN總線應(yīng)用層的CANopen協(xié)議對(duì)測(cè)量設(shè)備做出了“設(shè)備級(jí)”的規(guī)范(CiA DS404)。
本期文章將以壓力測(cè)量?jī)x為例介紹如何利用XGate-COP10模塊設(shè)計(jì)測(cè)量設(shè)備的CANopen從站接口。
2 XGate-COP10簡(jiǎn)介
XGate-COP10是一款CANopen從站協(xié)議轉(zhuǎn)換模塊,內(nèi)部集成了CANopen從站協(xié)議棧,遵循CiA DS301 V4.02進(jìn)行設(shè)計(jì),其內(nèi)部集成了網(wǎng)絡(luò)管理(NMT)、服務(wù)數(shù)據(jù)(SDO)、過程數(shù)據(jù)(PDO)、錯(cuò)誤管理等功能。同時(shí)也遵循了DS303-3指示燈以及DS305層設(shè)置(LSS)等相關(guān)協(xié)議,使模塊功能更強(qiáng)大。所有的功能均通過CiA提供的一致性測(cè)試軟件的測(cè)試,保證了與其他CANopen設(shè)備良好的兼容性。
XGate-COP10為DIP24封裝,擁有較小的占位面積(6 cm2),非常容易集成到用戶設(shè)備中,其外觀如圖1所示。
3 壓力測(cè)量?jī)xCANopen接口硬件設(shè)計(jì)
XGate-COP10硬件設(shè)計(jì)框圖如圖2所示。
壓力測(cè)量?jī)x控制板MCU與XGate-COP10通過串口(TTL電平)進(jìn)行連接。用戶可以使用MCU的一個(gè)I/O口連接到XGate-COP10的復(fù)位引腳(/RST)實(shí)現(xiàn)對(duì)模塊的復(fù)位控制。MCU只需預(yù)留1路串口,1個(gè)I/O口即可。由于XGate-COP10內(nèi)部未集成CAN收發(fā)器,推薦使用帶隔離的CAN收發(fā)器模塊CTM8251T。XGate-COP10采用的是標(biāo)準(zhǔn)的CANopen協(xié)議,可以通過外接DIP開關(guān)來設(shè)置設(shè)備的節(jié)點(diǎn)地址和波特率,并通過外接LED指示燈來指示當(dāng)前模塊的CANopen狀態(tài)。
4 壓力測(cè)量?jī)x參數(shù)資源分配
對(duì)于實(shí)時(shí)數(shù)據(jù),XGate-COP10有96 B輸入和96 B輸出存儲(chǔ)區(qū)供用戶使用,這些存儲(chǔ)區(qū)可以用于壓力測(cè)量?jī)x與其他CANopen設(shè)備之間交換各項(xiàng)實(shí)時(shí)參數(shù)。
對(duì)于非實(shí)時(shí)數(shù)據(jù),XGate-COP10提供了直接訪問對(duì)象字典的串口命令,用戶可以通過該命令對(duì)模塊的對(duì)象字典進(jìn)行讀寫,實(shí)現(xiàn)壓力測(cè)量?jī)x控制板MCU對(duì)CANopen網(wǎng)絡(luò)非實(shí)時(shí)參數(shù)的訪問。
這樣,CANopen主站設(shè)備或其他從站設(shè)備與壓力測(cè)量?jī)x之間的通信就變得十分方便。
(1)資源分配
壓力測(cè)量?jī)x相關(guān)參數(shù)在XGate-COP10存儲(chǔ)區(qū)的分配情況如表1所示,用戶只需要把壓力傳感器測(cè)量出的壓力值、超壓或欠壓告警信息寫入到XGate-COP10對(duì)應(yīng)的數(shù)據(jù)輸入存儲(chǔ)區(qū),XGate-COP10就會(huì)按照CANopen協(xié)議的定義對(duì)數(shù)據(jù)進(jìn)行解析處理并通過TPDO發(fā)送到CAN總線上。
(2)實(shí)時(shí)數(shù)據(jù)傳輸配置
XGate-COP10中PDO數(shù)據(jù)可映射到數(shù)據(jù)存儲(chǔ)區(qū)的任意輸入輸出數(shù)據(jù)存儲(chǔ)區(qū),其數(shù)據(jù)映射示例如表2所示。
5 壓力測(cè)量?jī)x控制板MCU對(duì)XGate-COP10的操作
XGate-COP10提供了一個(gè)串口與壓力測(cè)量?jī)x控制板MCU進(jìn)行連接。為了方便用戶快速可靠地實(shí)現(xiàn)模塊與MCU通信,廣州致遠(yuǎn)電子有限公司提供了XGate-COP10串口協(xié)議的驅(qū)動(dòng)源碼。用戶可將實(shí)時(shí)更新的數(shù)據(jù)寫入輸入緩沖區(qū),XGate-COP10自動(dòng)發(fā)送至主站或者是其他從站設(shè)備。用戶程序軟件操作流程示例如圖3所示。
6 結(jié)語
經(jīng)過以上步驟,快速地實(shí)現(xiàn)了壓力測(cè)量?jī)x的CANopen接口,并能與其他CANopen設(shè)備進(jìn)行通信。XGate-COP10的出現(xiàn),使開發(fā)者不再為開發(fā)CANopen協(xié)議棧而苦惱,大大縮短了開發(fā)周期。相信在XGate-COP10的幫助下,用戶能獲得更大的成功。
廣州致遠(yuǎn)電子有限公司提供各種接口的CANopen接口卡、CANopen終端設(shè)備(包括數(shù)據(jù)采集,電機(jī)控制等)、CANopen分析儀、網(wǎng)關(guān)及網(wǎng)橋、OPC服務(wù)器以及基于CANopen協(xié)議的整套組網(wǎng)方案及應(yīng)用開發(fā)。