预约试听:15323438773
  


技术分享

News

一个完整的可编程逻辑控制器(PLC)程序是什么样子的

日期: 2020-10-17
浏览次数: 65

一个完整的可编程逻辑控制器(PLC)程序是什么样子的


  完善的可编程控制器(PLC)程序的设计要求


  一个完整的PLC程序不仅要使系统运行简单,还需要注释完整、架构优秀、扩展性好、报警保护系统和仿真系统完整才能运行。


  1.简单


  使PLC程序尽可能简单。简单就是尽量使用标准化的程序框架和简单的指令。


  为了使程序简单,从大的方面来说,优化程序结构,用流控指令简化程序,从小的方面来说,用强大的指令代替单一的函数指令,注意指令的排列顺序。


  2.可读性


  设计的程序要求可读。这不仅方便程序员加深对程序的理解和调试,也方便别人阅读你的程序和用户维护。必要时,该程序也可以推广。


  为了使程序可读,设计的程序应该尽可能清晰。要注重层次性,实现模块化,才能用面向对象的方法进行设计。使用更标准的设计。


  特殊情况下,使用语言编程,多数情况下使用梯形图编程,便于阅读。


  那么I/O分布应该是有规律的,容易记忆和理解的。如果需要,应该做一些标注工作。内部设备的使用也要有规律,不能随便使用。


  编程之初要注意可读性。完全做到不容易。因为在程序调试过程中,指令的增减和内部设备的使用变化,可能会使原本比较清晰的程序有些混乱。所以在设计中,调试的增减是有一定余量的,然后调试完了就整理出来,这样设计出来的程序质量更高。


  程序的注释至少应该有以下几个方面:


  A.系统说明:整个程序的版权公司和本程序的目的


  B.版块注释:本版块的主要目的和作者


  C.段注释:该段代码的目的


  D.可变注释:不用说,重要性包括I/O注释和中间可变注释


  至于保密性,我觉得应该考虑程序的加密算法或者块的加密,而不是用减少评论的小聪明。


  3.正确性


PLC的程序必须是正确的,必须经过实际工作的验证,才能证明能正确工作。这是对PLC程序最基本的要求。如果这个做不到,再好,别的都没用。


  为了使程序正确,我们必须准确地使用指令和正确地使用内部设备。说明书的准确使用关系到对说明书的准确理解。因此,有必要明确说明的含义和使用条件。如果需要,可以编写一些小程序来测试一些不清楚的指令。


  对于同一个指令,由于PLC的出厂批次不同,或者PLC的系列型号不同,一些指令的细节可能会有所不同,所以你要仔细查阅编程手册。正确使用内部设备也很重要。如果有些PLC有掉电保护,有些PLC没有。务必使用断电保护装置,否则无法使用。


  总之,对PLC程序来说,最根本的要求就是要准确地使用指令,正确地使用内部设备,这样才能正确地执行所编程的程序。


  举个简单的例子,西门子的上升沿和下降沿都需要使用存储函数的变量作为中间变量,比如M点或者DB点。如果用FC的temp变量,会有问题。


  4.可靠性


  程序不仅要正确,还要可靠。可靠性反映了PLC程序的稳定性,这也是PLC程序的基本要求。


  有些PLC程序在正常工作条件下或合法操作下可以正常工作,但在非正常工作条件下(如临时断电、快速重新通电)或非法操作(如按下某些按钮出现故障或同时按下几个按钮)后就不能正常工作。这种程序不可靠,或不稳定,或程序不好。


  一个好的PLC程序可以识别异常工况,并将其与正常工况联系起来,使程序适应各种情况。好的PLC程序可以拒绝非法操作,不留“痕迹”。仅接受合法操作。


  联锁是拒绝非法操作的常用手段,常用于继电器回路,可由PLC继承。


  5.易于修改


  使程序易于修改,即便于修改。


