
这种是一般PLC上CAN的9芯插头引脚定义。 5接屏蔽线
- 40米: 1 Mbps ( iso 11898_3)
- 逻辑1: H L 电压差 低于0.05V(隐性 1)
- 逻辑0: H L 电压差 高于1.5V(显性 0)
- 电阻: H L 负载电阻 (85Ω ~ 130Ω) / 2
- 一般120Ω /2
- 实际 H L 负载电阻值:60Ω
-
- 标准帧id使用11bit(0x7FF)
- 扩展帧id使用29bit(0x1FFFFFFF)(11bit+18bit)
- 帧id=0x00;优先级最高


这图上说的是:隐性1的时候,H和L线都是2.5V,线压差是0v。
显性0的时候,H线3.5v,L线1.5v,线压差是2v(满足显性最低条件 >1.5v)。
可以理解为,没数据的时候,大家都是2.5v。
- H和L是负电压或<1.5v时 :逻辑1(隐性电平)
- H和L之间正电压,且大于1.5v:逻辑0(显性电平)
-
- 总线是或逻辑: 甲(隐性电平)乙(显性电平)总线结果是(显性电平)
- 子站都能读取总线状态。显性电平能覆盖总线电平(强制为显性电平)
- 所以从站id=0x00权限最高。下来是帧id = 0x01;
- 11bit地址先出现1的设备,先出局。

- 上图,空闲的时候:
-
- H是+1.46v
-
- L是+1.46v (我把L线电压下降 1V 是为了方便观看,实际波形是完全重叠的)
-
- 所以 H线和L线之间没有电压差,是逻辑1(隐性电平)

- 这个是截取工作状态的波形。
-
- H线和L线出现电压差大于1.5v(实测2.8v),表示逻辑0 (显性电平)
-
- 这就相当于,没有数据的时候一直逻辑1(H线电压就是L线电压)。有数据0的时候会(出现电压差2.8v)
所有设备都并联 CAN总线,终端两边各并联120Ω电阻(万用表量HL电阻60Ω),大家都没发报文时,HL线没有电压差,当主站发报文时,HL出现电压差。如果大家全在发报文,HL电压差占空比越大,接近于一直保持2.8v压差。虽然手册说隐性状态下HL应该同时保持在2.5v(实际1.46v),电压差0v,理论和实际总会有点差距。
H和L线,终端各并联120Ω电阻。(断电,用万用表测 60Ω)

21拨码都朝下 


- CAN总线: 一般用在汽车上,伺服驱动器,步进驱动器,舵机,分布式io等设备上。
-
- 有以太网转CAN和4G网转CAN。(注意每秒帧数1M≈9259帧)十的六次方除以 108bit
-
- 当然得到数据后,可以往RS485等上面传。

- 上图数值代表bit数量。
- 数据段:0~64表示 最大64bit(8字节)
- 标准数据帧,单帧最大108bit
- 1M是1000000bit(9259帧秒)
- 甲方出隐性,乙方出显性,总线结果是显性。(ack位置,甲方出隐性,从站出显性,甲方:确认已发送成功。)
- 最后保持7个bit隐性电平表示一帧结束。
-
- 高速FD设备:
- 除了数据段位置,其他都一样,在进入数据段后,波特率立即变成5MHz,同样的8字节时间长度,数据变成64字节。
- CAN-FD 数据段:速度是5M或8M,最大64字节(64byte)
- 和普通can不一样。普通CAN的单帧数据段只能最大64bit(8byte)
设备ip我改的是77,默认ip是192.168.0.7
- 硬件:有人 CANET200 (断链保存最后200帧)
- 电源 DC5~36v
- 默认网络 192.168.0.7
- 密码 admin
- can1 20001(端口)用客户端模式去连
- rs485 20003
- can2 20005
- 设备支持:心跳,过滤id,中继,标准帧,扩展帧,CAN转485
- 单帧:固定13字节去覆盖标准帧(108bit)或扩展帧。
现在要记住 148字节的样式,一会要用。它不能像串口那样单独发一个字节。
20001端口是 Can1
20005端口是 Can2(端口和ip都是可以修改的,在网页192.168.0.7密码admin)

