企业资质

厦门哲讯电气自动化有限公司

普通会员7
|
企业等级:普通会员
经营模式:
所在地区:福建 厦门
联系卖家:
手机号码:
企业地址:
企业概况

厦门哲讯电气自动化有限公司是一家专业提供工业自动化领域的备件服务商,产品品种齐全、价格合理,公司实力雄厚,重信用、守合同、保证产品质量,以多品种经营特色和薄利多销的原则,赢得了广大客户的信任。我们主营PLC可编程控制器模块,DCS卡件,ESD系统卡件,振动监测系统卡件,汽轮机控制系统模块,燃气发电机......

WOODWARD 9905-387

产品编号:840979809                    更新时间:2019-08-13
价格: 来电议定

厦门哲讯电气自动化有限公司

联系人名片:

联系时务必告知是在"产品网"看到的

产品详情

WOODWARD  9905-387

WOODWARD  9905-387

WOODWARD  9905-387

  面向对象编程是计算机***语言的一种***的编程模式,在工业控制系统的PLC程序中也可以采用这种设计思想,虽然我们无法实现面向对象的很多***特点如“继承”,甚至于它根本就不具备面向对象编程语言的特点,但面向对象编程的基本概念就是类和类的实例(即对象),我们只需要使用这种概念就可以了。在计算机编程中我们需要把一些事物抽象和归纳,才能编写类,而在工业控制系统中,控制对象如:电机,阀等等是很明显的控制类别,不需要抽象就可以很明显的针对它们编写类,以下将会用到西门子的Step7编程语言和施奈德的Unity编程语言来讲解PLC的面向对象编程。

    一、实现方式

    面向对象编程在Step7中使用功能块(即FB)编程,一谈到此大家就会想到西门子提出的模块化编程,不错,就是这个模块化编程,但西门子提出的模块化、背景数据块、多重背景等名词并不能让大家很明白的理解和使用这种***的设计理念。如果大家从面向对象编程的角度去理解,则可以很好的理解这种设计模式。“FB块”被看成“类”,它可以被看成是对相似的控制对象的代码归纳,如对MM440的变频器可以编写FB块:MtrMM440,这在面向对象编程中称为“类”,当需要编程控制具体的电机时,可以给它分配一个背景DB块,在面向对象编程中称为类的实现(即创建类的实例:对象),当需要控制多个电机时,可以分配不同的背景DB到这个FB块,即创建类的多个实例。Step7中有另外一种程序块,即FC块,以FC块为主的编程在西门子中称为结构化编程,这也可以类比于计算机编程中的面向过程编程,即纯粹以函数为主体的编程。

    施奈德的Unity软件编程可以更好的理解面向对象编程。它的DFB定义中包含输入/输出参数,私有/共有变量,以及代码实现,而这正是计算机的面向对象编程中“类”的基本元素,而创建类的实例(对象)就像创建普通的“布尔”变量一样,只需在“FunctionBlocks”中定义这种“类”的变量即可。

    Step7和Unity都可以采用面向过程和面向对象编程方式,这两种编程方式的区别类似于计算机***语言中的C语言和C++语言编程的区别。

    以下的讲解将会把Step7中的FB和Unity中的DFB称为“类”,Step7中的FB+背景DB以及Unity中DFB的实例称为“对象”。

    二、面向对象编程架构

    以上讲解的是实现细节,而编程思想是建立在程序架构上的,不是某个局部使用了面向对象方式,则可以称之为这种编程就是面向对象编程。这种编程需要从以下方面着手:

    1、电路设计的结构化。

    这里主要以自动线为主介绍,对于单机机床可以是它的简化结构,

    、自动线层:这是***高层次,它拥有一个主PLC,对属于它下面的各区域控制

    、工程层:拥有***的配送电系统,但没有PLC,只有分布式模块,由自动线控制。顾名思义,它有着较大的***性,可以作为一个单独的工程项目设计和制造,当自动线比较小时,可以省略该层次。

    、功能组层:根据工艺划分,将实现某一个工艺功能的区段设备划分为一个功能组,它隶属于工程层,当工程层被省略时,隶属于自动线层。

    面向对象编程并不一定要求使用以上的结构,但好的电气结构更利于面向对象编程。

    2、任何控制对象逻辑都在“类”中实现。

    为了做到这点,必须分析与控制对象相关的信息,譬如,对于一个电机,有以下相关的信息需要考虑:

    输入信息:

    、电路保护信息,如电机的空气开关,热继电器等。

    、功能保护信息,如运动电机的限位开关,风机的风压开关,油泵的油位开关等。

    、启动和终止条件,以上的电路保护和功能保护都可能导致电机运转终止,复位也可能导致重启动,但这里的条件指的是正常运行的启动和终止条件,譬如顺序控制的流程步。

    、控制模式:如手动和自动等。

    、故障复位:通过复位信息,重新启动。

    输出信息:

    、控制输出,如控制电机的主接触器。

    、状态信息输出

    、故障输出

    .........

    状态储存信息:

    用于代码实现的中间变量以及可以被人机界面读出的状态变量等

    把以上信息都整合到一个类中,并尽量使类的参数标准化。不过,同***编程语言还是曾在一些差别,针对Step7,应该遵循的标准是:程序结构由FC实现,对象控制由FB实现,如下的一种结构体系(其电气结构来自上面的介绍):这只不过是一个粗略的PLC程序架构体系,好的架构应该更完善和科学。

    3、规划好数据结构

    数据结构的定义相当重要,并尽量统一这些结构,不要顾虑存储空间,当今的PLC内存足以容纳大量的数据。说明一点的是在Step7中尽量不要在类的外部定义数据结构(UDT),而是在类里面定义,虽然会造成不同类中同一结构的重复性定义,但却提高了类的***性。

    三、优越性

    1、标准化

    使用这种设计模式,可以将程序设计分为两个阶段,即标准库、基本架构开发,以及实际应用层面设计。其中标准库、基本架构是制定程序标准化的基础,而应用层设计是针对具体的控制工程编程,这样可以把程序设计人员分成两类,一类是标准开发,由***程序员负责,一类是应用设计(其中程序调试规划到应用设计),由经过标准化培训的一般程序员完成,通过这种分配就可以解决中国工业自动化中面临的尴尬局面。传统的中国控制工业,一个程序设计由一个人完成,这样他还必须负责现场调试,而拥有丰富经验的程序员一般是三十岁后,这时他已经成家,而显然长期出差对家庭不利,很多***的程序员为了家庭考虑不得不改行,要么转到管理岗位,要么去制造工厂搞设备维护,这是资源的严重流失。毫无疑问,使用以上的设计流程,我么可以让经验丰富的程序员搞标准库和架构的设计,而让刚踏入这个行业的年轻人搞应用设计和调试,这不仅可以让老程序员继续他自己的工作,而不影响家庭,也可以让年轻的程序员参入现场调试,培养自己的经验,提高自己的收入。

    这可能让某些人士担心,认为年轻的程序员可以参加现场的调试吗?可以肯定的是没有标准化支撑的程序不仅年轻的程序员编不出来,而且现场调试会问题多多。但有了好的标准化后,一年半以上工作经验的程序员就应该能够***面对自动线。

    PLC中的面向对象编程的核心就是黑匣子编程,针对Step7,我们使用FB去实现每一个对象的控制,控制逻辑、报警处理、信号交换全在FB中,对于应用设计人员,不需要明白里面的代码实现,只需要了解该FB的功能以及如何使用好它就行,这样对于应用程序人员的编程能力要求大大降低,对于编程只不过是遵循架构,拷贝代码,改变输入输出条件而已。

    那么调试呢?很多人认为使用FB编程的***烦就是FB的多次调用后,根本无法诊断这些代码,从技术层面上讲确实如此,我们除了从背景DB上查看信息外,是无法在它多次被调用后监控代码的,但我已说过,这是黑匣子编程,我们不需要诊断这些代码,只需要知道什么样的输入、什么样的参数设定导致什么样的输出就行,代码的逻辑与功能好坏是由标准库开发人员负责的,这就要求标准开发人员需要对他设计的功能块在不同条件下进行不同的测试,保证无误,还需要编写完整、详尽的功能说明文档,以便于应用设计人员了解这些块,标准架构并不是制定出来就一劳永逸的,针对千变万化的工程,它是需要不断完善和修订的,这也是一个工程公司可以实实在在进行知识积累的地方。

    程序不仅需要给调试人员使用,而且用户(设备维护人员)也需要了解,如果把完整的标准库文档给用户,可能曾在技术外泄的可能,若不给,对他们诊断设备可能曾在困难,这就需要标准制定人员

