注册 登录  
 加关注
   显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

启睿教育——张铭炜

启睿机器人科技活动中心——知之者不如好之者,好之者不如乐之者

 
 
 

日志

 
 

如何着手制作一个机器人小车--给初学者【下】  

2010-07-03 17:59:33|  分类: 机器人资讯 |  标签: |举报 |字号 订阅

  下载LOFTER 我的照片书  |
 

[三]控制器部分

  适合机器人的控制芯片有很多:单片机、DSP、甚至我们计算机上所用的CPU,都可以。不过我们这里主要介绍的针对机器人小车的技术,所以把其他的先放一放,让我们把注意力放到物美价廉的单片机上来。

  首先还是理论课,不要抱怨,我的信条是:不懂理论的开发者永远只能是一个拼装师。

  单片机:单片机又称单片微控制器,它不是完成某一个逻辑功能的芯片,而是把一个计算机系统集成到一个芯片上。概括的讲:一块芯片就成了一台计算机。它的体积小、质量轻、价格便宜、为学习、应用和开发提供了便利条件。

  小芯片有大智慧

  单片机是自动控制系统中应用非常广泛的控制芯片,现在就在我们身边的许多的电器中都有单片机的身影。想自己动手制作机器人的话,相应的单片机知识是必不可少的。

  系统的单片机知识我这里不想多说,想要对单片机系统有一个深入的理解,还是要找一本比较好的单片机教材一页一页的看下去,网上的任何“技巧”“快速入门”(包括本文)都只能算是水果、零食之类,闲暇无事时可以拿来开开胃,真正想要吃饱吃好,还是要用大饼卷馒头就着米饭吃才行。

  我这里只提一些基础的入门概念,给真正的入门者起一点抛砖引玉的作用。

  一块我们刚刚从商家手里拿到的单片机芯片,还是一块空白,什么也做不了。如同一个刚出世的孩子,我们开发人员要做的,就是教会单片机处理各种各样的问题,给单片机配备上各种各样的扩展工具,使单片机可以将复杂的问题简单化,数字化。

  单片机开发涉及两方面:硬件、软件。

  单片机不同于其他电器,拿过插销直接插在电源上就可以使用,一块空白的单片机想要使用,还需要一些其他的电路来支持。一般来说,最基本的电路就是单片机最小系统:

  所谓的单片机最小系统就是指可以让单片机工作起来的最基本的电路,在所有的单片机系统中,你都可以找到类似的电路。至于它的原理,我这里就不累述了,找本书看去吧。

  我再介绍一些做机器人需要的扩展电路:

  程序下载电路:单片机最终需要程序来控制,一般都是在PC上编写好程序,通过下载线来下载到单片机中执行。下载需要一个电路来支持,以前的通常做法是连接到PC的串口,不过现在有很多通过USB下载程序的电路。

  以上两个电路就是机器人开发所需要的最基本的单片机电路,其他也许还需要一些电机驱动、A/D转换、开关选择等电路。

  也许你有些迷糊,可以有一点感到棘手了,这些电路对于一个从未接触过单片机的新手来说可能有些头大,没关系,现在市场上有很多成熟的单片机开发系统出售,价格极为低廉,如果不想在底层电路上多花精力的话,到一些电子商务网站上搜索一下“单片机开发板”,一百多就可以买到功能十分齐全,赠送软件+教程还有技术支持服务的适用开发板了(当然,你如果自己动手的话,成本会更低)。

  软件:说白了就是你自己给单片机开发的智能程序,让机器人可以具有最简单的智能。不要看到“智能”这两个字就觉得多么高深,看到前面有电线杆知道要拐,这,就是智能。

  不同的单片机需要不同的开发环境,这个要在购买的时候就弄清楚,很多单片机公司都有自己配套的开发软件,很多都是可以在公司网站上免费下载。一般来说,国外的很多芯片公司在自己的网站上都有非常丰富和适用的资料,抱本英汉词典,将网站上的资料浏览一下,你会发现一切都变得十分简单。

  以前一说起单片机开发就会想起汇编语言,那时候的芯片成本很高,芯片的运算开销和存储开销都要精打细算,高效率的汇编语言是单片机的最佳选择。而现在随着芯片成本的降低,开销问题已经不再是制约单片机程序开发的瓶颈,所以很多类C或Basic语言的开发环境都已经出现。只要有一定的程序开发基础,对单片机的各种引脚足够熟悉,那么相信写出一个简单的智能程序将是很容易的事。

  购买途径:电子市场或是网购。现在单片机的价格已经十分低廉,价格上无需考虑太多,关键是要选择一款合适的,资料较多,容易上手的就可以。就机器人开发来说,要满足以下几个条件:有程序下载线,可以方便的将程序从PC上下载到单片机上;集成了A/D转换;有PWM输出(便于控制电机)。

  终极开发:单片机终究能力有限,想要做一些运算量较大的应用时(例如音频视频的处理),就需要一些更高端的芯片,比如DSP等,或者干脆把你的电脑机箱加上几个轮子,让你的电脑跑起来吧!