- 7 6 54 3210
- 0 标准 0 数据帧 00 1000
- 1 扩展 1 远程 0~8有效字节数
-
- 调试结果:CAN2发,CAN1监视
-
- 08h 标准,数据帧, 8字节(id不能大于0x7FF)11bit
- 48h 标准,远程 , 0字节(监视48h帧)应该类似于呼叫,11bit
- 88h 扩展,数据帧, 8字节(id不能大于0x1FFFFFFF),29bit
- C8h 扩展,远程 , 0字节(监视C8h帧),29bit
-
- 远程帧:8字节数据全是00h
- 本人测试,雷赛伺服CAN只支持08帧(标准数据帧)。CANopen把11bit切割成(4bit功能码 + 7bit从站地址)
- 48h和C8h应该类似于呼叫设备。所以数据段不使用
- 新手:这部分只需要记住是占4个字节就行了。比如 12 34 56 78,不用考虑意义,再加上后
- 面8字节,CAN就能发送出去。
- 标准帧:这部分使用11bit,值不能大于0x7FF;CANopen把11bit切割成(4bit功能码 + 7bit从站地址)
- 扩展帧:这部分使用29bit,所以id不能大于0x1FFFFFFF
-
- //=======老司机=================
- 这个4字节的内容会影响后面8字节的定义。
- 这个4字节也可以理解为:功能码+从站id地址
- 标准帧:(id帧只使用里面的11bit,功能码4bit + 从站地址7bit)//id值不能大于0x7FF
- 扩展帧:4字节内使用29bit// id值不能大于0x1FFFFFFF;
- 优先级:id帧首次出现隐性电平的帧,优先级低。(COB_ID 00000000最高)
-
- int cobid = 功能码<<7;
- cobid |= 从站id地址;
- return cobid;//标准帧:这个11bit具体定义要看手册,硬件上只定义id值不能大于0x7FF(11bit)
-
- //======标准帧============================
- COB_ID:(11bit)// 标准数据帧
-
- 功能码(4bit)+ 从站地址(7bit)
- 从站最大 0x7F 是 0~127站
- 雷赛手册定义:0站是广播站,指所有从站。
-
- COB_ID值(11bit)(4bit功能码 + 7bit从站地址)
- NMT 网络管理 0000 0x00
- 同步对象 0001 0x80
- 紧急 0001 0x80+从站地址
- Time 0010 0x100
-
- TXPDO1(发送) 0011 0x180+地址
- RXPDO1(接收) 0100 0x200+地址
-
- TXPDO2(发送) 0101 0x280+地址
- RXPDO2(接收) 0110 0x300+地址
- TXPDO3(发送) 0111 0x380+地址
- RXPDO3(接收) 1000 0x400+地址
- TXPDO4(发送) 1001 0x480+地址
- RXPDO4(接收) 1010 0x500+地址
-
- //=====SDO操作===========
- TSDO(服务器发送)1011 0x580+地址(get回帧)40读寄存器
- 4f(8bit)
- 4b(16bit)有效bit长度
- 47(24bit)
- 43(32bit)
-
- RSDO(客户发送) 1100 0x600+地址(set到驱动器)60成功80失败
- 2f(8bit)
- 2b(16bit)操作bit数
- 27(24bit)
- 23(32bit)
- //关闭心跳1017h+00寄存器赋值零 08 0000 0601 2b 1710 00 0000 0000
- // 08标准数据帧,601set从站1RSDO操作,2b覆盖16bit,
- // 1710寄存器0x1017,00子索引0,0000 0000值0x00;
-
- //伺服保存 08 0000 0601 23 1010 01 7361 7665
- //伺服恢复出厂 08 0000 0601 23 1110 01 6c6f 6164
-
- NMT 从站网络回帧 1110 0x700+地址
-
- //======参考==============
- cobid(4字节的11bit) b0 b1
- 00h 网络管理 01启用远程伺服节点 从站地址00广播(所有伺服)
- 02停止远程伺服节点
- 80预操作
- 81节点复位 01从站
- 82通讯复位
- //======参考==============
- cobid(4字节的11bit) 无b0
- 80h 同步报文 空
-
- //======参考================
- cobid(4字节的11bit) b0
- 700h + 从站地址(回帧 NMT) 00 Boot_up 心跳信号(寄存器 0x1017单位ms)
- 04 停止
- 05 操作
- 7F 预操作
-
- 注:因为是标准帧所以只使用11bit,又因为我的硬件是以太网转CAN,所以是固定的4字节里只使用11bit
- 如果是扩展数据帧,那4字节里就使用29bit
-
- //伺服恢复出厂 08 0000 0601 23 1110 04 6c6f 6164
- 1011这个寄存器是32bit的,必须用23操作码。
- 详细解释如下:
- 08 标准数据帧,数据长度8字节
- 601是 id帧(11bit)4bit功能码+7bit从站地址,RSDO操作1号从站
- 23 是写32bit数值
- 1110是: 0x1011寄存器
- 04是:子索引 第4个(1和4功能一样)
- 6c6f 6164 是: 数值 0x64616f6c
下面我发送:84 12345678 11 22 33 44 55 66 77 88
84 12345678 11 22 33 44 55 66 77 88
接收
[2022-11-27 12:41:50.229] 84 12 34 56 78 11 22 33 44 00 00 00 00
看出区别了吗? 在第一字节是 控制byte, 4表示帧数据(在8个字节里只有4个字节有效。)
再来看下:
- 发: 88 12345678 11 22 33 44 55 66 77 88
- 收: 88 12 34 56 78 11 22 33 44 55 66 77 88

