研选课堂
HOME
研选课堂
正文内容
做plc必须编程 干货!优秀的PLC程序必须具有的编程规范
发布时间 : 2025-01-23
作者 : 小编
访问数量 : 23
扫码分享至微信

干货!优秀的PLC程序必须具有的编程规范

我们在进行PLC程序设计时,最好能按照一个规范去编程,这样编出来的程序具有简单可靠,可读易懂性。下面我们来看一下都有哪些规范吧!

编程之前进行软元件规划,包括内部继电器、保持继电器、数据寄存器、定时器、计数器等。

编程时要进行程序功能结构的规划,比较大型的工程或设备按功能分块进行处理,一般以故障处理、手动处理、自动处理、输出处理这样的顺序进行编程。如一条自动化生产线中有提升机、移行、顶起旋转装置等,则应按上述单元分段分块编程。

在分段分块编写的程序前应加上简短的段注释,说明此段程序的功能,如有必要可以注明相应的工艺流程,便于程序的可读性。

在程序设计时,应对设备进行抽象,对如停止、急停、过载、超限、超时、等共用因子进行提取,放在启动回路或连锁回路,作为整个程序结构的大前提,在此基础下,再将程序分为自动、手动两大功能区。

自动模式切换到手动模式时,程序应清除自动模式下的输出和中间状态。特别是在自动模式使用SET指令时,必须在手动模式用RESET指令予以清除。

6、单台设备控制中必须有手动/自动切换,以及手动操作时可以启/停功能,由自动切换到手动时,设备不能停机;由手动切换到自动时,设备启/停取决于自动程序。

7、在设计程序的时候,当出现工艺上的故障(非控制系统控制),最好将故障现象保持,并有灯光声音报警。直到操作工复位,以让其知道系统出现了故障。

8、程序设计时应设计程序总复位功能,便于使用者在设备出现故障情况下,可以方便尽快恢复设备正常工作。总复位应充分考虑在复位过程中设备和人员的安全。

9、严禁在程序中使用双线圈输出,即同一个输出线圈在程序中出现2次及以上。在不同模式条件下的对同一输出点的输出使用中间继电器进行中转,最后集中到一起并列输出。

10、一些安全用检测开关(如急停按钮、极限开关等)用常闭(NC)输入。PLC的输入点一般情况下默认为外围开关连接的是NO触点,对于需要接NC触点的须在注释中标明。所有注释应当清晰明了,不易产生误解。

11、PLC和上位机(或触摸屏)组成监控系统时,在画面上很多时候需要有"手动"、"自动"等控制模式。在程序里面可以用"MOV"指令。如:当选择"手动"就将常数1 MOV到一个寄存器VB10里面,当选择"自动"就将2 MOV到同一寄存器VB10。只要判断寄存器的数据是多少,就知道系统是那种控制方式。这样的思路好处是容易理解,不需要互锁之类的程序。

在顺序控制程序时,即一个动作完成后,进入到下一个动作,等类似的顺序控制,采用+10控制模式,。其思路是:预置一个寄存器,在初始化时值为0,当系统启动后,对它+10,此时寄存器为10,寄存器等于10时可以做第一个动作;第一个动作完成后,再对寄存器+10,此时寄存器等于20,可以做第二个动作,这样只要判断寄存器里面数据为多少,就知道要完成那个动作。当需要跳跃动作时,可以不再+10,可以加+20\+30....,看实际的需要而定。为什么加10而不是加1,因为加10之后,如果插入一段,只要在这10个空余的地方随便选择一个位置就可以了。

13、程序有模拟量控制时,如果读取的数据误差很大,就需要采取其它的滤波方式,如算平均值等。

关于程序加密:对于加密程序的密码必须有专门的文件予以保存,并注明相应的用户名+密码+权限,分发给至少两个人以上了解密码,防止密码丢失带来无法打开程序的情况。

以上是小编综合了一些电气工程师进行程序设计时的一般规范,而总结出来的几个我认为比较重要的规范要点和编程建议,希望对你们有用~(技成培训原创,作者:蔡慧荥,未经授权不得转载,违者必究!)

