平衡小车设计_2_设计思路

平衡小车PID调参新思路:用合宙ESP32-C3的BLE功能实现无线数据收发(附完整Arduino代码) 本文介绍了利用合宙ESP32-C3的BLE功能实现平衡小车无线PID调参的创新方案。通过BLE技术,开发者可以摆脱有线连接的束缚,实现高效、低功耗的实时数据交互。文章详细解析了ESP32-C3 BLE通信框架搭建、双向数据协议设计及调参实战技巧,并附完整Arduino代码,显著提升调试效率。 阅读详情

平衡小车设计_2_设计思路

 

自平衡小车最基本的要求是小车能够站立,其核心在于电机的控制,本设计采用PID控制,不需要对控制系统建立精确的数学模型,只需要对小车运动机理稍作分析,适当选取被控量、控制规律以及控制器参数即可。

自平衡小车可以视为一个小车摆杆系统,小车摆杆系统的物理模型如下图。

小车摆杆系统物理模型

                  

当摆杆具有向右倒下的倾向,小车应加速向右运动,克服摆杆惯性,使摆杆回到竖直静止状态;反之,当摆杆具有向左倒下的倾向,小车应加速向左运动。

因此,在原理上只需要对系统施加角度环控制(原理图如下图):角度PD控制规律,选取适当的参数即可使小车直立,这里P参数主要用于消除误差,D参数主要用于减小、消除低频振荡(提高P参数的最大取值),而P越大,系统稳态误差越小,由于P无法取到无穷大,稳态误差一定存在,因而小车难以保持长时间静止直立,在直立一段时间后会向一个方向倒去,理想情况下,P参数适当,刚好抵消回复力作用,小车会匀速向前运动;如果P参数较小,回复力的作用较强,小车加速最终倒下;如果P参数较大,小车会经过振荡回到短时静止直立状态。而这里不施加I控制规律的原因有两点:第一,运动过程中姿态检测信号中混杂着较大的噪声,噪声会在积分环节中累加,产生控制误差;第二,车轮与地面的摩擦产生阻尼作用,抵消倾角误差的增加,积分环节无法对其进行无差控制。

角度环原理图

                                                             

 

经过上面的分析,小车能够保持直立,为了使小车保持静止,需要添加其它的辅助手段。上面的分析得出,在参数选择最理想的情况下,小车会匀速行驶。因此,引入转速环控制(原理图如下图):转速PI控制,选取适当的控制器参数即可使小车基本静止直立。控制机理:当小车匀速直线运动,在PI转速控制的作用下,小车的转速不断减小,可能经过一段振荡,转速达到设定值0,使小车站立的同时不向任一方向运动。但由于控制器参数不理想、电机存在死区等原因,小车难以保持真正意义上的静止直立,而是会在一个非常小的范围内缓慢振荡。这里,如果使用步进精度高的步进电机,能使小车看起来静止直立。为了使小车前后运动,可以在积分作用中人为加入误差,使小车转速产生偏差,在直立的同时向某一方向运动,由于两个电机、驱动电路参数并非完全对称等原因,小车无法保证直线行驶。

转速环原理图

 

 

经过上面的分析,小车能够保持静止直立或近似匀速直线运动,为了使小车走得更笔直、或者使其转向,可以引入转向环控制(原理图如下图):模糊PD控制,适当选取控制器参数使之基本符合设计要求。小车处于非转向状态下(静止直立、直行),使用小车转向角进行D调节,当小车偏离直线,小车在D控制器作用下抑制偏移角,达到短距离近似直行的效果;小车处于转向状态下,利用小车转速进行P调节 ,人为给定一个非0的转向速度,使左右两轮转速产生偏差,从而达到转向的目的,为了使转向更平滑,可以对设定值进行平滑处理,即使设定值按一定规律递增至阈值;为了行驶过程中转向更及时,可根据转向前的瞬时速度给定一个较大的递增值,使小车迅速转向。

转向环原理图

 

注意:为了保持小车直立,角度环应采用负反馈;而为了保持小车静止,转速环应采用正反馈:当小车向某一方向前进,为了使小车静止直立,应使之先加速向前,使倾角回复,再在角度环作用下减速至静止;而转向环为了保持直行、按给定偏差转向,应采用负反馈。

综上分析,自平衡小车完成静止直立、直行、转向等功能,控制算法上需要角度环、转速环、转向环分别对倾角进行负反馈PD控制、对转速进行正反馈PI控制、对转向角以及左右两电机转速差进行负反馈模糊PD控制。

基于stm32的两轮自平衡小车2(原理篇) 该篇为原理篇,是理论分析的部分,本人水平有限,有些地方还没能理解透彻,如有不足的地方恳请指出,非常感谢!内容详见目录。 目录 硬件框图 运动分析 PID算法 定时器PWM输出 定时器编码器模式 六轴传感器获取角度 ... 阅读详情

