国产成人精品欧美_床震吃奶摸下的激烈黄文_男女一级a做片性视频_东京热无码中文字幕电影_午夜黄色网站在线观看_国产SM调教视频在线观看_亚洲午夜欧美精品_日韩天堂贴图无码_久久精品九九网站_91AV国产高清视频

CANopen版本控制產(chǎn)品修改映射PDO對象方法

CANopen版本控制產(chǎn)品修改映射PDO對象方法

CANopen驅(qū)動控制器默認可使用8個通道的PDO,每個通道最大支持8個Byte的數(shù)據(jù),標準
出廠配置了默認4個通道的數(shù)據(jù),另外4個通道為空,為了方便用戶自行修改PDO配置或者重新整合PDO通道數(shù)據(jù),現(xiàn)將修改配置方案簡單介紹如下:

?

需要用到的硬件工具和軟件如下:

一、一體化電機或者驅(qū)動控制器(CANopen版本的)

二、CANOPEN-USB轉(zhuǎn)換器/,確保能正常通訊連接

三、對應(yīng)版本的PNDS軟件或者直接用SDO讀寫

Note:?以下介紹的操作為用我們自帶的PNDS軟件修改對象字典列表來完成。當(dāng)然用SDO讀寫同樣可行,方法仍然是對對應(yīng)的對象做賦值操作。并且保存。

修改RPO步驟說明

一、正確連接PNDS軟件,讀取刷新Object dictionary數(shù)據(jù)列表

二、1400配置1600(RPDO);1800配置1A00(T-PDO)

Note:1400的子索引01用于控制RPDO-1是否允許修改,1401的子索引01用于控制RPDO-2是否允許修改。

1800的子索引01用于控制TPDO-1是否允許修改,1801子索引01用于控制RPDO-2是否允許修改。依次類推

?

三、修改配置R-PDO-1,先把1400:01最高位置1,即把對象字典列表中的最高位修改為8(16進制)

Note:如果用SDO修改,先將1400:01的數(shù)據(jù)讀回來,然后寫入最高位修改為8(16進制)(二進制最高位置1)的數(shù)據(jù)

?

四、1600:00中的子索引個數(shù)先設(shè)置為0,

Note:如果用SDO修改,寫入1600:00的數(shù)據(jù)為0

?

五、配置需要的RPDO-1對象,本例以6040,6081,607a配置到第一PDO通道,步驟如下:

1600:01=0x60600008???
1600:02=0x60400010? ?
1600:03=0?

1600:04及以后的子索引都為0

Note:對象本身的長度查詢手冊了解。32位數(shù)據(jù)用20? 16位數(shù)據(jù)用10? 8位長度用08

?

六、1600:00的子索引個數(shù)置為實際個數(shù),本例子為2個

Note:如果用SDO修改,寫入1600:00的數(shù)據(jù)為2

?

七、修改配置R-PDO-2,先把1401:01最高位置1

將1601:00清零

將1601:01?設(shè)置為需要的對象(以607A和6081為例)

1601:01 = 0x607A0020

1601:02 = 0x60810020

1601:03=0? ? 1601:04及以后均需要清零,否則會造成數(shù)據(jù)溢出

1601:00=2? ?//實際有效子索引個數(shù)

最后把1401:01最高位置0? 結(jié)束修改

?

依次方法配置RPDO-3

?

八、保存1010:01=1702257011、1010:02=1702257011,斷電重啟,重新連接軟件并切換到Object dictionary
確認是否修改成功

SDO保存指令:如下

保存:600+ID? 23 10 10 02 73 61 76 65 //通訊參數(shù)保存

保存所有參數(shù):600+ID? 23 10 10 01 73 61 76 65 //通訊參數(shù)保存

查詢:600+ID 40? 10 10 02 00 00 00 00? //查詢1010:02等于1時,保存成功

?

斷電重啟,檢查。用SDO直接查詢1600:01? 1600:02? 1600:03是否準確

?

針對以上案例的是使用過程數(shù)據(jù)舉例:

200+ID? 01 06 00? ?//意思等同于6060=1? 6040=6

300+ID E8 03 00 00 32 00 00 00? ?//意思等同于607a=0x3E8? 6081=0x32

?

修改TPO步驟說明


一、正確連接PNDS軟件,讀取刷新Object dictionary數(shù)據(jù)列表

二、1800配置1A00(TPDO) //允許修改的配置內(nèi)部對應(yīng)關(guān)系

1801配置1A01

1802配置1A02

三、修改配置T-PDO-1,先把1800:01最高位置1,即把對象字典列表中的最高位修改為8(16進制)(二進制最高位置1)

四、1A00:00中的子索引個數(shù)置為0

五、配置需要的PDO對象,本例606C(真實速度),6064(真實位置)配置到第一PDO通道,
步驟如下:
1A00:01=0x60640020 //32位數(shù)據(jù)
1A00:02=0x606C0010 //16位數(shù)據(jù)
1A00:03=0x60410010

六、1A00:00的子索引個數(shù)置為實際個數(shù),本例子為3個

七、把1A00:00最高位置0,即把對象字典列表中的最高位修改為0

八、保存(1010:01=1702257011) 、(1010:02=1702257011)),斷電重啟,重新連接軟件并切換到Object dictionary
確認是否修改成功