这个案例,必须熟记。C#写业务的时候要用。
//==========================================================
到这里,发送的数据帧就学完了。下面开始上硬菜。

需要 EDS 对象字典 http://www.leisai.com/ 从驱动器发送出来的 PDO 即为 TPDO
DM-CAN 系列系列驱动器目前最多可以支持 4 组 TPDO(驱动器TX) 和 4 组 RPDO(驱动器RX) 。
SDO 的传输效率要低于 PDO。
- SDO做初始化参数用。
- PDO类似于快捷键,配置好参数后,就可以直接操作这个快捷键。
-
- SDO相当于去黄焖鸡单个点吃的,子索引相当于这道菜的基础上加辣?加香菇?加百叶?
- PDO相当于点套餐,后面的值是套餐的编号。这样可以省去一个个点菜的麻烦。(一个套餐要是有200多道菜,你用SDO一个个点,很浪费时间)
伺服寄存器的bit长度需要使用对应的bit长度操作码。如 23

- get寄存器的bit长度
- 4f(8bit)
- 4b(16bit)
- 47(24bit)
- 43(32bit)
-
- set寄存器的bit长度 // 0x600+从站地址(set到驱动器)60成功80失败
- 2f(8bit)
- 2b(16bit)
- 27(24bit)
- 23(32bit)
- DM-CAN 系列驱动器的 CAN 地址总共有 7 位,最大地址 127。
- 站点地址不可设置为 0
- 驱动器地址=高 2 位地址+低 5 位地址;
- 其中低 5 位地址由拨码开关 SW1~SW5 设定(off表示1)
- ,高 2 位地址通过对象字典 0x2150寄存器 来设置,2150 默认值为 0,范围是 0~3。
- 2150=1,表示增加地址32;
- 2150=2,表示增加地址 64。
- 2151 使用默认值0;0:地址来自拨码器,1地址来自2150寄存器
- 保存 1010+04 = 0x65766173; // 保存,重启生效(08 0000 0601 23 1010 04 7361 7665)
- 恢复出厂 1011+04 = 0x64616f6c; //驱动器恢复出厂设置 8字节数据
- (08 0000 0601 23 11 10 04 6c 6f 61 64)
-
- 驱动器控制字(对象字典 6040h) 的 bit0-bit3、 bit7 位来控制(PV速度,HM回原点,PP位置)
- 状态字(对象 6041h) 的 bit0~bit3、 bit5、 bit6 显示硬件当前状态
我也有考虑用can舵机,袖带方便,无奈价格吓退我,我花了80块买了这个步进驱动器。学习过程中,试错成本太高,猴年马月能回本????生活压力大。

449元,广州那边发常州,东西还在路上。。
下次更新
驱动器接好后,会收到个心跳包。

- 7 6 54 3210
-
- 0 标准 0 数据帧 00 0001
- 1 扩展 1 远程 0~8有效字节数
-
- 回帧是 01h
- 标准,数据帧,长度1字节
分析: 标准,数据帧,1字节,COB_帧id:0x0000 0707 ,数据 0x7f // 07是驱动器地址

还得做测试,之前驱动器地址是0x07,我现在改成0x03地址,看看是什么心跳包。
注意:驱动器OFF位置拨码表示1

