ABB MB510 编程模块
面向对象编程是计算机高级语言的一种先进的编程模式,在工业控制系统的PLC程序中也可以采用这种设计思想,虽然我们无法实现面向对象的很多优秀特点如“继承”,甚至于它根本就不具备面向对象编程语言的特点,但面向对象编程的基本概念就是类和类的实例(即对象),我们只需要使用这种概念就可以了。在计算机编程中我们需要把一些事物抽象和归纳,才能编写类,而在工业控制系统中,控制对象如:电机,阀等等是很明显的控制类别,不需要抽象就可以很明显的针对它们编写类,以下将会用到西门子的Step7编程语言和施奈德的Unity编程语言来讲解PLC的面向对象编程。面向对象编程在Step7中使用功能块(即FB)编程,一谈到此大家就会想到西门子提出的模块化编程,不错,就是这个模块化编程,但西门子提出的模块化、背景数据块、多重背景等名词并不能让大家很明白的理解和使用这种优秀的设计理念。如果大家从面向对象编程的角度去理解,则可以很好的理解这种设计模式。“FB块”被看成“类”,它可以被看成是对相似的控制对象的代码归纳,如对MM440的变频器可以编写FB块:MtrMM440,这在面向对象编程中称为“类”,当需要编程控制具体的电机时
,可以给它分配一个背景DB块,在面向对象编程中称为类的实现(即创建类的实例:对象),当需要控制多个电机时,可以分配不同的背景DB到这个FB块,即创建类的多个实例。Step7中有另外一种程序块,即FC块,以FC块为主的编程在西门子中称为结构化编程,这也可以类比于计算机编程中的面向过程编程,即纯粹以函数为主体的编程。使用这种设计模式,可以将程序设计分为两个阶段,即标准库、基本架构开发,以及实际应用层面设计。其中标准库、基本架构是制定程序标准化的基础,而应用层设计是针对具体的控制工程编程,这样可以把程序设计人员分成两类,一类是标准开发,由资深程序员负责,一类是应用设计(其中程序调试规划到应用设计),由经过标准化培训的一般程序员完成,通过这种分配就可以解决中国工业自动化中面临的尴尬局面。传统的中国控制工业,一个程序设计由一个人完成,这样他还必须负责现场调试,而拥有丰富经验的程序员一般是三十岁后,这时他已经成家,而显然长期出差对家庭不利,很多优秀的程序员为了家庭考虑不得不改行,要么转到管理岗位,要么去制造工厂搞设备维护,这是资源的严重流失。毫无疑问,使用以上的设计流程,我么可以让经验丰富的程序员搞标准库和架构的设计,而让刚踏入这个行业的年轻人搞应用设计和调试,这不仅可以让老程序员继续他自己的工作,而不影响家庭,也可以让年轻的程序员参入现场调试,培养自己的经验,提高自己的收入。
125840-01
133323-01
125720-01
500/25 149369-01
149369-01
3500/25
3500/90 125728-01
125728-01
3500/90
3500/32 125712-01
125712-01
3500/32
3500/22M 138607-01
138607-01
3500/40 125672-01
125672-01
3500/40
3500/40M 176449-01
176449-01
3500/40M
131178-01
84661-20
PN3500
74712-03-10-02-00
74712-01-10-02-00
9513-XX
3500/61
330105-02-12-10-02-00
330103-00-08-10-02-00
330103-00-15-10-02-00
330130-040-00-CN
330194-13-20-10-00
330104-00-15-10-02-CN
330910-05-09-10-01-CN
330104-05-10-10-02-CN
330104-00-15-10-02-05
330130-040-01-00
330130-040-01-05
330190-040-01-00
9200-06-01-10-00
330130-085-00-05
330101-00-48-10-02-05
330130-080-01-00
330730-080-00-00
330103-080-00-00
330851-02-000-070-50-00-05
990-05-50-02-00
21000-16-10-00-256-13-02
330703-000-060-10-02-00
330103-00-04-10-02-00
330500-02-00