全球旧事资料 分类
实现的复杂性。我们最终舍弃了这种方案。方案二:
采用专门的直流电升压芯片(比如MC34063A)以简化电路。不过最终由于经济原因放弃了这种方案。
f方案三:直接用电池串联后的电压给驱动电路供电,此方案简单易行,制作成本较低,不过电机
功率不大。最终经测试小车速度能达到我们的需求,最终采取了本种方案。经分析电源方案的优缺点,我们得出以下方案:考虑到一次性干电池的不可利用性,我
们在整车成型时采用了4节可充电电池经电池盒串联的方案,以降低后续制作成本。考虑到电压输出端的单一性,我们考虑采用10V稳压管另做一路电源输出,为电机提供工作电压,在一定程度上可提高电机功率,提高整车运行速度。
电机驱动模块:
方案一:采用电机驱动集成芯片(如L9110)来驱动电机。优点:电路简化,双路输出,可以实
现双电机的正反向转动,实现整车的前进后退。但由于电机驱动集成芯片的价格比较高(1830元片),为降低制作成本,最终舍弃了采用电机驱动芯片驱动的方案。方案二:
采用分立元件模拟电路驱动。优缺点:制作成本低,电路无法简化,稳定性较驱动芯片(如L9110)差。经考虑避障小车的控制精度不是很高,运用分立元件模拟电路即可达到系统要求,最终采取了本种方案。
经选择我们最终采取了利用双三极管控制开关电路,利用三极管的反应灵敏性,并将其俩端接在MCU的IO口上,可以通过控制IO口输出0、1来控制三极管开关,以达到控制输出电压的目的。最终驱动电路如图3所示:其控制如表所示:
图3电机驱动
f表1P001010
P010100
P021001
P030100
状态前进后退右转左转
主控程序
为了降低程序复杂性,我们分析了软件运行原理,尽量简化程序设计。单片机我们最终选用了10个IO口。其中1个用来计数或测速,3个IO口用来接收红外部分电平转换,检测障碍物,2个IO口用来控制转向灯,另外4个IO口端接电机驱动电路,用程序使其产生0、1脉冲数量比来控制驱动电路开关,最终实现速度差以实现转向避障。
主控程序如下:
程序开发环境KeiluVisio
3语言:C编写者:王太杰时间:20100404

主程序及注释如下:
i
cludereg52hdefi
eui
tu
sig
edi
tdefi
eucharu
sig
edcharsbitxP20sbityP21sbitzP22sbitm1P10sbitm2P11sbit
1P12
定义左侧探测器接收端定义中间探测器接收端定义右侧r
好听全球资料 返回顶部