西门子功能块的调用与多重背景数据模型.pptx

上传人:莉*** 文档编号:77379776 上传时间:2023-03-14 格式:PPTX 页数:26 大小:418.33KB
返回 下载 相关 举报
西门子功能块的调用与多重背景数据模型.pptx_第1页
第1页 / 共26页
西门子功能块的调用与多重背景数据模型.pptx_第2页
第2页 / 共26页
点击查看更多>>
资源描述

《西门子功能块的调用与多重背景数据模型.pptx》由会员分享,可在线阅读,更多相关《西门子功能块的调用与多重背景数据模型.pptx(26页珍藏版)》请在得力文库 - 分享文档赚钱的网站上搜索。

1、会计学1西门子功能块的调用与多重背景数据模型西门子功能块的调用与多重背景数据模型用于结构化编程的块用于结构化编程的块n n整个任务的整个任务的n n 模块化模块化:n n单个任务在各自块中单个任务在各自块中予以解决予以解决 n n参数分配法使得参数分配法使得 使用更加灵活使用更加灵活 示例:钻孔循环程序的示例:钻孔循环程序的钻孔深度为可分配参数钻孔深度为可分配参数块的可再利用性能:块的可再利用性能:n n块可以按需要随时块可以按需要随时 加以调用加以调用 n n限制因素:限制因素:不允许访问不允许访问 全局地址空间全局地址空间 只能通过参数列表只能通过参数列表 进行通信进行通信OB 1电机1F

2、B1阀FB2控制器FB10FC 5限制 阀复制SFC.CALL FB1,DB2 Start:=I 0.0 Stop:=I 0.1 Motor_on:=Q12.0 Speed:=QW14.FB 1地址声明名称类型0.0inStartBOOL0.1inStopBOOL2.0outMotor_onBOOL4.0outSpeedINT6.0statSpeed_oldINT0.0tempCalc_1INT.A#StartAN#Stop=#Motor_on.DB 2OB 1第1页/共26页STEP 7 块概述块概述属性组织块(OB)-用户程序接口-优先级(0到27)-在局部数据堆栈中指定开始信息块的类型功

3、能块(FB)-参数可分配(可以在调用时分配参数)-具有(收回)存储空间(静态变量)功能(FC)-参数可分配(必须在调用时分配参数)-基本上没有存储空间(只有临时变量)数据块(DB)-结构化的局部数据存储(背景数据块DB)-结构化的全局数据存储(在整个程序中有效)系统功能块(SFB)-FB(具有存储空间),存储在CPU的操作系统中并可由用户调用系统功能(SFC)-FB(无存储空间),存储在CPU的操作系统中并可由用户调用系统数据块(SDB)-用于配置数据和参数的数据块第2页/共26页功能及功能块中的参数声明功能及功能块中的参数声明MotorENENOStart地址声明名称类型初始化值.0.0输入

4、StartBOOLFALSE0.1输入StopBOOLTRUE2.0输入SpeedINT02.0输出Motor_onBOOLFALSE8.0输出SetpointINT010.0输入/输出 EMER_OFFBOOLFALSE.静态.临时.SetpointEMER_OFFMotor_onStop输入参数输入/输出参数输出参数n n参数是信息传递的通道参数是信息传递的通道n n输入参数:输入参数:Caller-BlockCaller-Blockn n输出参数:输出参数:Block-CallerBlock-Callern n输入输入/输出参数:输出参数:Caller BlockCaller Block

5、参数形成了块的一个参数形成了块的一个“shellshell”:n n参数位于代码段参数位于代码段 与与“局部局部”变量类似变量类似 n n参数可以为任何数据类型参数可以为任何数据类型n n在调用期间进行数据类型检查在调用期间进行数据类型检查n n例外情况:例外情况:POINTERPOINTER,ANYANYn n调用接口与编程语言无关调用接口与编程语言无关n nPLCPLC编程语言可以混合使用编程语言可以混合使用 Speed第3页/共26页功能的属性功能的属性n n参数可分配的块:参数可分配的块:n n具有足够多的输入,输出,输具有足够多的输入,输出,输入入/输出参数输出参数n n无存储区,也

