智能小车硬件系统-STM32最小系统
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
智能小车硬件系统设计-STM32最小系统
1.智能小车的车体结构选择
目前常用的移动机器人运行机构的方式有轮式、履带式、腿式以及上述几种方式的结合。轮式和履带式机器人适合于条件较好的路面,而腿式步行机器人则适合于条件较差的路面。为了适应各种路面的情况,可采用轮、腿、履带并用。在各种实用的移动机器人中以轮式机器人,最为常见,它具有悠久的历史,在机械设计上非常成熟。本文中智能小车的设计思想是作为在路面环境较好的场合中工作的机器人使用,所以采用轮式机器人。机器人车体由车架、蓄电池、直流电机、减速器、车轮等组成,它是整个小车的基础部分。
从轮式移动机器人的车轮个数来说,常用的为三轮或四轮,更多轮的机器人则多见于可变构形的移动机器人应用。四轮机构在稳定性方面强于三轮机构。而一般轮式移动机器人转向装置的结构通常有两种方式,第一种方式是使用舵机转向,在此方式下前轮是自由轮,后轮是驱动轮,使用一个电机进行驱动,转向使用舵机控制转向轮前轮实现另外一种方式使用差动控制转向,与舵机转向相同的是,后轮是驱动轮,但左、右轮使用独立的电机驱动,前轮为自由轮,转向通过控制左右驱动轮速度的方式实现。综合考虑到智能小车承载能力、稳定性以及转向精度的要求,系统采用了四轮差动转向式,其中后部两轮为驱动轮,前部两轮为随动万向轮。
2.智能小车控制系统方案
在整个智能小车系统的总体设计之中,控制系统是最重要的,它是整个系统的灵魂。控制系统的先进与否,直接关系到整个机器人系统智能化水平的高低。机器人的各种功能都在控制系统的统一协调前提下实现,控制系统设计的策略也决定了整个机器人系统的功能特点及其可扩展性。本文设计的智能小车控制系统,具备了障碍物检测、自主定位、自主避障、总线通信、无线通信等一系列功能。根据上述所提及的智能小车的功能要求,课题研究的控制系统主要包括电源模块、微控制器模块、障碍检测模块、电机驱动模块、速度检测模块、通讯扩展模块等部分。系统总体框图如图1所示。具体设计过程中,各模块硬件以及软件部分力求相对独立,为日后的更新和后续升级提供便利。
图1控制系统框图
在各个模块中,各模块功能划分如下
电源模块: 负责整个控制系统各部分的电源供给。包括驱动电机所需的12V 电源和主控制器
系统所需的5V和3.3V电源
微控制器模块: 作为控制系统的核心,主要进行各种信息采集、数据处理,协调系统中各功能模块完成预定的任务
障碍物检测模块: 它由超声波传感器和红外光电传感器对机器人运动过程中的障碍物进行检测,然后传送相应信号给主控制器处理
电机驱动模块: 负责机器人左右轮的独立驱动,主要使用主控制器内置的输出单元和电机驱动芯片配合,实现左右轮的差速控制
速度检测模块: 负责测量左右轮的实时转速,主要通过光电编码器和主控制器内部计数器配合检测车轮实时转速
通信扩展模块: 主要分为有线和无线两部分,有线通信模块是CAN总线通讯,主控制器内嵌总线控制器,可通过CAN总线高速接收芯片TJA1050与总线连接无线通信模块由主控制器通过串行USART接口与无线射频模块PTR2000之间进行通讯。
3.电源系统设计
本课题设计的智能小车,能耗主要为控制电路和电机驱动电路两部分。主控制器电源为+3.3V,而电机驱动芯片293D所需电源为+5V,电机驱动所需电源为
+12V,故可选择+12V为系统的主电源,而+5V、+3.3V都可在电路中添加电源转换芯片得到。设计选用10节1.2V4500mAh的铿电池串联作为系统的供电电源,+12V 的电压可以直接由电池组得到。而从+12V转换到+5V,常用的转换芯片为7805,其电源转换电路如图2所示。
T图2 +5V电源电路
而主控制器STM32F103C08工作电压为2.0-3.6V,常用为3.3V。其工作电压是通过上述电源电路得到的+5V经电压转换芯片LM1117进行转换得到的,在
LM1117输入和输出两侧都添加了电容,减少了电源扰动的影响,增加了系统的可靠性。其电源电路图如图3所示。
图3 +3.3V电源电路
4.微控制器模块
4.1微控制器选择
本系统采用意法半导体公司的STM32F103C08芯片作为智能小车的中央控制器,完成传感器信息收集、电机控制、外部通信扩展等任务。是公司于2008年推出的以高性能的ARM Cortex-M3 32位的RISC内核的芯片。工作频率可达72MHz,能实现高端的运算。Thumb-2指令集带来了更高的指令效率和更强的性能,通过紧藕合的嵌套矢量中断控制器,对中断事件的响应比以往更迅速。内置高速存储器(高达512kb的闪存和64kb的SRAM),丰富的增强型端口和连接到两条APB总线的外设,对其外设的配置可带来极好的控制和联接能力。处理器具有3种低功耗模式和灵活的时钟控制机制,可根据系统设计要求对其进行合理的优化。工作电压可以在2.0V-3.6V之间,在3.3V的供电电压下,其典型的消耗电流仅为
1.4uA。
STM32F1.3C08作为STM32增强型系列芯片,具有以下标准功能
64K字节在系统可编程Flash存储器
2个看门狗,分别为独立看门狗和窗口看门狗
37个通用可编程I/O口线
支持19个外部中断事件请求
3个16位通用定时器
1个16位高级定时器
2路SPI总线接口
1路IIC接口,
3路USART通信接口
1路USB通信接口
1路CAN总线通信接口
1个RTC实时时钟
2路12位A/D通道
其封装类型为LQFP48,其引脚图如图4所示
图4 STM32F103C08引脚
4.2主控制器的最小系统电路
基于主控制器的最小系统硬件电路包括电源控制电路、复位电路、晶振电路、,JTAG接口电路等。
1.电源控制电路
STM32处理器的工作电压为2.0V-3.6V,常用3.3V。通过内置的电压调节器为内核、内存和片上外设提供所需的1.8V电源。为了提高转换的精度,ADC 使用一个独立的电源供电,过滤和屏蔽来自印刷电路板上的毛刺干扰。ADC的电源引脚为VDDA,独立的电源地VSSA当主电源VDD掉电后,可通过脚VBAT为实时时钟RTC和备份寄存器提供电源,切换到VBAT供电由复位模块中的掉电复位功能控制。具体电路如图5所示。
2.复位电路
复位是单片机的初始化操作,一般只需要给单片机的CPU_RST引脚加上2个机器周期以上的高电平信号,就可使单片机复位。复位操位在系统中的应用主要是对系统进行重新初始化,一般除了正常开启系统之外,当程序运行出现错误或者因为实际操作过程中的失误导致的系统死锁状态,都可以通过复位重新对系统