MMP Husky TUM

_images/husky_tum_1.webp

Getting Started

To start-up the Husky, the instructional video playlist can be used which details the opening and use of the Husky.

Platform Overview

The Husky TUM project is equipped with a state-of-the-art configuration tailored to meet its diverse operational requirements. At its core, it features the Clearpath Husky (IP44) platform, powered by a Mitac MP1-11TGS-1185G7E processor with 16GB of RAM and a 500GB SSD, ensuring efficient data processing and ample storage capabilities.

The robotic arm utilized in the system is the UFactory xArm6, controlled via the UFactory xArm DC Control Box, offering precise manipulation and versatility in performing various tasks. Additionally, the system integrates the ROBOTIQ 2-Finger-Gripper 2F-140 CB3, which provides dexterous and reliable object handling. The Phidgets Spatial 3/3/3 Basic IMU enhances the robot’s spatial awareness, enabling improved navigation and stability.

Sensory input is enriched by two cutting-edge cameras: the Intel® RealSense Depth Camera D405, mounted as a wrist camera on xArm, and the Intel® RealSense Depth Camera D455f, mounted on an aluminum frame for enhanced environmental perception. Accurate environmental mapping and obstacle detection are facilitated by the HOKUYO UST-20LX LiDAR.

This advanced setup ensures robust performance across a wide range of tasks, making the Husky TUM a versatile and powerful platform for modern robotic applications.

Robot Interface

Instructions for interfacing with the robot using Ubuntu 22.04 and ROS2 Humble.

Important

This procedure should be followed after reading the manuals for the Clearpath Husky as well as the Ufactory xArm6. Furthermore, all of the Husky’s functionality can be verified via the tutorials by Clearpath. Instructions for set up can be found at Husky Docs .

_images/hsky_tum_interface.webp

The Ethernet port at the top of the Husky can be utilized for setting up communication via LAN.

Static Network Connection

For the first time, one needs to connect through a LAN cable to configure the robot’s network. To create a static connection in your PC (not the robots), in Ubuntu go to Settings → Network then click on + and create a new connection.

  1. Change the connection to Manual in the IPv4 settings.

  2. Set the Address IP as 192.168.131.51 and the Netmask as 24.

  3. Click save and restart your network.

After a successful connection, check the host’s local IP by typing in the Host PC’s terminal:

ifconfig

Now, ping the robot:

ping 192.168.131.1

Access the robot via SSH:

ssh -X administrator@192.168.131.1

The default password is:

mybotshop

Husky IP Addresses

Device

IP Address

Password

Husky MCU

192.168.131.1

mybotshop

Router

192.168.131.100

mybotshop

xArm

192.168.131.5

X

Husky Hokuyo

192.168.131.20

X

Husky Ouster

192.168.131.21

X

Note

Sometimes other networks can cause disruptions when connecting to the Husky. It is best to have only your connection to the robot active and all others inactive.

Quick-Start

Powering on the Husky

Power Button

Power Button

Emergency Switch Release

Emergency Switch Release

Charging Port

Charging Port

  • Ensure the emergency button is released as well as the key is turned to the unlock position.

    ◦ To check if the emergency switch is released, twist the switch in the indicated direction on it. If it pops up, then the switch has successfully been released.

    ◦ If the robot light is yellow, it means that either the emergency switch is not released or the key is not turned.

  • Press the power button on the front of the Husky. It has the power symbol as displayed.

Charging the Husky

_images/charging_indicator.png

LED Voltage Indicators

The power port can be used to charge the Husky. The indicator shows the voltage levels of the Husky and does not necessarily indicate the remaining power available.

Manipulator Activation

_images/hsky_tum_side.webp

To power on the xARM6 and Robotiq 2F-140:

ros2 launch hsky_xarm system.launch.py

This command launches the driver for the xARM6, integrates with MoveIt2, and activates the Robotiq 2F-140 gripper for manipulation tasks.

Gripper Control

To control the Robotiq 2F-140 gripper:

  • Open Gripper:

    ros2 action send_goal /a200_1058/GripperPosition hsky_msgs/action/GripperPosition final_position:\ 0
    
  • Close Gripper:

    ros2 action send_goal /a200_1058/GripperPosition hsky_msgs/action/GripperPosition final_position:\ 255
    

Important

Ensure that the hsky_xarm driver is running when using the gripper control commands.

Logitech Controller

  1. Logitech button is to power on the controller.

  2. L1 is the dead man’s switch for slow speed.

  3. R1 is the dead man’s switch for high speed.

  4. LJ is to move in x and y direction.