6、即只有临时变量无存储区,也即只有临时变量IEC 61131-3IEC 61131-3标准一致性要求:标准一致性要求:n n足够多的输入参数足够多的输入参数n n仅有一个输出参数仅有一个输出参数RET_VALRET_VALn n不允许访问全局变量和绝对地不允许访问全局变量和绝对地址址n n使用同一输入参数提供相同的使用同一输入参数提供相同的结果结果扩展了处理器的指令集扩展了处理器的指令集程序执行CALL FC10On_1:=I 0.1On_2:=I 0.2Off:=Q8.0功能FC10输入On_1BOOL输入On_2BOOL输出OffBOOL.A#On_1A#On_2=#Off.第4页/共26页

7、基本数据类型传送机理基本数据类型传送机理 OB1功能FC10程序执行CALL FC10On_1:=I 0.1On_2:=I 0.2Off:=Q8.0输入On_1BOOL输入On_2BOOL输出OffBOOL.A#On_1A#On_2=#Off.OB1BLD 1=L 20.0UC FC 10P#I0.1P#I 0.2P#Q 8.0BLD 210010010.IB0n n基本类型实际参数位于于:n n位存储地址位存储地址区域区域n n过程映像过程映像n n调用的局部调用的局部堆栈堆栈块参数 实际参数形式参数第5页/共26页复杂数据类型的功能调用复杂数据类型的功能调用n n示例:向功能传递一个ARR

8、AYDB5 TemperatureFC21只能通过符号来进行参数的赋值Network(段)1:在功能FC21里,声明一个数组Mes_Val CALL FC 21 Mes_Val:=Temperature.sequence第6页/共26页调用(主调调用(主调)功能的特功能的特点点n nCALL指令n n指令为宏指令指令为宏指令n n寄存器内容可能会被覆盖掉,甚寄存器内容可能会被覆盖掉,甚至是至是DBDB寄存器寄存器n n请注意请注意B B堆栈中内容的解释堆栈中内容的解释n n调用之后,可能会打开另一个调用之后,可能会打开另一个DBDBn nCALLCALL指令的处理时间取决于实际指令的处理时间取

9、决于实际参数的数目和存储单元位置参数的数目和存储单元位置n nCALLCALL指令确保了块参数被正确指令确保了块参数被正确地赋予当前数据地赋予当前数据n n示例:示例:n nCALL FC10CALL FC10On_1On_1:=I 0.1:=I 0.1On_2On_2:=I 0.2:=I 0.2OffOff:=Q8.0:=Q8.0n n调用指令UC和CCn n不依赖于不依赖于RLORLO的块调用的块调用(UCUC)或取决于或取决于RLORLO的块调用的块调用n n示例:示例:UC FC20UC FC20或或CC FC20CC FC20n n当当FCFC没有参数的时候,才可使没有参数的时候,才

10、可使用这些指令用这些指令第7页/共26页FB 5输入StartBOOL输入StopBOOL输出Motor_onBOOL输出SpeedINT静态.临时.A#StartAN#Stop=#Motor_on.功能块的属性功能块的属性n n属于可分配参数的块:属于可分配参数的块:n nIEC 61131-3IEC 61131-3标准一致性块标准一致性块n n有足够满足需要的输入,输出,有足够满足需要的输入,输出,输入输入/输出参数输出参数n n有存储区域,即不仅有临时变量有存储区域,即不仅有临时变量而且还有静态变量而且还有静态变量n n使用本身数据区域进行调用使用本身数据区域进行调用(创建背景)创建背景

11、)n n“数据封装数据封装”n n应用:应用:n n定时器和计数器功能定时器和计数器功能n n使用内部状态控制过程设备使用内部状态控制过程设备n n锅炉锅炉n n电机,阀,等等。电机,阀,等等。CALL FB5,DB16 Start:=I 0.0 Stop:=I 0.1 Motor_on:=Q8.0 Speed:=QW120.0StartBOOL0.1StopBOOL2.0Motor_onBOOL4.0SpeedINTDB 16电机第8页/共26页构建构建功能块实例功能块实例Drive_1FBx+DByDrive_1 状态数据 控制算法OB,FB或FC CALL FBx,DBy.l使用背景DB

