创建工作空间及小乌龟运动

创建ros源码包前先创建一个工作空间,使用ubuntu的命令mkdir创建一个目录:每一个工作空间tmp_ws中都有一个src目录

mkdir -p tmp_ws/src

然后,切换到创建的ros的工作空间中去

cd tmp_ws/src

通过catkin_create_pkg方式创建包:catkin_create_pkg + 包名字(自己定义) + 依赖项(用python语言:rospy) + 通信消息(控制小乌龟运动)

catkin_create_pkg test00_turtle rospy geometry_msgs

 可以在Home中看一下刚创建的工作空间

 虽然创建了rospackage,但里面什么也没有,可以通过如下命令修改一下bashrc

gedit .bashrc

运行进入bashrc,在bashrc中加入一行,让系统找到ros的工作目录:

source ~/tmp_ws/devel/setup.bash

根据自己创建的工作空间名(我这里是tmp_ws)进行添加,如下

改后记得右上角保存"Save"

此时还没有编译我们的工作空间,所以tmp_ws中只有src文件

进入工作空间tmp_ws,编译一下:

cd tmp_ws/

catkin_make能把所有的源码和工作空间编译一下

在编译的过程中,tmp_ws中生成了两个文件:build 、devel

下面通过写一个节点看一下程序是如何运行的

输入roscore,所有的其他节点都要向roscore做注册、汇报

roscore

开一个新界面,接下来运行一个经典的turtlesim的例子 

1、安装turtlesim的软件包

sudo apt install ros-noetic-turtlesim

其他的包也能通过这种方式安装,ros+版本号+包名

2、启动软件包中的节点

通过rosrun命令启动软件包中的节点(一个小乌龟):rosrun+包名+所调用的包内函数名

rosrun turtlesim turtlesim_node

3、通过rostopic list详细了解小乌龟

rostopic list

可通过rostopic info +小乌龟属性名(如rostopic info /turtle1/pose)看一下小乌龟的详细属性数据

最后,写一段代码程序实现控制小乌龟的运动

1、切换到软件包中

cd tmp_ws/src/test00_turtle/scripts/

通过touch命令创建一个test00.py的文件,可通过vim或记事本编写代码程序,这里我使用vim

2、进入编写代码程序

import rospy
from geometry_msgs.msg import Twist

rospy.init_node('test_turtle')
pub = rospy.Publisher('/turtle1/cmd_vel', Twist, queue_size=1)
cmd = Twist()
cmd.linear.y = 0.1
#cmd.angular.z = 0.5
while not rospy.is_shutdown():
    pub.publish(cmd)
    rospy.sleep(0.1)

3、保存并退出

先按esc键,然后键入冒号:(会在左下角显示),最后在冒号后面输入wq(意思是保存并退出),按回车键即可

4、运行程序

如果输入python运行报错,如下

可以试试输入python3

可以发现小乌龟沿着y轴运动

也可以通过rosrun运行,但它要求test00.py有可执行权限

  • 7
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值