?

?

總結(jié),如果用戶希望做以下配置

PLC_TO_電機
RX-PDO 字節(jié)數(shù) 名稱 數(shù)據(jù)類型 備注
PDO1 byte1 工作模式
6060
INTEGER8 1:定位模式
2:速度模式
3:PV模式 等
byte2-3 控制字
6040
UNSIGNED16 控制字
PDO2 byte1-4 目標位置 INTEGER32 Target positon??
byte5-8 目標速度 UNSIGNED32 Target velocity
電機_TO_PLC
TX-PDO 字節(jié)數(shù) 名稱 數(shù)據(jù)類型 備注
PDO1 byte1-4 馬達位置
6064
INTEGER32 電機當(dāng)前位置
byte5 實時速度
606C
INTEGER32 606C為當(dāng)前實時速度,因為數(shù)據(jù)不會特別大,因此映射低16位即可
byte6 狀態(tài)字
6041
UNSIGNED16 ?

?

完整SDO發(fā)送過程

SDO發(fā)送過程: 注解 ?
600+ID? 23 00 14 01 01 02 00 80??????? 1400:01=0x80000200+ID(前面ID舉例為1) ?
600+ID? 2F 00 16 00 00 00 00 00? 1600:00=0 ?
600+ID? 23 00 16 01 08 00 60 60 1600:01=0x60600008 ?
600+ID? 23 00 16 02 10 00 40 60 1600:02=0x60400010 ?
600+ID? 23 00 16 03 00 00 00 00 1600:03=0 ?
600+ID? 23 00 16 04 00 00 00 00 1600:04=0 ?
600+ID? 2F 00 16 00 02 00 00 00? 1600:00=2 ?
600+ID? 23 00 14 01 01 02 00 00??????? 1400:01=0x00000200+ID (前面ID舉例為1) ?
? ? ?
600+ID? 23 01 14 01 01 02 00 80??????? 1401:01=0x80000300+ID ?
600+ID? 2F 01 16 00 00 00 00 00? 1601:00=0 ?
600+ID? 23 01 16 01 20 00 7A 60 1601:01=0x607A0020 ?
600+ID? 23 01 16 02 20 00 81 60 1601:02=0x60810020 ?
600+ID? 23 01 16 03 00 00 00 00 1601:03=0 ?
600+ID? 23 01 16 04 00 00 00 00 1601:04=0 ?
600+ID? 2F 01 16 00 02 00 00 00? 1600:00=2 ?
600+ID? 23 01 14 01 01 03 00 00??????? 1400:01=0x00000200+ID (前面ID舉例為1) ?
? ? ?
600+ID? 23 02 14 01 01 02 00 80??????? 1402:01=0x80000400+ID 清空第三個通道
600+ID? 2F 02 16 00 00 00 00 00? 1602:00=0
600+ID? 23 02 16 01 00 00 00 00 1602:01=0
600+ID? 23 02 16 02 00 00 00 00 1602:02=0
600+ID? 23 02 16 03 00 00 00 00 1602:02=0
600+ID? 23 02 16 04 00 00 00 00 1602:03=0
600+ID? 23 02 14 01 01 04 00 00??????? 1402:01=0x00000400+ID(前面ID舉例為1)
? ? 依次清空第四個通道
600+ID? 23 03 14 01 01 02 00 80??????? 1403:01=0x80000500+ID
600+ID? 2F 03 16 00 00 00 00 00? 1603:00=0
600+ID? 23 03 16 01 00 00 00 00 1603:01=0
600+ID? 23 03 16 02 00 00 00 00 1603:02=0
600+ID? 23 03 16 03 00 00 00 00 1603:02=0
600+ID? 23 03 16 04 00 00 00 00 1603:03=0
600+ID? 23 03 14 01 01 05 00 00??????? 1403:01=0x00000500+ID(前面ID舉例為1) ?
? ? ?
600+ID? 23 10 10 02 73 61 76 65 1010:02=1702257011 保存通訊參數(shù)
600+ID? 23 10 10 01 73 61 76 65 1010:01=1702257011 保存所有參數(shù)

?

修改T-PDO

600+ID? 23 00 18 01 01 18 00 80??????? 1800:01=0x80000180+ID(前面ID舉例為1) 配置T-PDO第一通道
600+ID? 2F 00 1A 00 00 00 00 00? 1A00:00=0
600+ID? 23 00 1A 01 20 00 64 60 1A00:01=0x60640020
600+ID? 23 00 1A 02 10 00 6C 60 1A00:02=0x606C0010
600+ID? 23 00 1A 03 10 00 41 00 1A00:03=0x60410010
600+ID? 23 00 1A 04 00 00 00 00 1A00:04=0
600+ID? 2F 00 1A 00 02 00 00 00? 1A00:00=3
600+ID? 23 00 18 01 01 18 00 00??????? 1800:01=0x00000200+ID (前面ID舉例為1)
? ? 依次配置T-PDO第二通道
600+ID? 23 10 10 02 73 61 76 65 1010:02=1702257011 保存通訊參數(shù)
600+ID? 23 10 10 01 73 61 76 65 1010:01=1702257011 保存所有參數(shù)

Related Articles