那148里 4的最后7bit是驱动器地址了(实际是 功能码4bit + 从站地址7bit)。
00 00 07 03这里03是驱动器地址,07还不知道是什么意思,继续看手册。
- SDO收 580h+(get伺服)
- SDO发 600h+(set伺服)
- 700h+(从站状态)
- 0x00+(总线命令)
-
- 1字节 4字节 COB_ID 8字节
- 00 0000 0000 00 00 00 00 00 00 00 00
-
- 00 0000 0080 空 同步从站00(所有从站)
-
- 02 0000 0000 81 01 同步从站01
- 02 0000 0000 01 00 启动远程控制,从站00广播
- 01 0000 0701 00 回帧,心跳
- 08 0000 0601 23 00 14 01 00 00 00 80 SDO,写32bit
- 0x1400子01=0x8000 0000;
- 08 0000 0581 60 00 14 01 00 00 00 00 回帧SDO 60成功,0x1400子01
- 08 601 2F 00 16 00 00 00 00 00 SDO写8bit,0x1600子00,=0x00
- 581 60 00 16 00 回帧SDO,60成功0x1600子00
- 08 601 2F 00 14 02 01 SDO写8bit,0x1400子02=0x01;
- 581 60 00 14 02 回帧SDO,60成功1400子02
- 08 601 2B 00 14 03 90 01 SDO写16bit,1400子03=0x0190;40.0ms
- 581 60 00 14 02 回帧SDO,60成功1400子02
- 7 6 54 3210
- 0 标准 0 数据帧 00 1000
- 1 扩展 1 远程 0~8有效字节数
-
- 调试结果:CAN2发,CAN1监视
-
- 08h 标准,数据帧, 8字节(id不能大于0x7FF)
- 40h 标准,远程 , 0字节(监视40h帧)应该类似于呼叫
- 88h 扩展,数据帧, 8字节(id不能大于0x1FFFFFFF)
- C0h 扩展,远程 , 0字节(监视C0h帧)
-
- 远程帧:8字节数据无意义,全是00h
- 本人测试,雷赛伺服CAN支持08帧(标准数据帧)。


帧id的功能码:00h+ 80h+ 180h+ 200h+ 。。。。。

