This procedure describes the procedures that must be followed when starting up, operating and shutting down the Ana robot\ref{}.
This document includes three procedures, one to set the robot in a ready state, in section \ref{}, a second one that includes all the thing to take into account while the robot is in operation, in section \ref{}, and the last one to shut the robot down after using it, in section \ref{}.
This document includes three procedures, one to set the robot in a ready state, in section \ref{}, a second one that includes all the things to take into account while the robot is in operation, in section \ref{}, and the last one to shut the robot down after using it, in section \ref{}.
\section{Preliminary considerations}
The Ana robot is an upgraded version of a Pioneer2 AT platform (see \ref{} for a detailed description). The main improvements are:
...
...
@@ -29,6 +29,8 @@ The Ana robot is an upgraded version of a Pioneer2 AT platform (see \ref{} for a
\item Intel RealSense D-435 and Velodyne PUCK sensors for 3D navigation.
\item Upper structure with a touch screen display and speakers.
\item Pan and tilt unit with a Zed Stereo camera.
\item NVIDIA Xavier embedded computer to implement Convolutional Neural Networks (CNN) on-board the robot.
\item Wireless router
\end{itemize}
A general description and layout of the Ana robot is presented in this section.
...
...
@@ -71,6 +73,15 @@ The main interface area (both power and communications) with the upper structure
\item Speaker output and microphone input.
\end{itemize}
The robot also has an upper structure with two main compartments:
\begin{itemize}
\item a 32x33x29 cm (WxLxH) box with an upper door to carry the items to deliver, shown in Fig. \ref{}. This box can be locked with a key.
\item a 14x33x43 cm (WxLxH) box with a rear door which holds the elements shown in Fig. \ref{}. This box can also be locked with a key. The elements enumerated in Fig. \ref{} are described next:
\begin{itemize}
\item
\end{itemize}
\end{itemize}
\section{Startup}
To power up the robot and make sure everything is ready before operation, please follow the next steps:
\begin{itemize}
...
...
@@ -120,31 +131,112 @@ If the Pioneer2 AT controller does not boot up properly you may not hear the bee
\section{Operation}
\subsection{Connect to the robot}
There are mainly two ways to connect to the robot, connect to the hot-spot created by the robot using a wireless interface (see section \ref{} for instructions on how to do it), or connect the robot to a wired network using the external ethernet interface (see section \ref{} for instructions on how to do it).
The robot has an on-board router that uses DHCP to create a local network in the 192.168.0.X range, but it only assigns IP to the registered computers. Table \ref{tab_reg_computers} shows the IP assignment of all registered computers.
\begin{table}
\centering
\begin{tabular}{|l|c|c|}
\hline
Computer & IP address & Connection \\
\hline\hline
ana &$192.168.0.100$& Ethernet \\
\hline
ana-cnn &$192.168.0.101$& Ethernet \\
\hline
ana-mon &$192.168.0.200$& Wireless and Ethernet \\
\hline
\end{tabular}
\caption{IP addresses of all registered computers of the Ana robot.}
\label{tab_reg_computers}
\end{table}
The Ana robot has a monitoring laptop (ana-mon in Table \ref{tab_reg_computers}) already configured to interface with the robot. This procedure assumes the use of this computer to simplify the procedures. However, if a new computer needs to connect to the robot, section \ref{} explains how to do it.
\subsubsection{Register a new computer}
To register a new computer to connect to the Ana robot, follow the next steps:
\begin{itemize}
\item Send an e-mail to the laboratory technicians at labroboticamobil@iri.upc.edu with the following information:
\begin{itemize}
\item The reason why it is necessary to add a new computer.
\item The name of the new computer.
\item The MAC address of the network interface or interfaces and their type (either Wireless or Ethernet).
\item A public key generated for the new computer to allow password-less access to the on-board computers. This is optional.
\end{itemize}
\item Wait for the technicians to register the new computer. The request may be denied in case the reason for the new computer is not ...
\item If connecting by wireless, ask the laboratory technicians for the wi-fi password.
\item Configure the new computer to access the ROS network of the robot. To do so, execute the following commands or add them into the \textit{.bashrc} file:
%export ROS_MASTER_URI=http://192.168.0.100:11311
%export RPS_IP=<IP provided by the technicions>
\item Additionally, you can add the pair IP and hostname to the /etc/hosts file, to be able to type the hostname instead of the IP address:
%192.168.0.100 ana
\end{itemize}
\begin{table}[h]
\begin{tabular}{p{1cm}p{10cm}}
\multirow{3}{*}{\includegraphics[width=1cm]{attention.png}}&\textbf{IMPORTANT:} Only registered computers will be able to connect to the robot, either by wireless or wired connection.
\end{tabular}
\end{table}
There are mainly two ways to connect to the robot, connect to the hot-spot created by the robot using a wireless interface (see section \ref{} for instructions on how to do it), or connect the robot using the external ethernet interface (see section \ref{} for instructions on how to do it).
It is also possible to work directly with the on-board computer, although not recommended.
\subsubsection{Connect using wireless}
The wireless connection may be useful to monitor the components of the robot while in operation, but keep in mind that the available bandwidth is limited (may be it is not possible to monitor all the topics in real time), and also that the connection is not reliable (it may be lost depending on environment conditions).
The robot has an on-board router that creates a wireless hot-spot with the ana-wifi SSID. If the computer is already registered, it should connect without any problem, otherwise, check section \ref{} on how to register and setup a new computer.
If the ana-wifi is not detected, please check the following:
\begin{itemize}
\item Check the router is powered up. Open the rear door of the upper structure and check whether the power on LED (the right most one) is on or off. If it is off, it means the router is not powered up. In this case, check the following:
\begin{itemize}
\item The Green light of the 12V power supply for the upper structure (see Fig. \ref{}) is lit. If it not, open the corresponding fuse case and check the fuse is okay with a multimeter. If not, replace it and restart this procedure.
\item Power reaches the router. Check that the 12V power connector shown in Fig. \ref{} and the router power jack shown in Fig. \ref{} are plugged in. If any of them are disconnected, plug them in and restart this procedure.
\item The power button is on. Locate the power button in the upper right part of the router (besides the USB connector) as shown in Fig. \ref{}, and check whether it is pressed (Fig. \ref{}) or not (Fig. \ref{}). Press it if necessary and restart the procedure.
\item If all the above fail, contact the laboratory technicians as soon as possible.
\end{itemize}
\item Disable and enable the wi-fi interface on the external computer, wait for the list of available connections to be populated, and restart this procedure.
\item If all the above fail, contact the laboratory technicians as soon as possible.
\end{itemize}
\subsubsection{Connect using a cable}
The wired connection may be useful for testing and also when the on-board computer does not provide the desired performance for the algorithms.
\begin{table}[h]
\begin{tabular}{p{1cm}p{10cm}}
\multirow{3}{*}{\includegraphics[width=1cm]{attention.png}}&\textbf{IMPORTANT:}This option is only recommended when the robot does not have to move. Otherwise it may be dangerous to move the robot with a cable attached to it.
\multirow{3}{*}{\includegraphics[width=1cm]{attention.png}}&\textbf{IMPORTANT:}This option is only recommended when the computer can be safely attached to the robot. Otherwise it may be dangerous to move the robot with a cable attached to it.
\end{tabular}
\end{table}
To connect to the robot using a wired connection, please follow the next steps:
\begin{itemize}
\item Connect an Ethernet cable to the Ethernet port of the robot shown in Fig. \ref{}.
\item Connect the other end of the cable to the computer. The router on the robot will provide an IP address
\item
\item Connect one end of the Ethernet cable to any available port on the router.
\item Connect the other end of the cable to the external computer. The router on the robot should provide an IP address. To do that the external computer has to be registered. See section \ref{} for instructions on how to do it.
\end{itemize}
\subsubsection{Login to the on-board computer}
To log into the on-board computer
\subsubsection{Login to the on-board computers}
Both on-board computers have two users available:
\begin{itemize}
\item\textbf{irilab} with root privileges. This is the user used by the laboratory technicians to update and maintain the robot and it is password protected. This user must not be used.
\item\textbf{ana} without root privileges. This must be used as the default user.
\end{itemize}
To login into the robot, execute the following command:
%ssh ana@ana
or
%ssh ana@192.168.0.100
depending on whether the association between IP and hostname has been done or not (see step on section \ref{}). If the external computer is properly registered (see section \ref{}) it should not ask for a password.
\subsection{Install and update software}
The default user on the on-board computer does not have root privileges, so it is not possible for user to install new software.
As introduced in section \ref{}, the default user on the on-board computer does not have root privileges, so it is not possible for user to install new software.
Basic system maintenance, update and upgrade will be performed periodically by laboratory technicians. If some problem is detected or there is a critical upgrade, please contact the laboratory technicians.
...
...
@@ -165,7 +257,18 @@ If, during the install process, any problem is detected, it will be reported bac
\item The laboratory technicians will keep a log of all the actuations and when they were performed.
\end{itemize}
To update existing software
ROS packages do not require root privileges to be installed, but the following procedure is recommended to install and update them:
\begin{itemize}
\item Within IRI, connect an ethernet cable between the top ethernet connector of the upper structure (shown in Fig. \ref{}) and any RJ45 walll connector. This will provide internet access from the local IRI network.
\item Ouside IRI, connect a 3G dongle to the USB connector of the upper structure (shown in Fig. \ref{}). This will provide internet access through the 3G/4G network.
\item Locate and move to the standard ROS workspace in the home folder (iri-lab/iri\_ws).
\item To install new ROS packages, clone all the necessary ROS packages to the src folder inside the workspace. Once done, execute the following command to update the hiden rosinstall file with the new packages.
% wstool scrape
\item To update existing ROS packages, got to the src folder inside the workspace and execute the following command.
% wstool up
\end{itemize}
When performing upgrades or tests on existing nodes, it is recommended to create an overlayed workspace in order to keep the original one completely operational. To do that, follow the instructions here ()%ROS tutorial
\subsection{Start ROS}
To launch all the basic nodes required to operate the robot using ROS, execute the following command:
...
...
@@ -178,7 +281,16 @@ To verify everything is working as expected, launch the diagnostic application u
This application uses a GUI, so
If the robot and all the on-board sensors are working properly, all reports should be green. If there is any yellow (warning) or red (error) reports, please contact the
If the robot and all the on-board sensors are working properly, all reports should be green. If there is any yellow (warning) or red (error) reports, please contact the laboratory technicians.
The ROS packages that are launched by default are listed here:
\begin{itemize}
\item
\end{itemize}
\subsubsection{Teleoperate the robot}
\subsubsection{Launch user ROS nodes}
% calibrate the touchscreen (external procedure)
% calibrate the internal IMU.
...
...
@@ -191,7 +303,7 @@ To power down the robot, if the computer is on, please follow the next steps:
\item Shut down the computer with the following command:
sudo halt -p
Alternatively, you can also shut down the computer from the .