IC660BBS102控制器
IC660BBS102控制器
IC660BBS102控制器

1.某些国外的小型PLC的程序结构
这些PLC的用户程序由主程序、子程序和中断程序组成。在每一个扫描循环周期,CPU都要调用一次主程序。主程序可以调用子程序,小型控制系统可以只有主程序。中断程序用于快速响应中断事件。在中断事件发生时,CPU将停止执行当时正在处理的程序或任务,去执行用户编写的中断程序。执行完中断程序后,继续执行被暂停执行的程序或任务。它们的子程序和中断程序没有局部变量,子程序没有输入、输出参数。
2.西门子的S7-200的程序结构
过程映像输入/输出(I/Q)、变量存储器V、内部存储器位M、定时器T、计数器C等属于全局变量。S7-200的程序***单元(ProgramOrganizationalUnit,简称为POU)包括主程序、子程序和中断程序。每个POU均有自己的64字节局部变量,局部变量只能在它所在的POU中使用。与此相反,全局变量可以在各POU中使用。
下面是子程序可以使用的局部变量:
1)TEMP(临时变量)是暂时保存在局部数据区中的变量。只有在执行该POU时,定义的临时变量才被使用,POU执行完后,不再保存临时变量的数值。
2)IN是由调用它的POU提供的输入参数。
3)OUT是返回给调用它的POU的输出参数(子程序的执行结果)。
4)IN_OUT是输入_输出参数,其初始值由调用它的POU传送给子程序,并用同一变量将子程序的执行结果返回给调用它的POU。
主程序和中断程序的局部变量中只有临时变量TEMP。
具有输入、输出参数和局部变量的子程序易于实现结构化编程,对于长期生产同类设备或生产线的厂家尤为有用。这些厂家的编程人员为设备的各组件或工艺功能编写了大量的通用的子程序。即使不知道子程序的内部代码,只要知道子程序的功能和输入、输出参数的意义,就可以通过程序之间的调用快速“组装”出满足不同用户要求的控制程序。就好像用数字集成电路芯片组成复杂的数字电路一样。
子程序如果没有输入、输出参数,它和调用它的程序之间没有清晰的接口,很难实现结构化编程。
子程序如果没有局部变量,它和调用它的程序之间只能通过全局变量来交换数据,子程序内部也只能使用全局变量。将子程序和中断程序移植到别的项目时,需要重新统一安排它们使用的全局变量,以保证不会出现地址冲突。当程序很复杂,子程序和中断程序很多时,这种重新分配地址的工作量非常大。
如果子程序和中断程序有局部变量,并且它们内部只使用局部变量,不使用全局变量,因为与其他POU没有地址冲突,不需作任何改动,就可以将子程序移植到别的项目中去。
3.西门子的S7-300/400的程序结构
S7-300/400将子程序分为功能(Function,或称为函数)和功能块(FunctionBlock)。
S7-300/400的功能与S7-200的子程序基本上相同。它们均有输入、输出参数和临时变量,功能的局部数据中的返回值实际上属于输出参数。它们没有专用的存储区,功能执行结束后,不再保存临时变量中的数据。
可以用全局变量来保存那些在功能执行结束后需要保存的数据,但是会影响到功能的可移植性。
功能块是用户编写的有自己专用的存储区(即背景数据块)的程序块,功能块的输入、输出参数和静态变量存放在的背景数据块中,临时变量存储在局部数据堆栈中。每次调用功能块时,都要一个背景数据块。功能块执行完后,背景数据块中的数据不会丢失,但是不会保存局部数据堆栈中的数据。
功能块采用了类似于C++的封装的概念,将程序和数据封装在一起,具有很好的可移植性。
S7-300/400的共享数据块可供所有的逻辑块使用。
4.IEC61131-3的程序结构
IEC61131-3是PLC的编程语言标准。IEC61131-3是世界上个,也是至今为止的工业控制领域的编程语言标准。IEC
61131-3有三种POU:程序、功能块和功能。
功能是有多个输入参数和一个输出参数(返回值)的POU,返回值的名称与功能的名称相同,需要定义返回值的数据类型。调用具
有相同输入值的功能总是返回相同的结果。功能可以调用其他功能,但是不能调用功能块或程序。功能可定义的局部变量有VAR和VAR_INPUT。
功能块是有多个输入/输出参数和内部存储单元的POU,功能块的输出参数值与其内部存储单元的值有关。功能块可以调用其他功能
块或功能,但是不能调用程序。
在调用功能块之前,必须在要调用功能块的POU中为每次调用声明功能块的实例,操作系统将为每次调用分配功能块专用的存储区
(类似于S7-300/400的背景数据块)。
功能因为没有内部存储区,调用时不需要实例化。
程序的行为和用途类似于功能块,程序具有输入和输出参数,而且可以具有内部存储区。程序通常包含有对功能和功能块的调用。
IEC61131-3定义了若干标准的功能和功能块。
5.S7-300/400与IEC61131-3程序结构的区别
1)S7-300/400的功能可以有多个输出参数,返回值也属于输出参数。IEC61131-3的功能只有一个返回值。
2)IEC61131-3的功能块用于保存局部变量的专用存储区是在声明功能块的实例时分配的,它对用户是不透明的,其他POU不能直接访问该存储区。
S7-300/400的功能块的局部变量(不包括临时变量)保存在它的背景数据块中。其他POU可以访问背景数据块中的变量。如果需要多次调用同一个功能块来控制同一类型的被控对象,每次调用都需要一个背景数据块,但是这些背景数据块中的变量又很少,这样在项目中就出现了大量的背景数据块。可以使用多重背景数据块来减少背景数据块的数量。但是需要增加一个用来管理多重背景的功能块。
3)S7-300/400的功能块的局部变量有临时变量和静态变量,IEC61131-3的功能块的内部变量Var相当于S7-300/400的静态变量。
4)S7-300/400将数据区划分为数据块来使用,数据块的大小与数据块中定义的变量的数据类型和变量的个数有关。IEC61131-3没有数据块的概念。
ASEA BROWN BOVERI DSQC-314A USPP DSQC314A
ALLEN BRADLEY 20AD027F0AYNANC0 USPP 20AD027F0AYNANC0
GENERAL ELECTRIC 193W-279AAG03 USPP 193W279AAG03
Panasonic M***022A1A AC Servo Motor New in Box Free Ship
TEXAS INSTRUMENTS PLC 505-7354 NSPP 5057354
New in Box 530T-1112 Siemens/Texas Instruments TI PLC Processor 530T1112 N787
Expedited shipping ailable
MITSUBISHI SJ-4-V7.5-11T NSFP SJ4V7511T
ASEA BROWN BOVERI M3AA-100-LB-4 NSFP M3AA100LB4
PACIFIC SCIENTIFIC S31GNAA-RNNM-00 USPP S31GNAARNNM00
ASEA BROWN BOVERI SAFT-166-APC USPP SAFT166APC
MITSUBISHI MDS-A-CR-55 USPP MDSACR55
ASEA BROWN BOVERI 57360001-K/10 USPP 57360001K10
PHOENIX CONTACT IBS-PLC5-DSC/I-T NSFP IBSPLC5DSCIT
Panasonic AC Servo Amplifier MUDB042AAD new
NEW PERCEPTRON TRICAM SURFACE SENSOR 912-0037
RELIANCE ELECTRIC 418287-3A USPP 4182873A
PANASONIC MFA024LA2NS AC SERVO MOTOR
TEXAS INSTRUMENTS PLC 500-5020 USPP 5005020
ASEA BROWN BOVERI ACS601-0040-4-000B1200801 USPP ACS60100404000B1
ASEA BROWN BOVERI 57088478 NSFP 57088478
TEXAS INSTRUMENTS PLC 505-6202 NSFP 5056202
TEXAS INSTRUMENTS HIGH SPEED PULSE INPUT MODEL 500-5023
KOLLMORGEN IND BDS4A-203J-0001-202B21P USPP BDS4A203J000120A
Texas Instruments 500-5051 Thermocouple Module 5005051
TEXAS INSTRUMENTS PLC 45AF9106000169 USPP 45AF9106000169
SAFTRONICS CIMR-H11G2-E-10 USPP CIMRH11G2E10
GENERAL ELECTRIC DS3800HIOA1C1E USPP DS3800HIOA1C1E
HEWLETT PACKARD TEST & MEASURE 1645A USPP 1645A
TEXAS INSTRUMENTS PLC 500-2109 USPP 5002109
Panasonic AC Servo Motor ***102P1G Free Ship
TEXAS INSTRUMENTS PLC 505-5190 USPP 5055190
ASEA BROWN BOVERI MK14A-X020 USPP MK14AX020
SAJF// PANASONIC AMKB200B10LAK AC SERVO MOTOR GEAR REDUCTION DRIVE USED
Panasonic Servo Drive MADR04311A New in Box Free Ship
SIEMENS 6ES5-535-3MA12 USPP 6ES55353MA12
Panasonic Servo Driver Amplifier MCDDT3520
Panasonic AC Servo Motor M***021A1BX w/ 60 day warranty
Texas Instruments 305-02B
ASEA BROWN BOVERI 3BSE030230R1 USPP 3BSE030230R1
G UTICOR 76584-32 USPP 7658432
Texas Instruments 530C-1108
SICK OPTIC ELECTRONIC ODC100-P120 USPP ODC100P120
ASEA BROWN BOVERI ACS501-007-4-00P5 USPP ACS501007400P5
Fuji Hensokuki CO Geard Motor MT-9-5.4-002LA Panasonic AC Servo Motor MQMA022P2B
ASEA BROWN BOVERI 57288531 NSPP 57288531
ASEA BROWN BOVERI YB560103-CD/24 USPP YB560103CD24
ASEA BROWN BOVERI ACS601-0006-5-000B1200800 USPP ACS60100065000B1
One Panasonic AC Servo Motor MBMK042BLA Free Ship
ASEA BROWN BOVERI PCS-500FZ USPP PCS500FZ
ALLEN BRADLEY 1772-ME8 USPP 1772ME8
REXROTH HNF01.1A-***00-R0026-A-480-NNNN NSFP HNF011A***00R0026
ASEA BROWN BOVERI S4H250MW-2S4W NSFP S4H250MW2S4W
575-2104 Texas Instruments TI Siemens 5752104 N3
SQUARE D LAF3640032MV1027 USPP LAF3640032MV1027
SIEMANS TEXAS INSTRUMENTS 5057102 505-7102 MODULE
New Panasonic Nachi-Fujikoshi M***082Q3D Servo Motor NIB
One Panasonic AC Servo Driver MSDA023D1A
TEXAS INSTRUMENTS PLC 5TI-5339 USPP 5TI5339
TEXAS INSTRUMENTS PLC 530C-6202 USPP 530C6202
Texas Instruments RTU-T058-T TERMINATION PANEL RTUT058T
"NEW" PANASONIC Servo Motor M***A102A1C CNC/ROUTER
575-2104 Texas Instruments TI Siemens 5752104 N3
IC660BBS102控制器
IC660BBS102控制器