PLC的特点之一就是方便,可以灵活应用于各种场合。解决办法是修改或重新设计程序。


  重新设计程序用于改变可编程控制器过程的使用要求。不仅程序被重新编辑,I/O也被重新分配。大多数情况下,不需要重写程序,做一些修改就够了。这要求程序易于修改。


  易变意味着灵活,只需要很少的改动就可以达到改变参数或者修改动作的目的。


  6.可量测性


  很多程序可能在进入站点之前就已经编译好了,但是到了站点之后,可能还需要添加其他程序。为了避免打乱整个系统的结构,你需要在每个功能区预留一定的空间备用。


  在硬件上留有足够的余量。编译软件的时候考虑手动,自动,半自动,离开岗位。


  7.完整的报警系统


  工业环境中经常使用PLC系统,每次事故都会造成或大或小的损失。为了对事故进行预处理或最大限度地减少事故损失,必须注意可编程控制器的报警和保护,可编程控制器是系统的重要组成部分。


  8.程序模拟


  为了保证现场调试进度或者给客户看,往往需要在进入现场之前完全自动模拟自己的程序。因此,需要在程序中增加一个模拟程序,正常现场运行后,程序断开。为了使程序具有模拟功能,需要做以下工作:(1)将可编程逻辑控制器的实际输入输出点转换为可编程逻辑控制器的中间变量或数据块变量;


  (2)根据工艺要求,编制各设备的仿真程序。


  在设计PLC程序的过程中,如果能满足上述要求,就可以称之为好程序。


  可编程控制器(PLC)编程代码


  1.选择合适的可编程逻辑控制器(PLC)型号和输入输出点,当有特殊功能要求时,选择特殊功能模块。


  2.熟悉所选的PLC编程指令和编译软件。


  3.软件组件规划,包括内部继电器、锁存继电器、数据寄存器、定时器、计数器等。


  4.程序规划,一般按照故障提取、故障处理、手动处理、自动处理、输出处理的顺序进行编程。较大的项目或设备应由功能单元分段加工。如果自动生产线上有起重机、行走和顶升旋转装置,则应根据上述单位分段编程。


  5.分段、分块编写的程序前应加一小段注释,说明程序的功能,必要时可注明相应的工艺流程。块或分段程序和整体程序的定位顺序基本上要按照工艺流程顺序排列,以利于程序的可读性。


  6.在程序设计之前,要对设备进行抽象,对常见的因素如停止、急停、过载、超限、超时、安全光幕、颠簸和停止、门开关等进行抽象。应提取并放置在起动电路或起动主控制和联锁电路中,这是整个程序结构的大前提。在此基础上,程序可分为自动和手动两个功能区。


  7.提取程序结构手动功能区的共性因素,如手动因素和危及设备人身安全的因素,放入手动主控和联锁回路中,对手动控制进行保护、屏蔽和报警。


  8.提取程序结构自动功能区的共同因素,如自动、超限、超时等,放入自动主控和联锁电路中,对自动控制下的设备进行保护、屏蔽和报警。一个总的原则是在保证安全的前提下,严格限制设备进入,宽松限制设备退出。


  9.在设计程序时,应设计程序的总复位功能,方便用户在设备出现故障时尽快恢复设备的正常运行。总复位时应充分考虑设备和人员的安全。


  10.当自动模式切换到手动模式时,程序应清除自动模式下的输出和中间状态。特别是在自动模式下使用设置命令时,必须在手动模式下使用复位命令将其清除。


  11、编程中严禁使用双输出,即同一输出语句或同一输出线圈在程序中出现两次以上。不同模式下,同一个输出点的输出由中间继电器传递,最后汇集在一起,并与输出点相连。12.使用触摸屏时,触摸屏和PLC共享的控制区和状态区不得进行其他功能的编程。


  13.在使用PLC的专用模块之前,先查明控制区和状态区是否占用工作字。如果是这样,这些工作字就不要在其他方面编程了。


  14、PLC输入、输出、中间继电器、定时器、计数器、数据寄存器等。应该用中文注释。输入和输出还必须有组件名称编号。对于相应的输入点,默认是外围开关接NO触点,需要接NC触点的必须在备注中注明。所有注释都要清晰,容易产生误解,尽量少用笼统的引用。


  15.项目调试完成后,系统必须保留最终的软件程序,保存的文件名应包括项目号/作者/日期信息/版本号等。


  16.程序加密:加密程序的密码必须保存在一个专门的文件中,标明相应的用户名和密码权限,并分发给至少两个人来理解密码,以防止因密码丢失而导致程序无法打开的情况。


  编程建议


  1.当PLC和上位机(或触摸屏)组成监控系统时,屏幕上有“手动”和“自动”等多种控制模式(一般控制模式多了就只有一种)。程序中可以使用“MOV”命令。例如,在:中,当选择“手动”时,常数1 MOV将存储在寄存器VB10中,当选择“自动”时,2 MOV将存储在同一寄存器VB10中。只要判断寄存器的数据,就知道系统是哪种控制模式。这种思路的好处是容易理解,不需要联锁等繁琐的程序。


  2.当程序有模拟控制时,如果读取的模拟基本无误,可以采用时间滤波延时一段时间。如果读取的数据误差很大,需要采用其他滤波方法,比如计算平均值。可以查阅相关资料。


  3.在程序调试过程中(尤其是在设备修改时将你的程序添加到原设备的程序中),当程序语句中的条件满足且输出线圈没有连接时,可以检查你的程序是否在这类语句之间,比如JUMPgo to等等。另一种可能是程序中断后,条件满足但不打开输出,一般不扫描本节程序。


  4.在顺序控制程序中,即一个动作完成后,进入下一个动作,以及其他类似的顺序控制,方便我采用10 ^ 10的控制方式。思路是:预置一个寄存器,初始值为0。当系统启动时,当寄存器为10且寄存器等于10时,可以进行第一个动作。第一个动作完成后,寄存器10可以用于第二个动作。第二个动作完成后,寄存器10等于30,所以只要你判断寄存器中的数据,你就知道你想完成那个动作。需要跳的时候可以加20到30而不是10,看实际需要。为什么要加10而不是1,因为加了10之后,如果插入一个段落,只需要选择这10个自由位置中的任意一个。


  5.在设计程序时,当出现过程故障(不受控制系统控制)时,最好保持故障现象,声光报警。直到操作员重置,让他知道系统出现故障。否则机器会停机,别人会认为你的程序有问题。一般来说,我们在设计新系统时应该注意这些。


  6.对于经常调用的子程序,可以做成子模块,经常调用。


  7.由于生产机械在工作循环中的每一步移动都需要一定的时间来执行,并且这些时间具有一定的限制,所以可以将这些时间用作在要检测的步移动开始的同时启动计时器的参考。定时器的时间设定值比正常情况下动作持续的时间长20% ~ 30%,定时器的输出信号可用于报警或自动停机装置。当生产机械的某一工作步骤的动作时间超过规定时间,达到相应定时器的预设时间时,定时器发出故障信号,然后进入下一工作步骤,停止正常工作循环程序,启动报警或停机程序。这就是我们常说的超级节拍保护。


  8.一些安全检测开关(如急停按钮、安全光幕、限位开关等。)都是常闭(NC)输入。


  9.为了安全节能,尽量把输出设计成必要时动作,一到位就停止输出,而不是设计成平时总是输出,必要时断开输出。


  10.执行器的动作原理应该是静止不动而不是移动!


  11.单台设备控制:进行软手操作时,单台设备必须具有软手操作/自动切换和启动/停止功能。当自动切换到软手操作时,设备不能停止;当从软手操作切换到自动操作时,设备的启动/停止取决于自动程序。


  12.单台设备(泵、风机等大型设备)运行24小时后必须旋转,且必须有运行时间积累。如果启动/停止顺序是由上位机设定的,则应由操作员自行设定。



