OpenVINOTM,给你看得见的未来!>>
电子产品世界 » 论坛首页 » DIY与开源设计 » 电子DIY » 寻迹小车 FollowMe―― 之八:“圆梦”之旅

共3条 1/1 1 跳转至

寻迹小车 FollowMe―― 之八:“圆梦”之旅

工程师
2011-03-15 14:34:06    评分
寻迹小车 FollowMe―― 之八:“圆梦”之旅
写于: 星期二 01 五月 @ 02:00:37
 
智能机器人开发转眼“寻迹小车FollowMe之七”一文发表已过半年,在这段时间中收到了许多朋友的咨询、建议,在此首先感谢大家的关注、认可!大家的热情给了我继续完善的动力,促使这个项目生存下去,不断成长,成为一个能给广大爱好者、学习者提供切实帮助的平台。


寻迹小车 FollowMe ―― 之八:“圆梦”之旅

作者:Hanker

前面的章节:

  1. 车的主体
  2. 控制部分中的电机驱动器设计
  3. 轨迹采样及逻辑控制部分硬件设计
  4. 开环控制功能
  5. 电机测速及转速控制
  6. 电机驱动部分调试
  7. 单MCU控制的程序设计


转眼“寻迹小车FollowMe之七”一文发表已过半年,在这段时间中收到了许多朋友的咨询、建议,在此首先感谢大家的关注、认可!大家的热情给了我继续完善的动力,促使这个项目生存下去,不断成长,成为一个能给广大爱好者、学习者提供切实帮助的平台。

在收到的所有建议、意见中,主要内容均围绕着如何配齐这些材料?提的最多的要求是:能否提供套件?

我仔细考察后发现,确实如此,目前这样的销售渠道很少,只有少数几个城市有电子器件的销售,多数地方根本没有这方面的商场。即使在器件供应较好的城市,项目的主要服务对象 ―― 大学生,也由于这几年校区外迁,大大增加了采购的难度、成本。而零星通过网上采购有些不上算,邮费可能要远超过材料成本。此外,已简化至极的结构还是成了许多人实施的障碍。

基于此,我着手完善前面的设计,使之能真正为大家所实施,尽量消除所有障碍,在朋友的帮助下,“圆梦”小车DIY套件终于诞生了!

之所以取名“圆梦”,首先是为了有个名字便于交流;其次是我和许多大学生交流的感受,他们中许多人都梦想自己做一辆智能小车,但苦于客观条件的制约,无法圆梦,我希望这个套件能够圆他们的梦,所以称之为“圆梦”! 同时,小车呈圆形,白色底盘、蓝色PCB,寓意蓝天白云,是梦的最好意境。


(点击图片可以看大图)

(点击图片可以看大图)

一、改进目标

这个平台在开始做时,有些目标还不是很清晰,在做的过程中不断有所感悟,特别是辅导了两个大学生应用这个平台参加校内机器人赛后,得到了很大启发。他们用这个平台参与的是“自动入库小车”项目,第七篇所描述的单MCU控制方案就是他们所做。

通过和他们的交流,明晰了这个平台的目标:

  1. 电路及所选器件必须便于初学者自己动手;
  2. 所选器件尽量便宜,以降低参与的心理门槛;
  3. 电路设计要便于初学者理解工作原理;
  4. 要允许易出现的错误,通过设计降低意外损坏的可能;
  5. 要降低意外损坏的维护费用;
  6. 要便于扩充、升级,以适应多层次、多样化的要求,以及自身的发展需求;
  7. 基本开发手段要尽量便宜,不要造成“鞍子比马贵”的现象;
  8. 要有足够的公共资源作为参考。


这个平台所面向的对象是:

 

  1. 相关专业的大学生
  2. 机器人爱好者
  3. 单片机初学者

基于这些,做了下述改进。

二、主要改进简述

第七篇的单MCU控制方案为基础,主要改进有:

A. 将结构件开模,彻底消除制作障碍;
B. 改进码盘设计,利用模具优势将码盘分辨率提高至每转 100 脉冲;
C. 改用直插式器件,降低焊接难度,便于调试时检测电平、波形;
D. 改用双极性的中功率三极管D882、B772代替MOS管,成本为原来的1/5;
E. 增加了一些必要的工作指示,如电机驱动输出,以便于使用者在不具备测试手段时能够大概掌握工作情况;
F. 增加了扩展板设计,将MCU的引脚均引至扩展板,提供了更换MCU的可能;
G. 利用扩展板的空间设计了USB转UART接口,可以直接实现程序下载;
H. 利用扩展板的空间设计了无线接口,便于为小车建立无线通讯链路;

三、改进之处详细描述 3.1 结构件部分

原来使用车床加工的塑料件均改为模具制造,借鉴静态模型的方式,将所有零件连在一起,使用时切开,这样不易丢失。塑料件如下:

(点击图片可以看大图)

其中包含底盘、车轮、滚珠万向轮、小皮带轮、电机固定卡。
滚珠轴承、轮胎、皮带与原来相同,增加了几个钢珠。

