2.4执行模块该模块包括了驱动电机和舵机,当接收到MCU的命令后便执行相应的操作,同时信息采集模块又采集到电机和舵机的状态信息,反馈给MCU。从而整个系统构成一个闭环系统,在运行过程中,系统自动调节而达到正确行驶的目的。
用芯片MC33886来驱动电机,通过调节加在电机两端的电压控制电机的转速从而控制小车的速度。利用芯片的全桥控制,对电机进行反接制动。由实验知,使用单片芯片的时候发热严重,以至芯片过热而自动保护。为此我们采取了三项措施来解决芯片发热问题:一、多片并联,减小单片的通过电流;二、在MC33886上部加装散热片;三、在电路板上留有大片覆铜区,通过片子的下部与覆铜区紧贴,进行散热。为了提高散热效果,在片子的上下表面都涂有导热硅脂,使其与散热片和覆铜区紧贴。由实验知,驱动芯片能够稳定运行。
2.5人机交互模块 在该模块中包含了按键输入与LCD液晶显示,其中按键用于调节小车的工作模式,同时也用于调节小车行驶时所需的一些参数;结合LCD液晶显示,从而使整个小车系统更具人性化。
3、系统软件设计
软件设计是整个系统的重要组成部分之一,软件设计是否合理直接影响智能车能否稳定行驶。飞思卡尔MC9S12DGl28B系列单片机可使用C语言和汇编语言来编写源代码,使用C语言编写更为简单和易于移植。在IAR环境下编写源代码,经编译生成十六进制文件后可以通过JTAG下载到程序存储器中,并且可以在线调试和修改,大大提高了开发效率。本系统软件包括主程序、系统初始化子程序、液晶显示屏子程序、按键子程序、定时器中断服务程序等。各子程序可以完成相对独立的功能,而主程序需要完成以下任务:
(1)初始化各功能子模块: