如何编写出质量较高的PLC程序?
如何编写出质量较高的PLC程序?
-----
网友解答:
-----
什么叫高质量的程序??
1.简单的程序用启保停就行了!
2.复杂的程序用功能指令写
3、牵涉到模拟量/数字量转换的,可以对程序进行分段处理;
4.总之程序没有标准,只要能用就行。
-----
网友解答:
-----
你好,很高兴回答你的问题,我是头条@沪A林工,电气技术领域的自媒体新人。你所谓的编写出质量较高的PLC程序是每个电气人员编程能力质变的表现。结合我的从业经历给你几点意见如下。
质量较高的程序我认为需要几要素:1.整体框架结构清晰。2.注释标注详细。3.有很好的扩展性和移植性。(为了适应客户的需求)
根据题主提问的问题来看,想必题主也有一些PLC基础和调试经验了。那么关于如何学习基础性的东西我就不在赘述。我们进入正题。
编程思路的养成是我们每个工控从业者的必经之路。思路的适应性强弱直接的反应从业者的技术水平。 我们在成长过程中都是从接线,辅助调试,独立调试,独立编程这么几个步骤走过来的。至于调试又分为能够小改和大改。而在初期阶段,我们都是跟着老师傅一起调试的。所以在此期间,我们已经有了接触程序的机会,那我们只能去看老师傅的程序,看的越透越好,要知道整个设备的工艺流程以及他的编写思路,也可说是编程风格。当然如果我们跟对了人,那么很有利于我们的成长。 如果我们能看懂老师傅或者其他人的程序,那么距离自己编程就成功一半了。
接下来就是重点总结。比如我们要将一套程序分成几个部分。比如:
1:手动,自动控制一些标准的东西(气缸,伺服等)
2:整个工艺流程(也就是自动步)
3:报警信息
4:启动停止等跟运行相关的控制程序。
5:IO地址映射的处理。
其实一台设备无非就包括,气缸、伺服、通讯、以及自动步流程。那么气缸,伺服,通讯都会分成手动模式控制和自动模式控制(可以集成到一个功能块里)。而在自动步中我们就是触发自动模式控制那一路。再加上我们设备的启动停止以及一个运行标志位的处理。
上面所介绍的东西,如果你看的程序能够明显的看出以上几个部分,那证明这个程序的框架还是不错的。
至于编程思路那就需要题主多看其他人的程序,风格好的程序,多进行总结。取其精华,去其糟粕。把他们的模板拿过来改成自己的风格。(也基本不会有人从0开始写一个程序) 当然还不能只看一种类型设备,要有针对性看程序。比如普通单机设备逻辑、转盘工位设备逻辑、线体设备的逻辑等。其实每种设备类型只要掌握一种编程思路,那就是举一反三,一通百通了。
最后祝题主早日成功,编写出质量较高的程序!
希望我的回答对你有所帮助,让你少走弯路。
-----
网友解答:
-----
PLC编程有几个主要的问题,最主要的一个是,上手快,但是精通很难。这是因为,PLC编程,尤其是梯形图的编程语言,设计初衷就是为了没有编程基础的工程师的,思维方式也和电力系统的继电器回路很相似,因此上手非常快,简单的模仿继电器回路的话,效率也比较高。
然而,PLC编程很快就遇到第二个问题,就是瓶颈很明显。一方面,可以得到的资料很有限,无论是教材还是课程,都是浅尝辄止,讲到会用就可以,对一些高级的应用方法,因为涉及保密、或者整个行业水平限制,都缺乏足够的学习资源。另一方面,梯形图编程直观的形式也是其不容易写出来高水平程序的原因之一。
那么,如何突破这些瓶颈呢?
有几个步骤。首先,需要有软件工程的基础训练和高级语言的基本知识,尤其是面向对象、模块化这些高级语言程序设计的基本素养。因为PLC程序本质上只是编程语言的一个分支,要写出水平高的程序,必须从理论上有一个高度,学会了面向对象,学会模块化,学会熟练使用PLC内置的高级模块,是水平提升的一个基础。
另一个,在可能的情况下,看到水平高的例程,是快速成长的催化剂。但是这样的机会可遇不可求,就像观摩高手过招一样,认真看高水平的例程可以快速提高。就我个人而言,也是偶然的机会学习了一些国外的很复杂的PLC程序之后,整个理念才有一个提升的。
-----
网友解答:
-----
如何编写出质量较高的PLC程序,首先我们得创建一个属于自己的编程构架或者是程序分段,把整个程序分成几部分,比如我自己在写一个设备的PLC程序时会分成5部分:手动部分、自动部分、数据处理、通信部分、模拟量/数字量转换,尽量编程采用结构化编程的方法,这样能对程序进行分段处理,无论是简单工程还是结构化功能都可以采用。手动部分的作用是机械设备单个动作的控制一般用于测试以及维修方面,自动部分则是整个动作完整的流程编写,数据处理则是对手动、自动用到的数据进行传送、选择、计算等操作,通信部分是用到例如Modbus等通信控制元器件如变频器、伺服等装置编写的通信程序,模拟量/数字量则是采用模拟量控制元器件进行的DA转换程序或者采集模拟量数据进行的AD转换程序。
一个质量较高的PLC程序应基本满足简单可读性、稳定性、具有易于维护和扩展的功能,对于控制动作流程的尽量采用梯形图进行编程,即使是非编程人员也可清晰看清楚其动作顺序,多采用结构化编程,程序做到集中化就是上面说的属于哪部分就写在哪部分,尽量不要乱地方补充、乱地方修改,让人便于查看。PLC运行还需要稳定性,就是指的是某些地方的bug,可能在调试的时候都准确无误,在实际中误设置了参数、误动作,它却没有停止、报警或者不能正常工作,以及能够进行一次完成的运行,第二次、第三次就不能顺利进行了只能重启再开始运行,这些都属于程序的稳定可靠性,尽量把这些漏洞在调试试机时候找出来。在一个就是程序的维护性和扩展性,做到注释准确、程序结构优化,能够使维修人员迅速找到修改的地方,留有扩展的空间,对某些动作的修改、升级能够在整体构架中完成而不破坏。
在编程前对软元件的选择要准确,哪些是掉电保存的、掉电不保存的、对输入有区分,有高速计数的普通输入尽量不要占用高速输入端子、同理高速输出端子也一样。对定时器的选择如0.01ms的、0.1ms、1ms的、累计型的等选择,计数器的选择16位的、32位的、保持用的、高速计数用的都得分清楚使用,数据寄存器的选择也有16、32位、掉电保持的之分。另外指令的选择要根据数据的类型选择是16、32位的,避免到时候数据计算出错。这样PLC编写出的程序就能减少bug,质量会高一些。
以上就是如何编写出质量较高的PLC程序需要注意的几点要求,希望能帮到你!
-----
网友解答:
-----
朋友们好,我是电子及工控技术,我来回答这个问题。我认为一个较好的PLC程序要控制安全可靠、可读性好、便于后期维护和以后的升级改造等,下面我来谈谈编写梯形图程序的一些经验和看法。
我认为要编写出高质量的PLC梯形图首先要深入了解控制过程,比如控制过程中的各个部件的动作顺序、动作条件、必要的保护和联锁等都要考虑到。这些熟悉之后,再从总体上确定程序的基本结构,然后画出流程图或者顺序功能图,这些都是编写出高质量PLC程序的重要保障。
对于经验丰富的PLC编程人员来说,他们会依靠平时所积累的经验去设计程序,这种方法我们称为经验设计法,通过这种方法也能够编写出高质量的PLC程序,他们的主要操作过程是先根据整个控制要求去设计基本的程序,然后再逐步补充完善程序,使程序完全满足控制要求,最后,再设置必要的联锁保护程序。这种方法编写出来的PLC梯形图可以借鉴继电控制线路的设计方法,因此对继电器控制线路要有一定的基础,这种方法比较容易掌握。
还有一种比较先进的PLC梯形图编写方法也能够写出质量较高的PLC程序,这种方法叫顺序控制设计法。虽然用经验法设计梯形图有一定的方法和步骤可遵循,它具有很大的试探性和随意性,需要有很丰富的经验才能编写出高质量的PLC程序。
我们用顺序控制法就是按控制动作的先后顺序,在各个输入信号的作用下,根据内部状态和时间的顺序,各个执行机构自动有序地进行操作。我们初学PLC的朋友也容易掌握,并且能够写出质量较高的PLC梯形图。通过这种方法编写的程序调试、修改和阅读都方便,一些比较复杂的PLC程序使用这种方法编写具有很明显的优势。
比如我的一位同事,他用经验法去设计了一种控制系统的梯形图,前后大约花费了一个多星期的时间;对于同样的控制要求,另一个同事用了顺序控制设计法,只用了一天的时间就完成了梯形图程序的设计,第二天通过模拟调试、现场试车一次性成功。由此可见运用顺序控制方法是很容易编写出高质量PLC程序的。现在通过顺序控制法编写PLC程序已经被电工界作为首位的编程方法。
------------------
推荐阅读: