Client Library
1 提供ROS编程的库
2 例如建立node,发布消息,调用服务
3 提供了如下几种client library :roscpp、rospy、roslisp
rospy的组成
1 Node
2 Topic
3 Service
4 Param
5 Time
rospy-Node 相关
rospy-topic 相关
1 wait_for_message: 只接收一次消息,不是一直处理消息
2 publisher-》init: 当中的queue_size, 设置为1, 为异步通信方式, None为同步通信方式
topic_demo
功能描述:
1 两个node,一个发布模拟的GPS消息(格式为自定义,包括坐标和工作状态)
2 另一个node接收并处理该信息(计算到原点的距离)
步骤
1 建立一个package
cd ~/catkin_ws/src
catkin_create_pkg topic_demo roscpp rospy std_msg
2 定义自己的msg文件
cd topic_demo/
mkdir msg
cd msg
gedit gps.msg
文件内容如下
3 编写talker.py
4 编写listener.py
5 修改CmakeList.txt; package.xml文件
6 最后执行catkin_make,编译完成之后会在如下路径下生成gps的头文件
7 使用rosrun运行talker.py和listener.py文件