已阅读5页,还剩5页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
Adaptive Welding for Heavy Plate FabricationFANUC Robotics America11/23/2010This application note describes a strategy for adjusting weld deposition rate to varying volume weld joints based on measurement of the weld joint gap and weld center location at two ends of a straight weld seam in order to produce a uniform layer thickness. The weld joint in this example is a half-vee joint with root backing:A4520 mm5 mm (nom.)AAA1234The basic approach to welds of this type uses either Touch Sensing or iRVision to measure the weld joint gap at the root opening at either end of the weld joint. The welding programs use TAST with Multipass/RPM to accommodate seam tracking requirements. The gap measurements are used to calculate the volume of weld metal required to fill the gap for each weld pass and set the weave amplitude and weld travel speed to accomplish this goal.ConditionsR-30iA Controller with V7.40P/11 (or later) ArcTool softwareOptions Required:Touch Sensing or iRVision 2D packageArc Ramping (included in Standard ArcTool beginning in V7.40P/09)TAST + MP/RPM optionSystem Variable Settings:Set the following system variables:$AWERAMP1.$RAMP_ENABLE = TRUE$AWERAMP1.$RAMP_TO_POS = TRUE$WVCFG.$RAMP_ENB = TRUE$WV_OTF_GP1.$OTF_ENABLE = TRUE$WV_OTF_GP1.$GET_AMP = TRUE$SCR_GRP1.$M_POS_ENB = TRUE$SCR_GRP1.$M_DST_ENB = TRUEThe $SCR_GRP variables are not necessary for operation but are enabled so Data Monitor can be used to record the actual position and travel speed during operation. The program SETSYSVAR.TP can be used to set these variables.TP Program StructureMAINWELD (shell program to control overall sequence)- CALL MEASGAPS (Collects the joint measurement routines)o CALL INITGAPS (zeros the gap width registers)o CALL FIND_JT1 (finds joint and measures gap at position 1)o CALL FIND_JT2 (finds joint and measures gap at position 2)- CALL REGMATH (Calculate Travel Speed)- CALL ADPTWV (Calculate weave amplitude)- CALL CALC_TVL (Set travel speed in weld schedules)- CALL PASSES (Performs the welding operation)o CALL SCALEGAP (adjusts the gap measurement for fill passes)Detail listing:MAINWELD.TP 1: CALL MEASGAPS ; 2: CALL REGMATH ; 3: CALL ADPTWV ; 4: CALL CALC_TVL ; 5: PAUSE ; 6: CALL PASSES ;MEASGAPS.TP 1: UFRAME_NUM=0 ; 2: UTOOL_NUM=1 ; 3: CALL INITGAPS ; 4:J P1 30% FINE ; 5:J P2 20% FINE ; 6: CALL FEEDWIRE ; 7: CALL FIND_JT1 ; 8: PR150:TEMP=LPOS ; 9: PR150,3:TEMP=PR150,3:TEMP+100 ; 10:J PR150:TEMP 30% FINE ; 11:J P1 30% FINE ; 12: CALL FIND_JT2 ; 13: PR150:TEMP=LPOS ; 14: PR150,3:TEMP=PR150,3:TEMP+100 ; 15:J PR150:TEMP 30% FINE ; 16:J P1 30% FINE ; 17: DO5:Wire Inch Bkwd=PULSE,0.7sec ;INITGAPS.TP 1: R140:GAP 1 mm=0 ; 2: R141:GAP 2 mm=0 ; 3: R144:Multipass Index=0FEEDWIRE.TP 1: PR10=LPOS ; 2:J PR10 5% FINE ; 3: LBL1 ; 4: DO3:Touch ON=ON ; 5: DO4:Wire Inch Fwd=ON ; 6: IF DI2:Touch Input=ON,JMP LBL2 ; 7: WAIT .01(sec) ; 8: JMP LBL1 ; 9: LBL2 ; 10: DO4:Wire Inch Fwd=OFF ; 11: WAIT .10(sec) ; 12: DO3:Touch ON=OFF ; 13: DO5:Wire Inch Bkwd=ON ; 14: WAIT .10(sec) ; 15: DO5:Wire Inch Bkwd=OFF ;FIND_JT1JT2.TPThe FIND_JTx.TP programs are the same except for the search start location, the gap register, and the position register index for saving the found joint center location. The lines shown in RED change for as many gap measurement locations are needed. 1: UFRAME_NUM=0 ; 2: UTOOL_NUM=1 ; 3: R145:Z - Zero Plane=0 ; 4:J PR151:Search Pos 1 30% FINE ; 5: PR150:TEMP=PR151:Search Pos 1 ; 6: LBL1 ; 7: !FIND JOINT ; 8:J PR150:TEMP 30% FINE ; 9: Search Start 1 PR40 ; 10:J PR150:TEMP 30% FINE Search-Z ; 11: Search End ; 12: R145:Z - Zero Plane=PR40,3 ; 13: IF R145:Z - Zero Plane(-2),JMP LBL2 ; 14: PR150,1:TEMP=PR150,1:TEMP+3 ; 15: JMP LBL1 ; 16: !FIND EDGE 1 ; 17: LBL2 ; 18: PR150:TEMP=PR32 ; 19: PR150,1:TEMP=PR150,1:TEMP+3 ; 20:J PR150:TEMP 30% FINE ; 21: Search Start 1 PR40 ; 22:J PR150:TEMP 30% FINE SearchX ; 23: PR150:TEMP=PR32 ; 24: Search End ; 25: PR150,1:TEMP=PR150,1:TEMP-2 ; 26:J PR150:TEMP 20% FINE ; 27: ; 28: !FIND ROOT GAP ; 29: Search Start 1 PR40 ; 30:J PR150:TEMP 30% FINE Search-Z ; 31: Search End ; 32: PR150,3:TEMP=PR32,3+2 ; 33:J PR150:TEMP 30% FINE ; 34: Search Start 1 PR40 ; 35:J PR150:TEMP 30% FINE SearchX ; 36: PR150:TEMP=PR32 ; 37: Search End ; 38: WAIT .10(sec) ; 39: Search Start 1 PR40 ; 40:J PR150:TEMP 30% FINE Search-X ; 41: Search End ; 42: R139:TMP=PR150,1:TEMP-PR32,1 ; 43: R139:TMP=R139:TMP+R150:Wire Diameter ; 44: R140:GAP 1 mm=R139:TMP ; 45: R139:TMP=R139:TMP/2 ; 46: PR150,1:TEMP=PR32,1+R139:TMP ; 47: PR150,2:TEMP=PR32,2 ; 48: PR150,3:TEMP=PR32,3-2 ; 49: PR155:Pos 1=PR150:TEMP ; 50:J PR155:Pos 1 30% FINE ;/POS/ENDREGMATH.TP 1: !Deposit Volume ; 2: ; 3: R154:Wire CSA=(R150:Wire Diameter/2*(R150:Wire Diameter/2)*R151:PI) ; 4: ; 5: R155:WSPD (from sch 1=$AWESCH1,1.$CMD_VOLTS ; 6: R157:Wire Vol/min=R156:Transfer eff.*R155:WSPD (from sch 1*R154:Wire CSA ; 7: ; 8: ; 9: !Pass Layer Volume ; 10: R146:Gap 1 in inches=R140:GAP 1 mm/25.4 ; 11: R147:Gap 2 in inches=R141:GAP 2 mm/25.4 ; 12: R163:Layer (thk) inch=R161:Mtl. thk (inch)/R162:Num of passes ; 13: R164:Area of A=(R249:TAN 45 degrees*R163:Layer (thk) inch*R163:Layer (thk) inch)/(2) ; 14: R167:Gap 1 area=R146:Gap 1 in inches*R163:Layer (thk) inch ; 15: R168:Gap 2 area=R147:Gap 2 in inches*R163:Layer (thk) inch ; 16: R171:Pass area at 1=R167:Gap 1 area+R164:Area of A ; 17: R172:Pass area at 2=R168:Gap 2 area+R164:Area of A ; 18: ; 19: !Travel Speed Calc ; 20: R175:Travel spd at 1=R157:Wire Vol/min/R171:Pass area at 1 ; 21: R176:Travel spd at 2=R157:Wire Vol/min/R172:Pass area at 2 ;ADPTWV.TP 1: R130:WV SCH 1=R140:GAP 1 mm-1 ; /NOTE: the “1” is 1 mm less than gap You may wish to change to a different value. 2: R130:WV SCH 1=R130:WV SCH 1/2 ; 3: !* ; 4: R131:WV SCH 2=R141:GAP 2 mm-1 ; /NOTE: the “1” is 1 mm less than gap 5: R131:WV SCH 2=R131:WV SCH 2/2 ; 6: !SET WEAVE SCHEDULE ; 7: $WVSCH1.$AMPLITUDE=R130:WV SCH 1 ; 8: $WVSCH2.$AMPLITUDE=R131:WV SCH 2 ;CALC_TVL.TP 1: $AWESCH1,1.$CMD_WSPEED=R175:Travel spd at 1 ;PASSES.TP 1: UTOOL_NUM=1 ; 2: LBL10 ; 3: IF R144:Multipass Index=1,JMP LBL2 ; 4: IF R144:Multipass Index=2,JMP LBL3 ; 5: IF R144:Multipass Index=3,JMP LBL4 ; 6: IF R144:Multipass Index=4,JMP LBL5 ; 7: !* ; 8: !PASS 1 ; 9:J P1 30% FINE ; 10:J P2 30% FINE ; 11:J P21 20% FINE ; 12:J PR155:Pos 1 30% FINE : Arc Start E11 ; 13: Weave Sine1 ; 14: Track TAST1 RPM1 ; 15:L PR156:Pos 2 WELD_SPEED FINE : Arc End E11 WV2 RampTo R176 ; 16: Weave End ; 17: Track End ; 18:J P22 20% FINE ; 19:J P1 30% FINE ; 20: PAUSE ; 21: R144:Multipass Index=1 ; 22: JMP LBL10 ; 23: ; 24: LBL2 ; 25: !PASS 2 ; 26: !* ; 27: CALL SCALEGAP ; 28: CALL REGMATH ; 29: CALL ADPTWV ; 30: CALL CALC_TVL ; 31:J P1 30% FINE ; 32:J P2 30% FINE ; 33:J P21 20% FINE ; 34: LOCK PREG ; 35: MP Offset PR160 RPM1 ; 36:L PR155:Pos 1 600mm/sec FINE : Arc Start E11 ; 37: Weave Sine1 ; 38:L PR156:Pos 2 WELD_SPEED FINE : Arc End E11 WV2 RampTo R176 ; 39: Weave End ; 40: MP Offset End ; 41:J P22 20% FINE ; 42:J P1 30% FINE ; 43: UNLOCK PREG ; 44: PAUSE ; 45: R144:Multipass Index=2 ; 46: JMP LBL10 ; 47: ; 48: LBL3 ; 49: !PASS 3 ; 50: !* ; 51: CALL SCALEGAP ; 52: CALL REGMATH ; 53: CALL ADPTWV ; 54: CALL CALC_TVL ; 55:J P1 30% FINE ; 56:J P2 30% FINE ; 57:J P21 20% FINE ; 58: LOCK PREG ; 59: MP Offset PR162 RPM1 ; 60:J PR155:Pos 1 30% FINE : Arc Start E11 ; 61: Weave Sine1 ; 62:L PR156:Pos 2 WELD_SPEED FINE : Arc End E11 WV2 RampTo R176 ; 63: Weave End ; 64: MP Offset End ; 65: UNLOCK PREG ; 66:J P22 20% FINE ; 67:J P1 30% FINE ; 68: R144:Multipass Index=3 ; 69: JMP LBL10 ; 70: ; 71: !ADD PASSES AS NEEDED ; 72: LBL4:1ST CAP PASS ; 73: R144:Multipass Index=4 ; 74: ; 75: LBL5:2ND CAP PASS ; 76: ; 77: R144:Multipass Index=0 ;SCALEGAP.TP 1: IF R144:Multipass Index=0,JMP LBL100 ; 2: IF R144:Multipass Index=1,JMP LBL1 ; 3: IF R144:Multipass Index=2,JMP LBL2 ; 4: IF R144:Multipass Index=3,JMP LBL3 ; 5: LBL1 ; 6: R140:GAP 1 mm=R140:GAP 1 mm+4 ; 7: R141:GAP 2 mm=R141:GAP 2 mm+4 ; 8: END ; 9: LBL2 ; 10: R140:GAP 1 mm=R140:GAP 1 mm+3 ; 11: R141:GAP 2 mm=R141:GAP 2 mm+3 ; 12: END ; 13: LBL3 ; 14: R140:GAP 1 mm=R140:GAP 1 mm+3 ; 15: R141:GAP 2 mm=R141:GAP 2 mm+3 ; 16: END ;17: LBL100 ;SETSYSVAR.TP (for reference) 1: $AWERAMP1.$RAMP_ENABLE =1 ; 2: $AWERAMP1.$RAMP_TO_POS =1 ; 3: $WVCFG.$RAMP_ENB=1 ; 4: $WV_OTF_GP1.$OTF_ENABLE=1 ; 5: $WV_OTF_GP1.$GET_AMP=1 ; 6: $SCR_GRP1.$M_POS_ENB=1 ; 7: $SCR_GRP1.$M_DST_ENB=1 ;NUMERIC REGISTERSR130WV SCH 1 amplitudeR131WV SCH 2 amplitudeR139TMPR140GAP 1 (mm)R141GAP 2 (mm)R144Multipass IndexR145Z Zero PlaneR146GAP 1 (inches)R147GAP 2 (inches)R150Wire Diameter (inches)R151PI (3.1416)R154Wire CSAR155WSPD (from sch. 1)R156Transfer efficiency (.95)R157Wire Vol/minR160Bevel AngleR161Mtl. Thk. (inch)R162Num of passesR163Layer (thk) inchR164Area of AR167Gap 1 areaR168G
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026年双鸭山市四方台区公务员人员招聘考试备考试题与答案详解
- 2026北京宣武医院神经外科招聘考试备考题库及答案解析
- 2026年合肥产投康养集团有限公司及子公司社会招聘12名(一线、专业技术岗位)笔试参考题库及答案解析
- 2026浙江省义乌市中心医院公开招聘48名编外工作人员(第二批)笔试模拟试题及答案解析
- 2026年安宁市林业和草原局招聘第二批编外聘用人员(防扑火大队队员)(22人)笔试备考题库及答案解析
- 2026集美区宁宝小学产假顶岗教师招聘1人考试备考题库及答案解析
- 2026年齐齐哈尔市富拉尔基区公务员人员招聘笔试参考题库与答案详解
- 2026年宜昌市西陵区公务员人员招聘笔试参考题库与答案详解
- 2026年北京市通州区公务员人员招聘笔试备考题库与答案详解
- 2027国家电网有限公司华东分部高校毕业生招聘(国调网调及北交提前批)考试模拟试题及答案解析
- 中医医院卒中中心脑出血救治流程
- 《股票价值评估用》课件
- 2027贵州航天电器秋季招聘284人考试备考题库及答案解析
- 地理信息数据分类分级工作指南试行全文
- 再生水回用处理工程设计
- 【新教材核心素养】教科版科学五年级上册3.3《用弹力驱动小车》教学课件
- 企业车间主任(班组长)岗位安全职责培训
- 小学五年级英语语法讲义
- 2026中铝物资面向中铝集团内部招聘9人备考题库及答案详解(全优)
- GB/T 21125-2026食用菌品种选育技术规范
- 基本公共卫生支出制度
评论
0/150
提交评论