ros基础VScode版

1:node(节点):单独模块
2:topic(话题):进行话题的通讯
3:service(服务):也是通讯的一种,就是你发送他能接受,但是不能反馈
4:action:程序运行需要进行等待
5:tf :机器人有很多的坐标系,就算依靠这个tf进行统一的发布,进行查阅
6:parameter(参数服务器):机器人参数编制集成到服务器中。启动起来修改参数就可以了
7:rosbag log rqt launch

查看:
rosnode list: 查看节点
rostopic list : 查看当前所有订阅和发布的主题 运行
rostopic list -h : 可以看到如下帮助信息
rostopic list -v :通过将“-v”选项添加到rostopic list命令,可以分开发布话题和订阅话题,并将每个话题的消息类型一起显示。

首先我们重新温习一下ROS术语。
命令 详细说明
rostopic list 显示活动的话题目录
rostopic echo [话题名称] 实时显示指定话题的消息内容
rostopic find [类型名称] 显示使用指定类型的消息的话题
rostopic type [话题名称] 显示指定话题的消息类型
rostopic bw [话题名称] 显示指定话题的消息带宽(bandwidth)
rostopic hz [话题名称] 显示指定话题的消息数据发布周期
rostopic info [话题名称] 显示指定话题的信息
rostopic pub [话题名称] [消息类型] [参数] 用指定的话题名称发布消息

rosservice list :是列出当前正在进行通信的service服务通信的service_name,而
rossrv list:则是列出系统中所有自定义服务消息文件的service_name,前者是“列出正在运行的service_name”而后者是列出所有的service_name“这两者有本质的不同
Rosservice list -n:输出发起服务通信的节点,即查找指定服务话题的客户端:

参数

rosparam list :参数

rostopic echo / turtle1/cmd_vel

查看节点运行状态
rosnode --help

查看当前通讯话题的
rostopic --help

rosmsg list 查看消息

使用VScode来创建编译ROS

步骤一:创建文件夹进行无程序编译

mkdir -p catkin_ws/src
cd ..
catkin_make

步骤二:编译成功后在catkin_ws进行运行VScode

cd catkin_ws
code .

步骤三:打开了VScode程序,再进行
快捷键 ctrl + shift + B 调用编译,,选择:catkin_make:build
在这里插入图片描述进入:tasks.json文件进行替换程序
在这里插入图片描述

{
// 有关 tasks.json 格式的文档,请参见
    // https://go.microsoft.com/fwlink/?LinkId=733558
    "version": "2.0.0",
    "tasks": [
        {
            "label": "catkin_make:debug", //代表提示的描述性信息
            "type": "shell",  //可以选择shell或者process,如果是shell代码是在shell里面运行一个命令,如果是process代表作为一个进程来运行
            "command": "catkin_make",//这个是我们需要运行的命令
            "args": [],//如果需要在命令后面加一些后缀,可以写在这里,比如-DCATKIN_WHITELIST_PACKAGES=“pac1;pac2”
            "group": {"kind":"build","isDefault":true},
            "presentation": {
                "reveal": "always"//可选always或者silence,代表是否输出信息
            },
            "problemMatcher": "$msCompile"
        }
    ]
}

步骤四:创建 ROS 功能包

选定 src 右击 —> create catkin package

在这里插入图片描述添加运行程序名字和相关程序的依赖
运行程序名字如:hello

hello

在这里插入图片描述
相关依赖:roscpp rospy std_msgs

roscpp  rospy  std_msgs

在这里插入图片描述就出现了:package.xml文件
在这里插入图片描述如果依赖写错了可以到文件中进行修改
快捷键 ctrl + shift + B在这里插入图片描述

步骤五:创建一个cpp文件在这里插入图片描述
添加程序

/*
    控制台输出 HelloVSCode !!!

*/
#include "ros/ros.h"

int main(int argc, char *argv[])
{
    setlocale(LC_ALL,"");
    //执行节点初始化
    ros::init(argc,argv,"HelloVSCode");

    //输出日志
    ROS_INFO("Hello VSCode!!!哈哈哈哈哈哈哈哈哈哈");
    return 0;
}

步骤六:修改CMakeLists.txt文件
在这里插入图片描述
在Build下程序

###########
## Build ##
###########

在这里插入图片描述
步骤七:快捷键 ctrl + shift + B进行编译

在这里插入图片描述
步骤八:运行程序

roscore
source ./devel/setup.bash 
rosrun hello_vscode hello_vscode_c

运行成功出现打印在这里插入图片描述

问题

如果ros/ros.h报红找不到在:c_cpp_properties.json文件中添加自己的ros文件的路径
在这里插入图片描述
步骤八:运行程序