12、的FB调用CALL#Motor_1.CALL#Motor_2DBx.statMotor_1FBxstatMotor_2FBxDrive_2 状态数据 Drive_3 状态数据FBxFB实例控制算法FBDrive_2Drive_3lFB内的声明(多重背景)第9页/共26页在一个在一个FB调用过程中的参数传递调用过程中的参数传递 OB1 FB10程序执行CALL FB10,DB16Start:=I 0.4Stop:=I 0.0Motor_on:=Q8.1Speed:=QW120.0inStartBOOL0.1inStopBOOL2.0outMotor_onBOOL4.0outSpeedINT.A#

13、StartAN#Stop=#Motor_on.BLD 3=L24.0TDB OPN DI16TAR2LD20AI0.4=DIX0.0AI0.0=DIX0.1LAR2P#DBX 0.0UCFB10LAR2LD 20ADIX 2.0=Q8.1LDIW4TQW12TDB BLD 410010010.IB010010010QB8 DB16.01.1123.块参数实际参数形式参数.第10页/共26页使用复杂数据类型的使用复杂数据类型的FB调用过程调用过程n n示例:将一个ARRAY传送到一个功能块FB17只允许用符号对复杂参数进行相关分配Network 1:CALL FB 17,DB 2 Meas_1:

14、=Temperature.Cylinder Sum_1:=MD20 Sum_2:=MD30 Meas_2:=Temperature.ShaftDB2 Temperature第11页/共26页功能块调用的特性功能块调用的特性n n“按值按值”传递参数(复制数值传递参数(复制数值):):n nCALLCALL过程中过程中FBFB参数的赋值:参数的赋值:n n无需为某些无需为某些FBFB参数赋值参数赋值n n可以从可以从“外部外部”进行赋值和取消赋值进行赋值和取消赋值 例如:直接通过操作面板进行例如:直接通过操作面板进行n n例外:复杂数据类型的输入例外:复杂数据类型的输入/输出参数输出参数(STR

15、UCTSTRUCT,ARRAYARRAY,STRINGSTRING以及以及 DATE_AND_TIMEDATE_AND_TIME)n n初始化:初始化:n nFBFB参数可以在声明部分进行初始化参数可以在声明部分进行初始化n n例外:复杂数据类型的输入例外:复杂数据类型的输入/输出参数输出参数(STRUCTSTRUCT,ARRAYARRAY,STRINGSTRING以及以及 DATE_AND_TIMEDATE_AND_TIME)n n使用使用DIDI和和AR2AR2寄存器在内部访问形式参数寄存器在内部访问形式参数n n如果如果DIDI或者或者AR2AR2寄存器被覆盖,将不再允许访问背景数据。寄

16、存器被覆盖,将不再允许访问背景数据。n n附加调用指令附加调用指令UCUC和和CCCCn n示例:示例:UC FB20UC FB20或者或者CC FB20CC FB20n n只有当只有当FBFB没有背景数据时才能使用没有背景数据时才能使用(参数参数+静态变量静态变量)第12页/共26页 主罐瓶子传感器I 16.6瓶子传感器I 16.5瓶子传感器I 16.7Q 9.0漏斗练习练习6:罐装生产线中的传送带:罐装生产线中的传送带模型模型Q 20.5 传送带正转Q 20.6 传送带反转第13页/共26页练习练习6.1a:罐装生产线罐装生产线 工作模式工作模式选择选择生产线 ON/OFFI 0.0:St