这个00h是can总线命令。
C#设计的时候,COB_ID: 功能码 << 7 ,然后或上从站地址
- int cobid = 功能码<<7;
- cobid |= 从站地址;
- return cobid;//标准帧(11bit)不能大于0x7FF;
- //==================================
- COB_ID:(11bit)
-
- 功能码(4bit)+ 从站地址(7bit)
- 从站最大0x7F 是 0~127
- NMT 网络管理 0000
- 同步对象 0001 0x80+地址0
- 紧急 0010 0x80+地址
-
- TXPDO1(发送) 0011 0x180+地址
- RXPDO1(接收) 0100 0x200+地址
-
- TXPDO2(发送) 0101 0x280+地址
- RXPDO2(接收) 0110 0x300+地址
- TXPDO3(发送) 0111 0x380+地址
- RXPDO3(接收) 1000 0x400+地址
- TXPDO4(发送) 1001 0x480+地址
- RXPDO4(接收) 1010 0x500+地址
-
- TSDO(服务器发送)1011 0x580+地址(get回帧)
- RSDO(客户发送) 1100 0x600+地址(set到驱动器)
-
- NMT 错误控制 1110 0x700+地址(get回帧,从站状态)
NMT 网络管理: 02 00000000 0101 0000 0000 0000
- COBID(11bit) B0 B1
-
- 00000000h 01启动远程 01从站地址
- 02停止远程 00广播
- 80预操作
- 81节点复位
- 82通讯复位
- 580h+ TSD0 (get回帧)
- 600h+ RSD0 (set到驱动器)
-
- GOB_ID B0 B1B2 B3 B4B5B6B7
- 601(600h+从站地址)
-
- 2F写 8bit 1032寄存器(0x3210) 10子索引 10 (0x10)设定值
- 2B写 16bit 1032寄存器(0x3210) 10子索引 10 32 (0x3210)
- 27写 24bit 1032寄存器(0x3210) 10子索引 10 32 54(0x543210)
- 23写 32bit 1032寄存器(0x3210) 10子索引 10 32 54 76 (0x76543210)
-
- 40读寄存器 1032寄存器(0x3210) 10子索引 空
-
- 1032寄存器地址(0x3210)
-
- 10子索引(0x10是16,一般是0~3)
-
- 数值10 32 54 76(0x76543210)
- 580h+ TSD0 (get回帧)
- 600h+ RSD0 (set到驱动器)
-
- GOB_ID B0 B1B2 B3 B4B5B6B7
- 581(580+从站地址)
-
- 60写入成功
- 80写入异常
-
- 4F一字节(回帧有效字节)
- 4B二字节
- 47三字节
- 43四字节
-
- 1032寄存器(0x3210)
-
- 10子索引(0x10是16,一般是0~3)
-
- 数值10 32 54 76(0x76543210)
- 8字节报文详解:维修电工祁成
-
- B0 B1B2 B3 B4B5B6B7
- 0功能码
-
- 1寄存器地址 10 32 低字节在前 ( 0x3210 )
-
- 3子索引 01 ( 0x01 )一般是0x00
-
- 4数据值 10 32 54 76 低字节在前(0x76543210)
-
- B0功能码:
- 4f(8bit)// 回帧有效bit长度
- 4b(16bit)
- 47(24bit)
- 43(32bit)
-
- RSDO(客户发送) 1100 0x600+地址(set到驱动器)60成功80失败
- 2f(8bit)//写寄存器bit长度
- 2b(16bit)
- 27(24bit)
- 23(32bit)
-
- 读:
- 40读寄存器 0132(寄存器0x3210) 10子索引(0x10 是16,一般子索引用0x00)
- //样例: 08 0000 0601 40 10 32 00 //SDO到驱动器1从站40读寄存器 0x3210,子索引0
- // 40 03 30 00 // 40读寄存器,寄存器0x3003子索引0
- 4B二字节寄存器结果
- // 4B 03 30 00 5A 5A 00 00 //报文应该是:08 0000 0581 4B 03 30 00 5A 5A 00 00
6000H~~~9FFFH 标准DSP CiA 402
案例:运动模式 6060+00 = 3 //速度模式
- 运动模式(0x6060)= 1 位置
- 3 速度
- 4 转矩
- 6 回零模式
-
- 1 4 8
- 08 0000 0601 2f 6060 00 03 000000 // 2F写8bit,寄存器0x6060,子索引00,数值03
案例2:保存设置 0x1010子索引1 = 0x65766173;
- 1 4 8
-
- 08 0601 23 10 10 01 73 61 76 65
- 注:
- 23 写32bit
- 1010 寄存器0x1010
- 01 子索引 0x01
- 73 61 76 65 寄存器数值 0x65766173;
-
-
- 数据帧:"08 0000 0601 23 1010 01 7361 7665"
-
- 08 0000 0601 23 10 10 01 73 61 76 65
- 标准数据帧:8字节长度
- 帧id: 0x0601(SDO操作600h + 01h从站)
- 写32bit: 23h
- 寄存器: 10 10 (低字节在前)
- 子索引: 01h
- 数据8字节: 73 61 76 65 (0x65766173)
案例3:电机放向 2051+ 00 = 0; // 0不变,1反方向
- 1 4 8
-
- 08 0000 0601 23 51 20 00 00 00 00 00
- 注:
- 23 写32bit
- 51 20 寄存器0x2051
- 00 子索引 0x00
- 00 00 00 00 寄存器数值 0x00000000;
-
-
- 数据帧:
-
- 08 0000 0601 23 51 20 00 00 00 00 00