(点击图片可以看大图)

3.1.1 底盘部分改进

底盘形状如下:

(点击图片可以看大图)

(点击图片可以看大图)


在底盘设计中,改进了码盘采样器的安装方式,同时提供了一个GP2D12 的安装位置,为即将推出的“打擂台”游戏提供方便。

3.1.2 车轮部分改进

主要是增加了码盘部分,而且是遮断模式,增加了可靠性,提高了分辨率。(此设计还是受网上某个爱好者的启发,他也自己做了一个小车,码盘和这个结构相同,只不过他是用一拉罐手工制作的。因时间间隔稍长,记不起在何处看到的了,在此向他表示感谢!)
由于工艺需要,车轮分成三层,以形成轮胎安装槽和皮带槽,因此可以将滚珠轴承夹于其中,解决了滚珠轴承的固定问题。

车轮部件:


(点击图片可以看大图)


组装后: (安装好的车轮)

(点击图片可以看大图)

3.1.3 球型万向轮

原来由于加工手段限制,只好使用磁钢固定钢珠,由于吸力增加了阻力。此次使用模具制造,可以按照标准的球型万向轮结构设计,既可以为本平台服务,还给大家提供了一种小型的万向轮(16*16*22mm),标准的球型万向轮尺寸太大,常常无法在小车上使用。

(点击图片可以看大图)

3.1.4 电池的选择和固定

为了减轻小车重量,选用四节7号 NiMH充电电池作为电源,电池盒可以安装于底盘下,以降低重心,同时也便于上层扩展。

(点击图片可以看大图)


虽说7号 NiMH电池容量小,但价格比5号便宜,可以多买几节用于替换,反而减少了等待电池充电的时间。且这个平台的目的是为了学习,没有竞赛那种追求性能的需求。

3.2 控制电路部分 3.2.1 驱动电路改进

驱动电路主要修改了驱动三极管,改用双极性管 D772、D882 ,降低了成本,但也减小了驱动电流,目前的电流只有 3A。

(点击图片可以看大图)

在驱动方式上也作了较大改动,基于前面样机试验的结果,发现双极性可逆方式驱动效果不好,电流消耗太大,在不是十分关注性能的情况下,最好采用受限单极性可逆驱动模式(详见《电动机的单片机控制》一书 P139),基于这个前提,将驱动的防护逻辑改为下图所示,这样修改后,主要的好处是:PWM输出控制可以由硬件完成,大大降低了软件开销(读者可对比本篇所附的程序和前面的程序之电机驱动部分),便于应用 RTOS。


一路电机H桥驱动电路

一路电机驱动保护逻辑电路


观察驱动保护电路,可以得出如下控制状态表:


从表中可以看出,Ctrl2、Ctrl3 两个信号组合,可以实现电机的四种控制:正转、反转、惰行、刹车,Ctrl1 用于控制两个上桥臂开关,实现PWM调功控制。此外,利用与逻辑避免了同侧上、下桥臂同时导通的现象。

这样修改后还节省了2个I/O口,可以增加扩充的灵活性。

从电机H桥驱动电路中可以看出,在输出口增加了2路LED指示,可以方便监视电机的工作状态。

3.2.2 PCB设计改进

原来设计采用SMD器件是出于这样的考虑:SMD器件已成为正规产品的唯一选择,所以期望通过使用SMD器件来减少与现实的差距。但通过样机试验发现,这样增加了难度,最大的缺陷是不便于测试,使得学习的作用大打折扣,而我们的初衷是借此学习单片机控制,所以这次改进舍弃了SMD器件,全部使用直插式元件。

(点击图片可以看大图)


改为直插式器件后,原来PCB上的扩展空间没有了。为了保留给使用者足够的个性化尝试空间,增加了一块扩展PCB。

(点击图片可以看大图)


考虑到没有必要留出那么多扩展用焊盘,所以将USB转UART电路设计在扩展板上,使得用户可以不借助任何外部装置实现在线编程。由于所用的USB转UART芯片无DIP封装的,所以设计了一个装换PCB,我们焊好、测试后提供给大家,以化解这个障碍。

(点击图片可以看大图)


在辅导大学生做项目时发现,有一个无线通道调试时将十分方便,如在调试走轨迹功能时,可以利用无线通道实时监控4个轨迹检测传感器的输出,以及程序中一些关键变量的值,大大提高了程序调试的效率。所以在扩展板上还将前面文章描述的无线接口部分加入,便于用户方便的扩充无线通道。

(点击图片可以看大图)

在MCU的扩充连接上也采用了一种较灵活的方式,将MCU的所有引脚均引到扩展板上,这样一方面使得用户在扩展时比较方便,同时提供了一种新的可能:替换MCU!因为所有MCU的引脚均引到扩展板上,如果原来的MCU(STC12LE5412AD)不插,则可以使用扩展板上自己选择的MCU控制。

(点击图片可以看大图)

(点击图片可以看大图)


