当前位置:网站首页>ROS learning: remote start ROS node
ROS learning: remote start ROS node
2020-11-07 20:56:00 【Coxhuang】
List of articles
- Remote start ROS node
- #1 Environmental Science
- #2 demand
- #3 Verify the prerequisites
- #3.1 Verify password free login
- #3.2 Verify the stand-alone ros Publish subscribe
- #4 Start
- #4.1 To configure
- #4.1.1 pc-master
- #4.1.2 pc-slave2
- #4.2 Local host script
- #4.3 start-up
- #4.1 To configure
- #5 Report errors
- #5.1 not found in known_hosts
- #5.2 TypeError: 'NoneType' object is not callable
Remote start ROS node
#1 Environmental Science
Ubuntu 16.04
Machine configuration :
pc-master 192.168.3.230 Local pc-slave2 192.168.3.232 long-range
Prerequisite :
1. It can be realized on two machines ROS Publish and subscribe
2. Two machines can log in without password
#2 demand
- in application , Different functions will be put on different servers
- You need to subscribe to topic
#3 Verify the prerequisites
#3.1 Verify password free login
The two servers can log in to each other without password
Specific password free login tutorial : https://blog.csdn.net/Coxhuang/article/details/106971890
#3.2 Verify the stand-alone ros Publish subscribe
Here we use pc-slave2 Server, for example ( Because the remote startup is also pc-slave2 Nodes on )
talker :
listener :
#4 Start
** Next , We will be having pc-master Start the remote server on the server area pc-slave2 Of talker node **
#4.1 To configure
#4.1.1 pc-master
sudo vim /etc/hosts
stay /etc/hosts Add something to the file :
192.168.3.230 pc-master 192.168.3.232 pc-slave2
sudo vim ~/.bashrc
stay ~/.bashrc Add something to :
export ROS_IP="192.168.3.230" export ROS_HOSTNAME=pc-master export ROS_MASTER_URI=http://pc-master:11311 export ROSLAUNCH_SSH_UNKNOWN=1
#4.1.2 pc-slave2
sudo vim /etc/hosts
stay /etc/hosts Add something to the file :
192.168.3.230 pc-master 192.168.3.232 pc-slave2
sudo vim ~/.bashrc
stay ~/.bashrc Add something to :
export ROS_HOSTNAME=pc-slave2 export ROS_MASTER_URI=http://pc-master:11311 export ROSLAUNCH_SSH_UNKNOWN=1
sudo vim /opt/ros/kinetic/trunk_evn.sh
newly added trunk_evn.sh file
#!/bin/sh export ROS_IP=192.168.3.232 export ROS_HOSTNAME=pc-slave2 . /home/trunk/work/test/testworkspace/devel/setup.sh exec "$@"
sudo chmod 777 trunk_evn.sh
#4.2 Local host script
In the local pc-master Of package Written in launch Script
vim /home/trunk/work/test/testworkspace/src/testpackage/launch/test.launch
<launch>
<machine name="pc-slave2" address="192.168.3.232" user="trunk" env-loader="/opt/ros/kinetic/trunk_evn.sh"></machine>
<node machine="pc-slave2" name="talker" pkg="testpackage" type="talker.py" output="screen" ></node>
</launch>
#4.3 start-up
roslaunch testpackage test.launch
#5 Report errors
#5.1 not found in known_hosts
... logging to /home/trunk/.ros/log/84cf4482-b84f-11ea-9d63-000c297ff566/roslaunch-pc-master-3868.log Checking log directory for disk usage. This may take awhile. Press Ctrl-C to interrupt Done checking log file disk usage. Usage is <1GB. started roslaunch server http://pc-master:32881/ remote[192.168.3.232-0] starting roslaunch remote[192.168.3.232-0]: creating ssh connection to 192.168.3.232:22, user[trunk] /usr/lib/python2.7/dist-packages/Crypto/Cipher/blockalgo.py:141: FutureWarning: CTR mode needs counter parameter, not IV self._cipher = factory.new(key, *args, **kwargs) remote[192.168.3.232-0]: failed to launch on pc-slave2: Unable to establish ssh connection to [[email protected]:22]: Server u'192.168.3.232' not found in known_hosts
Solutions :
- Log
According to the log error prompt to modify python Bottom source , There is no effect , The log shows , ros It's still running on python2.7 On , Try to ros Running on the Python3 On
- Default the system to Python Replace with Python3
sudo rm -rf /usr/bin/python sudo ln -s /usr/bin/python3 /usr/bin/python
2. install ros The basic software package for compiling
sudo apt-get install python3-rosdep python3-rosinstall-generator python3-wstool python3-rosinstall build-essential sudo pip3 install catkin_pkg
3. Installation package depends on
rosdep install --from-paths src --ignore-src --rosdistro kinetic -y sudo apt-get install libtbb-dev python3-pyqt5 sudo pip3 install empy numpy defusedxml netifaces # Repair 16.04 libboost_python3 Problems that can't be found sudo ln -s /usr/lib/x86_64-linux-gnu/libboost_python-py35.so /usr/lib/x86_64-linux-gnu/libboost_python3.so
4. Perfect solution
#5.2 TypeError: ‘NoneType’ object is not callable
modify Python The underlying code
Participation of this paper Tencent cloud media sharing plan , You are welcome to join us , share .
版权声明
本文为[Coxhuang]所创,转载请带上原文链接,感谢
边栏推荐
猜你喜欢

The CPU does this without the memory

一万四千字分布式事务原理解析,全部掌握你还怕面试被问?

一万四千字分布式事务原理解析,全部掌握你还怕面试被问?

The emergence and significance of micro service

计组-总线通信控制之异步串行通信的数据传输

On the coverage technology and best practice of go code

Ubuntu下搜狗输入法的下载安装及配置

关于晋升全栈工程师,从入门到放弃的神功秘籍,不点进来看一看?

How to choose a good company

技术总监7年自述——如何选择一家好公司
随机推荐
C language I blog assignment 03
Practice of Xiaoxiong school development board: real equipment access of smart street lamp sandbox experiment
一文详解微服务架构
More than 50 object detection datasets from different industries
栈-括号的匹配
Reflection on a case of bus card being stolen and swiped
技术总监7年自述——如何选择一家好公司
ROS学习---远程启动ROS节点
On hiz buffer
Python 图片识别 OCR
【C++学习笔记】C++ 标准库 std::thread 的简单使用,一文搞定还不简单?
laravel8更新之维护模式改进
awk实现类sql的join操作
There's not much time left for Kwai Chung.
Sentry 安装
Jingtao project day09
【原创】ARM平台内存和cache对xenomai实时性的影响
京淘项目day09
Facebook开源框架如何简化 PyTorch 实验
Web安全(四)---XSS攻击