相关推荐

从零开始写STM32平衡小车代码,从0到1

从零开始写STM32平衡小车代码,从0到1教你从零开始写STM32平衡小车代码前言:本人也是学生,只是分享一下自己的设计思路与代码教学。这次STM32平衡小车是基于STM32CubeMX软件生成HAL库代码编写。第一部分:前期准备这部分主要是关于组装基本平衡小车需要的零件1.小车车架以及电机固定架轮子和联轴器(我是通过淘宝上购买的)2.带有编码器的直流电机3.直流电机驱动电路(也可以通过网上购买推荐大鱼电子的电机驱动价格:30+)4.一个STM32最小系统板(本人芯片型号为STM32F103ZET6)5.一

专注单片机实战教学,分享单片机学习资料 8647

平衡小车转向环分析与代码实现

前言 本文将对平衡小车转向环控制方式进行分析并用代码实现,平衡小车基于STM32。

微光feng的博客 1万+

《平衡小车控制系统》电子设计大赛校赛感悟

《平衡小车控制系统》电子设计大赛校赛的方案与感悟。

2301_79578379的博客 2030

两轮自平衡车系统的模型构建

当检测到车体向前倾斜时,内部电机加速旋转产生一个向前的加速度,这个加速度使得在双轮轴心上方的重心向后摆动,这就抵消了车体的向前倾斜,使车体的重心回到两轮中心轴的正上方,从而在竖直方向保持平衡。图1 平衡车系统平衡原理图。输出变量:​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​。其中,M——小车质量 m——摆杆质量 b——小车的摩擦系数。(1)y与x1(x)之间的传递函数为:​​​​​​​​​​​​​​。(2)y与x3(φ)之间的传递函数为: ​​​​​​​。

qq_54808408的博客 6006

14、基于STM32的平衡小车设计

在科技不断发展进步的今天,对平衡小车的研究具有很重要的意义,现如今各高校在对小车平衡小车的研究上也在不断的投入资源,更是每一年的电子设计竞赛都会选择这类控制类的设计来刺激同学们对其相关控制策略的研究。这不仅提高了学生的学习积极性,更是提高了同学们对科学的认识。本文介绍一下基于STM32单片机的平衡小车系统的设计。系统基于陀螺仪等传感器利用PID平衡算法对小车的速度倾斜角度平衡状态来进行检测并通过单片机来控制电机来实现双轮小车自如平衡地运动。

行走的皮卡丘 1626

毕业论文 | 基于STM32的双轮平衡小车设计(基于Keil5的完整注释版代码工程,原器件清单)

博主github:https://github.com/MichaelBeechan 博主优快云:https://blog.youkuaiyun.com/u011344545 预告:代码及文档下载 方案分析 1、基于STM32F103C8T6 单片机的双轮自平衡小车系统; 2、以 MPU6050 三轴陀螺仪加速计为传感器的姿态感知系统; 3、通过卡尔曼滤波对传感器的数据进行滤波融合; 4、采用PID算法实现小车两轮自平衡; 5、使用 TB6612电机驱动模块实现小车的驱动电机,综合实现小车的直立行走。 零、目的与意

尘世冰封的专栏 6870

我现在发现平衡小车之家里的平衡车,角度环和速度环直接相加,在数学表达式上是和串级PID一样的!

我现在发现平衡小车之家里的平衡车,角度环和速度环直接相加,在数学表达式上是和串级PID一样的!!!!!!!!! 这也是为什么它说没有直接使用串级PID,意思是间接使用了。 不过速度环变成正反馈,好好思考下。 ...

自主无人机 PX4 ROS SLAM 路径规划 MVS等技术分享 6657

基于嵌入式系统的平衡循迹小车设计与实现

平衡循迹小车是一种集机械结构、传感器技术、自动控制理论和嵌入式系统于一体的典型智能移动机器人。其核心功能在于实现动态自平衡与路径追踪的双重控制目标,广泛应用于教学实践、科研验证与工程原型开发。本章将从整体系统角度出发,阐述平衡循迹小车的基本工作原理与模块化架构设计。

weixin_42418754的博客 1389

【平衡小车制作】(一)硬件原理图讲解(超详解)

  大家好,之后的一系列文章我将介绍我玩平衡小车的过程以及遇到的一些问题,将这些内容记录下来分享给大家,也让大家少走一些弯路。接下来我将从硬件框架选择、软件编程、PID算法、PID调参这四个部分向大家讲解平衡小车的制作过程。   本系列平衡小车文章适合于刚刚学习STM32但感觉没有玩透,想找个项目练练手,那么平衡小车绝对适合你。同时也适合于对于平衡小车感兴趣但编程和硬件基础较差,没有关系,跟随作者将让你轻松学会制作一个属于自己的平衡小车。   

