SlideShare a Scribd company logo
1 of 92
Download to read offline
RoboPeak 团队
2009 – 2013
http://www.RoboPeak.com
-机器人制作分享和介绍
By 陈士凯 (CSK)
RoboPeak Mini:
n. 易用的小型化群体机器人开发平台
简写: RPmini
13cm
8 cm
我们为何制作RoboPeak Mini?
• 小型化
• 丰富的传感器资源
• 软硬件协同设计
• 开发平台
– 方便携带,降低成本
– 更多可能性
– 不仅仅是硬件堆砌,注重易用性
– 提供扩展应用的可能性
初期:团队内部研发使用
目标:开源硬件
方便广大机器人爱好者使用
RoboPeak第一代原型机
(2009 – 2010)
视觉和激光雷达
红外障碍检测
X86主机
惯性导航系统
里程计
0.7m
8cm
RoboPeak Mini
(2011 – 2012)
RoboPeak Mini v1
(2011)
RoboPeak Mini v1
(2011)
RoboPeak Mini v2
(2011 – 2012)
超声波测距雷达
惯性导航系统
蓝牙无线通讯
LCD
高精度里程计
X8 障碍物检测
32位ARM处理器
低成本+小型化 ->
制作更多的机器->
机器人群体行为研究
群体视觉定位和协作
RoboPeak SDK
上层控制逻辑
蓝牙/WIFI
72Mhz
ARM
3D电子罗盘
3D加速度计
陀螺仪
超声波雷达
障碍和跌落检
测
LCD
按键
X8 LED
Speaker
电机控制器
供电和电源管
理
人机界面 IMU
智能控制算法
如此多的硬件设备,如何使用?
会很复杂?
软硬件协同设计
Software/Hardware Co-design
1+1 > 2
来自PC/Mac的例子
硬件 软件(操作系统)
易用的设备
机器人硬件 + 内置软件支持
传统机器人控制软件编写
基本运行
• PWM电机驱动
• PID转速控制
• 与上位机通讯逻辑
稍复杂的行为
• 各传感器驱动程序
• 简单的传感器数据处
理
• 障碍躲避
• …
更复杂的行为
• 传感器数据融合
• Kalman Filter
• 路径规划
• 航迹推测
• SLAM
• 视觉导航
• ….
内置算法支持
基本运行
• PWM电机驱动
• PID转速控制
• 与上位机通讯逻辑
稍复杂的行为
• 各传感器驱动程序
• 简单的传感器数据处
理
• 障碍躲避
• …
更复杂的行为
• 传感器数据融合
• Kalman Filter
• 路径规划
• 航迹推测
• SLAM
• 视觉导航
• ….
机器人控制原语
Control Primitives
turn(180)
run(200 m)
goto(x,y)
selfCalibration
Beep
FollowPath
SetLight
GetPath
GetHeading
RadarScan
基于原语的机器人行为控制
run(200 cm)
Turn(90 deg)
Goto(40, 80)
GetPath
80
80
实际路径
调试终端
PC/iOS/Android
调试终端
PC/iOS/Android
调试终端
PC/iOS/Android
调试终端
PC/iOS/Android
调试终端
PC/iOS/Android
机器人爱好者常见的问题
定位与控制
控制:
• 按指定速度运行
• 转特定角度
• 移动到给定位置
• etc…
获得实际转速 + 实时转速调节
𝜃
获得实际朝向 + 精确转角控制
I II III
获取移动距离 + 获取朝向
精确位移控制 + 精确朝向控制
按指定速度运行:最简方式PWM驱动
问题: 无法获得确切转速
按指定速度运行:闭环控制
需要编码器
PWM 输出 电机运转
电机转速采集转速反馈校正
转速的实时反馈校正:
PID控制/模糊控制/…
RoboPeak Mini的PID转速控制原语
Motor(FORWARD, 100)
Motor(BACKWARD, 100)
Motor(BRAKE)
RoboPeak Mini的转动和移动原语
Run(100 meter)
Turn(90 deg)
Goto(30, 40)
前提:获取定位信息
位移 和 朝向(转角)
定位:
• 初步:通过自身姿态信息
• 朝向/运动的轨迹/移动速度/转动速度
• 进一步:环境信息
• 机器人在环境中的位置/周围障碍物情况/…
位移 : 里程计(编码器)
朝向/角度:陀螺仪/里程计
自身的姿态信息:
里程计(编码器)
提供移动速度和距离
移动速度 = 电机转速 * 轮周长
移动距离 = 移动速度 * dT
基于里程计(编码器)的测量
𝜃
𝑙
差分驱动模式的计算
𝑏
𝜃 =
∆𝑟𝑖𝑔𝑕𝑡 − ∆𝑙𝑒𝑓𝑡
𝑏
𝑙 =
∆𝑙𝑒𝑓𝑡 + ∆𝑟𝑖𝑔𝑕𝑡
2
基于里程计(编码器)的测量
𝜃
𝑙
𝑏
需要预先确定的量:
𝑏 – 轮距
𝑅𝑤𝑕𝑒𝑒𝑙 – 轮半径
里程计(编码器)的测量特点:
• 硬件成本低(无须额外传感器)
• 不受磁场、温度等影响
• 误差会累加
• 精度低
• 无法避免打滑现象
陀螺仪 (角度传感器)
陀螺仪特点:
• 解析度高
• 抗干扰强
• 误差会累加
• 温度漂移问题
𝜃 𝑡 = 𝜃 𝑡 − 1 + ∆𝜃
MEMS陀螺仪:检测角速度
航迹推算
Dead Reckon
(𝑥, 𝑦, 𝜃)
航迹推算 (Dead Reckon)
推荐文献:
Where am I?- Sensors and Methods for Mobile Robot Positioning,
J. Borenstein et al
0
200
400
600
800
1000
1200
0 200 400 600 800 1000 1200
vision
DeadReckon
如何避免累计误差?
电子罗盘
HMC5883 三轴电子罗盘
电子罗盘 – 检测外部磁场在X/Y/Z轴的分量
𝜃
mY
mX
𝜃 = arctan⁡(
𝑚𝑌
𝑚𝑋
)
𝐵
电子罗盘特点:
• 误差不会累计
• 可以获得绝对角度(朝向)
• 容易受磁场环境干扰(尤其室内)
• 环境改变后需要重新校正
室内环境的磁场干扰
对磁场扰动的校正
RoboPeak Mini自动进行磁场校正
(𝑥, 𝑦, 𝜃)
融入环境信息
(𝑥′, 𝑦′, 𝜃′)
超声波测距扫描
超声波测距扫描
精度不高,成本较低
视觉定位
视觉定位 – 星盘定位系统
避免环境光干扰、可直接安装至任何机器人
多传感器融合 – 取长补短
特性 陀螺仪 电子罗盘 里程计角度测量
精确度 高 中等 中等
是否有累计误差 有 无 有
抗环境干扰 优秀 差 差
测量稳定性 优秀 差(室内) 差(易打滑)
成本 较高 中等 低
… … … …
电子罗盘
陀螺仪
里程计
(其他)
融合算法+ 更精确的角度
融合算法
• 互补滤波器
• 卡尔曼滤波器
• 粒子滤波器
• ….
启用传感器融合
启用传感器融合
消除磁场干扰
-600
-400
-200
0
200
400
600
800
1000
1200
1400
0 500 1000 1500 2000 2500 3000
Vision
magnet
fusion
同步定位与建图 (SLAM)
LIDAR
传统产品成本较高
低成本的LIDAR
扩展与下一步工作
Copyright 2009 – 2013 RoboPeak Team
http://www.robopeak.com

