Arduino PID-Auto Tune库函数指南

与Arduino PID库同出于一位作者:Brett Beauregard
下面将解释一下本库之中的函数使用方法。与上篇PID库的指南一样,笔者在此不会详细地阐述PID的内部实现方法和原理。建议看过PID算法

Brett Beauregard的博客地址,配合此文档阅读本文效果更佳。之后笔者或许会翻译一下。。。(最近比较忙orz):http://brettbeauregard.com/blog/2012/01/arduino-pid-autotune-library/

PID_ATune()

创建一个自动调节器,函数参数为PID库中要使用到的Input和Output输入输出参量。

Runtime()

类似Compute()函数,它是调节器所需要的函数,也需要在loop()函数之中调用。大多数情况下不执行就直接返回。这取决于调节过程的进度。
返回值:

返回参数含义
0自动调节仍需进行
1调节过程已经结束

Cancel()

若调试过程还未结束,可调用此函数提前结束调试过程。

SetOutputStep()、GetOutputStep()

设置或读取输出步长值。

语法格式:

SetOutputStep(step);    // step: 输出步长值 (>0)
GetOutputStep();        // 返回当前步长值

SetControlType()、GetControlType()

设置/获取是否在调用GetKp()、GetKi()、GetKd()等函数时返回PI或PID调整参数。
语法格式:

SetControlType(type);   // type: 0 = PI, 1 = PID
GetControlType();       // 返回当前控制类型

SetNoiseBand()、GetNoiseBand()

设置/获取在步长输出之前将忽略什么级别的输入噪声。此内容在原作者博客之中有详细描述。

语法格式:

SetNoiseBand(noise);    // 要尽可能使噪声足够小且实现钳位,有点类似于施密特触发器?
GetNoiseBand();         // 返回当前噪声值

SetLookbackSec()、GetLookbackSec()

设置/获取回溯时间。

语法格式:

SetLookbackSec(seconds);    // second为int类型,需要思考一下距离波峰的位置有多远。通常情况下,1/4到1/2是个不错的选择
GetLookbackSec();           // 返回当前的回溯时间

其他函数

与PID库类似,都有属性的获取函数,即GetKp()、GetKi()、GetKd()。具体用法不再赘述。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值