基于卡尔曼滤波和PID控制的两轮自平衡车

合集下载

卡尔曼滤波在两轮自平衡代步车姿态检测中的应用_张团善

卡尔曼滤波在两轮自平衡代步车姿态检测中的应用_张团善

参数名
dt
Ak
Bk
Hk


x0
P0
参数值
[ ] [ ] [ ] 0.02s
1 -0.02 01
0.02 0
(1 0) 80 0 0 0.01
(100)
() [ ] 0
1 0

0 1
实验结果如图 5 所 示,在 未 经 卡 尔 曼 滤 波 器 前,加 速 度计观测的俯仰角 度 存 在 较 大 的 噪 声干扰,角度输出为± 10°之 间 ;经 卡 尔 曼 滤 波 后 ,角 度 输 出 为 ±5°之 间 ,有 效 滤 除 噪 声干扰信号。


gyrok-1 +

0k
(4)
其中,wk 是过程 噪 声,并 假 定 其 符 合 均 值 为 零 、协 方 差 矩
阵为 R的正态分布。
测量方程为:
[ ] θk = (1 0)gyarnog_lbeias k +vk
(5)
其中,θk 是 k时刻加速度 计 的 俯 仰 角 观 测 值 ;vk 是 观 测 噪
由式(4)、(5)得 到 的 车 体 姿 态 的 状 态 方 程 及 观 测 方
程,在应用卡尔曼滤 波 实 现 姿 态 信 息 融 合 的 过 程 中 ,滤 波
器的状态由以下两个变量描述 :k时刻的状态 估 计 x^k|k;度 量状 态 估 计 值 精 确 程 度 的 误 差 相 关 矩 阵 Pk|k。 其 滤 波 算 法框图如图4所示。
倾 角 测 量 典 型 误 差 小 于 1°,具 有 小 巧 轻 薄 、超 低 功 耗 、可 变
量程、高分辨 率 等 特 点。ADXL345 可 在 倾 斜 敏 感 应 用 中

两轮自平衡车

两轮自平衡车

两轮自平衡送餐车【摘要】:本项目为“两轮自平衡车送餐机器人”系统的研究与实现,从加速度计和陀螺仪传感器得出的角度。

运用卡尔曼滤波优化,补偿陀螺仪的漂移误差和加速度计的动态误差,得到更优的倾角近似值。

根据PID控制调节参数,实现两轮直立行走。

通过电磁传感器对电磁线的检测和GPS模块精确定位,实现了平衡车的自动送餐功能。

【关键字】:加速度计陀螺仪卡尔曼滤波PID控制调节电磁传感器GPS模块【Abstract】:This is a project of "research and Realization of a two wheeled self balancing robot car room" system, from the accelerometer and gyro sensor of angle. Using the Calman filter optimization, the dynamic error of gyroscope drift error and acceleration compensation plan, to get better approximations angle. According to the PID control parameters, achieve two upright. Through the detection and accurate positioning of GPS module electromagnetic sensors on the magnet wire, the balance of the car automatic room function.【Keyword】:saccelerometer gyroscope Calman filtering PID control electromagnetic sensor GPS module第一章引言 (2)第二章基本原理 (3)2.1两轮自平衡送餐车整体框架 (3)2.2送餐车直立控制 (3)2.3速度控制 (4)2.4方向控制 (5)第三章硬件电路设计与实现 (5)3.1主控芯片 (5)3.2电机驱动方案 (5)3.3电磁信号处理电路 (6)3.4红外遥控模块 (6)第四章系统软件控制流程图 (7)第五章卡尔曼滤波 (8)4.1卡尔曼滤波简介 (8)4.2卡尔曼滤波实现的效果 (8)4.3卡尔曼滤波原型 (9)4.4卡尔曼滤波化简 (10)4.5卡尔曼滤波参数调试 (12)5总结 (13)第一章引言两轮自平衡送餐车具有运动灵活、智能控制、操作简单等优点。

基于PID算法和卡尔曼滤波的平衡车控制系统

基于PID算法和卡尔曼滤波的平衡车控制系统

电子技术与软件工程Electronic Technology & Software Engineering电子技术Electronic Technology基于P ID算法和卡尔曼滤波的平衡车控制系统杨俊伟(广东东软学院广东省佛山市528225 )摘要:本文以S T M32F407V G TX单片机作为主控制芯片,提出了基于PID算法和卡尔曼滤波的平衡车控制系统方案,从数学糢型、PII)算法、卡尔曼滤波、硬件电路等方面分析并设计了一套两轮自平衡车控制系统,经实验验证,能快速调整平衡车姿态,具有较好的转 向精度和抗干扰能力,实现了设计目标。

关键词:S T M32单片机;两轮自平衡车;PID算法;卡尔曼滤波1引言自平衡乍控制系统是移动机器人领域的热点问题,能够将人工智能技术和丨1动控制理论有机结合的典型应用。

随着微电子技术的迅猛发展,_动控制与人工智能的融合会得到进一步提升,平衡车也是未來载具的重要方向之一 m。

本文以STM32为主控制芯片,在数学模喂分析基础之上,采用P ID算法和卡尔曼滤波实现了两轮自平衡午.控制系统的设计与实现,由姿态传感器模块收集的倾角、角速度等数据,经过卡尔曼滤波数据融合分析,得到精确的平衡车姿态信息,通过P ID算法实现平衡车的直立控制、速度控制、转向控制、手机蓝牙遥控等,做到了平衡车的速度与稳定性的统一。

2设计原理如阁1所示,平衡车的运动状态与倒立的单摆相似,因此,利 用可简化的笮摆模型进行数学建模,不考虑空气阻力和摩擦力。

设 车体的质量为m,正常行驶时的加速度为a,平衡车与竖直方向之 间的夹角为0,当平衡车离开竖直方向平衡位置的时候,使重心恢 复竖直方向所需拉力为:F=m acos0-mgsin0 (1)当0很小时与sin0近似,车轮加速度a与倾角成正比例关系,假设为k,因此可将公式近似为:F=mk0-mg0 (2)上述公式中,加入平衡车角速度0)的阻尼力影响,可将公式修 改如下:F=mk0+mk,(i)-mg0 (3)因此,嬰将平衡车控制在竖直方向的加速度a的控制公式为:a=mk0+mk|〇)(4)其中,e是倾角,C O是角速度,k和k,是比例系数,实际操作时,需要满&k>g,k,>0,实时测量平衡车的倾角,通过卡尔曼滤波和 PID算法给f,电机控制信号来控制平衡车的车体维持稳定。

基于激光雷达和卡尔曼滤波的双轮自平衡车设计

基于激光雷达和卡尔曼滤波的双轮自平衡车设计

基于激光雷达和卡尔曼滤波的双轮自平衡车设计作者:胡佳辉来源:《科技风》2019年第07期摘要:为在嵌入式平台上实现同时定位与建图(SLAM)以降低硬件成本,并利用双轮自平衡小车的灵活性以实现特定功能,采用了包括激光雷达、firefly-rk3399开发板、MPU6050模块、编码器等硬件设计。

同时,利用卡尔曼滤波算法以及PID双环控制以提高自平衡小车姿态计算的精度和运行稳定性。

