通过一个SCL编程示例(圆盘工件捷径传送)来聊聊编程的思路
今天跟大家通过一个编程示例来聊聊编程的思路,当然编程的思路或者说方法不是唯一的。
首先,功能要求:
如下图所示:一个圆盘工作台,周围俊宇分布这个8个工位(0#~7#),每个工位安装有一个接近开关,用于检测位置信号,每个工位还有一个按钮,用于工位请求。在转盘上有个工件箱,工件箱下有个磁钢,当磁钢旋转到接近开关上方,接近开关动作
下面聊聊当拿到这个项目的思路,当看到这个功能要求,可以容易想到就是通过按钮控制电机正反转,但是不是这么简单,因为功能要求中是沿最近路径,所以,就要判断工件箱当前位置与请求按钮之间差几个工位。
也就是说要用记录工件箱当前位置和按钮请求的位置,两者做减法,来判断正转还是反转时最短路径。
通过上面的分析,我们做下面比较:分两种情况,结果为负和正。
为负的情况:
若减法的结果为-1,就意味着按钮的位置超前工件箱当前位置一个工位,所以电机反转一个工位。
若减法的结果为-2,就意味着按钮的位置超前工件箱当前位置2个工位,所以电机反转2个工位。
若减法的结果为-3,就意味着按钮的位置超前工件箱当前位置3个工位,所以电机反转3个工位。
若减法的结果为-4,就意味着按钮的位置超前工件箱当前位置4个工位,所以电机反转4个工位。
若减法的结果为0,电机停止。
若减法的结果为-5,就意味着按钮的位置超前工件箱当前位置5个工位,所以电机正转3个工位。
若减法的结果为-6,就意味着按钮的位置超前工件箱当前位置6个工位,所以电机正转2个工位。
若减法的结果为-7,就意味着按钮的位置超前工件箱当前位置7个工位,所以电机正转1个工位。
为正的情况:
若减法的结果为1,就意味着按钮的位置滞后工件箱当前位置一个工位,所以电机正转一个工位。
若减法的结果为2,就意味着按钮的位置滞后工件箱当前位置2个工位,所以电机正转2个工位。
若减法的结果为3,就意味着按钮的位置滞后工件箱当前位置3个工位,所以电机正转3个工位。
若减法的结果为4,就意味着按钮的位置滞后工件箱当前位置4个工位,所以电机正转4个工位。
若减法的结果为5,就意味着按钮的位置滞后工件箱当前位置5个工位,所以电机反转3个工位。
若减法的结果为6,就意味着按钮的位置滞后工件箱当前位置6个工位,所以电机反转2个工位。
若减法的结果为7,就意味着按钮的位置滞后工件箱当前位置7个工位,所以电机反转1个工位。
这样整个过程就分析清了,下面用什么指令来完成功能要求了。
通过上面的分析,我们要求工件箱当前位置和按钮位置要进行记录,并形成位号,编码指令就可以实现,所以,我们就用编码指令来实现。(有朋友不知道编码指令怎么用?或者说很多指令不知道怎么用,其实可以直接看软件的帮助文档。)
大家自己看下编码指令,这里就不赘述了。
下面就是按照上面的思路的编程结果:
接口变量:
程序如下:
源代码如下:
#按钮编码 := ENCO(#按钮);
#位置编码 := ENCO(#位置);
IF #按钮<>0 AND (#位置编码 - #按钮编码) < 0 THEN
IF (#位置编码 - #按钮编码) <= -5 AND NOT #反转 THEN
#正转 := 1;
ELSIF (#位置编码 - #按钮编码) >= -4 AND NOT #正转 THEN
#反转 := 1;
ELSIF (#位置编码 - #按钮编码) = 0 THEN
#反转 := 0;
#正转 := 0;
END_IF;
ELSIF #按钮<>0 AND (#位置编码 - #按钮编码) > 0 THEN
IF (#位置编码 - #按钮编码) >= 3 AND NOT #正转 THEN
#反转 := 1;
ELSIF (#位置编码 - #按钮编码) <=4 AND NOT #反转 THEN
#正转 := 1;
ELSIF (#位置编码 - #按钮编码) = 0 THEN
#反转 := 0;
#正转 := 0;
END_IF;
ELSE
#反转 := 0;
#正转 := 0;
END_IF;
西门子博途SCL编程示例之定时90度转盘
功能说明:一个转盘如下图所示,有电机拖动,每转90度,转盘停止10s,并不断重复上述过程,除非按下停止按钮。
编程介绍:
根据上面的功能描述可以容易想到用三个in变量,一个out变量,及定时器变量,当按下启动按钮,转盘旋转,当转90度,也就是开关SQ动作,转盘停止10s后再次旋转,如此反复。
那么,我们就编写一个FB来实现上述功能,接口变量如下:
然后编写SCL程序,根据功能分析,可以使用条件IF语句很容易实现,具体程序如下:
在循环组织块OB1中调用FB,并进行仿真如下图所示:
当按下启动按钮,转盘旋转
当转盘旋转到90度,转盘停止
当10s后,转盘再次旋转,
相关问答
多工位转盘plc编程思路?
在多工位转盘的PLC编程中,可以采用以下思路:1.确定转盘的运行方式:根据转盘的工作流程和规则,确定转盘的转动方式,例如顺时针或逆时针旋转、单步转动还是连...
怎么样用三菱pLC?来实现一个转盘在转到同一角度时精准停止(...
[最佳回答]我么以6000为例,若减速比为5:1(也可以没有减速机,但力度会减小很多),则每转30度所需PLC发出脉冲6000*5/12=2500脉冲,也就是PLC每发出2500脉冲,伺服...
用三菱PLC如何实现不良品排除功能?
要实现不良品排除功能,需要通过编程将PLC与其他设备(如传感器、电机、气动元件等)进行连接,以实现整个生产过程的自动化控制。具体步骤如下:连接传感器:...
餐桌转盘无级遥控调速器交流
1、将餐桌的尺寸(直径)测量准确,在确定餐桌的中心点,再将电动转盘的尺寸测量准确,使电动转盘与餐桌二者同心,就是电动转盘要摆放在餐桌的中心位置。2、将餐桌摆...
罗杆分装机全套电气原理图纸
1.车床加工论文2.《如何控制切削量有关方面的论文》3.数控机床的论文4.数控编程的论文5.数控机床的检测与维修的毕业论文6.稀沥青喷刷机设计开...
养猪场废水处理具体工艺流程是什么?如何才能达到排放标准?
你好很高兴回答你的问题养猪场污水处理方案一.概述养猪场污水主要包括猪尿、部分猪粪和猪舍冲洗水,属高浓度有机污水,而且悬浮物和氨氮含量大。这种...接触池...
凸轮分割器为什么要装两个感应片?
[回答]凸轮分割器加了2个感应片,是要控制其他的配套工位完成动作.一个感应停止角的起点,感应到信号后,其它机构就可以动作了,能提高生产效率;另一个是感...
各位大佬谁清楚,缠绕机的正确操作是什么急需赐教
[回答]自动缠绕机的注意事项:1、货物须稳固放在托盘后确定没什么问题时,方可启动机器。2、缠绕机转盘应该按顺时针运转。3、禁止缠绕机在运行过程中扯开机...
缠绕机按用途分类可分为什么?
[回答]加压型缠绕机机械主动胶辊、膜架连接件(方形杆)损坏。运输中损坏,则更换新的,人为撞毁,则更换新的。机械膜架送膜速度不能调整,机械直流调速盒损坏,...
数控钢筋弯曲机该怎么操作?
[回答]二、按加工钢筋的直径和弯曲机的要求装好芯轴,成型轴,挡铁轴或可变挡架,芯轴直径应为钢筋直径的2.5倍。三、检查芯轴,挡块、转盘应无损坏和裂纹,防...