分享

ABB机器人串口通讯画任意几何尺寸的圆和方

 阿明哥哥资料区 2022-10-10 发布于上海

图片

VAR iodev iodev1;

VAR num Reveice_Byte{8};

VARjointtargetPhome:=[[3.10955,-30.1587,14.6977,-2.07106,67.5213,3.24353],[9E+09,9E+09,9E+09,9E+09,9E+09,9E+09]];

    VAR robtarget p10:=[[489.04,0.00,391.23],[5.33165E-05,1.24356E-36,-1,1.2047E-37],[0,-1,0,0],[9E+09, 9E+09,9E+09,9E+09,9E+09,9E+09]];

    VAR robtarget p20:=[[509.73,61.76,296.50],[5.31843E-05,4.00685E-08,-1,3.36067E-08],[0,-1,0,0],[9E+09, 9E+09,9E+09,9E+09,9E+09,9E+09]];

    VAR robtarget p30:=[[504.33,-38.24,296.50],[5.31562E-05,-3.26453E-09,-1,9.48518E-09],[-1,0,-1,0],[9E +09,9E+09,9E+09,9E+09,9E+09,9E+09]];

    PERS tooldata MyTool:=[TRUE,[[31.792631019,0,229.638935148],[0.945518576,0,0.325568154,0]],[1,[0,0,1],[1,0,0,0],0,0 ,0]];

    主过程()

        关闭iodev1;

        打开 'COM1:',iodev1\Bin;

        ClearIOBuff iodev1;

        为我从 1 到 8 做

            Reveice_Byte{i}:=ReadBin(iodev1);

        ENDFOR

        MoveAbsJ Phome\NoEOffs,v1000,fine,mytool\WObj:=wobj0;

        MoveL p10,v1000,fine,mytool\WObj:=wobj0;

        IF Reveice_Byte{2}=1 THEN

            元;

        ELSEIF Reveice_Byte{2}=2 THEN

        别

            停止;

        万一

    ENDPROC

    过程元()

        TPReadNum Reveice_Byte{3}, '';

        MoveL p20,v1000,fine,mytool\WObj:=wobj0;

        IF Reveice_Byte{3}=50 THEN

            MoveL p20,v1000,fine,mytool\WObj:=wobj0;

           MoveC offs(p20,25,25,0),offs(p20,0,50,0),v1000,fine,mytool\WObj:=wobj0;

            MoveC offs(p20,-25,25,0),p20,v1000,fine,mytool\WObj:=wobj0;

        ELSEIF Reveice_Byte{3}=100 THEN

            MoveL p20,v1000,fine,mytool\WObj:=wobj0;

         MoveC offs(p20,50,50,0),offs(p20,0,100,0),v1000,fine,mytool\WObj:=wobj0;

            MoveC offs(p20,-50,50,0),p20,v1000,fine,mytool\WObj:=wobj0;

        ELSEIF Reveice_Byte{3}=150 THEN

            MoveL p20,v1000,fine,mytool\WObj:=wobj0;

         MoveC offs(p20,75,75,0),offs(p20,0,150,0),v1000,fine,mytool\WObj:=wobj0;

            MoveC offs(p20,-75,75,0),p20,v1000,fine,mytool\WObj:=wobj0;

        别

            停止;

        万一

        MoveAbsJ Phome\NoEOffs,v1000,fine,mytool\WObj:=wobj0;

    ENDPROC

    过程方()

        MoveL p20,v1000,fine,mytool\WObj:=wobj0;

        MoveL p30,v1000,fine,mytool\WObj:=wobj0;

        TPReadNum Reveice_Byte{4}, '';

        IF Reveice_Byte{4}=50 THEN

            MoveL p30, v1000, 很好, mytool\WObj:=wobj0;

            MoveL Offs(p30,25,0,0), v1000, 很好, mytool\WObj:=wobj0;

            MoveL Offs(p30,25,-50,0), v1000, 很好, mytool\WObj:=wobj0;

            MoveL Offs(p30,-25,-50,0), v1000, 很好, mytool\WObj:=wobj0;

            MoveL Offs(p30,-25,0,0), v1000, 很好, mytool\WObj:=wobj0;

            MoveL p30, v1000, 很好, mytool\WObj:=wobj0;

        ELSEIF Reveice_Byte{4}=100 THEN

            MoveL p30, v1000, 很好, mytool\WObj:=wobj0;

            MoveL Offs(p30,50,0,0), v1000, 很好, mytool\WObj:=wobj0;

            MoveL Offs(p30,50,-100,0), v1000, 很好, mytool\WObj:=wobj0;

            MoveL Offs(p30,-50,-100,0), v1000, 很好, mytool\WObj:=wobj0;

            MoveL Offs(p30,-50,0,0), v1000, 很好, mytool\WObj:=wobj0;

            MoveL p30, v1000, 很好, mytool\WObj:=wobj0;

        ELSEIF Reveice_Byte{4}=150 THEN

            MoveL p30, v1000, 很好, mytool\WObj:=wobj0;

            MoveL Offs(p30,75,0,0), v1000, 很好, mytool\WObj:=wobj0;

            MoveL Offs(p30,75,-150,0), v1000, 很好, mytool\WObj:=wobj0;

            MoveL Offs(p30,-75,-150,0), v1000, 很好, mytool\WObj:=wobj0;

            MoveL Offs(p30,-75,0,0), v1000, 很好, mytool\WObj:=wobj0;

            MoveL p30, v1000, 很好, mytool\WObj:=wobj0;

        别

            停止;

        万一

        MoveAbsJ Phome\NoEOffs,v1000,fine,mytool\WObj:=wobj0;

    ENDPROC

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多