引用:在您的工控人生中,随着产品的不断升级换代,总会遇到一些新“玩意儿”。
相遇的过程一定有甜蜜,也有苦涩;相处的结果一定有圆满,也有遗憾。。。。。。
当供应商前两年说S7-200要开始停产了,用新款的Smart200来替代老款的S7-200,而且很快老款的S7-200会提价。公司一听说要提价了,就开始急起来了,成本是第一因素得换新款的Smart200PLC。Smart200PLC出来好久了,以前供应商一直向我们推荐这款PLC,我们没有用的原因就是新老款的程序有点不兼容,我公司的机型比较多程序也多改程序麻烦,一直都没有用这款PLC,一直抱着不会这么快停产的心态来观望,现在是被逼上梁山了,没有得选了才去用,在使用移植以前的老程序时就遇到了一些问题,我就这些问题跟大家分享一下。
第一次将老200程序中的伺服库移植经历。
S7-200 向S7-200 SMART伺服程式移植问题:http://www.ad.siemens.com.cn/club/bbs/post.aspx?a_id=1449440&b_id=64&s_id=83&num=1#anch
S7-200 移植到 S7-200 Smart:http://www.ad.siemens.com.cn/productportal/prods/s7-200-smart-portal/200smarttop/smartsms/044.html
在开始使用新款Smart200PLC时遇到种种不顺利的事情,以前老200用习惯了在编程时老是犯错误。在使用高速计数器时忘记在系统块里面改滤波时间,在使用模拟量时开始地址老是从AIW0或时AQW0开始,那段时间程序老是有问题,在工作上我混乱等等。后来习惯后就觉得新款Smart200还是有很多优势时老款无法媲美的。
还有一次在使用正玄函数时没有注意看清楚编程手册导致数据有问题。如下图,在指令框中直接将指令拖到程序里面,在程序里面直接在图中的1好位置输入角度,在监控程序中图中的2输出结果为负数,我看都吓一跳,赶快去检查程序,查了半天没有找出原因,后思考一会儿决定去看一下这条指令的说明书,看了说明书才恍然大悟,是自己将指令用错了,在使用这条指令时要将角度从度转换为弧度: 使用 MUL_R (*R)
指令将以度为单位的角度乘以 1.745329E-2(约为 π/180)。看完这说明书我马上将程序改了一下,先将角度乘以1.745329E后在在指令中将乘以的结果输入到这条正玄函数的输入IN中,以监控程序结果就对了。