【ROS】认识ros操作系统

285 阅读2分钟

本文已参与「新人创作礼」活动,一起开启掘金创作之路。

1 ROS是什么?

机器人操作系统(Robot Operating System, ROS)是一个应用于机器人上的操作系统,它操作方便、功能强大,特别适用于机器人这种多节点多任务的复杂场景。

说明:ROS是一个适用于机器人编程的框架, 这个框架把原本松散的零部件耦合在了一起, 为他们提供了通信架构。 ROS虽然叫做操作系统, 但并非Windows、 Mac那样通常意义的操作系统, 它只是连接了操作系统和你开发的ROS应用程序, 所以它也算是一个中间件, 基于ROS的应用程序之间建立起了沟通的桥梁, 所以也是运行在Linux上的运行环境, 在这个环境上, 机器人的感知、 决策、 控制算法可以更好的组织和运行。

2./opt/ros文件结构:

①bin文件夹:放置一些具体的可执行的程序,在ros的bin文件夹下面保存的都是ros系统和一些功能包给我们提供的可以直接执行的命令,可以在终端下面执行这些命令。

注:在执行bin文件夹下面的命令时,必须先设置环境变量,不然系统无法找到bin文件夹。

②etc文件夹:ros相关的配置文件(用的相对少)

③include文件夹:包含所有通过命令行、通过终端安装的功能包的代码头文件。

④lib文件夹:包含通过终端安装功能包的可执行程序,也就是节点。功能包中的节点,通过运行节点,来启动相应功能包里面的功能。

⑤share文件夹:里面有很多通过终端安装的功能包,保存的是功能包里面接口的一些具体信息,接口包含话题、服务、action等。

关于网络连接的问题

  1. 虚拟机无法连接无人车网络有线:首先直接用windows宿主机连接无人车WiFi(实测只需先断开宿主机连接的WiFi,尝试虚拟机连接无人车,连接成功之后宿主机再连接WiFi即可),然后虚拟机顺利ssh连接无人车,之后断开WiFi(有线还能保持ssh连接正常),WiFi连接外网

  2. 如果需要在虚拟机中使用外网,得把和无人车连接的有线网络拔掉,虚拟机才可以正常上网。

  3. 无人车需要上外网的话,可以通过WiFi,或者手机USB分享网络都可以。

     sudo nmcli device wifi connect WIFI名称 password WIFI密码