什么是PLC标准化编程?写程序的时候一定要按标准化来吗?
从个人角度,简单说说大家经常讨论的标准化,不喜勿喷。
这里所说的标准化一直在强调面向对象的思想,为了严谨点,特地百度了下,找了个个人感觉优缺点总结的比较好的说明,如下:
假如要乘出租车去机场。
面向过程的方式是:告诉司机,按照启动、右转、左转、停止等单独的接口去机场。这种方式需要乘客对自己的行为负责,乘客需要知道每个城市去机场的路线。
面向对象的方式是:告诉司机,请载我去机场。显然这种方法比面向过程的方法要容易得多。
在面向过程编程时,由于主程序承担的责任太多,要确保一切正确工作,还要协调各个函数并控制它们的先后顺序,因此经常会产生非常复杂的代码。很多时候变化是不可避免的,而功能分解法(面向过程思想)却又无法应对可能出现的变化。一旦修改代码,则bug越来越多。
因此,面对复杂的软件开发时,主程序不能做太多的事情,必须通过分离关注点进行职责转移。在上面的例子中,尽管具体实现在广州、北京或上海等不同城市中是不同的,但在任何城市都可以这么说,因为司机知道怎么去机场,这就是职责转移。
这个主要是面向高级语言的思想,这里面的对象太多,“万物皆对象”。但是在自动化现阶段来说,常规设备用到的对象,一般包含:伺服电机(旋转、直线、DD),电机(变频、调速、步进),气缸、油缸、电缸、机械手、阀门等执行机构。光电、模拟量、视觉、限位开关、测距等检测机构。
那么面向对象,以伺服电机、气缸为例。
先把伺服电机功能标准化,电机的检测,上下限位,近点信号,急停信号;电机的控制,点动,原点回归,点对点定位,连续轨迹定位,插补控制,同步控制,凸轮控制;电机的反馈,当前值,当前速度,定位完成,报警,报警代码,各种控制状态等。
气缸功能标准化,气缸动点,原点输出,动点、原点检测,动点、原点延时,报警延时。
那么总结下来,标准化,就是先把设备中用到的对象功能统一编程,然后根据设备工艺去调用。 下面几张图是几个不同设备的简单截图,不能准确的说明面向过程和面向对象,但是可以简单的看出一些区别。1、2、3图表示面向对象 将常用对象针对设备工艺用到的功能模块化编程,然后主程序根据设备工艺去调用。
4图表示面向过程 所有的动作都在主工艺流程中编写。
大家看了上面的程序分类是不是觉得这个其实没有这么复杂,就是自己经常用的编程方法。其实大部分工程师在工作当中,已经潜移默化的使用了面向对象的编程方式,因为“面向对象程序设计方法是尽可能模拟人类的思维方式,使得软件的开发方法与过程尽可能接近人类认识世界、解决现实问题的方法和过程”。
所以我个人理解的标准化,是根据设备工艺,将设备对应的执行机构根据设备需求,模块化(做成对应的功能块或者函数),然后主流程根据工艺调用执行机构的控制,监视执行结构的反馈或者检测部分,从而完成设备程序的编制。最终程序结构清晰,方便阅读,方便后续增改,方便别人手,方便同样工艺设备引用即是标准程序。
如果说一个标准化“思想”可以说在任何设备使用,在任何平台使用,那么没问题!
如果说一个标准化“程序或者功能块”可以在任何设备使用,在任何平台使用,那么多半是吹嘘骗人!
气缸不说了,太简单。就以伺服电机这个对象的标准功能为例,首先脉冲伺服上面,各个品牌控制的指令都是不同的,无法程序通用。总线伺服上面,西门子,AB,三菱,安川,贝加莱,倍福主导的EtherCAT系,底层协议不一样,程序更无法通用。
就以一个品牌来说,以三菱为例,你编制一个通用的伺服控制功能块的前提也要说是脉冲的FX系列、还是中大型PLC的*D75P(D)模块,还是Basic网络伺服系列,还是光纤总线伺服系列。另外一个通用的伺服控制功能块,如果包含所有功能(点动、定位、回原、插补、同步、凸轮),也是有弊端的,会使程序臃肿,不使用的部分占用大量PLC内存空间,使PLC的处理变慢。所以一个标准的功能应该根据设备工艺需求,编制对应功能的、精简的标准块。
所以建议大家如果要标准化,还是根据自己所使用的工控产品品牌,根据自己的设备工艺,花时间做出基础功能的标准块库 。这项工作,在液晶、3C的设备大厂里面已经开展了多年,所以他们几百个电气工程师,人员流动很大的情况下,仍然可以保证设备开发的效率和基本稳定性。
以上仅代表个人观点,谢谢。
免责声明:本文转自网络,版权归原作者所有,如涉及作品版权问题,请及时与我们联系删除,谢谢!
「PLC高手必会」PLC标签和地址命名规则及5个技巧
图片来源:CEChina
作者 | Frank Lamb
“
了解标签模板、常见的工厂自动化标签缩写、过程控制标签缩写以及5个标签和地址命名技巧。
”
过去, 可编程逻辑控制器(PLC) 地址是基于寄存器的。数据保存在诸如MW210、B3:6/2、N7:50 或DB5.dbx50.2 之类地址的寄存器中。它们不是很直观,对吧?
可以为这些地址分配一个“符号”或快捷方式,使它们更易于编程或查找,但是这些符号名称通常受到长度的限制。符号也没有保存在PLC 中;而是保存在编程计算机和软件中。
描述也可以分配给地址,但是它们也仅保存在软件中。它们提供了有关地址及其功用的其它信息,但仍不可搜索。
随着基于标签的PLC 系统的出现,地址变得更具描述性,并且基于寄存器的地址也被隐藏起来,变成不可见了。根据PLC 的品牌或平台的不同,标签名称具有不同的规则。它们的长度可以是40 个或更多的字符,并可以使用字母数字字符。有些平台允许使用空格,而有些平台则需要使用下划线。
▎ 工厂自动化和过程控制标签命名对于一致性、易于理解和故障排除至关重要。图片来源:Automation Primer
可以下载的标签
标签实际上已下载到PLC 中。它们也可以在标签数据库中按字母或数字顺序组织,这使命名约定很重要。由于可以使用如此多的字符,标签名可以非常具有描述性,并且包含大量信息。同时,带有太多缩写的长标签名可能很难阅读。
诸如AutoMode、AutoCycle、Faul t或CycleStop 之类的常用功能或术语在行业中很常见,不需要很多额外信息。系统或机器可能分为区域或站,并标签为Zone2,Cell15 或Station003,这些标签可能需要更多文档或说明。
用户自定义数据类型(UDT)由于允许使用“点”连接,因此使标签变得更加复杂,例如“VFDrive2100.ActualSpeed”。嵌套UDT 允许使用上述标签。
标签模板
大型公司、机器制造商和系统集成商,通常会准备一个用于编程的模板,该模板给出了如何命名标签。在模板程序中已经创建了许多常用标签,而其它标签名则可通过电子表格自动生成。各个公司使用的规则会有所不同,但目的是相同的:使程序更具可读性,更易于排除故障。
标签命名规则主要分为两个部分:工厂自动化和过程控制标签。在汽车以及其它制造业中,设备通常由其功能和位置来命名。通常情况下,它们还包括该设备在电气图纸中所处页面和行的参考数字。例如“PalletPushCyl_ ExtPX_4120”。该标签由组件(托盘推杆油缸)、设备及其位置(扩展接近开关)以及电气图纸中的位置组成。
工厂自动化标签缩写
工厂自动化设备通常用以下缩写表示:
• 光电传感器:PE,PEC,PER
• 接近式开关/ 霍尔传感器:PX,PRX
• 限位开关:LS
• 主控制继电器:MCR
• 按钮:PB,hPB(HMI)
• 开关:SW
• 电磁阀:SV
• 控制继电器:CR,K
• 电机启动器:MS
第二个规则来自于过程控制行业,例如石油或化学加工。他们的技术人员利用过程和仪表图(P&ID)。ISA 支持这些编码准则,但是各个公司可能有所不同。
这些图纸将装置编号分配给诸如水箱或滑轨之类的组件,并将回路编号赋予不同的控制组件,例如仪表和传感器。
由于设备名称是受控的,因此过程工业中的标签名称仅包含P&ID 号,而不是工厂自动化中使用的更具描述性的方法。这些名称与离散制造业中使用的标签名称完全不同。
例如,流量变送器可能被命名为20-FT-1982-A,其中区域代号为20,FT 是传感器的类型,1982 是回路号,A 表示另外至少还有一个冗余设备。由于在许多平台上,标签都不能以数字开头,因此字符的顺序可能会更改,或者在单元号之前可能会附加字母。例如,上面设备的标签可能是FT_20_1982A或d20_FT_1982A。这类标签可能不像离散制造中业使用的标签那样具有描述性,但可以增加“装置20 中1982 回路的流量变送器A”的说明。
过程控制标签缩写
过程控制设备可能使用下列标签名称:
• 流量变送器:FT
• 阀门:HV,FV
• 限位开关:LSL(低),LSH(高)
• 回路控制:FIC,PIC
• 按钮/ 开关:HS,HIS
• 光电眼,接近开关:ZS
• 电机启动器:M
• 压力变送器:PT,PIT。
创建标签名时,首先需要记住的是,要把技术人员或维护人员当做客户一样对待。帮助别人找到并理解代码,是程序员的首要职责。
5个标签和地址命名建议
设备或装置标签名称的命名规则很重要,有助于理解并加快故障排除速度。在决定标签名称模板或规则时,需要考虑以下5个建议:
1. 使名称尽可能描述标签的功能。使用技术人员容易理解的标准化术语和缩写。如有必要,添加说明。
2. 标签按字母和数字顺序显示,对相同功能或区域,使用相同的字母/ 数字开头的标签,对于组织顺序很重要。
3. 如有必要,请使用下划线或大写字母来使标签更具可读性。
4. 如果软件平台允许使用本地标签,请在将其复制到复用程序之前,为特定程序集或程序分配所有标签。这样可以节省很多时间。
5. 使用电子表格创建标签。这比手动在数据库中键入标签要容易得多。标签可以更容易地添加和复制数据。PLC 平台允许轻松导出/ 导入标签。这也可以确保程序员所使用的标签与电气和机械设计师所使用的相同。
关键概念:
■ 标签命名规则可能因PLC 的品牌而异。
■ 工厂自动化、过程控制标签名称缩写。
■ 在设计决策时,5个标签命名技巧会有所帮助。
思考一下:
哪些标签命名的最佳实践可以使您的编程工作更加顺利?
相关问答
PLC编程语言有哪三个?
1、PLC有五种标准化编程语言顺序功能图(SFC)、梯形图(LD)、功能模块图(FBD)三种图形化语言和语句表(IL)、结构文本(ST)两种文本语言,最常用的两种编程...1、P...
plc编程语言有哪些?
1、梯形图语言(LD)梯形图语言是PLC程序设计中最常用的编程语言。它是与继电器线路类似的一种编程语言。由于电气设计人员对继电器控制较为熟悉,因此,梯形图...
PLC集中控制方式的特点?
plc控制系统集中控制的特点1、使用方便,编程简单采用简明的梯形图、逻辑图或语句表等编程语言,而无需计算机知识,因此系统开发周期短,现场调试容易...4、可...
plc特点?
2.体积小、重量轻、功耗低、维护方便PLC是将微电子技术应用于工业设备的产品,其结构紧凑,坚固,体积小,重量轻,功耗低。3.通用性强,控制程序可变,使用方便PL...
西门子系列的S7-200CPU224的PLC它是多少位的
深圳精展达高工0755-33181913.13480903564做西门子PLC和变频器以及全新的7寸和...地址在上海市松江区松乐路128号月厦新天地1021室,西门子s7200cpu224是比较好...
三菱plc编程,用什么语言比较好?
三菱plc编程,用什么语言比较好没有最好的编程语言,只有更合适的!三菱PLC的编程语言有指令表、梯形图、步进SFC、结构文本ST、结构化梯形图FBD几种,每种编程...
单片机编程和PLC编程有什么区别?
一、区别:1、PLC是建立在单片机之上的产品,单片机是一种可编程的集成芯片。2、plc就是由单片机加上外围电路做成的,单片机开发式底层开发,程序编写用汇编...
西门子plc中字节,字,双字各能存储多少个数字?
最少得1个字可以存1个数据,其占用的存储空间为16位,去除最高位符号位,其存储的数据为负2的15次方到正2的15次方减一。西门子PLC:德国西门子(SIEMENS)公司生...
西门子PLCL#-100数据意义?
德国西门子(SIEMENS)公司生产的可编程序控制器在我国的应用也相当广泛,在冶金、化工、印刷生产线等领域都有应用。西门子(SIEMENS)公司的PLC产品包括LOGO、S7-...
TS/16949审核表中ET,PT,SOP表示什么意思-bAseza53y3的回...
DearHRLeadership:Hello!Recentlylearnedthatyourcompanyisrecruitingapostproductionengineer,Iwouldl...