第五课5ROS客户端2

Posted 郭润

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了第五课5ROS客户端2相关的知识,希望对你有一定的参考价值。

1、简单的主题(topic)发布者和主题订阅者:

编写主题发布者节点需要:

a、初始化ROS系统;

b、广播消息:在foo主题上发布Foo_type_msg类型的消息

c、指定频率发布消息到foo主题

编写主题订阅者需要:

a、初始化ROS

b、从foo主题订阅消息

c、Spin,然后等待消息到达

d、当消息到达时,Msg_Callback()函数被调用。

简单的服务器端和客户端

首先开启roscore,然后运行rosrun turtlesim turtlesim_node,下面看一下他的服务有哪些

 rosservice list(rosservice和rossrv的区别,后者是关注全局的服务信息的定义相关的;前者主要是对当前活动的服务进行操作,不一定!!!)

下面是服务列表

选择再生这个服务/spwan;看一下/spwan服务的类型,

下面我们借用服务turtlesim/Spawn来写一下客户端,首先我们来看一下它是怎么定义的,

可以看到它有一个请求和响应,他们是用“---”分隔开,

下面写一个服务的客户端,

下面要打开eclipse,使用./make

然后双击eclipse

下面导入工程,

然后新建一个源文件,

然后开始编写源程序,

下面进行编译

catkin_make

addturtle.cpp

client.call(spawn)判断这个服务请求是否有效,返回TRUE则有效,反之则无效。

CMakeLists.txt

运行rosrun addturtle addturtle indigo 25 6 8(在这个地方不止输入5个参数,难道rosrun addturtle addturtle这条命令没有算进去???!!!!!!!)

下面看一下CMakeLists文件

 

以上是关于第五课5ROS客户端2的主要内容,如果未能解决你的问题,请参考以下文章

Thrift第五课 应用模式以及运行异常

第五课补充01——持久化

第五课:创建DownLoadable系统应用

第五课 进程管理

第五课

7.5-UC-第五课:进程管理