《ABB modbus》.doc
文本预览下载声明
ABB变频器?通讯?MODBUS通讯1.????????ACS510变频器参数设置:9802=1????????MODBUS5302=1?站号????????5303=9.6kbit/s????????波特率????????5304=1?校验方式为8N2????????????????5305为0?????1001=10?由MODBUS控制变频器启停1102=0?由MODBUS控制变频器给定速度(0-20000对应0-50Hz)1103=8?2.控制变频器起停a.初始化,即向Modbus寄存器40001中写入1142(16进制数为476)并延时100毫秒;b.停止电机,即向Modbus寄存器40001中写入1143(16进制数为477);c.启动电机,即向AModbus寄存器40001中写入1151(16进制数为47F)?例:通讯初始化:发出【02?06?00?00?04?76?CRC校验码】,延时100毫秒;??????启动电机:发出【02?06?00?00?04?7F?CRC校验码】??????停止电机:发出【02?06?00?00?04?77?CRC校验码】3.用Modbus修改给定频率的方法主机向通讯给定1(Modbus寄存器40002)中写入设定的频率数值(范围=0~+20000(换算到0~1105给定1最大),或-20000~0(换算到1105给定1最大~0));例如:若1105=50.00Hz;发出【01?06?00?01?27?10?CRC校验码】表示修改频率为25.00Hz。4.用Modbus修改加速时间的方法向Modbus寄存器42202中写入设定的加速时间数值由参数的分辨率和范围决定;例:发出【01?06?08?99?02?58?CRC校验码】表示修改加速时间为60.0S。
附:功能01:读线圈状态:发送:01?01?00?20?00?03(站号?功能?开始?个数)响应:01?01?01?06(站号?功能?字节数?字节1?字节2?…)功能02:读离散功能输入状态:发送:01?02?00?20?00?03(站号?功能?开始?个数)响应:01?02?01?05(站号?功能?字节数?字节1?字节2?…)功能03:读多个保持寄存器发送:01?03?00?65?00?03(站号?功能?开始?个数)响应:01?03?06?02?EE?00?FA?00?00(站号?功能?字节数?字节1?字节2?…)功能04:读多个输入寄存器:发送:01?04?00?00?00?02(站号?功能?开始?个数)响应:01?04?04?00?01?01?F1(站号?功能?字节数?字节1?字节2?…)功能06:写单个保持寄存器:发送:01?06?08?99?02?58(站号?功能?寄存器号?数值)响应:01?06?08?99?02?58(站号?功能?寄存器号?数值)功能10:写多个保持寄存器:发送:01?10?08?99?00?02?02?01?f4(站号?功能?开始?个数?字节数?字节1?字节2?…)响应:01?10?08?99?00?02(站号?功能?开始?个数)以上调试程序对ABB?其它交流变频器都同样适用,?如ACS600,?ACS800,ACS143,ACS400,ACS510,ACS550同样适用.,不过对于ACS600,ACS800变频器需要增加MODBUS扩展模块.
3?RS-485信号?B?RS-485信号?B?或?TxD/RxD?+??8?RS-485信号?A??RS-485信号?A?或?TxD/RxD?-??1.?调用?Modbus?RTU?主站初始化和控制子程序
使用?SM0.0?调用?MBUS_CTRL?完成主站的初始化,并启动其功能控制:
图?2.?用?SM0.0?调用?Modbus?RTU?主站初始化与控制子程序
各参数意义如下:
a.?EN?使能:?必须保证每一扫描周期都被使能(使用?SM0.0)?b.?Mode?模式:?为?1?时,使能?Modbus?协议功能;为?0?时恢复为系统?PPI?协议?c.?Baud?波特率:?支持的通讯波特率为1200,2400,4800,9600,19200,38400,57600,115200。?d.?Parity?校验:?校验方式选择???0=无校验?1=奇较验?2=偶较验????e.?Timeout?超时:?主站等待从站响应的时间,以毫秒为单位,典型的设置值为?1000?毫秒(1?秒),允许设置的范围为?1?-?32767。????注意:?这个值必须设置足够大以保证从站有时间响应。?f.?Done?完成位:?初始化完成,此位会自动置1。可以用该位启动?MBUS_MSG?读写
显示全部