第一次接触到1200PLC做高速计数器信号采集,刚接触1200的PLC对软件和设置都不熟,现在很多东西都已经模糊。因为有西门子200系列的经验,那时候以为1200是一样的。
根据1200的接线图接好欧姆龙的编码器。在硬件里设置高速计数器的设置。以为就此完事,打开程序写了一个简单的程序,可以监控高速计数值,当旋转编码器的轴时,发现数据并非自己设想那样稳定变化,而是与实际值要相差很大。
于是停下来检查接线,发现接线没有问题,于是以不同的速度来旋转编码器,发现速度低时编码器的计数丢步比速度快时要低的多。难道是编码器的问题,把编码器接到200的plc上,发现计数没有问题。。。。
又回到了原点重新把信号线接回1200的plc,难道设置不对,程序错误?什么都在脑子里闪过。。。。。。
回头想想不应该不能实现,于是重新看了1200高速计数器的资料(https://support.industry.siemens.com/cs/document/80957603/s7-1200-%E9%AB%98%E9%80%9F%E8%AE%A1%E6%95%B0%E5%8A%9F%E8%83%BD%E7%AE%80%E4%BB%8B?dti=0&lc=zh-CN),新建工程,跟着例子一步步的设置。。。。。测得的结果一样,丢步很严重。。。。
无意中重新编译程序,准备重新下载,发现事件信息有黄色的三角,对话框拉大,发现时警告,大致是说IO设置可能会影响最终结果,点击警告页面跳转到IO设置,其中看到IO的滤波值是6ms。设置成0.重新开始测试,实验成功。。。。。。
通过摸索1200的高速计数器,厂家的手册并非包含所有,有些特殊的关键点并没有涉及。有时候一个小的细节会导致实验结果千差万别;对于警告,以前并没有关注,因为并没有影响程序的执行。现在工作时都会看一下其中的警告信息,或许会对执行结果起到帮助。。。。。
文笔不行,希望大家能明白,求赞,谢谢!!