adirb:developers

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.04).
  • 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

Environment Setup

If you are using CAN by connecting to the given port on ADIR and CAN bus is up & running, then we can skip this step.

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. Please note that the can bit rate is currently set to 500000.

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. The packages can latter be downloaded using rosdep. In order for rosdep to find the packages, we need to add the Antrobotics repository and the rosdep definitions for the packages.

Adding apt repository

curl -s --compressed "https://antrobotics-de.github.io/ppa/KEY.gpg" | gpg --dearmor | sudo tee /etc/apt/trusted.gpg.d/antrobotics_ppa.gpg >/dev/null

sudo curl -s –compressed -o /etc/apt/sources.list.d/antrobotics.list “https://antrobotics-de.github.io/ppa/antrobotics.list” sudo apt update

Adding rosdep definition

echo "yaml https://antrobotics-de.github.io/ppa/rosdep/antrobotics.yaml" | sudo tee /etc/ros/rosdep/sources.list.d/antrobotics.list >/dev/null

rosdep update

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 .. rosdep install –from-paths src –ignore-src -r -y colcon build –symlink-install


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.


  • adirb/developers.1723470044.txt.gz
  • Last modified: 2024/08/12 13:40
  • by Sandro