线下实训
HOME
线下实训
正文内容
plc编程状态转移 汇川技术PLC应用逻辑编程技巧(3)状态转移法,功能分块法编程
发布时间 : 2024-11-24
作者 : 小编
访问数量 : 23
扫码分享至微信

汇川技术PLC应用逻辑编程技巧(3)状态转移法、功能分块法编程

哈喽,你好啊,我是雷工!

最近在看汇川PLC应用编程技巧逻辑篇,前面已经记录了两篇笔记。

PLC应用逻辑编程技巧(1)

PLC应用逻辑编程技巧(2)

接下来接着学习相关内容,以下为学习笔记:

01 状态转移法编程

啥是状态转移法?像前边记录的《InoProShop流水灯控制练习》中那样按设备的运行过程分解为若干个状态,

一个状态一段程序,用状态之间的流转,执行不同的程序段;

例如:

CASE 状态变量 OF

0:状态1的程序片段

1:状态2的程序片段

……

END_CASE

实现的就是状态转移法编程。

02 状态转移法编程的好处

①:可以一个状态一个状态的编写,需要实现的功能明确且清晰;

②:调试时便于验证,将状态变量强制为需要的状态值,就可以反复验证其功能,直到调试正常;

③:便于增加新的状态程序,不影响已经调试好的程序,不用返工(像是一锅煮,所有程序都放在一起的,稍微一改动,就可能影响已经调好的程序);

④:整机连腿时,便于定位出现异常的程序段;

⑤:便于触摸屏显示设备的运行状态,出现异常,可快速定位异常位置;

⑥:控制器同一时间只执行一个状态对应的程序,不会扫描所有的程序语句,执行效率更高;

⑦:与③类似,新增功能时,不仅不影响之前调好的程序,而且更便于添加;

⑧:程序清晰,便于理解和维护程序;

总结来说此种编写方式,有利于程序的编写、调试、能够提高开发效率,可以增强程序的可读性。

03 功能分块法编程

首先通过我们生活中常见的电梯,使用垂直电梯控制问题引出该方法。

3.1、电梯控制增强功能

现如今随着电梯的普及与发展,除了基本的功能,有了很多新的控制需求,例如要求实现如下功能:

①:为了复用性,要求一套控制程序,只修改所安装大楼的楼层层数,就能适应对应的楼层控制;

②:要求可以在线禁用某些楼层,使电梯不在禁用楼层停留;

③:要求实现多种模式切换满足不同应用场景,例如自动/手动/检修/消防等模式;

④:群控功能,像居民楼的两梯,或商业写字楼的六梯,为了避免多个电梯响应同一个指令,要求实现自动协调响应;

⑤:权限管理:现如今为了安全增加了门禁卡,要求刷卡才能使用电梯到达指定的楼层,可以自由吓到一层等权限控制;

⑥:人性化功能:多梯群控时,如果楼层召唤等待时间超过某个时常,空闲电梯主动响应;空闲一定时间后,自动运行到1层等待;当误操作时,允许通过双击或长按取消目标楼层;

当使用没举行的电梯控制程序,想要增加上述的这些增强功能时就比较困难,此时就需要更加合理的程序框架。

采用功能分块的编程框架就能够很好的简化上述问题。

04 后记

以上为PLC编程技巧中关于状态转移法的好处介绍,以及通过电梯控制问题引出功能分块编程法,

有记录不准确的地方欢迎各位读者大佬在留言区留言指正,更多话题也欢迎在交流群多多交流。

后续接着记录如何分功能块来简化程序,解决电梯增强控制功能。

S7-1200 PLC的转换操作指令,你能说出几个?

前面给大家介绍了移动操作指令,接下来就接着介绍一下转换操作指令吧,S7-1200 PLC的转换操作指令也包括有数据类型的转换指令、实数转整数指令、以及用于缩放和标准化指令。

在我们S7-1200 PLC中,转换指令就是CONVERT,我们可以在指令中更改数据类型,相当于所有的转换指令都集合在这个CONVERT指令中,而对于S7-200/200 SMART PLC的转换指令是比较多的,我们需要哪个类型的转换指令就调用哪个指令,不能更改指令的类型,大家在学习的时候可以对比着学习,下面我们就介绍一下S7-1200 PLC常用的移动指令吧。

1、转换指令CONVERT

转换指令是将一种数据类型转换成另一种数据类型的,使用的时候单击指令“???”的位置,然后在下拉列表中选择输入数据类型和输出数据类型。

CONVERT指令支持的数据类型包括有整数、双整数、实数、无符号短整型、无符号整型、无符号双整型、短整型、长实数、字、双字、字节、BCD32等,比如INT TO DINT就是表示把整数转换成双整数。

IN管脚是输入要转换的数据,OUT管脚是转换后的数据,在管脚输入数据类型的时候注意要跟设置的数据类型一致哦。