制作另外一分文档,即设备维护文档,其知识的透漏以用户能够使用程序进行诊断为限。

1784-PCIC
1784-PKTX
1786-TPS
1786-XT
1794-IB16
1794-PS3
1C31129G03/1C31132G01
1C31224G01/1C31227G01
1C31234G01/1C31238H01
5X00070G04/1C31116G04
5X00119G01/5X00121G01
CH-1290
140CPS21400
1179BX12CR14VS364
HE693PBM101F
IC200GBI001-BF
IC200PWR001D
IC693MDL231
M3AA200MLA
6ES5246-4UB21
XC5000-400&plu***n;2X5%/230
AK-BX553
6***6647-0AE11-3AX0
972-0DP01
972-0DP10
1771-IBD
1771-OBD
1771-P6S
1785-L11B
DS200TBQCG1ABB
DS200TCTGG1A
DS200TBQCG1ABB
DS200TCTGG1A
NRG05-D240AC-4Q
A16B-1212-0950
IC200CPU002
KR-210AU
KR-A55MS
IC693APU301
1747-L532
SST-1500-105
SDCS-FIS-31
 1179BX12CR14VS364
SDCS-FIS-31
AKM43G-ACSN2-02
SERVOSTAR 400-A
808 PCI
PPC5C-AAC-AGBA-BBB-FO
SGMPH-01A1A-YR22
A-06B-6079-H104
TKL4V4610
1C31129G03/1C31132G01
1C31224B01/1C31227G01
1C31234G01/1C31238H01
5X00070G04/1C31116G04
5X00119G01/5X00121G01
1746-A10
1746-A13
1746-A7
1746-C9
1747-CP3
IS215UCVEM06A
E5CS-R1KJ
1746-IB16
1746-N14
1746-OB16E
1746-P3
UDK5128NW
1336-SN-SP16A
SCPSD-250-04-17
IC698CMX016
IC698PSA350
A16B-3200-0260
MP3101
PI3381
ATV312HU22N4
1FK6081-6AF71-1ZZ9-ZS47
VAP025
V18345-1010521001
6ES7331-7KF02-0AB0
3HAC023195-001/02
LS803D ML:420MM ID:20908923
SSN-BG89A
SSN-BG89D
3HAC033203-001
3HAC033234-001
3HAC14550-4
6ES74143XM050AB0
MDX61B0075-5A3-4-00
JEPMC-AN210
MP3101
PI3381
ENRZ-DU10
1746-IB16
1746-NI8
1761-L10BWA
919C70100
61CFS300R12KE3
AGDR-71C
 LT9213A