目前除了51系列MCU应用比较普遍外,AVR系列正在被广泛接受,特别是用于电机控制,因为它有丰富的PWM资源以及较快的速度。所以在扩展板上设计了MEGA64/128的位置,因为它是TQFP封装,需PCB转换后才可以方便的使用。

(点击图片可以看大图)


如果使用别的DIP封装的MCU,在扩展板上还设计了一个DIP40 和DIP28的位置,DIP28是窄封装的,可以方便的使用MEGA8/16系列MCU。

(点击图片可以看大图)


我看过STK500的ISP协议,感觉使用20脚的STC12C5412应该可以实现,所以如果用户有能力可以借用无线模块控制MCU的位置尝试自己做一个STK500,这样AVR的编程也不必借助外部设备了,同时这也是学习MCU通讯功能的极好题材。

 

四、关于DIY套件的意义

很多人觉得应该自己设计,从电路设计开始,自己设计PCB、购买元器件,然后自己制作、调试。能够这样固然好,但是对于许多实践经验几乎为零的学生来说,这样走的效率太低,会走许多弯路,而且有可能由于困难太大而夭折,或是望而却步。

反思一下,我们是如何学会写字的?是不是开始就自己写?还是从描红开始,逐步到临摹,之后才去树立自己的风格。

写字如此,学习单片机也是同样。采用别人设计好的DIY套件制作如同“描红”一样,它将给你一种体验,使你能够掌握基本的“运笔”方法、熟悉“字”的间架结构;在这里则是对器件功能的认识、电路设计基础知识的了解,以及一些基本焊接、调试技能的掌握。借助这个“描红”过程,对所描的对象深入剖析,关注选择器件要考虑什么?设计电路要注意什么?设计PCB又要避免什么?留意什么?结合自己焊接、调试中所遇到的问题,一定会获得许多自己独到的想法。

如果这个过程是用心去体验的,那在此基础上再自己设计将会有的放矢,少走弯路,减少诸多不必要的浪费,关键是对建立自信心有极大的帮助。我接触过许多大学生,他们都对动手能力很不自信,一方面确实是缺少锻炼,另一方面也是舆论有意无意的强化了他们这种感觉。实际上当你成功的做完一件作品后,就知道并没有那么可怕!那么神秘!但是要循序渐进,如同登楼一样,拾级而上。

有人也许会问:那我选择成品如何?如果你是为了学习,我认为不妥,成品如同字帖,如果只看字帖是难以写好字的,除非你临摹。

这个DIY套件最主要的目的是帮助初学者入门,使大家有一个可以相互交流的平台。PC机上的编程之所以比单片机容易学,主要归功于PC机这个标准平台,使得大家可以方便的交流程序,从而逐步掌握其中的奥妙。期望这个平台也能部分扮演这样的角色,使得初学者也可以从先行者那里获得帮助。

等到入门了,再去发扬自己的创新精神,如同书法家那样自创门派。

当然,我们也会结合这个领域的发展,不断推出相应的套件,辅助大家跟上时代的进步。我们将通过市场的调研,不断选择一些代表MCU发展趋势的芯片作为控制核心,同时还会选择一些新兴的传感器作为小车的眼、耳,一方面使小车更加智能,但主要是希望籍此帮助大家了解、掌握新的传感器技术,如数字接口的光电/色彩检测器、两轴/三轴加速度传感器等,这些本来身价高高在上的传感器正由于技术的进步而平民化,借助小车我们便可以感受到它们的神奇。

期待大家的参与、反馈,让我们共同营造一个良好的学习氛围。这个平台只是提供了一个躯体,而它的大脑还空空如也,望大家能够使之丰富,通过交流让所有想学习单片机的朋友各有所获。

原计划本系列文章写八篇,至此总算了此心愿,希望它能“抛砖引玉”,引出更多此类内容满足大家。谢谢!

下载:
  • 所有的设计资料(RAR压缩),内含:
    1. 机器人小车扩展板器件布置图
    2. 机器人小车控制板器件布置图
    3. 机器人小车轨迹采样部分原理图
    4. 机器人小车通讯部分原理图
    5. 机器人小车电机驱动部分原理图
    6. 机器人小车MCU控制部分原理图
  • 程序(RAR压缩)。 所附程序主要是修改了电机驱动部分,没有仔细调试,仅供参考。
参考资料: 1、《电动机的单片机控制》 王晓明编著 北航出版

提醒:

由于文章是分开多节上传到网站上,为了方便大家讨论,请把相关的问题集中在这个帖子上,这样可以方便作者回答大家的问题,谢谢!

 




关键词: 寻迹     小车     FollowMe     之八     圆梦     之旅         

专家
2011-04-02 13:45:40    评分
2楼
资料无法下载,显示: 您所请求的页面不存在!

菜鸟
2011-05-16 22:11:49    评分
3楼
tai  niu  le  

共3条 1/1 1 跳转至

回复

匿名不能发帖!请先 [ 登陆 注册 ]