本系统使用ST公司的STM32F103RET6为主控芯片,使用MPU6050作为姿态传感器,采用L298P驱动电机,并可通过红外遥控器控制小车的运动。
1.MPU6050模块
系统以姿态传感器MPU6050模块(三轴陀螺仪+三轴加速度)来监测车身所处的俯仰状态和状态变化率,通过高速中央处理器驱动电机产生前进或后退的加速度来达到车体前后平衡的效果。通过使用MPU6050内部的DMP库实现姿态识别,可以减轻中央处理器的工作负担,且避免了繁琐的滤波和数据融合。
2.电机控制
系统的电机控制使用的是电机控制专用芯片L298P,L298P内部包含4通道逻辑驱动电路,即内含二个H桥的高电压大电流双全桥式驱动器,接收标准TTL逻辑电平信号,可驱动46V、2A以下的电机。L298P可驱动2个电机,OUTl、OUT2和OUT3、0UT4之间分别接2个电动机。7、9、13、15脚接输入控制电平,控制电机的正反转,ENA、ENB接控制使能端,控制电机的停转。这些特性使得L298P很适合用作小型直流电机控制芯片。
小车运动控制任务可以分解成以下三个基本任务:
(1)控制车模直立:通过控制两个电机正反向运动保持车模直立状态;
(2)控制车模速度:通过控制两个电机转速速度实现车模行进控制;
(3)控制车模转向:通过控制两个电机之间的转动差速实现车模转向控制。
3.红外遥控
小车使用红外接头1838,通过使用遥控器控制小车的运动状态。