Digital Twin (RVIZ2)

To visualize the Husky, you can run:

ros2 launch hsky_viz view_robot.launch
_images/husky_tum_rviz.webp

ROS2 Drivers | Start-up

The ROS2 drivers mentioned below are all automatically started when launching the system launch file. These drivers further expand on the functionality for interfacing as well as for independent component checking.

  • clearpath-robot — Manages all Clearpath Husky-related services.

  • clearpath-platform — Handles Husky’s hardware-related drivers.

  • mbs-hokuyo — Activates the Hokuyo UST-20LX LiDAR for environmental perception.

  • mbs-realsense-i — Activates the Intel® RealSense Depth Camera D455f (mounted on an aluminum frame).

  • mbs-realsense-ii — Activates the Intel® RealSense Depth Camera D405 (mounted on the arm’s wrist).

  • mbs-localization — Manages EKF localization and spatial awareness using the PhidgetSpatial IMU.

These services can be queried, started, stopped, or restarted via the following commands:

sudo service {service_name} status
sudo service {service_name} start
sudo service {service_name} stop
sudo service {service_name} restart

Example

To check the status of the clearpath-robot service:

sudo service clearpath-robot status

Uninstalling a Service

To remove a service:

ros2 run robot_upstart uninstall {service_name}

If you encounter an error such as:

Unit {service_name}.service could not be found.

This indicates that the startup job has not been installed.

Red marker: The startup job has failed.

Green marker: The service is functioning correctly.

Grey marker: The service has not started yet.

In case of a red or grey marker, you can restart the service using:

sudo service {service_name} restart

Modifying the Upstart Job

To modify the upstart job or add other ROS launch files, it is recommended to edit the main upstart file, system.launch.py, located in the hsky_bringup package.

After making the changes, save the file and run the following command to update the startup job:

ros2 run hsky_bringup startup_installer.py

This ensures that all necessary services are configured and running optimally for the Husky TUM project.

ROS2 Driver — xArm6 + Robotiq 2F-140

To power on the xARM6 and Robotiq 2F-140:

ros2 launch hsky_xarm system.launch.py

This command launches the driver for the xARM6, integrates with MoveIt2, and activates the Robotiq 2F-140 gripper for manipulation tasks.

Gripper Control

To control the Robotiq 2F-140 gripper:

  • Open Gripper:

    ros2 action send_goal /a200_1058/GripperPosition hsky_msgs/action/GripperPosition final_position:\ 0
    
  • Close Gripper:

    ros2 action send_goal /a200_1058/GripperPosition hsky_msgs/action/GripperPosition final_position:\ 255
    

ROS2 Navigation

ROS2 Information

  1. ROS DOMAIN ID: 0

  2. RMW Middleware: rmw fastrtps cpp

Caution

  • Please read the instruction manuals pertaining to Clearpath Husky and Ufactory xAr6 before operating the robot.

  • Always be vigilant and remain close to the emergency stop buttons when the robot is in operation.

Known Issues

  1. Husky moving forward on startup

    • This may occur due to time synchronization of the internet causing the robot’s joint states to reverse. This is dependent on how the network is synchronized between the Husky’s computer and the internet.

    • By default we have disabled synchronization of time from the internet to prevent this issue, until Clearpath updates its drivers.

Frequently Asked Questions

  1. Logitech controller not working

    • Ensure that it is powered on.

    • Ensure that the input mode is X, which is set on the backside of the controller.

  2. Husky in standby mode (yellow color)

    • Ensure that the emergency switch is twisted and released.

    • Ensure that the key is in the unlock position.

  3. xArm6 does not move with Moveit2.

    • The solution to this to simply restart the driver.

  4. Unable to see some of the ros2 topic lists in remote PC.

    • Ensure you are in the same network.

    • Ensure that your ROS DOMAIN ID is 0.

    • Ensure that your ROS LOCAL HOST is set to 0.

    • Ensure that your network system (+router) allows for ROS2 communication and/or is configured.

    • Restart the robot services:

      sudo service clearpath-robot restart

      sudo service hsky restart

Robotic Manipulator Safety Guidelines

When deploying robotic manipulators, it is imperative to prioritize safety procedures to mitigate risks and ensure secure operations. The following guidelines delineate key safety measures when working with robotic manipulators:

Work Area Safety

  • Maintain a clean and well-organized work area. Cluttered or inadequately lit spaces can impede the proper functioning of sensors and hinder precise manipulation.

  • Avoid operating robotic manipulators in hazardous environments, such as those containing corrosive substances, extreme temperatures, or sharp objects that may damage the manipulator.

  • Ensure that only authorized personnel are present in the vicinity during manipulator operation to prevent interference and ensure a safe working environment.

