文档章节

手把手教你看懂并理解Arduino PID控制库——设定值突然改变

欧阳天华
 欧阳天华
发布于 2017/01/19 08:43
字数 512
阅读 546
收藏 1
点赞 0
评论 0

引子

本文将分析《手把手教你看懂并理解Arduino PID控制库》中:设定值的突然改变,如何避免输出突变。

问题定义

首先先看一下上述问题的图示说明:

假设PID控制的输出的限制是255,如果按照PID经典公式计算,PID控制器不知道其输出的极限值是255,由于设定值较大,那么输出会一直增长,超过255,达到300/400或者更高。此时,突然降低设定值到一个较低的位置(比被控量更小),那么,由于积分项的作用,输出会需要一定的时间才会渐渐过度到极限值以下,然后再慢慢降到所需的设定值。从图中看,就是绿色线条的Lag,这个 是我们不希望看到的。

解决方案

有多种手段可以减小上述问题的影响。

最简单的方式:告诉PID软件输出限制是什么,一旦达到了限制,PID参数将不再累加(积分),注意这里不是“生硬”的将输出限制在极限值,而是到达极限值后,要关闭积分项的继续累加,否则一旦PID恢复,积分项超限部分仍会进入控制流程,影响输出。至于微分项,在时间上仅和上一次的被控量值存在关联,所以影响是微乎其微的。

从图中看出:

一旦积分项控制住了,输出值则会被限制在一个合理的范围中,就算超限,也不会过大。而被控量在设定值降到合理范围后,也不会存在时间上的较大滞后。

NOTE:如有不足之处请告知‘

下一章节将分析PID开启和关闭对系统的影响^.^

NEXT

PS:转载请注明出处:欧阳天华

© 著作权归作者所有

共有 人打赏支持
欧阳天华
粉丝 11
博文 8
码字总数 8615
作品 0
松江
程序员
手把手教你看懂并理解Arduino PID控制库——引子

介绍 本文主要依托于Brett Beauregard大神针对Arduino平台撰写的PID控制库Arduino PID Library及其对应的帮助博客Improving the Beginner’s PID。在没有Brett Beauregard帮助之前,也尝试过...

欧阳天华 ⋅ 2016/12/21 ⋅ 3

手把手教你看懂并理解Arduino PID控制库——微分冲击

引子 本文将分析《手把手教你看懂并理解Arduino PID控制库》中第二个问题:设定值改变对微分项的影响。语文不好,原文中叫做Derivative Kick,实在是想不出好的名字,暂且称为微分冲击。 问题...

欧阳天华 ⋅ 2016/12/21 ⋅ 1

手把手教你看懂并理解Arduino PID控制库——采样时间

引子 在《手把手教你看懂并理解Arduino PID控制库》中已经简单介绍过Brett Beauregard大神所提供的ArduinoPID控制库,此库不仅仅可以在Arduino使用,稍作简单的修改即可移植到别的平台。那么...

欧阳天华 ⋅ 2016/12/21 ⋅ 1

手把手教你做智能LED灯(二) 硬件端的开发

第2节 硬件端的开发 现在,我们开始实现智能LED灯硬件相关部分的设计。 2.1 硬件连接 选择了Arduino MEGA 、HC-06蓝牙模块、LED灯模块和三引脚按钮开关以后,我们就需要把它们组合起来,为我...

anddlecn ⋅ 2016/09/13 ⋅ 0

中国证监会原副主席高西庆再谈区块链:为什么有人恐惧区块链?因为他们的权威没了

要点整理: “今天世界上的金融机构吸引了整个社会上最聪明的、最能干的、最勤奋的、最有学习能力的人,这个事情是有问题的。” 高西庆:区块链是非常好的事情,挡不住的。 高西庆:“我们在...

三言财经 ⋅ 02/27 ⋅ 0

手把手教写出XGBoost实战程序

简单介绍: 这是一个真实的比赛。赛题来源是天池大数据的 "商场中精确定位用户所在店铺"。原数据有114万条,计算起来非常困难。为了让初学者有一个更好的学习体验,也更加基础,我将数据集缩...

香橙云子 ⋅ 2017/11/29 ⋅ 0

CSDN日报180514——《我是如何主导第三方支付平台架构设计评审的?》

好久不见,CSDN日报回归啦~ 这次将开始新的尝试,文章中我会将推荐的文章添加上作者的提问码,如果你看完文章,还有困惑,可以向作者付费提问,进行交流。优质的内容值得付费,优质的博主值得...

