汇川技术PLC应用逻辑编程技巧(4)功能分块法的编程思路
哈喽,你好啊,我是雷工!
最近在熟悉汇川PLC编程,前边记录了
PLC应用逻辑编程技巧(1)(2)(3)
今天借着电梯控制的案例,了解功能分块的编程框架,简化复杂问题,
以下为学习笔记。
03 功能分块法编程
3.2、功能分块框架
接着前面引出的问题,可以采用功能分块的编程框架,将电梯控制功能分为5个功能模块,简化程序:
功能块1:实现楼层召唤、梯内召唤的登记显示;
功能块2:实现选择目标停靠层;
功能块3:实现梯内开关门控制;
功能块4:实现电梯启、停、运行的控制;
功能块5:实现电梯运行安全保护;
按上述5个功能分块,每个功能块的功能明确,逻辑设计起来也相对容易,修改调试时也会比较方便。
3.2、程序流程图
如下流程图所示,PLC每次扫描用户程序,依次执行各个功能块;
其中电梯运行和电梯开关门是两个互斥的功能块,同时只能执行1个,可以避免运行中开门或未关门运行的情况;
04 案例设计分析
上述将电梯功能分为了5个功能块,具体每个功能块实现哪些逻辑,可参考如下思路:
4.1、FB1:电梯召唤功能块
【1】自动运行模式时
①:各个楼层的电梯召唤请求登记;
②:梯内目标楼层请求登记;
③:若设置了闲时等待楼层,当电梯无召唤信息时,延时响应至等待楼层,现在都会设置为1层;
④:若为多梯群控,登记时刷新其他电梯楼层的召唤请求;
⑤:梯内双击或长按取消楼层选择;
⑥:单双层停靠设置等;
【2】人工控制模式时,只登记梯内的召唤;
【3】消防模式时,清除约定的不响应的楼层设置;
【4】检修模式时,只响应梯顶检修人员的控制;
4.2、FB2:目标停靠分析功能块
【1】如果是消防模式时,停靠就近楼层并打开电梯门;
【2】如果电梯处于静止状态时
①:根据有效的登记请求楼层,确定电梯的运行方向;
②:根据电梯的运行方向,检查当前楼层最近的有效请求层,作为运行目标层停靠;
③:如果电梯运行方向没有召唤登记,电梯开门,让相反方向召唤的人员进电梯;(这个有体会,所在小区当电梯下到1层,1层等待时按的是上,即使地下没人召唤,电梯也会先关门,然后再打开,运行方向变为上,这点应该还可以优化)
【3】如果电梯为运行状态
①:根据电梯的运行方向和速度,由当前速度及最小减速楼层距离,判断能响应的最近有效请求层,作为运行的目标层;
③:电梯不可以急停,运行中可以忽略过于接近的楼层请求;
4.3、FB3:启停速度功能块
在实际开发中可能既有功能分块法也有状态转移转移法,极可能状态转移法中嵌套分块也可能功能分块中嵌套状态转移,根据实际情况灵活运用。
例如该功能块中就可以使用状态转移法:
电梯状态1:电梯低速起步开始加速,直到最大运行速度;
电梯状态2:电梯减速,
电梯状态3:电梯低速运行,停靠
各个状态内,再编写具体的逻辑;
4.4、FB5:保护功能块
在电梯井中,在最高层、最底层附近的导轨上,一般设置有防冲顶和防墩地的保护信号块,PLC程序需要根据这两个信号进行对应判断和保护;
05 后记
编程的核心思想是将复杂的系统拆分为简单的控制逻辑在进行编程;
像前面了解的常见按设备运行过程拆分为若干个工作状态,然后进行状态转移法编程;
按功能分块的功能分块法编程;
除此之外还有按设备结构功能分区块、按工位分区块、按人工处理的逻辑步骤分区块等方法;
如有记录不准确之处欢迎大佬在评论区留言指正,更多话题也可以在交流群内交流;
三菱PLC简单工程的分段编程,像结构化编程一样,一目了然
三菱的PLC编程分为简单工程和结构化工程,在结构化工程中可以分段处理程序,可以为每一段的程序命名,在编辑的时候能在不同的页面进行,如下图:
结构化编程
这样我们无论是编程、监控、维护等方面都很方便找到,而不用再一个页面里上下拉去看程序,尤其实在步数很长的程序里,如果你不在程序里做声明或者程序折叠,你发现很麻烦,找一段程序或者某些元件会很头疼。我们知道在简单工程中,所有的程序都在一个界面,如果能行上图中进行分段编程就好了,今天我们就来说说简单工程的分段编程。
在新建中工程类型选择为简单工程,编程语言是梯形图, 同时在简单工程的右下方的“使用标签”进行打钩。
这里说下标签的意思,标签和我们的注释有点类似,是一个软元件的详细定义,起到提示的作用,在编程中可直接用标签代替软元件,方便编程和后期的监控维护等,比如Y1的标签是”正转“,我们在编程时可以直接OUT 正转,和OUT Y1是一样的。
工程建立后,我们在导航中的程序部件→程序→MAIN,这个时候我们右键”程序“,新建数据,数据名可以修改,这个数据名就是分段程序的标题,如下图:
简单工程分段程序
我们可以为每个分段程序命名,注意不能向结构化编程使用汉字进行命名,只能用数字和字母来命名。这样我们就能在每个分段程序中编程程序了,方便我们分类和查找。我们可以像原来一样不使用标签进行编程,在编译时它会提示你没有使用标签,没关系。编辑完成后我们也可以把数据进行合并,就是把每个分段程序合到一个程序里面。
数据合并
这里还需要注意一下,如果我们不使用标签,在”工具“→”自动分配软元件设置“里面把范围修改小一点,防止和程序中的软元件冲突,意思就是说如果自动分配软元件D500已经被使用了,你在程序里面就不能再用了。
以上就是简单工程的分段编程,你了解了吗,如果有什么不清楚的可以留言或者私信。
相关问答
为什么软件工程特别强调必须先有设计,然后才能编程?
不只是软件工程强调先设计后编程,其实任何的工程都是设计在编程前面,因为没有设计就去编程那就是盲目行动,编程只是整个工程里的一部分,而设计就是整个工程的...
各位朋友,你们谁明白:谁帮我把纸滑托盘简单介绍一下谢谢?
[回答]石英振晶片超声波清洗机-产品结构威固特石英振晶片超声波清洗机控制系统成立控制箱掌控。并使用PLC掌控,然而两端还设置了清洗机急停按钮和...
铜雕狮子摆件摆放禁忌?在线等
[回答]3.大型铜狮子制作需采用树脂砂铸造→翻制玻璃钢模型→根据工艺要求采用整体或分块铸造→用树脂制作型壳→制完树脂型壳后浇铸铜水→待铜水冷却后打...
我买了个风扇调速器2孔A.L.想接到插座上不知道怎么接,有大神...
有专业的变频器/直流调速/PLC/伺服系统维修室维修设备。地址:成青羊区培风路80号16栋38号希望我的回答能够帮助到您。2有个装修别墅的活,但是不知道怎么去干...