主要内容

情节Turtlebot测程法

这个例子展示了如何获得、存储和显示测程法数据从TurtleBot®驱动的环境中。

连接到TurtleBot

第一个代码块的描述

ipaddress =“192.168.192.130”;%你的机器人的IP地址tbot = turtlebot (ipaddress, 11311);tbot.Velocity。TopicName =' / cmd_vel ';

测程法数据

使用getOdometry得到一个单一量距点TurtleBot。函数返回的位置和姿态[x y z]坐标和(偏航距辊)角度。

奥多姆= getOdometry (tbot)
奥多姆=结构体字段:位置:[4.3772 1.4580 -0.0010]取向:[-2.2936 0.0032 7.8259 e-06]

发送速度命令改变机器人的位置。要注意位置的变化,首先重置测程法。使用setVelocity驱动机器人前进2秒,等待机器人来执行这个命令。

resetOdometry (tbot) setVelocity (tbot, 0.5,“时间”,2)

得到后的测程法速度命令发送。的x协调的odom.Position反映了位置上的改变。速度为0.5米/秒2秒产生一个1米的位移x按预期方向。

奥多姆= getOdometry (tbot)
奥多姆=结构体字段:位置:[3.2717 0.7216 -0.0010]取向:[-2.6151 0.0032 -1.5861 e-05]

情节量距数据点

你可以存储测程法数据的完整轨迹时机器人路径导航通过其环境。

开始循环存储速度量距的位置,然后发出一个命令。这个循环运行20次创建一个基本的两种轨迹。绘制轨迹。

odomList = 0 (20, 2);resetOdometry (tbot)我= 1:20奥多姆= getOdometry (tbot);odomList(我:)= (odom.Position (1) odom.Position (2)];如果我< 10 setVelocity (tbot, 0.25, 0.15)其他的setVelocity (tbot, 0.25, -0.15)结束暂停(1);结束情节(odomList (: 1) odomList (:, 2))

另请参阅

||

相关的话题