blogdevteam ⋅ 05/14 ⋅ 0

认识与实验Arduino的睡眠模式

原文引自:http://swf.com.tw/?p=525 根据Nick Gammon这位澳洲老兄,在Power saving techniques for microprocessors(微处理器省电技术)文章,於Arduino UNO Rev 3控制板执行底下的程式码:...

伽罗kapple ⋅ 2014/11/02 ⋅ 1

手把手教你智能硬件开发(四) 蓝牙传输

第4节 蓝牙传输 智能硬件基本上都需要和手机相连,然后让手机控制这些硬件的工作。相连的方式不外乎以下三种, 数据线有线连接,通过一根数据线把智能硬件和手机连接起来。采用这种方式,需要...

anddlecn ⋅ 2016/09/07 ⋅ 0

手把手教你智能硬件开发(六)直流马达

第6节 直流马达 马达是我们经常使用到的电动装置,它可以将电能转化成动能,驱动其他东西的运动。听起来很抽象,举几个例子吧。 我们小时候玩的四驱车,带动轮子转动的那个小装置就是马达;夏...

anddlecn ⋅ 2016/09/30 ⋅ 0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

编译安装apache2.4.33

1. 环境 编译安装apache2.4.33,错误 error: ld returned 1 exit status。 CentOS 7.2apr-1.6.3apr-util-1.6.1httpd-2.4.33 2. 编译报错 编译安装完 apr apr-util 之后,安装httpd-2.4.3......

周云台 ⋅ 17分钟前 ⋅ 0

jsonrpc-4j代码解析

解析文件 AutoJsonRpcServiceImplExporter JsonServiceExporter AutoJsonRpcServiceImplExporter 路径:com.googlecode.jsonrpc4j.spring.AutoJsonRpcServiceImplExporter AutoJsonRpcServi......

郭恩洲_OSC博客 ⋅ 26分钟前 ⋅ 0

百度搜索

from selenium import webdriver import time brower=webdriver.Firefox() brower.get('http://www.baidu.com') input=brower.find_element_by_id('kw') input.send_keys('中南大学') time.s......

南桥北木 ⋅ 33分钟前 ⋅ 0

tomcat 日志记录器

1、日志记录器是记录消息的组件 日志记录器需要与某个servlet 容器相关联 2、Logger 接口 共定义了5种日志级别:FATAL、ERROR、WARNING、INFORMATION、DEBUGGER setVerbosity 设置级别 setC...

职业搬砖20年 ⋅ 34分钟前 ⋅ 0

Thrift RPC实战(三) Thrift序列化机制

1.Thrift基础架构 Thrift是一个客户端和服务端的架构体系,数据通过socket传输; 具有自己内部定义的传输协议规范(TProtocol)和传输数据标准(TTransports); 通过IDL脚本对传输数据的数据结构...

lemonLove ⋅ 34分钟前 ⋅ 0

网站建设就要像2018世界杯的俄罗斯队大杀四方[图]

今天心情不错,因为昨天晚上观看了世界杯比赛,尤其是对俄罗斯队的大杀四方感到十分霸气侧漏啊,因此我联想到了自己的博客网站,我的博客是去年年底上线的,一直想建设一个关于读书和读后感作...

原创小博客 ⋅ 43分钟前 ⋅ 0

Greenplum 三节点安装教程(非root用户)

Greenplum 三节点安装教程(非root用户) 环境准备 安装vmware,装三台centos 虚拟机设置: 主机名 IP 内存 硬盘 node1 Xxx1 2G 80G node2 Xxx2 2G 80G node3 Xxx3 2G 80G CSDN下载greenplum...

仔仔1993 ⋅ 44分钟前 ⋅ 0

linux 信号机制

signal(SIGPIPE, SIG_IGN); TCP是全双工的信道, 可以看作两条单工信道, TCP连接两端的两个端点各负责一条. 当对端调用close时, 虽然本意是关闭整个两条信道, 但本端只是收到FIN包. 按照TCP协...

xxdd ⋅ 45分钟前 ⋅ 0

SpringWind

环境搭建和系统部署

颖伙虫 ⋅ 今天 ⋅ 0

vim命令用法

第五章 vim命令 vim和vi几乎是一样的,唯一的区别就是当编辑一个文本时,使用vi不会显示颜色,而使用vim会显示颜色。 vim有三个模式:一般模式,编辑模式,命令模式。 系统最小化安装时没有安...

弓正 ⋅ 今天 ⋅ 0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部