预约试听:15323438773
  


技术分享

News

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

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

一个完整的可编程逻辑控制器(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
2020 - 11 - 18
单片机能代替PLC吗?  单片机能代替PLC吗?由于面粉可以代替面条,所以这个问题的答案是否定的,第一次听到这个答案,很多人可能会有疑问。为什么单片机这么强大,功能这么丰富,却不能代替PLC?  所以今天我们来看看什么是单片机和PLC,它们有什么区别。  一、单片机  单片机,又称微控制器单元,是一种集成电路芯片,利用VLSI技术集成中央处理器(中央处理器;CPU),随机存取存储器(随机存取存储器;随机存储器)、只读存储器;(只读存储器;ROM)、各种I/O端口和中断系统、定时器/计数器等功能(可能包括显示驱动电路、脉宽调制电路、模拟多路复用器、A/D转换器等电路)集成到一个硅片上,形成一个小而完善的微型计算机系统,广泛应用于各个领域。单片机可见于手机、PC外设、遥控器、汽车电子、工业步进电机、机器人手臂控制等。  单片机的历史并不长,但发展很快。它的出现和发展大致与微处理器同步。自197...
2020 - 11 - 17
四个观点:什么是PLC?它的作用是什么?  答1: PLC是专门为工业环境下的数字化操作而设计的电子设备。它采用可编程存储器,用于存储执行逻辑运算、顺序运算、计时、计数和算术运算的指令,并可通过数字或模拟输入输出控制各种类型的机械或生产过程。可编程控制器及其相关外围设备的设计应遵循易于与工业控制系统集成、功能易于扩展的原则。'  一,可编程控制器(PLC编程)的特点  1.可靠性高,抗干扰能力强  高可靠性是电气控制设备的关键性能。PLC采用现代大规模集成电路技术,采用严格的生产工艺,内部电路采用先进的抗干扰技术,可靠性高。PLC具有硬件故障自检测功能,出现故障时能及时发出报警信息。在应用软件中,用户还可以编写外围设备故障自诊断程序,使系统中除PLC以外的电路和设备也能得到故障自诊断保护。这样整个系统可靠性高也就不足为奇了。  2.配套设施齐全,功能完善,适用性强  到目前为止,P...
2020 - 11 - 16
学习PLC,你需要知道这个!  工业生产和科学技术的发展都离不开PLC的自动控制。PLC可以广义理解为集中式继电器扩展控制柜。在实际生产应用中,可编程控制器大大节约了工业控制成本,加强了设备的集中管理和自动控制。学好PLC,首先需要扎实的PLC基础。  1.从PLC的构成来看,除了CPU、内存、通信接口外,还有哪些接口与工业现场直接相关?并说明其主要功能  (1)输入接口:接收被控设备的信号,通过光电耦合器件和输入电路驱动内部电路开启或关闭。  (2)输出接口:程序的执行结果通过输出接口的光电耦合器件和输出元件(继电器、晶闸管、晶体管)输出,以控制外部负载的接通或断开。  2.PLC的基本单位是什么?各有什么作用?  (1)CPU:PLC的核心部件,命令PLC执行各种任务。例如接收用户程序和数据、诊断、执行程序等。  (2)内存:存储系统和用户的程序和数据;  (3)输入输出接口:可编程控...
2020 - 11 - 16
可编程控制器编程(PLC编程)经验分享  了解PLC编程的理论很重要。没有这方面的理论准备或指导,简单的问题只有在实践中摸索才能轻松解决。复杂难处理。不仅启动不了,而且要耗费大量的时间和精力,很难高效率、高质量地编译程序,往往事半功倍。  但是编程的具体实践以及在这个实践中获得的知识或技能,即经验,也很重要。没有经验,只有理论,既不能深刻理解理论,也不能灵活运用理论。就像学数学一样。如果只知道一些定理或者只记住一些公式而没有相应的习题,是学不好的。不用说,任何理论都只是经验的总结,归根结底还是来自实践。  1.经验积累  别人的经验,也有自己的,都很重要。前者靠认真学习,后者靠认真积累,有一定的时间和必要的精力。  别人的经历已经在书上或者杂志上发表了。有的认真向别人学习,但大部分都是自己的经历。所有的例子都经过我的测试,实践证明是可行的。我想其他的书或者杂志也会介绍同样的。因此,有必要借...
技术分享
 
2020 / 11 / 18
单片机能代替PLC吗?  单片机能代替PLC吗?由于面粉可以代替面条,所以这个问题的答案是否定的,第一次听到这个答案,很多人可能会有疑问。为...
 
联系方式

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

1505031685@qq.com

15323438773 杨老师  

0755-29495142

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


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