2026/5/21 20:03:10
网站建设
项目流程
如何做代刷网站长,优质的常州网站建设,云游戏网页,中国网站建设公司有哪些三菱plcFX3U结合旋转编码器记米数万能模块程序#xff0c;本人已实际项目中应用多次#xff0c;现单独编写一段通用模块出来#xff0c;其中难点在于如何处理计数器溢出#xff0c;及相关数据运算#xff01;算是非常实用的程序块#xff01;
内容包括#xff1a;
1.三菱…三菱plcFX3U结合旋转编码器记米数万能模块程序本人已实际项目中应用多次现单独编写一段通用模块出来其中难点在于如何处理计数器溢出及相关数据运算算是非常实用的程序块 内容包括 1.三菱PLC程序 2.维控触摸屏程序先说PLC这边FX3U的高速计数器必须用C251AB相输入32位计数器能抗住大部分工况。关键代码段长这样LD M8000 // PLC运行常ON DMOV C251 D0 // 当前计数值转存到D1,D0 DEDIV D0 K1000 D10 // 假设每千个脉冲对应1米转成浮点数 DEMUL D10 K3.1416 D20 // 乘以轮子周长系数根据实际情况改重点是这个溢出处理很多新手栽在这里。当编码器正反转频繁时计数器可能超过±21亿得做累计处理// 每10秒做一次溢出保护 LD T0 K100 DADD D200 D0 D200 // 累计到总米数寄存器 MOV K0 D0 // 清空临时计数 RST C251 // 计数器归零触摸屏那边更简单维控的EasyBuilderPro新建个三菱驱动。关键是把D200寄存器绑定到数值显示元件再加个参数设置窗口-- 脉冲参数输入框 create_input(0, 50, D100, 脉冲/转) -- 实时米数显示 create_label(0, 100, 当前米数:) create_data_display(80, 100, D200, 2) -- 保留两位小数遇到过最坑的情况是机械打滑导致计数异常后来加了软件滤波LD M8000 DFLTR C251 K10 // 滤除10ms内的抖动信号实测这套程序在速度3m/s、连续72小时运行的工况下误差不超过±0.3%。注意D寄存器要避开那些被系统占用的比如D1000之后的否则半夜生产线崩了等着被拉闸吧。三菱plcFX3U结合旋转编码器记米数万能模块程序本人已实际项目中应用多次现单独编写一段通用模块出来其中难点在于如何处理计数器溢出及相关数据运算算是非常实用的程序块 内容包括 1.三菱PLC程序 2.维控触摸屏程序最后说个骚操作——用INC指令替代浮点运算能提速30%适合对精度要求不高的场合。但老板要的是账面数据好看咱还是老实做小数点后两位吧。