上位机串口通信协议说明(协议采用9个字节每帧)
(1)设定细分和步距角
例如:ffaa03010800b40069 【8细分,1.8度】
ffaa03010400b40065 【4 1.8】
0xff 0xaa 0x03
0x01(CMD,对应命令号)
0xnn 0xnn(这2个字节对应细分,前面为低字节、后面为高字节)
0xnn(如:若步距角为1.8,则对应该字节的值就是180,对应 X100)
0x00 0xnn(最后一个字节对应前面所有的字节的和的低8位,校验用)
回:0xff 0xaa 0x03 0x01 0x00 0x00
(2)设定运行距离
例如:ffaa030340060000f5 【1600个脉冲】
0xff 0xaa 0x03
0x03(CMD,对应命令号)
0xnn 0xnn 0xnn(这3个字节表示运行距离,前面是低字节,后面是高字节)
0x00 0xnn(最后一个字节对应前面所有的字节的和的低8位,校验用)
回:0xff 0xaa 0x03 0x03 0x00 0x00
(3)设定运行方向和启动频率
例如:
ffaa030400320000e2 【正转,启动频率50hz】
ffaa03040064000014 【正转,启动频率10hz】
ffaa030401320000e3 【反转,启动频率50hz】
0xff 0xaa 0x03
0x04(CMD,对应命令号)
0xnn(方向 0正转 1反转)
0xnn 0xnn(启动频率 前面是低字节 后面是高字节)
0x00 0xnn(最后一个字节对应前面所有的字节的和的低8位,校验用)
回:0xff 0xaa 0x03 0x04 0x00 0x00
(4)设定加减速频率和运行速度
例如:f
faa03053200c800ab 【加减频率50hz,速度200RPM】
ffaa03050a00c80083 【加减频率10hz,速度200RPM】
0xff 0xaa 0x03
0x05(CMD,对应命令启动)
0xnn 0xnn(加减速频率,前面是低字节 后面是高字节)
0xnn 0xnn (运行速度,单位RPM。 前面是低字节 后面是高字节)
0xnn(最后一个字节对应前面所有的字节的和的低8位,校验用)
回:0xff 0xaa 0x03 0x05 0x00 0x00
(5)停止命令
例如:ffaa030600000000b2
0xff 0xaa 0x03
0x06(CMD,对应命令号)
0x00 0x00 0x00 0x00
0xnn(最后一个字节对应前面所有的字节的和的低8位,校验用)
回:0xff 0xaa 0x03 0x06 0x00 0x00
(6)开始运行命令
例如:ffaa030900000000b5
0xff 0xaa 0x03
0x09(CMD,对应命令号)
0x00 0x00 0x00 0x00
0xnn(最后一个字节对应前面所有的字节的和的低8位,校验用)
回:0xff 0xaa 0x03 0x09 0x00 0x00
(7)正向运行
例如:ffaa030700000000b3
0xff 0xaa 0x03
0x07(CMD,对应命令号)
0x00 0x00 0x00 0x00
0xnn(最后一个字节对应前面所有的字节的和的低8位,校验用)
回:0xff 0xaa 0x03 0x07 0x00 0x00
(8)反向运行
例如:ffaa030800000000b4
0xff 0xaa 0x03
0x08(CMD,对应命令号)
0x00 0x00 0x00 0x00
0xnn(最后一个字节对应前面所有的字节的和的低8位,校验用)
回:0xff 0xaa 0x03 0x08 0x00 0x00
(9)点亮LED灯
例如:ffaa000c05010000bb
0xff 0xaa 0x00
0x0c(CMD,对应命令号)
0x05
0x01 (点亮)
0x00
0x00
0xnn(最后一个字节对应前面所有的字节的和的低8位,校验用)
回:0xff 0xaa 0x00 0x0c 0x01 0x00
(10)熄灭LED灯
例如:ffaa000c05000000ba
0xff 0xaa 0x00
0x0c(CMD,对应命令号)
0x05
0x00 (熄灭)
0x00
0x00
0xnn(最后一个字节对应前面所有的字节的和的低8位,校验用)
回:0xff 0xaa 0x00 0x0c 0x00 0x00
(11)OC1输出(可外接继电器)ON
例如:ffaa000c05020000bc
0xff 0xaa 0x00
0x0c(CMD,对应命令号)
0x05
0x02 (ON)
0x00
0x00
0xnn(最后一个字节对应前面所有的字节的和的低8位,校验用)
回:0xff 0xaa 0x00 0x0c 0x02 0x00
(12)OC1输出(可外接继电器)OF
例如:ffaa000c05030000bd
0xff 0xaa 0x00
0x0c(CMD,对应命令号)
0x05
0x03 (OFF)
0x00
0x00
0xnn(最后一个字节对应前面所有的字节的和的低8位,校验用)
回:0xff 0xaa 0x00 0x0c 0x03 0x00
(13)OC2输出(可外接继电器)ON
例如:ffaa000c05040000be
0xff 0xaa 0x00
0x0c(CMD,对应命令号)
0x05
0x04 (ON)
0x00
0x00
0xnn(最后一个字节对应前面所有的字节的和的低8位,校验用)
回:0xff 0xaa 0x00 0x0c 0x04 0x00
(14)OC2输出(可外接继电器)OF
例如:ffaa000c05050000bf
0xff 0xaa 0x00
0x0c(CMD,对应命令号)
0x05
0x05 (OFF)
0x00
0x00
0xnn(最后一个字节对应前面所有的字节的和的低8位,校验用)
回:0xff 0xaa 0x00 0x0c 0x05 0x00
(15)OC3输出(可外接继电器)ON
例如:ffaa000c05060000c0
0xff 0xaa 0x00
0x0c(CMD,对应命令号)
0x05
0x06 (ON)
0x00
0x00
0xnn(最后一个字节对应前面所有的字节的和的低8位,校验用)
回:0xff 0xaa 0x00 0x0c 0x06 0x00
(16)OC3输出(可外接继电器)OF
例如:ffaa000c05070000c1
0xff 0xaa 0x00
0x0c(CMD,对应命令号)
0x05
0x07 (OFF)
0x00
0x00
0xnn(最后一个字节对应前面所有的字节的和的低8位,校验用)
回:0xff 0xaa 0x00 0x0c 0x07 0x00
(17)读取IN3和IN4二路输入信号命令,(在串口通信模式下:IN3为正向 限位输入点反馈,IN4为反向限位输入点反馈)
例如:ffaa000c05080000c2
0xff 0xaa 0x00
0x0c(CMD,对应命令号)
0x05
0x08 (读取I3 I4命令)
0x00
0x00
0xnn(最后一个字节对应前面所有的字节的和的低8位,校验用)
回:
若IN3有效,IN4无效回:0xff 0xaa 0x00 0x0c 0x08 0x0F
若IN4有效,IN3无效回:0xff 0xaa 0x00 0x0c 0x08 0xF0
若IN3有效,IN4有效回:0xff 0xaa 0x00 0x0c 0x08 0xFF
若IN3无效,IN4无效回:0xff 0xaa 0x00 0x0c 0x08 0x00
(18)【当控制器接到陌生指令或校验码不正确时, 控制器返回:0x110x22 0x33 0x44 0x55 0x66 】
-----------------------------------------------------------------------------
视频操作演示
视频地址:
http://v.youku.com/v_show/id_XNzM2NDc3Mjcy.html (复制到浏览器中)
------------------------------------------------------------------------------
电机控制.rar
(25.12 KB, 下载次数: 307)