从原点去维修点程序代码
- 1: OVERRIDE=20%
- 2: UTOOL_NUM=1 //工具坐标系
- 3: UFRAME_NUM=0 //用户坐标系
- 4:J PR[1:Home_pos.] 20% FINE //关节位置PR[1:Home_pos.] 即原点
- 5:J P[1] 20% FINE //关节位置P[1]
- 6:J P[2] 20% FINE //关节位置P[2]
- 7:J P[3] 20% FINE //关节位置P[3]
- 8:
- 9: PAUSE //暂停
- 10:J P[3] 20% FINE //关节位置P[3]
- 11:J P[2] 20% FINE //关节位置P[2]
- 12:J P[1] 20% FINE //关节位置P[1]
- 13:J PR[1:Home_pos.] 20% FINE //关节位置PR[1:Home_pos.] 即原点
- [End] //结束
复制代码
复位交讯信号程序代码
- 1: DO[6:QuPianZhong]=OFF //关闭输出信号"QuPianZhong"
- 2: DO[7:QuPianWanChen]=OFF //关闭输出信号"QuPianWanChen"
- 3: DO[8:ZiDongSiMoQU]=OFF //关闭输出信号"ZiDongSiMoQU"
- 4: DO[9:ZiDongSiMoDaoWei]=OFF //关闭输出信号"ZiDongSiMoDaoWei"
- 5: DO[10:ZiDongSiMoQingXieDaoWei]=
- : OFF //关闭输出信号"ZiDongSiMoQingXieDaoWei"
- 6: DO[11:ShouDongSiMoQU]=OFF //关闭输出信号"ShouDongSiMoQU"
- 7: DO[12:ShouDongSiMoDaoWei]=OFF //关闭输出信号"ShouDongSiMoDaoWei"
- 8: DO[13:KaHeZhong_R]=OFF //关闭输出信号"KaHeZhong_R"
- 9: DO[14:KaHeWanChen_R]=OFF //关闭输出信号"KaHeWanChen_R"
- 10: DO[15:PaiZhaoShiBai_R]=OFF //关闭输出信号"PaiZhaoShiBai_R"
- 11: DO[17:Sifu_DaKai]=OFF //关闭输出信号"Sifu_DaKai"
- 12: DO[18:Sifu_ZheQi]=OFF //关闭输出信号"Sifu_ZheQi"
- [End] //结束
复制代码
机器人治具程序代码
- 1: WAIT DI[18:Sifu_ZheQi]=ON //等待输入信号[18:Sifu_ZheQi]变成ON
- 2: DO[17:Sifu_DaKai]=ON //输出信号[17:Sifu_DaKai]变成OFF
- 3: WAIT DI[17:Sifu_DaKai]=ON //等待输入信号[17:Sifu_DaKai]变成ON
- : TIMEOUT,LBL[1] //时间到跳转到标签LBL[1]
- 4: END //结束
- 5:
- 6: LBL[1] //标签[1]
- 7: UALM[2] //
- 8: ABROT //
- [End]
复制代码
卡合程序代码
- 1: UTOOL_NUM=1 //工具坐标系
- 2: UFRAME_NUM=0 //用户坐标系
- 3: WAIT DI[11:YunXuPaiZhao_R]=ON //等待输入信号"允许拍照"变成ON
- 4: DO[13:KaHeZhong_R]=ON //输出信号"卡合中"变成ON
- 5:J P[1] 100% CNT100 //关节位置P[1]
- 6:L P[2] 2000mm/sec FINE //直线位置P[2]
- 7:
- 8:
- 9:
- 10: LBL[1] //标签LBL[1]
- 11: UTOOL_NUM=8 //工具坐标系
- 12: UFRAME_NUM=8 //用户坐标系
- 13: R[21:V_no.]=R[21:V_no.]+1 //信号21累加计算
- 14: IF R[21:V_no.]>=10,JMP LBL[99] //如果21信号大于等于10次,程序跳转到标签LBL[99]
- 15: VISION RUN_FIND //调用视觉程序 'A02_HD580K3U01_S0_PM'
- : 'A02_HD580K3U01_S0_PM'
- 16: VISION GET_OFFSET //计算偏移量
- : 'A02_HD580K3U01_S0_PM' VR[1]
- : JMP LBL[1] //跳转到标签LBL[1]
- 17: R[21:V_no.]=0 //信号21计数变成0
- 18:
- 19: LBL[2] //标签LBL[2]
- 20: UTOOL_NUM=8 //工具坐标系
- 21: UFRAME_NUM=8 //用户坐标系
- 22:
- 23:
- 24:L P[4] 1500mm/sec CNT80 //直线位置P[4]
- 25:L P[3] 800mm/sec FINE //直线位置P[3] (此位置为平面产品抛片位置)
- : VOFFSET,VR[1] //计算偏移量
- : Offset,PR[2:VIS_oft.]
- 26: WAIT .30(sec) //等待0.3秒
- 27: CALL VOID_FP_PM //调用平面放片程序"VOID_FP_PM"
- 28:
- 29:
- 30: UTOOL_NUM=1 //工具坐标系
- 31: UFRAME_NUM=0 //用户坐标系
- 32:L P[2] 1000mm/sec CNT50 //直线位置P[2]
- 33:J P[1] 100% CNT80 //直线位置P[1]
- 34: DO[14:KaHeWanChen_R]= //输出卡合完成信号"[14:KaHeWanChen_R]"并暂停2秒
- : PULSE,2.0sec
- 35: DO[13:KaHeZhong_R]=OFF //关闭输出信号卡合中"[13:KaHeZhong_R]"
- 36: END //结束
- 37:
- 38: LBL[99] //标签LBL[99]
- 39: R[21:V_no.]=0 //信号21计数变成0
- 40: DO[15:PaiZhaoShiBai_R]= //输出拍照失败信号"[15:PaiZhaoShiBai_R]"并暂停2秒
- : PLUSE,2.0sec
- 41:
- 42: LBL[3] //标签LBL[3]
- 43: IF DI[12:ZaiPaiZhao_R]=ON, //如果重新拍照信号"DI[12:ZaiPaiZhao_R]"变成ON
- : JMP LBL[1] //跳转到标签LBL[1]
- 44: IF DI[13:qiangzhifangpian_R]=ON, //如果强制放片信号"DI[13:qiangzhifangpian_R]"变成ON
- : JMP LBL[2] //跳转到标签LBL[2]
- 45: JMP LBL[3] //跳转到标签LBL[3]
- 46:
- End //结束
复制代码
偏移量程序代码
- 1: PR[2,1:VIS_oft.]=R[11:VIS_X]/10 //机器人X/Y方向及角度偏移量计算
- :
- 2: PR[2,2:VIS_oft.]=R[12:VIS_Y]/10
- :
- 3: PR[2,3:VIS_oft.]=0
- 4: PR[2,4:VIS_oft.]=0
- 5: PR[2,5:VIS_oft.]=0
- 6: PR[2,6:VIS_oft.]=R[13:VIS_R]/
- : 1000
- [End]
复制代码
平面放片程序代码
- 1: DO[25:Xi_zj]=OFF //输出信号"[25:Xi_zj]"(吸真空中间)变成OFF
- 2: DO[26:Xi_lb]=OFF //输出信号"[26:Xi_lb]"(吸真空两边)变成OFF
- 3: DO[27:Xi_PCB]=OFF //输出信号"[27:Xi_PCB]"(吸真空PCB)变成OFF
- 4: DO[28:Po_ZJ]=ON //输出信号"[28:Po_ZJ]"(破真空中间)变成ON
- 5: DO[29:Po_lb]=ON //输出信号"[29:Po_lb]"(破真空两边)变成ON
- 6: DO[30:Po_pcb]=ON //输出信号"[30:Po_pcb]"(破真空PCB)变成ON
- 7:
- 8: WAIT DI[25:ZJ1]=OFF AND //等待输入信号"[25:ZJ1]""[26:ZJ2]""[27:LB]""[28:PCB]""[31:ZJ3]"变成OFF
- : DI[26:ZJ2]=OFF AND DI[27:LB]=OFF
- : AND DI[28:PCB]=OFF AND
- : DI[31:ZJ3]=OFF
- 9: WAIT .20(sec) //等待0.2秒
- 10: DO[28:Po_ZJ]=OFF //输出信号"[28:Po_ZJ]"(破真空中间)变成OFF
- 11: DO[29:Po_lb]=OFF //输出信号"[29:Po_lb]"(破真空两边)变成OFF
- 12: DO[30:Po_pcb]=OFF //输出信号"[30:Po_pcb]"(破真空PCB)变成OFF
- 13: WAIT .50(sec) //等待0.5秒
- 14: END //结束
- 15:
- 16: LBL[1] //标签 LBL[1]
- 17: UAALM[6]
- 18: ABORT
- [End]
复制代码
曲面放片程序代码
- 1:
- 2: DO[27:Xi_PCB]=OFF //输出信号"[27:Xi_PCB]"(吸真空PCB)变成OFF
- 3: DO[25:Xi_zj]=OFF //输出信号"[25:Xi_zj]"(吸真空中间)变成OFF
- 4: DO[28:Po_ZJ]=ON //输出信号"[30:Po_pcb]"(破真空中间)变成ON
- 5: DO[30:Po_pcb]=ON //输出信号"[30:Po_pcb]"(破真空PCB)变成ON
- 6:
- 7: WAIT DI[25:ZJ1]=OFF AND //等待输入信号"[25:ZJ1]""[26:ZJ2]""[28:PCB]""[31:ZJ3]"变成OFF
- : DI[26:ZJ2]=OFF AND DI[28:PCB]=
- : OFF AND DI[31:ZJ3]=OFF
- 8: WAIT .30(sec) //等待0.3秒
- 9: DO[28:Po_ZJ]=OFF //输出信号"[28:Po_ZJ]"(破真空中间)变成OFF
- 10: DO[30:Po_pcb]=OFF //输出信号"[30:Po_pcb]"(破真空PCB)变成OFF
- 11:
- 12: DO[18:Sifu_ZheQi]=ON //输出信号"[18:Sifu_ZheQi]"(伺服折起)变成ON
- 13: WAIT DI[18:Sifu_ZheQi]=ON //等待输入信号"[18:Sifu_ZheQi]"(伺服折起)变成ON
- 14: DO[18:Sifu_ZheQi]=OFF //输出信号"[18:Sifu_ZheQi]"(伺服折起)变成OFF
- 15: CALL VOID_FP_PM //调用平面放片程序"VOID_FP_PM "
- 16:
- 17:
- 18:
- 19: END //结束
复制代码
取片程序代码
- 1: UTOOL_NUM=1 //工具坐标系
- 2: UFRAME_NUM=0 //用户坐标系
- 3:
- 4: DO[6:QuPianZhong]=ON //输出信号"[6:QuPianZhong]"(取片中)变成ON
- 5: DO[31:Dingchu]=OFF //输出信号"[31:Dingchu]"(撕膜点气缸顶出)变成OFF
- 6: DO[32:SuoHui]=ON //输出信号"[32:SuoHui]"(伺服缩回)变成ON
- 7: DO[18:Sifu_ZheQi]=OFF //输出信号"[18:Sifu_ZheQi]"(伺服折起)变成OFF
- 8: DO[17:Sifu_DaKai]=ON //输出信号"[17:Sifu_DaKai]"(伺服打开)变成ON
- 9: WAIT DI[30:HuiDaiWei]=ON AND //等待输入信号"[30:HuiDaiWei]""[17:Sifu_DaKai]"变成ON
- : DI[17:Sifu_DaKai]=ON
- 10: DO[17:Sifu_DaKai]=OFF //输出信号"[17:Sifu_DaKai]"(伺服打开)变成OFF
- 11:
- 12:J P[1] 100% CNT80 //关节位置P[1]
- 13:J P[4] 100% CNT80 //关节位置P[4]
- 14:
- 15:L P[3] 2000mm/sec CNT30 //直线位置P[3]
- : Tool_Offset,PR[18:QP_oft1]
- 16:
- 17:L P[3] 2000mm/sec FINE //直线位置P[3]
- 18:
- 19: CALL VOID_XIPIAN //调用吸片程序"VOID_XIPIAN "
- 20:L P[3] 100mm/sec CNT100 //直线位置P[3]
- : Tool_Offset,PR[19:QP_oft2]
- 21:L P[3] 300mm/sec CNT50 //直线位置P[3]
- : Tool_Offset,PR[20:QP_oft3]
- 22:J P[2] 100% CNT100 //关节位置P[2]
- 23:J PR[1:Home_pos.] 100% CNT50 //关节位置PR[1:Home_pos.] 即原点
- 24: DO[7:QuPianWanChen]=PLUSE,2.0sec //输出信号"[7:QuPianWanChen]"(取片完成)并暂停2秒
- 25: DO[6:QuPianZhong]=OFF //输出信号"[6:QuPianZhong]"(取片中)变成OFF
- [End] //结束
复制代码
人工撕膜程序代码
- 1: UTOOL_NUM=1 //工具坐标系
- 2: UFRAME_NUM=0 //用户坐标系
- 3: DO[11:ShouDongSiMoQU]=ON //输出信号"[11:ShouDongSiMoQU]"(手动撕膜去)变成ON
- 4:J P[1] 100% CNT100 //关节位置P[1]
- 5:J P[2] 100% CNT100 //关节位置P[2]
- 6:J P[3] 100% CNT100 //关节位置P[3]
- 7:L P[5] 2500mm/sec CNT100 //直线位置P[5]
- 8:L P[4] 1500mm/sec FINE //直线位置P[4]
- 9: DO[12:ShouDongSiMoDaiWei]=ON //输出信号"[12:ShouDongSiMoDaiWei]"(手动撕膜到位)变成ON
- 10: WAIT DI[10:ShouDongSiMoWanChen]= //等待输入信号"[10:ShouDongSiMoWanChen]"(手动撕膜完成)变成ON
- : ON
- 11: DO[12:ShouDongSiMoDaiWei]=OFF //输出"[12:ShouDongSiMoDaiWei]"(手动撕膜完成)变成OFF
- 12:L P[5] 1500mm/sec CNT100 ACC80 //直线位置P[5]
- 13:L P[3] 2500mm/sec CNT50 //直线位置P[3]
- 14: DO[11:ShouDongSiMoQU]=OFF //输出信号"[11:ShouDongSiMoQU]"(手动撕膜去)变成OFF
- 15:J P[2] 100% CNT100 //关节位置P[2]
- 16:J P[1] 100% CNT100 //关节位置P[1]
- [End] //结束
复制代码
吸片程序代码
- 1: DO[28:Po_ZJ]=OFF //输出信号"[28:Po_ZJ]"(破真空中间)变成OFF
- 2: DO[29:Po_lb]=OFF //输出信号"[29:Po_lb]"(破真空两边)变成OFF
- 3: DO[30:Po_pcb]=OFF //输出信号"[30:Po_pcb]"(破真空PCB)变成OFF
- 4: DO[25:Xi_zj]=ON //输出信号"[25:Xi_zj]"(吸真空中间)变成ON
- 5: D0[26:Xi_lb]=ON //输出信号"[26:Xi_lb]"(吸真空两边)变成ON
- 6: DO[27:Xi_PCB]=ON //输出信号"[27:Xi_PCB]"(吸真空PCB)变成ON
- 7:
- 8: WAIT DI[25:ZJ1]=ON AND DI[27:LB] //等待输入信号"[25:ZJ1]""[27:LB]""[28:PCB]""[26:ZJ2]""[31:ZJ3]"变成ON
- : =ON AND DI[28:PCB]=ON AND
- : DI[26:ZJ2]==ON AND DI[31:ZJ3]=ON
- :
- 9: WAIT .30(sec) //等待0.3秒
- 10: END //结束
- 11:
- 12: LBL[1]
- 13: UALM[3]
- 14: ABROT
- [End]
复制代码
主程序代码
- 1: DO[28:Po_ZJ]=OFF //输出信号"[28:Po_ZJ]"(破真空中间)变成OFF
- 2: DO[29:Po_lb]=OFF //输出信号"[29:Po_lb]"(破真空两边)变成OFF
- 3: DO[30:Po_pcb]=OFF //输出信号"[30:Po_pcb]"(破真空PCB)变成OFF
- 4: DO[25:Xi_zj]=ON //输出信号"[25:Xi_zj]"(吸真空中间)变成ON
- 5: D0[26:Xi_lb]=ON //输出信号"[26:Xi_lb]"(吸真空两边)变成ON
- 6: DO[27:Xi_PCB]=ON //输出信号"[27:Xi_PCB]"(吸真空PCB)变成ON
- 7:
- 8: WAIT DI[25:ZJ1]=ON AND DI[27:LB] //等待输入信号"[25:ZJ1]""[27:LB]""[28:PCB]""[26:ZJ2]""[31:ZJ3]"变成ON
- : =ON AND DI[28:PCB]=ON AND
- : DI[26:ZJ2]==ON AND DI[31:ZJ3]=ON
- :
- 9: WAIT .30(sec) //等待0.3秒
- 10: END //结束
- 11:
- 12: LBL[1]
- 13: UALM[3]
- 14: ABROT
- [End]
复制代码
自动撕膜程序代码
- 1: UTOOL_NUM=1 //工具坐标系
- 2: UFRAME_NUM=0 //用户坐标系
- 3:
- 4: DO[8:ZiDongSiMoQU]=ON //输出信号"[8:ZiDongSiMoQU]"(自动撕膜去)变成ON
- 5: DO[32:Suohui]=OFF //输出信号"[32:Suohui]"(气缸缩回)变成OFF
- 6:J P[1] 100% CNT100 TA 0.00sec, //关节位置P[1]
- : DO[31:Dingchu]=ON //输出信号"[31:Dingchu]"(气缸顶出)变成ON
- 7:J P[2] 100% CNT100 //关节位置P[2]
- 8:L P[4] 800mm/sec FINE //直线位置P[4]
- 9: WAIT .10(sec) //等待0.1秒
- 10: WAIT DI[29:DingDaoWei]=ON //等待输入信号[29:DingDaoWei](顶到位)变成ON
- 11: DO[9:ZiDongSiMoWei]= //输出信号"[9:ZiDongSiMoWei]"(自动撕膜位)脉冲动作并等待2秒
- : PLUSE,2.0sec
- 12: WAIT DI[5:ZiDongSiMoQingXie]=ON //等待输入信号"[5:ZiDongSiMoQingXie]"(自动撕膜倾斜)变成ON
- :
- 13:L P[5] 400mm/sec FINE //直线位置P[5]
- 14: DO[10:ZiDongSiMoQingXieDaoWei]= //输出信号"[10:ZiDongSiMoQingXieDaoWei]"(自动撕膜倾斜到位)变成ON
- : ON
- 15: DO[31:Dingchu]=OFF //输出信号"[31:Dingchu]"(气缸顶出)变成OFF
- 16: DO[32:Suohui]=ON //输出信号"[32:Suohui]"(气缸缩回)变成ON
- 17:
- 18: WAIT DI[6:ZiDongSiMoWanChen]=ON //等待输入信号"[6:ZiDongSiMoWanChen]""[7:ZiDongSiMoShiBai]"变成ON
- : OR DI[7:ZiDongSiMoShiBai]=ON
- 19: DO[10:ZiDongSiMoQingXieDaoWei]= //输出信号"[10:ZiDongSiMoQingXieDaoWei]"变成OFF
- : OFF
- 20:
- 21: IF DI[6:ZiDongSiMoWanChen]=ON //如果输入信号"[6:ZiDongSiMoWanChen]"(自动撕膜完成)变成ON
- : JMP LBL[1] //跳转到标签LBL[1]
- 22: IF DI[7:ZiDongSiMoShiBai]=ON, //如果输入信号"[7:ZiDongSiMoShiBai]"(自动撕膜失败)变成ON
- : JMP LBL[2] //跳转到标签LBL[2]
- 23: UALM[1]
- 24:
- 25: LBL[1] //标签 LBL[1]
- 26:J P[10] 100% CNT100 //关节位置P[10]
- 27:J P[1] 100% CNT100 //关节位置P[1]
- 28: DO[8:ZiDongSiMoQu]=OFF //输出信号"[8:ZiDongSiMoQu]"变成OFF
- 29: END //结束
- 30:
- 31: LBL[2] //标签 LBL[2]
- 32:J P[10] 100% CNT100 //关节位置 P[10]
- 33:J P[1] 100% CNT100 //关节位置 P[1]
- 34: DO[8:ZiDongSiMoQU]=OFF //输出信号"[8:ZiDongSiMoQU]"(自动撕膜去)变成OFF
- 35: CALL R_MANUAL //调用人工撕膜程序"R_MANUAL"
- [End] //结束
复制代码
【必读】版权免责声明
1、本主题所有言论和内容纯属会员个人意见,与本论坛立场无关。2、本站对所发内容真实性、客观性、可用性不做任何保证也不负任何责任,网友之间仅出于学习目的进行交流。3、对提供的数字内容不拥有任何权利,其版权归原著者拥有。请勿将该数字内容进行商业交易、转载等行为,该内容只为学习所提供,使用后发生的一切问题与本站无关。 4、本网站不保证本站提供的下载资源的准确性、安全性和完整性;同时本网站也不承担用户因使用这些下载资源对自己和他人造成任何形式的损失或伤害。 5、本网站所有软件和资料均为网友推荐收集整理而来,仅供学习用途使用,请务必下载后两小时内删除,禁止商用。6、如有侵犯你版权的,请及时联系我们(电子邮箱1370723259@qq.com)指出,本站将立即改正。
|