This is an old revision of the document!
INTRODUCTION
Welcome to the official developer documentation for ADIR BASIC, the differential drive robot designed for versatile indoor/ outdoor navigation. This chapter provides instructions on how to get ADIR up and running on your system.
The official repository can be found here: https://github.com/AntRobotics-de/adir
PREREQUISITES
- A computer running a Debian-based Linux distribution (currently Ubuntu 22).
- ROS2 Humble installed
ELECTRICAL INTEGRATION
CAN Connectivity Interface
Size 12 - 8 pin Quicklock Connector: https://www.lutronic.biz/en/connectivity/product/2350+...+T06CB+T
Pin | Function |
---|---|
1 | GND |
2 | CAN_L |
3 | 5V |
4 | External Emergency Switch |
5 | Digital Input |
6 | Digital Input |
7 | CAN_H |
8 | Digital Output |
Joystick Interface
Size 12 - 5 pin Quicklock Connector: https://www.lutronic.biz/en/connectivity/product/2350+...+T06CB+T
Pin | Function |
---|---|
1 | GND |
2 | 5V |
3 | Joystick Button (pressed 5V) |
4 | Joystick Input 1 (Analog 0-5V) |
5 | Joystick Input 2 (Analog 0-5V) |
Digital and Analog Inputs
Digital and Analog Inputs can be retrieved using the CAN BUS. The Digital Output can be set via CAN BUS:
Parameter | Measure Point | Min. | Typical | Max. | Unit |
---|---|---|---|---|---|
5V Output Current | - | - | - | 100 | mA |
Digital Output Voltage | Ground to Output pin | - | - | 30 | Volts |
Digital Output Current | Output pin, sink current | - | - | 1 | Amps |
Digital Input 0 Level | Ground to Input pin | -1 | - | 1 | Volts |
Digital Input 1 Level | Ground to Input pin | 3 | - | 30 | Volts |
Analog Input Range | Ground to Input pin | 0 | - | 5.1 | Volts |
SOFTWARE INSTALLATION
Installing Dependencies
To use ADIR, you must first install the necessary Debian packages. These packages contain all the dependencies and drivers required for ADIR to operate seamlessly.
sudo dpkg -i ros-humble-adir-ros-can-interfaces_0.0.0-0jammy_amd64.deb sudo dpkg -i ros-humble-adir-ros-can_0.0.1-0jammy_amd64.deb sudo dpkg -i ros-humble-adir-can-commands-interfaces_0.0.0-0jammy_amd64.deb sudo dpkg -i ros-humble-adir-can-commands_0.0.0-0jammy_amd64.deb
Cloning the Repository
mkdir -p adir_ws/src cd adir_ws/src git clone -b ros2-humble https://github.com/AntRobotics-de/adir.git cd .. colcon build --symlink-install
ENVIRONMENT SETUP
If using USB cable, please download the adir.sh bash script first and run it using the following commands:
chmod +x adir.sh sudo ./adir.sh
Once succesfully run, then we can launch the run files.
If using CAN by connecting to the given port on ADIR and CAN bus is up & running, then we can straight away launch the scripts. Please note that the bit rate is currently set at 500kbps.
Launching ADIR
To start using ADIR, you can use the following command:
ros2 launch odometry adir.launch.py
To start moving it, we can publish forward and angular velocities from the terminal or scripts on ros2 topic ' /cmd_cel '
ADDITIONAL INFORMATION
Topics Available:
For debugging purposes the folowing topics can be called.
/motor_controller/status
can verify if stall is detected or if ADIR is running on RC/ autonomy commands
/motor_controller/fault_state
can verify if a situation like overheat, overvoltage, undervoltage, short circuit, emergency stop or mosfet failures happen using boolean
/motor_controller/motor*/runtime_status
can verify if a situation like motor_stalled, forward_limit_triggered, reverse_limit_triggered, amps_trigger_activated happen using boolean
/motor_controller/voltage
can verify the voltage of ADIR. Please note if below 21V, please charge the ADIR.