Category Archives: Robot Design

两轮自平衡机器人 | 研究计划

我一直对自平衡小车十分感兴趣,最早在关注Segway的时候就想玩一玩自平衡算法(当时大约还是2010年)。然而那时一无业余时间,二无设计能力,于是搁浅至今。今年5月份回国的时候,这个想法重新占上心头,于是在淘宝选够了一款评价较好的平衡车,总价不过400大洋。谁知回到英国,自己又懈怠了下来,除了偶尔拿出来当玩具玩两下,也没有仔细深入研究。这样下去自然不行,然而深入研究确实需要不少精力,只能在此痛下决心一定要把里因外果弄清楚。

虽然之前没有正式做过平衡车,然后对于这个系统还是有所了解的,其中存在的研究问题大概如下:

● 硬件设计:电机选型、电机驱动、速度反馈传感器、惯性传感器MEMS、电源、电池、MCU、通信。因为硬件设计实在繁琐,其中原理并不复杂,调试却颇费功夫,所以直接购买硬件成品;

● 系统建模:两轮自平衡的系统模型与一阶倒立摆应该是一样的。系统模型并非必须,但是通过系统模型可以了解系统特性,也可以做一些软件仿真,方便控制器的参数调节。系统的最终模型可以是s域的传递函数模型 (transfer function) 也可以是时域的状态空间模型 (state-space model);

● 传感器数据处理:主要是对惯性传感器的数据进行滤波与分析。滤波的目的是排除系统的动态扰动以及传感器的动态噪声,主要算法应该是互补滤波器 (Complementary Filter) 和卡尔曼滤波器 (Kalman Filter)。互补滤波器的算法实现较简单,而卡尔曼滤波器虽然复杂但可以和状态空间模型结合,设计性能更佳的LQG控制器;

● 控制器设计:常用的为PID控制器和状态空间下的LQR (Linear Quadratic Regulator) 或LQG (Linear-Quadratic-Gaussian) 控制器;

● 任务设计及实时性保证:整个软件有实时性要求,倾向于使用免费的FreeRTOS实时操作系统。操作系统采用静态优先级调度,优先级基于任务周期。系统中的主要任务有:传感器采集任务、传感器滤波与分析任务、控制器任务、电机转速调制任务、通信任务。

整个研究对我来说有三个目的:
1)研究运动传感器数据滤波与处理;
2)研究系统建模与控制器设计;
3)研究FreeRTOS的使用方法以及验证相关的实时性理论。

因为还未阅读相关资料,以上设计计划可能还有遗漏、错误之处,日后发现再做修正。

第三届谢菲尔德大学搜救机器人比赛

这个月月初参加了我们学校的搜救机器人大赛:谢菲尔德自动工程系搜救机器人比赛 (ACSE Robotic Search and Rescue Competition) 。该比赛的目标是设计一个移动机器人,通过远程视频控制的方法让其通过一个模拟的搜救环境,并在最短时间内到达终点。该场地模拟了很多搜救过程中可能出现的障碍:重型物体、斜坡、坑洼路面、吊桥、狭窄的通道等。图为当天的比赛场地:

DSC01711
Figure 1.  比赛当天场地实景

这个比赛的难点在于机器人的结构必须能应对复杂的场地,并且参赛队伍在比赛过程中无法直接看见机器人所在环境,只能通过远程视频的方式对机器人进行无线控制。这次我采用的架构为Arduino兼容的大谷Wild Thumper机器人控制板 + 树莓派:由Wild Thumper控制板进行电机控制与传感器采集,并通过树莓派实现远程控制与视频传输,两个系统之间通过TTL串口进行通信。PC端使用Processing对机器人实现控制,并展示当前的运行参数与传感器数据。

DSC01774
Figure 2. Wild Thumper(左) + 树莓派(右)的配置

DSC01783
Figure 3. 机器人实体(正面)

DSC01785
Figure 4. 机器人实体(侧面)

机器人所用的摄像头为树莓派官方最新发布的摄像头模块RaspiCam,该模块使用OV5647芯片,图像像素为300万,视频支持1080P@30fps。 摄像头模块通过软排线与树莓派的CSi接口相连接,并通过云台增加了倾斜方向的自由度。视频采集与传输使用Raspivid + Netcat + mplayer,为了提高传输速率使用了UDP协议,并且将采集像素下降到600 * 480。摄像头通过热熔胶固定在舵机云台上,图为摄像头的安装位置:

DSC01775Figure 5. 机器人摄像头特写

DSC01700 Figure 6. 无线视频传输调试

无标题2_副本
Figure 7. 比赛现场 之1

无标题1_副本
Figure 8. 比赛现场 之2

机器人硬件配置清单

核心主控 树莓派 Model B
辅助控制 Wild Thumper (Arduino兼容)
底盘 大谷4WD Wild Thumper Chasis
摄像头 RaspiCam + 单轴云台
传感器 3轴加速度/陀螺仪 + 3轴磁场传感器
电源供电 20C/5000mAh 2s锂聚合物电池+ USB备份电源5V 6000mAh

Rovio硬件电路图解

Rovio买回来很长时间了,其实早就已经拆解过,只是还没有整理成系统的说明。最近时间也不是非常多,再最终整理完成之前,先将目前的研究成果公布一下吧。

Rovio共有四块电路板,分别为1)运动控制板、2)电源充电板、3)北极星传感器和4)IP CAM控制板。其中前两块PCB安装在机器腹部,后两块PCB安装在头部。北极星的传感部分是外露的,就是头顶上的圆形接收区域,IP CAM的摄像头在头部的最前端,两者之间的小孔是麦克风。

DSC03813Figure 1.  Rovio的外观

运动控制板的电路原理如下:

DSC03811Figure 2.  运动控制部分电路 

IP CAM的电路结构及与北极星的接口定义如下:

DSC03810Figure 3.  IP CAM电路板与北极星传感器的接口

一些MicroMouse的照片

一年之前我用AVR单片机设计了一台电脑鼠,时至今日这个设计已经略显过时。近日准备重新制作一个,改为32位处理器并使用无刷电机驱动,于是搜集了一些电脑鼠的设计照片,图片来源:

http://www.micromouseonline.com/2012/02/14/apec-2012-mice/#axzz1oKnSyfiT

Read more »

煤矿井下救援机器人设计

江苏省机械创新大赛获奖作品,有以下设计特色:

  • 双电机履带式设计;
  • 前后摇臂可伸展/收缩应对复杂地形;
  • 2.4GHz无线控制 + 无线摄像头图传;
  • 铝制底盘由数控CNC加工;
  • 人体传感器 + 气体传感器。