许多触摸机器人或单片机不久的朋友面临品种繁复的单片机常会困惑,究竟它们之间有何不同?制造机器人究竟用哪种单片机操控比较好?当咱们挑选了一种单片机后,有何捷径能敏捷把握并运用这种单片机?本文尝试用一种通俗易懂的办法解读上述问题,并规划了一种有深度的单片机操控机器人的实例,期望能起到抛砖引玉的作用。我与咱们共享我运用单片机的一些阅历,期望能让初学者少些苍茫,让现已入门的朋友思想开阔。
写本文时我仅有3年单片机实践阅历,比较了解51系列和AVR系列单片机,因而侧重评论了AVR单片机,我阅历有限,有过错在所难免,期望朋友们批评指正!
一 单片机和CPU、个人电脑的差异和联络
这部分内容比较初级,但许多朋友刚触摸单片机时或许对下面的问题不是很清楚。
1 什么是CPU?
CPU中文名称为“中央处理器”,典型代表为英特尔8086处理器,现在的飞跃X处理器都是8086的直系子孙。处理器,望文生义,其功用是处理数据,关于中央处理器,便是在数据处理中处于中心方位的处理器,听起来好像很杂乱,但实践上中心便是一个ALU“算术逻辑单元”。这个单元由一些数字门电路组成,仅能完结括加、减、乘、除四则运算,与、或、非、异或等逻辑操作,以及移位、比较和传送等操作。CPU内部包含ALU,除此之外CPU还有时钟电路,CPU运转的根本原理是:时钟电路发生计数脉冲,这个脉冲操控着一个累加器,即每发生一个时钟脉冲,累加器加1,这个累加值以16进制数字的方法经过地址总线仅有选通程序贮存器中一个贮存单元(在CPU外部),这个单元将内部贮存的程序指令代码经过数据总线送到ALU中,ALU依据代码不同履行不同操作,比方把某寄存器数值和某数值相加等,然后将核算成果输出到IO口或许各个总线上。
总归,CPU的作业便是把程序中的指令代码翻译成不同使命,然后履行,输出履行成果。CPU在全部数字核算机中都发挥了中心作用,即核算机都有CPU。
2 什么是个人电脑?
由于CPU只需核算功用,其核算的成果需求经过显示器、音箱输出,而其作业的依据,即程序指令则依托硬盘贮存,其履行使命时动态存取的数据要保存在内存中,而人可以经过键盘操控程序指令的履行进程,把全部这些CPU的外设组合在一起就叫做“个人电脑”。
3 什么是单片机?
个人电脑功用强壮,核算速度快,是较为抱负的核算机。但当咱们需求用一个小设备操控微波炉定时开关时,个人电脑就显得粗笨和贵重。因而人们规划出一种浓缩型电脑,大的有几平方厘米,小的比米粒还小,它们叫做“单片机”——单片微型核算机。CPU是一个芯片,单片机也是一个芯片,看起来外观差不多,它们有什么不同呢?答案是:单片机内除了集成有CPU外,还集成了程序贮存器ROM(可理解为硬盘)、数据贮存器RAM(可理解为内存),输入输出接口(可理解为显示器、键盘插座),有的单片机内还集成了电机驱动电路、视频解码电路、AD转化器、无线传输电路等,使得单片机功用变得十分强壮。单片机的专长在于可以用单个芯片和简略外部电路去完结杂乱的操控操作,因而十分适宜机器人操控。其真实绝大多数机器人中都有单片机的影子。简略的和中等杂乱的机器人可以用单片机直接操控,高度杂乱的机器人用“个人电脑”或许“超级核算机”指挥许多单片机来完结机器人操控。
4 学习单片机的捷径是什么?
所谓捷径便是少走弯路。我刚开始学单片机时走了不少弯路,许多朋友和我都有类似的阅历,刚开始触摸单片机,面临琳琅满意图图书教材,不知挑选哪本;想实践时不知到哪买单片机;不知怎么编程下载程序……
A 关于初学者细心看本文便是学习单片机的捷径之一。
B 到图书馆或许书店在数十本单片机书中选一本你能看懂,而且觉得事例风趣的“真实、生动、生动”的单片机书做为你的入门读物。
C 主张先从51单片机学起。把握51后再学AVR,然后学ARM、DSP等。
D 在学习进程中实践十分必要。你需求一台电脑。假如是台式电脑,你可以花十几元购买25针并口下载线,假如是笔记本电脑,你只能购买几十元到几百元的USB ISP编程器。
E 用万用板自己焊一个单片机最小体系,或许购买开发板。没有必要运用贵重的仿真器。
F 你需求上网下载单片机编程软件,比方51用Keil编程,AVR用CVAVR编程,在编程软件中编好程序,然后生成HEX文件,再上网下载并口烧程序软件或许USB ISP烧程序软件,用烧程序软件加载HEX文件,然后将编程线查到你的单片机电路板上,即可把程序烧到单片机中。
G 拔下编程线,然后接通单片机板电源,你可以看到单片机体系在运转。
H 假如体系不能正常运转,首要查看电路是否接错,然后查看程序是否烧错,假如以上都没缺点,研讨程序是否编错。有时体系不能正常运转并不意味着有什么当地错了,仅仅某些参数没设置好,你需求不断运转、修正程序、调试参数、再运转如此往复,直到你对体系运转满意中止。有时这是一个十分艰苦的重复劳动,调整数百次上千次,你无法躲避,只能坚定信念,一往无前。
I 到淘宝网上买东西更便利、更廉价。
二 在单片机诞生前人们用什么操控机器人
1 模仿核算机
在数字核算机诞生前,人们用电子管、电容器和电感线圈、电阻建立模仿核算机,可以完结许多简略的核算和操控使命。所谓模仿核算机便是其核算选用的信号不是 1、0数字信号,而是电压接连改换的模仿信号,类似于主动操控原理中的各种操控器选用的运算。别小看了模仿核算机,上世纪80年代中东战争时,阿拉伯国家运用的苏制全主动自行防空炮内选用模仿核算机完结核算飞机轨道并操控火炮射击方针。
2 齿轮和凸轮组成的操控器
在模仿核算机诞生前,也便是蒸汽机年代,有些机械天才硬是用数百个齿轮和凸轮建立出机械核算机,人们经过滚动印有数字的各种齿轮,另一些齿轮就将运算成果显示出来。机械核算机在人类史上上曾经是高科技产品,第二次世界大战时,德国闻名的密码机便是一种机电混合式核算机,它其时是最保密的通讯东西。
3 发条和秒表和继电器组成的操控器
在电气年代开始时,人们用挂钟内机械的旋转分时操控一些继电器的通断,然后操控一些机床和出产线的运转。这种设备类似于前期洗衣机内的定时器。
三 入门首选 AT89S51系列单片机
1 简介
1980,英特尔公司开宣布一种简易的8031CPU,在其时该CPU功用不比8086差许多,但价格较廉价,因而被许多低端运用选中。由于商场看好,ATMEL公司购买了8031的内核,把Flash存储器和加强型IO口融入进去开宣布了AT89系列单片机。全部兼容8031指令和内核类似的单片机统称为51单片机,它是现在运用最广泛的8位单片机之一。因51单片机结构简略,指令易学,运用广泛,因而是初学单片机首选机型。假如有人想不学51,直接学AVR,那么此人必定会遇到许多难题,困惑和抑郁将伴跟着学习进程。假如学了51再学AVR和其他单片机,人们会发现“所谓单片机都不过如此”。
2 功用
依据使命详细需求挑选最适宜的单片机,使单片机资源充分利用,使体系性价比到达最高,一起统筹未来扩展需求,不一味寻求高功用单片机,这便是选单片机的准则。
AT89S51有4K的Flash程序存储器,128字节的RAM,32条IO口,中止体系具有6个中止源、5个终端矢量、2个中止优先级的中止结构;串行口是一个全双工的串行通讯口;AT89S51的电源电压为4.0-5.5V,AT89LS51的电源电压为2.7-4.0V;振荡器频率 0-33MHz(AT89S51),0-16MHz(AT89LS51); 有ISP 在线编程功用,这个功用的优势在于改写单片机存储器内的程序不需求把芯片从作业环境中剥离。是一个强壮易用的功用。
AT89S52程序贮存器容量为8KB,还有AT89S55,ROM容量更大。
有许多公司出产了许多扩展型51系列单片机,有的带有AD转化器,有的带有比较器,有的带有PWM,读者可以依据本身需求挑选适宜的51单片机,但要留意他们的管脚界说和编程方法。
3 运用办法
AT89S51 适于做单片机学习板、电子时钟、超声波测距仪等不需求收集模仿量和操控大功率外部元件的电路。S51与曩昔的C51的差异在于S51支撑ISP在线编程,即C51需求几百元的编程器编程,而S51仅需一条25针并口线和十分简略的转化电路即可接在台式电脑打印机接口烧程序,下载烧程序小软件即完结可对 S51单片机编程。对51单片机编程一般选用Keil软件,可选用C言语或许汇编言语,编完程后挑选输出HEX文件,然后用烧程序小软件读取HEX文件,再烧写到单片机中。
4 实践阅历
A 刚开始看书时,依照书上的电路图连线然后通电调试,但总不成功,将自己的电路和书上的电路细心对照发现不了问题。原因在于许多书上的电路图都是“简化图”,即省掉了一些电路,而这些被省掉的电路却关乎体系的运转。比方,当单片机书讲到AD转化电路,给出的电路图多省掉了晶振和复位电路,依照AD转化电路图搭出来的体系天然不能运转。
B 51单片机P0口输出信号时需求上拉电阻,我常常忘掉加电阻,导致电路不好使。
C 51单片机31引脚需求接正极,以挑选选用内部程序存储器。假如忘掉给这个引脚以正确的电压,你的单片机或许不能履行程序。
4 运用举例
四 爱好者制造机器人首选 AVR系列单片机
1 简介
AVR单片机是1997年由ATMEL公司研宣布的增强型内置Flash的RISC(Reduced Instruction Set CPU) 精简指令集高速8位单片机。高可靠性、功用强、高速度、低功耗和低价位一直是衡量单片机功用的重要目标,而AVR单片机是典型高功用单片机。
前期单片机,比方51单片机为了进步可靠性(防止数据误读或跑飞)选用较高的分频系数对时钟分频,使得指令周期长,履行速度慢。例如51单片机需求12个晶振周期才干组成1个机器周期,而且许多指令需求2个机器周期才干履行。AVR单片机的推出,彻底打破这种旧规划格局,废除了机器周期,选用精简指令集,取指周期短,又可预取指令,完结流水作业,故可高速履行指令。AVR单片机在12个晶振周期中能履行12条指令,从这个视点看,假如晶振频率相同,AVR的速度是51的12倍到24倍。
AVR有32个通用寄存器,在进行许多杂乱运算时,AVR的32个寄存器可相当于51的32个累加器,克服了51系列单片机只需单一累加器数据处理形成的瓶颈现象,在杂乱运算时速度比51快5倍以上。由此可看出,51与AVR比较是多么慢,AVR是多么快。
AVR 系列单片机多内部集成了多路AD转化器、电压比较器、ISP、I2C、JTAG总线电路、UART串口、大功率IO口、看门狗等有用电路,而且许多AVR 单片机类型有EEPROM、FLASH、SRAM三种存储器,可以完结实时修正程序存储器中的内容,即AVR单片机可以自己修正自己的程序。一起AVR一般能作业在宽电压规划(2.7~6.0V),有的竟然可以在1.8V电压下作业。以上这些功用仅仅AVR许多功用中的一部分,但是现已让51系列单片机望尘莫及了。
如此高功用的单片机价格竟然和51单片机差不多,比方ATmega8价格为8元左右,ATmega16在13元左右,这是AVR有极高性价比的真实写照。
2 功用
AVR宗族人丁兴旺,包含ATinyAVR(微小型)、低功耗类、ATmegaAVR高中低档5类单片机。它们都依据同一中心技能,但在内部集成的电路多少上有不同。不管你要做电子手表仍是视频处理,都有一款适宜的AVR单片机能满意你的需求。
本文只列出ATmega16中档单片机的功用:
16KB的FLASH程序存储器;512B的 EEPROM;1KB的SRAM;32个快速寄存器;32个大功率IO口;20个中止;2个外部中止口;有SPI、SUART、I2C总线接口;2个8位定时器;1个16位定时器;3个PWM通道;有实时时钟RTC;8个10位AD通道;电压比较器;看门狗;内置时钟振荡器;JTAG接口;ISP在线编程;电压规划为2.7V-5.5V;外部时钟晶振0-16MHz;有PID和多种贴片封装。
AVR的IO口能输出20mA和吸收40mA的电流,不只可直接驱动LED,乃至可直接驱动微型直流减速电机。而且AVR的IO口可编程设置成输入、输出、高阻态状况,是真实的3态IO口。和51比较运用 AVR开发产品你会发现史无前例的便利和自在。
AVR单片机可上操作体系,比方UCOS2、Linux等,自主编程完结操作体系功用也很简略。
依据使命详细需求挑选最适宜的单片机,使单片机资源充分利用,使体系性价比到达最高,一起统筹未来扩展需求,不要一味选用高功用单片机,这便是选单片机的准则。
用ARM+操作体系做超声波测距仪——杀鸡用了牛刀。用AVR中档单片机做机器视觉——有些吃不消。假如把它们互换一下,全部就适可而止了。
3 运用办法
学AVR单片机的好书是《AVR单片机嵌入式体系原理与运用实践》,封面见下图。
AVR一般选用CVAVR 编程软件编程,也可用GUN GCC AVR、AVR Studio软件编程。可选用汇编或C言语编程。烧程序前先输出HEX文件,然后用SLISP(双龙ISP)软件加载,再经过ISP编程线或许25针并口衔接线烧入AVR单片机,支撑在线编程。
由于AVR单片机最小体系很简略,便是电源+晶振(可不必)+LED+ISP接口(通电就运转,断电就中止,不必复位电路),因而任何初学者都可以用面包板搭出AVR最小体系,而且编程实践。
4 实践阅历
运用AVR单片机时留意要正确设置熔丝位,SLISP软件就可设置,熔丝位可决定单片机是选用外部晶振仍是选用内部时钟振荡器,假如熔丝位设置为选用外部晶振,而电路中没有接入晶振,则AVR程序不能运转。许多初学者忽视了这一点,他们的AVR体系不能运转却找不到原因。再有便是AVR的IO口在运用前需先编程设置其状况,不然你将发现程序在运转,但IO口没信号。
4 运用举例
五 高档机器人操控器 ARM
1 简介
ARM是一个公司名,他们依据同一内核规划了许多高功用处理器,这些处理器都叫ARM。该技能被许多公司购买后出产出了集成许多功用电路的ARM芯片,使得ARM成为高功用单片机。ARM一般为32位单片机,适于处理许多杂乱数据,许多ARM装上了UCOS2、Windows CE、Linux操作体系,可以一起运转多个程序。ARM广泛运用于手机、MP3、GPS导航仪、吸尘机器人等产品上。
六 音频视频处理首选 DSP
1 简介
DSP数字信号处理(Digital Signal Processing,简称DSP),它是一种共同的微处理器,是以数字信号来处理许多信息的器材。其作业原理是接纳模仿信号,转化为0或1的数字信号,再对数字信号进行修正、删去、强化,并在其他体系芯片中把数字数据解译回模仿数据或实践环境格局。它不只具有可编程性,而且其实时运转速度可达每秒数以千万条杂乱指令程序,远远超越通用微处理器,是数字化电子世界中日益重要的电脑芯片。它的强壮数据处理才干和高运转速度,是最值得称道的两大特征。
在高速小车巡线、语音辨认等范畴DSP被广泛运用。但假如仅用DSP检测几个磕碰开关、操控几个电机显得大材小用。
七 新式操控器 FPGA
1简介
FPGA(Field-Programmable Gate Array),即现场可编程门阵列,它是在PAL、GAL、CPLD等可编程器材的基础上进一步开展的产品。它是作为专用%&&&&&%(ASIC)范畴中的一种半定制电路而呈现的,体系规划师可以依据需求经过可修正的衔接把FPGA内部的逻辑块衔接起来,就好像一个电路试验板被放在了一个芯片里。简略说,假如运用者想开发一个用简略数字逻辑电路就能操控的小车,又嫌搭电路费事,他就可用软件给一个FPGA编程让它完结数字电路功用去操控小车。即FPGA可被用来模仿各种电路。有的FPGA乃至能模仿51单片机的运转。因FPGA经过编程即可修正它模仿的电路结构,因而在体系试验、调试中很便利,许多爱好者尝试用FPGA做机器人操控器。
八 更多可供挑选的单片机
咱们挑选学一款单片机前首要要考虑自己面临的实践使命需求什么功用的单片机,然后在许多功用满意要求的单片机中作出挑选。此刻咱们还要考虑不同单片机的 “运用广泛程度”,比方说:当咱们要做一个电子大赛智能小车,有AVR单片机和PIC单片机可满意使命需求,怎么在两者中作出挑选需求考虑哪种单片机学起来比较简略、学习材料简略获取、可供参考的程序和事例愈加丰厚、哪种单片机更简略取得编程软件和下载器等。笔者感觉要想做智能小车,AVR单片机的材料比较丰厚。
世界上有品种繁复的单片机,它们傍边绝大多数都可用来操控机器人,但存在一个是否适宜的问题。比方PLC是可编程操控器,当然可以用来操控爱好者手中的机器人,但PLC多用于工业操控范畴,设备巨大价格贵重,一起不易取得用PLC操控小型机器人的材料。爱好者挑选学一种单片机前,首要得清晰自己要用单片机干什么,然后再选最适宜的单片机学习。学单片机重在学精一两种单片机,假如有人泛泛地学ARM、PLC、PIC、凌阳、DSP、FPGA等全部有名的单片机,那么他将无法具有真实的深度开发才干。所谓深度开发,以AVR单片机为例,初学者可以用它完结小灯替换闪耀,中级技能人员可以用它操控参加竞赛的机器人,而真实的高档开发人员可以用AVR完结机器视觉、无人机主动驾驶、坦克火控体系……
AVR单片机过期了吗?
有初学者乃至中级开发人员以为因ARM功用一般比AVR功用高,因而ARM将替代AVR,AVR将退出历史舞台,或许MSP430将替代51系列单片机,或许FPGA将替代全部单片机等。这种观点不对,由于不同单片机都有各自的特色和长处,没有哪种单片机是完美的,在不同场合用最适宜的单片机,发挥它们各自的专长,而不存在ARM统一天下,替代全部其他类型单片机的或许性。试想,本来十几元的电子表由于选用ARM操控买到几百元,谁能受得了?因而不要觉得 AVR现已过期,学完51就直接学ARM,或许觉得学51没用,直接学ARM,不然你将受阻。
MSP430系列单片机:比较适于机器人开发,是美国德州仪器推向商场的一种16位、具有精简指令集的、超低功耗的混合信号处理器。具有Flash存储器,中止源较多,而且可以恣意嵌套,运用时灵敏便利。MSP430系列单片机的电源电压选用的是 1.8~3.6V 电压。因而可使其在1MHz的时钟条件下运转时,芯片的电流会在200~400uA左右,时钟关断形式的最低功耗只需0.1uA。MSP430系列单片机的各成员都集成了较丰厚的片内外设。它们分别是看门狗、模仿比较器、定时器、串口0、1、硬件乘法器、液晶驱动器、10位/12位ADC、16位 Sigma-Delta AD、直接寻址模块(DMA)、IO端口、根本定时器(Basic Timer)等的一些外围模块的不同组合。MSP430 系列单片机引进了JTAG技能,不只使开发东西变得简练,而且价格也相对低价,而且还可以完结在线编程。
P%&&&&&%单片机:可用于机器人开发,是8位单片机,产品品种丰厚,选用精简指令集,有不错的开发环境,引脚驱动才干强,可直接衔接继电器操控强电。自带看门狗,有睡觉和低功耗形式。许多功用不如AVR和MSP430系列单片机,但因其有特别长处,也被广泛运用。
凌阳单片机:比较适于机器人开发,以16位核算机为中心,集成不同规划的RAM、ROM和其他丰厚的功用电路,运用者可以依据自己需求挑选集成了特定功用电路的凌阳单片机。凌阳单片机指令体系供给出具有较高运算速度的16位,16位的乘法运算指令和内积运算指令,为其运用添加了DSP功用,因而凌阳适宜进行语音辨认。在我国凌阳单片机在校园比较常见,运用实例较多,可作为机器人爱好者选用的单片机。
九 实例:用AVR单片机发明机器生命
1 什么是机器生命
机器生命便是一个能自主生计的机器,一个主动为生计下去而斗争的机器。关于机器生命来说,生计的意义便是不断电,继续运转。机器生命具有彻底自主决议计划、自主举动、活动于不知道世界、不需人类参加就能继续运转而且自我保护等特征。影片《终结者》中的天网便是超级机器生命。《响雷5号》描绘了一个机器人从无生命到有生命的进程。
N.维纳(Norbert Wiener,1894~1964)写《操控论》时发明出第一个机器生命Wiener龟,这个机器龟仅有2个电子管组成的模仿核算机,但它却能完结真实的乌龟寻食、睡觉、探究、躲避等行为,其体现好像一个有生命的生物相同。机器龟上面有太阳能电池,当本身电池快用完前,机器龟乐于寻觅一个光线足够的当地充电,充满电后或许找个当地睡懒觉,或许探究不知道世界,它有防止磕碰和防止到歪斜当地的趋向,咱们无法预知它的行迹,由于它不是依照程序运转的,就好像咱们自己相同。后来维纳在他的机器龟上又加了一个电子管,三个电子管衔接成简略的神经网络,经过对机器龟练习,维纳经过摇铃可操控机器龟的行为。正如有生物学家练习狗使得狗听到摇铃声后就流口水。
2 咱们可以自己着手做一个机器宠物
咱们今天有先进的单片机,制造一个更好的机器生命其实不难。机器生命远比按固定程序运转的机器人好玩,就好像宠物狗比玩具狗好玩相同。咱们幻想的机器生命可以是一个小型履带式机器人,带有太阳能板,能感触光线强弱,障碍物间隔和磕碰,为了完结人机互动,该机器生命具有语音辨认功用。试想你学习一天,回到睡房,叫一声TONY,你的机器宠物回身飞快跑向你,那种感觉只需宠物的发明者才干领会……
3 怎么完结?怎么规划电路?怎么规划结构?
这个机器生命计划选用ATmega16单片机做操控器,单片机的8路AD通道和其他24个IO接口都被运用。AVR单片机AD转化频率高于音频,可以用来进行简略的语音收集。机器生命的程序较杂乱,而AVR单片机适宜进行快速杂乱运算。本规划的电路板上除了ATmega16单片机外,还有2个LG9110 电机驱动芯片、2个LM386音频功放芯片,和LM393电压比较器芯片,再加上少数电阻电容和三极管,电路简练,适宜初学者和中级爱好者着手制造。
LCD选用通用1602模块,支撑3位操控线4位数据线,假如你选用IO口复用技能,可用6条线操控LCD模块。
此计划触及光电检测、主动充电、语音辨认、超声波测距、键盘(4个磕碰开关)、LCD液晶显示、电机驱动等技能,这些都是着手做简略机器人的根本技能,假如爱好者能把这个机器生命做好,那么你的电路规划、调试阅历和编程才干都会有很大的进步。
这个机器生命的技能含量相当于20世纪70年代世界机器人范畴的先进水平。其时现已有许多十分精细和杂乱的工业机器人被运用,但这种简略的机器人怎么能称作先进呢?由于技能的杂乱和技能的先进不是一个概念,杂乱+精细不必定等于先进。先进的东西不必定杂乱和精细。
A 寻光
咱们可以用光电二极管来检测光线强弱。当然也可以用光敏电阻。将光敏电阻和一个固定电阻串联接在电源正负极之间,光敏电阻接近正极一侧。从光敏电阻和固定电阻衔接点引出导线接到ATmega16的AD转化输进口。当强光照在光敏电阻时,光敏电阻阻值变小,因而其压降变小,而固定电阻分压增多,引出的AD检测电位升高,被单片机转化为数字量后判别光线增强。机器生命有5个光电传感器,其间4个面向机器人前后左右四个方向,另一个指向太阳能板所面临的方向。经过编程可以让机器人自主移动到光线最强的当地。
B 充电
本规划选用4.8V镍氢充电电池为体系供电。太阳能电池板正负极经过一个三极管与电池正负极相连。有一个电压比较器比较电池电压与太阳能板的压差,假如压差高于某值,比较器操控三极管导通,太阳能电池板对充电电池充电。充电电池电压上升,当高于某值时操控三极管关断,完毕充电。为使太阳能板能对电池组充电,要求太阳能板在阳光直射下输出电压高于8V。
C 语音辨认
用AVR单片机的高速AD检测功用能完结简略的语音辨认。声响信号被驻极体%&&&&&%话筒接纳后送至LM386音频功放芯片放大和过滤后送至单片机AD转化口,单片机对音频信号幅值采样转化为一组数字,然后对这组进行取方差运算,得出一个特征值,该特征值可以用于简略的语音辨认。比方你发一个“e”,方差应该比较小,假如你发“p”爆破音,方差应该较大。当然,假如你用更杂乱的数据处理,会得到更好的辨认作用。本规划运用了2路声响信号,意图是让单片机判别出声源的大体方位。
D 超声波测距
用AVR的1个IO口输出40KHz信号送至超声波发射电路,当超声波遇到障碍物回来后,被超声波接纳头接纳,信号经CX20106A解码芯片处理,得到一个低电平脉冲,用该脉冲引发AVR单片机中止,AVR经过查看发波和收到回波之间的时刻差即可算出障碍物间隔。
E 电机驱动
本规划选用2片LG9110电机驱动芯片驱动两台直流减速电机。LG9110输出最大电流为800mA,仅需求2条操控线与单片机IO口直接相连即可操控一台电机正回转或许中止。LG9110仅有8个引脚,运用十分便利。
F 让机器生命更聪明
我的这个机器生命规划计划能完结最酷的作用是:白日,阳光明媚,机器生命跑到阳光底下晒太阳,太阳光会跟着时刻改变,机器生命能主动跑到最适宜的方位享用日光浴。到了晚上,机器生命会找个安静的当地闭目养神,等候明日太阳升起。你可以练习机器生命,让它知道自己的姓名叫什么。比方你叫着它的姓名,一起站在它面前用强光照耀它的太阳能电池板,如此重复练习,会使机器生命听到自己姓名后向声源方向跑去,在间隔声源必定远处中止,由于以往这样做它都能享用强光照耀并充电。这就好像真实的宠物狗,你叫它姓名它就跑到你跟前期望能取得食物。这全部都是彻底可以完结的,要害就在于编程序完结它。
G 幻想无极限,你的机器宠物将无所不能
以上计划中,ATmega16的功用被发挥到极致,以至于没有闲暇的IO口,体系不能再扩展了。假如你用ATmega128单片机做,那么它具有53个 IO口,30多个中止,128Kb的程序存储器,4Kb的RAM,使得你能编写更杂乱的程序、贮存更多的动态数据、衔接更多的外设,你的机器生命将变得十分有生命力。比方参加三轴加速度传感器、地磁传感器、GPS定位、雨水传感器乃至摄像头、无线通讯模块等,从头规划一个巩固和微弱的底盘,你的机器生命就可以在室外自在探究了。
以上芯片外设来历阐明:在淘宝上购买很简略
底盘:340元的高档履带式1:16电动坦克模型
加速度传感器、地磁传感器:美国AD公司的40元ADXL330加速度传感器
GPS定位:几十元的车载外置GPS天线
最终,我想说,机器人是十分好玩的,只需你有幻想力,有意志,尽力研讨实践就能发明奇观。