关键词:激光雷达;双轮自平衡小车;SLAM;卡尔曼滤波;PID双环控制1 绪论随着智能时代的到来和自动控制技术的发展,双轮自平衡小车逐渐展露出其独特的优势,尤其是在空间较为狭窄、弯道较多等场所,此外其较低的硬件成本也使其被广泛地应用到了安防巡逻等方面。

本文提出了一种基于激光雷达和卡尔曼滤波的双轮自平衡车设计,其特点在于:将SLAM 运用到了自平衡车上,使其能够按照自定义的行走轨迹完成相应的任务。

此外在平衡方面,本文加入了卡尔曼滤波和PID双环控制,提高了自平衡车的稳定性。

2 硬件设计该双轮自平衡小车的硬件设计由四部分组成,如图1所示,分别为主控系统、24V电源、车身以及传感器。

主控系统为一块firefly-rk3399开发板,搭载Linux系统,在此基础上运行ROS机器人操作系统。

传感器包括B0602激光雷达、MPU6050模块以及电机编码器。

3 软件设计3.1卡尔曼滤波卡尔曼滤波是一种通过系统输入输出观测数据,并利用线性系统状态方程,对系统下一步的走向做出有根据的预测的算法。

由于观测数据中包括系统中的噪声和干扰的影响,所以预测过程也可看作是滤波过程,即使系统受到各种干扰的影响,卡尔曼滤波也能对系统状态进行较为准确的预测。

因为MPU6050回传的角度值受震动的影响较大,且回传的角速度信息也存在漂移误差,误差的累计势必降低自平衡车的平衡性能。

本文引入卡尔曼滤波的目的在于:将MPU6050模块回传的角度和角速度信息代入卡尔曼滤波中相融合从而得到更加精准的自平衡车车体倾角使其更加接近于真实值。

双轮智能自平衡车的设计

双轮智能自平衡车的设计

双轮智能自平衡车的设计作者:王兆宇赵明明张宏川黄怡宁来源:《科学与财富》2017年第12期摘要:本文设计了一款人可以搭乘的自平衡车,本文利用飞思卡尔公司的一款基于ARM 内核的芯片MK60FN1M0VLQ15,平衡车的传感器采用的是加速度计MMA7361与陀螺仪ENC03MB组合而成的传感器模块,其能直接输出稳定的合成角度信号,并且利用光码盘做速度检测。

同时增加了一款黑白摄像头,用于环境的拍摄。

本文完成了硬件的搭建,完成了软件设计。

对传感器信号做了平滑处理,同时使用卡尔曼滤波处理后使其所得信号更加接近真实,保证了平衡车的站立。

关键词:自平衡车;加速度计;陀螺仪自平衡车属于倒立摆的一种形式,它是结合动力学和自动控制理论而成的项目,对它的研究,也推动了相关学科的发展。

在本质不稳定系统中,如最优控制、比例积分微分控制、模糊控制、神经网络控制都将得到实践验证。

总的来说,由于自平衡车车的平衡性是一个理论与实践相结合的产物,具有一定的理论意义和应用价值,引起了极大的研究兴趣,并让全世界的科学家聚焦于此。

1 两轮自平衡车的电路硬件设计1.1两轮自平衡车硬件电路总体设计硬件电路主要由电源稳压模块、控制芯片、陀螺仪和加速度传感器模块、摄像头模块,液晶屏模块,电机驱动模块,串口通信模块,测速模块等组成,如图1.1所示。

采用飞思卡尔的32位微控制器MK60FN1M0VLQ15作主控芯片,工作标准频率150MHZ。

微控制器通过ENC03和MMA7361采集的数据进行相应的算法运算,从而得到对电机驱动的较为精确的控制。

电机驱动采用用MOSFET管搭成的内阻很小的H桥电路。

1.2主要硬件选择陀螺仪与加速度计部分:加速度传感器选用飞思卡尔公司的MMA7361芯片,加速度传感器可以测量由地球引力作用或者物体运动所产生的加速度。

MMA7361选用了半导体表面微机械加工和集成电路技术,传感器体积小,重量轻等优点尤为突出。

测速模块:测速模块采用带有相位差的光点码盘,其可以利用FTM模块测出正反转。

基于卡尔曼滤波算法自平衡智能车系统设计

基于卡尔曼滤波算法自平衡智能车系统设计

基于卡尔曼滤波算法自平衡智能车系统设计作者:孙长伟唐斌王志强来源:《科学导报·学术》2019年第37期摘要:基于卡尔曼滤波算法自平衡智能车系统设计,以STM32F103为控制核心,采用卡尔曼滤波算法和PID算法。

该设计提高了平衡车倾角的计算精度和平衡车的稳定性。

通过系统调试和分析,获得了适合平衡车运行的各项系统参数,运行结果表明该平衡车运动平稳,适应性强。

关键词:STM32F103;卡尔曼滤波;PID 控制算法;智能平衡车;控制系统引言两轮自平衡小车是一个综合复杂的系统,集动态决策和规划、环境感知、行为控制和执行等多种功能于一体[1]。

STM32单片机作为控制单元,陀螺仪、加速度计、光电编码器和电流检测等传感器采集相关的数据信息[2],基于卡尔曼滤波算法和PID算法,实现平衡车的自动直立与快速运动[3]。

1 平衡智能车原理平衡智能车的动力输出来自车身底部的两路直流电机与车轮之间运动,根据电机之间不同转速引起车轮之间不同转速控制智能车的直立不同、速度不同、方向不同。

智能车车体的控制任务可分解成三个基本任务:(1)控制车模平衡:电机的正向反向运动控制保持车模的直立平衡状态;(2)控制车模速度:车模的倾角的调节控制车模速度,实质通过控制电机的转速来实现车轮速度的控制。

(3)控制车模方向:通过控制两个电机之间的转速差控制车模转向 [4]。

智能车控制采用的核心算法是PID算法。

平衡小车速度控制系统由负反馈PD 直立控制器和正反馈PI 速度控制器组成[5]。

在直立控制中,只要一产生角度偏差信号,在负反馈的作用下角度偏差最终被消除,小车保持直立状态;在速度控制中,一旦检测到角度偏差信号,即明白小车要产生速度的变化,在正反馈的速度控制器作用下,速度会朝着期望方向上逐渐增加,以达到速度控制的目的。

2 系统总体方案设计系统由五部分组成:中央处理部分,电源管理部分,运动控制部分,数据感知部分,人机交互部分。

基于卡尔曼滤波和双闭环PID控制的平衡车控制系统设计

