tianbot_mini机器人上手ROS/SLAM/Navigation究竟有多简单???
时间:2022-07-25
本文章向大家介绍tianbot_mini机器人上手ROS/SLAM/Navigation究竟有多简单???,主要内容包括其使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。
>>>tianbot_mini<<<
tianbot_mini
之前,上过机器人或者单片机或者计算机或者控制的相关课程,急需一款适用于多课程的融合性机器人。
自己搭建机器人如下:
给它化妆美化一下:
但是还是不好用,稳定性一般,然后每次搭建也费时间,唯一的好处就是学生可以看见机器人搭建全过程。
现在基本用这款小机器人。官网有介绍,现在简要介绍一下过程吧:
一,配网,主机和mini都链接相同的局域网中,并且需要将雷达的无线也插入主机USB口。
二,调试,打开机器人IP,本机如:192.168.2.100,使用方向键看下机器人是否一切正常运动。
三,导航,使用三行命令直接开始ROS和SLAM的愉悦旅程。
下面详细介绍一下。
.bashrc,相关内容如下:
# ROS 1.0 melodic or ROS 2.0 Dashing
echo Hello, ROS 1.0 or ROS 2.0? 1=Melodic 2=Dashing
read ROS
if (($ROS==1));then
source /opt/ros/melodic/setup.bash
#export ROS_PACKAGE_PATH=/home/relaybot/RobTool/ROS1/Wiki/src:/home/relaybot/RobTool/Cozmo/ros/src:$ROS_PACKAGE_PATH
#source /home/relaybot/RobTool/ROS1/Wiki/devel/setup.bash
export ROS_MASTER_URI=http://192.168.2.101:11311
export ROS_IP=192.168.2.101
echo "Melodic"
elif (($ROS==2));then
source /opt/ros/dashing/setup.bash
export GAZEBO_MODEL_PATH=$GAZEBO_MODEL_PATH:/opt/ros/dashing/share/turtlebot3_gazebo/models
echo "Dashing"
else
echo "Non-ROS"
fi
启动,roscore:
启动机器人, roslaunch tianbot_mini bringup.launch:
warn可暂时忽略,后续会讲解。
启动lidar,roslaunch tianbot_mini lidar.launch
启动slam,roslaunch tianbot_mini slam.launch
可以愉快的玩耍起来了。
先看下rqt提供的功能:
rqt_graph:
all:
tf:
为了方便观看机器人在环境中的导航规划,使用摄像头监控机器人:
开启导航!
更多内容稍后介绍……
一个小时快速了解机器人操作系统,同步定位和地图构建,导航。
- REDIS操作命令小结
- Java发送邮件工具类
- javascript 变量、作用域和内存问题
- 1726: [Usaco2006 Nov]Roadblocks第二短路
- vue小白快速入门
- 算法模板——线段树9(区间加+区间求和+区间方和)
- 1709: [Usaco2007 Oct]Super Paintball超级弹珠
- 2015: [Usaco2010 Feb]Chocolate Giving
- 2060: [Usaco2010 Nov]Visiting Cows 拜访奶牛
- 2020: [Usaco2010 Jan]Buying Feed, II
- 2102: [Usaco2010 Dec]The Trough Game
- 洛谷P3707 [SDOI2017]相关分析(线段树)
- Java计数器之CountDownLatch、CyclicBarrier、Semaphore
- 再看最短路算法 1 —— 单源最短路
- JavaScript 教程
- JavaScript 编辑工具
- JavaScript 与HTML
- JavaScript 与Java
- JavaScript 数据结构
- JavaScript 基本数据类型
- JavaScript 特殊数据类型
- JavaScript 运算符
- JavaScript typeof 运算符
- JavaScript 表达式
- JavaScript 类型转换
- JavaScript 基本语法
- JavaScript 注释
- Javascript 基本处理流程
- Javascript 选择结构
- Javascript if 语句
- Javascript if 语句的嵌套
- Javascript switch 语句
- Javascript 循环结构
- Javascript 循环结构实例
- Javascript 跳转语句
- Javascript 控制语句总结
- Javascript 函数介绍
- Javascript 函数的定义
- Javascript 函数调用
- Javascript 几种特殊的函数
- JavaScript 内置函数简介
- Javascript eval() 函数
- Javascript isFinite() 函数
- Javascript isNaN() 函数
- parseInt() 与 parseFloat()
- escape() 与 unescape()
- Javascript 字符串介绍
- Javascript length属性
- javascript 字符串函数
- Javascript 日期对象简介
- Javascript 日期对象用途
- Date 对象属性和方法
- Javascript 数组是什么
- Javascript 创建数组
- Javascript 数组赋值与取值
- Javascript 数组属性和方法