针对传统LQR最优控制器权重矩阵确定困难以及由此导致的响应速度慢等问题,以具有多变量、强耦合、非线性特点的两轮自平衡小车为被控对象,提出了一种通过遗传算法实现LQR控制器参数寻优的方法。选择线性二次型性能指标为目标函数,利用遗传算法的全局优化搜索能力,获取权阵Q的最优解,从而设计状态反馈控制率K,搭建系统动力学模型进行仿真实验。实验结果表明:该方法设计的最优控制器相对于传统的极点配置和LQR方法具有更好的控制效果,系统响应速度更快,超调更小。
2021-12-14 18:46:03 694KB 行业研究
1
基于STM32F407的平衡车制作,一站式服务,帮助刚入门32的朋友做个平衡车,从工程程序到相关app,及电脑上位机,以及模块指令集等
2021-09-28 19:00:14 20.03MB STM32F4平衡车 STMf4 stm32f4平衡车 C++
本文设计了一种基于视觉导航的两轮自平衡小车系统,并实现了小车的直立行走,自主寻迹和定位三大功能。包括原理,硬件设计,软件设计,系统的调试及部分C语言源代码。系统采用飞思卡尔十六位微处理器MC9S12XS128作为核心控制单元,通过增加各种传感器,设计稳压模块、最小系统模块、双轮测速模块、倾角测量模块、电机驱动模块和人机交互模块并编写相应程序以完成平衡控制,速度控制,转向控制和实时定位四大任务。
1
小车两轮平衡车+原理图+教程+详细注释,深入理解pwm控制电机,PID算法等等模块
2021-07-01 21:06:34 5.94MB PID算法 平衡车
1
基于STM32的两轮自平衡小车系统设计.pdf
2021-06-28 14:02:36 1.69MB STM32 程序 硬件设计 论文期刊
两轮平衡机器人模糊PID控制方法研究,希望对有用的人提供帮助
2021-06-20 23:57:43 7.16MB 自平衡小车
1
两轮自平衡小车,具有PD直立环和PI速度环使得两轮小车实现自平衡控制
2021-06-15 17:58:17 4.72MB stm32f103 自平衡小车 PID MPU6050
1
两轮自平衡小车开源,代码公布,基于arduino可用的代码。
2021-06-03 16:40:04 7KB 自平衡 arduino 代码
1
摘 要: 两轮自平衡小车被各种竞赛所喜爱,在很多大型比赛中都有涉及此方向的题目。阐述了基于飞思卡尔系列单片机为核心控制器,配合陀螺仪、角度传感器实现两轮小车的自平衡。着重介绍了两轮自平 衡小车的结构、平衡原理、控制算法,通过反复调试最终实现了小车的自平衡。
2021-05-03 14:16:38 510KB 自平衡小车
1
自己做的自平衡小车,基本达到预期效果。制作资料在压缩包里面,供参考。 该两轮自平衡小车硬件设计概述: 控制器:ATmega16;8MHz; 加速度传感器:MMA2260;陀螺仪:EWTS82; 传感器的融合:卡尔曼滤波; 马达:EN_2342CR(速比64)+双路12脉冲编码器+CD40106对信号整形; 驱动板芯片:CD4001+IR2111+IRF1404(驱动电流可以很大); 图片(拍摄效果不佳),视频如下: 小车实物图展示: 设计分析: 其实控制很简单,利用定时器产生10ms中断,每次中断进行如下工作: 1:AD采样加速度传感器和陀螺仪,然后卡尔曼滤波得出角度与角速度;(滤波模块借鉴老外的)(互补滤波效果感觉不是很好); 2:计算车轮的速度,积分得出位置; 3:利用PD算法得出PWM值=K1*angle + K2*angle_dot + K3*speed + K4 * position; 4:前进后退给定参考速度计算即可; 注意: 增量式轮速传感器A相中断,读取B相电位判断前进还是后退,在10ms的时间内累加,计算车轮的速度; 由于10ms累加的轮速信号不多,直接计算车体会发抖,所以增加了低通滤波,解决问题; 我在外面增加4个电位器可以手动调节4个K值,方便调试; 附件的文件夹里面有matlab建模的资料,可以求出所需的4个K的值,(参考NXT的),大家可自行调试K值看看对车辆的影响; 电机选取建议: 由于考虑到减速器,而且带传感器。其实后面实践得知可以不要位置传感器,这样选择电机的空间就很大了,买便宜的; 电机扭矩要大;说白了,功率要大;转动惯量大似乎的更稳定,所以不用空心杯的也许更好; 减速比可以大一点,用较大的轮子; 重心越靠下,抗扰性越强;但是可能会影响稳定性; 购买的电机型号参考: 算法: 常用计算方法有两种:互补滤波和卡尔曼滤波;都可以输出校正后的角度与角速度;我采用的是卡尔曼滤波,考虑到单片机的运算能力,是经过精简的,当然这些都是老外做的,关于卡尔曼滤波,我找了很多资料,详见附件内容。
1