PLC论坛-全力打造可编程控制器专业技术论坛

 找回密码
 注册哦

QQ登录

只需一步,快速开始

微信扫码登录

查看: 29073|回复: 0

[汇川] 汇川技术|PLC应用逻辑编程技巧(7)小型PLC编程经验

[复制链接]
发表于 2024-5-28 13:53:54 | 显示全部楼层 |阅读模式
因公众号更改推送规则,请点“在看”并加“星标”
第一时间获取精彩技术分享


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

前面学习记录按状态转移编程法、按功能分块编程法、按设备结构功能分块法、按工位分块法等编程思路,

接下来继续学习小型PLC编程经验的总结,

以下为学习笔记。

01 梯形图经验

小型PLC基本上都是用梯形图进行编程,以下经验是否正确:

①:LD梯形图语言编程,常用的指令在30个以内,可轻松上手,初学者不建议首选SFC编程语言;

②:编程时要多用子程序,这样可以便于编写结构化的程序,提高程序的可读性,提高执行效率,也更易于调试;

③:要尽可能多用状态划分的编程风格,尽量采用典型的状态排序;

④:编程时要先定义程序框架,把状态分块,界定每个程序块的功能、算法、接口变量,并用程序注释的方式进行记录;

02 开发经验

有人说PLC编程相比程序员的高级语言编程并不需要深度的学习。(你认可吗?)

小型PLC编程要灵活使用Autoshop编程工具,可以减轻记忆负担(有更好的经验,欢迎分享)

03 如何让程序更易于阅读和理解

在C#编程时,合理的注释能够让人更清晰的读懂理解程序;

那么PLC编程,哪些习惯能够便于他人和自己更容易的阅读理解程序呢?

①:工序图

在规划设备状态、设计好程序框架后,可以先拟定设备主要工艺的子程序,并以工序图的形式注释每个子程序的功能;

像入口变量属性、主要算法、输出变量等做好记录;

②:Excel表格

用好Excel表格,规划记录设备系统的程序变量;可以按变量属性进行区域的划分,特别注意与上位机交互的变量,各种操作命令、设定参数等分为不同的区域,不仅可以提高上位机读取效率,还能够防止上位机误该参数,导致难以查明的运行故障;

把设备运行状态参数放在低地址段,把需要保存的记录参数放高地址段;

把多个工位子程序使用的变量尽可能规划各自独立的区域,并且区域间预留适当的间隔;

③:给常用变量别名

对于重要的已经定义的常用变量,批量标注有意义的别名,可以避免编程过程中反复核对变量定义,可以有效提高效率;

04 编写注释的好处

①:开发时可以先一次性写出主要子程序的功能注释,这样比直接写程序思路更清晰连贯,考虑也更周全;

②:写注释的过程可以核对逻辑处理是否严谨;若发现问题可以及时完善注释,再开始写程序,可以避免写程序过程中发现问题,再修改程序,会更加费时费力;

③:注释梳理完成后,再按照注释编程,思路清晰,逻辑明确,可以更快的编程;

④:可以方便多人协作同时编程调试;

⑤:注释清晰有助于个人快速读程序,能够更快的进入编程状态,避免没有注释,自己之前写的程序自己还得捋半天才理清思路;

⑥:方便调试排查问题,便于后期维护;

05 调试技巧

当写完一个状态的子程序以后,就可以在PLC上验证该子程序的逻辑处理是否正确:

可以强制该子程序的触发条件,让PLC反复执行该子程序,给该子程序入口变量设置不同的数值,观察输出口变量的结果值,这样就能够判断该子程序的逻辑是否正确,以便及时修正;

06 编程细节

编写一个能用的程序很简单,但是实际项目中只是简单的能用还不够,还得要求程序安全、稳定、健壮;

这时候就需要完善程序的保护机制,让保护更全面,使其操作起来更流畅;

①:状态指针式程序控制的关键变量,要避免赋值不存在的状态值,导致死机;

②:变量定义时,允许上位机访问的区域要独立划分,上位机可读写的变量,要检查其合法性后使用;

③:采用bit类型的变量编程,容易出现意外的组合,应当尽可能采用D寄存器变量,会更加的安全;

④:要考虑乘除运算需要的最大单元占用,避免溢出;避免出现除0的操作;

⑤:编程时先实现设备工艺控制功能,再进行设备异常状况、设备保护功能的添加;

一套成熟稳定的PLC控制程序,其中超过40%的代码都是用于设备安全保护功能的。

毕竟很多厂的口号也都是安全第一,生产第二;

07 整体思路

①:要有自顶向下的编程思想,即先整体再局部,化繁为简,拆大为小,然后逐步编程,让编程简化;

②:PLC编程更加注重实操上手,单纯的看书看视频100遍,不如上手操作一遍,要多动手;

08 后记

以上是关于小型PLC的编程经验,有不妥之处或有更加牛掰的思路,欢迎在留言区留言评论。

更多的技术问题欢迎在交流群相互交流。


觉得有启发点个关注呗↓↓↓

-更多内容可点击下方标签阅读-

☞限时免费加入交流群

☞汇川技术|☞MCGS昆仑通态|数据库

☞差旅游记|☞JavaScript|☞C#相关

☞数字孪生|山海鲸可视化|☞C#2024

☞KingSCADA|KingIOServer
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册哦

本版积分规则

QQ|小黑屋|手机版|Archiver|PLC技术网-PLC论坛 ( 粤ICP备17165530号 )|网站地图

GMT+8, 2024-9-8 07:26 , Processed in 0.047911 second(s), 26 queries .

快速回复 返回顶部 返回列表