roscore
source ./devel/setup.bash 
rosrun hello_vscode hello_vscode_c
```![在这里插入图片描述](https://img-blog.csdnimg.cn/f6b254f9509c4e099c9263fecdb57806.png)问题: 如果没有代码提示,修改 .vscode/c_cpp_properties.json
设置 "cppStandard": "c++17"
![在这里插入图片描述](https://img-blog.csdnimg.cn/dbfa401865174b4f91579e392d6742f2.png)

问题:main 函数的参数不可以被 const 修饰,当ROS__INFO 终端输出有中文时,会出现乱码
解决办法:在函数开头加入下面代码的任意一句
![在这里插入图片描述](https://img-blog.csdnimg.cn/09793fc3067248fe8c2150fefd6a16ec.png)

```cpp
setlocale(LC_CTYPE, "zh_CN.utf8");
setlocale(LC_ALL, "");

使用python进行程序运行

步骤一:在hello_vscode文件夹下新建 scripts 文件夹,添加 python 文件,并添加可执行权限

在这里插入图片描述

步骤二:程序代码

#! /usr/bin/env python3
"""
    #! /usr/bin/env python:这个是添加python的编译器
    Python 版本的 HelloVScode,执行在控制台输出 HelloVScode
    实现:
    1.导包
    2.初始化 ROS 节点
    3.日志输出 HelloWorld


"""

import rospy # 1.导包

if __name__ == "__main__":

    rospy.init_node("Hello_Vscode_p")  # 2.初始化 ROS 节点
    rospy.loginfo("Hello VScode, 我是 Python ....")  #3.日志输出 HelloWorld

步骤三:修改权限:在scripts 文件夹点击右键在集成终端中打开
在这里插入图片描述步骤四:修改权限的程序

 sudo chmod +x *.py

在这里插入图片描述步骤五:修改配置文件

在这里插入图片描述当不配置CMakeLists.txt文件中
是找不到解释器,会进行报错的
如果不配置CMakeLists.txt文件就创建·一个软链接

sudo ln -s /usr/bin/python3 /usr/bin/python

步骤六:运行程序

roscore
source ./devel/setup.bash 
rosrun hello_vscode hello_vscode_p.py

在这里插入图片描述

创建launch作用是launch 文件,可以一次性启动多个 ROS 节点

2.实现

选定功能包右击 ---> 添加 launch 文件夹

选定 launch 文件夹右击 ---> 添加 launch 文件

在这里插入图片描述

编辑 launch 文件内容

这个是乌龟的launch

<launch>
    <node pkg="turtlesim" type="turtlesim_node" name="turtle_GUI" />
    <node pkg="turtlesim" type="turtle_teleop_key" name="turtle_key"/>
</launch>

这是测试的launch

<launch>
    <node pkg="helloworld" type="demo_hello" name="hello" output="screen" />
    <node pkg="turtlesim" type="turtlesim_node" name="t1"/>
    <node pkg="turtlesim" type="turtle_teleop_key" name="key1" />
</launch>
  node ---> 包含的某个节点

  pkg -----> 功能包

  type ----> 被运行的节点文件

  name --> 为节点命名

  output-> 设置日志的输出目标,这个设置成功以后可以在终端上看到

在这里插入图片描述

运行 launch 文件,在运行launch时要进行保存后在运行否者会报错

roscore
source ./devel/setup.bash 
roslaunch hello_vscode start_turtle.launch 
  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
要在ROS中下载并安装VScode,您可以按照以下步骤进行操作: 1. 打开VScode官方网站,访问https://code.visualstudio.com/,下载适合您操作系统的VScode安装包。 2. 下载完成后,找到下载文件夹,并右键点击安装包,选择"在终端中打开"。 3. 在终端中输入安装命令,例如在Ubuntu系统中输入:sudo dpkg -i code_1.68.1-1655263094_amd64.deb。请注意,这里的安装命令可能因为VScode本不同而有所不同,您需要将命令中的本号和文件名替换为您实际下载的安装包信息。 4. 输入密码并按下回车键,等待安装完成。 5. 安装完成后,您可以在应用程序菜单中找到VScode图标,或者在终端中输入"code"命令启动VScode。 6. 在VScode中,您可以通过左侧的插件图标搜索并安装ROS相关插件,例如C/C++、Cmake Tools、Python和ROS插件,以便在VScode中进行ROS和C/Python编程。 7. 如果您希望在VScode中使用中文界面,您可以搜索并安装简体中文包,然后重新启动VScode即可。 8. 至此,您已经成功下载并安装了VScode,并可以在ROS中使用它进行编程和开发。请参考相关文档或教程,了解VScodeROS中的具体使用方法。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *2* [ROS中安装vscode(详细有图)](https://blog.csdn.net/qq_45950023/article/details/125342619)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] - *3* [ROS中安装配置并使用VScode(持续更新)](https://blog.csdn.net/shi1804134022/article/details/124025745)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

枭玉龙

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值