ROS机器人操作系统开发视频教程进阶-远程传输工程(三)

ROS机器人操作系统开发视频教程进阶(记录感悟和过程)

三、roboware远程传输工程到ros主控,远程编译运行

1、ssh远程连接ros主控
免密码登录
首先,输入:

ssh-keygen

生成密匙,一路回车
再运行:

ssh-copy-id -i .ssh/id-rsa.pub user@host
我的小车是
ssh-copy-id -i .ssh/id-rsa.pub nanorobot@192.168.1.101

然后,输入密码即可。

2、Roboware Stduio 远程操作工程-roboware配置
首先编译选择为Remote Deploy
然后,右边两个齿轮,点击最右边那个,要求输入主机ip,名字,密匙地址以及选择的工作区,至此,配置完成。

3、传输工程到ROS主控
上述配置好后,点击编译的小锤子即可。

4、远程编译
这里使用编译模式为Debug(remote)点击编译,但是我的在这里不行。
不行也没问题,我们可以进到树莓派中,使用catkin_make编译,也是一样的
这个问题,经过我的查阅资料也得到解决

在树莓派端执行以下两行指令:

sudo su
echo "source /opt/ros/kinetic/setup.bash" >>/etc/profile

我安装的ROS是melodic版本的,这里根据你自己的版本来修改改路径,最开始我们都在.bashrc中配置过环境变量,不知道这里也要改。/etc/profile是配置所有用户的环境变量,可能catkin用到了其他用户的权限吧。

此外,应根据不同的ros版本不同的命令,这里例子是kinetic,我的小车改成melodic就可以了,再次编译即可
编译时候可以在树莓派下使用指令:

top

查看cpu运行状态

5、远程执行
在这里,我们仍需要进行配置,在树莓派下使用命令:

vi .bashrc

或者:

vim ~/.bashrc

其vi或vim使用方式可以参考ROS与C++入门教程(记录步骤)(一)
在文件下末尾处加上:

source ~/robot_1/devel/setup.bash

结束后,重新登陆树莓派
输入指令:

roslaunch rplidar_ros rplidar.launch

可以看到节点,这里view就没用了
6、.bashrc多机master连接配置
首先修改PC端,打开终端执行:

gedit .bashrc 

在最末尾加上:

export ROS_MASTER_URI=http://192.168.1.101:11311
#或者  ROS_MASTER_URI=http://robot:11311

export ROS_HOSTNAME=192.168.1.100
#或者 export ROS_IP=192.168.1.100  
#第一句可以是ip地址或者域名
#第二局是本机PC端的ip或者域名,HOSTNAME是ip域名都可以,IP只能是IP
不过还是建议只用ip,问题很少,方便

然后保存退出,重启终端才会生效

下面再登录树莓派,执行:

vi .bashrc
#vim ~/.bashrc

因为我使用的小车自带这段程序,这里需要注释掉它,为了防止遗忘,每次演示结束都会改回来,首先是原代码:

export ROS_IP=`hostname -I | awk '{print $1}'`
export ROS_HOSTNAME=`hostname -I | awk '{print $1}'`
export ROS_MASTER_URI=http://`hostname -I | awk '{print $1}'`:11311
#export ROS_MASTER_URI=http://master_ip:11311



export BASE_TYPE=NanoCar
export LIDAR_TYPE=rplidar

注释掉后的代码为:

#export ROS_IP=`hostname -I | awk '{print $1}'`
#export ROS_HOSTNAME=`hostname -I | awk '{print $1}'`
#export ROS_MASTER_URI=http://`hostname -I | awk '{print $1}'`:11311
#export ROS_MASTER_URI=http://master_ip:11311



#export BASE_TYPE=NanoCar
#export LIDAR_TYPE=rplidar

然后同样在末尾加上:

export ROS_MASTER_URI=http://192.168.1.101:11311
export ROS_HOSTNAME=192.168.1.101

因为树莓派是主机,所以这里两个地址是一样的。
然后退出树莓怕,命令为:

exit

重新连接登录树莓派
至此,多级连接配置搞好了
尝试一个例子
首先:
在树莓派端启动雷达运行:

roslaunch rplidar_ros rplidar.launch 

新开一个终端,在PC端运行:

rviz

手共加入配置
首先,点击下方Add加入LaserScan
然后修改LaserScan,Topic选择 /scan
然后,Fixed Frame手动填入laser即可看到图像
可以在Size(m)修改扫描线的宽度

至此,本部分结束,欢迎留言一起探讨

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
    随着ICT技术不断深化和传统场景的结合,自动化、智能化相融合已经成为ICT技术的下一代浪潮,以工业机器人、服务机器人自动驾驶等的新一代技术浪潮目前已经方兴未艾,成为又一波热点。而作为次级操作系统ROS则提供了一系列的调试、仿真工具,能支持激光导航、视觉导航等算法,是切入机器人自动驾驶技术的重要基石。    机器人是一个复合型的领域,涉及软件、算法、硬件、结构等诸多方向,是一个理论性和实践性并重的行业,考虑到其复杂性和讲解的循序渐进,整个系列课程将分为个系列即入门系列、中级系列、高级系列。   在入门系列中,我们将介绍ROS的基础知识(机器人基础知识、ROS开发环境等)、ROS配置管理(系统架构、参数管理、Launch启动、编译配置以及如何基于源代码开发等)、ROS系统调试(代码调试、可视化调试、消息回放、单元测试等)。   在中级系列中,我们将围绕机器人仿真涉及的URDF机器人模型、Gazebo仿真环境、坐标变换、运动控制等展开介绍,并随着课程的深入,将会深度使用RVIZ、Gazebo等仿真和调试工具。   在高级系列中,我们将着眼于人工智能框架及算法,分享机器人开发涉及的运动控制、SLAM、语音交互、计算机视觉等。逐层递进,为大家一层层剥开机器人的神秘面纱。    本系列课程的特色在于:    1、从基础知识、编译管理、通信机制、系统调试等4个方面循序渐进、逐步深化,知识覆盖全面,便于深度认知;    2、从基本理论、源码解读、工程示例等领域开展ROS系统入门知识的深度介绍和分析,源于工程实践,利于快速上手;   3、基于全新的环境Ubuntu 20.04、ROS Noetic、Gazebo 11、GMapping、Cartographer、tensorFlow 2.*、OpenCV 4.*等讲解,紧跟时代前沿。   整个系列的课程将会逐步开发并上线,个系列是一个逐步深入、环环相扣的课程内容,感兴趣的同学可以开始学习啦。  

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值