weixin_44270218的博客 7万+

自适应IIR格型滤波器的Matlab实现

概述 在现有的众多抑制窄带干扰的信号处理手段中,时域自适应陷波干扰抑制技术具有实现简单、抗干扰性能好等优点。IIR陷波器按照结构可以分为直接型和格型两种。相比自适应直接型IIR陷波器,自适应格型IIR陷波器不仅可以准确地控制滤波器的陷波频率,也可以准确地调整陷波器的带宽。 传递函数 二阶自适应IIR格型陷波器的传递函数H(z)为: 其中α与陷波带宽有关,β与陷波频率有关;对应的结构如下图所示: Matlab算法实现 ...

剑藏锋的博客 2800

【无标题】

可以看到这是一个带过滤的rce,并且还需要绕过空格,通过·查询资料得到了${IFS},$IFS$9,<,$IFS。然后f,l,a,g都被过滤了,可以用中括号[]来进行正则匹配,把GET传的参数改为?cmd=uniq /[e-h][k-n][^-b][e-h],就得到了flag。cmd={%0A"cmd":"/bin/cat /home/rceservice/flag"%0A}可以看到l被过滤了ls用不了了可以用dir用GET传参cmd=dir /,POST传参shell=system。

2501_94507425的博客 303

平衡小车设计_5_参数整定

平衡小车设计_5_参数整定 整定顺序:角度环=>转速环=>转向环; P => I => D 整定原则: 先定极性、再定大小; 从小到大 1、角度环整定: 参数P: 1、定极性:给一个较小的值,观察小车倒下时车轮旋转方向,若小车行进方向与倒下方向相同,极性正确 2、定大小:从小到大,调至小车刚开始出现低频振荡 参数D: 1、定极性:P参...

floatinglong的博客 1329

5nm制程的CV5芯片实测:用它给无人机做8K拍摄和实时避障,功耗和性能到底怎么样?

本文深度评测了5nm制程的CV5芯片在无人机8K拍摄和实时避障中的表现。通过实测数据展示了CV5的异构计算架构、8K视频编码性能和CVflow®AI引擎的加速效果,同时提供了开发中的优化技巧和散热建议,为无人机开发者提供了实用的参考。

weixin_30861797的博客 358

手把手教学,平衡小车详细教程,平衡车

0、前 言原谅我起这么猛的标题,但看完,你不会来打我的。如果此项目有朋友已经做过,可以越过不看。回归正题,平衡小车,这个开源项目已经出来很多年了,虽然是...

张巧龙的博客 1万+

MEMS惯性传感器关键参数解析与误差优化策略

本文深入解析了MEMS惯性传感器的关键性能参数,如零偏稳定性、噪声与随机游走、振动整流误差等,并阐述了这些误差如何导致设备导航漂移、姿态不稳等问题。文章重点探讨了从硬件选型、系统设计到校准补偿、算法融合(如卡尔曼滤波)以及温度补偿等实战优化策略,旨在帮助工程师有效提升自动驾驶、无人机等设备的测量精度与稳定性。

weixin_28363123的博客 414

GEM5教程--gem5开始之旅(一)

GEM5系列教程--gem5开始之旅一、建立GEM5 GEM5模拟器是一个用于计算机系统结构研究的模块化平台,包含系统级别的结构以及处理器的微体系结构。读者若想详细的了解,请查看其官方文档GEM5文档 读者如果想要入门GEM5的话,可以参考Learning_GEM5这个网站,这里面有较为详细的教程,可以带读者从入门到精通。小编我对GEM5的入门学习也是从这个Learning_GEM5这个网站学习的...

qq_43381135的博客 3万+

自平衡小车制作

一、介绍 1、控制输入:加速度传感器和陀螺仪测得的小车倾角。当加速度传感器水平放置时,Z轴会测量到重力加速度,大小为g。当加速度传感器倾斜时,Z轴上测量的g就会变小,根据变小之前的值和之后的值,就可以算得倾角值。 这样一看似乎只需要加速度就可以获得小车的倾角,再对此信号进行微分便可以获得倾角速度。但在实际小车运行过程中,由于小车本身的摆动所产生的加速度会在Z轴上有分量,它叠...

qlexcel的专栏 6320

PostgreSQL 核心原理:大字段(大对象)是如何被压缩和存储的(TOAST存储机制)