17、art (NO,瞬动开关)I 0.1:Stop (NC)Q8.1:Plant_on手动/自动方式I 0.4:自动/手动I 0.5:确定模式Q8.2:选定手动方式A8.3:选定自动方式FB15:“模式选择ENStart Plant_onStop OM_ManAuto_Man OM_AutoOM_activate ENODB15.I 0.0I 0.1I 0.4I 0.5 Q8.1Q8.2Q8.3第14页/共26页练习练习6.1b:罐装生产线罐装生产线 传送带传送带 手动方式I 0.5:正向点动I 0.6:反向点动Q20.5:传送带正向运转Q20.6:传送带反向运转自动方式I 16.6:传感器:罐装

18、位置I 16.7:传感器:计算瓶数Q9.0:罐装启动QW12:满瓶显示FB16:“传送带控制ENOM_Man OM_AutoConv_forJog_for Conv_backJog_backFilling_activeSensor_fillFull_bottlesSensor_fullENOQ20.5Q20.6Q9.0QW12DB16.Q8.2Q8.3I 0.2I 0.3I 16.6I 16.7第15页/共26页多重背景模型的结构多重背景模型的结构FB10钻床数据FB10的背景DBCALL Drill.CALL Motor_1.CALL Motor_2DB10.statDrillFB1stat

19、Motor_1FB2statMotor_2FB2Motor_1的数据Motor_2的数据FB1FB2钻孔算法马达控制例如 OB1.CALL FB10,DB10.第16页/共26页使用多使用多重背景模型重背景模型实现面向对象实现面向对象的编程的编程Press_2Press_1传送n n示例:冲压生产线技术划分通过FB背景,对程序进行技术划分FB:Press lineFB:#TransportFB:#Press_1冲压头防护装置FB:#PunchFB:#GuardFB:#Press_2FB:#PunchFB:#Guard第17页/共26页用用STEP 7来实现一个来实现一个“冲压生产冲压生产线线”

20、FB10:Press lineFB10的背景DBCALL#Press_1.CALL#Press_2.CALL#TransportDB10.statPress_1FB1statPress_2FB1statTransportFB2.FB1:Press.statPunchFB4statGuardFB5.CALL#Punch.CALL#Guard.statPunchFB4statGuardFB5.CALL#Punch.CALL#Guard.FB2:TransportFB4:PunchFB5:GuardCALL FB10,DB10OB1FB1:PressFB4:PunchFB5:GuardPress_1

21、的数据传送带的数据Press_1.GuardPress_2.PunchPress_2.GuardPress_2的数据FB10的数据Press_1.Punch第18页/共26页多多重背景重背景模型的属性模型的属性n n多重背景模型的优点:n n多个实例只需要多个实例只需要 一个一个 DB DBn n在为各个实例创建在为各个实例创建“private”“private”数据数据区时,无需任何额外的管理工区时,无需任何额外的管理工作作n n多重多重背景背景模型使得模型使得“面向对象面向对象的编程风格的编程风格”成为可能成为可能(通过通过“集合集合”的方式实现可重用性的方式实现可重用性)n n最大嵌套深

