• 欢迎访问开心洋葱网站,在线教程,推荐使用最新版火狐浏览器和Chrome浏览器访问本网站,欢迎加入开心洋葱 QQ群
  • 为方便开心洋葱网用户,开心洋葱官网已经开启复制功能!
  • 欢迎访问开心洋葱网站,手机也能访问哦~欢迎加入开心洋葱多维思维学习平台 QQ群
  • 如果您觉得本站非常有看点,那么赶紧使用Ctrl+D 收藏开心洋葱吧~~~~~~~~~~~~~!
  • 由于近期流量激增,小站的ECS没能经的起亲们的访问,本站依然没有盈利,如果各位看如果觉着文字不错,还请看官给小站打个赏~~~~~~~~~~~~~!

ros机器人编程实践(3.1)- 将消息发布在话题上

人工智能 布剪刀石头 2141次浏览 0个评论

前言

  记录下学习过程,《ros机器人编程实践》第三章第一个例子讲的不是很清楚,又是入门学习的算是第一第二个例子,对新手真的很不友好。   实现过程   1、创建catkin工作区(这部分不清楚可以在wiki上看详细介绍):

mkdir -p ~/catkin_ws/src

 

cd ~/catkin_ws/src

 

catkin_init_workspace

 

cd ~/catkin_ws

 

catkin_make

 

source devel/setup.bash

  2、创建basic包   创建basic包依赖于std_msg和rospy  

cd ~/catkin_ws/src
catkin_creat_pkg basic std_msg rospy

  进入basic的src目录  

cd basic/src

  创建并编辑topic_publisher.py文件  

touch topic_publisher.py
gedit topic_publisher.py

  复制一下代码进去并保存  

#!/usr/bin/env python
import roslib; roslib.load_manifest('basic')
import rospy
from std_msgs.msg import Int32
rospy.init_node('topic_publisher')
pub = rospy.Publisher('counter', Int32)
rate = rospy.Rate(2)
count = 0
while not rospy.is_shutdown():
        pub.publish(count)
        count += 1
        rate.sleep()

  设置文件执行权限  

chmod u+x topic_publisher.py

  返回catkin_ws目录并编译  

cd ~/catkin_ws
catkin_make

  写入环境变量并source环境变量文件使之生效  

echo "source ~/catkin_ws/devel/setup.bash" >> ~/.bashrc
source ~/.bashrc

  ctrl+alt+t打开新终端启动roscore  

roscore

  在原来的终端启动写好的发布消息的节点  

rosrun basic topic_publisher.py

  程序执行情况   ros机器人编程实践(3.1)- 将消息发布在话题上   这个警告好像无伤大雅,刚入门百度搜了一些没太看明白怎么解决。 再开一个新终端,用rostopic list打印正在执行的话题  

rostopic list

  ros机器人编程实践(3.1)- 将消息发布在话题上   可以看到我们的节点已经在运行了。 用rostopic echo打印节点的数据  

rostopic echo counter -n 5

  打印五条消息   ros机器人编程实践(3.1)- 将消息发布在话题上   用rostopic来检验他是否按照我们的预期速率发送  

rostopic hz counter

  ros机器人编程实践(3.1)- 将消息发布在话题上   ctrl+c停止打印,用rostopic info查看已经被声明的话题  

rostopic info counter

  ros机器人编程实践(3.1)- 将消息发布在话题上   用rostopic find来查询发布某种类型消息的所有话题  

rostopic find std_msgs/Int32

  ros机器人编程实践(3.1)- 将消息发布在话题上   ok到此结束啦~enjoy it


开心洋葱 , 版权所有丨如未注明 , 均为原创丨未经授权请勿修改 , 转载请注明ros机器人编程实践(3.1)- 将消息发布在话题上
喜欢 (0)

您必须 登录 才能发表评论!

加载中……