More Related Content

Similar to Rpmini intro n_sharing

How to build your own robot with ibm bluemix&watson
How to build your own robot with ibm bluemix&watsonHow to build your own robot with ibm bluemix&watson
How to build your own robot with ibm bluemix&watson湯米吳 Tommy Wu
 
开源社区生生不息的创新土壤
开源社区生生不息的创新土壤开源社区生生不息的创新土壤
开源社区生生不息的创新土壤Steven Cheng
 
自动化运维管理
自动化运维管理自动化运维管理
自动化运维管理frankwsj
 
移动互联网时代的语音云
移动互联网时代的语音云移动互联网时代的语音云
移动互联网时代的语音云csdnmobile
 
Velocity2011分享
Velocity2011分享Velocity2011分享
Velocity2011分享Zoom Quiet
 
千万级并发在线推送系统架构解析 | 个信互动 叶新江
千万级并发在线推送系统架构解析 | 个信互动 叶新江千万级并发在线推送系统架构解析 | 个信互动 叶新江
千万级并发在线推送系统架构解析 | 个信互动 叶新江imShining @DevCamp
 
HPX台南讀書會-Axure RP基礎課程
HPX台南讀書會-Axure RP基礎課程HPX台南讀書會-Axure RP基礎課程
HPX台南讀書會-Axure RP基礎課程Souyi Yang
 