什么是PLC标准化编程?写程序的时候一定要按标准化来吗?

从个人角度,简单说说大家经常讨论的标准化,不喜勿喷。

这里所说的标准化一直在强调面向对象的思想,为了严谨点,特地百度了下,找了个个人感觉优缺点总结的比较好的说明,如下:

假如要乘出租车去机场。

面向过程的方式是:告诉司机,按照启动、右转、左转、停止等单独的接口去机场。这种方式需要乘客对自己的行为负责,乘客需要知道每个城市去机场的路线。

面向对象的方式是:告诉司机,请载我去机场。显然这种方法比面向过程的方法要容易得多。

在面向过程编程时,由于主程序承担的责任太多,要确保一切正确工作,还要协调各个函数并控制它们的先后顺序,因此经常会产生非常复杂的代码。很多时候变化是不可避免的,而功能分解法(面向过程思想)却又无法应对可能出现的变化。一旦修改代码,则bug越来越多。

因此,面对复杂的软件开发时,主程序不能做太多的事情,必须通过分离关注点进行职责转移。在上面的例子中,尽管具体实现在广州、北京或上海等不同城市中是不同的,但在任何城市都可以这么说,因为司机知道怎么去机场,这就是职责转移。

这个主要是面向高级语言的思想,这里面的对象太多,“万物皆对象”。但是在自动化现阶段来说,常规设备用到的对象,一般包含:伺服电机(旋转、直线、DD),电机(变频、调速、步进),气缸、油缸、电缸、机械手、阀门等执行机构。光电、模拟量、视觉、限位开关、测距等检测机构。

那么面向对象,以伺服电机、气缸为例。

先把伺服电机功能标准化,电机的检测,上下限位,近点信号,急停信号;电机的控制,点动,原点回归,点对点定位,连续轨迹定位,插补控制,同步控制,凸轮控制;电机的反馈,当前值,当前速度,定位完成,报警,报警代码,各种控制状态等。

气缸功能标准化,气缸动点,原点输出,动点、原点检测,动点、原点延时,报警延时。

那么总结下来,标准化,就是先把设备中用到的对象功能统一编程,然后根据设备工艺去调用。 下面几张图是几个不同设备的简单截图,不能准确的说明面向过程和面向对象,但是可以简单的看出一些区别。1、2、3图表示面向对象 将常用对象针对设备工艺用到的功能模块化编程,然后主程序根据设备工艺去调用。

4图表示面向过程 所有的动作都在主工艺流程中编写。

大家看了上面的程序分类是不是觉得这个其实没有这么复杂,就是自己经常用的编程方法。其实大部分工程师在工作当中,已经潜移默化的使用了面向对象的编程方式,因为“面向对象程序设计方法是尽可能模拟人类的思维方式,使得软件的开发方法与过程尽可能接近人类认识世界、解决现实问题的方法和过程”。

所以我个人理解的标准化,是根据设备工艺,将设备对应的执行机构根据设备需求,模块化(做成对应的功能块或者函数),然后主流程根据工艺调用执行机构的控制,监视执行结构的反馈或者检测部分,从而完成设备程序的编制。最终程序结构清晰,方便阅读,方便后续增改,方便别人手,方便同样工艺设备引用即是标准程序。

如果说一个标准化“思想”可以说在任何设备使用,在任何平台使用,那么没问题!

如果说一个标准化“程序或者功能块”可以在任何设备使用,在任何平台使用,那么多半是吹嘘骗人!

气缸不说了,太简单。就以伺服电机这个对象的标准功能为例,首先脉冲伺服上面,各个品牌控制的指令都是不同的,无法程序通用。总线伺服上面,西门子,AB,三菱,安川,贝加莱,倍福主导的EtherCAT系,底层协议不一样,程序更无法通用。