基于卡尔曼滤波和双闭环PID控制的平衡车控制系统设计
t i o n a c c ur a c y o f d i p a n gl e b e t we e n he t b a l a n c e d v e h i c l e nd a s e n s i t i v e a xi s . An d t h e d o ub l e c l os e d l oo p s P I D c o n ro t l i S a p pl i e d t o i mp r o ve he t op e r a t i o n
平衡 车控 制系 统 。利 用 卡尔 曼滤波 技术 提 高 了平 衡车 相对 于灵 敏轴
进行 线性化 ,可 以得 到系统 的简 化模 型:
} | ( J + m l 2 ) F - m 2 1 2 g O
{ L 强 J ± ( 生 翌 ! 二
s t a b i l i t y o f b a l a n c e d v e h i c l e . T h e s y s t e m p ra a ma t e r s re a o b t a i n e d t h r o u g h s y s t e m d e b u g g i n g a n d a n a l y s i s . T h e s y s t e m o p e r a t i o n r e s u l t s s h o w ha t t he t d e s i ne g d b a l a n c e d v e h i c l e c a n ma i n t a i n s t e a d y mo t i o n wi t h g o o d a d a p t a b i l i y t nd a s t a b i l i t y . Ke y wo r d s :b a l a n c e d v e h i c l e ;c o n t r o l s y s t e m; Ka l ma n i f r e ;d o u b l e c l o s e d l o o p s P I D c o n r t o l

基于卡尔曼滤波和PID算法的自平衡小车调试过程分析

基于卡尔曼滤波和PID算法的自平衡小车调试过程分析

《装备维修技术》2020年第18期—127—基于卡尔曼滤波和PID 算法的自平衡小车调试过程分析周 斌1,2 孔丙亚3 冯高明1(1.河南理工大学电气工程与自动化学院,河南 焦作 454010;2.河南中车重型装备有限公司,河南 三门峡 472300;3.平煤股份十三矿,河南 许昌襄城 461700)引言两轮自平衡小车是一个比较复杂的控制系统,是研究各种控制理论的实验和研究平台,理论意义和现实意义都很重大。

很多自平衡小车都采用的是PID 算法,在进行PID 参数调试时,调试过程比较复杂,需要反复调试。

本文结合基于卡尔曼滤波和PID 算法的自平衡小车调试过程给出了调试的一般步骤和方法。

1 系统硬件上电调试硬件上电测试是进行自平衡小车系统进行整体调试前的准备工作,目的是为了确定系统的各个硬件模块都可以正常的工作。

将测试程序从计算机下载到自平衡小车系统后,给自平衡车车上电,观察自平衡车的运动状态,自平衡小车的运动状态如果符合测试程序的预期输出,说明系统的硬件电路没有问题,可以进入下一步进行系统各个参数的具体调试。

2 系统软件PID 参数调试2.1姿态检测模块调试 姿态模块的调试对象主要是姿态传感器陀螺仪和加速度计,调速的目的是要保证测得的角度和角速度信号的准确性。

调试过程如下:使自平衡车与地面保持一定的倾角(调试时采用了450、900、1350三种倾角),观察陀螺仪与加速度计实际的输出数值,每一种状态多测几组数据,然后根据测得的数值求出测量平均值,将测得的平均值与角度的实际值进行对比,求出两者之间的误差,然后对该误差进行补偿。

2.2角度环参数调试 直立角度环控制输出函数为: AngleControlOut=VehicleAngle*VehicleAngle_P+VehicleAngle_d ot* VehicleAngle_D;//角度*P+角速度*D 角度环控制参数有两个,分别是比例系数VehicleAngle_P 和微分系数VehicleAngle_D。

毕业设计(论文)-两轮自平衡小车的设计

毕业设计(论文)-两轮自平衡小车的设计

本科毕业设计(论文)题目两轮自平衡小车的设计学院电气与自动化工程学院年级专业班级学号学生姓名指导教师职称论文提交日期两轮自平衡小车的设计摘要近年来,两轮自平衡车的研究与应用获得了迅猛发展。

本文提出了一种两轮自平衡小车的设计方案,采用陀螺仪ENC-03以及MEMS加速度传感器MMA7260构成小车姿态检测装置,使用卡尔曼滤波完成陀螺仪数据与加速度计数据的数据融合。

系统选用飞思卡尔16位单片机MC9S12XS128为控制核心,完成了传感器信号的处理,滤波算法的实现及车身控制,人机交互等。

整个系统制作完成后,各个模块能够正常并协调工作,小车可以在无人干预条件下实现自主平衡。

同时在引入适量干扰情况下小车能够自主调整并迅速恢复稳定状态。

小车还可以实现前进,后退,左右转等基本动作。

关键词:两轮自平衡陀螺仪姿态检测卡尔曼滤波数据融合IDesign of Two-Wheel Self-Balance VehicleAbstractIn recent years, the research and application of two-wheel self-balanced vehicle have obtained rapid development. This paper presents a design scheme of two-wheel self-balanced vehicle. Gyroscope ENC-03 and MEMS accelerometer MMA7260 constitute vehicle posture detection device. System adopts Kalman filter to complete the gyroscope data and accelerometer data fusion.,and adopts freescale16-bit microcontroller-MC9S12XS128 as controller core. The center controller realizes the sensor signal processing the sensor signal processing, filtering algorithm and body control, human-machine interaction and so on.Upon completion of the entire system, each module can be normal and to coordinate work. The vehicle can keep balancing in unmanned condition. At the same time, the vehicle can be adjusted independently then quickly restore stability when there is a moderate amount of interference. In addition, the vehicle also can achieve forward, backward, left and right turn and other basic movements.Key Words: Two-Wheel Self-Balance; Gyroscope; Gesture detection; Kalman filter; Data fusionII目录1.绪论 (1)1.1研究背景与意义 (1)1.2两轮自平衡车的关键技术 (2)1.2.1系统设计 (2)1.2.2数学建模 (2)1.2.3姿态检测系统 (2)1.2.4控制算法 (3)1.3本文主要研究目标与内容 (3)1.4论文章节安排 (3)2.系统原理分析 (5)2.1控制系统要求分析 (5)2.2平衡控制原理分析 (5)2.3自平衡小车数学模型 (6)2.3.1两轮自平衡小车受力分析 (6)2.3.2自平衡小车运动微分方程 (9)2.4 PID控制器设计 (10)2.4.1 PID控制器原理 (10)2.4.2 PID控制器设计 (11)2.5姿态检测系统 (12)2.5.1陀螺仪 (12)2.5.2加速度计 (13)2.5.3基于卡尔曼滤波的数据融合 (14)2.6本章小结 (16)3.系统硬件电路设计 (17)3.1 MC9SXS128单片机介绍 (17)3.2单片机最小系统设计 (19)3.3 电源管理模块设计 (21)3.4倾角传感器信号调理电路 (22)III3.4.1加速度计电路设计 (22)3.4.2陀螺仪放大电路设计 (22)3.5电机驱动电路设计 (23)3.5.1驱动芯片介绍 (24)3.5.2 驱动电路设计 (24)3.6速度检测模块设计 (25)3.6.1编码器介绍 (25)3.6.2 编码器电路设计 (26)3.7辅助调试电路 (27)3.8本章小结 (27)4.系统软件设计 (28)4.1软件系统总体结构 (28)4.2单片机初始化软件设计 (28)4.2.1锁相环初始化 (28)4.2.2模数转换模块(ATD)初始化 (29)4.2.3串行通信模块(SCI)初始化设置 (30)4.2.4测速模块初始化 (31)4.2.5 PWM模块初始化 (32)4.3姿态检测系统软件设计 (32)4.3.1陀螺仪与加速度计输出值转换 (32)4.3.2卡尔曼滤波器的软件实现 (34)4.4平衡PID控制软件实现 (36)4.5两轮自平衡车的运动控制 (37)4.6本章小结 (39)5. 系统调试 (40)5.1系统调试工具 (40)5.2系统硬件电路调试 (40)5.3姿态检测系统调试 (41)5.4控制系统PID参数整定 (43)5.5两轮自平衡小车动态调试 (44)IV5.6本章小结 (45)6. 总结与展望 (46)6.1 总结 (46)6.2 展望 (46)参考文献 (47)附录 (48)附录一系统电路原理图 (48)附录二系统核心源代码 (49)致谢 (52)V常熟理工学院毕业设计(论文)1.绪论1.1研究背景与意义近年来,随着电子技术的发展与进步,移动机器人的研究不断深入,成为目前科学研究最活跃的领域之一,移动机器人的应用范围越来越广泛,面临的环境和任务也越来越复杂,这就要求移动机器人必须能够适应一些复杂的环境和任务。

一种采用双pid串级控制的双轮自平衡车的研制

一种采用双pid串级控制的双轮自平衡车的研制

摘 要一种采用双PID串级控制的双轮自平衡车的研制双轮自平衡车因其动力学系统同时具有多变量,非线性,不稳定,强耦合等特性,在研究各种控制方法等方面是较为领先的领域,所以双轮自平衡车的发展引起了人们广泛的关注。

双轮自平衡车可以用倒立摆模型进行分析,因其系统极其不稳定,务必要用强效巧妙的控制方法才能维持其稳定。

系统整体上主要由姿态传感子系统、CPU处理子系统、驱动子系统三部分构建而成,其中获取精确的姿态信息以及将获得数据进行融合和处理的算法决定了自平衡车的优劣。

其原理是自平衡车通过姿态传感器(MPU6050)高频率实时检测运行情况,将所采集的俯仰角和角度及加速度变化率传输给CPU,经由CPU融合处理并输出调整姿态的指令,从而驱动电动机使两个轮的转速发生相应的改变,实现车体平衡以及加速和减速的目的。

本文研制了一种采用双PID串级控制的双轮自平衡车,系统以STM32最小系统为核心板,采用运动处理传感器MPU6050实时检测角速度以及角度,并通过互补滤波的方式进行数据融合,用于减小传感信号温度漂移的影响,同时使自平衡车即使受到很大的外界干扰(如推拉、震动、颠簸等)也能够快速进行调整。

系统通过串级PID(Proportion Integration Differentiation)算法进行车体的控制,通过PD(Proportion Differentiation)控制使得车身能够直立运行,通过安装在直流电机上的测速码盘实时反馈电机转速和方向,并通过PI(Proportion Integration)控制来控制车身的速度。

该双轮自平衡车运用TB6612FNG电机驱动系统,调节PWM输出的占空比来改变电机的转速。

系统通过LM2940以及ASM1117子系统作为电源驱动,准确的转换电压并对STM32和电机供电。

最后对系统进行控制参数的调整和优化,最终实现让双轮自平衡车直立平衡运行的目标。

关键词:双轮平衡车,PID控制,互补滤波,姿态检测ABSTRACTDeveloping of a dual-wheel self-balancing vehicle using double PID cascade controlThe dual-wheeled self-balancing vehicle is a leading field in the research of various control methods because of its dynamic system of multi-variable, nonlinear, unstable and strong coupling, so the development of self-balancing two-wheeled vehicles has attracted widespread attention.The dual-wheel self-balancing vehicle can be analyzed by using inverted pendulum model. The system is extremely unstable, so it is important to use a effective method to maintain its stability. The system is mainly composed of three parts: attitude sensing subsystem, CPU processing subsystem and driving subsystem. The accurate attitude information and the algorithm which gets the data to be fused and processed determine the performance of self-balancing vehicle. The self-balancing vehicle detects operating conditions through the real-time high-frequency sensor (MPU6050), the collected pitch angle and acceleration rate of change is transmitted to the CPU, CPU fusion processing and output adjustment attitude commands, which drive the motor to make two wheels' speed change to achieve the purpose of acceleration, deceleration and balancing the body.In this paper, a dual-wheel self-balancing vehicle using double PID cascade control is developed. Using STM32 as the cord board and motion detection sensor(MPU6050)detects angular velocity and angle in real time. And performing data fusion by complement filter to reduce the influence of the temperature drift of the sensing signal. At the same time, even if the self-balancing vehicle suffers from great external interference (Push and pull, vibration, bump, etc.) can also be quickly adjusted. The system controls the vehicle body through the Proportion Integration Differentiation (PID) algorithm. By the control of PD (Proportion Differentiation), the vehicle body can be erected. The speed and direction of the motor are fed back in real time by the speed encoder installed on the DC motor. And using the control of Proportion Integration(PI) to control the body speed. The TB6612FNG driving system of motor is used in the self-balancing dual-wheel vehicle, and the motor speed is changed by adjusting the PWM output duty cycle. The system is powered by the LM2940 and the ASM1117 subsystem, which can convert voltage accurately, power theSTM32 and the motor. Finally, two-wheeled self-balancing vehicle upright balance operation is achieved by adjusting and optimizing the control parameters.Keywords:a auto-balancing vehicle with two wheels, PID control, Complementary filter, attitude detection目 录摘 要 (I)ABSTRACT (II)第一章 绪论 (1)1.1研究背景及意义 (1)1.2国内外研究现状 (1)1.2.1国外现状 (1)1.2.2国内现状 (5)1.3本文主要内容及章节内容 (6)第二章 平衡车系统原理分析 (7)2.1控制系统任务分析 (7)2.2平衡车数学模型 (8)2.2.1 平衡车的受力分析 (8)2.2.2平衡车的运动微分方程 (11)2.3 串级PID在平衡控制和速度控制中的应用 (12)2.3.1 PID算法简介 (12)2.3.2 PID算法在平衡控制中的应用原理 (14)2.3.3 PID算法在速度控制中的应用原理 (14)2.3.4 串级PID的原理及在系统中的应用 (15)2.4基于互补滤波的数据融合 (16)2.5本章小结 (16)第三章 系统硬件电路设计 (17)3.1 单片机最小系统STM32F103C8T6 (18)3.2系统电源模块 (19)3.3 运动处理传感器模块 (20)3.4电机驱动电路 (21)3.5编码器电路 (23)3.6底板综合设计 (24)3.7系统遥控电路设计 (26)3.7.1 单片机STC89C52 (26)3.7.2 无线收发器模块NRF24L01 (27)3.7.3 液晶显示模块12864 (28)3.8本章总结 (29)第四章 系统软件程序设计 (30)4.1主程序框架与初始化 (30)4.2 数据采集 (32)4.2.1.输入信号采集函数 (32)4.2.2.捕获电机脉冲函数 (32)4.3互补滤波数据融合算法 (33)4.4 串级PID控制 (33)4.4.1直立PD控制 (33)4.4.2速度PI控制 (34)4.5电机PWM输出 (36)4.6程序优化 (37)4.7本章小结 (37)第五章 系统调试 (38)5.1系统开发平台 (38)5.2姿态检测系统调试 (39)5.3控制系统PID参数的整定 (41)5.3.1直立PD控制参数调试 (41)5.3.2速度PI控制参数调试 (41)5.4本章小结 (42)第六章 总结与展望 (43)6.1总结 (43)6.2展望 (43)参考文献 (44)作者简介及攻读硕士期间发表的论文 (46)致 谢 (47)第一章 绪论1.1研究背景及意义近年来,双轮自平衡车的发展势头迅猛主要有以下两个原因,其一是它的实用性很强,可以应用到绝大多数领域,其二是支撑搭建双轮自平衡车的理论体系逐渐完善,技术手段日益先进,如数据获取更简单有效,数据处理更科学精确。

基于卡尔曼滤波的两轮自平衡车姿态检测方法_杨凌霄

基于卡尔曼滤波的两轮自平衡车姿态检测方法_杨凌霄

基金项目:教育厅自然科学研究计划项目(2010B590001)收稿日期:2013-11-22第31卷第6期计算机仿真2014年6月文章编号:1006-9348(2014)06-0406-04基于卡尔曼滤波的两轮自平衡车姿态检测方法杨凌霄,李晓阳(河南理工大学电气工程与自动化学院,河南焦作454003)摘要:针对单一传感器在两轮自平衡车姿态检测中存在噪声干扰和测量误差的问题,给出一种基于卡尔曼滤波实现对陀螺仪和加速度计数据融合的姿态检测方法,该方法以加速度计X 、Z 轴数据反正切运算得到的倾角值作为观测量,通过对陀螺仪时间累积产生的漂移误差进行估计,不断地反馈校正最终得到姿态信息的最优估计。

仿真结果表明,该方法解决了单独使用陀螺仪或加速度计的漂移问题,拥有良好的噪声抑制能力,在多种环境下都能有效提高车体姿态检测的精度。

关键词:姿态检测;卡尔曼滤波;数据融合;陀螺仪;加速度计中图分类号:TP212.9文献标识码:AAttitude Estimation Based on Kalman Filterfor Two -Wheel Self -Balancing VehicleYANG Ling -xiao ,LI Xiao -yang(School of Electrical Engineering and Automation ,Henan Polytechnic University ,Jiaozuo Henan 454003,China )ABSTRACT :For the noise disturbance and measurement errors in attitude estimation of two -wheel self -balancing vehicle used single sensor ,the method of attitude estimation by fusing the data of gyroscope and accelerometer based on Kalman filter was proposed.The angle value obtained by arctangent calculations of accelerometer X ,Z axis data has been set as the observed quantity ,and the optimal estimation of attitude has been achieved by estimating the ac-cumulated drift error of gyroscope and constant feedback correction.The simulation results demonstrate that this method can solve the drift problem when using gyroscope or accelerometer alone ,and a good capability of noise sup-pression can be obtained ,and the detection accuracy of vehicle attitude estimation in various environments can be im-proved effectively.KEYWORDS :Attitude estimation ;Kalman filter ;Data fusion ;Gyroscope ;Accelerometer1引言两轮自平衡车是一种非线性、欠驱动及自然不稳定的系统,要使车体保持自平衡,必须保证车身的重心始终与两车轮在同一轴线上。

基于卡尔曼滤波的两轮自平衡遥控小车设计

基于卡尔曼滤波的两轮自平衡遥控小车设计

第38卷第9期2017年9月白动化仪表PROCESS AUTOMATION INSTRUMENTATIONVol.38 No.9Sep.2017基于卡尔曼滤波的两轮自平衡遥控小车设计路成强,曾洁,李千振(大连交通大学电气信息学院,辽宁大连116028)摘要:针对现有两轮自平衡遥控小车系统稳定性不佳、实现功能单一、车体摆动幅度过大等不足,提出了两轮自平衡遥控小车改进 方案。

采用STM32F103单片机作为主控器,移植实时操作系统p C/O S-II,选择直流电机、传感器以及外围电路,设计了两轮自平衡 遥控小车的硬件控制部分。

利用MPU6050模块实时获取小车的当前运行姿态,经卡尔曼滤波处理位姿信息后发送给主控器,随后利 用线性PID控制算法调节电机转速,结合双闭环控制实现了小车的直立平衡行走。

摇杆电位器结合无线通信模块可远程遥控小车,利用超声波传感器和GSM模块实现避障和远程监测功能,通过TFT彩色液晶屏和蓝牙手机客户端实现人机交互功能。

试验结果表 明,小车系统运行平稳、功能多元、抗干扰能力强,具有很高的准确性和稳定性,实现了自平衡遥控理论的扩展,在机器人领域具有广 阔的应用前景。

关键词:STM32H03;卡尔曼滤波;线性P ID;双闭环控制;无线通信;远程遥控中图分类号:TH - 39; TP249 文献标志码: A DOI:10.16086/j. cnki. issnlOO O -0380.201709011Design of Two - Wheeled Self - Balancing Remote Control CarBased on Kalman FilterLU Chengqiang,ZENG Jie,LI Qianzhen(School of Electrical and Information,Dalian Jiaotong University,Dalian 116028,China)A bstract:For the inadequacies of the existing two -wheeled self -balancing remote control car system, such as the poor stability, the single realization function and the large swing range of car body, an improved scheme of self - balancing remote control car is proposed. Firstly, using STM32F103 microcontroller as the main controller, transplanting the real - time operation system j j l C/OS - II, choosing DC motors, sensors and external circuits, and hardware control part of the two -wheeled self balancing car is designed. Secondly, MPU6050 module is used to obtain the current running posture of the car in real time, and kalman filter is given to deal with the posture information to transmit to the main controller. Then the linear PID controller is employed to adjust the motor speed. And combined with double close - loop controller, the balance of the car walking upright is achieved. Thirdly, the rocker potentiometer combined with wireless communication module can remote control car. Integrating ultrasonic sensors and GSM module, some functions can be realized, for example, obstacle avoiding and remote monitoring. Human - computer interaction function is realized through the TFT color LCD screen and bluetooth mobile phone client. Finally, the experiment results demonstrate that the car runs extremely smoothly and realizes the diversitied function, and the anti -interference ability is strong. It has the features of high accuracy and high stability, and the expansion of self - balancing remote control theory is realized. This possesses wide application prospects in robotics field.K eyw ords:STM32F103;Kalman filter;Linear PID;Double close - loop controller;Wireless communication;Remote control〇引言随着科技的发展和产业结构转型战略的驱动,两 轮小车系统的研究与应用迅猛发展。

两轮自平衡车解读

两轮自平衡车解读

两轮自平衡送餐车【摘要】:本项目为“两轮自平衡车送餐机器人”系统的研究与实现,从加速度计和陀螺仪传感器得出的角度。

运用卡尔曼滤波优化,补偿陀螺仪的漂移误差和加速度计的动态误差,得到更优的倾角近似值。

根据PID控制调节参数,实现两轮直立行走。

通过电磁传感器对电磁线的检测和GPS模块精确定位,实现了平衡车的自动送餐功能。

【关键字】:加速度计陀螺仪卡尔曼滤波PID控制调节电磁传感器GPS模块【Abstract】:This is a project of "research and Realization of a two wheeled self balancing robot car room" system, from the accelerometer and gyro sensor of angle. Using the Calman filter optimization, the dynamic error of gyroscope drift error and acceleration compensation plan, to get better approximations angle. According to the PID control parameters, achieve two upright. Through the detection and accurate positioning of GPS module electromagnetic sensors on the magnet wire, the balance of the car automatic room function.【Keyword】:saccelerometer gyroscope Calman filtering PID control electromagnetic sensor GPS module第一章引言 (2)第二章基本原理 (3)2.1两轮自平衡送餐车整体框架 (3)2.2送餐车直立控制 (3)2.3速度控制 (4)2.4方向控制 (5)第三章硬件电路设计与实现 (5)3.1主控芯片 (5)3.2电机驱动方案 (5)3.3电磁信号处理电路 (6)3.4红外遥控模块 (6)第四章系统软件控制流程图 (7)第五章卡尔曼滤波 (8)4.1卡尔曼滤波简介 (8)4.2卡尔曼滤波实现的效果 (8)4.3卡尔曼滤波原型 (9)4.4卡尔曼滤波化简 (10)4.5卡尔曼滤波参数调试 (12)5总结 (13)第一章引言两轮自平衡送餐车具有运动灵活、智能控制、操作简单等优点。

基于PID控制的两轮平衡小车(附原理图和程序讲解)

基于PID控制的两轮平衡小车(附原理图和程序讲解)

课程设计题目基于PID控制的两轮平衡小车学院XXXXX 专业班级XXXXXX小组成员XXXX 指导教师XXXXX X年 XX 月 XXX小组成员介绍及分工小组成员信息小组成员分工目录机电系统实践与实验设计 (1)一、研究背景与意义 (2)二、平衡原理 (2)2.1 平衡车的机械结构 (2)2.2 自平衡车倾倒原因的受力分析 (3)2.3 平衡的方法 (3)三、两轮平衡小车总体设计 (4)3.1 整体构思 (4)3.2 姿态检测系统 (4)3.3 控制算法 (5)四、matlab建模及仿真 (6)4.1 机械模型建模及仿真(Matlab_simulink) (6)4.2 联合控制器仿真(理想状态PID) (8)五、硬件电路设计 (9)5.1、硬件电路整体框架 (9)5.2、系统运作流程介绍 (10)5.3、硬件电路模块 (10)5.31 电源供电部分 (10)5.32 主控制器部分: (10)5.33 传感器部分; (11)5.34 驱动电路部分 (11)5.35 蓝牙控制模块 (12)5.36 超声波检测模块 (13)5.37 寻迹模块 (13)六、软件控制模块 (14)6.1 系统软件设计结构 (14)6.2 整体初始化过程 (14)6.3 程序设计 (15)6.31 PID-三个参数的调整 (15)6.32 OLED显示信息 (16)6.33 PID-采集信息 (16)6.34 PID-数据计算 (17)6.35 PID-结果输出 (18)6.36 超声波避障 (18)6.37 蓝牙控制 (18)6.38 寻迹实现 (19)七、总结 (19)附录 (21)摘要:两轮自平衡车结合了两轮同轴、独立驱动、悬架结构的自平衡原理,是一种在微处理器控制下始终保持平衡的集智能化与娱乐性于一体的新型代步工具。

整车由底盘、动力装置、控制装置和转向装置组成。

机械结构采用了双轮双马达驱动;控制主要采用的是反馈调节,为了使车体更好的平衡,使用了PID调节方式;硬件上采用陀螺仪GY521 MPU-6050来采集车体的旋转角度以及旋转角加速度,采用加速度传感器来间接测量车体旋转角度,同时,加入超声波检测模块,使小车能够自动完成避障功能;通过在两轮平衡车上加入两个寻迹模块(光电传感器)来识别场地上的黑白线,使得两轮自平衡车能够沿着黑线进行寻迹完成循迹功能。

基于卡尔曼滤波的两轮平衡车姿态信息测量

基于卡尔曼滤波的两轮平衡车姿态信息测量

态预测方程,实现两传感器数据融合。
(2-9)
在卡尔曼滤波器设计中,考虑到平衡车车体由于震动会导
致角速度明显变化,又引入角加速度,使该算法在角速度明显
观测值由加速度计解算叫
变化的动态场合同样适用,提了高姿态角的估算精度,理论上
还可以继续引入加加速度等,但考虑到平衡车实际车体倾角变
考虑到成本因素,市面上平衡车产品多采用价格较低的传感芯
片,测量精度较低,噪声较为严重。
MEMS陀螺仪的输岀误差主要由常值漂移和随机噪声组 成,其中温度对常值漂移的影响较大,即不同温度同一状态下,
P; = FPJ + Q
(2-2)
陀螺仪输出会存在较大差异,可以通过实验拟合出陀螺仪的零
更新公式:
偏和温度的关系曲线,在数据处理时根据拟合曲线先对陀螺仪 的数据进行温度补偿,之后再对陀螺仪的随机噪声进行修正。 与陀螺仪类似,对加速度计数据也可用类似的方法进行温度补 偿和噪声修正,从而提高传感器输出数据的准确度。
对平衡车姿态角的估计。
2基于卡尔曼滤波的姿态角度测量 在陀螺仪和加速度计的数据融合方法中,互补滤波由于算 法简单应用较为广泛,其原理是将陀螺仪、加速度计所解算的 角度分别通过高通滤波器、低通滤波器滤波后做加法融合。但
域的作用。式(2-4)确定状态向量最优估计值。式(2-5)完成最 优估计值噪声分布的更新。
-2 - 科学技术创新2019.04
陀螺仪易受噪声干扰,这会导致解算的姿态角具有较大的
首先,考虑到低成本传感器存在较大噪声,可对MEMS陀螺
累计误差,而通过加速度计解算姿态角可直接进行反三角计 仪和加速度的数据做初步处理,用一阶线性拟合和滑动均值滤
算,无需积分运算,不存在误差累计这一问题。所以,此处将加 波的方法分别做温度补偿和随机噪声消除对传感器数据进

两轮自平衡小车论文

两轮自平衡小车论文

2013年全国大学生电子设计竞赛两轮自平衡小车设计作者:杨魏,黄敏杰,夏俊逸2015.7.17摘要本文采用自制的两轮简易小车作为试验平台,以MEMS传感MPU6050为传感器的姿态感知系统,通过离散卡尔曼滤波器对两种传感器的数据进行滤波融合,选用32位单片机STM32F103RB为控制核心处理器,完成对数据的采集处理和车身控制,采用PID控制算法实现小车两轮自平衡。

用蓝牙控制前后运动。

实验结果验证了该系统的性能满足设计要求。

关键词:两轮自平衡;姿态感知;STM32F103RB;卡尔曼滤波;PID控制。

目录1系统方案 (1)1.1 姿态检测模块的论证与选择 (1)1.2 电机驱动模块的论证与选择 (1)2 系统硬件设计 (1)2.1 STM32F103RB 单片机系统 (2)2.1.1 STM32F103RB 单片机介绍 (2)2.1.2单片机最小系统设计 (3)2.1.3 电源管理模块设计 (4)2.2 姿态检测模块MPU-6050 (5)2.2.1 MPU-6050简介 (5)2.2.3数字运动处理器(DMP) (6)2.3速度检测模块设计 (7)2.3.1编码器介绍 (7)2.3.2 编码器电路设计 (8)2.4 电机驱动模块 (8)2.4.1 L298N简介 (8)2.4.2 L298N特点 (9)3理论分析与计算 (9)3.1 两轮平衡小车数学模型 (9)3.2 PID控制器设计 (10)3.2.1 PID控制器原理 (10)3.2.2 PID控制器设计 (11)3.2.3 PID程序 (12)3.3 基于卡尔曼滤波的数据融合 (13)4 系统软件设计 (15)4.1 系统软件设计框架 (15)4.2 资源模块初始化 (15)4.3 两轮小车姿态信息检测 (16)5测试方案与测试结果 (16)5.1测试方案 (16)5.1.1硬件连接检测 (16)5.1.2小车功能检测 (16)5.2 测试分析与结论 (16)1系统方案本系统主要由姿态检测模块、电机驱动模块、蓝牙模块、红外对管模块、电源模块组成,下面分别论证这几个模块的选择。

基于卡尔曼滤波和PID控制的两轮自平衡车

基于卡尔曼滤波和PID控制的两轮自平衡车

基于卡尔曼滤波和PID控制的两轮自平衡车【摘要】针对两轮自平衡车的稳定和运动过程中的控制问题,我们在信号处理的过程中引入卡尔曼滤波对信号进行处理并且采用传统的pid控制,将控制过程分为三个部分,即站立、直线运动和转向。

由于车体运动分为这三个部分,并且这三个部分必须几乎同时控制,所以采用分时控制每一部分的方法,该方法被成功应用于“飞思卡尔”智能车大赛,并且取得良好效果。

【关键词】倒立摆系统;自平衡车;卡尔曼滤波;pid控制引言倒立摆系统是控制系统的一个重要的分支和典型的应用。

实际上它可以理解成在计算机的控制下,通过对系统各种状态参数的实时分析,使系统在水平方向或垂直方向上的位移和角度(角速度)的偏移量控制在允许的范围以内,从而使系统保持平衡。

自平衡车就是以倒立摆系统为工作原理的成品,两轮自平衡智能小车直立行走是要求仿照两轮自平衡电动车的行进模式,让车模以两个后轮驱动进行直立行走。

近年来,两轮自平衡电动车以其行走灵活、便利、节能等特点得到了很大的发展。

国内外有很多这方面的研究,也有相应的产品。

相对于传统的四轮行走的车模竞赛模式,车模直立行走在硬件设计、控制软件开发以及现场调试等方面提出了更高的要求。

实物图如下:一、系统构成整个模型车分为两个部分组成,即硬件电路和软件两部分。

硬件电路主要由加速度计、陀螺仪、微控制器、编码器、线性ccd、电机驱动电路组成。

由微处理器对陀螺仪、滤波电路和加速度计构成的传感器组进行高速a/d采样后,通过卡尔曼滤波器对传感器数据进行补偿和信息融合,得到准确的姿态角度信号,此角度信号再通过pid控制器运算,输出给电子调速器转换成pwm 信号,进而对电机进行控制。

系统结构框图如下图所示:二、卡尔曼滤波加速度计用于测量物体的线性加速度,加速度计的输出值与倾角呈非线性关系,随着倾角的增加而表现为正弦函数变化。

因此对加速度计的输出进行反正弦函数处理,才能得到其倾角值。

测量数据噪声与带宽的平方根成正比,即噪声会随带宽的增加而增加。

基于卡尔曼滤波和双闭环PID控制的平衡车控制系统设计

基于卡尔曼滤波和双闭环PID控制的平衡车控制系统设计

基于卡尔曼滤波和双闭环PID控制的平衡车控制系统设计李泽宇【摘要】本文设计了基于卡尔曼滤波和双闭环PID控制的平衡车控制系统.在系统硬件上,完成了以STM32为控制核心的控制系统硬件结构设计;在软件设计上,利用卡尔曼滤波技术提高了平衡车相对于灵敏轴的倾角的计算精确度,同时采用双闭环PID控制算法,提高了平衡车运行的稳定性;通过系统调试和分析获得适合平衡车运行的各项系统参数,实际运行结果表明,该平衡车能保持平稳运动,具有较强的适应性和稳定性.【期刊名称】《电子世界》【年(卷),期】2018(000)001【总页数】3页(P100-102)【关键词】平衡车;控制系统;卡尔曼滤波;双闭环PID【作者】李泽宇【作者单位】山东省菏泽一中【正文语种】中文通过分析平衡车系统的动力学模型,并在工作点对进行线性化,可以得到系统的简化模型:0 引言近年来,随着自动控制技术的不断发展与应用,各种类型和用途的自动控制设备已被广泛应用的人们的生成生活中。

双轮平衡车作为一种方便快捷的代步工具,已被广泛应用到个人出行、安保巡逻等多个方面[1-4]。

本文设计了基于卡尔曼滤波和双闭环PID控制的平衡车控制系统。

利用卡尔曼滤波技术提高了平衡车相对于灵敏轴的倾角的计算精确度,采用双闭环PID控制算法提高了平衡车运行的稳定性,并通过系统调试和分析获得适合平衡车运行的各项系统参数,实际运行结果表明,所设计的平衡车运行平稳,具有较强的适应性和稳定性。

1 平衡车系统模型分析1.1 建模分析平衡车控制系统的控制目标是通过给平衡车底座施加一个力F(控制量),使平衡车停留在预定的位置,同时不超过一个预先定义好的垂直偏离角度范围。

平衡车系统如图所示,平衡车下部分质量为M,平衡车上部分质量为m,平衡车上部分长为2l,平衡车的位置为x,摆的角度为θ,作用在平衡车水平方向上的力为F,O1以转轴为质心。

图1为两轮平衡车受力示意图。

图1 两轮平衡车受力示意图1.2 双闭环 PID 控制器设计双轮平衡车系统角度伺服控制的核心是在保证平衡车不倒的条件下,使平衡车角度可控,因此设计了如图2所示两轮平衡车控制系统。

卡尔曼滤波与PID的两轮自平衡小车设计

卡尔曼滤波与PID的两轮自平衡小车设计

卡尔曼滤波与PID的两轮自平衡小车设计
李鑫;郑铖;杨星;巫书红
【期刊名称】《单片机与嵌入式系统应用》
【年(卷),期】2023(23)1
【摘要】对两轮自平衡小车进行分析,建立了对应的动力学模型,为后续的系统实现提供原理和方向。

控制系统采用STM32F103C8T6作为主控芯片,利用MPU6050作为姿态传感器测量小车姿态角,通过卡尔曼滤波进行数据融合,获取姿态角的最优估计。

通过PID控制算法输出合适的PWM波来控制电机的转速,构建双闭环控制来保持小车的平衡性,并且可以使用蓝牙模块连接手机进行遥控。

经实验证明,该方法可以使小车具有良好的平衡性,能够有效控制小车的运行。

【总页数】4页(P84-87)
【作者】李鑫;郑铖;杨星;巫书红
【作者单位】成都理工大学机电工程学院
【正文语种】中文
【中图分类】TP13
【相关文献】
1.基于卡尔曼滤波与PD两轮平衡小车的控制研究
2.基于卡尔曼滤波的两轮自平衡遥控小车设计
3.基于PID控制的两轮自平衡小车设计
4.双闭环PID控制的两轮平衡小车设计与实现
5.基于PID控制的两轮自平衡小车的研究
因版权原因,仅展示原文概要,查看原文内容请购买。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

基于卡尔曼滤波和PID控制的两轮自平衡车
【摘要】针对两轮自平衡车的稳定和运动过程中的控制问题,我们在信号处理的过程中引入卡尔曼滤波对信号进行处理并且采用传统的pid控制,将控制过程分为三个部分,即站立、直线运动和转向。

由于车体运动分为这三个部分,并且这三个部分必须几乎同时控制,所以采用分时控制每一部分的方法,该方法被成功应用于“飞思卡尔”智能车大赛,并且取得良好效果。

【关键词】倒立摆系统;自平衡车;卡尔曼滤波;pid控制
引言
倒立摆系统是控制系统的一个重要的分支和典型的应用。

实际上它可以理解成在计算机的控制下,通过对系统各种状态参数的实时分析,使系统在水平方向或垂直方向上的位移和角度(角速度)的偏移量控制在允许的范围以内,从而使系统保持平衡。

自平衡车就是以倒立摆系统为工作原理的成品,两轮自平衡智能小车直立行走是要求仿照两轮自平衡电动车的行进模式,让车模以两个后轮驱动进行直立行走。

近年来,两轮自平衡电动车以其行走灵活、便利、节能等特点得到了很大的发展。

国内外有很多这方面的研究,也有相应的产品。

相对于传统的四轮行走的车模竞赛模式,车模直立行走在硬件设计、控制软件开发以及现场调试等方面提出了更高的要求。

实物图如下:
一、系统构成
整个模型车分为两个部分组成,即硬件电路和软件两部分。

硬件电路主要由加速度计、陀螺仪、微控制器、编码器、线性ccd、电机驱动电路组成。

由微处理器对陀螺仪、滤波电路和加速度计构成的传感器组进行高速a/d采样后,通过卡尔曼滤波器对传感器数据进行补偿和信息融合,得到准确的姿态角度信号,此角度信号再通过pid控制器运算,输出给电子调速器转换成pwm 信号,进而对电机进行控制。

系统结构框图如下图所示:
二、卡尔曼滤波
加速度计用于测量物体的线性加速度,加速度计的输出值与倾角呈非线性关系,随着倾角的增加而表现为正弦函数变化。

因此对加速度计的输出进行反正弦函数处理,才能得到其倾角值。

测量数据噪声与带宽的平方根成正比,即噪声会随带宽的增加而增加。

式中:为传感器带宽(单位为hz)。

因此在设计卡尔曼滤波器时,首先要确定被测加速度的频率范围,然后再设计滤波器的参数,尽量使滤波器的带宽略高于被测频率,这样不仅有助于滤除高频干扰,而且也有利于降低系统噪声干扰。

但是如果要得到精确的倾角值,带宽就需要设置得比较小,而这时加速度计动态响应慢,不适合跟踪动态角度运动,如果期望快速的响应,又会引入较大的噪声。

再加上其测量范围的限制,使得单独应用加速度计检测小车倾角并不合适,需要与其他传感器共同使用。

陀螺仪的作用是用来测量角速度信号,通过对角速度积分,便能得到角度值。

陀螺仪本身极易受噪声干扰,微机械陀螺不能承受较
大的震动,同时由于温度变化、不稳定力矩等因素,陀螺仪会产生漂移误差,并会随着时间的推移而累加变大,通过积分会使得误差变得很大。

因此,也不能单独使用陀螺仪作为本系统的倾角传感器。

(一)卡尔曼滤波过程
建立系统的状态方程与测量方程。

其中,为车体倾斜的真是角度,为陀螺仪的常值温漂,为包含固定偏差的陀螺仪输出角速度,为陀螺仪测量噪声,为加速度计经处理后得到的角度值,为加速度计的测量噪声。

令系统的采样周期为,得到离散系统的状态方程:
在进行卡尔曼递归运算过程中,需要知道系统过程噪声协方差阵以及测量误差的协方差矩阵,对卡尔曼滤波器进行校正。

与矩阵的形式如下:
式中,和分别是加速度计和陀螺仪测量的协方差,其数值代表卡尔曼滤波器对其传感器数据的信任程度,值越小,表明信任程度越高.在该系统中陀螺仪的值更为接近准确值,因此取的值小于的值。

卡尔曼递归运算的相关算式:
为时刻的最优估计值,为对应的协方差。

为根据时刻的最优估计得到的时刻的预测值。

为卡尔曼增益。

为时刻测量的角度值。

这一次得到的最优估计值,作为下一次预测值得参考,这样周而复始反复循环计算这些算式,可以使收敛到最小,这样就是最优值。

(二)滤波结果
在进行卡尔曼滤波过程中,需要根据实际情况调试与,可以使滤波后的波形平滑,毛刺少,并且与实际波形的相位差小。

在小车控制中
卡尔曼滤波前后的波形如下(绿色为滤波前,红色为滤波后):三、pid控制
在卡尔曼滤波后和信号处理好后,小车的重点就在控制上面。

小车的运动可以分为三个部分,即为站立、直线运动和转向。

由于车体运动分为这三个部分,并且这三个部分必须几乎同时控制,所以采用分时控制每一部分的方法,类似cpu时间分片。

程序的控制和信号处理都是在中端里面执行,通过设置全局变量来确定执行什么操作。

程序设置1毫秒中断,程序进入中断后,全局变量加1,判断全局变量的值,进入不同的执行部分,执行相应的操作。

中断服务程序的框架:
其中,除了上述基本框架外,在每次进入中断后,首先执行卡尔曼滤波程序,并且执行单片机ad采样。

根据我们实际获得的经验,卡尔曼滤波是比较耗时间的,并且ad采样同样也是很消耗时间,如果在中断执行的总时间超过1毫秒,这将会影响卡尔曼滤波的效果,因此在这个方面,必须考虑ad所开的通道数目,当通道数目过多,将会导致一次中断服务程序执行的时间超过1毫秒。

这时可以选择增加中断定时时间,进而也就需要改变卡尔曼的。

在控制中,我们采用传统pid控制。

我们对直立控制采用pd控
制,这主要原因是在直立控制中的主要要求就是快速性,因而舍弃积分单元。

对于速度控制采用pid控制,积分单元消除误差。

对于方向控制采用pd控制。

在直立控制过程中,p越大,车体抗干扰能力越强,但过大会导致车体振荡,这时可以通过加大微分参数消除振荡。

当p达到一定程度时,车体会抖动并不是振荡,这时调节d并不能消除抖动。

车体抖动的主要原因来源于卡尔曼滤波后的信号精度,当精度比较低时,p过大,会直接放大信号的幅度,进而表现为车体的抖动。

在做车的速度控制过程中,速度控制的周期会影响车体的运行的稳定性。

在我们实际测试中当速度控制周期定为100毫秒时,低速运行车体比较稳定。

但当车速度给定为1.3m/s时,车体在转弯后,恢复平稳比较困难。

设置速度控制周期为200毫秒后,效果改善明显。

在方向控制中,我们使用分段pid控制。

这主要原因是车体在直道运行时,稍微偏离中心线对车体运行没有影响,也就是在知道上方向控制不需要太灵敏,太灵敏不利于车在直道的稳定和进入弯道的稳定。

相反,在弯道就需要方向控制的灵敏,灵敏度越高越好,但前提是保证车体的直立基本稳定。

在实际中,车体陀螺仪传感器的安装水平程度对车体运行是否稳定影响很大,安装越水平越好,越利于车的提速。

安装不水平会出现车载转弯的过程中加速和减速的现象。

参考文献:
[1] 百度百科.自平衡电动车[db/ol]. http:
///view/2362793.htm.2013-8-26/2013-8-26. [2] 冯志勇,曾翰,张力,赵艺欣,黄伟.基于陀螺仪及加速度计信号融合的姿态角度测量.[j]西南师范大学学报(自然科学版),2011(8):137-141.
[3] 何友,王国宏,彭应宁编著.多传感器信息融合及应用[m].2版.北京:电子工业出版社,2007:12-23.。

相关文档
最新文档