1794-L33
86142B
FHA-40C-100-E250
HA-655(675)-4-200
1C31194G01
1C31197G01
RMIO-01
LQ104V1DG51
PS-M06D12S5-NJ1L(S)
1756-ENBT
1756-L61
1756-PA72
HFD3070
MR-H500ACN
1C31194G01
1C31197G01
SGMG-30A2AB
SGMG-44A2AB
SGMG-75A2AB
AINT-14C
FS450R12KE3/AGDR-71C
A860-2005-T301
MP3101
PI3381
6ES7972-0AA02-0XA0
6GK1100-2AB00
6GK1102-6AA00
1756-CNB
1756-ENBT
1756-L61
1756-PA72
SST-PB3-CLX-RLL
FBM204
M3707
CP303250
CL223E 3
1756-OB32/A
460K78.00
DI801
DO801
MP3101
PI3381
NC 80C
PC250
22A-A4P5N104
1756-AP75
1770-XYC
51402645-200
IC698CHS017
IC698CRE030
1771SC-OMI16
IC693MDL231
IC693MDL330
A06B-6102-H222#H520
PCI-2727A
140CPU67160
TSXMRPC007M
UNITY PRO程序软件
XVME-653
VT3000-S35-R5
1756-CNB/E
1756-L61/B
ACS800-01-0100--+P901
ACS800-04-0075-3+P901
ERK15U-1212
31C110-503-4-00
6FC5411-0AA00-0AA0
1756-HSC
1756-OF8
PFEA112-20
3PS465.9
TCSE***043F2CS0
TSXDMZ28DR
VCP25.2DVN-003-NN-NN-PW
607980-71B
6***6642-0DA01-1AX1
6ES7392-1AM00-0AA0
FBM41
DS200TBQCG1ABB
DS200TCTGG1A
C65N C32 3P
C65N C63 3P
C65N D63 3P
S261-C25
S261-D32
S263-D25
WDP3-014.08-01
607980-71B
RMV04_DP,1827030194-107
3HAC023195-001/04
ER-M-SA
FBM201
FBM203
FBM211
FBM217
FBM237
FBM242
P0916NG
6ES5948-3UA11
6***6643-OBA01-1AXO
1336-BDB-SP30D
1336F-B100-AE-EN
1336-QOUT-SP13A
3BSE009616R1/TC505K03
SICLOCK TM 2XV9450-1AR00
P0916JP
1336-B100-AE-EN-L6
1336-BDB-SP30D
1336-QOUT-SP13A
SC902-001-01
IMDS014
 5SDF0260D0001