PostgreSQL通过TOAST机制高效处理大字段存储问题,解决单行超过8KB页大小限制的挑战。TOAST采用透明分片、按需加载和自动压缩策略,支持TEXT、JSONB等变长类型,无需用户干预。其核心包括四种存储策略(plain/external/main/extended),自动将大字段分片存入专用TOAST表,主表仅保留指针。读取时按需解压拼接,支持部分加载优化。TOAST表结构包含chunk_id、序列号和分片数据,配合内置PGLZ压缩算法,平衡存储效率与访问性能。该机制使PostgreSQL能稳定

数据知道的博客 2625

平衡小车总结

stm32平衡小车

qq_41746574的博客 5999

Linux | Ubuntu18.04安装WIFI6 AX201驱动完整教程

本节介绍了如何在Ubuntu18下安装AX201驱动的教程。

九七的博客 8881

手把手教你学Simulink——基于Simulink的无感FOC(滑模观测器+PLL)实战

本文详细介绍了基于Simulink的无感FOC(滑模观测器+PLL)实现方法。主要内容包括:1)SMO+PLL原理精讲,阐述滑模观测器核心思想和PLL的作用;2)系统架构全景图展示;3)Simulink建模全流程,从基础FOC框架到SMO和PLL模块的实现;4)关键参数整定指南和工程实践要点;5)仿真结果分析及常见问题解决方案。该方法可有效替代机械传感器,降低成本并提高可靠性,适用于空调压缩机、电动汽车水泵等工业场景。文章还提供了详细的调试建议和动手实践指导。

MHD0815的博客 83

从零开始速通一台多方式控制的STM32自平衡小车【1平衡小车篇】

这个学期有个嵌入式课程设计的任务,要求用战舰V3开发板整点活出来。毫无嵌入式底子但是想搞点花头的我思来想去,最终决定搞一台多方式控制的STM32自平衡小车。整个设计可以简单的分为遥控器部分和小车部分。遥控器用的是正点原子的STM32F1战舰V3开发板;小车底盘、主控板用的是大鱼电子家的。目前已经实现:用战舰V3的按键控制;游戏手柄连接战舰V3控制;MPU6050连接战舰V3实现体感控制;键盘控制(电脑蓝牙连接小车然后键盘控制小车运动)。

qq_58979750的博客 3578

Probability and Statistics - 4th edition

Probability and Statistics - 4th edition

基于PID控制算法的自平衡机器人平衡小车设计

随着机器人研究的进一步深入,在工业生产、安防系统、智能家居、物流网等领域的应用更加广泛,在实际应用中,可能遇到复杂的任务环境。相比多轮的轮式机器人,两轮自平衡机器人体积小,运动灵活,能够在比较狭窄、需要大转角的场合中运动。这种机器人两轮共轴,可以通过运动保持自身平衡,能实现前进、后退、转向、原地静止等基本运动功能,由于其结构特殊,能适应不同的地形环境,研究两轮自平衡机器人,具有重要的意义。本设计以两轮车模为研究平台,以恩智浦公司32位微处理器MK60FX512VLQ15为控制核心。通过加速度传感器和陀螺仪,

叶绿体不忘呼吸 2049

精雕软件(JDpaint) 5.5 绿色版

精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版

VC中sqlite的使用

在VC中对sqlite的使用,实现数据库大批数据的快速插入,读取数据库中的数据在ListCtrl中显示

【STM32+HAL】二轮平衡小车

偶然获得轮趣的二轮平衡小车一套,翻阅官方资料感觉内容较为杂糅,故写下此文旨在实现简洁的二轮平衡功能。

缺积分下载资源的可以私信我或在评论区留言邮箱号 2836

WINCC7.3破解文件

WINCC7.3硬件够破解文件,有需要的下载!WINCC7.3硬件够破解文件,有需要的下载!

平衡小车设计_4_PID实现

平衡小车设计_4_PID实现 参考平衡之家的算法实现 首先明确三个环的PID都是位置式PID 1、角度环:PD g_tPidA.actual=roll; g_tPidA.err=g_tPidA.actual-g_tPidA.set; g_tPidA.delta=gyrox; g_tPidA.out=g_tPidA.kp*g_tPidA.err+g_tPidA.kd...

floatinglong的博客 1480

【STM32】【HAL库】平衡小车(PID实战2)(三)PID调参

平衡车作为经典PID设计项目,非常热门,也非常适合 PID/单片机 初学的项目没有看起来那么难,愿每个人都可做出自己的平衡车本系列文章,从硬件到软件,带领大家制作平衡小车分为三节硬件设计软件设计PID调参本节是PID调参部分。

m0_57585228的博客 3778
上一篇: 平衡小车设计_1_系统组成
下一篇: 平衡小车设计_3_测速原理
floatinglong
博客等级 码龄9年 90粉丝 143原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值