MMA7260是美国Freescale公司的一款低成本单芯片三轴加速度传感器。该微型电容式加速传感器融合了信号调理、单极低通滤波器和温度补偿技术,并提供了4种加速度测量范围,分别为:士1.59、士29、士49和士69。MMA7260具有高灵敏度,当选择士1.59的侧量范围时,灵敏度达到soomv/g。它具有三轴向检测功能,使便携式设备能够智能地回应位置、方位和移动的变化。
MCU选择TI公司的MSP430F1611单片机。MSP430F1611是一种16 位超低功耗的混合信号处理器,具有 48kB 闪存、10kB RAM、12 位 ADC、双 DAC、2 USART、I2C、HW Mult和DMA 。
MSP430片内的TimerB可以独立的输出两路PWM信号经过一片L298驱动左右电机,最大电流可达4A。直流电机的盘码为100P/R,其减速比为14:1;串联两块7.5V的电池作为电源,经过7805、7809 和LP2987输出所需的5V、9V和 3.3V电压。TimerB的TB1、TB2管脚输出两路PWM信号。TB1管脚连L298的ENA管脚,控制左电机,P5.0和P5.1管脚分别连L298的INPUT1和INPUT2管脚,P5.0高电位正转,P5.1高电位反转;TB2管脚连L298的ENB管脚,控制右电机。其中TB1、TB2管脚输出两路PWM波,用于控制电机的转速。TimerA的两个捕获端口CA0和CA1管脚接两路码盘脉冲从而获得电机转速。A0,A1,A2作为ADC的输入端,A2,A1,A0分别连三维加速度传感器MMA7260的X,Y,Z方向低通滤波后的输出信号。硬件电路图如图2所示。
图2 硬件电路图
4单片机软件设计
MSP430F1611单片机程序设计包括电机控制和通讯两部分。机器人运动参数是通过采集和计算加速度传感器的加速度值、码盘的转速值而获取的。小车的速度可以通过计算码盘返回值获得。程序流程图如图3所示。
共0条 [查看全部] 网友评论