RoArm-M2-S 9. Combined Use

From Waveshare Wiki
Jump to: navigation, search
RoArm-M2-S 9. Combined Use
RoArm-M2-S.jpg

I2C, UART
TTL Serial Bus Servo Control Interface,
{{{name2}}}

{{{name3}}}

{{{name4}}}

{{{name5}}}

9. Combined Use

9.1 Start Related Control Nodes

Each control node is to be run under the workspace of the robotic arm ROS2. The following node runs by default you will run under the workspace of the robotic arm ROS2, directly illustrating the relevant control node.
Running robotic arm driving nodes:

ros2 run roarm_driver roarm_driver

Run the Moveit2 drag-and-drop interaction control demo:

ros2 launch moveit_servo servo_control.launch.py rviz_config:=/home/ws/roarm_ws_em0/src/roarm_main/roarm_moveit/config/interact.rviz

Run the keyboard control node:

ros2 run roarm_moveit_cmd keyboardcontrol

Run the Web Application Control node in ROS2:

ros2 run roarm_moveit_cmd webappcontrol

Start Foxglove Web application:

ros2 launch foxglove_bridge foxglove_bridge_launch.xml address:=local IP address

Run the server of ROS2Web application:

ros2 web server --no-auth

Run Web application nodes:

ros2 run roarm_web_app roarm_web_app

9.2 Combined Use

9.2.1 Drag-and-drop

The attitude of the arm can be changed by dragging the drag ball or XYZ axis located at the end of the arm in the Rviz2 page. After dragging and dropping to change the attitude, you need to click "Plan & Execute" in the Planning tab on the right side of the Rviz2 visualization to let the arm execute the dragged attitude motion.
After execution, you need to reset the robot arm to the initial position in the Rviz2 startup screen, then change the "Goal State" option in the Planning tab to "home", and then click "Plan & Execute" again. After that, click "Plan & Execute" again to let the robot arm respond to the movement.

9.2.2 Keyboard Control

Keyboard control requires keeping the terminal window running the keyboard control node active (i.e., ensuring that the keys are located in this terminal window interface when they are operated), and controlling the robotic arm by pressing the following keys:

  • Coordinate control:
    • Direction key : X-axis positive movement;
    • Direction key : X-axis negative movement;
    • Direction key : Y-axis positive movement;
    • Direction key : Y-axis negative movement;
    • ; key: Z-axis positive movement;
    • . key: Z-axis negative movement
  • Joint Control
    • 1 key: basis movement;
    • 2 key: shoulder movement;
    • 3 key: elbow movement;
    • 4 key: clamp movement;
    • R key: switching the direction of motion controlled by the above joints

Finally, just press the letter Q to exit the operation.

9.2.3 Web Terminal Control

Foxglove Web Terminal Control

Within the remote control panel on the left side, you can define the function and direction of the upper, lower, left and right buttons of the steering wheel respectively, and then you can control the robotic arm through the steering wheel.

  • Field: Changing the axis of coordinate control
    • linear-x: X-axis direction movement
    • linear-y: Y-axis direction movement
    • linear-z: Z-axis direction movement
  • Value: The values -1 and 1 represent the opposite direction of motion, respectively; other values are invalid.

M2-S 2.png

ROS2Web App Control

On a computer on the same LAN (which can also be the computer running the VM), open Google Chrome and enter the IP address of the VM in the address bar + :8080/roarm_web_app, for example:

http://192.168.10.104:8080/roarm_web_app

M2-SWeb1.png

You can drag the dot on this web page to control the XY axis of the arm. We have implemented simple functions and arranged simple components in this web page. The components on the left side cannot be controlled by the Launch mentioned above, but users can extend the functions of these components according to their own needs.

9.2.4 Command Control

For more details, you can refer to RoArm-M2-S 8. Control Robotic Arm with Commands.

RoArm-M2-S ROS2 Humble + Moveit2 Tutorial