登录
首页 施耐德电气综合论坛
回帖 发帖
正文

主题:51单片机和施耐德ATV312变频器MODBUS RTU串口通信调试分享

点击:1356 回复:1

1、单片机使用的是宏晶STC12C5A60S2系列单片机
2、变频器使用的是施耐德ATC312系列变频器
3、通信物理层是RS485
4、通信协议是MODBUS RTU
5、从站个数为8个
6、变频器通信口如下:
附件 untitled1.jpg
7、单片机通信口如下:
附件 untitled2.jpg
8、变频器用到的寄存器:
附件 untitled3.jpg
9、实现功能:
//01、51单片机(主站)的DI_0001用来启动变频器;
//02、51单片机(主站)的DI_0002用来停止变频器;
//03、51单片机(主站)的DI_0003用来给变频器增加1Hz频率;
//04、51单片机(主站)的DI_0004用来给变频器减少1Hz频率;
//05、51单片机(主站)读取变频器的电压值并在数码管上显示;
//06、51单片机(主站)读取变频器的电流值并在数码管上显示;
//07、51单片机(主站)读取变频器的频率值并在数码管上显示;
//08、当读取的变频器频率值为11Hz时,51单片机的DO_0001动作;
//09、当读取的变频器频率值为22Hz时,51单片机的DO_0002动作;
//10、当读取的变频器频率值为33Hz时,51单片机的DO_0003动作;
//11、当读取的变频器频率值为44Hz时,51单片机的DO_0004动作;
10、注意事项:
整个通信流程必须按照施耐德变频器流程图走一次,如下:
附件 untitled4.jpg
11、变频器相关资料:
附件:施耐德变频器MODBUS RTU串口通信相关资料.rar
[本地下载]
16-04-08 22:31
启动过程需要先判断状态字低8位是否为16#40,如果是则给控制字写16#0006,然后再判断状态字低8位是否为16#21,如果是则给控制字写16#0007,然后再判断状态字的低8位是否为16#23,如果是则给控制字写16#100F,接下来再判断状态字低8位是否为16#23,如果是则要正转的话则给控制字写16#000F,如果要反转的话给控制字写16#080F,如果要停止的话给控制字写16#100F
16-04-08 22:35

工控新闻

更多新闻资讯