- 寄存器 子索引 长度 说明
- 1000h 00h 32bit 驱动器机种码 0x00040192
- 1001 00 错误缓存器(bit4通讯错误bit3温度bit2电压bit1电流bit0一般)
- 1003 预定义错误区
- 1005 SYNC同步码 0x80
- 1006 通讯周期us SNYC间隔
- 1007 PDO时间窗口
- 1008 00 设备名称
- 1009 00 硬件版本
- 100A 00 软件版本
- 1010 01 32bit 伺服保存 0x65766173
- 1011 01 32bit 恢复出厂值 0x64616f6c
- 1014 紧急事件(bit31 o开)
- 1017 生产者心跳周期ms
- 1018 01 厂家id
- 1018 02 产品代码
- 1018 03 修改版本
- 1018 04 序列号
- 1200 01 SDO参数 上→下 0x600+
- 02 上←下 0x580+
-
- 1400 01 PDO1参数(bit31 o开)(bit10~0 0x200+)
- 02 响应延迟
- 03 禁止时间
- 04
- 05 应答延迟
- 1401 PDO2参数
- 1402 PDO3参数(bit31 o开)(bit10~0 0x400+)
- 1403 PDO4参数
-
- 1600 01~08 RxPDO1对象绑定(不能超过64bit)
- 1601 01~08 RxPDO2对象绑定
- 1602 01~08 RxPDO3对象绑定
- 1603 01~08 RxPDO4对象绑定
-
- 1800 TxPDO1参数
-
- 1A00 01~08 TxPDO1对象绑定
- 1A01 01~08 TxPDO2对象绑定
-
- 1C00 01 邮箱输出类型:1
- 1C00 02 邮箱输入类型:2
- 1C00 03 过程输出类型:3
- 1C00 04 过程输入类型:4
- 1C12 00 PxPDO分配:0x1600
- 1C13 00 TxPDO分配:0x1A00
-
-
- 0x1000-设备类型UINT32 RO NO
- 0x1001-错误寄存器UINT8 RO YES
- 0x1002-制造状态寄存器UINT32 RO是
- 0x1003 8预定义错误字段ARRAY--
- 0x1005-COB-ID SYNC消息UINT32 RW NO
- 0x1006-通信周期UINT32 RW NO
- 0x1007-同步窗口长度UINT32 RW NO
- 0x1008-制造商设备名称STRING RO NO
- 0x1009-制造商硬件版本STRING RO NO
- 0x100A-制造商软件版本STRING RO NO
- 0x1010 2存储参数ARRAY RO NO
- 0x1011 2恢复默认参数ARRAY RO NO
- 0x1014-COB-ID EMCY UINT32 RO编号
- 0x1017-生产者心跳时间UINT16 RW NO
- 0x1018 4标识对象阵列--
- 0x1019-同步计数器溢出值UINT8 RW NO
- 0x1029 6错误行为对象ARRAY--
- 0x1200 2 SDO服务器参数ARRAY--
- 0x1400 2 RPDO通信参数1 ARRAY--
- 0x1401 2 RPDO通信参数2 ARRAY--
- 0x1402 2 RPDO通信参数3 ARRAY--
- 0x1403 2 RPDO通信参数4 ARRAY--
- 0x1600 8 RPDO映射参数1 ARRAY--
- 0x1601 8 RPDO映射参数2 ARRAY--
- 0x1602 8 RPDO映射参数3 ARRAY--
- 0x1603 8 RPDO映射参数4 ARRAY--
- 0x1800 6 TPDO通信参数1阵列--
- 0x1801 6 TPDO通信参数2 ARRAY--
- 0x1802 6 TPDO通信参数3阵列--
- 0x1803 6 TPDO通信参数4 ARRAY--
- 0x1A00 8 TPDO映射参数1 ARRAY--
- 0x1A01 8 TPDO映射参数2 ARRAY--
- 0x1A02 8 TPDO映射参数3 ARRAY--
- 0x1A03 8 TPDO映射参数4 ARRAY
- 寄存器 子索引 长度 说明
- 2000h 00h 32bit 最大电流ma
- 2001 00 电机一圈脉冲
- 2002 00 待机时间ms
- 2003 00 待机电流百分比 50%
- 2005 01 输出1功能
- 2005 02 输出2功能
- 2007 00 电机刹车
- 2008 输出引脚逻辑 0正逻辑 1反
- 2009 fir滤波使能
- 2010 01 fir滤波时间
- 2012 软启动us
- 2013 电流环使能
- 2020 电机电阻
- 2021 电机电感
- 2028 输出极性
- 2039 外部位置H
- 2040 外部位置L
- 2043 当前转速
- 2048 母线电压
- 2051 电机方向 1反转
- 2056 故障检测
- 2057 清除报警 1清除
- 2058 软启动 1使能
- 2073 上电自动走位 1先正转30度再反转15度
- 2093 清除故障记录
- 2150 从站地址
- 2151 从站地址来源
- 2152 01 DI1功能
- 02 DI2功能
- 03 DI3功能
- 04
- 05 DI5功能
- 2153 DI1滤波时间 us
- 2154 DI极性
- 2155 00 DI1状态
- 01 DI2状态





- 上面例举了2种CAN主站的方案:
- 以太网的方案分析数据帧简单,缺点是以太网实时性差,大负载后,网络卡顿。
- USB的方案,优点是实时性稳定,缺点是对开发人员门槛稍微高点。实际二次开发不难,就是把库再包装一下,方便自己调用。
-
- cia301 总线通信行规(数据帧格式)
- cia401 i/o模块行规
- cia402 运动控制
- cia403 人机接口行规
- cia404 测量设备与闭环控制行规
- cia406 编码器行规
- cia408 比例液压行规
用 C# 写上位机,控制伺服电机,看我写的下篇。