[DCTPE2010] Drupal 遇上行動網路服務
[DCTPE2010] Drupal 遇上行動網路服務[DCTPE2010] Drupal 遇上行動網路服務
[DCTPE2010] Drupal 遇上行動網路服務Drupal Taiwan
 
Appcan移动应用开发平台介绍120409
Appcan移动应用开发平台介绍120409Appcan移动应用开发平台介绍120409
Appcan移动应用开发平台介绍120409zhengyiwuxian
 
Top100summit前端的云时代支付宝前端平台架构 王保平
Top100summit前端的云时代支付宝前端平台架构  王保平Top100summit前端的云时代支付宝前端平台架构  王保平
Top100summit前端的云时代支付宝前端平台架构 王保平drewz lin
 
Mochimedia's Success Story - Case Study I (Python-based Company)
Mochimedia's Success Story - Case Study I (Python-based Company)Mochimedia's Success Story - Case Study I (Python-based Company)
Mochimedia's Success Story - Case Study I (Python-based Company)Sting Chen
 
開放原始碼 Ch2.1 app - oss - oss ide (ver1.2)
開放原始碼 Ch2.1   app - oss - oss ide (ver1.2)開放原始碼 Ch2.1   app - oss - oss ide (ver1.2)
開放原始碼 Ch2.1 app - oss - oss ide (ver1.2)My own sweet home!
 
常用开发工具介绍
常用开发工具介绍常用开发工具介绍
常用开发工具介绍haozes
 
炎炎夏日學 Android 課程 - Part2: Android 元件介紹
炎炎夏日學 Android 課程 - Part2: Android 元件介紹炎炎夏日學 Android 課程 - Part2: Android 元件介紹
炎炎夏日學 Android 課程 - Part2: Android 元件介紹Johnny Sung
 
Appcan平台介绍
Appcan平台介绍Appcan平台介绍
Appcan平台介绍36Kr.com
 
2011/08/20跨平台行動應用程式使用者介面開發—以titanium mobile為例
2011/08/20跨平台行動應用程式使用者介面開發—以titanium mobile為例2011/08/20跨平台行動應用程式使用者介面開發—以titanium mobile為例
2011/08/20跨平台行動應用程式使用者介面開發—以titanium mobile為例Justin Lee
 
高雄和春資工系-Axure RP基礎課程
高雄和春資工系-Axure RP基礎課程高雄和春資工系-Axure RP基礎課程
高雄和春資工系-Axure RP基礎課程Souyi Yang
 
讓 HTML5 走進 IPTV Framework
讓 HTML5 走進 IPTV Framework讓 HTML5 走進 IPTV Framework
讓 HTML5 走進 IPTV FrameworkJollen Chen
 
開放原始碼作為新事業: 台灣本土經驗談 (COSCUP 2011)
開放原始碼作為新事業: 台灣本土經驗談 (COSCUP 2011)開放原始碼作為新事業: 台灣本土經驗談 (COSCUP 2011)
開放原始碼作為新事業: 台灣本土經驗談 (COSCUP 2011)National Cheng Kung University
 

Similar to Rpmini intro n_sharing (20)

