提高PLC程序运行有什么方法

在西门子plc中,子程序是为某些特定的控制目的而编制的相对独立的程序。执行子程序call指令等。如果条件不满足子程序调用,程序的扫描将只在主程序中进行,而不是扫描这个子程序,从而减少不必要的扫描时间。
如何提高plc程序的运行速度,可以采用以下编程方法,仅供参考:
1.根据项目实际需要,制定功能块规划,编写子程序。
在plc中,子程序是为了某些特定的控制目的而编译的相对独立的程序。执行子程序call指令等。如果条件不满足子程序调用,程序的扫描将只在主程序中进行,而不是扫描这个子程序,从而减少不必要的扫描时间。初学者可以结合plc视频教程来学习
2.通过向do点发送字或双字数据来控制输出。
在plc的应用中,通常会有大量的输出控制。使用字或双字数据来控制输出可以提高速度。只要根据实际应用需求合理分配输出地址,改变输出控制字,就可以大大减少西门子plc程序执行的步骤数,从而加快plc的程序运行速度。
3:脉冲触发置位和复位
在plc中,set指令只能执行一次,不需要每次扫描都执行该指令。它非常适合与脉冲输出(pls/plf)指令一起使用。一些工程师忽略了这个问题,采用常规方法驱动set指令,无意中增加了plc程序的扫描时间。
4.避免如下类型转换:
以s7-200为例,它的内存格式和我们常用的pc正好相反,高字优先,低字次之。所以我们可以把单词variable放在最后两个字节,并在程序初始化时清除前两个字节(这两个字节不能在程序的其他地方使用)。
例如,当我们定义符号时,我们将单词变量定义为vw2,同时将vw0的值保持为零。变量在程序中可以用字体vw2和双字体vd0访问,避免了类型转换。
为了避免使用中的混淆,最好用明确的符号定义来区分字型和双字型。在这里,强烈建议使用匈牙利命名法:有意义的英语单词的小组合作变量名,前缀表示变量类型,首字母大写。我习惯使用下列词缀:
b字节变量(字节)
w字体变量(单词)
双变量
r -实数变量(实数)
f位变量(标志)
btn -自复位按钮输入(按钮)
开关或自锁按钮输入(开关)
sig -传感器、编码和其他电平信号输入(信号)
rly -输出继电器位(继电器)
……
当然,根据个人习惯,没有规定,主要是有利于自己区分。
如果有一个名为varname的字类型变量,为了使用前面的转换技巧,我们可以定义如下:
wvarname - vw2
dvarname - vd0
程序初始化时,复位vw0(如果是不需要记忆的变量,也可以直接复位dvarname)或将数据块中的vw0置零。未来我们需要访问word类型的变量时会用到wvarname,需要访问双word类型的变量时会用到dvvarname。根本不需要类型转换。
这种方法可以大大减少程序语句的数量,使程序更加简洁可读,在不需要耗时的类型转换的情况下,提高程序的运行效率。而数学运算量越大,效率的提升越明显。
缺点是多占用两个字节的内存,vw0在以后的程序中无法使用。但是s7-200的ram空间很大,一般取之不尽用之不竭。以226为例,10k ram那么多,我从来不超过1k。所有这些内存都是用钱买的,所以很浪费。
同样,如果有字节变量经常需要用字类型变量转换,让字节变量占用一个字的内存宽度,浪费一个字节,从而避免类型转换。


电瓶修复技术:电池串联均衡是否会影响寿命
轨道飞行器首次通过近日点,距离太阳7700万公里
如何区分有源晶振与无源晶振
无人机Kestrel系统优化自主物体探测系统
关于非洲猪瘟实验室检测设备清单操作详细介绍
提高PLC程序运行有什么方法
区块链和人工智能将如何影响着第四次工业革命
电装凭借着工艺 走在了汽车生产制造业的前端
GX800VHK评测 各方面都比上一代有了长足的进步
食品重金属快速检测仪技术参数和用途
行走在崩溃边缘,程序猿“自救”指南!
遇见未来走进AI新世界,智能生活近在咫尺
不完全统计,多位华人学者入选IEEE Fellow 2019
国产手机集体出海 走向全球化的试验地
英飞凌发布全新电流传感器 可实现高度精确、稳定的电流测量
风力发电机的结构及类型
LTC4353 双通道、低电压理想二极管控制器
工业机器人产业企业纷纷进入内部转型期
选用合格的电线电缆对于生产生活安全来说是必要的
上新!QR码扫描单元与迷你称重单元