[四]执行器部分

  对于机器人小车来说,最基本的执行器部分就是轮子。要有轮子,小车才能被称为小车。这部分可能也是各位爱好者最发愁的部分,传感器和控制器到处都有的卖,而一般适合机器人小车上用的轮子,机械结构,车体等部分却很难寻觅。找人订做成本极高,现在很多朋友都用玩具小车来进行改装。其实现在已经开始有机器人小车底盘出售,不过在电子市场很难见到,多数都要在网上一些教育机器人公司的网店里邮购。

  机器人常用的电机分为三种:普通的直流电机、步进电机、伺服电机。

  直流电机:输出或输入为直流电能的旋转电机,称为直流电机,它是能实现直流电能和机械能互相转换的电机。当它作电动机运行时是直流电动机,将电能转换为机械能;作发电机运行时是直流发电机,将机械能转换为电能。

  步进电机:步进电机是将电脉冲信号转变为角位移或线位移的开环控制元件。在非超载的情况下,电机的转速、停止的位置只取决于脉冲信号的频率和脉冲数,而不受负载变化的影响,即给电机加一个脉冲信号,电机则转过一个步距角。这一线性关系的存在,加上步进电机只有周期性的误差而无累积误差等特点。使得在速度、位置等控制领域用步进电机来控制变的非常的简单。

  伺服电机:伺服电动机又称执行电动机,在自动控制系统中,用作执行元件,把所收到的电信号转换成电动机轴上的角位移或角速度输出。分为直流和交流伺服电动机两大类,其主要特点是,当信号电压为零时无自转现象,转速随着转矩的增加而匀速下降。

  这三种电机一般来说成本是 直流<步进<伺服,控制精度是直流<步进<伺服(当然也有不一般的时候,并不是说伺服电机就一定比步进电机便宜)。

  初学者对单片机控制电机不太熟悉,起步可以先用单片机输出的PWM信号来控制直流电机,更进一步可以试着控制步进电机,以求更高的控制精度。对于小车的运动驱动来说,一般可以选用直流电机或步进电机,而伺服电机一般用在机械臂上,用来得到精确的旋转角度。

  一般单片机要通过驱动电路来控制步进电机、伺服电机。有专门的模块来负责驱动电机,单片机只需要为这样的模块提供一定频率的脉冲和控制信号就可以了。网上相关的资料很多,大家需要的话可以去自己找一下。

  我就不多废话了,记住一句话:只选对的,不选贵的。

  购买途径:电子市场、五金商店、网购、旧家电。

  终极开发:当你可以自如的控制机器臂的时候,你就会发现,一个类人机器人将不再遥远。

  其他的常用驱动装置还有机械臂机械手等,装在小车上去抓取东西。可以自己利用伺服电机开发(初学者最好绕行),也可以选择市面上的成型产品,这些产品一般都有完整的文档,仔细阅读,使用起来都是很方便的。

[后记]

  最后再介绍一点电子电路开发的东西吧,提起电路,可能很多朋友首先想起来的就是墨绿色的印刷电路板,现在很多电子市场都有人可以根据你的电路图为你加工印刷电路板。不过在设计阶段,很多东西都会改来改去,每次都去重新制作电路板效率和成本都是大问题,一般在电路开发中,有一种专门的实验板(也叫面包板),适合在开发阶段使用。

  以上就是我写的一点经验之谈,没有写什么具体的技术,只是将新手可能会感到迷茫的一些问题列出来,就像我在前面说的,这篇小文章只能算是一点小点心,真正想要成为机器人高手,还是需要埋头啃一些专业书籍。学习没有捷径,如果你走了捷径,那只能说明你比别人少看了风景。

  这篇文章的目的只是想让一些对机器人有兴趣而又不知如何着手的朋友知道制作机器人需要些什么东西,需要哪些知识准备,不入大家法眼,只是希望能有更多的朋友加入到机器人开发的行列中,当然了,我们的作品基本上不会有什么科技价值,也不会填补什么技术空白,不会为社会主义建设添什么砖加什么瓦,纯粹只是自娱自乐。不过我想,当更多的人——尤其是学生,以制作机器人作为一种娱乐项目的时候,应该也是一件令人高兴的事吧,呵呵。

 

  评论这张
 
阅读(345)| 评论(0)
推荐 转载

历史上的今天

评论

<#--最新日志,群博日志--> <#--推荐日志--> <#--引用记录--> <#--博主推荐--> <#--随机阅读--> <#--首页推荐--> <#--历史上的今天--> <#--被推荐日志--> <#--上一篇,下一篇--> <#-- 热度 --> <#-- 网易新闻广告 --> <#--右边模块结构--> <#--评论模块结构--> <#--引用模块结构--> <#--博主发起的投票-->
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2017