The latest setup guide (Dec 2022) was moved to the ROS1 Noetic guide.
The TortugaBot is a little robot which has an ASUS Xtion Pro Live as sensor. It is mainly build from acrylc glass and Aluminium bars. To move he is using two EMG30 or EMG49 motors which get their power from a 11.1V 2500mAh Li-Po battery. He gets controlled by a Laptop which has to be put in the LispBot.
The Partlist is here.
The CAD Model Download is gonna be here soon.
The TortugaBot laptops are small Lenovo IdeaPad Flex 10 netbooks.
https://github.com/code-iai/tortugabot
${HOME}/workspace/ros
or something similarroslauch tortugabot_bringup TAB-TAB
.dialout
group, such that it could have access to the TTY ports for talking to the wheel drivers.$ sudo usermod -a -G dialout USERNAME $ groups USERNAME # to check if it worked
${HOME}/workspace/ros/src
, where …/ros
is the catkin workspace:$ cd && mkdir -p workspace/ros/src $ source /opt/ros/indigo/setup.bash $ cd workspace/ros && catkin_make $ echo -e "\n# ROS\nsource \$HOME/workspace/ros/devel/setup.bash\n" >> ~/.bashrc $ . ~/.bashrc $ cd src && wstool init
.rosinstall
file from the repo. Don't forget to compile your workspace after getting the code.$ wstool merge https://raw.githubusercontent.com/code-iai/tortugabot/master/rosinstall.yaml $ wstool update $ cd .. && rosdep install --from-paths src --ignore-src
Check the README file in the repo for more info.
For completely new laptops or reinstalling the OS.
The usual convention is:
/etc/systemd/logind.conf
add (uncomment) the folowing line:HandleLidSwitch=ignore
sudo apt-get install openssh-server
wstool
and rosinstall
, they're both sudo apt-get install python-BLA
.sudo rosdep init
Install QtSix according to the instructions here:
Basically:
sudo add-apt-repository ppa:falk-t-j/qtsixa sudo apt-get update sudo apt-get install qtsixa sudo /etc/init.d/sixad start
Then connect the DualShock3 controller over USB with a mini-usb cable. And start “qtsixa”. There select Tasks → Pair Device to PC → DualShock controller
After that, the device should be paired to the laptop. And if you press the “Playstation” button (in the center), it should connect to the laptop. It vibrates a little to confirm.
To get sixad to start all the time, do:
cd /etc/rc2.d && sudo ln -s ../init.d/sixad S99sixad
guvcview and other uvc related things were not working with a recent kernel (4.4.x)
The following fixes the problem:
sudo add-apt-repository ppa:pj-assis/ppa sudo apt-get update sudo apt-get install guvcview
Create the file /etc/udev/rules.d/99-uvc.rules with the following inside:
# UVC camera Microsoft LifeCam Studio SUBSYSTEMS=="usb", ENV{DEVTYPE}=="usb_device", ATTRS{idVendor}=="045e", ATTRS{idProduct}=="0772", MODE="0666"
(adjust for your webcam looking at lsusb)
Then restart udev:
/etc/init.d/udev restart
And re-connect the webcam. It should now be readable for everyone.
Install the camera driver:
sudo apt install ros-indigo-libuvc-camera
Create a launch file with the following contents:
<launch> <group ns="camera"> <node pkg="libuvc_camera" type="camera_node" name="mycam"> <!-- Parameters used to find the camera --> <param name="vendor" value="0x045e"/> <param name="product" value="0x0772"/> <param name="serial" value=""/> <!-- If the above parameters aren't unique, choose the first match: --> <param name="index" value="0"/> <!-- Image size and type --> <param name="width" value="640"/> <param name="height" value="480"/> <!-- choose whichever uncompressed format the camera supports: --> <param name="video_mode" value="uncompressed"/> <!-- or yuyv/nv12/mjpeg --> <param name="frame_rate" value="15"/> <param name="timestamp_method" value="start"/> <!-- start of frame --> <param name="camera_info_url" value="file:///tmp/cam.yaml"/> <param name="auto_exposure" value="3"/> <!-- use aperture_priority auto exposure --> <param name="auto_white_balance" value="false"/> </node> </group> </launch>
Connect the laser and make sure it is powered up with the battery. Go to the network connections icon (which is next to your volume icon in the Ubuntu GUI). There should be an ethernet connection existing which is not completely configured. On the bottom of network connections menu click on “Edit Connections…”. Choose “Wired Connection 1” and click on “Edit…”. There, in the “Ethernet” tab use Device Mac Address from the drop-down menu. In the “IPv4 Settings” tab choose “Method” “Manual” and in “Addresses” add a new address – click on “Add”. The “Address” is the IP address of the network card – your ethernet to USB dongle, e.g. “192.168.200.1”. As netmask use “255.255.255.0” and leave “Gateway” empty or zeros. In “IPv6” settings choose “Method” “Ignore”.
Done. It should connect automatically anytime when the laser is connected.
One of our students was working on creating a map of the hallway using the little robots. Here's a PDF with some documentation of the mapping process and also the robot itself. finaltortugabotpaper.pdf