精华内容
下载资源
问答
  • pid调参

    2021-03-18 14:59:32
    1.5, //P 比例 0.1, //I 积分 0.05 //D 微分 期望100 1.5/0.1/0.05 2ms控制周期 期望100 1.5/0.1/0.05 10ms控制周期 1.5/0.1/0 1.5/0.1/0.2 1.5/0.1/0.75
    	1.5,        //P 比例
    	0.1, 		//I 积分
    	0.05		//D 微分
    

    期望100 1.5/0.1/0.05 2ms控制周期
    在这里插入图片描述

    期望100 1.5/0.1/0.05 10ms控制周期
    在这里插入图片描述
    在这里插入图片描述
    1.5/0.1/0
    在这里插入图片描述
    1.5/0.1/0.2
    在这里插入图片描述
    1.5/0.1/0.75
    在这里插入图片描述

    展开全文
  • PID调参软件

    2018-04-14 17:03:00
    //需要配套PID调参上位机使用,在不下载程序的情况下进行调参,方便、节省时间 //可调节直立PD参数、速度PI参数、方向PD参数、陀螺仪零偏及目标速度等参数,可自定义参数 //使小车在不停车的情况下自己调整参数,...
  • 在Simulink中使用PID Tuner进行PID调参

    万次阅读 多人点赞 2019-08-15 13:54:42
    在Simulink中使用PID Tuner进行PID调参 1.PID调参器( PID Tuner)概述 1.1 简介 使用PID Tuner可以对Simulink模型中的PID控制器,离散PID控制器,两自由度PID控制器,两自由度离散PID控制器进行调参,实现控制性能...

    在Simulink中使用PID Tuner进行PID调参

    1.PID调参器( PID Tuner)概述

    1.1 简介

    使用PID Tuner可以对Simulink模型中的PID控制器,离散PID控制器,两自由度PID控制器,两自由度离散PID控制器进行调参,实现控制性能和健壮性的良好平衡。在使用PID Tuner的时候,它会自动做一些工作:

    • 自动计算被控装置的线性模型。PID Tuner会将PID控制块输入和输出之间所有Simulink块的组合看作为一个被控装置,因此被控装置将会包括控制环中所有块体,不仅仅是控制器本身。
    • 自动给出一个经过控制性能和鲁棒性(健壮性)平衡的初始PID控制设计。这个过程基于经过线性化的被控装置模型的开环频率响应特性。
    • 提供交互性工具和响应曲线来帮助设计满足要求的PID控制系统。

    1.2 PID Tuner 使用场景

    • 自动地、交互性地对位于单环、单位反馈的系统前向通路中的单输入单输出(SISO)PID控制器进行调参。

    • 自动地、交互性地调整如下例子中位于环形结构中的两自由度PID控制器参数:

      两自由度PID控制器

    • 交互性地使用SISO系统的响应数据来拟合一个控制原型并自动进行调参从而得到最终的控制模型。 (需要System Identification Toolbox工具)

    1.3 应用 PID Tuner 的典型设计流程:

    (1)启动 PID Tuner 。在启动的时候,这个软件将会从Simulink模型自动计算得到一个被控装置的线性近似模型并生成一个初始的PID控制器。

    (2)通过在两个设计模型(上述的线性近似模型和原始控制器模型)中手动调节设计准则(设计偏好)来调整PID Tuner的参数,PID Tuner会计算出使系统稳定的PID参数。

    (3)从设计好的控制模型中导出参数到原始被控装置的PID控制器中,在Simulink中验证PID控制器表现是否符合要求。

    1.4 PID Tuner对被控装置的近似

    PID Tuner会将PID控制块输入和输出之间所有块的组合看作为一个被控装置。在被控装置中使用的Simulink块可以是非线性的,但是因为自动调参需要使用一个线性模型,PID Tuner会给出一个被控装置的线性化近似模型来代替原来包含非线性部分的装置模型。这个线性化的模型是对非线性系统的近似,并且在原系统给定工作点的邻域内有效。

    默认情况下,PID Tuner对装置进行线性化的时候,将使用在Simulink模型中配置的初始条件作为近似装置的工作点,然后根据近似装置设计一个初始PID控制器。

    但是有时需要为一个工作点不是模型初始条件的装置设计PID控制器,比如:

    • Simulink模型在初始条件下工作没有达到稳态,而PID控制器是针对稳态设计的。
    • 在增益调节应用中需要设计多个控制器,且要求每个控制器的工作点不相同。

    在这些情况下,需要在PID Tuner中改变近似装置的工作点。限于篇幅,这里暂不做讨论。

    1.5 PID调参算法简介

    典型PID调参目标包括:

    • 闭环稳定性。即闭环系统对于有界输入保持输出有界。

    • 足够的性能。闭环系统跟踪参考信号变化和对干扰的抑制要尽可能快,拥有更大的环路带宽(单位开环增益)以及对参考信号变化和干扰有更快的响应速度。

    默认情况下,PID Tuner内置的PID调参算法将基于装置的动力学模型选择穿越频率(环路带宽)并且设计目标相位裕度为60°。每次在PID Tuner中改变PID控制器的响应时间、带宽、过渡特性(超调等)以及相位裕度时,调参算法都会重新计算PID增益。

    如果给定健壮性指标(最小相位裕度),调参算法将会给出一个经过参考信号跟踪性能和干扰抑制性能平衡的控制器设计。如果需要更改设计偏好(design focus),可以在PID Tuner的Options 选项中进行设置。
    更改PID Tuner设计偏好

    当调整设计偏好的时候,调参算法将会尝试调整增益来满足跟踪性能或者干扰抑制性能中的一项(取决于设计偏好),同时实现与之前相同的最小相位裕度。系统中的可调参数越多,越有可能在不牺牲鲁棒性的情况下得到期望的 PID控制算法。例如,对PID控制器设置设计偏好比对P控制器或者PI控制器设置更有效。在任何时候,调整控制系统性能很大程度上依赖于被控装置的特性,对于一些装置,调整设计偏好是没有用的。

    第二部分 PID Tuner 自动调参实践

    2.1 打开一个示例模型

    MATLAB命令行中打开一个引擎速度控制器模型来进行操作:

    open_system('scdspeedctrlpidblock')
    

    打开如图所示系统:

    打开一个控制模型示例

    2.2 设计概要

    设计一个PI控制器完成引擎速度控制。设计目标是跟踪一个来自Simulink step block的参考信号scdspeedctrlpidblock/Speed Reference。设计要求如下:

    • 过渡时间小于5秒。
    • 稳态误差为0。

    在这个例子中,通过在 PID Tuner中设计PI控制器 scdspeedctrl/PID 来稳定反馈回路并实现对参考信号的良好跟踪。

    2.3 打开PID Tuner

    双击PID控制块来打开一个对话框。在Main这个选项中点击Tune

    打开PID Tuner

    2.4 初始化PID设计

    PID Tuner启动时,它会自动识别出被控装置的输入和输出,计算得出装置的线性近似模型。原始被控装置可以有任意的阶数和延时。PID Tuner将计算出一个控制性能和健壮性经过合理折中的初始PI控制器。默认情况下,阶跃参考信号跟踪性能将会用曲线展示出来。下图展示 了PID Tuner给出的初始PI控制模型:

    初始化PID设计

    2.5 显示PID参数

    点击 Show parameters 来显示控制参数PI以及一系列控制性能和健壮性的度量指标。

    显示PID参数的按钮

    PID参数

    在这个例子中,初始PI控制器的过渡时间为2秒,满足设计要求。

    2.6 在 PID Tuner中调整PID 设计

    参考信号跟踪响应的超调大概为2.5%。因为在满足过渡时间要求的前提下还有一些余量,我们可以通过增加响应时间来减小超调。向左移动响应时间滑块来增加闭环系统的响应时间。注意在调整响应时间的时候,响应曲线和控制器参数以及性能指标也在不断更新。下图展示了调整后的PID设计,此时超调为零,过渡时间为3.6秒。这个设计好的控制器已经满足设计要求。

    PID设计调整滑块

    调整后的曲线

    调整后的参数

    2.7 进行性能折中

    为了在过渡时间小于2秒的情况下实现零超调,需要同时调节响应时间和瞬态特性滑块。我们需要控制器的响应更快以缩短过渡时间,增加控制器的健壮性来减小超调。例如,将响应时间从3.4秒减小到1.5秒同时将健壮性从0.6增加到0.72。下图展示了进行上述设置后的闭环响应。

    闭环响应

    响应数据

    2.8 将调整好的的参数写入原始装置的PID控制块中

    在经过线性近似的装置模型上得到性能满意的控制器之后,还需要在原来的非线性装置上进行检验。在PID Tuner中点击Update Block按钮,把调好的参数写入Simulink模型中的PID控制器。

    更新后的PID控制器响应

    更新后的PID控制器参数如图:

    更新后的PID参数注意:在PID Tuner中调好的PID参数必须写入原控制模型的PID控制器才能生效。

    2.9 验证设计

    因为PID Tuner中使用的控制模型是原控制模型的线性化近似,所以必须在原控制模型中对PID Tuner得到的参数做验证。
    设计好的闭环系统响应如图所示:

    设计好的PID控制器模型响应

    设计好的系统满足设计要求:

    • 过渡时间小于5秒。
    • 稳态误差为0
    展开全文
  • PID调参口诀

    千次阅读 2018-09-18 14:11:57
    PID调参口诀 PID常用口诀: 参数整定找最佳,从小到大顺序查, 先是比例后积分,最后再把微分加, 曲线振荡很频繁,比例度盘要放大, 曲线漂浮绕大湾,比例度盘往小扳, 曲线偏离回复慢,积分时间往下降, 曲线波动...

    PID调参口诀

    PID常用口诀:
    参数整定找最佳,从小到大顺序查,
    先是比例后积分,最后再把微分加,
    曲线振荡很频繁,比例度盘要放大,
    曲线漂浮绕大湾,比例度盘往小扳,
    曲线偏离回复慢,积分时间往下降,
    曲线波动周期长,积分时间再加长,
    曲线振荡频率快,先把微分降下来,
    动差大来波动慢,微分时间应加长,
    理想曲线两个波,前高后低四比一,
    一看二调多分析,调节质量不会低。

    参考博客:https://blog.csdn.net/rrxxzz/article/details/52014937

    展开全文
  • px4官网调参指南 多旋翼无人机PID调参指南

    万次阅读 多人点赞 2017-02-13 21:31:39
    译文部分:多旋翼无人机PID调参指南不用碳化纤维或增强碳化纤维桨调整多轴,不使用损坏的桨片。 出于安全考虑,系统默认增益都设置的比较小。请增加增益以便获取更好的控制响应。 本指导方案适用于所有的多轴飞行...

    译文部分:

    多旋翼无人机PID调参指南

    不用碳化纤维或增强碳化纤维桨调整多轴,不使用损坏的桨片。
    出于安全考虑,系统默认增益都设置的比较小。请增加增益以便获取更好的控制响应。
    本指导方案适用于所有的多轴飞行器。比例,积分,微分控制(PID)是最广泛的控制技术。对于典型的预估性控制而言,PID控制实质上优于执行性控制技术,比如,线性二次型调节器(Linear Quadratic Regulator) 与线性二次高斯(linear quadratic gaussian),因为这些技术都或多或少的需要系统的精确模型,所以得不到广泛的使用。PX4的目的是在个人电脑上实现设备的尽可能快速的控制,因为不是所有的被控对象的系统模型都是可获得的,因此PID调参是非常有意义的,并且PID控制适用于所有情况。
    介绍
    PX4采用双闭环PID控制,其外环为角度(angle)控制,角度值是由滤波与姿态解算后得到的欧拉角,有延迟且存在误差,所以单纯的单闭环无法实现姿态控制过程。所以需要引入内环,内环选择角速度(rate)控制,角速度由陀螺仪直接测量得到,误差小,响应快,延迟短。所以,综上,整个控制系统外环选择纯比例控制,没有I,D,所以参数只有三个方向的P;内环选择PID控制器,参数有P,I,D三个量;同时方向控制上还引入了前馈控制,所以还有一个参数为MC_YAW_FF
    file:///C:\Users\ADMINI~1\AppData\Local\Temp\ksohtml\wps4638.tmp.jpg
    PX4地面站外环执行的飞行器角度控制 ,依靠的参数有:
    Roll control (MC_ROLL_P)
    Pitch control (MC_PITCH_P)
    Yaw control (MC_YAW_P)
    内环使用三个独立的PID控制器实现飞行器姿态控制:
    Roll rate control (MC_ROLLRATE_P, MC_ROLLRATE_I, MC_ROLLRATE_D)
    Pitch rate control (MC_PITCHRATE_P, MC_PITCHRATE_I, MC_PITCHRATE_D)
    Yaw rate control (MC_YAWRATE_P, MC_YAWRATE_I, MC_YAWRATE_D)
    外环输出以机身期望姿态比例为准(如果机身期望姿态为水平状态但是当前横滚方向有三十度的倾角,那么此时控制器将以每次60度输出)。内环速率控制改变电机转速以便飞行器以期望角速率旋转。
    实质上增益具有直观的物理意义,比如,如果参数MC_ROLL_P增益为6,那么飞行器将以3弧度(170度)补偿0.5弧度(30度)的偏差。如果内环MC_ROLLRATE_P增益为0.1,那么内环输出为3乘0.1=0.3(外环输出输入给内环,进过PID控制后输出,若只有P=0.1,输入3,那么输出0.3)这意味着飞行器将降低一侧电机的转速,增加另一侧电机的转速使其恢复水平状态。
    同样的,对于MC_YAW_FF参数,用于控制多大的用户输入用于前馈补偿给偏航速率控制器。0意味着非常慢的控制。控制器只能在检测到偏航位置误差时才开始修正。1意味着快速的响应,但是有超调,控制将执行的非常快速,误差总是保持在0附近。
    电机幅值限制
    正如上面的例子所展示的,在某些情况下会出现某种可能使得电机得到一个比其上限还要大的输入或者一个比0还要小的输入。如果这种情况发生,电机违背控制模型产生的升力可能会使飞行器翻筋斗。为了防止这种情况发生,PX4中加入了油门限幅。如果其中一个电机的转速偏离安全范围,系统总体推力将被变低以便控制器输出的相关比率达到一个期望值。其结果会是电机转速不会增加甚至降低,但是永远不会翻。

    第一步 准备

    首先设置所有参数到初始值。
    1 设置所有的MC_XXX_P到0(roll,pitch,yaw)
    2 除了MC_ROLLRATE_P与MC_PITCHRATE_P之外的所有MC_XXXRATE_P,I,D归零。
    3 设置MC_ROLLRATE_P与MC_PITCHRATE_P到一个很小的值,比如0.02
    4 设置MC_YAW_FF到0.5
    所有参数缓慢增加,每次增加约百分之20到30,在最后调试时甚至可以降低到百分之10,。
    注意:过大的增益(甚至仅仅比理想值多1.5到2倍)都可能导致大的抖动。

    第二步 稳定俯仰和翻滚速率

    P增益调节
    参数:MC_ROLLRATE_P, MC_PITCHRATE_P
    如果飞行器结构对称,那么ROLL与PITCH的概念应该等价,如果不对称,则应该分开讨论。
    把飞行器拿在手中,中油门上下,到刚好平衡重力。向俯仰或翻滚方向上稍做倾斜,观察反应。(我不明白这个是怎么实现的,用手托着吧,飞行器平稳时升力最大,不会飞起来,那么有偏角了升力减小,更不会飞起来。但是这也太危险了吧,建议用细绳拉住两颗电机,不要用手)飞行器应该温和的抵抗倾斜过程,但保持倾斜角之后不会尝试恢复水平姿态。如果出现震荡,降低P。如果反应正确但非常慢,调大P直到开始出现抖动。重新调回P到稍稍有一点抖动甚至不再抖动(大概回调百分之十),到稍稍超调,典型值一般为0.1。
    D增益调节
    参数:MC_ROLLRATE_D, MC_PITCHRATE_D
    如果参数处于某一值时,飞行器稍微抖动并且P值已经适量的减少。从0.01开始缓慢增加RATE_D直到消除最后一点震荡。如果此时飞行器又一次出现抖动,那就是D值过大。(一定会出现由抖动到平稳的过程,D值再大才会再次抖动,所以调参是不能着急,一点点增加,不然可能错过理想值)一般通过调节P与D就可以得到比较良好的电机响应。RATE_D的典型值一般在0.01–0.02
    在QGoundControl可以锁定pitch与roll的速率。一定不能出现震荡,但是百分之十到二十的超调是允许的。
    I增益调节
    如果飞行器可以实现定点但是定点的位置与期望存在误差,那么增加MC_ROLLRATE_I 和MC_PITCHRATE_I(上面一句的翻译是个人想法,原句是never reach the setpoint but have an offset。我觉得它的意思是实现了悬停,但是此时的点不是想要的点,所以说,按照个人想法,I值并没有什么用处,我不会在乎悬停之后的误差)以增益MC_ROLLRATE_P的值得百分之五到百分之十开始向上增加。

    第三步 稳定翻滚与俯仰角度

    参数 MC_RATE_P, MC_RATE_P
    把飞行器拿在手中,中油门上下,到刚好平衡重力。向俯仰或翻滚方向上稍做倾斜,观察反应。飞行器应该缓慢回到水平。如果出现抖动,减小P。如果反应正确但非常慢,调大P直到开始出现抖动。最佳的反应应该是超调10%–20%后得到良好的响应。
    在QGoundControl可以锁定pitch与roll。姿态角度超调不要超过10%–20%.

    第四步 稳定航向速率

    P增益调节
    参数:MC_YAWRATE_P
    设置很小的MC_YAWRATE_P,比如0.1。
    把飞行器拿在手中,中油门上下,到刚好平衡重力。转动飞行器方向轴,观察反应。电机声音应该发生改变,飞行器应该阻碍方向变化。但是这个响应应该弱于俯仰与横滚方向,这是正常现象。如果飞行器出现抖动,减小MC_YAWRATE_P。如果响应非常剧烈甚至在小幅转动(full throttle spinning vs idle spinning propellers不懂这句什么意思),减小P。典型值大概为0.2–0.3。(四轴因为其结构,导致航向上的不灵敏,yaw-p要小于pitch与roll)
    在航向的速率控制中,如果响应非常强烈或出现震荡,会影响俯仰和横滚方向的响应。统筹调节pitch,roll,yaw达到平衡。

    第五步 稳定航向角

    把飞行器拿在手中,中油门上下,到刚好平衡重力。转动飞行器方向轴,观察反应。飞行器应该缓慢的回到初始方向。如果飞行器出现抖动,减小P。当响应正确但速度慢,增加P直到反应达到稳定,但不要出现震荡。典型值大概为2–3。
    在QGoundControl观察ATTITUDE.yaw。超调不应该超过2%–5%.小于pitch与
    Roll。(个人认为,航向上不用太较真啦,不影响另外两个就好)
    前馈补偿调节
    参数 MC_YAW_FF
    这个参数不太重要,并且可以在飞行过程中调节。但是不理想的参数会使响应变慢或过快。应该调节MC_YAW_FF使飞行器得到良好的响应过程。其有效范围0–1,典型值大概为0.8–0.9。(有时为了航拍效果考虑,可以再改小MC_YAW_FF,以便得到平滑的响应过程)
    在QGoundControl观察ATTITUDE.yaw。超调不应该超过2%–5%.小于pitch与
    Roll。

    外文部分:

    Multirotor PID Tuning Guide
    NEVER do multirotor tuning with carbon fiber or carbon fiber reinforced blades. NEVER use damaged blades.
    For SAFETY reason, the default gains are set to small value. You HAVE TO increase the gains before you can expect any control responses.
    This tutorial is valid for all multi rotor setups (AR.Drone, PWM Quads / Hexa / Octo setups). Proportional, Integral, Derivative controllers are the most widespread control technique. There are substantially better performing control techniques (LQR/LQG) from the model predictive control, since these techniques require a more or less accurate model of the system, they not as widely used. The goal of all PX4 control infrastructure is move as soon as possible on MPC, since not for all supported systems models are available, PID tuning is very relevant (and PID control sufficient for many cases).
    Introduction
    The PX4 multirotor_att_control app executes an outer loop of orientation controller, controlled by parameters:
    Roll control (MC_ROLL_P)
    Pitch control (MC_PITCH_P)
    Yaw control (MC_YAW_P)
    And an inner loop with three independent PID controllers to control the attitude rates:
    Roll rate control (MC_ROLLRATE_P, MC_ROLLRATE_I, MC_ROLLRATE_D)
    Pitch rate control (MC_PITCHRATE_P, MC_PITCHRATE_I, MC_PITCHRATE_D)
    Yaw rate control (MC_YAWRATE_P, MC_YAWRATE_I, MC_YAWRATE_D)
    The outer loop’s output are desired body rates (e.g. if the multirotor should be level but currently has 30 degrees roll, the control output will be e.g. a rotation speed of 60 degrees per second). The inner rate control loop changes the rotor motor outputs so that the copter rotates with the desired angular speed.
    The gains actually have an intuitive meaning, e.g.: if the MC_ROLL_P gain is 6.0, the copter will try to compensate 0.5 radian offset in attitude (~30 degrees) with 6 times the angular speed, i.e. 3 radians/s or ~170 degrees/s. Then if gain for the inner loop MC_ROLLRATE_P is 0.1 then thrust control output for roll will be 3 * 0.1 = 0.3. This means that it will lower the speed of rotors on one side by 30% and increase the speed on the other one to induce angular momentum in order to go back to level.
    There is also MC_YAW_FF parameter that controls how much of user input need to feed forward to yaw rate controller. 0 means very slow control, controller will start to move yaw only when sees yaw position error, 1 means very responsive control, but with some overshot, controller will move yaw immediately, always keeping yaw error near zero.
    Motor Band / Limiting
    As the above example illustrates, under certain conditions it would be possible that one motor gets an input higher than its maximum speed and another gets an input lower than zero. If this happens, the forces created by the motors violate the control model and the multi rotor will likely flip. To prevent this, the multi rotor mixers on PX4 include a band-limit. If one of the rotors leaves this safety band, the total thrust of the system is lowered so that the relative percentage that the controller did output can be satisfied. As a result the multi rotor might not climb or loose altitude a bit, but it will never flip over. The same for lower side, even if commanded roll is large, it will be scaled to not exceed commanded summary thrust and copter will not flip on takeoff at near-zero thrust.
    Step 1: Preparation
    First of all set all parameters to initial values:
    Set all MC_XXX_P to zero (ROLL, PITCH, YAW)
    Set all MC_XXXRATE_P, MC_XXXRATE_I, MC_XXXRATE_D to zero, except MC_ROLLRATE_P and MC_PITCHRATE_P
    Set MC_ROLLRATE_P and MC_PITCHRATE_P to a small value, e.g. 0.02
    Set MC_YAW_FF to 0.5
    All gains should be increased very slowly, by 20%-30% per iteration, and even 10% for final fine tuning. Note, that too large gain (even only 1.5-2 times more than optimal!) may cause very dangerous oscillations!
    Step 2: Stabilize Roll and Pitch Rates
    P Gain Tuning
    Parameters: MC_ROLLRATE_P, MC_PITCHRATE_P.
    If copter is symmetrical, then values for ROLL and PITCH should be equal, if not - then tune it separately.
    Keep the multi rotor in your hand and increase the thrust to about 50%, so that the weight is virtually zero. Tilt it in roll or pitch direction, and observe the response. It should mildly fight the motion, but it will NOT try to go back to level. If it oscillates, tune down RATE_P. Once the control response is slow but correct, increase RATE_P until it starts to oscillate. Cut back RATE_P until it does only mildly oscillate or not oscillate any more (about 10% cutback), just over-shoots. Typical value is around 0.1.
    D Gain Tuning
    Parameters: MC_ROLLRATE_D, MC_PITCHRATE_D.
    Assuming the gains are in a state where the multi rotor oscillated and RATE_P was slightly reduced. Slowly increase RATE_D, starting from 0.01. Increase RATE_D to stop the last bit of oscillation. If the motors become twitchy, the RATE_D is too large, cut it back. By playing with the magnitudes of RATE_P and RATE_D the response can be fine-tuned. Typical value is around 0.01…0.02.
    In QGroundControl you can plot roll and pitch rates (ATTITUDE.rollspeed/pitchspeed). It must not oscillate, but some overshot (10-20%) is ok.
    I Gain Tuning
    If the roll and pitch rates never reach the setpoint but have an offset, add MC_ROLLRATE_I and MC_PITCHRATE_I gains, starting at 5-10% of the MC_ROLLRATE_P gain value.
    Step 3: Stabilize Roll and Pitch Angles
    P Gain Tuning
    Parameters: MC_RATE_P, MC_RATE_P.
    Set MC_ROLL_P and MC_PITCH_P to a small value, e.g. 3
    Keep the multi rotor in your hand and increase the thrust to about 50%, so that the weight is virtually zero. Tilt it in roll or pitch direction, and observe the response. It should go slowly back to level. If it oscillates, tune down P. Once the control response is slow but correct, increase P until it starts to oscillate. Optimal responce is some overshot (~10-20%). After getting stable respone fine tune RATE_P, RATE_D again.
    In QGroundControl you can plot roll and pitch (ATTITUDE.roll/pitch) and control (ctrl0, ctrl1). Attitude angles overshot should be not more than 10-20%.
    Step 4: Stabilize Yaw Rate
    P Gain Tuning
    Parameters: MC_YAWRATE_P.
    Set MC_YAWRATE_P to small value, e.g. 0.1
    Keep the multi rotor in your hand and increase the thrust to about 50%, so that the weight is virtually zero. Turn it around its yaw axis, observe the response. The motor sound should change and the system should fight the yaw rotation. The response will be substantially weaker than roll and pitch, which is fine. If it oscillates or becomes twitchy, tune down RATE_P. If responce is very large even on small movements (full throttle spinning vs idle spinning propellers) reduce RATE_P. Typical value is around 0.2…0.3.
    The yaw rate control, if very strong or oscillating, can deteriorate the roll and pitch response. Check the total response by turning around, roll, pitch and yaw.
    Step 5: Stabilize Yaw Angle
    P Gain Tuning
    Parameters: MC_YAW_P.
    Set MC_YAW_P to a low value, e.g. 1
    Keep the multi rotor in your hand and increase the thrust to about 50%, so that the weight is virtually zero. Rotate it around yaw, and observe the response. It should go slowly back to the initial heading. If it oscillates, tune down P. Once the control response is slow but correct, increase P until the response is firm, but it does not oscillate. Typical value is around 2…3.
    Look at ATTITUDE.yaw in QGroundControl. Yaw overshot should be not more than 2-5% (less than for attitude).
    Feed Forward Tuning
    Parameters: MC_YAW_FF.
    This parameter is not critical and can be tuned in flight, in worst case yaw responce will be sluggish or too fast. Play with FF parameter to get comfortable responce. Valid range is 0…1. Typical value is 0.8…0.9. (For aerial video optimal value may be much smaller to get smooth responce.)
    Look at ATTITUDE.yaw in QGroundControl. Yaw overshot should be not more than 2-5% (less than for attitude).

    展开全文
  • PID调参详解1

    2021-02-25 17:02:08
    PID调参详解1(比例环节) PID控制中有P、I、D三个参数,只有明白这三个参数的含义和作用才能完成控制器PID参数调整。 下面我们分别通过实例来分析比例微分积分三个环节对系统输出的影响。 上式为PID控制器的表达式...
  • PID调参软件 ,你还在为麻烦的pid参数而烦恼吗? 那就快试试用我这一款软件,它通过串口接受数据并且能够实时绘制出数据。如果有不会用的小伙伴可以私信我的哟!
  • PID介绍 PID调参 串级PID

    千次阅读 多人点赞 2019-06-19 13:44:38
    鉴于串级PID在pixhawk系统中的重要性,无论是误差的补偿,如姿态解算;还是控制的实现,如姿态控制,位置控制,靠的都是串级的pid,这里我们先对串级pid做一个介绍,后面会再接着分析,姿态的控制以及位置的解算和...
  • 作者|安布奇责编| 胡雪蕊出品 | CSDN(ID: CSDNnews)本文为一篇技术干货,主要讲述在Simulink如何使用PID Tuner进行PID调参PID调参器( PIDTuner)概述1.1 简介使用PID Tuner可以对Simulink模型中的PID控制器,离散...
  • Shikra的PID调参教程

    千次阅读 2016-01-05 10:33:54
    在论坛里看到的Shikra的PID调参教程,自己感觉非常好就转过来供大家一起交流学习 http://www.rcgroups.com/forums/showthread.php?t=1375728 还有师兄的调PID的整理的文章,写的非常详细专业,适合初学者学习 ...
  • PID调参过程详解(包括增量式和位移式)

    万次阅读 多人点赞 2017-07-30 16:03:57
    位置式PID调参步骤: 预设目标值是11000 1.首先,我们进行PID参数整定的时候,先设I D为0,然后把P值从0逐渐增大,直到系统震荡.如下图(P值设的500,这是因为P值过大,出现了震荡.这时我们就需要调整P值大小,让...
  • PID调参基础.docx

    2020-03-02 20:45:21
    什么是PID闭环控制系统?举个生活中的例子,我们所乘坐的动车,在即将到达站点的时候会切断动力,凭借惯性进入月台,如果火车在切断动力的时候时速是100km/h并且距离月台是1KM,那么这个100比1就是比例P的含义,P越...
  • PID调参 首先说说调参吧,关于PID调参,我用一句话总结一下:跟着感觉走。 为啥要这样说呢,因为对于初学者来说,只是写个程序,然后用试凑法进行匹配PID三个系数,以此来达到较好的控制效果。试凑法是什么,不就是...
  • 这可以让PID调参方便很多啊!!!!!!!而且可以很方便看到各个参数变化造成的影响!!!!!!! 不用改一次烧录一次!!!!!!! 我发觉平衡小车之家的这个主意太棒了!!!!! 让本来害怕PID调参的可以变...
  • 力矩环PID调参要领

    2021-01-12 19:40:22
    阶越响应反馈 反馈先 P 和 D 其它增益先置零 P 是刚性 D 阻尼 刚性越强速越快 阻尼抑制超调量 刚性过强易振荡 阻尼过大噪声响 参数调整要细心 先小后大慢慢增 参数调整并不难 关键找寻...
  • 首先没有用中断的方式接收总线上的信息,因为来自c610的信号是1KHz的所以if (CAN_MSGAVAIL == CAN.checkReceive...关于pid调参这里有个可以参考的文章。 首先前提是固定下来死循环里的delay(10);和其他控制参数,只...
  • 今天把之前做的串级pid的simulink仿真的调参经验总结一下: 超调就调小p增大d 震荡就增大d 稳态误差就调大i p和d的值很接近,i为他们的十分之一左右 如果效果呈现出现开始时先下降,然后再去上升跟踪,此时是由于p...
  • 本篇文章我将针对PID调参进行详细的讲解,让每位小伙伴能够对比例、积分、微分三个参数如何调节有更加清晰的理解。 一、调参步骤 确立机械中值 直立环(内环)——Kp极性、Kp大小、Kd极性、Kd大小 速度环(外环)...
  • 如何在 Simulink 中使用 PID Tuner 进行 PID 调参

    万次阅读 多人点赞 2019-08-08 09:26:21
    作者|安布奇责编| 胡雪蕊出品 | CSDN(ID: CSDNnews)本文为一篇技术干货,主要讲述在Simulink如何使用PID Tuner进行PID调参PID调参器( PIDTuner)概述 1.1 简介 使用PID Tuner可以对Simulink模型中...
  • px4的pid调参

    2020-04-06 16:20:37
    PIXHAWK采用串级PID的方式,外环是控制角度,内环是控制角速度。因为内环更直接作用于电机,**所以我们调试PIXHAWK的PID,一般只用调试内环的PID即可(角速度)。**另外,我们只调节roll rate和pitch rate的pid参数。 ...
  • 该文档是带积分分离的位置式PID控制实验数据,说明了PID参数的调试方法,通过一系列的图能快速帮助理解PID参数对系统的影响。
  • PID调参助手(Release).7z

    2019-08-25 23:13:33
    基于QT的串口调试助手,可显示波形,可拖动滑动条调节pid参数,附有串口通讯协议
  • 倒立摆入门详解+pid调参

    千次阅读 多人点赞 2020-07-29 12:10:58
    最近在练习pid的控制算法,就选用了2013年的电子设计国赛题目:倒立摆 。 首先给你们看看我的成果 注意哦:倒立摆不是靠上面黄色的传感器保持平衡的,而是通过下面的电机左右扭动使得摆杆不掉下来,难度可不小了。 ...
  • 植保无人机PID调参经验

    千次阅读 2018-05-23 23:20:15
    1. P、I、D输出要限幅 2. P、D是相对的,如果系统震荡,降低P或者加大D,在不震荡的...5. 先P,震荡后改为80%,再D,最后慢慢加I。 6. P越大响应越快,越容易超,D越大系统阻尼越大,飞机越肉,P和D是相对的值。
  • 抗扰PID调参方法还是新模式?

    热门讨论 2020-12-08 20:34:18
    当时看到抗扰PID的时候,我是很惊喜的:“是一种基于自抗扰控制原理设计的先进PID控制方法[1,2]”。难道基于自抗扰的研究又有什么新的进展了?激动的我直接搓手手呀,赶紧下载论文看看。 直奔主题,直接去看DR-PID...
  • PID参数调整的入门书籍,形象生动,深入浅出。

空空如也

空空如也

1 2 3 4 5 ... 8
收藏数 156
精华内容 62
关键字:

pid调参