您的位置:首页 > 其它

ROS的初步学习(八)--远程传输到ROS主控,远程编译,运行

2017-10-24 22:03 369 查看
前面已经安装好SSH,这样我们使用命令 ssh user@hostpassger 就可以远程操控ROS主控了。

后面的编译都是基于roboware的,我们可以把他当成一个在linux上的IDE,但是他的一些作用已经超过普通IDE,可喜的是这是一款一个济南的公司制作的国产软件。

百度找到他的官网,很容易安装。在此不再赘述。

因为很多同学会出现远程传输工程出错的问题。所以接下来說一下在root权限下修改环境变量的问题。

远程开发模式

配置 SSH 公钥无密登录

1 首先,在本地计算机生成公钥和私钥。打开终端,执行命令:

$ ssh-keygen


一直按回车键选择默认选项,会在~/.ssh 目录下生成 id_rsa 和 id_rsa.pub 两个文件。然

后将 id_rsa.pub 文件复制到远程计算机:

$ scp ~/.ssh/id_rsa.pub username@ip_address:/home/username


2 将公钥文件 id_rsa.pub 拷贝到远程计算机后,SSH 登录到远程计算机:

$ ssh username@ip_address


其中 username 为远程计算机用户名,ip_address 为远程计算机的 IP 地址。

3 登 录 后 , 将 id_rsa.pub 的 文 件 内 容 追 加 写 入 到 远 程 计 算 机 的

~/.ssh/authorized_keys 文件中,并修改 authorized_keys 文件的权限:

$ cat id_rsa.pub >> ~/.ssh/authorized_keys
$ chmod 600 ~/.ssh/authorized_keys


配置完成后,再登录远程计算机就无需输入密码。

如果在本地端出现 failure ….的只需要添加私钥

ssh-add   ~/.ssh/id_rsa

4000

4 接下来,即可配置 RoboWare Studio

的远程调试参数进行远程调试。

修改远程计算机/etc/profile

首先,登录远程计算机:

$ ssh username@ip_address


其中 username 为远程计算机用户名,ip_address 为远程计算机的 IP 地址。

登录后,切换到 root 用户权限,将 ROS 环境变量信息写入到/etc/profile 文件中:

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


接下来在roboware上配置远程主控信息



输入主控IP,Enter,在输入主控user,在Remote Deploy下部署,

完成远程部署后,即可进行远程构建。

首先,在资源管理器视图下,选择“Debug (remote)”构建选项,点击列表左侧的按钮
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  ssh ide