Jackal-3D-SLAM
This post is a quick and compact guide for working with the Jackal.
The Jackal (differential robot) is an indoor compact development platform of the Canadian manufacturer Clearpath Robotics. ROS Noetic is pre-installed in this unit.
Jackal Informative Links
Quick Start
The robot is turned on via the power button, and the start-up of the Jackal with the ouster and zed2 may take up to a minute to start.
The green light in the M means that the MCU has successfully started, and the directional arrows mean that it is now able to receive commands from the onboard PC.
This Jackal comes installed with an Ouster LiDar. In cases, where the LiDAR or other auxiliary components are added to the robot startup job and have their cable removed can cause the robot to not startup.
For software remote connection, the robot has to be accessed once to configure the WiFi network. Configuration can take place in one of two methods, the first being via the static network connection and the second being through the screen, where the screen method is much quicker and easier for clients to set up.
Jackal Static Network Connection
For the first time, one needs to connect through a LAN cable to configure the robot’s WLAN network.
To create a static connection in your own PC (not the Jackal), in Ubuntu go to Settings → Network then click on + and create a new connection.
-
The first task is to go to IPv4 and change the connection to manual.
-
The second task is to put the Address IP as 192.168.131.1 (may differ from robot to robot) and the Netmask as 24.
Click save and restart your network. Next is to open up the Jackal as shown, and connect the LAN cable to the robot.
After a successful connection let’s check the host’s local IP by typing in the Host PC’s terminal.
ifconfig
This should show the host IP which was assigned in the above step. Now its time to check if we can ping the robot or not, to do so type in your host pc
ping 192.168.131.1
After a successful ping, it’s time to access the robot. To access the robot you can type the following command:
ssh -X administrator@192.168.131.1
The password is
mybotshop
Note: Some of the Jackals have the default DHCP connections. For these cases, you may either use the second method of connecting to Jackal as mentioned below or not make a static connection and just run the command
nmap -sP 192.168.0.*
. This command will scan all available networks in the range of .0. Once you’ve identified the network of the Jackal, you can connect via ssh.
-----------------------------------------------------------------------
_ _ _ _ ____ __ ____ ____ _ _ __ ____
( \/ )( \/ )( _ \ / \(_ _)/ ___)/ )( \ / \( _ \
/ \/ \ ) / ) _ (( O ) )( \___ \) __ (( O )) __/
\_)(_/(__/ (____/ \__/ (__) (____/\_)(_/ \__/(__)
-----------------------------------------------------------------------
Current PC: Jackal
-----------------------------------------------------------------------
Jackal IP: 192.168.131.1
Pswd: mybotshop
SSH: ssh -X administrator@192.168.131.1
Ouster IP: 192.168.131.20 (INFO: Default off)
--------------------------------------------------------------------------
Jackal Startup
--------------------------------------------------------------------------
JKL status: sudo service jkl status
JKL start: sudo service jkl start
JKL stop: sudo service jkl stop
JKL restart: sudo service jkl restart
Ouster-Driver: roslaunch jkl_lidars lidars.launch
Update startup: rosrun jkl startup_script.sh
Rebuild package: catkin build --cmake-args -DCMAKE_BUILD_TYPE=Release
--------------------------------------------------------------------------
Jackal Screen Connection
An alternative for connecting to the Jackal is by plugging in an HDMI cable as well as a mouse and keyboard. This will allow you to connect the Jackal to your own local WiFi network and then you can connect later over the WiFi.
Jackal PC
The procedure is simply to go to your networks and add your WiFi. Then in the terminal type:
ifconfig
The IP that comes with the initial characters of wl is your WiFi’s IP. e.g. wlps0. With this IP you can SSH to your robot.
ssh -X administrator@192.168.0.228
192.168.0.228 is just an example of this. IP is taken from the ifconfig.
mybotshop
Network
This robot has an industrial computer on board with the MCU port being on 192.168.131.1.
Device | Network |
---|---|
Industrial computer | 192.168.131.1 |
Ouster | 192.168.131.20 |
Jackal Software
The Jackal drivers configured by MYBOTSHOP are located in the ros_ws.
For a configuration of auxiliary sensors, the following link provides useful information, especially for navigation. As requirements vary from user to user, the setup has been left as default and the users can specify their own parameters in their own custom package.
Start-up Job
The Jackal ordinarily utilizes Clearpath startup job unless otherwise specified. In case there is an issue with the robot not starting up. One can ssh into the Jackal and verify if the startup job is working correctly.
sudo service jkl status
The red marker in the service indicates that the startup job has failed. Green indicates everything is working correctly. Grey indicates that the service has not started yet. In case of red or grey marker, you may restart the service via:
sudo service jkl restart
Debugging Controller
Some quick useful commands in case there is an issue with the joystick is to ssh into the robot and teleoperated it via:
rosrun teleop_twist_keyboard teleop_twist_keyboard.py