22、度为最大嵌套深度为8 8级级n nFB的必备条件:n n在在FBFB内不允许直接访问过程信内不允许直接访问过程信号(号(I I,QQ)n n只有使用只有使用FBFB参数访问过程信号,参数访问过程信号,或者与其它过程单元进行通讯或者与其它过程单元进行通讯n nFBFB只能使用静态变量来记忆其只能使用静态变量来记忆其过程状态,而不使用全局过程状态,而不使用全局DBDB或或者位存储器。者位存储器。n n注意事项:n n背景背景数据还可以从数据还可以从“外部外部”进进行访问行访问 例如在例如在OB1OB1中:中:L Press L Press line.Press_2.Punch.line.Press

23、_2.Punch.第19页/共26页练习练习 6.2:生产线中的传送带模生产线中的传送带模型型H4LED接近开关 INI1,INI2,INI3 光栅 LB1“S4”确认开关n n工位的处理顺序工位的处理顺序n n工件的处理工件的处理n n成形处理成形处理n n向传送带上放置工件向传送带上放置工件n n等待原材料工件等待原材料工件n n从传送带中取原材料工件从传送带中取原材料工件传送带的处理顺序l等待成型的工件l传送到总装线l总装,插入原材料工件l传送到工作站“S1”,“S2”,“S3”确认开关H1,H2,H3LED第20页/共26页练习练习 6.2a:一个工作站的程序结一个工作站的程序结构构程

24、序的技术划分传送带工作站1工作站2工作站3OB1CALL FB1,DB1.CALL FB2,DB2FB1:StationInitial LEDProxy_switch Transp_reqAcknowledge Clock_bit_qClock_bit_sConv_busyDB1M10.1S1INI1I 0.0H1DB2FB2:TransportInitialLEDL_BarrierConv_rightAcknowledgeConv_leftTransp_reqClock_bitH4K1_CONVRK2_CONVLI 0.0LB1S4M10.1M10.3第21页/共26页FB1“Station

25、”的工作原理的工作原理 FB1:StationTake_piece_from_conv:LED 快速闪烁Piece_finished:LED 慢速闪烁Process_pieceLED 连续点亮IN 参数:数据类型:InitialBOOLProxy_switchBOOLAcknowledgeBOOLClock_bit_qBOOLClock_bit_sBOOLOUT 参数:LEDBOOLTransp_reqBOOLI/O 参数:Conv_busyBOOL静态变量:State STRUCTProcess_pieceBOOLPiece_finishedBOOLPlace_part_on_convBOO

26、LWait_for_pieceBOOLTake_piece_from_conv BOOLEND_STRUCTl状态模型:A AcknowledgeAN Proxy_switchA Transp_reqlFB1中的声明:Wait_for_piece:LED熄灭Place_part_on_conv:LED快速闪烁 AN Conv_busyAProxy_switchAN Proxy_switchA InitialFP.第22页/共26页FB2“Transport”的工作原理的工作原理Conv_leftLED 闪烁Conv_rightLED 闪烁A#Transp_reqWaitingLED熄灭AN#T

27、ansp_reqAN#LBarrierAssemblyLED连续点亮A#Acknowledgel状态模型:lFB2的接口:IN 参数:数据类型:InitialBOOLL_BarrierBOOLAcknowledgeBOOLTransp_reqBOOLClock_bitBOOLOUT 参数:LEDBOOLConv_rightBOOLConv_leftBOOL静态变量:StateSTRUCTWaitingBOOLConv_rightBOOLAssemblyBOOLConv_leftBOOLEND_STRUCT FB2:TransportA InitialFP.第23页/共26页练习练习6.2b:扩

28、展到扩展到3个站个站FB10Station_1 的数据FB10的背景数据块CALL Station_1CALL Station_2CALL Station_3CALL TransportDB10.statStation_1FB1statStation_2FB1statStation_3FB1statTransportFB2Transport的数据FB1FB2OB1.CALL FB10,DB10.Station_2 的数据Station_3 的数据第24页/共26页块参数之间的联锁块参数之间的联锁#Station_1InitialLEDProxy_switchTransp_reqAcknowle

29、dge Clock_bit_qClock_bit_sConv_busyLB1#TransportInitialLEDL_Barrier Conv_rightAcknowledgeConv_leftTransp_reqClock_bitH4K1_CONVRK2_CONVLI 0.0S4M10.1M10.1S1INI1I 0.0H1#Station_2H2#Station_3H3FB10:Assembly_lineDB10:Assembly_line_DBM10.3#Station_2InitialLEDProxy_switchTransp_reqAcknowledge Clock_bit_qClock_bit_sConv_busyM10.1S2INI2I 0.0M10.3#Station_3InitialLEDProxy_switchTransp_reqAcknowledgeClock_bit_qClock_bit_sConv_busyM10.1S3INI3I 0.0M10.3第25页/共26页

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 应用文书 > PPT文档

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知得利文库网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号-8 |  经营许可证:黑B2-20190332号 |   黑公网安备:91230400333293403D

© 2020-2023 www.deliwenku.com 得利文库. All Rights Reserved 黑龙江转换宝科技有限公司 

黑龙江省互联网违法和不良信息举报
举报电话:0468-3380021 邮箱:hgswwxb@163.com