平衡小车平衡原理介绍
自平衡小车原理
自平衡小车原理
自平衡小车是一种能够在没有外部干扰的情况下,保持直立并进行移动的智能机器人。
它通常由一个底盘和一个竖立的结构组成,结构中包含了各种传感器、执行器和控制器。
自平衡小车的原理主要基于控制系统和物理平衡。
在运行过程中,小车通过不断地获取外部环境信息,并通过传感器将这些信息发送给控制器。
控制器会实时地分析这些信息,并根据预设的算法计算出小车所需要的平衡力。
然后,控制器会将这个平衡力转化为电信号,通过执行器作用在小车的底盘上,从而使小车能够保持直立。
在物理平衡方面,自平衡小车的结构设计十分关键。
通常,小车的结构会采用倒立摆的原理,即小车底盘下方安装一个重力中心较低的质量块,上方则安装一个倒立的结构。
这样的结构可以使小车在外力作用下产生倾斜,但通过控制系统的调节,小车可以通过调整底盘上的力,使自己重新回到垂直直立的状态。
另外,小车还需要依靠惯性来保持平衡。
当小车受到外力作用而产生倾斜时,内部的陀螺仪会感知到这一倾斜,并通过控制系统来产生一个相反方向的力来抵消倾斜,从而保持平衡。
总的来说,自平衡小车的原理是基于控制系统和物理平衡相结合的。
通过不断地获取环境信息、计算出平衡力并通过执行器施加,小车能够实现保持直立并进行移动的功能。
这种原理的应用广泛,例如人们常见的平衡车、智能摄像机等。
4.平衡小车直立控制原理
2
向相反。
图4 单摆及其运动曲线 类比到我们的平衡小车, 为了让小车能静止在平衡位置附近, 我们不仅需要 在电机上施加和倾角成正比的回复力,还需要增加和角速度成正比的阻尼力, 阻 尼力与运动方向相反。这样,小车的平衡控制算法可以进行改写
图3 小车在平衡位置震荡 从上面的分析可知, 是因为小车绕轴转动时具有的惯性, 也就是小车具有一 定的转动惯量,如果转动惯量为零,那似乎就可以解决上述的问题了。我们先看 一下转动惯量的计算公式。
I mi ri 2
i
(1-2)
其中 m 是其质量, r是质点和转轴的垂直距离。 我们既无法让小车的质量为 零, 也无法让等效的质点与电机转轴的距离为零。 所以, 转动惯量是客观存在的。 下面我们分析一下单摆模型,如图4所示。在重力作用下,单摆受到和角度 成正比,运动方向相反的回复力。而且在空气中运动的单摆,由于受到空气的阻
I mi ri 2
i
(1-4) (1-5)
M Fi Li
i
在小车质量一定的情况下,重心位置增高,因为需要的回复力减小,所以比 例控制系数下降;转动惯量变大,所以微分控制系数增大。 在小车重心位置一定的情况下,质量增大,因为需要的回复力增大,比例控 制系数增大;转动惯量变大,所以微分控制系数增大。
1
述就是:小车往前倾时车轮要往前运动,小车往后倾时车轮要往后运动,让小车 保持平衡。理想状态下,只要我们可以控制电机的加速度和小车的倾角成正比, 就可以让小车保持平衡。
a b1
(1-1)
实际上,小车到达平衡的位置之后,因为 为零,所以a输出为零,但是此 时小车并没有和我们设想的那样保持静止,而是因为刚体绕轴转动时具有的惯 性,小车会往另外一个方向倒去,如此反复,我们便看到小车在平衡位置出现震 荡而无法静止。响应曲线如图3所示。
平衡车原理和扑街解释
平衡车原理和扑街解释摘要: 说到仆街的原因或者原理,必须从平衡车的原理说起。
本文为 buaa_dingo 原创一、自平衡基本原理所有前后方向具有自平衡功能的车辆,双轮或者独轮,都是基于倒立摆原理。
自平衡车实际上是一个比较 ...说到仆街的原因或者原理,必须从平衡车的原理说起。
本文为buaa_dingo原创一、自平衡基本原理所有前后方向具有自平衡功能的车辆,双轮或者独轮,都是基于倒立摆原理。
自平衡车实际上是一个比较简单的单级倒立摆系统,只是由于有驾驶员的操纵,为这个简单的单级倒立摆系统引入了一些非线性因素,但是也并不复杂。
简单文字描述如下:1)最简单的自平衡车系统,包括控制器、姿态传感器和执行器(电机),以及必要的电源(电池)和结构零件(让小车组合在一起具备功能)。
其中,控制器能够测量姿态传感器输出的姿态信息,并比较精确地控制电机运转;姿态传感器可以每秒输出100-500次姿态数据(俯仰、滚转、方向);执行器(电机)可以提供整车运动的动力。
2)当驾驶者向前倾斜身体时,会带动车子向前倾斜。
此时控制器可通过姿态传感器感知到这个倾斜,并命令电机向前旋转。
这样,驾驶者前倾的时候,车子也会往前走,从而“追上”打算往前倾倒的驾驶者,保持动态平衡。
3)当驾驶者身体向后仰时,会带动车子向后倾斜。
此时控制器可通过姿态传感器感知到这个倾斜,并命令电机向后旋转。
这样,驾驶者后仰的时候,车子也会往后走,从而“追上”打算向后倾倒的驾驶者,保持动态平衡。
4)控制器每秒钟执行100-500次2、3的过程,不停地测量车子姿态,不停地调整电机的转动方向和转速。
这样就保持一个动态的平衡。
不管驾驶者往前还是往后倾斜,车子都会自动“追上”驾驶者,保持平衡。
参考文献:美国专利:Personal Mobility Vehicles and Methods,U.S.Patent No.6,302,230 B1,Oct.16,2001中国专利:CN02807642-使用重心及质量移位控制系统的车辆和方法,2010主要影响自平衡性能的几个因素是:车子方面:1)电机的响应速度(专业名词:机械时间常数)2)电机的扭矩和功率(稍后详细分析)3)能源供应功率(电池的持续输出功率和最大输出功率)4)控制器的控制算法水平和反应时间5)轮胎抓地性能。
平衡小车平衡原理介绍
平衡原理一、平衡小车原理平衡小车是通过两个电机运动下实现小车不倒下直立行走的多功能智能小车,在外力的推拉下,小车依然保持不倒下;这么一说可能还没有很直观的了解究竟什么是平衡小车,不过这个平衡小车实现的原理其实是在人们生活中的经验得来的;如果通过简单的练习,一般人可以通过自己的手指把木棒直立而不倒的放在指尖上,所以练习的时候,需要学会的两个条件:一是放在指尖上可以移动,二是通过眼睛观察木棒的倾斜角度和倾斜趋势角速度;通过手指的移动去抵消木棒倾斜的角度和趋势,使得木棒能直立不倒;这样的条件是不可以缺一的,实际上加入这两个条件,控制过程中就是负反馈机制;而世界上没有任何一个人可以蒙眼不看,就可以直立木棒的,因为没有眼睛的负反馈,就不知道笔的倾斜角度和趋势;这整个过程可以用一个执行式表达:平衡小车也是这样的过程,通过负反馈实现平衡;与上面保持木棒直立比较则相对简单,因为小车有两个轮子着地,车体只会在轮子滚动的方向上发生倾斜;控制轮子转动,抵消在一个维度上倾斜的趋势便可以保持车体平衡了;所以根据上述的原理,通过测量小车的倾角和倾角速度控制小车车轮的加速度来消除小车的倾角;因此,小车倾角以及倾角速度的测量成为控制小车直立的关键;我们的平衡小车使用了测量倾角和倾角速度的集成传感器陀螺仪-MPU6050二、角度物理分析PD算法图1图2控制平衡小车,使得它作加速运动;这样站在小车上非惯性系,以车轮作为坐标原点分析倒立摆受力,它就会受到额外的惯性力,该力与车轮的加速度方向相反,大小成正比;这样倒立摆如图2所受到的回复力为:公式1 F = mg sin θ-ma cos θ≈mg θ-mk1θ式1中,由于θ很小,所以进行了线性化;假设负反馈控制是车轮加速度a与偏角θ成正比,比例为k1;如果比例k1>g,g是重力加速度那么回复力的方向便于位移方向相反了;而为了让倒立摆能够尽快回到垂直位置稳定下来,还需要增加阻尼力;增加的阻尼力与偏角的速度成正比,方向相反,因此公式1可改为:F = mg θ-mk1θ -mk2θ`按照上述倒立摆的模型,可得出控制小车车轮加速度的算法:a =k1θ+k2θ` 式中θ为小车角度,θ`为角速度;k1 k2都是比例系数根据上述内容,建立速度的比例微分负反馈控制,根据基本控制理论讨论小车通过闭环控制保持稳定的条件这里需要对控制理论有基本了解;假设外力干扰引起车模产生角加速度xt;沿着垂直于车模地盘方向进行受力分析,可以得到车模倾角与车轮运动加速度以及外力干扰加速度atxt之间的运动方程;如图3所示;图3在角度反馈控制中,与角度成比例的控制量是称为比例控制;与角速度成比例的控制量称为微分控制角速度是角度的微分;因此上面系数k1,k2分别称为比例和微分控制参数;其中微分参数相当于阻尼力,可以有效抑制车模震荡;通过微分抑制控制震荡的思想在后面的速度和方向控制中也同样适用;总结控制车模直立稳定的条件如下:1能够精确测量车模倾角θ的大小和角速度θ'的大小;2可以控制车轮的加速度;上述控制实际结果是小车与地面不是严格垂直,而是存在一个对应的倾角;在重力的作用下,小车会朝着一个方面加速前进;为了保持小车的静止或者匀速运动需要消除这个安装误差;在实际小车制作过程中需要进行机械调整和软件参数设置;另外需要通过软件中的速度控制来实现速度的稳定性;在小车角度控制中出现的小车倾角偏差,使得小车在倾斜的方向上产生加速;这个结果可以用来进行小车的速度控制;下面将利用这个原理来调节小车的速度;三、测速物理模型建立数学模型传递函数PD算法假设小车在上面直立控制调节下已经能够保持平衡了,但是由于安装误差,传感器实际测量的角度与车模角度有偏差,因此小车实际不是保持与地面垂直,而是存在一个倾角;在重力的作用下,小车就会朝倾斜的方向加速前进;控制速度只要通过控制小车的倾角就可以实现了;具体实现需要解决三个问题:1如何测量小车速度2如何通过小车直立控制实现小车倾角的改变3如何根据速度误差控制小车倾角第一个问题可以通过安装在电机输出轴上的光码盘来测量得到小车的车轮速度;如图4所示;利用控制单片机的计数器测量在固定时间间隔内速度脉冲信号的个数可以反映电机的转速;图4第二个问题可以通过角度控制给定值来解决;给定小车直立控制的设定值,在角度控制调节下,小车将会自动维持在一个角度;通过前面小车直立控制算法可以知道,小车倾角最终是跟踪重力加速度Z轴的角度;因此小车的倾角给定值与重力加速度Z轴角度相减,便可以最终决定小车的倾角第三个问题分析起来相对比较困难,远比直观进行速度负反馈分析复杂;首先对一个简单例子进行分析;假设小车开始保持静止,然后增加给定速度,为此需要小车往前倾斜以便获得加速度;在小车直立控制下,为了能够有一个往前的倾斜角度,车轮需要往后运动,这样会引起车轮速度下降因为车轮往负方向运动了;由于负反馈,使得小车往前倾角需要更大;如此循环,小车很快就会倾倒;原本利用负反馈进行速度控制反而成了“正”反馈;为什么负反馈控制在这儿失灵了呢原来在直立控制下的小车速度与小车倾角之间传递函数具有非最小相位特性在此省略了分析,在反馈控制下容易造成系统的不稳定性;为了保证系统稳定,往往取的小车倾角控制时间常数Tz很大;这样便会引起系统产生两个共轭极点,而且极点的实部变得很小,使得系统的速度控制会产生的震荡现象;这个现象在实际参数整定的时候可以观察到;那么如何消除速度控制过程中的震荡呢要解决控制震荡问题,在前面的小车角度控制中已经有了经验,那就是在控制反馈中增加速度微分控制;但由于车轮的速度反馈信号中往往存在着噪声,对速度进行微分运算会进一步加大噪声的影响;为此需要对上面控制方法进行改进;原系统中倾角调整过程时间常数往往很大,因此可以将该系统近似为一个积分环节;将原来的微分环节和这个积分环节合并,形成一个比例控制环节;这样可以保持系统控制传递函数不变,同时避免了微分计算;但在控制反馈中,只是使用反馈信号的比例和微分,没有利误差积分,所以最终这个速度控制是有残差的控制;但是直接引入误差积分控制环节,会增加系统的复杂度,为此就不再增加积分控制,而是通过与角度控制相结合后在进行改进;要求小车在原地停止,速度为0;但是由于采用的是比例控制,如果此时陀螺仪有漂移,或者加速度传感器安装有误差,最终小车倾角不会最终调整到0,小车会朝着倾斜的方向恒速运行下去;注意此时车模不会像没有速度控制那样加速运行了,但是速度不会最终为0;为了消除这个误差,可以将小车倾角设定量直接积分补偿在角度控制输出中,这样就会彻底消除速度控制误差;第二点,由于加入了速度控制,它可以补偿陀螺仪和重力加速度的漂移和误差;所以此时重力加速度传感器实际上没有必要了;此时小车在控制启动的时候,需要保持小车的垂直状态;此时陀螺仪的积分角度也初始化为0;当然如果电路中已经包括了重力加速度传感器,也可以保留这部分,从而提高小车的稳定性;在后面的最终给定的控制方案中,保留了这部分的控制回路;四、转向控制PD算法通过左右电机速度差驱动小车转向消除小车距离道路中心的偏差;通过调整小车的方向,再加上车前行运动,可以逐步消除小车距离中心线的距离差别;这个过程是一个积分过程,因此小车差动控制一般只需要进行简单的比例控制就可以完成小车方向控制;但是由于小车本身安装有电池等比较重的物体,具有很大的转动惯量,在调整过程中会出现小车转向过冲现象,如果不加以抑制,会使得小车过度转向而倒下;根据前面角度和速度控制的经验,为了消除小车方向控制中的过冲,需要增加微分控制;五、全方案整合通过上面介绍,将车模直立行走主要的控制算法集中起来,如图5图5为了实现小车直立行走,需要采集如下信号:1小车倾角速度陀螺仪信号,获得小车的倾角和角速度;2 重力加速度信号z轴信号,补偿陀螺仪的漂移;该信号可以省略,有速度控制替代;3 小车电机转速脉冲信号,获得小车运动速度,进行速度控制;4 小车转动速度陀螺仪信号,获得小车转向角速度,进行方向控制;在小车控制中的直立、速度和方向控制三个环节中,都使用了比例微分PD控制,这三种控制算法的输出量最终通过叠加通过电机运动来完成;(1)小车直立控制:使用小车倾角的PD比例、微分控制;g_fAngleControlOut = g_fCarAngle g_fCarAngle_P + \ gyro0 g_fCarAngle_D ;(2)小车速度控制:使用PD比例、微分控制;g_fSpeedControlOutNew = CAR_SPEED_SET - g_fCarSpeed g_fCarSpeed_P +\CAR_POSITION_SET - g_fCarPosition g_fCarSpeed_I; (3)小车方向控制:使用PD比例、微分控制;speednow=-speedtarget -gyro2 ;可通过单片机软件实现上述控制算法;在上面控制过程中,车模的角度控制和方向控制都是直接将输出电压叠加后控制电机的转速实现的;而车模的速度控制本质上是通过调节车模的倾角实现的,由于车模是一个非最小相位系统,因此该反馈控制如果比例和速度过大,很容易形成正反馈,使得车模失控,造成系统的不稳定性;因此速度的调节过程需要非常缓慢和平滑;六、PID算法图6控制相关的软件函数包括:1.AngleCalculate:小车倾角计算函数;根据采集到的陀螺仪和重力加速度传感器的数值计算小车角度和角速度;如果这部分的算法由外部一个运放实现,那么采集得到的直接是小车的角度和角速度,这部分算法可以省略;该函数是每5毫秒调用一次;2.AngelControl:小车直立控制函数;根据小车角度和角速度计算小车电机的控制量;直立控制是5毫秒调用一次;3.SpeedControl:小车速度控制函数;根据小车采集到的电机转速和速度设定值,计算电机的控制量;该函数是40毫秒调用一次;4.MotorOutput:电机输出量汇集函数;根据前面的直立控制、速度控制和方向控制所得到的控制量进行叠加,分别得到左右两个电极的输出电压控制量;对叠加后的输出量进行饱和处理;函数调用周期5毫秒;在此请大家注意速度控制量叠加的极性是负;5.MotorSpeedOut:电机PWM输出计算函数;根据左右两个电极的输出控制量的正负极性,叠加上一个小的死区数值,克服车模机械静态摩擦力;函数调用周期5毫秒;6.SetMotorVoltage:PWM输出函数:根据两个电机的输出量,计算出PWM控制寄存器的数值,设置四个PWM控制寄存器的数值;函数调用周期1毫秒;以上9个函数都是在1毫秒中断服务中进行被相互调用的;下图显示了这些函数之间的调用与参数传递关系;在个函数附近也表明了调用的周期;7.Chaoshengbo:加入超声波壁障模块:根据前方障碍物的距离检测,一旦检测到后,通过直接PWM值输出g_fchaoshengbooutput,相障碍物反方上运动,无需算法实现;每30毫秒调用一次;七、程序只给出一部分内容1 时序总算法void SysTick_Handlervoid //5ms定时器{BST_u8MainEventCount++; //总循环计数值BST_u8trig++;BST_u8SpeedControlCount++; //小车速度控制调用计数值GetMotorPulse; //脉冲计算函数BST_u8SpeedControlPeriod++;BST_u8DirectionControlPeriod++; //转向平滑输出计算比例值BST_u8DirectionControlCount++;AngleControl; //角度PD控制PWNM输出MotorOutput; //小车总PWM输出ifBST_u8trig>=2{UltrasonicWave_StartMeasure; //调用超声波发送程序给Trig脚<10us 高电平chaoshengbo; //计算超声波测距距离BST_u8trig=0;}ifBST_u8SpeedControlCount>=8 //当计数值8时,即总系统运行40ms时候每10个角度PWM输出中融入1个速度PWM输出,这样能保持速度PID输出不干扰角度PID输出,从而影响小车平衡{SpeedControl; //车模速度控制函数每40ms调用一次BST_u8SpeedControlCount=0; //小车速度控制调用计数值清零BST_u8SpeedControlPeriod=0; //平滑输出比例值清零}}(2)平衡程序/函数名称: SpeedControl功能描述: 速度环控制函数/void SpeedControlvoid{BST_fCarSpeed = BST_s32LeftMotorPulseSigma +BST_s32RightMotorPulseSigma ;// ; //左右电机脉冲数平均值作为小车当前车速//sumamm = BST_s32LeftMotorPulseSigma + BST_s32RightMotorPulseSigma ;BST_s32LeftMotorPulseSigma =BST_s32RightMotorPulseSigma = 0; //全局变量注意及时清零BST_fCarSpeedOld = ;BST_fCarSpeedOld +=BST_fCarSpeed;//BST_fCarSpeed = BST_fCarSpeedOld + BST_fCarSpeed ; //速度一阶滤波BST_fCarPosition += BST_fCarSpeedOld; //路程即速度积分1/11 3:03 BST_fCarPosition += BST_fBluetoothSpeed; //融合蓝牙给定速度BST_fCarPosition += fchaoshengbo; //融合超声波给定速度ifstopflag==1{BST_fCarPosition=0;}//积分上限设限//ifs32BST_fCarPosition > CAR_POSITION_MAX BST_fCarPosition =CAR_POSITION_MAX;ifs32BST_fCarPosition < CAR_POSITION_MIN BST_fCarPosition =CAR_POSITION_MIN;BST_fSpeedControlOutNew = BST_fCarSpeedOld -CAR_SPEED_SETBST_fCarSpeed_P + BST_fCarPosition - CAR_POSITION_SET BST_fCarSpeed_I; //速度PI 算法速度P +位移I=速度PWM输出}void SpeedControlOutputvoid//速度平滑输出函数{float fValue;fValue = BST_fSpeedControlOutNew - BST_fSpeedControlOutOld ;BST_fSpeedControlOut = fValue BST_u8SpeedControlPeriod + 1 /SPEED_CONTROL_PERIOD + BST_fSpeedControlOutOld; //转向平滑输出计算公式}(3)蓝牙以及超声波/函数名称: BluetoothControl功能描述: 蓝牙控制函数手机发送内容前:0x01 后:0x02左:0x04 右:0x03停止:0x07功能键:旋转左旋转:0x05 右旋转:0x06停转:0x07输入:输出:/void USART3_IRQHandlervoid{u8 ucBluetoothV alue;ifUSART3->SR&1<<5//接收到数据{ucBluetoothValue =USART3->DR;USART_ClearFlagUSART3,USART_FLAG_RXNE;//USART_ClearITPendingBitUSART3, USART_IT_RXNE; //清除中断标志ifucBluetoothValue<10{switch ucBluetoothV alue{case 0x01 : BST_fBluetoothSpeed = 3000 ;chaoflag=1; break; //向前速度250case 0x02 : BST_fBluetoothSpeed = -3000;chaoflag=1; break; //后退速度-250case 0x03 : BST_fBluetoothDirectionNew= -300; chaoflag=1;break ;//左旋case 0x04 : BST_fBluetoothDirectionNew= 300; chaoflag=1;break ;//右旋转case 0x05 : BST_fBluetoothDirectionNew= driectionxco; chaoflag=1;break ;//左旋case 0x06 : BST_fBluetoothDirectionNew= -driectionxco; chaoflag=1;break ;//右旋转case 0x07 : BST_fBluetoothDirectionL =0; BST_fBluetoothDirectionR = 0;BST_fBluetoothDirectionSL =0; BST_fBluetoothDirectionSR =0;fchaoshengbo=0;BST_fBluetoothDirectionNew=0;btcount1=0;chaoflag=0; break; //停case 0x08 : BST_fBluetoothDirectionSL =0; BST_fBluetoothDirectionSR =0;directionl=0;directionr=0;btcount1=0;fchaoshengbo=0;BST_fBluetoothDirectionNew=0;chaoflag=0;break; //停旋转case 0x09 : BST_fBluetoothSpeed = 0 ; break;default : BST_fBluetoothSpeed = 0;BST_fBluetoothDirectionL=BST_fBluetoothDirectionR =0;BST_fBluetoothDirectionSR=BST_fBluetoothDirectionSL=0;btcount1=0;chaoflag=0;break;}}else ifucBluetoothV alue<64&ucBluetoothValue>9{BST_fCarAngle_P=ucBluetoothValue;}else ifucBluetoothV alue<128&ucBluetoothValue>64{BST_fCarAngle_D=ucBluetoothValue-64;}else ifucBluetoothV alue<192&ucBluetoothValue>128{BST_fCarSpeed_P=ucBluetoothValue-128;}else ifucBluetoothV alue<256&ucBluetoothValue>192{BST_fCarSpeed_I=ucBluetoothValue-192;}}}/超声波距离计算/void chaoshengbovoid{ifchaoflag==0{juli=TIM_GetCounterTIM1534/;ifjuli<= //判断若距离小于8cm,小车输出向后PWM值;{fchaoshengbo= -300;}else ifjuli>=5&juli<=8{fchaoshengbo=300;}else fchaoshengbo=0; //距离大于8cm ,超声波PWM输出为0}}STM32 智能平衡小车。
平衡车的设计原理
平衡车的设计原理平衡车的设计原理是基于惯性平衡原理和动力控制原理。
惯性平衡原理是指车身前后倾角和重心位置之间的关系,通过调整车身的前后倾角来控制车体的平衡。
动力控制原理是指通过电机和传感器来感知车体的倾斜情况,并根据倾斜角度的变化调整电机的转速,产生合适的动力输出,以保持车体的平衡。
平衡车通常由车身、电机、电池、控制系统和传感器等组成。
车身是整个平衡车的主要支撑结构,需要具备足够的稳定性和强度。
电机是驱动车轮转动的动力来源,通常采用无刷直流电机。
电池则为平衡车提供电能,常见的是锂电池。
控制系统是平衡车的大脑,负责处理传感器采集的数据,并通过算法控制电机的转速。
传感器用于感知车身的倾斜角度和运动状态,常用的传感器包括加速度计、陀螺仪和倾斜传感器等。
当平衡车向前倾斜时,倾斜传感器会检测到这一倾斜状态,并将信号发送给控制系统。
控制系统根据传感器的数据计算出车身的倾斜角度,并调整电机的转速,产生向前的推力。
这样,车身就会逐渐恢复平衡状态。
同理,当平衡车向后倾斜时,控制系统会相应地调整电机的转速,产生向后的推力。
通过不断的调整电机的转速,平衡车能够保持在直立的平衡状态。
值得注意的是,平衡车的设计原理也与车身结构和重心位置有关。
通常情况下,平衡车的重心位置会尽量靠近车轮的中心,这有利于提高车身的稳定性和敏捷性。
此外,车身的转弯半径也会受到重心位置的影响,重心越低,转弯半径越小。
总之,平衡车的设计原理是通过惯性平衡原理和动力控制原理,结合车身、电机、电池、控制系统和传感器等组成部分,实现车身的平衡控制。
这种设计原理使得平衡车能够在使用者骑乘时保持平衡,实现前进、后退、转弯等基本动作。
平衡小车原理
平衡小车原理
平衡小车原理是指通过一定的控制方式使小车能够在速度、角度等方面保持平衡的一种技术。
平衡小车通常由一个车身和两个电机组成,车身上设有惯性测量传感器,用于测量小车的倾斜角度。
根据测量得到的倾斜角度,通过控制电机的转动来实现平衡。
平衡小车原理的核心是通过反馈控制系统来实时调整电机的输出力矩,使小车保持平衡。
当小车倾斜时,惯性测量传感器会检测到倾斜角度的变化,并将此信息传送给控制系统。
控制系统根据传感器的信号来计算出电机的输出力矩,进而控制电机的转动。
通过调整电机的转动速度和方向,控制系统可以实现对小车的平衡控制。
具体而言,当小车向前倾斜时,控制系统会增加后面电机的输出力矩,使其转动速度加快,产生向前的力,从而抵消小车的倾斜;反之,当小车向后倾斜时,控制系统会增加前面电机的输出力矩。
通过不断的调整,控制系统能够实现对小车的平衡控制,使其能够保持平稳行驶。
除了倾斜角度的控制,平衡小车还需要进行速度和角度的调整。
当需要小车前进或后退时,控制系统会相应地调整电机的输出力矩和转动方向,使小车能够按照所需的速度和方向运动。
当需要小车转弯时,控制系统会通过不同的力矩分配来实现转向控制。
综上所述,平衡小车原理是通过反馈控制系统来实现对小车倾
斜角度、速度和角度的实时调整,从而实现小车的平衡控制。
这一原理在实际应用中有着广泛的应用,如物流仓储、巡检机器人等领域,为人们的生产生活带来了便利。
平衡小车资料
平衡小车平衡小车是一种集机械、电子和控制技术于一体的智能设备,它具有出色的平衡能力和运动控制能力。
平衡小车的出现让人们领略到了现代科技的魅力,也为我们展示了人类对技术的探索和创新精神。
技术原理平衡小车的核心技术是基于倒立摆原理的控制系统。
通过陀螺仪感应车体的倾斜角度,控制系统调整电机的转速来保持车体平衡。
当车体向前倾斜时,电机会增加功率使车体向后运动,反之亦然,从而使得车体能够保持平衡状态。
这一原理是平衡小车得以实现稳定行驶的关键。
发展历程平衡小车的发展经历了多个阶段。
最初的平衡小车是基于传统的PID控制算法设计的,虽然能够实现基本的平衡功能,但对于复杂环境和动作的适应性有限。
随着深度学习和神经网络技术的发展,现代平衡小车采用了更加智能化的控制系统,不仅能够更好地适应各种环境和动作,还能够实现更加精准的平衡控制。
应用领域平衡小车在各个领域都有着广泛的应用。
在工业领域,平衡小车可以用于物料运输和搬运,提高了工作效率和安全性。
在科研领域,平衡小车可以作为实验工具,帮助研究人员进行机器人控制和智能算法的研究。
此外,平衡小车还经常出现在教育和娱乐领域,成为人们学习和娱乐的好帮手。
未来展望随着人工智能和机器学习技术的不断发展,平衡小车的性能和功能将会不断提升。
未来的平衡小车可能会具备更加复杂的运动能力和智能化的控制系统,可以应用于更多的领域,为人们的生活带来更多的便利和乐趣。
以上是关于平衡小车的一些介绍,这一智能设备的出现让我们看到了科技的不断进步和创新,也给我们展示了人类对技术探索的不懈追求。
希望未来平衡小车能够发展得更加广泛和深入,带来更多的惊喜和便利。
自平衡小车平衡原理
自平衡小车平衡原理自平衡小车作为一种近年来新兴的出行工具,已经在城市街头成为了一道亮丽的风景线。
然而,许多人对自平衡小车的原理还比较模糊,不了解它为什么能够如此稳定地行驶。
本文将从物理学原理的角度,对自平衡小车的平衡原理进行解析。
自平衡小车的平衡原理源于物理学中的两个重要定理:牛顿第二定律和角动量守恒定律。
首先,我们来看牛顿第二定律。
牛顿第二定律是物理学中的一条基本定律,它指出一个物体所受的合力等于这个物体的质量和加速度的乘积。
对于自平衡小车来说,它所受的合力其实就是重力和地面反作用力的合力,这个合力可以表示为:F = Mg - Fg其中,M是小车的质量,g是重力加速度,Fg是地面反作用力。
如果小车前后和左右两个方向所受的合力相等,那么小车就处于平衡状态。
因此,我们需要确保小车左右两个方向所受的合力相等,这样才能让小车平稳地行驶。
具体实现的方法是通过电机控制小车前后倾斜的角度,使得小车前后所受的重力分量相等,从而达到平衡状态。
其次,我们来看角动量守恒定律。
角动量守恒定律是指当一个物体受到外力作用时,如果它的外力矩为零,那么它的角动量将保持不变。
在自平衡小车中,小车在行驶过程中需要不停地偏转方向,才能实现转弯和直行等操作。
这些方向变化的动作会给小车带来角动量,如果不做任何处理,这些角动量会让小车失去平衡,从而摔倒。
为了避免这种情况的发生,自平衡小车需要通过机械陀螺的原理来保持平衡。
机械陀螺的基本原理是通过快速旋转的转子,使得系统的角动量保持恒定。
类比到自平衡小车中,小车是通过快速旋转的电机和陀螺轮来保持平衡。
当小车受到惯性力的作用时,陀螺轮也会受到相反的惯性力,这种惯性力可以帮助小车保持平衡。
综上所述,自平衡小车的平衡原理基于牛顿第二定律和角动量守恒定律。
通过控制电机使得小车前后倾斜的角度相等,实现小车的平衡。
通过快速旋转的电机和陀螺轮来保持平衡,避免因为方向变化而产生的角动量,以此保证自平衡小车能够在不倒的情况下平稳地行驶。
平衡车的原理
平衡车的原理
平衡车的原理即是依靠陀螺效应来保持平衡。
陀螺效应是指当一个陀螺在转动时,由于转动惯量的作用,陀螺会抵抗外部力的影响而保持平衡。
平衡车内部配备了陀螺仪和加速度传感器。
陀螺仪通过检测车体的倾斜角度,以及角速度的变化,来判断车体是否处于平衡状态。
加速度传感器则用于检测车体的加速度,并根据检测到的结果对车体进行控制。
当乘客乘坐平衡车时,车体会根据乘客的重心位置来判断车体是否处于平衡状态。
如果乘客稍微偏向前方,车体会通过电机系统自动调整车轮的转速,使车体向后倾斜,将乘客的重心位置拉回到平衡点上。
这种自平衡的调整是通过车轮上的电机来完成的。
电机会根据陀螺仪和加速度传感器的反馈信息,实时调整车轮的转速,从而使车体保持平衡状态。
此外,平衡车还配备了一些安全机制,例如过载保护和防倾翻控制。
过载保护能够限制车体的最大倾斜角度,以防止乘客摔倒或发生意外。
防倾翻控制则能够监测车体的倾斜状态,并及时采取措施,避免车体发生翻倒。
总之,平衡车通过利用陀螺效应和相关的传感器技术,能够实现自动调整车体姿态,保持平衡状态,并提供安全的乘坐体验。
自平衡小车原理
自平衡小车原理自平衡小车是一种能够在没有外部支撑的情况下保持平衡的机器人。
它通常由一个底盘、两个驱动轮和一个陀螺仪组成。
自平衡小车的原理基于控制系统和反馈机制,通过不断调整驱动轮的转速来保持平衡。
自平衡小车的核心原理是借助陀螺仪来感知车身的倾斜角度,并通过控制系统对驱动轮进行调整,使车身保持平衡。
陀螺仪是一种能够感知角速度和角度的传感器,它通常由一个旋转的陀螺和一个加速度计组成。
当车身倾斜时,陀螺仪会感知到角度的变化,并将这个信息传递给控制系统。
控制系统是自平衡小车的大脑,它根据陀螺仪的反馈信息来决定如何调整驱动轮的转速。
控制系统通常由一个微处理器和一些传感器组成,它能够实时地处理陀螺仪的数据,并根据预设的算法来控制驱动轮的转速。
当车身倾斜时,控制系统会根据倾斜的方向和角度来调整驱动轮的转速,使车身恢复平衡。
反馈机制是自平衡小车实现平衡的关键。
它通过不断地调整驱动轮的转速来实现平衡。
当车身倾斜时,陀螺仪会感知到这个倾斜角度,并将这个信息传递给控制系统。
控制系统根据这个信息来决定如何调整驱动轮的转速,使车身恢复平衡。
如果车身倾斜得更厉害,控制系统会加大驱动轮的转速,以加快恢复平衡的速度。
反之,如果车身倾斜得较轻,控制系统会减小驱动轮的转速,以保持平衡。
自平衡小车的原理还涉及到一些物理学的知识。
例如,车身倾斜时会产生一个力矩,这个力矩会使车身继续倾斜。
为了抵消这个力矩,驱动轮需要产生一个相反的力矩。
这个力矩可以通过调整驱动轮的转速来实现。
当驱动轮的转速不同,它们会产生不同的力矩,从而使车身恢复平衡。
除了陀螺仪和控制系统,自平衡小车还需要一些其他的组件来实现平衡。
例如,驱动轮通常由电机驱动,电机的转速可以通过控制电流来调整。
此外,自平衡小车还需要一些传感器来感知环境,例如红外线传感器、超声波传感器等。
这些传感器可以帮助自平衡小车避免障碍物,保持安全。
总结起来,自平衡小车的原理是基于控制系统和反馈机制。
平衡小车平衡原理介绍
平衡小车平衡原理介绍平衡小车是一种能够自主实现平衡的机器人车辆。
它的设计原理基于倒立摆控制理论和PID控制算法。
倒立摆是一个经典的控制系统问题,其中一个质点位于一个可以自由旋转的杆的末端,通过控制杆的旋转来使质点保持平衡。
平衡小车的设计就是将这个控制系统原理应用到一个小车上,通过控制小车的前后倾斜来保持平衡。
平衡小车的核心部件是陀螺仪和电机,陀螺仪用于检测小车的倾斜角度,电机用于控制小车的运动。
陀螺仪通常由一个旋转的发光二极管和一个光电传感器组成,当小车倾斜时,发光二极管的旋转速度会发生变化,光电传感器通过检测这个变化来确定小车的倾斜角度。
根据陀螺仪检测到的倾斜角度,控制系统会计算出需要施加在小车上的力矩,然后通过电机来施加这个力矩,使小车保持平衡。
PID控制算法是控制系统中常用的一种调节方法,它通过比较实际输出值和期望输出值的差距,计算出一个控制量来调节系统的输入,使输出尽量接近期望值。
在平衡小车中,PID控制算法根据陀螺仪检测到的倾斜角度来计算出需要施加在小车上的力矩。
计算过程中需要用到三个参数:比例增益(P)、积分时间(I)和微分时间(D)。
比例增益决定了控制量与误差的线性关系,积分时间决定了积分效果的持续时间,微分时间决定了微分效应对控制量的影响。
通过调节这些参数,可以优化控制系统的响应速度和稳定性。
平衡小车的控制系统通常采用闭环控制方式,即系统的输入受到输出的影响。
在控制过程中,控制系统会不断地检测小车的倾斜角度,计算出需要施加在小车上的力矩,并通过电机来实现这个力矩。
控制系统会不断地修正小车的倾斜角度,使其保持在一个稳定的范围内,并自动调节控制量来保持平衡。
然而,平衡小车的平衡原理并不代表它是完美无缺的。
由于存在各种系统误差和外界干扰,平衡小车仍然有可能失去平衡或者发生抖动。
为了提高平衡小车的性能,可以采用一些控制策略,如模糊控制、遗传算法等。
此外,还可以利用传感器反馈和滤波技术来降低系统噪声和干扰对控制系统造成的影响。
平衡车的原理
平衡车的原理
平衡车是一种利用先进的陀螺效应和倾斜传感器来实现平衡的电动车辆。
它的原理基于以下几个关键要素:
1. 陀螺效应:陀螺效应是物体在旋转时对其自身旋转轴的偏向力。
平衡车内置了一个陀螺仪,通过快速地检测车辆的倾斜角度和方向变化,可以感知车辆是否需要进行平衡调整。
2. 倾斜传感器:平衡车还配备了倾斜传感器,用于检测车辆的倾斜角度。
通过实时监测车身的倾斜情况,平衡车可以调整自身的倾斜角度以保持平衡。
3. 控制系统:平衡车的核心是其高效的控制系统。
利用陀螺仪和倾斜传感器提供的信息,控制系统能够准确地计算出车辆在垂直方向上的偏移,并相应地控制车轮的转动速度,以实现平衡。
4. 电子加速器:平衡车配备了电子加速器来控制车辆的加速和减速。
用户只需通过微调加速器的位置,即可调整车辆的行驶速度。
当乘客骑上平衡车时,平衡车会通过陀螺仪和倾斜传感器不断感知车身的倾斜情况,并根据控制系统的指令,精确地控制车轮的速度和转动方向,以保持车辆的平衡。
当乘客向前或向后倾斜时,控制系统会相应地将车轮的转速调整为相反的方向,以抵消乘客的倾斜力,从而保持车辆的平衡状态。
平衡车还可以实现原地旋转和转弯等操作,通过调整车轮的速度差异来实
现。
所有这些操作都是在高速的计算和反馈控制下,实时进行的。
平衡小车平衡原理介绍
平衡原理一、平衡小车原理平衡小车是通过两个电机运动下实现小车不倒下直立行走的多功能智能小车,在外力的推拉下,小车依然保持不倒下。
这么一说可能还没有很直观的了解究竟什么是平衡小车,不过这个平衡小车实现的原理其实是在人们生活中的经验得来的。
如果通过简单的练习,一般人可以通过自己的手指把木棒直立而不倒的放在指尖上,所以练习的时候,需要学会的两个条件:一是放在指尖上可以移动,二是通过眼睛观察木棒的倾斜角度和倾斜趋势(角速度)。
通过手指的移动去抵消木棒倾斜的角度和趋势,使得木棒能直立不倒。
这样的条件是不可以缺一的,实际上加入这两个条件,控制过程中就是负反馈机制。
而世界上没有任何一个人可以蒙眼不看,就可以直立木棒的,因为没有眼睛的负反馈,就不知道笔的倾斜角度和趋势。
这整个过程可以用一个执行式表达:平衡小车也是这样的过程,通过负反馈实现平衡。
与上面保持木棒直立比较则相对简单,因为小车有两个轮子着地,车体只会在轮子滚动的方向上发生倾斜。
控制轮子转动,抵消在一个维度上倾斜的趋势便可以保持车体平衡了。
所以根据上述的原理,通过测量小车的倾角和倾角速度控制小车车轮的加速度来消除小车的倾角。
因此,小车倾角以及倾角速度的测量成为控制小车直立的关键。
我们的平衡小车使用了测量倾角和倾角速度的集成传感器陀螺仪-MPU6050二、角度(物理分析PD算法)图1图2控制平衡小车,使得它作加速运动。
这样站在小车上(非惯性系,以车轮作为坐标原点)分析倒立摆受力,它就会受到额外的惯性力,该力与车轮的加速度方向相反,大小成正比。
这样倒立摆(如图2)所受到的回复力为:公式1 F = mg sin θ-ma cos θ≈mg θ-mk1θ式1中,由于θ很小,所以进行了线性化。
假设负反馈控制是车轮加速度a与偏角θ成正比,比例为k1。
如果比例k1>g,(g是重力加速度)那么回复力的方向便于位移方向相反了。
而为了让倒立摆能够尽快回到垂直位置稳定下来,还需要增加阻尼力。
平衡小车平衡原理介绍
平衡原理一、平衡小车原理平衡小车就是通过两个电机运动下实现小车不倒下直立行走得多功能智能小车,在外力得推拉下,小车依然保持不倒下.这么一说可能还没有很直观得了解究竟什么就是平衡小车,不过这个平衡小车实现得原理其实就是在人们生活中得经验得来得.如果通过简单得练习,一般人可以通过自己得手指把木棒直立而不倒得放在指尖上,所以练习得时候,需要学会得两个条件:一就是放在指尖上可以移动,二就是通过眼睛观察木棒得倾斜角度与倾斜趋势(角速度).通过手指得移动去抵消木棒倾斜得角度与趋势,使得木棒能直立不倒.这样得条件就是不可以缺一得,实际上加入这两个条件,控制过程中就就是负反馈机制.而世界上没有任何一个人可以蒙眼不瞧,就可以直立木棒得,因为没有眼睛得负反馈,就不知道笔得倾斜角度与趋势。
这整个过程可以用一个执行式表达:平衡小车也就是这样得过程,通过负反馈实现平衡.与上面保持木棒直立比较则相对简单,因为小车有两个轮子着地,车体只会在轮子滚动得方向上发生倾斜。
控制轮子转动,抵消在一个维度上倾斜得趋势便可以保持车体平衡了。
所以根据上述得原理,通过测量小车得倾角与倾角速度控制小车车轮得加速度来消除小车得倾角。
因此,小车倾角以及倾角速度得测量成为控制小车直立得关键。
我们得平衡小车使用了测量倾角与倾角速度得集成传感器陀螺仪-MPU6050二、角度(物理分析PD算法)图1图2控制平衡小车,使得它作加速运动。
这样站在小车上(非惯性系,以车轮作为坐标原点)分析倒立摆受力,它就会受到额外得惯性力,该力与车轮得加速度方向相反,大小成正比。
这样倒立摆(如图2)所受到得回复力为:公式1F = mg sin θ-ma cos θ≈mgθ-mk1θ式1中,由于θ很小,所以进行了线性化。
假设负反馈控制就是车轮加速度a与偏角θ成正比,比例为k1.如果比例k1>g,(g就是重力加速度)那么回复力得方向便于位移方向相反了。
而为了让倒立摆能够尽快回到垂直位置稳定下来,还需要增加阻尼力.增加得阻尼力与偏角得速度成正比,方向相反,因此公式1可改为:F = mg θ-mk1θ—mk2θ`按照上述倒立摆得模型,可得出控制小车车轮加速度得算法:a =k1θ+k2θ` 式中θ为小车角度,θ`为角速度。
平衡车平衡原理
平衡车平衡原理
平衡车是一种使用人体重心控制平衡的电动交通工具。
它的平衡原理基于陀螺效应和倾斜角度。
当骑行者体重向前倾斜时,平衡车会自动感知到这个倾斜,并加快前轮的转速,使车身向前倾斜,以保持平衡。
同样地,当骑行者向后仰时,平衡车会减慢前轮的转速,使车身向后倾斜,以保持平衡。
平衡车采用了先进的陀螺仪和加速度传感器。
陀螺仪可以检测车身的倾斜角度,而加速度传感器则可以感知到车身的加速度。
这两个传感器会将数据发送给车辆控制系统,系统会根据这些数据来计算出相应的转速调整,并通过电机来实现转速的调节。
另外一个影响平衡车平衡的因素是重心高度。
重心越高,车辆保持平衡的难度就越大。
因此,平衡车设计的时候通常会采用较低的底盘和电池包的布局,以降低重心。
总而言之,平衡车的平衡原理是基于陀螺效应和倾斜角度的感知和调节。
通过先进的传感器和控制系统,平衡车可以准确地感知骑行者的倾斜动作,并自动调整前轮转速,以保持平衡。
这使得骑行者能够轻松地控制平衡车的前后倾斜,并实现平稳的行驶。
小制作平衡车的原理
小制作平衡车的原理
平衡车的原理基于控制系统和传感器系统。
控制系统通过实时检测车身的倾斜角度并根据倾斜方向进行调整,从而保持车身平衡。
传感器系统通过加速度传感器和陀螺仪来感知车身的倾斜角度和变化速度。
具体的原理如下:
1. 加速度传感器:加速度传感器用于检测车身的倾斜角度。
通过测量重力加速度的分量,可以确定车身在水平面上的倾斜程度。
2. 陀螺仪:陀螺仪用于感知车身的旋转速度。
通过检测车身的角速度,可以判断车身是否在转动以及转动的方向和速度。
3. 控制系统:控制系统根据加速度传感器和陀螺仪的数据来判断车身的倾斜情况。
如果车身倾斜,控制系统会分析倾斜的方向和程度,并通过电动机的转动来调整车身的平衡。
4. 电动机:电动机控制平衡车的移动。
控制系统通过调整电动机的转速和转向来实现车身的平衡调整。
当车身倾斜时,控制系统会以相应的转动方向和速度调整电动机,使车身恢复平衡。
总之,平衡车的原理是通过控制系统和传感器系统实时感知并调整车身的倾斜角度,从而保持平衡。
平衡车什么原理
平衡车什么原理
平衡车是一种可自主保持平衡的电动交通工具。
它的原理可以分为两个主要方面:借助陀螺效应和采用电子控制系统。
首先,平衡车利用了陀螺效应来保持平衡。
陀螺效应是指在物体旋转或移动时,其旋转轴会维持一个相对稳定的方向。
平衡车内部有一个旋转的陀螺仪,当车身倾斜时,陀螺仪内部的旋转轴会自动偏离原本的方向,并通过一系列的机械结构和传感器来感知车身的倾斜角度。
根据倾斜角度的变化,平衡车可以通过调整轮胎的转速或倾斜角度来使自己保持平衡。
其次,平衡车采用电子控制系统来实现平衡和操控。
这个系统通常包括一组倾斜传感器、计算机芯片和电机控制器。
倾斜传感器可以实时感知车身倾斜的角度,并将这些数据传输给计算机芯片。
计算机芯片会对传感器数据进行分析处理,根据车身的倾斜情况,向电机控制器发送指令。
电机控制器负责控制电机的转速,以便调整车身的倾斜角度并保持平衡。
通过上述原理的结合,平衡车能够根据不同的倾斜情况,主动调整轮胎转速或倾斜角度,从而保持平衡状态。
骑手只需要通过身体轻微的倾斜来控制方向,平衡车就能根据倾斜情况做出相应的调整,实现前进、后退、转弯等操控动作。
自平衡小车的原理和硬件9527
一、平衡小车原理:自平衡小车是利用车模自身动力使小车保持相对的平衡,是一个动态平衡的过程。
维持车模平衡的动力来自车轮的运动,由两个直流电机驱动。
对车模的控制可以分解为三个控制任务:1、控制小车平衡:通过控制小车车轮正反转使小车保持直立平衡。
2、控制小车速度:通过控制小车的倾角实现小车前后运动和速度的控制,其实最终的仍是通过控制电机的转速实现。
3、控制小车方向:通过控制小车两个电机之间的转速差来实现转向控制。
分解为三个控制任务显得相对简单一点,但是在最终的控制过程中都归结为对一个控制量的控制,这样三个任务之间就会存在耦合,会相互干扰。
三个任务中控制平衡是关键,所以对小车的速度和方向控制应该尽量的平滑。
二、硬件方案设计小车的硬件分为三个部分,分别是主控部分、小车姿态获取部分以及电机驱动部分。
主控板采用目前常用的arduino UNO,同时也可以使用其他arduino通用控制板做主控。
小车姿态获取可以有很多方案,使用最多的就是通过加速度计和陀螺仪获取小车姿态。
理论上只需要两轴加速度计(垂直方向Z轴和沿小车运动方向X轴)和一个单轴陀螺仪(沿小车车轮轴方向,获取绕小车轮轴的角速度)。
陀螺仪通过角度积分可以获得小车角度,但是经过积分会产生累计误差,并且会越来越大,X轴与Z轴加速度计的值也可以算出小车的倾角,但是加速度计的瞬时误差较大,所以结合陀螺仪和加速度计两者获得的角度做数据融合可得真实角度。
我们使用一个集成了三轴加速度计和三轴陀螺仪的集成芯片MPU6050,这样极大的简化了我们的传感器电路。
小车通过两个直流电机驱动车轮运动来获得动力,直流电机的驱动电路设计关系到整个系统的稳定性,因为电机反转时会产生反向电动势会干扰到电源系统内其他设备的运行。
我们选用L298P做电机驱动器,它内部包含4通道逻辑驱动电路,可同时驱动两个直流电机,输出电流可达2.5A。
三、软件设计之小车姿态获取---卡尔曼滤波在开始之前应该对MPU6050进行设置,主要设置角速度以及加速度的量程,加速度量程有±2g、±4g±8g与±16g,角速度量程分别为±250、±500、±1000与±2000°/sec (dps),可准确的追踪快速动作与慢速动作。
平衡小车工作原理
平衡小车工作原理
平衡小车是一种能够保持平衡并移动的智能机器人。
它的工作原理可以分为两个主要部分:传感器和控制系统。
传感器部分:
1. 加速度传感器:平衡小车通常配备有三轴加速度传感器来检测加速度的变化。
这些传感器可以测量小车的倾斜角度,并将这些数据传输给控制系统。
2. 陀螺仪:平衡小车上的陀螺仪用于测量旋转角速度。
它通过检测小车的旋转变化来帮助维持平衡状态。
3. 编码器:设在电机上的编码器可测量车轮旋转的速度,这对控制小车的运动十分重要。
控制系统部分:
1. 微处理器:平衡小车上的微处理器执行控制算法。
它获取传感器数据,进行计算并生成控制信号来控制电机的速度和方向。
2. PID控制算法:平衡小车通常使用PID(Proportional-Integral-Derivative)控制算法。
这种算法通过比较当前的倾斜
角度和目标参考角度,利用比例、积分和微分项来调整电机速度和方向,以保持平衡状态。
3. 电机:平衡小车上通常搭载两个电机,它们控制车轮的速度和方向。
控制系统根据传感器数据和算法输出的信号来控制电机的工作,以保持平衡状态。
根据传感器数据,控制系统通过调整电机的速度和方向来反馈给小车倾斜角度的变化,从而使小车能够保持平衡。
当小车倾斜时,控制系统将相应地调整电机的工作,使倾斜角度减小。
通过不断地对小车进行调整,控制系统能够让小车保持平衡并前进或后退。
平衡车工作原理
平衡车工作原理平衡车,又称为电动平衡车或自平衡车,是一种个人代步工具,它能够通过倾斜身体来控制行驶方向和速度。
平衡车的工作原理源自于陀螺仪和加速度传感器的技术,它们通过感知身体的倾斜和动作来实现车辆的平衡和操控。
本篇文章将详细介绍平衡车的工作原理。
1. 陀螺仪技术陀螺仪是平衡车中至关重要的传感器之一。
它可以检测车体的倾斜角度和变化速度,然后向控制系统传递这些数据。
通过陀螺仪的计算和分析,控制系统可以准确地判断车体的位置和姿态,并做出相应的调整。
2. 加速度传感器技术加速度传感器是平衡车另一个重要的传感器。
它可以感知车体的加速度和变化速度,从而帮助控制系统了解车体的运动状态。
加速度传感器通过检测车体的加速度变化,提供精确的数据给控制系统,以便系统能够做出准确的反应。
3. 控制系统控制系统是平衡车的“大脑”,它负责处理从陀螺仪和加速度传感器获取的数据,并将其转化为相应的指令,以控制电机的工作。
控制系统能够实时判断车体的倾斜程度和速度变化,并通过调整电机的转速和扭矩来保持平衡。
当骑行者倾斜身体向前或向后时,控制系统会根据倾斜角度和速度变化来控制电机的转动,使平衡车向前或向后行驶。
4. 电机系统电机是平衡车的动力来源,它通过控制系统的指令来调节转速和输出扭矩,从而控制车辆的运动。
平衡车通常采用直流电机,它们具有高效率和灵活性。
根据控制系统的要求,电机会根据相应的指令来产生适当的扭矩,以实现平衡车的平稳行驶。
5. 电池系统电池是提供平衡车能量的重要组成部分。
平衡车通常使用锂电池作为电源,这种电池具有高能量密度和长寿命。
电池系统不仅提供电机所需的电能,还为控制系统、传感器和其他电子元件提供电力。
平衡车的续航里程和性能很大程度上取决于电池系统的质量和容量。
综上所述,平衡车工作的关键在于陀螺仪和加速度传感器的技术,通过感知和分析车体的倾斜和加速度变化,控制系统可以精确地判断并调整车体的平衡。
控制系统通过指令调节电机的转速和扭矩,从而实现平衡车的平稳行驶。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
平衡原理一、平衡小车原理平衡小车是通过两个电机运动下实现小车不倒下直立行走的多功能智能小车,在外力的推拉下,小车依然保持不倒下。
这么一说可能还没有很直观的了解究竟什么是平衡小车,不过这个平衡小车实现的原理其实是在人们生活中的经验得来的。
如果通过简单的练习,一般人可以通过自己的手指把木棒直立而不倒的放在指尖上,所以练习的时候,需要学会的两个条件:一是放在指尖上可以移动,二是通过眼睛观察木棒的倾斜角度和倾斜趋势(角速度)。
通过手指的移动去抵消木棒倾斜的角度和趋势,使得木棒能直立不倒。
这样的条件是不可以缺一的,实际上加入这两个条件,控制过程中就是负反馈机制。
而世界上没有任何一个人可以蒙眼不看,就可以直立木棒的,因为没有眼睛的负反馈,就不知道笔的倾斜角度和趋势。
这整个过程可以用一个执行式表达:平衡小车也是这样的过程,通过负反馈实现平衡。
与上面保持木棒直立比较则相对简单,因为小车有两个轮子着地,车体只会在轮子滚动的方向上发生倾斜。
控制轮子转动,抵消在一个维度上倾斜的趋势便可以保持车体平衡了。
所以根据上述的原理,通过测量小车的倾角和倾角速度控制小车车轮的加速度来消除小车的倾角。
因此,小车倾角以及倾角速度的测量成为控制小车直立的关键。
我们的平衡小车使用了测量倾角和倾角速度的集成传感器陀螺仪-MPU6050二、角度(物理分析PD算法)图1图2控制平衡小车,使得它作加速运动。
这样站在小车上(非惯性系,以车轮作为坐标原点)分析倒立摆受力,它就会受到额外的惯性力,该力与车轮的加速度方向相反,大小成正比。
这样倒立摆(如图2)所受到的回复力为:公式1 F = mg sin θ-ma cos θ≈mg θ-mk1θ式1中,由于θ很小,所以进行了线性化。
假设负反馈控制是车轮加速度a与偏角θ成正比,比例为k1。
如果比例k1>g,(g是重力加速度)那么回复力的方向便于位移方向相反了。
而为了让倒立摆能够尽快回到垂直位置稳定下来,还需要增加阻尼力。
增加的阻尼力与偏角的速度成正比,方向相反,因此公式1可改为:F = mg θ-mk1θ -mk2θ`按照上述倒立摆的模型,可得出控制小车车轮加速度的算法:a =k1θ+k2θ` 式中θ为小车角度,θ`为角速度。
k1 k2都是比例系数根据上述内容,建立速度的比例微分负反馈控制,根据基本控制理论讨论小车通过闭环控制保持稳定的条件(这里需要对控制理论有基本了解)。
假设外力干扰引起车模产生角加速度x(t)。
沿着垂直于车模地盘方向进行受力分析,可以得到车模倾角与车轮运动加速度以及外力干扰加速度a(t)x(t)之间的运动方程。
如图3所示。
图3在角度反馈控制中,与角度成比例的控制量是称为比例控制;与角速度成比例的控制量称为微分控制(角速度是角度的微分)。
因此上面系数k1,k2分别称为比例和微分控制参数。
其中微分参数相当于阻尼力,可以有效抑制车模震荡。
通过微分抑制控制震荡的思想在后面的速度和方向控制中也同样适用。
总结控制车模直立稳定的条件如下:(1)能够精确测量车模倾角θ的大小和角速度θ'的大小;(2)可以控制车轮的加速度。
上述控制实际结果是小车与地面不是严格垂直,而是存在一个对应的倾角。
在重力的作用下,小车会朝着一个方面加速前进。
为了保持小车的静止或者匀速运动需要消除这个安装误差。
在实际小车制作过程中需要进行机械调整和软件参数设置。
另外需要通过软件中的速度控制来实现速度的稳定性。
在小车角度控制中出现的小车倾角偏差,使得小车在倾斜的方向上产生加速。
这个结果可以用来进行小车的速度控制。
下面将利用这个原理来调节小车的速度。
三、测速(物理模型建立数学模型传递函数PD算法)假设小车在上面直立控制调节下已经能够保持平衡了,但是由于安装误差,传感器实际测量的角度与车模角度有偏差,因此小车实际不是保持与地面垂直,而是存在一个倾角。
在重力的作用下,小车就会朝倾斜的方向加速前进。
控制速度只要通过控制小车的倾角就可以实现了。
具体实现需要解决三个问题:(1)如何测量小车速度?(2)如何通过小车直立控制实现小车倾角的改变?(3)如何根据速度误差控制小车倾角?第一个问题可以通过安装在电机输出轴上的光码盘来测量得到小车的车轮速度。
如图4所示。
利用控制单片机的计数器测量在固定时间间隔内速度脉冲信号的个数可以反映电机的转速。
图4第二个问题可以通过角度控制给定值来解决。
给定小车直立控制的设定值,在角度控制调节下,小车将会自动维持在一个角度。
通过前面小车直立控制算法可以知道,小车倾角最终是跟踪重力加速度Z 轴的角度。
因此小车的倾角给定值与重力加速度Z轴角度相减,便可以最终决定小车的倾角第三个问题分析起来相对比较困难,远比直观进行速度负反馈分析复杂。
首先对一个简单例子进行分析。
假设小车开始保持静止,然后增加给定速度,为此需要小车往前倾斜以便获得加速度。
在小车直立控制下,为了能够有一个往前的倾斜角度,车轮需要往后运动,这样会引起车轮速度下降(因为车轮往负方向运动了)。
由于负反馈,使得小车往前倾角需要更大。
如此循环,小车很快就会倾倒。
原本利用负反馈进行速度控制反而成了“正”反馈。
为什么负反馈控制在这儿失灵了呢?原来在直立控制下的小车速度与小车倾角之间传递函数具有非最小相位特性(在此省略了分析),在反馈控制下容易造成系统的不稳定性。
为了保证系统稳定,往往取的小车倾角控制时间常数Tz很大。
这样便会引起系统产生两个共轭极点,而且极点的实部变得很小,使得系统的速度控制会产生的震荡现象。
这个现象在实际参数整定的时候可以观察到。
那么如何消除速度控制过程中的震荡呢?要解决控制震荡问题,在前面的小车角度控制中已经有了经验,那就是在控制反馈中增加速度微分控制。
但由于车轮的速度反馈信号中往往存在着噪声,对速度进行微分运算会进一步加大噪声的影响。
为此需要对上面控制方法进行改进。
原系统中倾角调整过程时间常数往往很大,因此可以将该系统近似为一个积分环节。
将原来的微分环节和这个积分环节合并,形成一个比例控制环节。
这样可以保持系统控制传递函数不变,同时避免了微分计算。
但在控制反馈中,只是使用反馈信号的比例和微分,没有利误差积分,所以最终这个速度控制是有残差的控制。
但是直接引入误差积分控制环节,会增加系统的复杂度,为此就不再增加积分控制,而是通过与角度控制相结合后在进行改进。
要求小车在原地停止,速度为0。
但是由于采用的是比例控制,如果此时陀螺仪有漂移,或者加速度传感器安装有误差,最终小车倾角不会最终调整到0,小车会朝着倾斜的方向恒速运行下去。
注意此时车模不会像没有速度控制那样加速运行了,但是速度不会最终为0。
为了消除这个误差,可以将小车倾角设定量直接积分补偿在角度控制输出中,这样就会彻底消除速度控制误差。
第二点,由于加入了速度控制,它可以补偿陀螺仪和重力加速度的漂移和误差。
所以此时重力加速度传感器实际上没有必要了。
此时小车在控制启动的时候,需要保持小车的垂直状态。
此时陀螺仪的积分角度也初始化为0。
当然如果电路中已经包括了重力加速度传感器,也可以保留这部分,从而提高小车的稳定性。
在后面的最终给定的控制方案中,保留了这部分的控制回路。
四、转向控制(PD算法)通过左右电机速度差驱动小车转向消除小车距离道路中心的偏差。
通过调整小车的方向,再加上车前行运动,可以逐步消除小车距离中心线的距离差别。
这个过程是一个积分过程,因此小车差动控制一般只需要进行简单的比例控制就可以完成小车方向控制。
但是由于小车本身安装有电池等比较重的物体,具有很大的转动惯量,在调整过程中会出现小车转向过冲现象,如果不加以抑制,会使得小车过度转向而倒下。
根据前面角度和速度控制的经验,为了消除小车方向控制中的过冲,需要增加微分控制。
五、全方案整合通过上面介绍,将车模直立行走主要的控制算法集中起来,如图5图5为了实现小车直立行走,需要采集如下信号:(1)小车倾角速度陀螺仪信号,获得小车的倾角和角速度。
(2)重力加速度信号(z轴信号),补偿陀螺仪的漂移。
该信号可以省略,有速度控制替代。
(3)小车电机转速脉冲信号,获得小车运动速度,进行速度控制。
(4)小车转动速度陀螺仪信号,获得小车转向角速度,进行方向控制。
在小车控制中的直立、速度和方向控制三个环节中,都使用了比例微分(PD)控制,这三种控制算法的输出量最终通过叠加通过电机运动来完成。
(1)小车直立控制:使用小车倾角的PD(比例、微分)控制;g_fAngleControlOut = g_fCarAngle * g_fCarAngle_P + \ gyro[0] * g_fCarAngle_D ;(2)小车速度控制:使用PD(比例、微分)控制;g_fSpeedControlOutNew = (CAR_SPEED_SET - g_fCarSpeed) * g_fCarSpeed_P +\(CAR_POSITION_SET - g_fCarPosition) * g_fCarSpeed_I; (3)小车方向控制:使用PD(比例、微分)控制。
speednow=-speedtarget*3.4 -gyro[2]*0.0015 ;可通过单片机软件实现上述控制算法。
在上面控制过程中,车模的角度控制和方向控制都是直接将输出电压叠加后控制电机的转速实现的。
而车模的速度控制本质上是通过调节车模的倾角实现的,由于车模是一个非最小相位系统,因此该反馈控制如果比例和速度过大,很容易形成正反馈,使得车模失控,造成系统的不稳定性。
因此速度的调节过程需要非常缓慢和平滑。
六、PID算法图6控制相关的软件函数包括:1.AngleCalculate:小车倾角计算函数。
根据采集到的陀螺仪和重力加速度传感器的数值计算小车角度和角速度。
如果这部分的算法由外部一个运放实现,那么采集得到的直接是小车的角度和角速度,这部分算法可以省略。
该函数是每5毫秒调用一次。
2.AngelControl:小车直立控制函数。
根据小车角度和角速度计算小车电机的控制量。
直立控制是5毫秒调用一次。
3.SpeedControl:小车速度控制函数。
根据小车采集到的电机转速和速度设定值,计算电机的控制量。
该函数是40毫秒调用一次。
4.MotorOutput:电机输出量汇集函数。
根据前面的直立控制、速度控制和方向控制所得到的控制量进行叠加,分别得到左右两个电极的输出电压控制量。
对叠加后的输出量进行饱和处理。
函数调用周期5毫秒。
在此请大家注意速度控制量叠加的极性是负。
5.MotorSpeedOut:电机PWM输出计算函数。
根据左右两个电极的输出控制量的正负极性,叠加上一个小的死区数值,克服车模机械静态摩擦力。
函数调用周期5毫秒。
6.SetMotorVoltage:PWM输出函数:根据两个电机的输出量,计算出PWM控制寄存器的数值,设置四个PWM控制寄存器的数值。