平衡小车制作——PID

作者: 三横一竖是我 | 来源:发表于2018-08-13 10:57 被阅读11次

位置闭环控制

位置闭环控制就是根据编码器的脉冲累加测量电机的位置信息,得到控制偏差,然后通过对偏差的比例、微分、积分进行控制,使得偏差趋于零


原理.PNG

c语言的实现


C语言.PNG

参数整定

P用于提高相应速度,I用于减小静差,D用于抑制震荡

速度闭环控制

速度闭环控制是根据单位时间获取的脉冲数测量电机速度信息,对目标值进行比较
理论分析


速度闭环.PNG

直立控制原理

直立环使用PD控制


直立控制.PNG

在调试直立环,要在定时器中断服务函数屏蔽速度换和转向环
首先估计kp的取值范围,陪我们设置7200代表占空比百分百
设定kp值为7200,那么小车在10°就会满转
确定参数的原则是:kp一直增加,出现大幅度低频抖动
kd一直增加,直至出现高频抖动

确定了pd的最大数,×0.6就是需要的参数

小车速度环控制

速度.PNG

我们对速度进行低通滤波
一般可以把ki的值设置为kp/200
kp最大值=7200/(160*50%)

相关文章

  • 平衡小车制作——PID

    位置闭环控制 位置闭环控制就是根据编码器的脉冲累加测量电机的位置信息,得到控制偏差,然后通过对偏差的比例、微分、积...

  • PID

    总所周知,PID算法是个很经典的东西。而做自平衡小车,飞行器PID是一个必须翻过的坎。因此本节我们来好好讲解一下P...

  • 平衡小车制作——mpu6050

    mpu6050简介 mpu6050内带三轴陀螺仪和三轴加速度传感器,自带数字运动处理器dmp硬件加速引擎,非常方便...

  • Arduino平衡车完整代码+详解

    代码中使用了两套PID参数进行控制,Kp,Ki,Kd是控制平衡速度的。也就是小车往前倾,加速;后倾,减速这个过程。...

  • Arduino平衡车——只角度环pid的代码

    但是仅靠一个PID控制会出现一个问题:因为小车的平衡角度Setpoint是手动设定的,所以会有一个微小的误差。当小...

  • 制作共享小车

  • 平衡小车制作——编码电机和tb6612

    编码电机 电机有六个线,中间四根线是编码电机的线,用于测速,和直流电机本身没有联系,实现开环控制时无需使用把定时器...

  • ROS机器人底盘(21)-关于运动控制方向的补充

    1.概述 使用PIBOT提供的小车已经完成了程序和硬件的调试,如果需要移植到自己的小车,可能会遇到PID调速不正常...

  • 什么是PID

    本人想做做之前的电赛题--滚球平衡,但这涉及到了一些自动控制的东西,比如PID。 对PID之前只是略有耳闻,为了复...

  • 科学制作

    今天我们在科学课上制作了一辆动力小车。 这辆小车什么动力都可以,但是主要最好是橡皮筋动力小车或者气...

网友评论

    本文标题:平衡小车制作——PID

    本文链接:https://www.haomeiwen.com/subject/ehyybftx.html