How to build your own robot with ibm bluemix&watson
How to build your own robot with ibm bluemix&watsonHow to build your own robot with ibm bluemix&watson
How to build your own robot with ibm bluemix&watson
 
开源社区生生不息的创新土壤
开源社区生生不息的创新土壤开源社区生生不息的创新土壤
开源社区生生不息的创新土壤
 
自动化运维管理
自动化运维管理自动化运维管理
自动化运维管理
 
移动互联网时代的语音云
移动互联网时代的语音云移动互联网时代的语音云
移动互联网时代的语音云
 
Velocity2011分享
Velocity2011分享Velocity2011分享
Velocity2011分享
 
千万级并发在线推送系统架构解析 | 个信互动 叶新江
千万级并发在线推送系统架构解析 | 个信互动 叶新江千万级并发在线推送系统架构解析 | 个信互动 叶新江
千万级并发在线推送系统架构解析 | 个信互动 叶新江
 
HPX台南讀書會-Axure RP基礎課程
HPX台南讀書會-Axure RP基礎課程HPX台南讀書會-Axure RP基礎課程
HPX台南讀書會-Axure RP基礎課程
 
[DCTPE2010] Drupal 遇上行動網路服務
[DCTPE2010] Drupal 遇上行動網路服務[DCTPE2010] Drupal 遇上行動網路服務
[DCTPE2010] Drupal 遇上行動網路服務
 
Appcan移动应用开发平台介绍120409
Appcan移动应用开发平台介绍120409Appcan移动应用开发平台介绍120409
Appcan移动应用开发平台介绍120409
 
Top100summit前端的云时代支付宝前端平台架构 王保平
Top100summit前端的云时代支付宝前端平台架构  王保平Top100summit前端的云时代支付宝前端平台架构  王保平
Top100summit前端的云时代支付宝前端平台架构 王保平
 
Mochimedia's Success Story - Case Study I (Python-based Company)
Mochimedia's Success Story - Case Study I (Python-based Company)Mochimedia's Success Story - Case Study I (Python-based Company)
Mochimedia's Success Story - Case Study I (Python-based Company)
 
開放原始碼 Ch2.1 app - oss - oss ide (ver1.2)
開放原始碼 Ch2.1   app - oss - oss ide (ver1.2)開放原始碼 Ch2.1   app - oss - oss ide (ver1.2)
開放原始碼 Ch2.1 app - oss - oss ide (ver1.2)
 
常用开发工具介绍
常用开发工具介绍常用开发工具介绍
常用开发工具介绍
 
炎炎夏日學 Android 課程 - Part2: Android 元件介紹
炎炎夏日學 Android 課程 - Part2: Android 元件介紹炎炎夏日學 Android 課程 - Part2: Android 元件介紹
炎炎夏日學 Android 課程 - Part2: Android 元件介紹
 
Appcan平台介绍
Appcan平台介绍Appcan平台介绍
Appcan平台介绍
 
2011/08/20跨平台行動應用程式使用者介面開發—以titanium mobile為例
2011/08/20跨平台行動應用程式使用者介面開發—以titanium mobile為例2011/08/20跨平台行動應用程式使用者介面開發—以titanium mobile為例
2011/08/20跨平台行動應用程式使用者介面開發—以titanium mobile為例
 
Banquet 24
Banquet 24Banquet 24
Banquet 24
 
高雄和春資工系-Axure RP基礎課程
高雄和春資工系-Axure RP基礎課程高雄和春資工系-Axure RP基礎課程
高雄和春資工系-Axure RP基礎課程
 
讓 HTML5 走進 IPTV Framework
讓 HTML5 走進 IPTV Framework讓 HTML5 走進 IPTV Framework
讓 HTML5 走進 IPTV Framework
 
開放原始碼作為新事業: 台灣本土經驗談 (COSCUP 2011)
開放原始碼作為新事業: 台灣本土經驗談 (COSCUP 2011)開放原始碼作為新事業: 台灣本土經驗談 (COSCUP 2011)
開放原始碼作為新事業: 台灣本土經驗談 (COSCUP 2011)
 

Rpmini intro n_sharing