Electrical Safety

  • Ensure the manipulator’s power system adheres to electrical safety standards. Regularly inspect and maintain power components to prevent malfunctions.

  • Implement safeguards to protect the manipulator from adverse environmental conditions, such as exposure to moisture or extreme temperatures.

  • Regularly inspect power cables and connections, promptly replacing damaged components to minimize the risk of electrical issues.

Manipulation Safety

  • Implement collision detection systems to prevent unintended contact with objects, humans, or other equipment during manipulation tasks.

  • Define and enforce safety zones around the manipulator’s workspace to minimize the risk of unintended interactions with personnel or other objects.

  • Regularly calibrate and test the manipulator’s sensors and systems to ensure precise and reliable performance during manipulation tasks.

Emergency Response

  • Install an emergency stop mechanism to swiftly halt manipulator operation in unforeseen circumstances or emergencies.

  • Clearly mark and communicate emergency stop locations within the manipulator’s operational area.

  • Conduct regular emergency response drills to ensure personnel are familiar with procedures for handling unexpected situations during manipulator operation.

Data Security and Privacy

  • Implement robust cybersecurity measures to safeguard the manipulator’s control systems and data from unauthorized access or manipulation.

  • Ensure compliance with privacy regulations when collecting, storing, or transmitting data captured by the manipulator’s sensors.

Human Interaction Safety

  • Integrate sensors and communication systems to detect and respond to the presence of humans in the manipulator’s vicinity.

  • Clearly communicate the manipulator’s operational status and intentions using visual and audible signals to alert nearby individuals.

  • Establish protocols for safe human-robot collaboration, particularly in shared workspaces where manipulators are in operation.

Residual Risks

Despite the implementation of safety measures, certain residual risks may persist. These include:

  • Impairment of sensor functionality.

  • Risk of collisions during complex manipulation tasks.

  • Cybersecurity vulnerabilities.

  • Unintended human interactions due to unforeseen circumstances.

Robotic manipulators are sophisticated technologies that demand correct usage to avoid accidents and ensure a secure environment. Please adhere to proper procedures diligently, prioritizing both precision and safety.

Autonomous Mobile Robot Safety Guidelines

When deploying autonomous mobile robots, prioritizing safety procedures is essential to prevent accidents and ensure secure operations. The following guidelines outline key safety measures when working with an autonomous mobile robot:

Work Area Safety

  • Maintain a clean and well-lit work area. Cluttered or poorly illuminated spaces can impede the proper functioning of sensors and navigation systems.

  • Avoid operating autonomous mobile robots in explosive atmospheres, such as areas with flammable liquids, gases, or dust. The robot’s components may pose a risk in such environments.

  • Keep bystanders and unauthorized personnel at a safe distance during robot operation to prevent interference with autonomous navigation.

Electrical Safety

  • Ensure the robot’s power system adheres to electrical safety standards. Regularly inspect and maintain power components to prevent malfunctions.

  • Implement mechanisms to protect the robot from adverse weather conditions, such as rain or wet environments.

  • Regularly inspect power cables and connections and replace damaged components promptly to minimize the risk of electrical issues.

Emergency Response

  • Install an emergency stop mechanism to quickly halt the robot’s operation in case of unforeseen circumstances or emergencies.

  • Clearly mark and communicate emergency stop locations throughout the robot’s operational area.

  • Conduct regular emergency response drills to ensure personnel are familiar with procedures for handling unexpected situations.

Data Security and Privacy

  • Implement robust cybersecurity measures to protect the robot’s control systems and data from unauthorized access or manipulation.

  • Ensure compliance with privacy regulations when collecting, storing, or transmitting data captured by the robot’s sensors.

Human Interaction Safety

  • Integrate sensors and communication systems to detect and respond to the presence of humans in the robot’s vicinity.

  • Clearly communicate the robot’s operational status and intentions using visual and audible signals to alert nearby individuals.

  • Establish protocols for safe human-robot collaboration, especially in shared workspaces.

Residual Risks

Despite the implementation of safety measures, certain residual risks may persist. These include:

  • Impairment of sensor functionality.

  • Risk of collisions in crowded or dynamic environments.

  • Cybersecurity vulnerabilities.

  • Unintended human interactions due to unforeseen circumstances.

Autonomous Mobile Robots (AMR) are advanced technologies that require correct usage to avoid accidents and ensure a secure environment. Learn and follow the proper procedures diligently; prioritize both quality and safety.