Copyright©2011IntowayAutomationCo.,Ltd.Allrightsreserved.2014年11月SGMW程序标准简介MakeIndustryEasier..★本简介中,黑色字体是初学者需要掌握的,灰色字体是可以暂时忽略的----宋彬程序框架Cell程序:处理Cell内安全门箱、触摸屏柜上按钮盒指示灯的逻辑本程序中,该Cell包括AA110和AA120两个工位初学者可忽略Cell程序工位程序:初学者必须掌握的程序SGMW程序的主要工作量在于工位程序工位程序用来控制本工位的夹具动作、机器人动作等机器人程序:处理PLC和机器人的通讯机器人程序为标准程序,无需更改逻辑初学者可忽略机器人程序HMI程序:HMI程序为标准程序,无需更改逻辑初学者可忽略HMI程序安全程序:处理所有安全设备(光栅、安全门、急停按钮等)逻辑初学者可忽略安全程序工位程序框架A000_Main:起始程序段,用于跳转到其他程序段B001_MapInputs:输入信号映射,映射同时也产生每个IO模块的报警B002_MapOutputs:输出信号映射B003_MapHMI:用来控制触摸屏上按钮的显示/隐藏,非关键逻辑,初学者忽略B004_Parameters:设置工位名称和偏移量,非关键逻辑,初学者忽略B007_StatusSummation:工位状态汇总,比如通讯是否全部OK、当前模式、夹具是否在上件位置等,非关键逻辑,初学者忽略J001_JobData:车型信息,非关键逻辑,初学者忽略M001_Modes:手自动模式控制程序段S000_Sequence:工位动作流程的主程序段,本工位的所有夹具、机器人等动作的程序段(即下面的Sxxx程序)都由S000程序跳转。Sxxx_xxx:工位的动作程序段,通常包含夹具的动作、机器人的动作、上件操作等。夹具的动作用Sxxx_CloseClampN和Sxxx_OpenClampN命名,机器人程序用Sxxx_机器人名Init和Sxxx_机器人名WeldClr命名,上件操作用Sxxx_xxxPres。详细介绍见后文。Sxxx程序段是PLC程序的重点,也是调试程序的主要工作,必须掌握。V100_机器人名Common:机器人通讯程序段,用于建立Sxxx机器人动作程序段和上页介绍的机器人程序的联系。z999_Diagnostics:报警逻辑,程序所有报警都通过调用z999程序段将报警加入报警列表中。z999程序是标准程序,无需理解程序逻辑,初学者忽略其他程序无需了解。工位程序介绍顺序动作程序段Sxxx(夹具动作、机器人动作)手自动模式控制程序段M001_Modes输入信号映射程序段B001_MapInputs输出信号映射程序段B002_MapOutputs机器人通讯程序段V100工位程序介绍顺序动作程序段Sxxx(夹具动作、机器人动作)手自动模式控制程序段M001_Modes输入信号映射程序段B001_MapInputs输出信号映射程序段B002_MapOutputs机器人通讯程序段V100动作程序段Sxxx工位动作顺序工位动作的程序段通常按照实际动作顺序排列,从右图可知,AA110工位的动作顺序如下:Step1:工件放到位Step2:夹具123夹紧Step3:机器人去等待位并焊接Step4:夹具打开所有上述动作程序段都由S000程序跳转一个工件在工位上完成所有上述操作称为完成了一个Cycle,S010_MainCycle程序用来控制Cycle过程中的标志位变化,比如Cycle的Start、Finish等,该程序段也是重点,必须掌握工件到位夹具夹紧机器人去等待位机器人焊接夹具打开动作程序段SxxxS000_Sequence用于跳转到其他Sxxx程序段,本文档将介绍夹具动作程序和机器人动作程序跳转到夹具1夹紧程序段用于触摸屏显示,将夹具1夹紧这一动作加入到触摸屏上的操作列表中,初学者忽略跳转到夹具2夹紧程序段动作程序段Sxxx夹具动作程序夹具动作程序是最基础也是最重要的程序,必须掌握,所有夹具动作程序格式完全一致,下文以夹具1的关闭动作为例(S015_CloseClamp1).Comp是动作完成标志位,夹具1只有C01一个气缸,所以当C01的关闭到位传感器PX2为1且打开到位传感器为0时,.Comp置1.气缸关闭到位传感器气缸打开到位传感器气缸反向动作(即打开动作)的输出标志位,后文将介绍.Auto称为自动条件,即自动模式下,满足该条件时则夹具动作。本例中,只要工作未完成,夹具1就要关闭Cycle的工作完成信号,S010_MainCycle程序中将介绍Tips:.Auto条件通常和动作顺序有关,比如夹具1的关闭动作需要在夹具2关闭到位后才能执行,那么就需要把夹具2的Comp作为夹具1的Auto的条件,如下图所示动作程序段Sxxx夹具动作程序.Clear称为干涉条件,只有干涉条件满足时,夹具才能动作。本例中,夹具1关闭的干涉条件是夹具3打开完成,也就是说,只有夹具3打开的情况下,夹具1才能关闭;如果在夹具3关闭的情况下关闭夹具1,那么就有可能产生机械上的损坏。Tips:干涉条件通常是考虑机械上的安全性,无论在手动模式还是自动模式,都必须满足干涉条件,夹具才能动作,而.Auto自动条件只有自动模式才考虑,手动模式下不用考虑,这点在后文中将介绍。如果干涉条件没有写好,调试时就可能发生机械撞到、损坏甚至机器人碰臂等事故.OutPwr是使能条件,通常考虑安全条件是否满足、主气路的气压是否正常,初学者忽略动作程序段Sxxx夹具动作程序.Cmd是动作输出命令,它的条件分为两种情况,手动或者自动,自动模式下需判断Auto条件,手动模式下需要触摸屏上操作的.PB信号,两种模式下都需要考虑.Clear干涉信号和.OutPwr使能信号。Tips:MainCycle.InCycle产生于S010_MainCycle程序段,表示Cycle正在进行中。当.InCycle为1时,必定处于自动模式,而反过来,自动模式下,.InCycle不一定为1,因为自动模式下,可能工位处于空闲状态,没有工件在做,Cycle未开始。后文将介绍.InCycle。.Out是输出信号,当输出命令.Cmd为1,且没有反向动作的命令时,.Out置1,.Out将用于驱动电磁阀动作,后文将介绍自动模式下手动模式下反向动作命令动作程序段Sxxx夹具动作程序PM1表示本工位的1号阀岛V1表示阀岛上的第一片电磁阀S14表示关闭动作,S12表示打开动作PM1.O.V1S14表示关闭PM1上的V1阀,该点将在B002_MapOutputs程序段中控制阀片动作,后文将介绍。.Out输出信号为1时,将关闭动作的记忆位.Mem置1,同时将反向动作(打开)的记忆位清零。反之亦然。该记忆位将用来判断夹具动作是否超时,后文将介绍夹具动作的主体逻辑到此为止,以下是辅助逻辑,包括夹具动作的报警、触摸屏操作的逻辑动作程序段Sxxx夹具动作程序.Mem为1时(即夹具关闭过程中),计时器开始计时,3s后,如果夹具还未关闭完成,则报警固定格式,无需理解3s计时器计时完毕关闭动作未完成Tips:对于动作时间较长的大型气缸,比如翻转气缸、滑台等,可以将计时器的时间设定加大,比如将3000ms改成10000ms动作程序段Sxxx夹具动作程序表示当前可以启用传感器的Bypass功能,固定格式,无需理解当夹具动作出现报警时,可以将未感应到的传感器Bypass。这样,即使有传感器坏了,短时间内无法更换,也可以通过Bypass传感器保证系统正常使用Tips:通常将C01.PX2这行程序写在本程序段的开头,即.Comp行的上面,本文为了方便理解,没有将它放在开头PX2已经被Bypass(NotOn报警的情况下),将在下文介绍C01.PX2是气缸C01关闭到位传感器,用于判断夹具是否关闭完成,上文.Comp已经介绍过。当PX2没有被Bypass的情况下,需要真实的传感器信号BK01.I.D05为1时才将PX2置1;当存在NotOnBypass或者NotOffBypass时,只要夹具动作的3s计时完成后,就认为PX2感应到了。BK01.I.D05在B001_MapInputs程序段中映射PX2已经被Bypass(NotOff报警的情况下)动作程序段Sxxx夹具动作程序当存在报警,且模块通讯正常的情况下,如果PX1和PX2同时感应到,产生报警PX1NotOff;如果PX2没有感应到,产生报警PX2NotOn夹具动作超时报警,上文已经介绍传感器所在的IO模块通讯正常本行程序的描述非常重用,它将用于触摸屏上的报警显示,所有该描述必须按照规定格式写,中括号中的报警号(203和204)可以是1~999之间的任何值,但必须和JSR指令中的号保持一致,且在同一个Program中不得重复报警号必须保持一致Tips:夹具程序报警描述格式如下:Clamp1OpenedC01.PX1NotOff/*R*/BK01.I.D04PM1.O.V1S14什么动作什么问题哪个输入点哪个输出点动作程序段Sxxx夹具动作程序用于触摸屏上传感器的Bypass功能,固定格式,无需理解,但需记住中括号内的号必须和上一行的报警号保持一致用于触摸屏上操作列表的显示,固定格式,无需理解,但需要选对动作的类型,如Close、Open等描述必须按照固定格式写,该描述将用于触摸屏上操作列表中各条操作的描述,比如本例中,触摸屏上操作列表中将显示’CloseClamp1(SS1OFFSS2ON)’,操作号(15)可以是1~999的任意值,但同一个Program中不得重复本行之后的逻辑均为固定格式,不做介绍动作程序段Sxxx机器人动作程序机器人动作程序的结构和夹具程序类似,也包含动作完成.Comp,自动条件.Auto,干涉条件.Clear,输出命令.Cmd等。本文档中仅介绍点焊机器人的动作程序,包括去等待位(Initiate)和焊接动作(WeldClr)两个动作要理解机器人程序,先要了解机器人和PLC的交互信号,首先需要了解Segment,Segment是一个范围为1~63的数,是机器人发给PLC的,用来让PLC知道机器人当前在做什么。对于点焊机器人,常用的Segment号有两个,去等待位的过程中为1,焊接的过程中为50。机器人在到达等待位时,Segment仍保持为1,并向PLC发送EndOfSegment,在收到PLC的继续命令后开始焊接,Segment变为50.以下是主要的交互信息流程PLC机器人车型Style(DI12~16)车型确认ManualStyle(DO12~16)启动命令InitiateStyle(DI11)Segment=1EndOfSegment(DO20)继续命令SegmentContinueOK(DI20)Segment=50回到原点AtHome时间轴机器人正在往等待位移动Initiate机器人到达等待位后停止移动,等级继续命令机器人开始焊接WeldClr机器人焊接完毕后回到原点PLC判断是否可以开始焊接动作程序段Sxxx完成信号当Segment为1,EndOfSegment也被置1时,PLC认为机器人Initiate动作已经完成清除完成信号,固定格式机器人动作程序Initiate机器人的Initiate动作表示机器人从原点(Home)移动到等待位(Pounce),任何机器人要开始工作都必须先到等待位,然后才能开始焊接(WeldClr)或者抓件(Pick)等动作。本文以S030_AA110R01Init为例介绍。Initiate动作的记忆位,和夹具动作的.Mem类似机器人发给PLC的Segment为1机器人已停止,等待继续命令ResetProcComp产生于MainCycle程序段,在工位工作全部完成后将置1,后文介绍动作程序段Sxxx机器人动作程序Initiate自动条件.Auto的辅助位本例中,当夹具123都关闭完成后,机器人才能开始动作自动条件动作程序段Sxxx机器人动作程序Initiate干涉条件辅助位,通常可以加一些和机