Dingo Lite (Dingo L)
Dingo Lite with Ufactory Lite6 Arm
The Dingo Lite is a mobile manipulation platform combining the Clearpath Dingo-D differential drive base with the Ufactory Lite6 robotic arm. This platform runs ROS Noetic on Ubuntu 20.04.
Key Features:
Differential drive mobility
Ufactory Lite6 6-DOF arm with gripper
ROS Noetic support
Hokuyo LiDAR
Intel RealSense D405 (wrist-mounted)
Autostart
Autostart Configuration
The Dingo-D ROS drivers are automatically launched during the robot’s startup process.
Startup Job Installation
To install or update the startup job:
Give root permission to the installation script:
sudo chmod +x startup_installer.py
Run the script from the terminal:
./startup_installer.py
Provide the workspace name as
ros_wsand the directory as/home/administrator
Note
If the Dingo-D’s PC username is not administrator, manual changes will have to be made in the startup job.
ROS Environment Setup
Add a setup.bash file in /etc/ros if it’s not there already:
cd
sudo touch /etc/ros/setup.bash
Edit the file and add the configuration:
source /home/administrator/ros_ws/devel/setup.bash
export ROBOT_SETUP=/etc/ros/setup.bash
export DINGO_OMNI=0
export DINGO_JOY_DEV=/dev/input/js0
Base Driver Installation
Source and install the Dingo-D base driver:
source /etc/ros/setup.bash
roscd mmp_bringup/scripts
./can-udp-bridge.sh
./install
Webserver
Web Interface
The Noetic version does not include a web-based control interface.
For remote operation, use SSH and ROS command-line tools:
ssh -X administrator@192.168.131.1
Launch visualization remotely:
roslaunch mmp_viz view_robot.launch
Teleoperation
Keyboard Teleoperation
To operate the Dingo-D either in simulation or the real robot:
rosrun key_teleop key_teleop.py
Joystick Teleoperation
The Dingo-D can be controlled via a joystick connected to the robot.
Important
The Logitech controller dongle should be inserted and used with the Dingo PC (192.168.131.1). Do not use the dongle with the external NVIDIA PC (192.168.131.5).
Visualization
RViz Visualization
To view the Dingo current state:
roslaunch mmp_viz view_robot.launch
This package is useful when checking and integrating depth camera or other auxiliary sensors such as LiDAR sensors.
Rigs
Hardware Configurations
The Dingo-D (Noetic) can be configured with different sensor and accessory rigs.
Standard Configuration
Clearpath Dingo-D differential base
Ufactory Lite6 arm
Hokuyo LiDAR (192.168.131.20)
Intel RealSense D405 (wrist-mounted)
Network Devices
Device |
Network Address |
Users |
Password |
|---|---|---|---|
Dingo-D |
192.168.131.1 |
administrator |
mybotshop |
Hokuyo |
192.168.131.20 |
n/a |
n/a |
Lite6 |
192.168.131.50 |
n/a |
n/a |
Lite6 Web |
192.168.131.50:18333 |
n/a |
n/a |
Manipulation
Lite6 MoveIt
Note
As the Dingo-D Lite6 is a multi-robot system consisting of Lite6 and Lite6 gripper, the Lite6 Guides are applicable.
For the Lite6 ROS drivers please refer to the ufactory github section. To aid in manipulation tasks please refer to the
examples in the mmp_bringup/scripts/mmp_example.py. For recommended manipulation please refer to MoveIt documentation.
Lite6 Utilities
To operate the Lite6 from other means than ROS, the Python and C++ SDKs are available in the utils folder.
Direct control of the Lite6 is available via the app. To access the app, navigate into the /utils/app folder and run:
./UfactoryStudio-client-linux-1.0.1.AppImage
Alternatively, you can install the app image directly from their website and grant root permission to the image.
Connect to the IP address of 192.168.131.50 and you should have complete access to the arm.
The app has a built-in plugin to interface with robotiq gripper available in the control panels.
Important
The app can also be accessed via ssh or when connected to the same network as the Lite6 at 192.168.131.50:18333.
Complete steps for opening the app:
ssh -X administrator@192.168.131.1
mybotshop
cd
cd ros_ws/utils/app
./UfactoryStudio-client-linux-1.0.1.AppImage
This can be used when the Lite6 goes to error state. Alternatively, the error can be cleared via the Lite6 python API.
Lite6 Power Fuse
The Lite6 is powered by Dingo-D’s power. For safety reasons a 15 Amp fuse is installed. In case of a power surge,
the fuse will trigger and will have to be replaced. To replace it, open the Dingo-D’s central hatch located under the Lite6,
open the rubber cover over the MCU and replace the fuse.
Lite6 E-Stop
There’s a red Emergency Stop button positioned at the rear of the mounted arm. Pressing this button cuts off the power supply to the arm, providing a manual method to halt the arm in case of any malfunction or emergency situation.
Sensors
Hokuyo LiDAR
You can start up the Hokuyo driver located at the robot’s front:
roslaunch mmp_lidars lidars.launch
Once running, you should be able to view the laser scan data created by Hokuyo on RViz.
Intel RealSense D405
To initiate the hardware driver for the RealSense camera mounted on the wrist of the Lite6:
roslaunch mmp_realsense wrist_camera.launch
If the camera drivers operate correctly, you should be able to view the camera stream on RViz.
Simulation
Gazebo Simulation
The Dingo-D can be simulated in Gazebo Classic.
Launch Simulation:
roslaunch mmp_gazebo simulation.launch
This launches:
Gazebo with the Dingo model
Robot state publisher
Joint state publisher
Packages
Dingo Base Driver
To start the hardware-dingo drivers:
roslaunch dingo_base base.launch
Important
You need not manually execute this command, as the dingo hardware drivers are automatically launched during the robot’s startup process.
Lite6 Driver
To start the hardware-lite6 drivers:
roslaunch mmp_bringup lite6_driver.launch
This driver does not launch on startup. It is required for controlling the Lite6 arm.
Warning
Non-technical persons are not permitted to use the device as the damage it can cause is severe.
Visualization Package
roslaunch mmp_viz view_robot.launch
LiDAR Package
roslaunch mmp_lidars lidars.launch
RealSense Package
roslaunch mmp_realsense wrist_camera.launch
Debugging
Common Issues
Robot not responding to commands:
Check if ROS master is running:
roscoreVerify network connection:
ping 192.168.131.1Check ROS topics:
rostopic list
No sensor data:
Verify sensor connections
Check sensor-specific topics
Review sensor launch files
Diagnostic Commands
Check ROS Topics:
rostopic list
rostopic echo /odom
Check ROS Nodes:
rosnode list
rosnode info /dingo_base
Check TF Tree:
rosrun tf view_frames
Check Service Status:
sudo service {service_name} status
Rebuild Workspace
cd ~/catkin_ws
catkin build
source devel/setup.bash
Miscellanious
SSH Access
Connect to the robot via SSH:
ssh -X administrator@192.168.131.1
# Password: mybotshop
Programming Examples
Examples of programming the Lite6 and Dingo-D are provided in:
mmp_bringup/scripts/mmp_example.py
Message-of-the-Day (MOTD)
To configure a custom MOTD:
sudo chmod -x /etc/update-motd.d/*
sudo nano /etc/update-motd.d/45-mbs-motd
sudo chmod +x /etc/update-motd.d/45-mbs-motd
Example MOTD script:
#!/bin/sh
robot_status clearpath-vcan
robot_status clearpath-robot
robot_status clearpath-platform
echo "-------------------------------------------------------------------------------"
echo "Dingo - D IP: 192.168.131.1"
echo "Password: mybotshop"
echo "SSH: ssh -XC administrator@192.168.131.1"
echo
echo "Dingo - D MCU: 192.168.131.2"
echo
echo "NVIDIA IP: 192.168.131.5"
echo "Password: mybotshop"
echo "SSH: ssh -XC administrator@192.168.131.5"
echo "-------------------------------------------------------------------------------"
echo "Dingo - D Startup"
echo "-------------------------------------------------------------------------------"
echo "Service status: sudo service {service_name} status"
echo "Rebuild package: colcon build --symlink-install"
echo "-------------------------------------------------------------------------------"
Installation
ROS Noetic Installation
The ROS driver for the robots is initially supported for ROS Noetic. All ROS related software should be installed on the Remote-PC. The Dingo-D is pre-installed with the required drivers and ROS distribution.
PC Setup
ROS Noetic installation requires Ubuntu 20.04.
Download Ubuntu 20.04
Follow the Ubuntu 20.04 Installation guide
ROS Noetic Installation
You may run the following commands to install ROS Noetic or follow the instructions from the ROS wiki.
Enter the Ubuntu terminal:
cd
Set up the source list:
sudo sh -c 'echo "deb http://packages.ros.org/ros/ubuntu $(lsb_release -sc) main" > /etc/apt/sources.list.d/ros-latest.list'
Set up the keys:
sudo apt install curl
curl -s https://raw.githubusercontent.com/ros/rosdistro/master/ros.asc | sudo apt-key add -
Install ROS Noetic:
sudo apt update
sudo apt install ros-noetic-desktop-full
Add ROS environment to your bash file:
echo "source /opt/ros/noetic/setup.bash" >> ~/.bashrc
source ~/.bashrc
Install python dependencies and initialize rosdep:
sudo apt install python3-rosdep python3-rosinstall python3-rosinstall-generator python3-wstool build-essential
sudo rosdep init
rosdep update
Catkin Workspace
Ensure ROS Noetic is correctly setup:
cd ..
source /opt/ros/noetic/setup.bash
Install catkin_tools:
sudo apt install python3-catkin-tools
Create your workspace:
mkdir -p ~/catkin_ws/src
cd ~/catkin_ws/
catkin build
Enable the workspace:
source devel/setup.bash
Add to bashrc to avoid typing every time:
gedit ~/.bashrc
Add the following line at the end:
source /home/<your_computer_username>/catkin_ws/devel/setup.bash
Verify everything is working:
echo $ROS_PACKAGE_PATH