CANopen
通訊協議
HongKe
CANopen是一種架構在CAN串行總線系統上的高層通訊協議,目前已被廣泛應用于電機控制、機器人制造、醫療、汽車等多個行業領域。為了讓上述領域的用戶能夠采集常見的數字量或開關信號,并輸出電壓信號用于控制繼電器、開關、指示燈等設備,虹科推出了多款CANopen IO模塊。其中,虹科HK-CIO-0320是一款低成本的支持24V DC的16DI和16DO的CANopen IO單元,IO端支持PNP/Positive Switching,與總線和系統供電隔離,所有輸出端具有短路保護的特性,支持DS301和DS401,CAN端支持常用波特率,高達1Mbit/s,歡迎聯系虹科選購。
本篇文章將以虹科hipecs CIO102為例,對該系列CANopen IO模塊進行通訊測試。hipecs-CIO102是一個低成本的CANopen單元,具有16個數字輸入和16個數字輸出,適用于24 V DC應用。I/O是正開關的,并與總線和光電隔離開關,并與總線和系統電源進行光電隔離。系統電源所有的輸出都有短路保護。
01設備基礎信息
Part.1
IO特性
16個數字輸入,隔離,高位開關。
16個數字輸出,隔離,高壓側開關。+24 V DC/+0.5 A
輸出過載監測(EMY)。
Part.2
CANopen特性
遵循DS301和DS401規范。
CAN波特率高達1 Mbit/s。
帶有收發器TJA1050的CAN總線ISO11898。
4個發送和4個接收PDO
動態PDO映射
CANopen PDO傳輸模式:同步、異步、事件觸發、循環、非循環和遠程幀
Node-Guarding, Lifeguarding 和Heartbeat
緊急信息
最短的啟動時間(Minimum Boot-Up)
Part.3
設備引腳
Node ID設置,通過旋鈕來確定,配置范圍為0x01-0x7F(1-127)
波特率設置:通過撥碼開關設置,其值可為20k、50k、125k、250、500k、800k、1M
02CANopen通信搭建
Part.1
硬件連接
24V電源:IO模塊供電
24V電源:作為IO模塊的輸出電源
hipecs CIO 102
PEAK PCAN-USB
PCAN-View
Part.2
軟件部分
硬件連接完整后打開PCAN-View會自動彈出窗口。對波特率參數進行選擇,必須與IO模塊一致,否則PCAN-View將會報BUSHEAVY。
根據使用手冊將IO模塊的旋鈕和撥碼設置如下,此時波特率為1Mbit/s,node_ID為1。
03基本通信測試
NMT協議
根據使用手冊,IO模塊上電之后Run指示燈處于閃爍狀態是處于Preoperational狀態,此時PCAN-View上收到一條Bootup報文。
我們需要發送命令,將模塊轉換為操作狀態后,才能進行下一步的測試操作。在PCAN-view的Transmit中單擊該報文后敲空格即發送該報文,此時Receive區域會收到一條回應報文,此時IO模塊的Run燈變成常亮狀態。
心跳報文
通過SDO的方式往對象1017里面寫入時間間隔,即間隔反饋一次設備的狀態,報文發送如下圖
節點保護
主站發送一幀遠程幀,節點應答700+Node_ID state。
State:0=初始化,1=斷開連接,2=連接,3=準備,4=stopped,5=operational,6=pre-operational。
PDO(RPDO接收型TPDO發送型)
生產者消費者模型,在PDO通訊中對象字典的子索引00 01 02 03 05分別代表了不同含義
00h:LargestSubindex supported:最大支持的子索引個數;即1800h下有多少個子索引;
01h:COB-IDused by PDO:PDO所使用的COB-IB;
02h:TransmissionType:傳輸類型,其值可選,詳解在下文中進行;
03h:InhibitTime:生產禁止約束時間,單位:0.1ms;描述該PDO不可以在指定的一段時間內連續發送;
05h:Eventtimer:事件定時器觸發的時間,單位:ms;即計數器,每隔一定時間數值+1,與02h結合,可規定PDO循環發送的時間;
報文通信測試
而由于PDO的單向傳輸特性,僅從此次PDO傳輸我們無法得知接受站點是否正確收到PDO數據,只能使用另外的手段(如SDO讀取、觀察相應IO的行為等)得知數據是否接收到位。這里為什么會返回PDO報文呢?主要是因為對應PDO的transmission type設置為了事件觸發,事件主要指接收同步消息、輸入數據發生變化、事件計時器周期過期或者遠程幀,當有以上這些事件時則會返回PDO報文。
SDO
1. SDO快速傳輸
對IO模塊的索引6200 1號通道寫入FF:0x601 22 00 62 01 FF 00 00 00,若成功則應答60 00 62 01 00 00 00 00;讀取該通道的值:0x601 40 00 62 01 00 00 00 00。若成功42 00 62 01 xx xx xx xx(后四個字節為數據)
功能碼60h表示成功,80h是失敗,寫入的數值高位在byte6,低位在byte5。
CS命令碼如下:
2. SDO分段傳輸
讀對象字典1008,根據上圖解析,返回41 08 10 00 0D 00 00 00(為確認報文信息)
60 00 00 00 00 00 00 00分段請求
00 68 69 70 65 63 73 2D:00為命令碼,后七個字節為數據內容。
70 00 00 00 00 00 00 00:70命令碼,即為分段請求,與60交替出現
13 43 49 4F 31 30 32 00:13為本段寫7個字節,后面為數據內容。
修改PDO映射參數
Step.1
禁能COB-ID
返回60寫響應成功,寫報文中的數據可這樣解析:即將COB-ID的最高位置1,其他位不變。可通過報文讀取該索引原本的值為0x00000181。
Step.2
清零映射個數
向1600h00h中寫入00h即將映射個數清
Step.3
寫映射參數
先向索引讀數據,返回62000108代表發送數據的索引為6200h01h,長度為8位
現在將PDO發送改為另一個通道2,再次讀取發現映射參數已經改變。
Step.4
寫映射個數
向1600h00h中寫入00h即將映射個數清零
Step.5
使能COB-ID
至此完成PDO映射參數的修改。
04虹科CANopen IO模塊
虹科HK-CIO-0320
16數字量輸入+16數字量輸出,貨期穩定,性價比高
虹科hipecs系列
信號類型豐富,防護等級高,緊湊體積小
虹科sysWORxx系列
虹科智能自動化
虹科是一家在工業自動化領域,特別是工業總線通訊行業經驗超過15年的高科技公司。虹科智能自動化事業部與歐洲和美國的世界知名工業自動化、能源管理與樓宇自動化專家展開深度合作,提供業內頂尖水平的通信協議的軟硬件解決方案,通信技術類型涉及工業自動化通訊協議【CAN、CANopen、EtherCAT、PROFINET、EtherNet/IP、IO-Link、OPC UA、MQTT、TSN】等,能源管理與樓宇自動化通訊協議【ASCII、BACnet、KNX、Modbus】等,解決方案包含:代碼、芯片/模塊、板卡、網關、IO、工控機、繼電器、測試方案、培訓和開發服務等。因此,虹科是國內為數極少的在OT領域深耕多年并技術經驗全面的供應商。
虹科智能自動化事業部以客戶需求為導向,以技術能力為基礎,為國內企業提供最適合的產品和最滿意的服務。作為鏈條最全、方案最豐富、且兼備技術服務落地的通信技術資源整合商,虹科服務的客戶已經超過1000家,虹科工程師們一直在萬物互聯的潮流中扮演著如高速公路般的連接作用,這是我們的使命也是我們的自豪。
審核編輯:湯梓紅
-
CANopen
+關注
關注
8文章
249瀏覽量
43546 -
IO模塊
+關注
關注
0文章
137瀏覽量
12781 -
通訊協儀
+關注
關注
0文章
8瀏覽量
6206 -
虹科電子
+關注
關注
0文章
595瀏覽量
14279
原文標題:虹科干貨 | 虹科推出多款CANopen IO模塊及hipecs系列模塊通訊測試
文章出處:【微信號:Hongketeam,微信公眾號:廣州虹科電子科技有限公司】歡迎添加關注!文章轉載請注明出處。
發布評論請先 登錄
相關推薦
評論