News / 推荐新闻 More
2021 - 07 - 27
机器视觉检测技术的发展趋势随着工业制造技术及加工工艺的提高与改进,对检测手段、检测速度和精度提出了更高要求,使得机器视觉检测技术在各大行业广泛应用,发展势头强劲。下面,我们就来细数下机器视觉检测发展的几个历程和趋势。1、初级视觉理论:主要针对光学成像的逆问题,是由能从二维光强度阵列恢复三维可见表面物理性质的一系列处理过程组成。这里各过程的输入数据及计算目的都是能够明确描述的,如边缘检测、立体匹配、由运动恢复结构等方法。在三维物体投影成二维图像过程中,三维信息有很多损失,从而导致病态问题产生,因此加强对初级视觉过程及其约束条件的研究就显得格外重要,其主要针对 3D 重建。2、主动视觉理论:主动视觉指观察者以确定或不定方式运动跟踪目标、感知对象的技术方法。在主动视觉中,观察者和目标物体也可同时运动,观察者的运动为研究目标的形状、距离和运动提供了附加条件,重要研究方向为目标跟踪,导弹拦截等。3、...
2021 - 07 - 26
PLC控制柜维护保养21法则一、为什么需要维护1、为了延长使用寿命;2、为了设备运行的稳定性;3、这也是5S的一种体现。二、不维护容易出现的问题电柜太脏会设备短路,打弧,烧坏设备;电柜风扇过滤网堵塞,散热不好会导致设备稳定性差;湿度过大会设备短路;某些大电流位置局部过热时间长了会烧坏设备。三、准备工作各种工具:螺丝刀,扳手,摇表,万用表,钳形电流表;吸尘器;热风枪,记号笔,锉刀等;备件:风扇过滤网,接触器辅助触头,继电器线圈,热缩管,导电膏。人员:不仅需要电工,还需要程序员。因为如果程序员参与,把软件的维护也做起来,可以提前预防消除很多软故障。四、注意事项做好规划,制定详细的步骤,按部就班。永远不要相信一拍脑袋一个主意,而是先把所有的方方面面考虑好,拿着规划一步一步做:1.  安全第一:拆卸设备之前先断电,注意安全;2.  清洁电柜的时候注意不要把灰弄到到处都是;3.&...
2021 - 07 - 20
机器视觉:系统不稳定性因素分析1 引言   机器视觉的研究始于20世纪50年代二维图像的模式识别[1],它起初被设计用来代替人眼从事检测识别的工作,可以大大提高检测的工作效率以及降低人眼疲劳带来的检测结果的不一致性。机器视觉检测发展至今,在许多方面已经发展到可以完成人眼难以完成的工作,如高精度的测量以及对特定产品的高速分级,还有利用红外线、紫外线、X射线等检测技术检测人类视觉无法检测到的事物[2]。但机器视觉系统设计的难点在于如何保证其可靠性与稳定性,无论从光源,相机等硬件上还是从图像处理软件上的设计,对机器视觉的稳定性都有重要影响。   2 机器视觉系统组成典型的机器视觉系统一般由图像的获取、图像的处理和分析、输出或显示三部分组成。按照视觉系统组成结构主要分为两大类:PC或板卡式机器视觉系统(PC-Based Vision System),以及嵌入...
2021 - 07 - 16
资深电气工程师总结的PLC最全编程算法,收藏备用!PLC编程算法(1):开关量PLC中无非就是三大量:开关量,模拟量,脉冲量。搞清楚三者之间的关系,你就能熟练的掌握PLC了。1,开关量也称逻辑量,指的是两个取值,0或1,ON或OFF。它是最常用的控制,对它进行控制是PLC的优势,也是PLC最基本的应用。开关量控制的目的是,根据开关量的当前输入组合与历史的输入顺序,使PLC产生相应的开关量输出,以使系统能按一定的顺序工作。所以,有时也称其为顺序控制。而采用顺序控制又分为手动,半自动或自动。而采用的控制原理有分散,集中与混合控制方式。2,模拟量是指一些连续变化的物理量,如电压,电流,压力,速度,流量等。PLC是由继电控制引入微处理技术后发展而来的,可方便及可靠地利用开关量控制。由于模拟量可转换成数字量,数字量只是多位的开关量,故经转换后的模拟量,PLC也完全可以可靠的进行处理控制。由于连续的生...
技术分享
 
