1200字范文,内容丰富有趣,写作的好帮手!
1200字范文 > odroid xu4安装ROS melodic+远程登录+Roboware 开发

odroid xu4安装ROS melodic+远程登录+Roboware 开发

时间:2022-03-03 02:52:08

相关推荐

odroid xu4安装ROS melodic+远程登录+Roboware 开发

odroid xu4安装ROS melodic+远程登录+Roboware 开发

一、odroid xu4安装ROS melodic二、远程登录odroid xu41、odroid xu4自动登录2、odroid xu4配置固定IP3、SSH远程连接ROS主控(Odroid XU4)三、Roboware远程开发1、用Roboware Studio在PC上创建ROS工程2、Roboware远程传输工程到ROS主控3、远程编译和远程执行4、.bashrc多机master连接配置参考内容

自己手里有一块odroid xu4开发板,最近想做一个SLAM小车,开发过程中遇到了一些问题,查找资料的过程中发现大部分都是树莓派的资料,虽说都是ARM架框,但具体问题的解决方法还是不太一样,为方便日后查看,把开发过程简单做个记录,也希望能够帮助有同样问题的小伙伴。

一、odroid xu4安装ROS melodic

ROS安装按照官网的步骤即可,只是在sudo rosdep initrosdep update两步会报错

解决方法:

上面两个指令的作用就是访问,下载文件20-default.list,并且访问文件中的网址下载相关文件,因此,解决方法就是手动下载所需文件,并复制到/etc/ros/rosdep/目录中。

文件下载地址:

/Vision4UAV/rosdistro/tree/master/rosdep

上述方法参考了rosdep init 错误的终极解决方法,其中说明了sudo rosdep initrosdep update出错的原因以及另外一种解决方法。

二、远程登录odroid xu4

使用SSH远程登录,首先需要设置odroid xu4自动登录,否则要给xu4插上键盘和屏幕,不方便开发和调试;为了防止每次登录IP地址发生改变,最好配置固定IP。

1、odroid xu4自动登录

odroid xu4安装ubuntu mate 18.04后,设置自动登录的方法和树莓派有所不同,需要修改的文件是/usr/share/lightdm/lightdm.conf.d/50-slick-greeter.conf

打开文件:

sudo gedit /usr/share/lightdm/lightdm.conf.d/50-slick-greeter.conf

如果没有gedit编辑器,先安装

sudo apt install gedit

或者用vim打开

sudo vim /usr/share/lightdm/lightdm.conf.d/50-slick-greeter.conf

在最后添加自动登录命令:

autologin-user=your username

保存退出,重启:

reboot

开机后不会出现输入密码的界面,直接进入桌面,完成。

2、odroid xu4配置固定IP

将odroid xu4连接无线网,查看IP地址:

ifconfig -a

IP地址为:192.168.31.34

Netmask:255.255.255.0

Gateway:192.168.31.255

配置固定IP:

点击右上角WIFI图标–>选择"Edit Connections…":

选择当前连接的WIFI网络–>点击下方的设置按钮:

选择"IPv4 Settings"–>“Method"选择"Manual”–>“Add”–>根据上面查看的IP地址,填入"Address、Netmask、Gateway"–>“Save”

重启

reboot

3、SSH远程连接ROS主控(Odroid XU4)

将PC机和Odroid XU4连接到同一个局域网,通过odroid xu4的IP地址或主机名远程登录

IP地址登录:

ssh odroid@192.168.31.34

其中,odroid为odroid xu4的用户名

计算机名登录:

ssh odroid@odroid

其中,第一个odroid是用户名,第二个odroid是ubuntu系统的主机名。

然后输入密码即可成功登录odroid xu4。

注:输入exit即可切换回PC机

为了便避免每次登录都需要输入密码,而且为了后续开发,需要配置免密码登录

生成密钥,注意这里要在PC端执行:

ssh-keygen

按回车键在默认目录下生成密钥文件

把公钥复制到odroid xu4中:

ssh-copy-id -i .ssh/id_rsa.pub odroid@odroid

如果发生sign_and_send_pubkey:signing failed:agentrefused operation错误,在PC端执行:

ssh-add

之后,就可以直接登录,无需输入密码

三、Roboware远程开发

RoboWare Studio是一个ROS集成开发环境,它使得 ROS的开发更加直观、简单、并且易于操作。可进行ROS工作区及包的管理、代码编辑、构建及调试。Roboware Studio的安装这里不做介绍,网上教程很多。

1、用Roboware Studio在PC上创建ROS工程

这里以思岚激光雷达为例说明整个创建、编译、运行过程。

选择用户目录,Roboware创建工作空间:

菜单栏选择 “Designer”->“Open Designer”,打开图形化配置界面:

可以看到,左侧工程目录中已经自动加入了两个新的目录launch_pkgrplidar_ros

编译工程:

修改.bashrc文件:

打开.bashrc文件 gedit ~/.bashrc

在最后添加 source ~/slam_robot/devel/setup.bash

执行 source ~/.bashrc ,使修改生效

运行:

执行 ll /dev/tty* ,查看是否插入rplidar a2激光雷达

修改串口权限:sudo chmod 777 /dev/ttyUSB0

启动激光雷达:roslaunch rplidar_ros view_rplidar.launch

2、Roboware远程传输工程到ROS主控

配置Roboware:

传输工程到远程ROS主控:

注:传输过程中可能会出现2个错误

错误1:bash: rsync: command not found

解决方法:安装rsync

sudo apt install rsync

错误2:/tmp/roswstmp.sh: line 2: catkin_init_workspace: command not found

解决方法:配置所有用户的环境变量

sudo su

echo “source /opt/ros/melodic/setup.bash” >>/etc/profile

3、远程编译和远程执行

远程编译:

远程执行:

修改odroid xu4的.bashrc文件:

vim ~/.bashrc

在最后加入:source ~/slam_robot/devel/setup.bash

执行:source ~/.bashrc,使修改生效

执行:

roslaunch rplidar_ros rplidar.launch

激光雷达启动成功。

4、.bashrc多机master连接配置

修改PC机.bashrc文件:

在.bashrc文件中,添加以下内容:

export ROS_MASTER_URI=http://192.168.31.34:11311

export ROS_HOSTNAME=meng-INVALID

export ROS_IP=192.168.31.79

执行source ~/.bashrc使修改生效

注:ROS_MASTER_URI是odroid xu4(主机)的IP地址,11311是固定的;ROS_HOSTNAME是本机的主机名;ROS_IP是本机的IP地址,ROS_HOSTNAME(从机)和ROS_IP(从机)写一个就可以。

修改odroid xu4的.bashrc文件:

export ROS_MASTER_URI=http://192.168.31.34:11311

export ROS_HOSTNAME=odroid

执行:source ~/.bashrc 使修改生效

odroid xu4(主机)启动ROS:

roslaunch rplidar_ros rplidar.launch

本地PC(从机)的rviz查看主机的话题:

rviz

参考内容

[1]rosdep init 错误的终极解决方法

[2]Ubuntu Mate 自动登录

[3]树莓派UbuntuMate设置固定IP

[4]树莓派3设置固定IP地址的方法(亲测有效)

[5]bash: rsync: command not found报错原因以及解决办法

[6]Roboware远程传输编译时找不到命令catkin_init_workspace: command not found解决

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。