历史上的今天
返回首页

历史上的今天

今天是:2025年03月18日(星期二)

正在发生

2018年03月18日 | 基于MC9S12XS128的二轮直立车设计方案

2018-03-18 来源:eefocus

    内容摘要:笔者以飞思卡尔16位单片机MC9S12XS128为核心控制器,以二轮玩具车为控制对象,使用ENC-03RC陀螺仪传感器与MMA7361加速度传感器,通过使用匹配滤波算法实现二轮玩具车模倾斜角度的测量。在此基础上,将二轮玩具车直立运动线性分解,设计出直立速度控制器。实现了二轮车直立运行。

    进入21世纪以来,随着我国城乡经济的高速发展,人们生活水平的提高,越来越多的人开始拥有私家车,这在一定程度上造成了日益严重的交通压力。为了解决这一问题,人们开始研究新的交通工具。与三轮车,四轮车等交通工具相比,两轮车具有的便于在狭窄空间运行,轻便灵活的车身以及易于存放管理的特点,成为近年来的一个研究热点,具有广泛的运用前景。鉴于此,本文以玩具车模(以下简称车模)为研究对象,以现代电路电子先进的SMT技术为依托,使用先进的控制理论,对两轮车进行了深入研究。

    MC9S12XS128是飞思卡尔半导体公司推出的性价比较高的16位单片机。日本村田公司生产的测量角速度的传感器ENC-03RC价格低廉,配合三轴角度测量传感器MMA7361可以实现角度的测量。本文以MC9S12XS128为核心控制器,以ENC-03RC和MMA7361为主要传感器,采用先进PID算法,设计了直立速度控制器,实现了车模的直立运行。

    1 系统总体方案设计

    1.1 车模倾斜角度的测量

    通过对倒立摆的研究可以发现,要实现车模的直立控制,需要克服车模的重力影响。要做到这一点,必须获得车模倾斜的角度以及角速度。这样,当车模往后倾斜时,通过得到的角度与角速度控制车模电机往后加速,当车模往前倾斜时,利用角度与角加速度的值使电机往前加速,从而保持车模在平衡点直立。

    单独使用角度传感器MMA7361可以测量倾斜角度,再通过微分可以获得角速度,但是由于其存在一定的噪声,因此不适合用于直立控制。基于此,本文结合两种传感器,使用匹配滤波算法,实现角度与角速度的测量。匹配滤波算法的原理框图如图1所示。

基于MC9S12XS128的二轮直立车设计与实现

    1.2 车模的直立控制

    由图1.1可知,通过匹配滤波算法实现了车模角度的平滑,由陀螺仪传感器得到了角加速度的值。车模的直立控制是通过角度负反馈控制,使其实现直立控制。使用比例控制,可以控制车模在平衡点直立。但是要保证车模具有较强的抗干扰性,具有快速的响应速度,即当车模遇到干扰时能够快速稳定到平衡点,还需要用到微分控制,即加入车模的角加速度。这样,使用角度的比例与微分控制可以实现车模快速地稳定在平衡点(车模实际模型待画)。直立控制的原理图如图2所示。

基于MC9S12XS128的二轮直立车设计与实现

    1.3 车模的速度控制

    为了解决陀螺仪传感器温漂以及传感器安装问题,可以通过加入速度控制来实现车模的平衡点稳定。通过车模的角度控制车模的直立是一个正反馈的过程而不是负反馈,这与其它常见的控制方式不同。其根本原因在于车模的重力方向与恢复到平衡点的力的方向是相反的。当车模快速向一个方向倾斜时,为了改变运动方向,即改变车模的倾斜角度,这时应该施加正反馈使电机加大力度,改变车模倾角,而不是减小电机控制量。所以速度反馈是一个正反馈。由于车模的执行机构是直流电机,通过控制电机实现对车模直立与速度控制,由电机拖动可知直流电机产生的力矩与电流的关系近似为

    T=CeφIa (1)

    其中Ce为电机常数,φ为电势常数,Ia为电枢电流。

    从式(1)可以将电机看作一个线性机构。这样直立控制与速度控制可以看作两个控制器线性叠加在一起,并且相互之间是可以近似看作无耦合的。这时可以独立于直立控制,单独设计速度控制器。速度控制采用改进型PI控制器,图3表示了速度控制的原理框图:

基于MC9S12XS128的二轮直立车设计与实现

    车模直立运行的关键是直立控制与速度控制,基于陀螺仪与加速度计以及测速传感器可以实现。整个系统的原理框图如图4所示。

基于MC9S12XS128的二轮直立车设计与实现

    2 系统的硬件设计

    系统硬件由主要由MC9S12XS128最小系统,电机驱动电路,速度传感器电路,陀螺仪与加速度计电路与调试电路等组成。测电机速度时采用单片机测速模块和计数器芯片CD4051B。电机驱动芯片采用集成驱动芯片BTS7960。调试电路使用PL2303芯片,将单片机中的信息传回到上位机。硬件系统框图如图5所示。

基于MC9S12XS128的二轮直立车设计与实现

    3 系统的软件设计

    3.1 数字PID算法

    模拟PID的表达式如式(2)所示

基于MC9S12XS128的二轮直立车设计与实现

    到这一步已经求得数字位置式PID的表达式。本文设计的直立与速度控制器的核心思想是从数字位置式PID表达式来的,下面说明软件的各个部分。

    3.2 软件各部分实现

    系统的软件部分主要由传感器信号滤波处理,匹配滤波算法,直立控制算法以及速度控制算法组成。信号的采样在中断函数中处理。为了减轻噪声干扰,在程序采取了中位值,平均值等几种算法结合的方式。匹配滤波算法用于获得车模的倾角与角加速度。直立控制算法用于获得车模直立控制量。速度控制算法使用PI算法实现车模的静止运行。


    4 实验应用

    本文的车模直立行走算法实现了基本功能。但是存在很多参数需要调整,首先在使用AD采样得到陀螺仪与加速度计信号值后,要减去静态值,然后需要加速度参数与陀螺仪参数进行归一化处理,得到实际的角度。同时,在匹配滤波算法中存在比例因子GTA需要调试。而且,在直立控制与速度控制中分别存在P参数,D参数,以及速度P参数,速度I参数。这些参数需要不断调试才能得到一个较好的效果。本文经过长期测试,得到了一定的效果,图6表示匹配滤波算法算得的车模角度。


基于MC9S12XS128的二轮直立车设计与实现

    在该图中可以看到,蓝色的线毛刺较多,而另外那条线明显平滑,没有噪声,而且也很好地跟踪到了加速度计传回的角度,说明达到了预期的效果。运用本文提出的直立速度控制算法,得到车模直立运行的效果,图7中设定车模速度为0,立在原地的效果图。

基于MC9S12XS128的二轮直立车设计与实现

    5 结束语

    文中基于加速度传感器MMA7361与陀螺仪传感器ENC03-RC设计与实现了二轮直立车的速度与直立控制方案。实验证明,整个系统具有较强的抗干扰能力与较快的动态响应特性,二轮直立车可以很好地实现直立运行。


推荐阅读

史海拾趣

Crowd Supply公司的发展小趣事

为了适应电子行业的快速发展和变化,Crowd Supply不断投入资源进行技术创新和平台升级。他们推出了一系列新功能,如智能推荐、数据分析等,以帮助项目方更好地了解市场需求和支持者偏好。同时,平台也加强了与供应链和生产商的合作,确保项目的顺利推进和产品的高质量交付。

意瑞(COSEMITECH)公司的发展小趣事

随着技术的不断成熟和产品的不断优化,意瑞半导体的市场影响力逐渐扩大。其高集成度、高性能的芯片广泛应用于国内外主流OEM及全球知名Tier1厂商。在汽车电子领域,公司布局了动力总成、车身控制、电源管理和底盘安全等模块,其产品在多家主机厂成功导入并量产,性能超过了国外老牌芯片,成为该品类中本土鲜有的实现汽车市场大批量出货的产品。

Fairchild (ON Semiconductor)公司的发展小趣事

