机器人操作系统及应用 ROS小车运动控制设计

1 背景介绍

控制ROS机器人小车运动,规划设计“爱心”路径。

2 设计小车运动轨迹过程

爱心由两个半圆与下部分的两条直线组成,要使小车跑出“爱心”路线,分为四部分,先画两个半圆,再画两条直线。首先先画爱心的右上半圆,而后倒退画爱心的右上半圆,继而倒退画爱心右下部分的直线,旋转角度,最后画爱心左上半圆。运动轨迹包含的基本功能有线速度、角速度设置;里程设置;左转向、右转向;前进;后退等。小车运动轨迹顺序如下图所示:

3 相应的ROS主题发布或订阅程序

通过了解ROS的通信机制,我们认识到要控制机器人小车的运动,需要给相应的主题发送指令。通过python代码实现即是新建一个节点,而后连接到一个话题,再向话题发布特定的信息。代码示例如下:

#初始化节点以及节点的声明
rospy.init_node('draw_aixin',anonymous=False)
#声明发布者,发布者的类型为twist,缓存区队列设为10
cmd_pub = rospy.Publisher('cmd_vel',Twist,queue_size=10)
#发布消息
cmd_pub.publish(twist)

4 控制小车运动源码解释

现在让我们分解代码:

4.1  首先确保脚本作为 Python 脚本执行

#!/usr/bin/python
# coding= utf-8

4.2  导入rospy以及相应的消息类型

import rospy
import math
from nav_msgs.msg import Odometry
from geometry_msgs.msg import Twist,Point# Twist数据类型包含线速度和角速度

4.3  初始化节点

def  cmd_vel_pub():
    rospy.init_node('draw_aixin',anonymous=False)
cmd_pub = rospy.Publisher('cmd_vel',Twist,queue_size=10)

4.4  将频率设置为2,希望每秒循环2次


                
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值