最近在折腾步科触摸屏和台达VFD-M变频器的通讯项目,实测走通了一套控制方案。先给大伙儿分享下关键配置和脚本实现,手头有设备的可以直接抄作业
步科触摸屏通讯台达vfd-m变频器示例 所需硬件步科t070或其它支持485功能触摸屏(电脑在线模拟需要USB转485转换头)台达VFD-m变频器。 功能实现正反转点动停止频率设定运行频率电流电压运行状态的读取。 有通讯说明硬件准备很简单步科T070触摸屏其他带485口的型号也行、台达VFD-M变频器、如果要用电脑模拟还得备个USB转485转换头。接线注意变频器的485端子是P和N-别接反了线序。通讯参数两边要对上号。变频器这边需要设置Pr.8801站号Pr.89039600bpsPr.90038N1步科触摸屏通讯台达vfd-m变频器示例 所需硬件步科t070或其它支持485功能触摸屏(电脑在线模拟需要USB转485转换头)台达VFD-m变频器。 功能实现正反转点动停止频率设定运行频率电流电压运行状态的读取。 有通讯说明Pr.12201通讯启动触摸屏这边在Kinco HMIware里新建MODBUS RTU主站设备参数跟变频器同步。这里有个坑要注意——台达的寄存器地址需要换算成4位十六进制比如手册里的2000H对应触摸屏要填81922000H转十进制是8192。来看正反转控制脚本-- 正转按钮脚本 WriteDevice(MODBUS, 0x06, 8192, 0x0002) -- 反转按钮脚本 WriteDevice(MODBUS, 0x06, 8192, 0x0006) -- 停止按钮脚本 WriteDevice(MODBUS, 0x06, 8192, 0x0001)这里用的是06功能码写单个寄存器。2000H地址对应的控制命令02代表正转06是反转01是停车。实测发现写入后需要约200ms响应时间不要连续快速操作。频率设定用浮点数处理local freq GetData(设定频率)*10 -- 转换为0.1Hz单位 WriteDevice(MODBUS, 0x06, 8193, freq)这里有个转换技巧变频器接收的是16位无符号整数比如50.0Hz要转成5000x01F4。触摸屏的数值输入元件记得设置量程0-400对应0.0-40.0Hz状态监控用03功能码批量读取local data ReadDevice(MODBUS, 0x03, 8448, 5) if data then SetData(输出频率, (data[1]8 | data[2])/10) -- 8448H SetData(输出电流, (data[3]8 | data[4])/10) -- 8449H SetData(母线电压, (data[5]8 | data[6])/10) -- 844AH end这里读取的是三个连续寄存器每个参数占两个字节。注意字节序是大端模式合并数据时高位在前。除以10是因为变频器数据单位为0.1。调试时建议先上串口助手抓包。正常通讯时变频器面板会显示REM和NET指示灯常亮。如果遇到超时重点检查站号是否冲突波特率奇偶校验设置寄存器地址换算是否正确终端电阻是否启用长距离通讯时需要最后分享个实用技巧在触摸屏上做个通讯状态指示灯通过读取0000H寄存器判断连接状态。当通讯异常时这个值会返回错误码而不是设备响应可以用来做故障诊断。
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2413826.html
如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!