智能平衡移动机器人-平台硬件电路

目录

硬件电路主要模块包括:

主控制器

TMS320F28069数字信号处理器

电池

电机驱动电路

直流电机的驱动

编码器

传感器与外设模块

APP


为了使智能平衡移动机器人达到更好的平衡控制效果,机器人的本体设计更为轻便、集中。机器人的硬件电路也进行集中化设计,整个机器人本体使用一块控制底板Forest S1,使其功能外设都能通过这块控制底板引出,这样大大地提升了整车的集成度和控制的灵巧性。移动机器人控制底板Forest S1的原理图与安装示意图分别如右图所示。

硬件电路主要模块包括:

主控制器电路(包含了仿真电路)负责运行控制程序以及实现控制信号的输出与外部电平信号的采集,电源管理电路将锂电池的电压转换到主芯片、驱动芯片及其他传感器合适的工作电压,电机驱动电路驱动电机运行,传感器电路用于自身姿态和周围环境信息的采集以及其他拓展接口电路。

主控制器

主要包括了仿真电路与主控芯片电路,使得主控制板在脱离其他模块的时候也能够独立进行仿真与程序的运行,所有需要的功能引脚通过Forest S1主控板的引脚引出,主控制板的独立设计使得移动机器人的元器件集成度更高,便于机器人移动时的平衡控制,其主控制板电路结构如右图所示。

TMS320F28069数字信号处理器

通常在实时数字信号处理中,高层处理算法的特点是所处理的数据量相比较低层算法的数据量少,但算法结构复杂,可以使用运算速度快、寻址方式灵活、通信机制强大的DSP芯片来实现。由于智能平衡式机器人本身结构上具有的不稳定性,要求姿态检测与相关控制量的计算能够达到一定的频率来实现更稳定的控制,为了实现更好的控制效率控制器采用德州仪器C2000系列DSP控制芯片TMS320F28069数字信号处理器,作为一种高效率32 位浮点CPU,其独特拥有的eQEP功能即正交解码单元使得读取编码器信号变得简单,使得电机的速度与位置信号能够被准确采集,其余外设功能丰富,具体特性如下所示。

由于系统较为复杂,各模块供电电压也有所区别,需要利用电源模块来实现各部分硬件电路的不同电压供给,因此电源模块中包含多个电压转化电路。供电电池采用移动电源(充电宝)的原理简单,在外部电源供应的场合预先为内置的电池充电,即输入电能,并以化学能形式预先存储起来,当需要即由电池提供能量及产生电能,以电压转换器达至所需电压,电量约为 10000mAh 满电压约为 5.0V,使用 XL2596S 将 12V 转化为 5V,使用 TLV1117LV33 将 5V 转化为 3.3V 用于主控板供电及其他电路的外接设备供电。

电池

选用锂电池作为外部电源,因为锂电池没有记忆效应,充放电的次数较多,能量密度大,安全性较高,充放电性能也更好。锂电池或锂离子聚合物电池不管以重量计算或以体积计算,能量密度都是最高的。此外,锂电池或锂离子聚合物电池在充电及放电过程中的效率也较高。但是锂电池过充或过放很容易使电池永久损坏,所以需要有较精密的电子线路控制其充放电。而且锂电池会在高温下会自燃,安全及稳定性极为重要,需要提供可靠的安全保护电路防止任何导致超温的情况出现。 锂电池有硬的外壳,锂离子聚合物电池则没有,所以锂电池理论上会轻微略重,而锂离子聚合物电池由于没有硬壳,便于制成特定尺寸以配合外观,但锂离子聚合物电池在充满电后体积会略为膨胀变大,需要在设计时预留空间,免得电池内压力过大而造成危险。

电机驱动电路

电池电压由电阻分压,在AD0处采集到的电压为实际电池电压的1/11,将采样值代入式进行计算(本文中ADC采样精度为 12 位)。 Battery_Voltage=Get_Battery×3.3×11/4096 再根据判断标准对测得的电量变量 Battery_Voltage 进行判断,当电量低于阈值时,设置蜂鸣器工作从而实现电量不足的报警。

直流电机的驱动

结合有刷直流电机的原理,小车采用的是TI公司的DRV8833系列的有刷直流电机驱动芯片。DRV8833电机驱动芯片有两个全桥电路可以同时驱动两个直流无刷电机,其一个简单的PWM接口便可以方便地对控制器电路进行接口。 本实验设置DRV8833工作在PWM输入模式,其原理图如下图所示:

编码器

DSP28069有两路eQEP模块,每个模块有2个引脚,分别是:QEPA和QEPB。这两个引脚被使用在正交时钟模式或者直接计数模式。 本实验采用EQEP1和EQEP2模块获取左右轮编码器正交信息。其中EQEP1的QEP1A和QEP1B引脚分别连接到电机编码器1的A相和B相,EQEP2的QEP2A和QEP2B引脚分别连接到电机编码器2的A相和B相。本实验的原理图如下:

传感器与外设模块

为了完成小车的直立控制需要测量小车的倾角和角速度。而InvenSense公司推出的MPU6050就集成了三轴加速度计,可以通过IIC接口同时输出三个方向上的加速度信号,同时MPU6050里面也集成了三轴陀螺仪,可以同时输出三个方向的陀螺仪信号,同时MPU6050内部也置入了一个温度传感器。MPU6050是全球首例9轴运动处理传感器。它集成了3轴MEMS陀螺仪,3轴MEMS加速度计,以及一个可扩展的数字运动处理器DMP(Digital Motion Processor),可用I2C接口连接一个第三方的数字传感器,比如磁力计。

APP

实验是基于平衡控制进阶实验为基础,利用美国 TI 公司 CC2541 芯片的蓝牙模块实现手机与平衡车的通信,进而实现手机控制平衡车的功能。如下图所示。该 CC2541 蓝牙模块主要用于短距离的数据无线传输领域,可以方便的和 PC 机的蓝牙设备相连,也可以两个模块之间的数据互通,避免繁琐的线缆连接,能直接替代串口线。

相关推荐
stm32发烧友15 小时前
基于STM32的智能家居安防系统设计
stm32·嵌入式硬件·智能家居
LightningJie15 小时前
STM32(hal库)中的定时器从模式TIM_SlaveConfigTypeDef结构体中的含义,以及可选参数的含义都是什么意思
stm32·单片机·嵌入式硬件
小齿轮lsl16 小时前
无桥Boost-PFC 双闭环控制MATLAB仿真
单片机·嵌入式硬件·matlab·电力电子·电源硬件·pfc
Matlab程序猿小助手18 小时前
【MATLAB源码-第213期】基于matlab的16QAM调制解调系统软硬判决对比仿真,输出误码率曲线对比图。
开发语言·嵌入式硬件·算法·matlab·机器人
鱼与仙人掌19 小时前
STM32:ADC
stm32·单片机·嵌入式硬件
yangpipi-20 小时前
Linux系统程序设计--2. 文件I/O
linux·stm32·单片机
沐欣工作室_lvyiyi1 天前
汽车牌照识别系统的设计与仿真(论文+源码)
人工智能·单片机·fpga开发·汽车·单片机毕业设计·matlab车牌识别
wenchm1 天前
细说STM32单片机USART中断收发RTC实时时间并改善其鲁棒性的另一种方法
stm32·单片机·实时音视频
雷打不动的晴天1 天前
关于PCB供电保护的问题
嵌入式硬件
盼海1 天前
stm32 ADC实例解析(3)-多通道采集互相干扰的问题
stm32·单片机·嵌入式硬件