就以一个品牌来说,以三菱为例,你编制一个通用的伺服控制功能块的前提也要说是脉冲的FX系列、还是中大型PLC的*D75P(D)模块,还是Basic网络伺服系列,还是光纤总线伺服系列。另外一个通用的伺服控制功能块,如果包含所有功能(点动、定位、回原、插补、同步、凸轮),也是有弊端的,会使程序臃肿,不使用的部分占用大量PLC内存空间,使PLC的处理变慢。所以一个标准的功能应该根据设备工艺需求,编制对应功能的、精简的标准块。

所以建议大家如果要标准化,还是根据自己所使用的工控产品品牌,根据自己的设备工艺,花时间做出基础功能的标准块库 。这项工作,在液晶、3C的设备大厂里面已经开展了多年,所以他们几百个电气工程师,人员流动很大的情况下,仍然可以保证设备开发的效率和基本稳定性。

以上仅代表个人观点,谢谢。

免责声明:本文转自网络,版权归原作者所有,如涉及作品版权问题,请及时与我们联系删除,谢谢!

相关问答

机械或电气及自动化专业需要学编程吗?-懂得

机械类主要学习CAD,SolidWorks,Pro\E等制图软件,这是必须的基础。如果向上还可以学习Ansys(做分析的软件,如零件强度等等,这个比较高端,大学里用的...

plc扩展模块需要编程吗?

需要。扩展模块只是提供了可编程的功能,并没有直接执行的程序。如果使用还需要自己进行程序上的编写。V80-M16DR系列PLC是V80系列中的一款16点小型可编程控...

plc没有cpu怎样编程?

PLC一般都是在电脑中编写程序,然后下载到PLC中,人机界面(屏幕)一般只作为显示以及修改一些参数使用。有些PLC也能够通过人机界面修改程序,但应该不算主流PLC...

学PLC编程一定要有实物练习吗?如果没有能学得会吗?

我开始学plc时也是没钱买电气,特别西门子系列的电器望而止步,没得实操练习,看很多教程书籍都没用,好长一段时间都没学习,无意间找到一个电工手册的公众号,...

在给PLC写入程序时,是否给PLC供电是不是只接编程线缆就可以了?

写入程序需要给PLC电源模块供电,输入输出单元可以不用通电。接好编程电缆就可以连接CPU对程序进行编辑传输操作。写入程序需要给PLC电源模块供电,输入输出单...

PLC编程电脑接口有什么要求?-ZOL问答

你用的是什么牌子的PLC一般的串口都是用9针RS-232的,也有直接用USB连接的,还可以将232接口转换成USB的,但是需要一个USB驱动程序,驱动了以后就可以用了COM0口...

学PLC的必须懂电路吗?掌握到什么程度呢?

工业机器人学习的难易程度。首先要看你所要达到的层次是什么样子的,如果是想达到研发层次的工业机器人工程师,你就得懂得机器人相关编程、PLC、电路图、熟悉...

本人想配置一台电脑学plc编程,请问应配置什么样的电脑?-ZOL问答

屏幕方面需求必须自己确定,设计需求肯定对高色域有要求的,甚至需要进行校色的。校色后按说生成个小软件,让机器开*后运*。按说:正常下确定好处理器的档次。...

西门子plc编程必须用专用线吗?

西门子plc编程不一定需要用专用线。通常情况下,西门子plc可以通过以太网、USB、串口等多种方式进行编程和连接。如果您使用的是以太网连接,则可以使用普...

机械工程师需要学plc么?

需要。PLT是一种通用的图形化编程语言,可用于控制和监视机器或生产线的自动化过程。机械工程师需要使用计算机辅助设计(CAD)软件进行设计和制造,因此PLT可以...

 彩色砖块  桂林空难 
王经理: 180-0000-0000(微信同号)
10086@qq.com
北京海淀区西三旗街道国际大厦08A座
©2025  上海羊羽卓进出口贸易有限公司  版权所有.All Rights Reserved.  |  程序由Z-BlogPHP强力驱动
网站首页
电话咨询
微信号

QQ

在线咨询真诚为您提供专业解答服务

热线

188-0000-0000
专属服务热线

微信

二维码扫一扫微信交流
顶部