欢迎来到三一办公! | 帮助中心 三一办公31ppt.com(应用文档模板下载平台)
三一办公
全部分类
  • 办公文档>
  • PPT模板>
  • 建筑/施工/环境>
  • 毕业设计>
  • 工程图纸>
  • 教育教学>
  • 素材源码>
  • 生活休闲>
  • 临时分类>
  • ImageVerifierCode 换一换
    首页 三一办公 > 资源分类 > PPT文档下载  

    西门子S7-300 400高级编程培训教材.ppt

    • 资源ID:5837739       资源大小:554KB        全文页数:26页
    • 资源格式: PPT        下载积分:15金币
    快捷下载 游客一键下载
    会员登录下载
    三方登录下载: 微信开放平台登录 QQ登录  
    下载资源需要15金币
    邮箱/手机:
    温馨提示:
    用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    加入VIP免费专享
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    西门子S7-300 400高级编程培训教材.ppt

    块调用与多重背景模型,用于结构化编程的块,整个任务的 模块化:单个任务在各自块中予以解决 参数分配法使得 使用更加灵活示例:钻孔循环程序的钻孔深度为可分配参数块的可再利用性能:块可以按需要随时 加以调用 限制因素:不允许访问 全局地址空间只能通过参数列表 进行通信,OB 1,电机1,FB1,阀,FB2,控制器,FB10,FC 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 2,OB 1,STEP 7 块概述,属性,组织块(OB),-用户程序接口-优先级(0到27)-在局部数据堆栈中指定开始信息,块的类型,功能块(FB),-参数可分配(可以在调用时分配参数)-具有(收回)存储空间(静态变量),功能(FC),-参数可分配(必须在调用时分配参数)-基本上没有存储空间(只有临时变量),数据块(DB),-结构化的局部数据存储(背景数据块DB)-结构化的全局数据存储(在整个程序中有效),系统功能块(SFB),-FB(具有存储空间),存储在CPU的操作系统中并可由用户调用,系统功能(SFC),-FB(无存储空间),存储在CPU的操作系统中并可由用户调用,系统数据块(SDB),-用于配置数据和参数的数据块,功能及功能块中的参数声明,Motor,EN,ENO,Start,地址声明名称类型初始化值.0.0输入StartBOOLFALSE0.1输入StopBOOLTRUE2.0输入SpeedINT02.0输出Motor_onBOOLFALSE8.0输出SetpointINT010.0输入/输出 EMER_OFFBOOLFALSE.静态.临时.,Setpoint,EMER_OFF,Motor_on,Stop,输入参数,输入/输出参数,输出参数,参数是信息传递的通道输入参数:Caller-Block输出参数:Block-Caller输入/输出参数:Caller Block参数形成了块的一个“shell”:参数位于代码段 与“局部”变量类似 参数可以为任何数据类型在调用期间进行数据类型检查例外情况:POINTER,ANY调用接口与编程语言无关PLC编程语言可以混合使用,Speed,功能的属性,参数可分配的块:具有足够多的输入,输出,输入/输出参数无存储区,也即只有临时变量IEC 61131-3标准一致性要求:足够多的输入参数仅有一个输出参数RET_VAL不允许访问全局变量和绝对地址使用同一输入参数提供相同的结果扩展了处理器的指令集,功能FC10,输入On_1BOOL输入On_2BOOL输出OffBOOL.,.A#On_1A#On_2=#Off.,基本数据类型传送机理,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.,OB1,BLD 1=L 20.0UC FC 10P#I0.1P#I 0.2P#Q 8.0BLD2,.,IB0,基本类型实际参数位于于:位存储地址区域过程映像调用的局部堆栈,块参数,实际参数,形式参数,复杂数据类型的功能调用,示例:向功能传递一个ARRAY,DB5 Temperature,FC21,只能通过符号来进行参数的赋值,Network(段)1:在功能FC21里,声明一个数组Mes_ValCALL FC 21 Mes_Val:=Temperature.sequence,调用(主调)功能的特点,CALL指令指令为宏指令寄存器内容可能会被覆盖掉,甚至是DB寄存器请注意B堆栈中内容的解释调用之后,可能会打开另一个DBCALL指令的处理时间取决于实际参数的数目和存储单元位置CALL指令确保了块参数被正确地赋予当前数据示例:CALL FC10On_1:=I 0.1On_2:=I 0.2Off:=Q8.0调用指令UC和CC不依赖于RLO的块调用(UC)或取决于RLO的块调用示例:UC FC20或CC FC20当FC没有参数的时候,才可使用这些指令,FB 5,输入StartBOOL输入StopBOOL输出Motor_onBOOL输出SpeedINT静态.临时.,.A#StartAN#Stop=#Motor_on.,功能块的属性,属于可分配参数的块:IEC 61131-3标准一致性块有足够满足需要的输入,输出,输入/输出参数有存储区域,即不仅有临时变量而且还有静态变量使用本身数据区域进行调用(创建背景)“数据封装”应用:定时器和计数器功能使用内部状态控制过程设备锅炉电机,阀,等等。,CALL FB5,DB16 Start:=I 0.0 Stop:=I 0.1 Motor_on:=Q8.0 Speed:=QW12,0.0StartBOOL0.1StopBOOL2.0Motor_onBOOL4.0SpeedINT,DB 16,电机,构建功能块实例,Drive_1,FBx,+,DBy,Drive_1 状态数据,控制算法,OB,FB或FC,CALL FBx,DBy.,使用背景DB的FB调用,CALL#Motor_1.CALL#Motor_2,DBx,.statMotor_1FBxstatMotor_2FBx,Drive_2 状态数据,Drive_3 状态数据,FBx,FB实例,控制算法,FB,Drive_2,Drive_3,FB内的声明(多重背景),在一个FB调用过程中的参数传递,OB1,FB10,程序执行,CALL FB10,DB16Start:=I 0.4Stop:=I 0.0Motor_on:=Q8.1Speed:=QW12,0.0inStartBOOL0.1inStopBOOL2.0outMotor_onBOOL4.0outSpeedINT.,.A#StartAN#Stop=#Motor_on.,BLD3=L24.0TDB OPNDI16TAR2LD20AI0.4=DIX0.0AI0.0=DIX0.1LAR2P#DBX 0.0UCFB10LAR2LD 20ADIX 2.0=Q8.1LDIW4TQW12TDB BLD4,.,IB0,1,0,0,1,0,0,1,0,QB8,DB16,.,.,.,.,.,.,0,1,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,1,1,2,3,.,块参数,实际参数,形式参数,.,使用复杂数据类型的FB调用过程,示例:将一个ARRAY传送到一个功能块,FB17,只允许用符号对复杂参数进行相关分配,Network 1:CALL FB 17,DB 2 Meas_1:=Temperature.Cylinder Sum_1:=MD20 Sum_2:=MD30 Meas_2:=Temperature.Shaft,DB2 Temperature,功能块调用的特性,“按值”传递参数(复制数值):CALL过程中FB参数的赋值:无需为某些FB参数赋值可以从“外部”进行赋值和取消赋值 例如:直接通过操作面板进行例外:复杂数据类型的输入/输出参数(STRUCT,ARRAY,STRING以及 DATE_AND_TIME)初始化:FB参数可以在声明部分进行初始化例外:复杂数据类型的输入/输出参数(STRUCT,ARRAY,STRING以及 DATE_AND_TIME)使用DI和AR2寄存器在内部访问形式参数如果DI或者AR2寄存器被覆盖,将不再允许访问背景数据。附加调用指令UC和CC示例:UC FB20或者CC FB20只有当FB没有背景数据时才能使用(参数+静态变量),主罐,瓶子传感器I 16.6,瓶子传感器I 16.5,瓶子传感器I 16.7,Q 9.0,漏斗,练习6:罐装生产线中的传送带模型,Q 20.5 传送带正转,Q 20.6 传送带反转,练习6.1a:罐装生产线 工作模式选择,生产线 ON/OFFI 0.0:Start(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_activateENO,DB15,.I 0.0I 0.1I 0.4I 0.5,Q8.1Q8.2Q8.3,练习6.1b:罐装生产线 传送带,手动方式I 0.5:正向点动I 0.6:反向点动Q20.5:传送带正向运转Q20.6:传送带反向运转自动方式I 16.6:传感器:罐装位置I 16.7:传感器:计算瓶数Q9.0:罐装启动QW12:满瓶显示,FB16:“传送带控制,ENOM_Man OM_AutoConv_forJog_for Conv_backJog_backFilling_activeSensor_fillFull_bottlesSensor_fullENO,Q20.5Q20.6Q9.0QW12,DB16,.Q8.2Q8.3I 0.2I 0.3I 16.6I 16.7,多重背景模型的结构,FB10,钻床数据,FB10的背景DB,CALL Drill.CALL Motor_1.CALL Motor_2,DB10,.statDrillFB1statMotor_1FB2statMotor_2FB2,Motor_1的数据,Motor_2的数据,FB1,FB2,钻孔算法,马达控制,例如 OB1,.CALL FB10,DB10.,使用多重背景模型实现面向对象的编程,Press_2,Press_1,传送,示例:冲压生产线,技术划分,通过FB背景,对程序进行技术划分,FB:Press line,FB:#Transport,FB:#Press_1,冲压头防护装置,FB:#Punch,FB:#Guard,FB:#Press_2,FB:#Punch,FB:#Guard,用STEP 7来实现一个“冲压生产线”,FB10:Press line,FB10的背景DB,CALL#Press_1.CALL#Press_2.CALL#Transport,DB10,.statPress_1FB1statPress_2FB1statTransportFB2.,FB1:Press,.statPunchFB4statGuardFB5.,CALL#Punch.CALL#Guard,.statPunchFB4statGuardFB5.,CALL#Punch.CALL#Guard,.,FB2:Transport,FB4:Punch,FB5:Guard,CALL FB10,DB10,OB1,FB1:Press,FB4:Punch,FB5:Guard,多重背景模型的属性,多重背景模型的优点:多个实例只需要 一个 DB在为各个实例创建“private”数据区时,无需任何额外的管理工作多重背景模型使得“面向对象的编程风格”成为可能(通过“集合”的方式实现可重用性)最大嵌套深度为8级FB的必备条件:在FB内不允许直接访问过程信号(I,Q)只有使用FB参数访问过程信号,或者与其它过程单元进行通讯FB只能使用静态变量来记忆其过程状态,而不使用全局DB或者位存储器。注意事项:背景数据还可以从“外部”进行访问 例如在OB1中:L Press line.Press_2.Punch.,练习 6.2:生产线中的传送带模型,H4LED,接近开关 INI1,INI2,INI3,光栅 LB1,“S4”确认开关,工位的处理顺序工件的处理成形处理向传送带上放置工件等待原材料工件从传送带中取原材料工件,传送带的处理顺序等待成型的工件传送到总装线总装,插入原材料工件传送到工作站,“S1”,“S2”,“S3”确认开关,H1,H2,H3LED,练习 6.2a:一个工作站的程序结构,程序的技术划分,传送带,工作站1,工作站2,工作站3,OB1,CALL FB1,DB1.CALL FB2,DB2,FB1:Station,Initial LEDProxy_switch Transp_reqAcknowledge Clock_bit_qClock_bit_sConv_busy,DB1,M10.1,S1,INI1,I 0.0,H1,DB2,FB2:Transport,InitialLEDL_BarrierConv_rightAcknowledgeConv_leftTransp_reqClock_bit,H4,K1_CONVR,K2_CONVL,I 0.0,LB1,S4,M10.1,M10.3,FB1“Station”的工作原理,FB1:Station,Take_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_convBOOLWait_for_pieceBOOLTake_piece_from_conv BOOLEND_STRUCT,状态模型:,A Acknowledge,AN Proxy_switchA Transp_req,FB1中的声明:,Wait_for_piece:LED熄灭,Place_part_on_conv:LED快速闪烁,AN Conv_busy,AProxy_switch,AN Proxy_switch,A InitialFP.,FB2“Transport”的工作原理,Conv_leftLED 闪烁,Conv_rightLED 闪烁,A#Transp_req,WaitingLED熄灭,AN#Tansp_req,AN#LBarrier,AssemblyLED连续点亮,A#Acknowledge,状态模型:,FB2的接口:,IN 参数:数据类型:InitialBOOLL_BarrierBOOLAcknowledgeBOOLTransp_reqBOOLClock_bitBOOLOUT 参数:LEDBOOLConv_rightBOOLConv_leftBOOL静态变量:StateSTRUCTWaitingBOOLConv_rightBOOLAssemblyBOOLConv_leftBOOLEND_STRUCT,FB2:Transport,A InitialFP.,练习6.2b:扩展到3个站,FB10,Station_1的数据,FB10的背景数据块,CALL Station_1CALL Station_2CALL Station_3CALL Transport,DB10,.statStation_1FB1statStation_2FB1statStation_3FB1statTransportFB2,Transport的数据,FB1,FB2,OB1,.CALL FB10,DB10.,Station_2的数据,Station_3的数据,块参数之间的联锁,#Station_1,InitialLEDProxy_switchTransp_reqAcknowledge Clock_bit_qClock_bit_sConv_busy,LB1,#Transport,InitialLEDL_Barrier Conv_rightAcknowledgeConv_leftTransp_reqClock_bit,H4,K1_CONVR,K2_CONVL,I 0.0,S4,M10.1,M10.1,S1,INI1,I 0.0,H1,#Station_2,H2,#Station_3,H3,FB10:Assembly_line,DB10:Assembly_line_DB,M10.3,#Station_2,InitialLEDProxy_switchTransp_reqAcknowledge Clock_bit_qClock_bit_sConv_busy,M10.1,S2,INI2,I 0.0,M10.3,#Station_3,InitialLEDProxy_switchTransp_reqAcknowledgeClock_bit_qClock_bit_sConv_busy,M10.1,S3,INI3,I 0.0,M10.3,

    注意事项

    本文(西门子S7-300 400高级编程培训教材.ppt)为本站会员(小飞机)主动上传,三一办公仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知三一办公(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    备案号:宁ICP备20000045号-2

    经营许可证:宁B2-20210002

    宁公网安备 64010402000987号

    三一办公
    收起
    展开