Download Print this page

Advertisement

Quick Links

Programming Manual
Meca500 (R3)
Robot Firmware: 8.4
Document Revision: A
July 20, 2021

Advertisement

loading
Need help?

Need help?

Do you have a question about the Meca500 (R3) and is the answer not in the manual?

Questions and answers

Summary of Contents for Mecademic Meca500 (R3)

  • Page 1 Programming Manual Meca500 (R3) Robot Firmware: 8.4 Document Revision: A July 20, 2021...
  • Page 3: Table Of Contents

    Contents 1 Basic theory and definitions 1.1 Definitions and conventions 1.2 Configurations, singularities and workspace 1.3 Key concepts related to Mecademic robots 2 Communicating over TCP/IP 2.1 Motion commands �� �� , �� , �� , �� , �� , ��...
  • Page 4 �� , �� , �� �� �� �� �� �� �� �� �� �� �� , �� , �� , �� , �� , �� ��, �� ��, ��, ��, ��, ��, �� �� ��, ��, ��, ��, ��, �� 2.2 Request commands of general type ��...
  • Page 5 �� �� 2.3 Request commands of type user-defined data �� 2.4 Request commands of type real-time data ��...
  • Page 6 �� , �� , ... 2.5 Responses and messages 3 Communicating over cyclic protocols 3.1 Overview 3.2 Types of robot commands 3.3 Sending motion commands to the robot 3.4 Cyclic data that can be sent to the robot...
  • Page 7 3.5 Cyclic data received from the robot 4 Communicating over EtherCAT 4.1 Overview 4.2 Object dictionary 4.3 PDO mapping 5 Communicating over EtherNet/IP 5.1 Overview 5.2 Output Tag Assembly...
  • Page 8 5.3 Input Tag Assembly...
  • Page 9 About this manual...
  • Page 11: Basic Theory And Definitions

    1 Basic theory and definitions 1.1 Definitions and conventions 1.1.1 Units 1.1.2 Joint numbering Flange (a) robot with all joints at zero degrees (b) robot’s flange with joint 6 at zero degrees 1.1.3 Reference frames reference frames �� �� ��...
  • Page 12 BRF base reference frame �� �� WRF world reference frame FRF flange reference frame flange �� �� �� TRF tool reference frame end-effector TCP tool center point 1.1.4 Pose and Euler angles pose Euler angles �� �� �� ��, ��, �� ��...
  • Page 13 (a) rotate about the axis (b) rotate about the new axis (c) rotate about the new axis �� �� �� 45 , 60 , 90 1.1.5 Joint angles and joint 6 turn configuration joint angle �� �� = 1, 2, ..., 6 �� ��...
  • Page 14: Configurations, Singularities And Workspace

    1.1.6 Joint set and robot posture �� , �� , �� , �� , �� , �� joint set joint position 0 , 0 , 0 , 0 , 0 , 0 0 , 0 , 0 , 0 , 0 , 360 robot posture ��...
  • Page 15 1, 1, 1 1, 1, 1 1, 1, 1 1, 1, 1 1, 1, 1 1, 1, 1 1, 1, 1 1, 1, 1 �� , �� , �� �� �� �� 36 175 singularities �� , �� , �� ��...
  • Page 16 , front (b) shoulder singularity , back �� = 1 �� = , elbow down (e) elbow singularity , elbow down �� = 1 �� = , noflip (h) wrist singularity , flip �� = 1 �� =...
  • Page 17 online mode robot position �� 1.2.2 Automatic configuration selection off-line mode...
  • Page 18 SetConf MovePose SetAutoConf MoveJoints MoveJointsVel MoveLin SetConfTurn MoveLinRelTRF MoveLinRelWRF MoveLinVelTRF MoveLinVelWRF SetAutoConfTurn Notes: 1. SetConf( ) disables the AutoConf setting, while SetAutoConf(1) disables the desired robot posture configuration setting. 2. SetConfTurn( ) disables the AutoConfTurn setting, while SetAutoConfTurn(1) disables the desired turn setting. 3.
  • Page 19 �� 1.2.3 Workspace and singularities reach workspace singularities...
  • Page 20: Key Concepts Related To Mecademic Robots

    �� �� �� �� wrist singularity �� elbow singularity �� arctan(60/19) 72.43 shoulder singularity 1.3 Key concepts related to Mecademic robots 1.3.1 Homing homing...
  • Page 21 NOTICE +720 1.3.2 Blending position mode Cartesian-space joint-space blending...
  • Page 22 1.3.3 Position and velocity modes position mode velocity mode...
  • Page 23 Joint space Cartesian space SetCartLinVel(mm/s) SetJointVel(%) SetCartAngVel(°/s) MoveLin(mm, mm, mm, °, °, °) Position MoveJoints(°, °, °, °, °, °) MoveLinRelTRF(mm, mm, mm, °, °, °) mode MovePose(mm, mm, mm, °, °, °) MoveLinRelWRF(mm, mm, mm, °, °, °) SetJointAcc(%) SetCartAcc(%) MoveLinVelTRF(mm/s, mm/s, mm/s, °/s, °/s, °/s) Velocity...
  • Page 25: Communicating Over Tcp/Ip

    2 Communicating over TCP/IP control port monitoring port motion commands request commands default values persistants 2.1 Motion commands motion queue...
  • Page 26: Xd835;�

    2.1.1 Delay( �� Arguments 2.1.2 GripperOpen/GripperClose...
  • Page 27 2.1.3 MoveJoints( �� , �� , �� , �� , �� , �� Arguments �� �� �� = 1, 2, ..., 6 �� �� �� �� �� �� 36, 000 �� 36, 000 2.1.4 MoveJointsVel( ˙ �� , ˙ �� , ˙...
  • Page 28 Arguments �� �� �� = 1, 2, ..., 6 /�� �� ˙ �� 150 / 150 / ˙ �� 150 / 150 / ˙ �� 180 / 180 / ˙ �� 300 / 300 / ˙ �� 300 / 300 / ˙...
  • Page 29 Arguments �� �� �� �� �� �� 2.1.6 MoveLinRelTRF( ��, ��, ��, ��, ��, �� �� �� �� �� �� �� Arguments �� �� �� �� �� �� 2.1.7 MoveLinRelWRF( ��, ��, ��, ��, ��, ��...
  • Page 30 Arguments �� �� �� �� �� �� 2.1.8 MoveLinVelTRF( ˙ ��, ˙ ��, ˙ ��, �� , �� , �� �� �� �� Arguments ˙ �� ˙ �� ˙ �� 1000 �� �� �� /�� �� �� �� 2.1.9 MoveLinVelWRF( ˙...
  • Page 31 2.1.10 MovePose( ��, ��, ��, ��, ��, �� Arguments �� �� �� �� �� �� 2.1.11 SetAutoConf( ��...
  • Page 32 Arguments �� Default values 2.1.12 SetAutoConfTurn( �� Arguments �� Default values 2.1.13 SetBlending( ��...
  • Page 33 Arguments �� Default values 2.1.14 SetCartAcc( �� Arguments �� Default values 2.1.15 SetCartAngVel( �� Arguments �� Default values...
  • Page 34 2.1.16 SetCartLinVel( �� Arguments �� Default values 2.1.17 SetCheckpoint( �� �� �� Arguments �� Responses �� 2.1.18 SetConf( �� , �� , �� �� �� ��...
  • Page 35 Arguments �� �� �� �� �� �� Default values 2.1.19 SetConfTurn( �� �� Arguments �� �� 180 + �� 360 < �� 180 + �� �� �� Default values �� 2.1.20 SetGripperForce( �� Arguments �� Default values...
  • Page 36 2.1.21 SetGripperVel( �� Arguments �� Default values 2.1.22 SetJointAcc( �� Arguments �� Default values 2.1.23 SetJointVel( �� Arguments �� Default values ��...
  • Page 37 2.1.24 SetTorqueLimits( �� , �� , �� , �� , �� , �� Arguments �� �� �� �� = 1, 2, ..., 6 Default values 2.1.25 SetTorqueLimitsCfg( ��, �� Arguments �� ��...
  • Page 38 Default values 2.1.26 SetTRF( ��, ��, ��, ��, ��, �� Arguments �� �� �� �� �� �� Default values 2.1.27 SetVelTimeout( �� Arguments �� Default values 2.1.28 SetWRF( ��, ��, ��, ��, ��, �� Arguments �� �� �� �� �� ��...
  • Page 39 2.2 Request commands of general type 2.2.1 ActivateRobot Responses 2.2.2 ActivateSim/DeactivateSim Responses 2.2.3 ClearMotion...
  • Page 40 Responses 2.2.4 DeactivateRobot Responses 2.2.5 BrakesOn/BrakesOff Responses 2.2.6 EnableEtherNetIP( �� Arguments �� Default values 2.2.7 GetFwVersion Responses...
  • Page 41 2.2.8 GetModelJointLimits( �� Arguments �� Responses ��, �� , �� ��,������ ��,������ �� �� ��,������ �� ��,������ 2.2.9 GetProductType Responses 2.2.10 GetRobotSerial Responses 2.2.11 Home Responses...
  • Page 42 2.2.12 LogTrace( �� Arguments �� Responses 2.2.13 PauseMotion Responses...
  • Page 43 2.2.14 ResetError Responses 2.2.15 ResetPStop Responses �� �� = 1 �� = 0 2.2.16 ResumeMotion Responses...
  • Page 44 2.2.17 SetEOB( �� Arguments �� Default values Responses 2.2.18 SetEOM( �� Arguments �� Default values Responses 2.2.19 SetJointLimits( �� �� �� ��,������ ��,������...
  • Page 45 Arguments �� �� ��,������ �� ��,������ Responses �� 2.2.20 SetJointLimitsCfg( �� Arguments �� Responses 2.2.21 SetMonitoringInterval( �� Arguments...
  • Page 46 Default values 2.2.22 SetNetworkOptions( �� , �� , �� , �� , �� , �� Arguments �� �� �� , �� , �� , �� , �� Default values �� 2.2.23 SetOfflineProgramLoop( �� Arguments �� Default values Responses 2.2.24 SetRTC( ��...
  • Page 47 Arguments �� 2.2.25 StartProgram( �� Arguments �� �� Responses �� 2.2.26 StartSaving( �� offline program...
  • Page 48 Arguments �� �� Responses 2.2.27 StopSaving Responses �� 2.2.28 SwitchToEtherCAT...
  • Page 49 2.2.29 TCPDump( �� Arguments �� Responses �� 2.2.30 TCPDumpStop �� �� Responses 2.3 Request commands of type user-defined data 2.3.1 GetAutoConf...
  • Page 50 Responses �� �� 2.3.2 GetAutoConfTurn Responses �� �� 2.3.3 GetBlending Responses �� �� 2.3.4 GetCartAcc Responses �� �� 2.3.5 GetCartAngVel Responses �� �� 2.3.6 GetCartLinVel...
  • Page 51 Responses �� �� 2.3.7 GetCheckpoint Responses �� �� 2.3.8 GetConf Responses �� , �� , �� �� �� �� �� �� �� �� �� �� 2.3.9 GetConfTurn Responses �� �� �� ��...
  • Page 52 2.3.10 GetGripperForce Responses �� �� 2.3.11 GetGripperVel Responses �� �� 2.3.12 GetJointAcc Responses �� �� 2.3.13 GetJointLimits( �� Arguments �� Responses ��, �� , �� ��,������ ��,������ �� �� ��,������ �� ��,������...
  • Page 53 2.3.14 GetJointLimitsCfg Responses �� �� 2.3.15 GetJointVel Responses �� �� 2.3.16 GetMonitoringInterval Responses �� 2.3.17 GetNetworkOptions Responses �� , �� , �� , �� , �� , �� �� �� �� , �� , �� , �� , �� 2.3.18 GetRealTimeMonitoring...
  • Page 54 Responses �� , �� , ... 2.3.19 GetTorqueLimits Responses �� , �� , �� , �� , �� , �� �� �� �� �� 2.3.20 GetTorqueLimitsCfg Responses ��, �� �� �� 2.3.21 GetTRF Responses ��, ��, ��, ��, ��, �� ��...
  • Page 55 Responses �� �� 2.3.23 GetWRF Responses ��, ��, ��, ��, ��, �� �� �� �� �� �� �� 2.4 Request commands of type real-time data 0.001...
  • Page 56 2.4.1 GetCmdPendingCount Responses �� 2.4.2 GetJoints Responses �� , �� , �� , �� , �� , �� �� �� �� = 1, 2, ..., 6 �� 2.4.3 GetPose Responses ��, ��, ��, ��, ��, �� �� �� �� �� �� ��...
  • Page 57 2.4.4 GetRtAccelerometer( �� 32, 000 Arguments �� Responses ��, ��, �� , �� , �� �� �� �� �� �� �� �� �� �� �� �� 2.4.5 GetRTC Responses �� �� 2.4.6 GetRtCartPos target...
  • Page 58 Responses ��, ��, ��, ��, ��, ��, �� �� �� �� �� �� �� �� 2.4.7 GetRtCartVel Responses ��, ˙ ��, ˙ ��, ˙ ��, �� , �� , �� �� �� �� �� ˙ ��, ˙ ��, ˙ �� ��...
  • Page 59 2.4.9 GetRtConfTurn Responses ��, �� �� �� �� �� 2.4.10 GetRtJointPos Responses ��, �� , �� , �� , �� , �� , �� �� �� �� �� = 1, 2, ..., 6 �� 2.4.11 GetRtJointTorq Responses ��, �� , �� , ��...
  • Page 60 2.4.12 GetRtJointVel Responses ��, ˙ �� , ˙ �� , ˙ �� , ˙ �� , ˙ �� , ˙ �� �� ˙ �� �� �� = 1, 2, ..., 6 �� 2.4.13 GetRtTargetCartPos Responses ��, ��, ��, ��, ��, ��, �� ��...
  • Page 61 Responses ��, �� , �� , �� �� �� �� �� �� �� �� �� �� �� 2.4.16 GetRtTargetConfTurn Responses ��, �� �� �� �� �� 2.4.17 GetRtTargetJointPos Responses ��, �� , �� , �� , �� , �� , �� ��...
  • Page 62 2.4.19 GetStatusGripper Responses ����, ℎ��, ��ℎ, ����, ����, ���� ���� ℎ�� ��ℎ ���� ���� ��ℎ 2.4.20 GetStatusRobot Responses ����, ℎ��, ����, ����, ����, ������, ������ ���� ℎ�� ���� ���� ���� ������ ������ ���� = 1 2.4.21 GetTorqueLimitsStatus Responses �� ��...
  • Page 63 2.4.22 SetRealTimeMonitoring( �� , �� , ... Arguments �� , �� , ... TargetJointPos TargetCartPos TargetCartVel TargetConf TargetConfTurn JointPos CartPos JointVel JointTorq CartVel Conf ConfTurn Accel Default values...
  • Page 64 Responses �� , �� , ... �� , �� , ... 2.5 Responses and messages [1000] [1999] [2000] [2999] [3000] [3999] 2.5.1 Command error messages...
  • Page 65 Message Explanation...
  • Page 66 Message Explanation 2.5.2 Command responses Command Possible response(s)
  • Page 67 Command Possible response(s) �� �� �� �� �� �� �� �� �� , �� , �� �� �� �� �� �� �� �� �� ��, �� , �� ��,������ ��,������ �� �� , �� , �� , �� , �� , ��...
  • Page 68 Command Possible response(s) ��, �� , �� , �� �� �� �� ��, �� �� ��, �� , �� , �� , �� , �� , �� ��, ˙ �� , ˙ �� , ˙ �� , ˙ �� , ˙ �� , ˙...
  • Page 69 Command Possible response(s) �� �� 2.5.3 Status messages Message Explanation...
  • Page 70 Message Explanation �� �� �� �� �� = 1 �� = 0 2.5.4 Messages over the monitoring port �� , �� , �� , �� , �� , �� ��, ��, ��, ��, ��, �� �� , �� , �� ��...
  • Page 71 �� [2026][ -102.6011 , -0.0000 , -78.9239 , -0.0000 ,15.7848 ,110.3150] [2027][ -3.7936 , -16.9703 ,457.5125 ,26.3019 , -5.6569 ,9.0367] [2029][ -1 , -1 ,1] [2208][58675156984 , -1 , -1 ,1] [2209][58675156984 ,0] [2230][58675156984]...
  • Page 73 3 Communicating over cyclic protocols 3.1 Overview 3.1.1 Cyclic data cyclic data 3.2 Types of robot commands 3.2.1 Status change commands 3.2.2 Triggered actions...
  • Page 74 3.2.3 Motion commands motion queue 3.3 Sending motion commands to the robot 3.3.1 CommandID 3.3.2 MoveID and SetPoint...
  • Page 75 3.3.3 Adding non-cyclic motion commands to the motion queue (position mode) – – – –...
  • Page 76 3.3.4 Sending cyclic motion commands (velocity mode) – – – 3.4 Cyclic data that can be sent to the robot 3.4.1 Robot control...
  • Page 77 Field Type Description 3.4.2 Motion control Field Type Description 3.4.3 Motion parameters...
  • Page 78 Field Type Description ID Description...
  • Page 79 ID Description 3.5 Cyclic data received from the robot...
  • Page 80 Field Type Description Field Type Description...
  • Page 81 Field Type Description Field Type Description...
  • Page 83 4 Communicating over EtherCAT 4.1 Overview 4.1.1 Connection types 4.1.2 ESI file 4.1.3 Enabling EtherCAT...
  • Page 84 4.1.4 LEDs LED Name LED State EtherCAT state 4.2 Object dictionary...
  • Page 85 4.2.1 Robot control Index SI O. code Type Name Default Min. Max. Access PDO 4.2.2 Motion control Index SI O. code Type Name Default Min. Max. Access PDO 4.2.3 Movement...
  • Page 86 Index SI O. code Type Name Default Min. Max. Access PDO ⋆ ⋆ ⋆ ⋆ ⋆ ⋆ ⋆ 4.2.4 Robot status Index SI O. code Type Name Default Min. Max. Access PDO 4.2.5 Motion status...
  • Page 87 Index SI O. code Type Name Default Min. Max. Access PDO 4.2.6 Gripper status Index SI O. code Type Name Default Min. Max. Access PDO 4.2.7 Joint set...
  • Page 88 Index SI O. code Type Name Default Min. Max. Access PDO 36, 000 4.2.8 End-effector pose Index SI O. code Type Name Default Min. Max. Access PDO 4.2.9 Configuration Index SI O. code Type Name Default Min. Max. Access PDO ��...
  • Page 89 4.2.10 Joint velocities Index SI O. code Type Name Default Min. Max. Access PDO 4.2.11 Torque ratios Index SI O. code Type Name Default Min. Max. Access PDO 4.2.12 Accelerometer...
  • Page 90 Index SI O. code Type Name Default Min. Max. Access PDO 4.2.13 Communication mode (SDO) Index SI O. code Type Name Default Min. Max. Access PDO 4.2.14 Brakes (SDO)
  • Page 91 Index SI O. code Type Name Default Min. Max. Access PDO 4.3 PDO mapping Object(s) Name Note Object Name Note...
  • Page 93 5 Communicating over EtherNet/IP 5.1 Overview 5.1.1 Connection types 5.1.2 EDS file 5.1.3 Forward open exclusivity 5.1.4 Enabling EtherNet/IP...
  • Page 94 5.2 Output Tag Assembly Bytes Data Type Name Description 5.2.1 Robot control tag...
  • Page 95 Bytes Data Type Bits 5–31 Bit 4 Bit 3 Bit 2 Bit 1 Bit 0 5.2.2 MoveID tag Bytes Data Type Name Minimum Maximum 5.2.3 Motion control tag Bytes Data Type Bits 4–15 Bit 3 Bit 2 Bit 1 Bit 0 5.2.4 Motion command group of tags Bytes Data Type Name Possible values...
  • Page 96 Bytes Data Type Name 5.2.5 Host time tag Bytes Data Type Name Minimum Maximum 5.2.6 Brakes control tag...
  • Page 97 Bytes Data Type Bits 2–31 Bit 1 Bit 0 5.3 Input Tag Assembly Bytes Data Type Data Description �� �� �� �� �� �� �� �� �� �� �� ��...
  • Page 98 Bytes Data Type Data Description �� �� �� �� �� �� �� �� �� �� �� 5.3.1 Robot status tag Bytes Data Type Bits 5–15 Bit 4 Bit 3 Bit 2 Bit 1 Bit 0 5.3.2 Error code tag...
  • Page 99 Bytes Data Type Name Minimum Maximum 5.3.3 Checkpoint tag Bytes Data Type Name Minimum Maximum 5.3.4 MoveID tag Bytes Data Type Name Minimum Maximum 5.3.5 FIFO space tag Bytes Data Type Name Minimum Maximum 5.3.6 Motion status tag Bytes Data Type Bits 6–15 Bit 5 Bit 4 Bit 3 Bit 2 Bit 1 Bit 0...
  • Page 100 5.3.7 Offline program ID Bytes Data Type Name Minimum Maximum 5.3.8 Joint set Bytes Data Type Name Minimum Maximum 5.3.9 End-effector pose Bytes Data Type Name...
  • Page 101 5.3.10 Joint velocities Bytes Data Type Name Minimum Maximum 5.3.11 Joint torque ratios Bytes Data Type Name Minimum Maximum 5.3.12 Accelerometer...
  • Page 102 Bytes Data Type Name Minimum Maximum 5.3.13 Gripper status tag Bytes Data Type Bits 5–15 Bit 4 Bit 3 Bit 2 Bit 1 Bit 0 5.3.14 Configuration Bytes Data Type Name Minumum Maximum 5.3.15 Reserved bytes...