HWS1500-24
AEC800-04-0440-3+E208+ON664+OH253
DSQC539
140CPU67160
P0916JP
SC902-001-01
FR-DU04
2711-T10G20L1
1606-XLS80E
1756-CNB
1756-ENBT
1756-L61
1756-PA72
P0916JP
140CRA93100
CU211
PS242
CPU725L
6FX1138-5BB04
HMCPJ250W5L
P0916JP
***P-E200-A C8451-A1-A191
***P-E208-A1 C8451-A12-A1
***P-E217 C8451-A12-A8-3
05146549-5501
4495
GX 550
EXTER T70
6SN1146-1BB02-0CA1
QT100
PS000电源
A06B-0856-B100
1756-CNB
1756-OB32
1768-ENBT
1769-OF8V
MPL-B320P-MJ22AA
1756-OW16I
1747-L532
2711-K5A3
6EW1810-3AA
UGRMEM-01SNQ12
MC-4/11/10/400
D4-32ND3-1
D4-DCM
1793-IE4S
P081000000GG(含电源IPM02)
P0914SV
P0926EQ
P0973JP
R2600D
1746-IB16
UGQMEM-01SNQ22
503956-62
DR2-04AC
IC200MDL940E
IC695ETM001
IC695PBM300
IC697ALG320
IC697BEM713
IC697BEM733
IC697MDL750
FW-V10-3.0K
57160001-AAA DSDI 110A
DSDO110 57160001-K
22D-D017N104
22F-D6PON103
22P-D142A103
P0916JP
8753ES
TC-FTEB01
1756-ENBT
2330
2330A
MSR138DP
AT-034-1024
A06B-0227-B101
A06B-0227-B101
B2600
3510
***B-600B
1775T-PMPP-1700
1C31129G03/1C31132G01
1C31224G01/1C31227G01
1C31234G01/1C31238H01
5X00070G04/1C31116G04
5X00119G01/5X00121G01
卡槽
UZBA-B
1771SC-0MI16
DSDP 150
ACS510-01-157A-4
DCS800-S01-1500-05
DCS800-S02-0025-04
DCS800-S02-0450-04
1756-PB72
57***04C
2711-K10C8
PCR-1820
140ACI03000
140ACO13000
140CPS11420
140CPU67160
140CRA93200
140CRP93200
140DDI84100
140DDO84300
140EHC20200
140NOE77101
140XBP00600
140XBP01600
140XTS00200
879DEX-G1
140CPU67160
7兆存储卡
UNITY PRO
ABL7RP2405
P0914SV
P0926EQ
P0973JP
PK564-NA-A33
PM450CLA120
3HAC033163-001
3HAC033182-001
3HAC033207-001
6***6643-0CD01-1AX1
6SL3255-0AA00-4BA1
IC693CPU374
A03B-0807-C154
KUAX 6801 V.24
ACS800-01-0025-3+P901
ACS800-01-0030-3+P901
ACS800-01-0040-3+P901
ACS800-01-0050-3+P901
HD22010-3
VI8345-2022421001
IC693ALG223
IC695CPU310
IC695LRE001
1771-IXE
IC693MDL655
6ES5318-8MB12
6ES5318-8MB13
140ARI03010
PCS100FZ
253B-1-40-1
31C110-503-4-00
610859-B21
1756-ENBT
1756-IB32
1756-L62
1756-OB32
A20B-8200-0545
5136-RE2-PCI
1756-IB16ISOE
1756-IF16
1756-IR6I/A
1756-L61
1756-OB16I
1771-IXE/D
IC697BEM733
IC697CGR935
IC697BEM733
IC697CGR935
8MSA7L R0-D9
140CRA93200
140CRP93200
140NOE77101
CACR-UP50AAB
TSX AEY1600
TSX ASY410
TSX DEY16D2
TSX P572634M
TSX PSY2600M
TSXMRPC003M
PU515A
A0810 V2 0.2毫安
D0810 24V 0.5A
ACS510-01-07A2-4 3KW
ACS510-01-180A-4 90KW
ACS550-01-125A-4 55KW
JAMSC-C8110
45C220B
1010-01088
 PIC A413171
IRB 4400/60
RVS-DN310
A06B-6087-H137
TSX08CD12R8AS
IPM02 P0904HA
SA-G01-C5-C1-11
SA-G01-C6-C1-11
1394C-AM03
1394C-AM04
1394C-AM07
RM5G-4005
IC697CGR935
 PCR-1820
***12A-MAD02

厦门哲讯电气自动化有限公司电话:传真:联系人:

地址:主营产品:PLC可编程控制器模块,DCS卡件,ESD系统卡件,振动监测...

Copyright © 2025 版权所有: 产品网店铺主体:厦门哲讯电气自动化有限公司

免责声明:以上所展示的信息由企业自行提供,内容的真实性、准确性和合法性由发布企业负责。产品网对此不承担任何保证责任。