2021 / 07 / 27
机器视觉检测技术的发展趋势随着工业制造技术及加工工艺的提高与改进,对检测手段、检测速度和精度提出了更高要求,使得机器视觉检测技术在各大行业广...
 
联系方式

深圳市龙华新区观澜第三工业区观中街5号联为科技园

1505031685@qq.com

15323438773 杨老师  

0755-29495142

预约免费试听
  • 您的姓名:
  • *
  • 公司名称:
  • 地址:
  • 电话:
  • *
  • 传真:
  • E-mail:
  • 邮政编码:
  • 留言主题:
  • 详细说明:
  • *
     
联为智能教育专业打造自动化教育产、学、研一体化平台,成为智能制造教育领导者。联为plc培训班精心打造专业培训实操基地,专门为学员研发一批教学设备,包括机器人学习教学连线,plc培训学习教学连线,工业机器人培训、plc编程培训等专业的教学设备,让学员真正理论实践一体,学以致用,从实践交流中体会知识的精髓,来一场完美的职业转身。
扫码学习
深圳联为智能教育感谢您的关注!
plc学习
在线直播间
plc培训班
小胡老师
Copyright ©2005 - 2013 深圳市联为智能教育有限公司


犀牛云提供企业云服务
5
电话
  • 15323438773
6
二维码
回到顶部