电子拉力试验机
一般在弱电领域,对单片机学习和使用的通用路线就是使用开发板进行调试,但是开发板有的大多是一些板载零件,没有相应的执行机构。然而我们电子工程师常常需要一些执行机构进行调试/ 分析/ 验证围绕单片机的设计方案;
小车(vehicle) 作为科研工程中一个常见的机电一体化执行机构模型,其包含了运动学和动力学两个领域的物理和数学知识,所以摸索使用一款新单片机时,可选一个小车做工程实践平台,特点如下:
不夸张地说,一辆可称为智能的小车(vehicle),硬件上大多会将一款MCU 所有的功能和外设都使用了,本项目用一款TI 的低功耗新产品MCU 主控MSPM0G3507 来实现控制一辆小车(注: 不等同于mini 玩具车),在G3507上运用PID控制算法和卡尔曼滤波算法完成小车软硬件设计实践平台,让其不仅可前后运动/转向运动,还可平衡态静止等运动态。此项目对于学习使用当今低碳时代下的电子领域的一款新MCU 应该还是很有实践意义的。
此单片机实践项目主要使用在G3507主控对一个机械平台- 小车(vehicle)来控制,使小车能在前进/ 后退/ 左转/ 右转运动时,仍就保持动态直立平衡状态,所以首先采用CAD 设计图纸,制造组装一个小车机械结构平台,最终设计如下图所示:
硬件电子部分主要基于TI LP-MSPM0G3507开发板设计,如图示,主控芯片是TI(德州仪器)公司的新产品MSPM0G3507.
MSPMOG3507器件提供具有内置错误修正码(ECC)的128KB 嵌入式闪存程序存储器和具有硬件奇偶校验的32KB SRAM。这一些器件还包含一个存储器保护单元、7 通道DMA、数学加速器和各种高性能模拟外设,例如两个12 位4MSPS ADC、一个可配置内部共亭电压基准、一个12 位DAC、三个具有内置基准DAC 的高速比较器、两个具有可编程增益的零漂移运算放大器和一个通用放大器。这一些器件还提供智能数字外设,例如两个16 位高级控制计时器、三个16 位通用计时器、一个32 位高分辨率计时器、两个窗口式看门狗计时器以及一个具有警报和日历模式的RTC。这一些器件可提供数据完整性和加密外设(AES、CRC、TRNG)以及增强型通信接口(四个UART、两个12C、两个SPI 和一个CAN 2.0/FD)。
本项目硬件板卡主要围绕TI LP-MSPM0G3507 开发板进行二次开发扩展板SHEILD-PCBA,完成小车执行机构所需的外围器件的实物如下(已经过二次PCB集成)
以上二次开发的原理图最终Layout生成PCB实物 如图所示(此板卡分成两块PCB由开发者通过PCBEDA设计提供)
此小车项目选择简单的串级PID 算法,所谓串级PID类似于串联,它将PD直立环(balance)、PI速度环(velocity)和PD转向环(turn)结果分别计算最后相加。得到输出左右轮的PWMA 和PWMB 输出。其极性代表转向。三个环量“你追我赶”,“相互制约”才可能正真的保证一个动态稳定的系统,具体计算公式如下:
其中直立环使用比例+ 微分变量(PD)来控制,比例系数计算小车倾角与平衡位置的差(Bias),而微分系数计算小车俯仰角的加速度。小车的直立情况与积分量无关,主要与其位置和加速度有关,具体计算公式如下:
速度环使用优化后的限幅比例+ 积分变量(PI)来控制,比例系数计算小车左右轮速度之和和零之间差值(Encoder_Least),积分系数计算小车速度差累加和(Encoder_Integral)。由于速度控制与小车的加速度几乎无关,所以只是用PI控制,具体公式如下:
平衡小车的具体参数受到车体结构和地面倾斜角度的影响,参数整定是一个极为枯燥耗时的工作。参数整定没有好的方法,只可以通过不断尝试,用“夹逼准则”才可以找到最好的值。换言之,好的参数就是大量时间堆积出来的结果,学习使用PID 对于参数的调节不过分追求。但调出一个能用的参数也许花费点的时间,这里简单叙述一下参数调整的过程。对于串级PID 我们一般先调节直立环,再调节速度环,在调节完这两个环节之后小车就能很好地走直线了,最后调节转向环,用于调节转向。每个环的功能如下图所示:
2.9编码实现:将上述软件流程及算法在MSPM0G3507这款MCU开发环境中编码调试
启动后配置。syscfg文件中各GPIO引脚与自制驱动板一致后编译程序,将PID代码拷贝到工程中。参考前述办法来进行整定参数。不断调试代码,进行如下测量项目,验证是否达标。
本实践项目采用MSPM0G3507 作为80MHz主控芯片对小车进行MCU控制,对MPU6050 实现姿态角解算输出,使用DMOS 芯片进行直流电机驱动调速,还采用霍尔编码器进行脉冲计数实现了小车左右电机速度读取,霍尔编码器的反馈信号可达到速度环的控制。反馈是控制的核心,此项目中MCU微控制器,最大的作用就是获取小车的反馈信息,做出相应的控制。
采用MSPM0G3507低功耗单片机制作小车,做到了相比以往3.3 V供电的ARM Cortex-M3 系列单片机电压降低至1.62 V仍旧能工作,且需要要的频率80MHz 能够完全满足PID 控制运算需要,运算功耗也明显降低。低碳时代背景下,使用如TI 的MSPM0G3507 系列低功耗MCU 研发产品是时代趋势。当下看来MSPM0G3507 比XXX32F103R系列ARM Cortex-M3单片机更具性价比。
Copyright © 2012-2022 竞彩体育比赛现场_竞彩体育彩票直播 版权所有 网站地图