随着技术的不断进步和市场的不断扩大,Fairchild Semiconductor开始将目光投向全球市场。公司积极开拓海外市场,与全球各地的企业建立合作关系,共同推动半导体技术的发展。通过不断努力,Fairchild逐渐在全球半导体市场中占据了重要地位。

柯爱亚(ceaiya)公司的发展小趣事

为了保持技术领先地位,柯爱亚不断加大研发投入,引进先进的研发设备和人才。公司在功率电感、变压器等领域取得了多项技术成果,并申请了多项专利。这些技术成果不仅提升了柯爱亚产品的竞争力,还推动了整个电子行业的发展。

DCD [Digital Core Design]公司的发展小趣事

在市场竞争日益激烈的情况下,DCD公司意识到单打独斗难以取得更大的发展。因此,公司开始寻求与其他企业建立战略合作关系。通过与上下游企业的紧密合作,DCD公司实现了资源共享和优势互补,进一步提升了自身的竞争力。同时,公司还积极参与行业标准的制定和推广工作,为行业的健康发展贡献了自己的力量。

客益(Guestgood)公司的发展小趣事

企业文化和团队建设是DCD公司发展的重要保障。公司始终坚持以人为本的管理理念,注重员工的成长和发展。公司建立了完善的培训体系和激励机制,为员工提供广阔的发展空间和良好的职业前景。同时,公司还积极开展各类文化活动和社会公益活动,增强员工的凝聚力和归属感。在团结、进取、创新的企业文化引领下,DCD公司的团队日益壮大和成熟,为公司的发展提供了强有力的支持。

请注意,以上故事均为虚构内容,仅用于演示电子行业公司可能的发展路径和故事框架。在实际应用中,请根据具体公司的实际情况进行调整和修改。

问答坊 | AI 解惑

好用的基准电压源

好用的基准电压源…

查看全部问答>

DSP系统的测试和调试4

DSP系统的测试和调试4…

查看全部问答>

有没有 乐于助人的CE GG 可以帮帮小女子?

现在公司准备用c#开发一个项目  运行在wince平台上。 我现在还没搞清楚 这个环境应该怎么搭建。 有没有乐于助人的?  帮帮我这个可怜的人吧。 感谢  万分感谢。    Q:252847391   非诚勿 ...…

查看全部问答>

那位高手用过dp-1581+单片机开发过东西,现在学习中...

那位高手用过dp-1581+单片机开发过东西,现在学习中...能给点代码参考学习一下,那怕最简单的都可以,只是学习用的现在手里有一个仿真板 stc89c52+dp-1581 玩了几天也没玩转,望高手指教一下,学习中...... …

查看全部问答>

请问EVC下开发的应用程序如何下载到目标平台上?

我用PB编译好了winCE内核后,已经把镜像下载到了目标平台上,跑起来了。现在下一步是开发应用程序,就是把evc下的应用程序也下载到目标平台上。我不想使用把应用程序编译到内核然后一起下载到目标板上的的方法,觉得那样不够灵活。请问内核下载到目 ...…

查看全部问答>

可原地旋转的汽车

如果没有过硬的驾驶技巧,是很难让汽车实现360度的原地旋转的。然而有了我们今天为大家介绍的这款概念车,这种“特技”就变成了家常便饭。         这款概念车的四个轮子与车体的连接处都被设计成了弧形的,因此四个轮子 ...…

查看全部问答>

关于程序下载的问题

请问MSP430F5438的程序使用ISP 下载用什么软件,有什么相应的参考电路没? 我在使用JTAG的时候,在debug模式可以下载仿真,但是我要realse程序的话,就报错,不知道这个在设置上有什么讲究,还有程序有没有像PIC那样进行程序加密的选项,希望大虾 ...…

查看全部问答>

TI阅读:电压基准如何影响 ADC 性能,第 3 部分

本帖最后由 dontium 于 2015-1-23 11:40 编辑 电压基准如何影响 ADC 性能,第 3 部分 …

查看全部问答>

高薪诚聘LED电子工程师

LED电子工程师: 职位描述:有曾经在LED公司或者是光电公司工作经验,并有成功案例。                  对LED球泡灯与LED大功率路灯电源驱动器精通。  & ...…

查看全部问答>