1.某些国外的小型PLC的程序结构
这些PLC的用户程序由主程序、子程序和中断程序组成。在每一个扫描循环周期,CPU都要调用一次主程序。主程序可以调用子程序,小型控制系统可以只有主程序。中断程序用于快速响应中断事件。在中断事件发生时,CPU将停止执行当时正在处理的程序或任务,去执行用户编写的中断程序。执行完中断程序后,继续执行被暂停执行的程序或任务。它们的子程序和中断程序没有局部变量,子程序没有输入、输出参数。
2.西门子的S7-200的程序结构
过程映像输入/输出(I/Q)、变量存储器V、内部存储器位M、定时器T、计数器C等属于全局变量。S7-200的程序***单元(ProgramOrganizationalUnit,简称为POU)包括主程序、子程序和中断程序。每个POU均有自己的64字节局部变量,局部变量只能在它所在的POU中使用。与此相反,全局变量可以在各POU中使用。
下面是子程序可以使用的局部变量:
1)TEMP(临时变量)是暂时保存在局部数据区中的变量。只有在执行该POU时,定义的临时变量才被使用,POU执行完后,不再保存临时变量的数值。
2)IN是由调用它的POU提供的输入参数。
3)OUT是返回给调用它的POU的输出参数(子程序的执行结果)。
4)IN_OUT是输入_输出参数,其初始值由调用它的POU传送给子程序,并用同一变量将子程序的执行结果返回给调用它的POU。
主程序和中断程序的局部变量中只有临时变量TEMP。
具有输入、输出参数和局部变量的子程序易于实现结构化编程,对于长期生产同类设备或生产线的厂家尤为有用。这些厂家的编程人员为设备的各组件或工艺功能编写了大量的通用的子程序。即使不知道子程序的内部代码,只要知道子程序的功能和输入、输出参数的意义,就可以通过程序之间的调用快速“组装”出满足不同用户要求的控制程序。就好像用数字集成电路芯片组成复杂的数字电路一样。
子程序如果没有输入、输出参数,它和调用它的程序之间没有清晰的接口,很难实现结构化编程。
子程序如果没有局部变量,它和调用它的程序之间只能通过全局变量来交换数据,子程序内部也只能使用全局变量。将子程序和中断程序移植到别的项目时,需要重新统一安排它们使用的全局变量,以保证不会出现地址冲突。当程序很复杂,子程序和中断程序很多时,这种重新分配地址的工作量非常大。
如果子程序和中断程序有局部变量,并且它们内部只使用局部变量,不使用全局变量,因为与其他POU没有地址冲突,不需作任何改动,就可以将子程序移植到别的项目中去。
3.西门子的S7-300/400的程序结构
S7-300/400将子程序分为功能(Function,或称为函数)和功能块(FunctionBlock)。
S7-300/400的功能与S7-200的子程序基本上相同。它们均有输入、输出参数和临时变量,功能的局部数据中的返回值实际上属于输出参数。它们没有专用的存储区,功能执行结束后,不再保存临时变量中的数据。
可以用全局变量来保存那些在功能执行结束后需要保存的数据,但是会影响到功能的可移植性。
功能块是用户编写的有自己专用的存储区(即背景数据块)的程序块,功能块的输入、输出参数和静态变量存放在的背景数据块中,临时变量存储在局部数据堆栈中。每次调用功能块时,都要一个背景数据块。功能块执行完后,背景数据块中的数据不会丢失,但是不会保存局部数据堆栈中的数据。
功能块采用了类似于C++的封装的概念,将程序和数据封装在一起,具有很好的可移植性。
S7-300/400的共享数据块可供所有的逻辑块使用。
4.IEC61131-3的程序结构
IEC61131-3是PLC的编程语言标准。IEC61131-3是世界上个,也是至今为止的工业控制领域的编程语言标准。IEC
61131-3有三种POU:程序、功能块和功能。
功能是有多个输入参数和一个输出参数(返回值)的POU,返回值的名称与功能的名称相同,需要定义返回值的数据类型。调用具
有相同输入值的功能总是返回相同的结果。功能可以调用其他功能,但是不能调用功能块或程序。功能可定义的局部变量有VAR和VAR_INPUT。
功能块是有多个输入/输出参数和内部存储单元的POU,功能块的输出参数值与其内部存储单元的值有关。功能块可以调用其他功能
块或功能,但是不能调用程序。
在调用功能块之前,必须在要调用功能块的POU中为每次调用声明功能块的实例,操作系统将为每次调用分配功能块专用的存储区
(类似于S7-300/400的背景数据块)。
功能因为没有内部存储区,调用时不需要实例化。
程序的行为和用途类似于功能块,程序具有输入和输出参数,而且可以具有内部存储区。程序通常包含有对功能和功能块的调用。
IEC61131-3定义了若干标准的功能和功能块。
5.S7-300/400与IEC61131-3程序结构的区别
1)S7-300/400的功能可以有多个输出参数,返回值也属于输出参数。IEC61131-3的功能只有一个返回值。
2)IEC61131-3的功能块用于保存局部变量的专用存储区是在声明功能块的实例时分配的,它对用户是不透明的,其他POU不能直接访问该存储区。
S7-300/400的功能块的局部变量(不包括临时变量)保存在它的背景数据块中。其他POU可以访问背景数据块中的变量。如果需要多次调用同一个功能块来控制同一类型的被控对象,每次调用都需要一个背景数据块,但是这些背景数据块中的变量又很少,这样在项目中就出现了大量的背景数据块。可以使用多重背景数据块来减少背景数据块的数量。但是需要增加一个用来管理多重背景的功能块。
3)S7-300/400的功能块的局部变量有临时变量和静态变量,IEC61131-3的功能块的内部变量Var相当于S7-300/400的静态变量。
4)S7-300/400将数据区划分为数据块来使用,数据块的大小与数据块中定义的变量的数据类型和变量的个数有关。IEC61131-3没有数据块的概念。
ASEA BROWN BOVERI DSQC-314A USPP DSQC314A
ALLEN BRADLEY 20AD027F0AYNANC0 USPP 20AD027F0AYNANC0
GENERAL ELECTRIC 193W-279AAG03 USPP 193W279AAG03
Panasonic M***022A1A AC Servo Motor New in Box Free Ship
TEXAS INSTRUMENTS PLC 505-7354 NSPP 5057354
New in Box 530T-1112 Siemens/Texas Instruments TI PLC Processor 530T1112 N787
Expedited shipping ailable
MITSUBISHI SJ-4-V7.5-11T NSFP SJ4V7511T
ASEA BROWN BOVERI M3AA-100-LB-4 NSFP M3AA100LB4
PACIFIC SCIENTIFIC S31GNAA-RNNM-00 USPP S31GNAARNNM00
ASEA BROWN BOVERI SAFT-166-APC USPP SAFT166APC
MITSUBISHI MDS-A-CR-55 USPP MDSACR55
ASEA BROWN BOVERI 57360001-K/10 USPP 57360001K10
PHOENIX CONTACT IBS-PLC5-DSC/I-T NSFP IBSPLC5DSCIT
Panasonic AC Servo Amplifier MUDB042AAD new
NEW PERCEPTRON TRICAM SURFACE SENSOR 912-0037
RELIANCE ELECTRIC 418287-3A USPP 4182873A
PANASONIC MFA024LA2NS AC SERVO MOTOR
TEXAS INSTRUMENTS PLC 500-5020 USPP 5005020
ASEA BROWN BOVERI ACS601-0040-4-000B1200801 USPP ACS60100404000B1
ASEA BROWN BOVERI 57088478 NSFP 57088478
TEXAS INSTRUMENTS PLC 505-6202 NSFP 5056202
TEXAS INSTRUMENTS HIGH SPEED PULSE INPUT MODEL 500-5023
KOLLMORGEN IND BDS4A-203J-0001-202B21P USPP BDS4A203J000120A
Texas Instruments 500-5051 Thermocouple Module 5005051
TEXAS INSTRUMENTS PLC 45AF9106000169 USPP 45AF9106000169
SAFTRONICS CIMR-H11G2-E-10 USPP CIMRH11G2E10
GENERAL ELECTRIC DS3800HIOA1C1E USPP DS3800HIOA1C1E
HEWLETT PACKARD TEST & MEASURE 1645A USPP 1645A
TEXAS INSTRUMENTS PLC 500-2109 USPP 5002109
Panasonic AC Servo Motor ***102P1G Free Ship
TEXAS INSTRUMENTS PLC 505-5190 USPP 5055190
ASEA BROWN BOVERI MK14A-X020 USPP MK14AX020
SAJF// PANASONIC AMKB200B10LAK AC SERVO MOTOR GEAR REDUCTION DRIVE USED
Panasonic Servo Drive MADR04311A New in Box Free Ship
SIEMENS 6ES5-535-3MA12 USPP 6ES55353MA12
Panasonic Servo Driver Amplifier MCDDT3520
Panasonic AC Servo Motor M***021A1BX w/ 60 day warranty
Texas Instruments 305-02B
ASEA BROWN BOVERI 3BSE030230R1 USPP 3BSE030230R1
G UTICOR 76584-32 USPP 7658432
Texas Instruments 530C-1108
SICK OPTIC ELECTRONIC ODC100-P120 USPP ODC100P120
ASEA BROWN BOVERI ACS501-007-4-00P5 USPP ACS501007400P5
Fuji Hensokuki CO Geard Motor MT-9-5.4-002LA Panasonic AC Servo Motor MQMA022P2B
ASEA BROWN BOVERI 57288531 NSPP 57288531
ASEA BROWN BOVERI YB560103-CD/24 USPP YB560103CD24
ASEA BROWN BOVERI ACS601-0006-5-000B1200800 USPP ACS60100065000B1
One Panasonic AC Servo Motor MBMK042BLA Free Ship
ASEA BROWN BOVERI PCS-500FZ USPP PCS500FZ
ALLEN BRADLEY 1772-ME8 USPP 1772ME8
REXROTH HNF01.1A-***00-R0026-A-480-NNNN NSFP HNF011A***00R0026
ASEA BROWN BOVERI S4H250MW-2S4W NSFP S4H250MW2S4W
575-2104 Texas Instruments TI Siemens 5752104 N3
SQUARE D LAF3640032MV1027 USPP LAF3640032MV1027
SIEMANS TEXAS INSTRUMENTS 5057102 505-7102 MODULE
New Panasonic Nachi-Fujikoshi M***082Q3D Servo Motor NIB
One Panasonic AC Servo Driver MSDA023D1A
TEXAS INSTRUMENTS PLC 5TI-5339 USPP 5TI5339
TEXAS INSTRUMENTS PLC 530C-6202 USPP 530C6202
Texas Instruments RTU-T058-T TERMINATION PANEL RTUT058T
"NEW" PANASONIC Servo Motor M***A102A1C CNC/ROUTER
575-2104 Texas Instruments TI Siemens 5752104 N3