支持一下西家的论坛活动。
作为设备维护工程师,以前都是改改别人的程序,自己很少写整个设备的程序,最近自制设备做了一台伺服压机,程序部分用scl写的,写一写一些感触。
从事工控行业多年,从西家plc最初的S7200-300-400发展到现在的1200-1500,是实实在在西门子成长的见证者。过程中最痛苦的就是从step7到博途的切换,前几年版本换个不停,老新软件不兼容加上个人能力问题。经常一台电脑装两三个版本的博途,搞的焦头烂额,现在总算是苦尽甘来。
以前的小设备都是用梯形图写,大的程序就用功能块图或者graph加STL语言。PLC的存储器小中文的注释少,符号也是尽量简写很难理解,再加上STL语言的累加器accu1--accu4的倒来倒去,学起来非常痛苦。
现在的scl语言总算摆脱了累加器,现在PLC的存储区也要大上很多,侧重符号寻址,编程容易理解多了。
现在程序



SCL语言编程优势
1、图一,二红色部分对 伺服速度,位置和扭矩的设定,使用传统方法每一步都要赋值位置,压力,速度。使用数组和偏移量可以简化程序减小重复的工作。
2、图二蓝色圈部分的实际位置计算为了保留一定的精度长实数先乘了100取整后,再转成实数除以100后得到精度为0.01mm的实际位置,使用scl换算省去了很多步骤。
同样的,实际扭矩转换成易读取的推力以及设定的推力转换成伺服电机的设定扭矩也要经过一番计算,使用scl编程应该是最简单易读的方案。
3、图三部分是实时读取伺服压力和位置,利用OB的中断程序20ms每次读取常量“DataCount"次数的压力和位置数组,最终因精智屏的读取周期所限无法生成F(X)曲线,使用OPC服务器转给上位机,在上位机上生成了比较完美的过程曲线。
本来想做个前后对比的,可惜step7卸载很久了,后面有机会再贴图吧。