移动机器人开源项目

本页面已公开
修改时间: 2008/07/03 01:47 由 admin - 编目为: 移动机器人, 项目

编辑

项目简介

家庭移动机器人项目是一个开放的共同协作项目。希望通过本项目的实施,能够提高大家的实际制作水平和理论水平。

家居移动机器人能够提供一个远程的遥控操作。可以通过Internet,手机对家里的机器人进行控制,并通过摄像头实现远程监控。并在这个过程中,实现自主移动,壁障和自动充电的功能。

编辑

项目代号

Home Care Robot (暂定)

编辑

项目性质

开源,任何人可以运行,复制,重新编译,改进程序代码。 本项目支持遵循GPL协议。即本项目所有的内容为公开,任何单位和个人都可以自由使用本项目中的资料,文档。且不限制使用用途。可以作为个人使用,学校研究用途以及商业用途。也可以对本项目产生的文档和设计进行改动进行二次开发。

编辑

项目内容

项目分2个阶段。

第一阶段:主要是进行硬件平台的开发,包括机械,电子的设计。

第二阶段:主要进行一些应用开发,比如安全监控,自动巡航和自动充电。

编辑

功能方案

Phase1 基本功能: A)自动充电: 低电压时自动回到充电座充电 B)远程查看家中环境 - 实时视频:HCR上架设摄像头,通过WIFI可以发送实时视频到远端电脑(视频)或手机(照片)。有加密控制。

Phase 2增强功能: A)自动巡逻模式:智能循迹 B)环境感知功能:门禁监控,声音感知 C)辅助功能:无线路由增强

编辑

底盘设计

  • 外形:圆形
  • 宽度:30-40cm
  • 底盘高度:30-40cm
  • 底盘离地高度:6cm
  • 设计移动速度:2.5km/hr
  • 驱动方式: 3轮差分驱动
  • 轮子直径:100mm-160mm

编辑

电机选型

设计参数:
  • 转速:131转/min~82转/min(对应于轮子直径100mm~160mm)
  • 额定电压:6-12V
  • 电机类型:直流或者步进

编辑

系统架构

Master-slave结构:即以一个处理器为主,其他处理器为辅.

图片

中心处理器由于要处理通信、图像、声音、控制等功能,最好能满足实时系统的运行,如Linux、UCOS等系统的运行,以及满足Orocos等软件的需要,因此要求较高,可以选者ARM,PPC等,如果有其他专用的处理器,也可以考虑;其它周围其间如移动臂等由于实现的功能较为简单,因此,可以先考虑用一般的处理器,如51系列,由于中心控制单元的外部控制接口较多,因此可以考虑用一块逻辑(CPLD或FPGA)作为扩展或备用;

总线通信:采用CAN总线或者I2C总线等;

无线通信:WLAN

接口: 串口、USB、网口、CF卡等;

编辑

传感器方案

距离传感器方案: 为了实现壁障和自动导航,HCR必须要有距离传感器,昂贵的激光传感器,比如Sick以及HOKUYO URG-04LX 激光扫描传感器 就不在考虑范围之内了。可以选择的就只有

  1. 红外传感器,比如Sharp系列
  2. 超声波传感器,比如DFRobot的URM37V32V3.2,Devantech的SRF系列
  3. 图像传感器,理论上任何摄像头都可以当,但是光凭摄像头的话,需要复杂的图像计算,也需要很强的运算单元。但是高级的SLAM功能需要用图像传感器。因此也是必须的。

综合红外和超声波的特征,比较合适的需要将上述3种传感器都集成。

定位传感器方案: 定位始终是移动机器人的大问题,在这里,我们暂时不考虑如何精确的实现定位,我们只开放一个平台,集成合适的传感器后,由最终用户去开发定位算法。对于定位传感器,主要有编码器,电子罗盘,加速度传感器和iGPS。由于考虑到iGPS方案的复杂性以及成本,这里暂时不用,如果以后有需要,可以很容易的集成到系统了。

  1. 编码器:可以获得机器人轮子的移动距离,并推算出其移动距离和角度,但是有累积误差。
  2. 电子罗盘:可以获得绝对的转角,但是缺点是比较容易受到干扰。
  3. 加速度传感器:通过对2轴加速度传感器进行处理后,可以得到机器人的累积转角以及移动距离,有累积误差。



编辑

控制器选型

  1. Arduino控制器
  2. QWerk控制器