汇川技术PLC应用逻辑编程技巧(7)小型PLC编程经验
哈喽,你好啊,我是雷工!
前面学习记录按状态转移编程法、按功能分块编程法、按设备结构功能分块法、按工位分块法等编程思路,
接下来继续学习小型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的编程经验,有不妥之处或有更加牛掰的思路,欢迎在留言区留言评论。
更多的技术问题欢迎在交流群相互交流。
PLC的8大组成部分和具体应用,老电工0基础带你做好PLC入门笔记!
很多的电工师傅都在实际的工作中或多或少的接触过PLC,作为繁琐的继电器控制柜的取代者,PLC更加的自动化和智能化,因此收到了广大电力技术人员的喜欢,越来越多的人加入到PLC的学习和实践中,有的人已经很熟悉了,有的人才刚刚入门,今天我们就重点来看看PLC的八大组成和具体应用等方面的基础知识:
相关问答
有两年电气柜接线和安装的工作经验,如何学习入手“PLC”和“伺服”相关的工作?
如果以前没有理论基础,配带有PLC和带伺服器的电柜还是可以的,按图纸和说明书施工就可以了,如果想搞维护方面还是要加强理论学习的不知道理论知识咋样,如果可...
三菱plc编程软件行指令写不下怎么处理-ZOL问答
不用理会,继续写下去,软件会自动换行。看下面图片。有用(0)回复flea0102比较指令的格式:1.按下F8即应用指令2.然后写入><或=号或者大于小于加等于.....
我想学PLC编程,但我看不懂T形图,那些命令连在...-汇财吧专...
[回答]1.将一套图纸备齐:图纸包括:总平面图、室外管网立面图(或剖面图)、场地地形图(一般缺这三张图);建施、结施、水旋、通施、电施。要注意其中有几张图...
pic18f46k22用什么编程?
对于PIC18F46K22微控制器的编程,您可以使用Microchip公司的MPLABXIDE(IntegratedDevelopmentEnvironment)和MPLAB...
万能的网友们,请帮我出出主意,如何学习电气自动化?
Plc这个稍微有点难度,建议如果是一样的编程死记硬背多看老师傅的操作人家操作费的时候拿笔记下如果有问题了用的那个牌子的直接在网页搜索牌子的错误代码...
注化基础考试应该怎么复习-盖德问答-化工人互助问答社区
办?我也是在复习,那个我觉得可以在网上查找视频讲课,虽然和你买的书上的不太一样,有些听得不大懂,但起码可以有个方向。比...不知道该怎么办?我...
电气电子专业有哪些常用的专业软件?申请方
EE专业这么广。。。不同方向锁涉猎的内容不同,电脑上装的东西肯定是不同的。我就尽我所知挑几个常见的说一说吧。1.VC,作为C语言的基本工具,这个对...
两个台达的PLC通讯,触摸屏在连接时肯定要连在主PLC上吗-ZOL问答
触摸屏可以直接连到两个PLC然后再界面上通过地址区分不同的设备有用(0)回复l1263670013如果是在用的设备的话一般是两种情况1、通讯地址错误2、通讯总线...
互联网+带给你的改变,除了买买买还有啥?
互联网(英语:internet),又称网际网路或音译因特网、英特网,是网络与网络之间所串连成的庞大网络,这些网络以一组通用的协定相连,形成逻辑上的单一巨大国际...在...
proface触摸屏肿么和三菱的PLC穿越通讯?-ZOL问答
三菱Q系列连接Q00/Q01协议选MELSEC-QnA(LINK),需在PLC软件中设置波特率为19200,SumCheck:YES,RunWriteSetting:PERMIT,电缆连接方式...