2、浮点数转整数指令

S7-1200 PLC的浮点数转换指令包括有四舍五入取整指令ROUND、向上取整指令CEIL、向下取整指令FLOOR和截取尾数部分取整指令TRUNC这四个,而S7-200/200 SMART PLC的浮点数转换指令只有ROUND和TRUNC,那么S7-1200 PLC的CEIL和FLOOR指令大家可以着重了解一下,对比着学习效率更高哦。

这里还要提一下的是,前面所说的CONVERT转换指令也是可以实现浮点数转整数的功能的哦,具体想使用哪个指令就看你怎么选择了。

上图的程序中ROUND是对13.7四舍五入输出14,TRUNC是将12.5的尾数部分截取掉,取12进行输出,FLOOR是15.8向下取整变成15,CEIL是将12.4向上取整变成13。

3、缩放SCALE_X和标准化NORM_X指令

缩放和标准化指令通常配合使用来实现模拟量输入和输出的转换,模拟量的转换是有个对应的公式的,这两个指令其实也是根据如下这个公式而来的。

缩放指令SCALE_X用于按照参数MIN和MAX所指定的数据类型和值范围对标准化实参VALUE进行标定,OUT=VALUE*(MAX-MIN)+MIN,其中0.0<=VALUE<=1.0。

标准化指令NARM_X用于通过参数MIN和MAX指定的范围内的参数VALUE,把其标定在0%~100%范围内。OUT=(VALUE-MIN)/(MAX-MIN),其中0.0<=OUT<=1.0。

以上这两个指令主要是在模拟量控制中会有应用,如果是入门的学习可以先简单了解就可以,等之后学习到模拟量控制部分再来详细学习。

以上这些就是转换操作指令的介绍,转换指令在我们做一些运算处理的时候是会应用到的,除了缩放和标准化指令可以简单了解,其他的转换指令都是需要掌握的哦,大家记住了吗?

( 技成培训网原创,作者:蔡慧荥,未经授权不得转载,违者必究 )

更多了解,点↓

相关问答

什么是plc转移条件?

PLC转移条件是在可编程逻辑控制器(PLC)编程中用来确定何时执行特定操作的条件。它们可以是逻辑条件、比较条件或计时条件,通常与PLC的程序周期性扫描相结合。...

plc程序转换了之后怎么修改?

1、如果是修改程序中的一个软元件,可以直接将光标定位到该元件,然后按键盘的DEL键。2、删除软元件后不动光标位置,然后直接在此时输入要修改的软元件,必须改...

PLC是怎么把电源变成信号的?

PLC的工作过程:(以S7300为例)1.操作系统启动循环时间监控2.CPU将输出过程印象区的数据写到输出模块3.CPU读输入模块的输入状态,并存入输入过程印象区4.CPU处理...

plc转换开关怎么用?

转换开关给plc的也是开关信号,接plc的输入,根据输入的状态,通过编程让不同的输入执行不同的程序内容,来实现转换的功能。而开关量输入信号在程序里也就是常开...

plc十六进制怎么转ascii码?

要将PLC的十六进制转换为ASCII码,可以使用编程语言实现。首先,将PLC的十六进制数值转换为十进制数值。然后,将该十进制数值转换为对应的ASCII字符。具体转换方...

plc在线修改程序怎么写入?

PLC(可编程逻辑控制器)的在线修改程序的方式取决于所使用的PLC品牌和型号。以下是一般的步骤:1.连接至PLC:使用PLC编程软件将您的计算机与PLC连接。通常,...

plc如何传送信号模块?

PLC(可编程逻辑控制器)传送信号模块是通过输入和输出模块来实现的。以下是一般步骤:输入模块:将外部传感器或开关的信号连接到PLC的输入模块上。输入模块接...

三菱plc中程序转换?

梯形图转sfc,为什么转不成sos21,,s22这样呢?梯形图转sfc,为什么转不成sos21,,s22这样呢?

plc输出电压转换?

简单点说,可以转化一下,用一个24v的接触器把plc输出接到接触器的电源上控制接触器,然后用一个5v的电源接到接触器的常开的一端,芯片接另一端就可以了。简单...

plc中int怎么转换为word?

plc中int转换为word方法:(1)工程---->打印机设置设置成PDF打印机。(2)工程---->打印---->选择“梯形图”选项卡(里面很多选项卡,要仔细找)...

 通伦  肉便器啥意思 
王经理: 180-0000-0000(微信同号)
10086@qq.com
北京海淀区西三旗街道国际大厦08A座
©2024  上海羊羽卓进出口贸易有限公司  版权所有.All Rights Reserved.  |  程序由Z-BlogPHP强力驱动
网站首页
电话咨询
微信号

QQ

在线咨询真诚为您提供专业解答服务

热线

188-0000-0000
专属服务热线

微信

二维码扫一扫微信交流
顶部