当前位置:首页 > ABB机器人程序实例ROBOT studio 6.01(附带与工业相机网络通讯实例)
ABB机器人(ROBOT studio 6.01)程序实例
MODULE MainModule PERS tooldata
tGripper:=[TRUE,[[0.533078,1.51617,583.739],[1,0,0,0]],[30,[0,0,50],[1,0,0,0],0,0,0]];
TASK PERS wobjdata
VisionWobj:=[FALSE,TRUE,\,[[0,0,0],[1,0,0,0]],[[-934.534,1807.34,-76.7707],[0.400996,0.0128267,-0.0292473,-0.915523]]]; TASK PERS wobjdata
WobjCompressor1:=[FALSE,TRUE,\,[[518.656,-1088.9,164.25],[0,0,0,1]],[[686.651,296.298,-588.529],[0.917114,1.69419E-06,-7.35001E-05,-0.398626]]]; TASK PERS wobjdata
WobjCompressor2:=[FALSE,TRUE,\,[[518.656,-1088.9,164.25],[0,0,0,1]],[[-944.871,-657.402,-323.406],[0.918098,-1.98999E-05,-6.49686E-06,0.396353]]]; PERS wobjdata WobjCompressor;
VAR robtarget pActualPos; VAR socketdev server_socket; VAR socketdev client_socket; VAR string client_ip; VAR string stReceived;
VAR num NumCharacters:=9; VAR bool bOK;
PERS num nXOffs; PERS num nYOffs; PERS num nAngleOffs; VAR string XData:=\; VAR string YData:=\; VAR string AngleData:=\;
VAR num nPresenceOrAbsence;
PERS num nPickH:=-400; PERS num nCountX; PERS num nCountY; PERS num nCountZ; PERS num nCount; VAR num nPlaceNo;
PERS bool bSMPreOrAbs; PERS bool bInpos;
VAR robtarget PVision; VAR robtarget Vision; VAR robtarget ppPick; VAR robtarget pPick;
PERS robtarget Pick;
PERS robtarget ErCiDingWeiPlace; PERS robtarget ErCiDingWeiPick; PERS robtarget pPlace;
PERS robtarget PlaceVision; PERS robtarget PZhanban; PERS robtarget PZhanbanUp; PERS robtarget PZhanbanDown; PERS robtarget PlaceZhanban; PERS robtarget Place;
PERS bool bKindChoose; VAR num nAngle; VAR num nX;
VAR num nCamOut; VAR num nInpos;
VAR num nTotalPalletHigh; VAR num nPalletHigh; PERS num nPalletHighUp; PERS num nPalletHighDown; VAR num Compensation{8,3}; VAR num CompensationTwo{8,3}; PERS num
CompensationErr{8,3}:=[[999999,999999,999999],[999999,999999,999999],[999999,999999,999999],[999999,999999,999999],[999999,999999,999999],[999999,999999,999999],[999999,999999,999999],[999999,999999,999999]]; PERS jointtarget
jposHome:=[[0,0,0,0,0,0],[9E+09,9E+09,9E+09,9E+09,9E+09,9E+09]]; CONST robtarget
pHome:=[[621.23,-975.96,1166.44],[0.00703884,-0.385671,-0.922573,-0.00826231],[-1,0,-1,0],[9E+09,9E+09,9E+09,9E+09,9E+09,9E+09]]; CONST robtarget
PZhanbanSafe:=[[-162.69,-1703.07,2270.38],[0.0109452,-0.955357,-0.295179,-0.00645602],[-1,-1,-1,0],[9E+09,9E+09,9E+09,9E+09,9E+09,9E+09]];
CONST robtarget
VisionA:=[[-228.96,94.47,643.11],[0.00434955,-0.699954,0.714102,-0.0101798],[-2,-1,0,0],[9E+09,9E+09,9E+09,9E+09,9E+09,9E+09]]; CONST robtarget
PickA:=[[90.09,79.65,61.29],[0.0102135,0.00299714,0.999935,-0.00417093],[-2,-1,1,0],[9E+09,9E+09,9E+09,9E+09,9E+09,9E+09]]; CONST robtarget
PlaceA:=[[-644.46,-1019.60,396.56],[0.00841448,-0.692574,0.721298,0.000680825],[-1,-1,1,0],[9E+09,9E+09,9E+09,9E+09,9E+09,9E+09]]; CONST robtarget
PZhanbanUpA:=[[549.64,541.39,821.21],[0.000808037,-0.999985,-0.00498684,-0.00209158],[-2,-1,-1,0],[9E+09,9E+09,9E+09,9E+09,9E+09,9E+09]]; CONST robtarget
PZhanbanDownA:=[[548.40,560.53,179.18],[0.00417276,0.999929,-0.00436864,0.0102239],[-2,-1,-1,0],[9E+09,9E+09,9E+09,9E+09,9E+09,9E+09]]; CONST robtarget
PlaceZhanbanA:=[[2456.73,-1154.76,205.32],[0.0106126,-0.0247295,-0.999603,0.00838785],[1,-1,0,0],[9E+09,9E+09,9E+09,9E+09,9E+09,9E+09]]; PERS num
CompensationA{8,3}:=[[0,0,0],[210,136,0],[430,264,99999999],[645,403,99999999],[855,533,99999999],[99999999,670,99999999],[99999999,800,99999999],[99999999,936,99999999]]; PERS num
CompensationA1{8,3}:=[[860,936,0],[0,0,0],[215,133,99999999],[430,264,99999999],[645,403,99999999],[99999999,533,99999999],[99999999,670,99999999],[99999999,800,99999999]]; PERS num
CompensationA2{8,3}:=[[860,0,0],[0,133,0],[215,264,99999999],[430,403,99999999],[645,533,99999999],[99999999,670,99999999],[99999999,800,99999999],[99999999,936,99999999]];
CONST num nPalletHighUpA:=100; CONST num nPalletHighDownA:=200;
CONST robtarget
VisionB:=[[936.63,959.75,378.90],[0.00373262,0.105479,-0.994406,-0.00407233],[-1,0,0,0],[9E+09,9E+09,9E+09,9E+09,9E+09,9E+09]]; CONST robtarget
PickB:=[[1180.22,1009.95,213.74],[0.00373443,0.1055,-0.994404,-0.00406331],[-1,0,0,0],[9E+09,9E+09,9E+09,9E+09,9E+09,9E+09]]; CONST robtarget
PlaceB:=[[-1194.30,-1552.83,582.17],[0.0062614,0.795938,-0.605346,-0.000999941],[0,0,0,0],[9E+09,9E+09,9E+09,9E+09,9E+09,9E+09]]; CONST robtarget
PZhanbanUpB:=[[511.86,550.08,92.05],[0.00172284,-0.00758955,-0.99997,-0.000606164],[-1,0,1,0],[9E+09,9E+09,9E+09,9E+09,9E+09,9E+09]]; CONST robtarget
PZhanbanDownB:=[[511.86,550.08,92.05],[0.00172284,-0.00758955,-0.99997,-0.000606164],[-1,0,1,0],[9E+09,9E+09,9E+09,9E+09,9E+09,9E+09]]; CONST robtarget
PlaceZhanbanB:=[[511.86,550.08,92.05],[0.00172284,-0.00758955,-0.99997,-0.000606164],[-1,0,1,0],[9E+09,9E+09,9E+09,9E+09,9E+09,9E+09]]; PERS num
CompensationB{8,3}:=[[0,0,300],[210,136,0],[430,264,99999999],[645,403,99999999],[855,533,99999999],[99999999,670,99999999],[99999999,800,99999999],[99999
999,936,99999999]]; PERS num
CompensationB1{8,3}:=[[860,936,300],[0,0,0],[215,133,99999999],[430,264,99999999],[645,403,99999999],[99999999,533,99999999],[99999999,670,99999999],[99999999,800,99999999]]; PERS num
CompensationB2{8,3}:=[[860,0,300],[0,133,0],[215,264,99999999],[430,403,99999999],[645,533,99999999],[99999999,670,99999999],[99999999,800,99999999],[99999999,936,99999999]];
CONST num nPalletHighUpB:=100; CONST num nPalletHighDownB:=200;
PERS speeddata vMinEmpty:=[1300,100,6000,1000]; PERS speeddata vMidEmpty:=[1400,100,6000,1000]; PERS speeddata vMaxEmpty:=[1500,100,6000,1000]; PERS speeddata vBigMaxEmpty:=[1500,100,6000,1000]; PERS speeddata vMinLoad:=[1200,100,6000,1000]; PERS speeddata vMaxLoad:=[1300,100,6000,1000]; PERS speeddata vBigMaxLoad:=[1400,100,6000,1000]; TASK PERS wobjdata
wobj1:=[FALSE,TRUE,\,[[0,0,0],[1,0,0,0]],[[1984.06,-1180.48,453.803],[0.661114,-0.659907,-0.252753,0.252124]]];
PROC Main() rInitAll;
WHILE TRUE DO rPickCal; rPick; ENDWHILE WaitTime 0.3; ENDPROC
PROC rInitAll() AccSet 60,100;
Compensation:=CompensationErr; CompensationTwo:=CompensationErr; reg1 :=0; reg2 :=0; nCountX:=1; nCountY:=1; nCount:=0; nCountZ:=1;
nTotalPalletHigh:=0; nPalletHigh:=0;
共分享92篇相关文档