array(2) { ["docs"]=> array(10) { [0]=> array(10) { ["id"]=> string(3) "428" ["text"]=> string(77) "Visual Studio 2017 单独启动MSDN帮助(Microsoft Help Viewer)的方法" ["intro"]=> string(288) "目录 ECharts 异步加载 ECharts 数据可视化在过去几年中取得了巨大进展。开发人员对可视化产品的期望不再是简单的图表创建工具,而是在交互、性能、数据处理等方面有更高的要求。 chart.setOption({ color: [ " ["username"]=> string(8) "DonetRen" ["tagsname"]=> string(55) "Visual Studio 2017|MSDN帮助|C#程序|.NET|Help Viewer" ["tagsid"]=> string(23) "[401,402,403,"300",404]" ["catesname"]=> string(0) "" ["catesid"]=> string(2) "[]" ["createtime"]=> string(10) "1511400964" ["_id"]=> string(3) "428" } [1]=> array(10) { ["id"]=> string(3) "427" ["text"]=> string(42) "npm -v;报错 cannot find module "wrapp"" ["intro"]=> string(288) "目录 ECharts 异步加载 ECharts 数据可视化在过去几年中取得了巨大进展。开发人员对可视化产品的期望不再是简单的图表创建工具,而是在交互、性能、数据处理等方面有更高的要求。 chart.setOption({ color: [ " ["username"]=> string(4) "zzty" ["tagsname"]=> string(50) "node.js|npm|cannot find module "wrapp“|node" ["tagsid"]=> string(19) "[398,"239",399,400]" ["catesname"]=> string(0) "" ["catesid"]=> string(2) "[]" ["createtime"]=> string(10) "1511400760" ["_id"]=> string(3) "427" } [2]=> array(10) { ["id"]=> string(3) "426" ["text"]=> string(54) "说说css中pt、px、em、rem都扮演了什么角色" ["intro"]=> string(288) "目录 ECharts 异步加载 ECharts 数据可视化在过去几年中取得了巨大进展。开发人员对可视化产品的期望不再是简单的图表创建工具,而是在交互、性能、数据处理等方面有更高的要求。 chart.setOption({ color: [ " ["username"]=> string(12) "zhengqiaoyin" ["tagsname"]=> string(0) "" ["tagsid"]=> string(2) "[]" ["catesname"]=> string(0) "" ["catesid"]=> string(2) "[]" ["createtime"]=> string(10) "1511400640" ["_id"]=> string(3) "426" } [3]=> array(10) { ["id"]=> string(3) "425" ["text"]=> string(83) "深入学习JS执行--创建执行上下文(变量对象,作用域链,this)" ["intro"]=> string(288) "目录 ECharts 异步加载 ECharts 数据可视化在过去几年中取得了巨大进展。开发人员对可视化产品的期望不再是简单的图表创建工具,而是在交互、性能、数据处理等方面有更高的要求。 chart.setOption({ color: [ " ["username"]=> string(7) "Ry-yuan" ["tagsname"]=> string(33) "Javascript|Javascript执行过程" ["tagsid"]=> string(13) "["169","191"]" ["catesname"]=> string(0) "" ["catesid"]=> string(2) "[]" ["createtime"]=> string(10) "1511399901" ["_id"]=> string(3) "425" } [4]=> array(10) { ["id"]=> string(3) "424" ["text"]=> string(30) "C# 排序技术研究与对比" ["intro"]=> string(288) "目录 ECharts 异步加载 ECharts 数据可视化在过去几年中取得了巨大进展。开发人员对可视化产品的期望不再是简单的图表创建工具,而是在交互、性能、数据处理等方面有更高的要求。 chart.setOption({ color: [ " ["username"]=> string(9) "vveiliang" ["tagsname"]=> string(0) "" ["tagsid"]=> string(2) "[]" ["catesname"]=> string(8) ".Net Dev" ["catesid"]=> string(5) "[199]" ["createtime"]=> string(10) "1511399150" ["_id"]=> string(3) "424" } [5]=> array(10) { ["id"]=> string(3) "423" ["text"]=> string(72) "【算法】小白的算法笔记:快速排序算法的编码和优化" ["intro"]=> string(288) "目录 ECharts 异步加载 ECharts 数据可视化在过去几年中取得了巨大进展。开发人员对可视化产品的期望不再是简单的图表创建工具,而是在交互、性能、数据处理等方面有更高的要求。 chart.setOption({ color: [ " ["username"]=> string(9) "penghuwan" ["tagsname"]=> string(6) "算法" ["tagsid"]=> string(7) "["344"]" ["catesname"]=> string(0) "" ["catesid"]=> string(2) "[]" ["createtime"]=> string(10) "1511398109" ["_id"]=> string(3) "423" } [6]=> array(10) { ["id"]=> string(3) "422" ["text"]=> string(64) "JavaScript数据可视化编程学习(二)Flotr2,雷达图" ["intro"]=> string(288) "目录 ECharts 异步加载 ECharts 数据可视化在过去几年中取得了巨大进展。开发人员对可视化产品的期望不再是简单的图表创建工具,而是在交互、性能、数据处理等方面有更高的要求。 chart.setOption({ color: [ " ["username"]=> string(7) "chengxs" ["tagsname"]=> string(28) "数据可视化|前端学习" ["tagsid"]=> string(9) "[396,397]" ["catesname"]=> string(18) "前端基本知识" ["catesid"]=> string(5) "[198]" ["createtime"]=> string(10) "1511397800" ["_id"]=> string(3) "422" } [7]=> array(10) { ["id"]=> string(3) "421" ["text"]=> string(36) "C#表达式目录树(Expression)" ["intro"]=> string(288) "目录 ECharts 异步加载 ECharts 数据可视化在过去几年中取得了巨大进展。开发人员对可视化产品的期望不再是简单的图表创建工具,而是在交互、性能、数据处理等方面有更高的要求。 chart.setOption({ color: [ " ["username"]=> string(4) "wwym" ["tagsname"]=> string(0) "" ["tagsid"]=> string(2) "[]" ["catesname"]=> string(4) ".NET" ["catesid"]=> string(7) "["119"]" ["createtime"]=> string(10) "1511397474" ["_id"]=> string(3) "421" } [8]=> array(10) { ["id"]=> string(3) "420" ["text"]=> string(47) "数据结构 队列_队列实例:事件处理" ["intro"]=> string(288) "目录 ECharts 异步加载 ECharts 数据可视化在过去几年中取得了巨大进展。开发人员对可视化产品的期望不再是简单的图表创建工具,而是在交互、性能、数据处理等方面有更高的要求。 chart.setOption({ color: [ " ["username"]=> string(7) "idreamo" ["tagsname"]=> string(40) "C语言|数据结构|队列|事件处理" ["tagsid"]=> string(23) "["246","247","248",395]" ["catesname"]=> string(12) "数据结构" ["catesid"]=> string(7) "["133"]" ["createtime"]=> string(10) "1511397279" ["_id"]=> string(3) "420" } [9]=> array(10) { ["id"]=> string(3) "419" ["text"]=> string(47) "久等了,博客园官方Android客户端发布" ["intro"]=> string(288) "目录 ECharts 异步加载 ECharts 数据可视化在过去几年中取得了巨大进展。开发人员对可视化产品的期望不再是简单的图表创建工具,而是在交互、性能、数据处理等方面有更高的要求。 chart.setOption({ color: [ " ["username"]=> string(3) "cmt" ["tagsname"]=> string(0) "" ["tagsid"]=> string(2) "[]" ["catesname"]=> string(0) "" ["catesid"]=> string(2) "[]" ["createtime"]=> string(10) "1511396549" ["_id"]=> string(3) "419" } } ["count"]=> int(200) } 222 树莓派ROS机器人 - 爱码网

ifconfig Linux查看IP
ipconfig Windows查看IP

连接树莓派

ssh [email protected]地址

修改IP地址

如若更换IP,必须修改

sudo gedit ~/.bashrc // 修改IP地址一致
source ~/.bashrc
树莓派ROS机器人

开启底盘节点

[email protected]:~roslaunch clbrobot bringup.launch

校准IMU

重新打开控制台连接树莓派

  • roscd clbrobot/
  • [email protected]:~/catkin_ws/src/clbrobot_project/clbrobot$ cd param/imu
    //校准X,Y,Z方向
  • [email protected]:~/catkin_ws/src/clbrobot_project/clbrobot/param/imu$ rosrun imu_calib do_calib
  • rostopic echo /imu/data

调用键盘:

指令
I 前进
J 左转
L 右转
M 左后退
< 后退
> 右后退
U 左前
O 右前
C 角速度
X 线速度
1.连接树莓派 ssh [email protected]地址
2.开启底盘节点: [email protected]:~roslaunch clbrobot bringup.launch
3.新开终端,并连接树莓派
[email protected]:~$ rosrun teleop_twist_keyboard teleop_twist_keyboard.py

角速度校正

1.连接树莓派 ssh [email protected]地址
2.启动底盘节点:[email protected]:~roslaunch clbrobot bringup.launch
3.新开终端,连接树莓派,启动底盘节点
[email protected]:~$ rosrun rikirobot_nav calibrate_angular.py
5,新开终端
[email protected]:~$ rosrun rqt_reconfigure rqt_reconfigure

鼠标构建地图

1.连接树莓派
2.启动底盘节点
3.新建终端,连接树莓派
4.开启雷达 [email protected]:~$ roslaunch clbrobot lidar_slam.launch
5.新建终端 rosrun rviz rviz
6.选择slam.rviz文件open
树莓派ROS机器人

7.调用键盘控制小车移动[email protected]:~$ rosrun teleop_twist_keyboard teleop_twist_keyboard.py

保存地图

1.连接树莓派
2.打开[email protected]:~$ roscd clbrobot/
[email protected]:~/catkin_ws/src/clbrobot_project/clbrobot$ cd maps
[email protected]:~/catkin_ws/src/clbrobot_project/clbrobot/maps$ ./map.sh

自动导航与自动避障

1.连接树莓派
2.启动底盘
3.创建新终端,连接树莓派
[email protected]:~$ roslaunch clbrobot navigate.launch
5.新终端输入 [email protected]:~$ rosrun rviz rviz
6.打开navigate.rviz
树莓派ROS机器人

使用Hector算法构建地图(会有重影,不适合障碍物多的地方)

1.连接树莓派
2.开启底盘
3.新建终端,连接树莓派
[email protected]:~$ roslaunch clbrobot hector_slam.launch
5.新建终端,rosrun rviz rviz
6.选择slam.rviz
树莓派ROS机器人

7.调用键盘操控小车
[email protected]:~$ rosrun teleop_twist_keyboard teleop_twist_keyboard.py

>动态调节PID参数

1.连接树莓派
2.启动底盘
3.新建终端,连接树莓派
[email protected]:~$ rosrun riki_pid pid_configure
5.新开终端:[email protected]:~$ rosrun rqt_reconfigure rqt_reconfigure
6.新开终端,开启键盘:[email protected]:~$ rosrun teleop_twist_keyboard teleop_twist_keyboard.py

摄像头寻线 与雷达跟随

1.连接树莓派
2.启动底盘
3.新建终端,连接树莓派
[email protected]:~$ roslaunch clbrobot camera.launch
5.摄像头寻线:
新建终端:[email protected]:~$ roslaunch riki_line_follower riki_line.launch

5.雷达跟随:
新建终端:连接树莓派
[email protected]:~$ roslaunch riki_lidar_follower laser_follower.launch

多点导航

1.连接树莓派
2.启动底盘
3.新建终端,连接树莓派
4.多点导航[email protected]:~$ roslaunch clbrobot navigate_multi.launch
5.新建终端, rosrun rviz rviz

会提示报错,这个不用管(个别电脑会导致虚拟机崩溃掉,建议换台电脑):
树莓派ROS机器人

APP连接

1.连接树莓派
2.启动底盘
3.新建终端,连接树莓派
[email protected]:~$ roslaunch clbrobot appcamera.launch
打开树莓派自带APP,输入IP地址,点击connnect
(自带的树莓派我打开APP会崩溃,我在网上找的博客下载的)
树莓派ROS机器人

opencv_apps图像事例

1.连接树莓派
2.开启摄像头:[email protected]:~$ roslaunch clbrobot camera.launch
3.新建终端:
4.边缘提取:
[email protected]:~$ roslaunch opencv_apps edge_detection.launch
树莓派ROS机器人
4,直线检测:
[email protected]:~$ roslaunch opencv_apps hough_lines.launch
树莓派ROS机器人
4.结构特征轮廓
[email protected]:~$ roslaunch opencv_apps find_contours.launch
树莓派ROS机器人

4.凸高检测
[email protected]:~$ roslaunch opencv_apps convex_hull.launch
树莓派ROS机器人
4.椭圆形轮廓识别
[email protected]:~$ roslaunch opencv_apps general_contours.launch
树莓派ROS机器人
4.身高识别
[email protected]:~$ roslaunch opencv_apps people_detect.launch
树莓派ROS机器人
这只是举例,还有很多,大家多多尝试吧!

APP建图

1.连接树莓派
2.连接底盘
3.新建树莓派,连接树莓派
4.启动雷达:[email protected]:~$ roslaunch clbrobot lidar_slam.launch
5.新建树莓派,连接树莓派
6.启动摄像头[email protected]:~$ roslaunch clbrobot camera.launch
7.打开树莓派自带APP,输入IP地址连接
树莓派ROS机器人

相关文章: