
ROS
gophae
这个作者很懒,什么都没留下…
展开
-
ROS在rviz中实时显示轨迹和点
记录一个简单的例子方便复制:通过使用nav_msgs::Pathgeometry_msgs::PoseStampedgeometry_msgs::PointStamped来实现rviz中可视化轨迹和轨迹点。首先创建工程:mkdir -p showpath/srccd srccatkin_create_pkg showpath roscpp rospy sensor_msgs std_msgs nav_msgs tfcd ..catkin_make 以及修改cmakelist:a原创 2020-09-10 15:20:45 · 16511 阅读 · 4 评论 -
ros::spin() 和 ros::spinOnce()
ROS的回调处理函数spin/spinOnce作用区别使用作用spin/spinOnce是ROS消息回调处理函数。它俩通常会出现在ROS的主循环中,程序需要不断调用ros::spin() 或 ros::spinOnce(),两者区别在于前者调用后不会再返回,也就是你的主程序到这儿就不往下执行了,而后者在调用后还可以继续执行之后的程序。如果你的程序写了相关的消息订阅函数,那么程序在执行过程中,除了主程序以外,ROS还会自动在后台按照你规定的格式,接受订阅的消息,但是所接到的消息并不是立刻就被处理,而是必原创 2020-09-08 10:19:24 · 3781 阅读 · 0 评论 -
ROS在类中发布和接受消息(自定义消息)
一开始建立pkg:mkdir -p ~/catkin_ws/srccd ~/catkin_ws/catkin_makecd ~/catkin_ws/srccatkin_create_pkg pub_sub_test std_msgs rospy roscppcd ..catkin_make我们现在有两个自定义消息:adm_lat.msguint8 Enable_latfloat32 GPS1_Curvature_cmdfloat32 V_desint8 Gear_desuint原创 2020-08-19 16:53:51 · 5219 阅读 · 0 评论 -
ROS在类中发布和接受消息(标准消息)
作为模板写的时候方便查一下。本例生成两个节点talkerlisten1& 2, 互相接受对方消息,做了简单处理后在发出去。注意测试的时候先开B在开A。#include "ros/ros.h"#include "std_msgs/Float64.h"#include <unistd.h>class tl1{public: tl1(); void registerNodeHandle(ros::NodeHandle& _nh);//单独写出去注册nh原创 2020-08-19 16:13:44 · 4665 阅读 · 0 评论 -
ubuntu Vim的退出命令
退出的时候分为4种情况:保存退出、正常退出、不保存退出以及强制退出(1)保存退出:按“Esc”键后 此时的“插入”会消失,再输入“:”之后在输入命令时直接输入“wq”;也可以用快捷键按Shift+zz 就可以保存修改内容并退出。(2)正常退出:当修改修改了一部分内容后发现修改错了,此时就会进行不保存退出按“Esc”键后,再输入“:”之后在输入命令时直接输入“q” 。(3)强制退出: 按“E...原创 2019-11-20 08:58:37 · 6435 阅读 · 0 评论 -
Matlab如何实现建立ROS节点并进行实时通讯
首先我们需要两台机子,一台ubuntu系统,这里我们选用Xavier,另一台是我们的电脑,转配最新的Matlab2019b.Ubuntu中安装ROS Melodic.对于Matlab的配置,需要做如下操作:初始化matlab ros:setenv('ROS_MASTER_URI','http://192.168.1.101:11311') setenv('ROS_IP','192.168...原创 2019-11-19 18:42:31 · 3001 阅读 · 5 评论 -
ROS MATLAB 启动
>> setenv('ROS_MASTER_URI','http://192.168.43.20:11311')>> setenv('ROS_IP','192.168.43.3')>> rosinit('192.168.43.20')原创 2019-10-25 15:33:13 · 548 阅读 · 1 评论 -
ROS 与 Matlab/Simulink联合仿真测试(1)
Matlab 提供了很多实例, 我们通过以下这个实例来解释以下在线仿真的方式:open_system(‘robotROSConnectToRobotExample’);在MATLAB中打开这个实例:打开是这个样子的,为了更好地演示如何来做在线仿真,我们把上面的部分拿出去,放在另一个新的simulink里面。上面的部分就是在模拟发送机器人的控制命令,通过publish模块发出。下面的部分则...原创 2019-10-23 12:04:22 · 3482 阅读 · 0 评论