通过一个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;

(0)

相关推荐

  • 【干货】西门子S7-1200博途用LAD和SCL语言控制步进电机程序分析

    关于启程 启程自动化培训成立于2012年,培训项目主打西门子PLC编程系统集成.工业机器人编程.EPLAN电气设计.视觉等培训与技术服务的机构.推荐高薪就业,越努力越幸运 西门子S7-1200PLC控 ...

  • 钣金无铆铆接工艺的研究与应用

    点焊是传统钣金加工制造中一种重要的工艺,但是其作业劳动强度高.作业环境恶劣,而且焊接后的产品一致性差,在新时代智能制造的背景下显得有些格格不入.随着环保政策的不断严苛,其对传统制造业的要求也呈阶梯式的 ...

  • 蚂蚁小说 位置

    我们部门的主管老丘因肝癌死了.     参加完追悼会的第二天,老板召集我们部门的人开会,说业务不能耽误,特地又新招聘一名员工凑足部门人数."新人来了,工位可能要重新安排."老板环视 ...

  • Excel编程周末速成班第21课:一个用户窗体示例

    excelperfect 引言:这是在知识星球App的完美Excel社群中发表的Excel VBA编程系列文章中的一篇,使用一个示例来讲解用户窗体的基础应用. 主要内容: 规划示例工程 创建工作簿 设 ...

  • 第一个SCL程序

    希望你看完这篇教程后,能写下自己的第一个SCL程序,鲁迅曾经说过,好的开始是成功的一半. 使用SCL语言编程方法简介 SCL语言基本语法规则:表达式 写完前面两篇文章,当我在准备写第三篇时,突然发现这 ...

  • Blazor一个简单的示例让我们来起飞

    Blazor Blazor他是一个开源的Web框架,不,这不是重点,重点是它可以使c#开发在浏览器上运行Web应用程序.它其实也简化了SPA的开发过程. Blazor = Browser + Razo ...

  • 邹军:想成为编程工程师,玩透数控宏程序编程,这里有一个大招分享给你

    想成为一名专业知识过硬的编程工程师,掌握数控高级编程宏程序是一基本功.   不懂宏程序也只能默默的看着别人装逼了!如果你有钱可以买五轴数控机床,没有人有意见的. 光看看这些,用宏程序加工的作品就知道, ...

  • 142 VB编程示例

    142  VB编程示例      ●背景     利用两点已知数据拟合线性方程.     已知数据为(x1 , y1).(x2, y2),方程形式为y=ax+b,求解输出为线性方程系数a和b.     ...

  • 餐饮店生意不好做?一个模式让你领先同行-捷径系统

    做生意做久了,通常会遇到一个瓶颈,钱越越赚越少,成本越来越高.这种情况下,资深营销专家分析,并不是生意不好做了,是模式变了.先入局的人跟不上改变了. 比如餐饮行业刚开始做专门的外卖生意,开面积十几平的 ...

  • 防排烟风机的一个错误安装示例

    来源:机电人脉 如有侵权,请联系删除 <建筑防烟排烟系统技术标准>GB51251 以下图示排烟风机安装是错误的. 1. 为什么不应设置减振装置? GB51251的条文说明 1)防排烟风机是 ...

  • 中国科大成功研制62比特可编程超导量子计算处理器,实现可编程的二维量子行走

    合肥讯   中国科大中科院量子信息与量子科技创新研究院(以下简称量子创新研究院)潘建伟.朱晓波.彭承志等组成的研究团队,成功研制了62比特可编程超导量子计算原型机"祖冲之号",并在 ...

  • 少儿编程招生靠什么?你的少儿编程培训班招生有多少吸引家长的理由?

    少儿编程招生是开少儿编程培训机构,首先都要解决少儿编程招生的问题. 无论是新开的机构还是已经开了有些时间的机构,始终都会为招生的问题烦恼,因为市场的外部环境时刻在变,时刻面临市场竞争,有时候还会遇上一 ...