Cómo ROS implementa la comunicación de datos entre dos computadoras
Supongamos que tenemos dos computadoras: la computadora A es la computadora host y la computadora B es la consola. Queremos ejecutar roscore en la computadora A y ejecutar el programa Turtlesim, y luego ejecutar el programa de control del teclado en la computadora B para controlar el movimiento de la tortuga Turtlesim.
1. Ver la IP y el nombre de host de la Computadora A y la Computadora B
Para ver la IP, escriba en la consola
$ ifconfig
Si la computadora está conectada a una red cableada, la dirección inet de la parte etho del resultado será la dirección IP de la computadora;
Si la computadora está conectada a una red inalámbrica, la parte wlfo será la dirección IP de la computadora;
p>
Si la computadora está conectada a una red inalámbrica, la parte wlfo será la dirección IP. Si la computadora está conectada de forma inalámbrica, la parte wlp3s0 de inet addr va seguida de la dirección IP.
Para ver el nombre del host, escriba en la consola:
$ hostname
2. Modifique el archivo del host
Utilice el siguiente comando. para abrir los archivos de host de la computadora A y la computadora B:
$ sudo gedit /etc/hosts
En el archivo de hosts de la computadora A, abra los archivos de hosts de la computadora A y la computadora B respectivamente:
$ sudo gedit /etc/hosts
Agregue el siguiente comando en negrita en el archivo hosts de la computadora A:
Copiar código
127.0 .0.1 localhost
127.0.1.1 [ nombre de host_A ]
[IP_A] [ nombre de host_A ]
[IP_B] [ nombre de host_B ]
* **
Copiar código
Del mismo modo, en el archivo host de la computadora B, agregue las siguientes instrucciones en negrita:
Copiar código
127.0.0.1 localhost
127.0.1.1 [ nombre de host_B ]
[IP_B] [ nombre de host_B ]
[IP_A] [ nombre de host_A ]
***
Copiar código
3. Modificar el archivo .bashrc
Utilice el siguiente comando para abrir el archivo .bashrc en la computadora A y computadora B
$ sudo gedit ~/.bashrc
Agregue el siguiente código a la última línea de los archivos .bashrc abiertos en la Computadora A y la Computadora B:
exportar ROS_MASTER_URI=http:// [nombre de host_A]:11311
[Nota]. Esto supone que la Computadora A es el host; si usa la Computadora B como host, simplemente cambie [nombre de host_A] a [nombre de host_B] en este paso.
4. Ejecute el programa tortuga
Computadora A:
Primero inicie ROS:
$ roscore
Luego presione Ctrl T para abrir una nueva consola y ejecutar:
$ rosrun Turtlesim Turtlesim_node
Computadora B:
$ rosrun Turtlesim Turtle_teleop_key
¡Ahora puedes usar la Computadora B para controlar la tortuga en la Computadora A para que deambule! ~(≧▽≦)/~La La La La La