how_to_setup_robotino_for_programming_and_navigation
Differences
This shows you the differences between two versions of the page.
Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
how_to_setup_robotino_for_programming_and_navigation [2016/06/14 17:31] – dwallace | how_to_setup_robotino_for_programming_and_navigation [2016/10/23 19:50] (current) – dwallace | ||
---|---|---|---|
Line 1: | Line 1: | ||
=======How to Setup Robotino for Programming and Navigation======= | =======How to Setup Robotino for Programming and Navigation======= | ||
- | Author: Dylan Wallace Email: [email protected] \\ | + | **Author:** Dylan Wallace Email: |
- | Date: Last modified on 06/13/16 \\ | + | \\ |
- | Keywords: step-by-step, | + | **Date:** Last modified on 06/24/16 |
- | + | \\ | |
+ | **Keywords:** step-by-step, | ||
+ | \\ \\ | ||
+ | {{ : | ||
+ | \\ | ||
The big picture problem is navigation and mapping for robots. Solving this partially or completely is important because it allows for autonomous systems to navigate around autonomously, | The big picture problem is navigation and mapping for robots. Solving this partially or completely is important because it allows for autonomous systems to navigate around autonomously, | ||
Line 12: | Line 15: | ||
This tutorial' | This tutorial' | ||
- | * Know how to program in linux and C++ \\ | + | <fc blue> |
- | * Perhaps also know how to ssh and use ftp \\ | + | * Know how to program in linux and C++ |
- | * Perhaps additional background needed may include interest in mapping and navigation algorithms \\ | + | \\ |
- | * This tutorial may also attract readers who want to work with other linux-0based systems such as Darwin or MKII \\ | + | * Knowledge in ROS is also very helpful for these tutorials |
+ | \\ | ||
+ | * Perhaps also know how to ssh and use ftp | ||
+ | \\ | ||
+ | * Perhaps additional background needed may include interest in mapping and navigation algorithms | ||
+ | \\ | ||
+ | * This tutorial may also attract readers who want to work with other linux-0based systems such as Darwin or MKII | ||
+ | </ | ||
+ | \\ \\ | ||
+ | |||
+ | For information on ROS, please refer to this document: https:// | ||
+ | For information on Linux, please refer to this webpage: http:// | ||
+ | For information on c++, please refer to this webpage: http:// | ||
+ | For information on navigation and mapping methods, refer to this internal tutorial: http:// | ||
The rest of this tutorial is presented as follows: | The rest of this tutorial is presented as follows: | ||
Line 22: | Line 38: | ||
Operation | Operation | ||
Final Words | Final Words | ||
+ | |||
+ | **Before starting this tutorials you must have cmake 3.0 and ccmake installed onto your Ubuntu computer**\\ | ||
+ | For more information on upgrading your version of cmake to 3.x, see [[http:// | ||
=====Setup===== | =====Setup===== | ||
Line 29: | Line 48: | ||
===Step 1: Boot up Robotino=== | ===Step 1: Boot up Robotino=== | ||
- | Power on Robotino to ensure all systems are working properly. Either connect Robotino to a 24V, 2.5A power supply, or connect two 12V batteries into the two battery slots provided on Robotino. Make sure to read through the Robotino operation manual before plugging anything in, and always make sure to use the proper safety precautions. Provided below are photos of how to hook up the power supply or batteries. | + | Power on Robotino to ensure all systems are working properly. Either connect Robotino to a 24V, 2.5A power supply, or connect two 12V batteries into the two battery slots provided on Robotino. Make sure to read through the Robotino operation manual before plugging anything in, and always make sure to use the proper safety precautions. Provided below are photos of how to hook up the power supply or batteries. |
- | <Power supply/battery photos> | + | {{ http:// |
+ | {{ http:// | ||
===Step 2: Setup DHCP on Robotino=== | ===Step 2: Setup DHCP on Robotino=== | ||
Line 37: | Line 57: | ||
Do this by accessing Robotino' | Do this by accessing Robotino' | ||
- | <DHCP menu pic> | + | {{ http:// |
+ | {{ http:// | ||
- | ===Step 3: SSH into Robotino=== | + | ===Step 3: Backup Robotino Data=== |
+ | |||
+ | For this section of the tutorial you will need to locate or buy an additional CF card in order to make a copy of the current image on Robotino' | ||
+ | |||
+ | sudo dd if=/ | ||
+ | |||
+ | Replace <CF card disk> with the name of the CF card's disk (either sdb, sda, sdc, sdd. Do not chose something that has a number like sdb1, as this is only the partition and not the entire disk). Replace <your desired path on your computer> | ||
+ | |||
+ | Once it has successfuly copied over the information from the card, eject the card in the file system, and then remove the card form the adapter. Now plug in your other media, whether it be an SD card or another CF card, into the adapter for your computer. We will be using a similar command for this process as before, but be careful because it is not exactly the same. This time, type: | ||
+ | |||
+ | sudo dd if=~/< | ||
+ | |||
+ | Again make sure you replace <your path from earlier> with the path that you copied the original CF card information over from, and replace < | ||
+ | |||
+ | Once this has finished successfully copying over, you are good to go with plugging in either media card, as they will be identical. Use one as a constant backup, so that you will always have a version to go back to if you mess up somewhere. | ||
+ | |||
+ | After taking these steps, you may still want to go through another backup process to make sure you have access to all of Robotino' | ||
+ | |||
+ | Once successfully connected, select all of the files from Robotino' | ||
+ | |||
+ | ===Step 4: SSH into Robotino=== | ||
Start by opening up a terminal window in Linux. In order to SSH into Robotino you will need to be connected to Robotino with a network cable. Also make sure that you are connected to the Robotino wireless connection in Linux. You can do this by simply going to your network settings in Ubuntu and connecting to the wireless network that you are using for Robotino. Now you can go back to your terminal and type the following (replace < | Start by opening up a terminal window in Linux. In order to SSH into Robotino you will need to be connected to Robotino with a network cable. Also make sure that you are connected to the Robotino wireless connection in Linux. You can do this by simply going to your network settings in Ubuntu and connecting to the wireless network that you are using for Robotino. Now you can go back to your terminal and type the following (replace < | ||
Line 47: | Line 88: | ||
When prompted for a password, type " | When prompted for a password, type " | ||
+ | You are also going to want to login as root in a separate terminal. To do this, open up another terminal, and type in the following: \\ | ||
+ | ssh root@< | ||
+ | |||
+ | The password for this root user is " | ||
+ | |||
+ | ===Step 5: Download and Setup ROS=== | ||
+ | |||
+ | For information on installing ROS for your PC, refer to this tutorial (if running Ubuntu 14.04): http:// | ||
+ | |||
+ | If you are running a different distro, please refer to: http:// | ||
+ | |||
+ | After ROS is installed, you will want to setup your catkin workspace. Do this by entering the following commands: | ||
+ | |||
+ | mkdir -p ~/ | ||
+ | cd ~/ | ||
+ | | ||
+ | cd ../ | ||
+ | | ||
+ | echo " | ||
+ | | ||
+ | |||
+ | ===Step 6: Install the Robotino API2=== | ||
+ | |||
+ | Follow this tutorial for setting up the API2 files onto your computer: http:// | ||
+ | |||
+ | After setting up the API on your computer, you will need to intall the API onto Robotino. Begin by opening up the root ssh terminal for Robotino. In this terminal, enter the following: | ||
+ | |||
+ | echo "echo "deb http:// | ||
+ | vim / | ||
+ | |||
+ | After the last command, the sources.list file will pop-up in vim, and you should check at the bottom of the file to make sure that the Robotino API source was added. Once that is confirmed, quit vim by pressing <esc> and then ": | ||
+ | |||
+ | apt-get update | ||
+ | apt-get install robotino-api2 robotino-examples | ||
+ | | ||
+ | ===Step 7: Download and Setup the ROS packages for Robotino=== | ||
+ | |||
+ | Due to outdated revisions to the Robotino sources, the existing tutorials for setting up the ROS packages no longer work properly. Here I will explain the necessary steps to go around this problem. First you will want to install the necessary daemons. First open up a terminal on your computer, and enter the following commands one after another (replace the * with the most current version listed [[http:// | ||
+ | |||
+ | wget http:// | ||
+ | wget http:// | ||
+ | wget http:// | ||
+ | wget http:// | ||
+ | wget http:// | ||
+ | |||
+ | After these packages are downloaded, you will want to transfer them over to Robotino. We can achieve this using a similar ftp service such as what was used previously to backup the data on Robotino. Refer to the 3rd step for more information on this process. Once the files are transferred to Robotino, you will want to unpackage and install the files onto Robotino. Go into your Robotino ssh terminal, and enter the following commands (again replace the * with the version you downloaded to your computer): | ||
+ | |||
+ | dpkg -i rec-rpc-qt4.5.0_*_i386.deb | ||
+ | dpkg -i robotino-common_*_i386.deb | ||
+ | dpkg -i --auto-deconfigure robotino-daemons_*_i386.deb | ||
+ | dpkg -i robotino-api2_*_i386.deb | ||
+ | dpkg -i robotino-examples_*_i386.deb | ||
+ | |||
+ | After these succeed installing, you can now focus on getting the Robotino ROS packages setup onto your computer. First, you will want to open up a fresh terminal and navigate into your catkin workspace. This should be located in your home directory. Then navigate to the src folder. When you are there your directory should be ~/ | ||
+ | |||
+ | svn co http:// | ||
+ | cd catkin-pkg | ||
+ | svn up -r3621 | ||
+ | |||
+ | This will ensure that you collect the correct version from the depository, and not the newer, broken versions. After this you are able to build these packages. Navigate back to your workspace (~/ | ||
+ | |||
+ | | ||
+ | | ||
+ | |||
+ | If this goes smoothly without any errors, then you will be good to go! If not, you will need to debug this issue to figure out what is causing the packages to build improperly. If you need any help with debugging this feel free to email me. After this is finished, Robotino should be all setup and ready to be programmed! | ||
=====Operation===== | =====Operation===== | ||
- | A link to the source code can be found <provide URL to your code, probably saved in this DASL Wiki>. | + | ===Step 1: Boot up Robotino=== |
- | The goal of the code is <brief explanation> | + | |
- | <!- Insert | + | Power on Robotino to ensure all systems are working properly. Either connect Robotino to a 24V, 2.5A power supply, or connect two 12V batteries into the two battery slots provided on Robotino. Make sure to read through the Robotino operation manual before plugging anything in, and always make sure to use the proper safety precautions. Provided below are photos of how to hook up the power supply or batteries. Verify that |
+ | {{ http:// | ||
+ | {{ http:// | ||
+ | |||
+ | ===Step 2: Setup DHCP on Robotino=== | ||
+ | |||
+ | Do this by accessing Robotino' | ||
+ | |||
+ | {{ http:// | ||
+ | {{ http:// | ||
+ | |||
+ | ===Step 4: SSH into Robotino=== | ||
+ | |||
+ | Start by opening up a terminal window in Linux. In order to SSH into Robotino you will need to be connected to Robotino with a network cable. Also make sure that you are connected to the Robotino wireless connection in Linux. You can do this by simply going to your network settings in Ubuntu and connecting to the wireless network that you are using for Robotino. Now you can go back to your terminal and type the following (replace < | ||
+ | |||
+ | ssh robotino@< | ||
+ | |||
+ | When prompted for a password, type " | ||
+ | |||
+ | You are also going to want to login as root in a separate terminal. To do this, open up another terminal, and type in the following: \\ | ||
+ | |||
+ | ssh root@< | ||
+ | |||
+ | The password for this root user is " | ||
+ | |||
+ | ===Step 5: Run your Program=== | ||
+ | |||
+ | Refer to the specific tutorial page for the instructions specific to the program that you are attempting to run on Robotino. For example, here are the commands used to launch the Breadth-First Navigation program from this tutorial. | ||
+ | |||
+ | Once you have powered on and configured DHCP on Robotino after setup is complete, make sure that you download the BFNav ROS package to your catkin workspace src folder, and run catkin_make. Once this has built correctly, open a terminal and type the following: | ||
+ | |||
+ | | ||
+ | |||
+ | Now open a second terminal and type the following: | ||
- | The snippet above serves to <fill in the blank>. It does this by <fill in the blank>. | + | |
- | <!- Insert another snippet | + | Now the BFNav program should run successfully. Please note that the configuration |
- | Next, the code does <fill in the blank>. It does this by <fill in the blank> | + | ======Final Words====== |
- | Final Words | + | |
- | This tutorial' | + | This tutorial' |
- | Speculating future work derived from this tutorial, includes | + | Speculating future work derived from this tutorial, includes |
- | For questions, clarifications, | + | For questions, clarifications, |
how_to_setup_robotino_for_programming_and_navigation.1465950698.txt.gz · Last modified: 2016/06/14 17:31 by dwallace