首页 GOODPID控制游客

GOODPID控制游客

举报
开通vip

GOODPID控制游客PID控制 一直不怎么明白PID的运算输出结果怎么换算成执行机构的控制量,例如通过PWM控制电机的转速,很多书上都讲PID,但是从来没发现有哪一本书仔细讲清PID的运算结果通过怎样处理换算成实际的控制量,例如直流电机通过PWM调压控制转速,假如设定值为S,测量值为P,通过PID计算得到一个结果为R,怎么把R转换成占空比(0~100%)去控制电机? 因为PID计算出来的值有很多不确定的尤其在PID三个变量都可以自己设定的话 直接根据R的取值范围,比如说0-100,对应占空比0%-100%输出pwm波控制电机,当然R...

GOODPID控制游客
PID控制 一直不怎么明白PID的运算输出结果怎么换算成执行机构的控制量,例如通过PWM控制电机的转速,很多 关于书的成语关于读书的排比句社区图书漂流公约怎么写关于读书的小报汉书pdf 上都讲PID,但是从来没发现有哪一本书仔细讲清PID的运算结果通过怎样处理换算成实际的控制量,例如直流电机通过PWM调压控制转速,假如设定值为S,测量值为P,通过PID计算得到一个结果为R,怎么把R转换成占空比(0~100%)去控制电机? 因为PID计算出来的值有很多不确定的尤其在PID三个变量都可以自己设定的话 直接根据R的取值范围,比如说0-100,对应占空比0%-100%输出pwm波控制电机,当然R有可能不是从0开始的PWM PWM控制电机速度: 设置速度Vset对应的输入电压为Vs(注意和VCC的关系) 实际速度Vtrue对应的输入电压为Vr(注意和VCC的关系) 求得的三个偏差则都是以电压为单位,再分别和P/I/D参数运算得到的计算值Vout也是以电压为单位,如果PWM占空比为100%的时候,PWM的控制极电压=VCC,那么Vout/VCC就是PWM此时的输出占空比,有了PWM占空比,MCU该怎么计算就容易了。 我是这么认为的…… 问一个PID的小知识:如果一个系统基本确定了P的大小,是否意味着已经基本确定了这个系统的控制范围? 例如:一个温度控制系统,测量范围0~200度,假设此时要求在100度的控制,如果此时P已经确定,例如P=3,则比例带对应的温度范围是多少? 如何确定输出? 假如一个温度控制,设置目标温度100度,当前实际温度60度,前一次测量温度56度,再前一次测量温度55度,微分时间T1,积分时间T2,比例P,输出用MCU的PWM控制固态继电器,PID计算的结果为VALpid,这个结果如何转化为PWM的占空比? PWM的占空比=VALpid/100 计算出PID结果d(t)=p*(e(0)-e(1))+i*e(0)+d*(e(0)-2e(1)+e(2)),定时器进入一次找个变量自加1,比较这个变量和d(t),小于和大于输出不同的状态。 只得其形,未得其意。 这里涉及到一些控制理论的基本概念。理论上及实践中,可以通过pid配置闭环系统的零极点,以达到希望的输出。假设系统是线性的,单输入输出,对于 pid, 先考虑基本的比例控制,再加入id. Input:Speed --Wi Ouput:Speed --Wo Transfer function of DC motor:f(s) = (a1*s + a0)/(s^2 + b1*s + b0) ... 还是省略这些基本的理论吧。 用反馈回来的速度,可以得到误差: E = Wi - Wo 这样就得到了控制机构的输入: V = P * E = P * (Wi - Wo) 因为是线性系统,因而可以把所有的转换系数全部折入这个比例中。 比如:Wi = 100, Wo = 97, P 为 20 ,pwm 电源电压为 100V Thus, E = Wi - Wo = 3 Vpwm = P * E = 60 (V), 那么占空比为:60 / 100 = 60 % 如果只有比例,那么这个系统的稳态输出Wo不会等于Wi, 这称为静差。增大 P 可以减小静差,但可能造成控制机构饱和及系统不稳定。 用反馈回来的速度,可以得到误差: E = Wi - Wo 这样就得到了控制机构的输入: V = P * E = P * (Wi - Wo) Wi,Wo是速度信号,E(=Wi - Wo )的单位还是速度,P是没有单位的,P*E得到的结果,单位还是速度单位啊,为什么就这么一变就成电压单位了呢? "如果只有比例,那么这个系统的稳态输出Wo不会等于Wi, 这称为静差。增大 P 可以减小静差,但可能造成控制机构饱和及系统不稳定" 这一段好理解,看V= P * (Wi - Wo)就可以明白了,从这个公司来讲,只有P无穷大的时候, Wi - Wo才无穷趋向于0,所以 Wi - Wo永远都是不会等于0的,这也就是静差了把。 你说的PWM电源电压是100V,是指的PWM控制极的电压把? http://2008sfile.ic37.com/2008file/bbs_dic/2008-2-10/0210112613_152740_0.jpg 怎么确定系统是线形的啊? 一般根据什么大致确定系统是线形的? 假设我搞个温控仪比例控制为0.0-100.0,积分为0-200,微分为0-200,控制范围在-50-150度之间,根据d(t)=p*(e(0)-e(1))+i*e(0)+d*(e(0)-2e(1)+e(2)),计算出来的结果d(t)怎么样和设定的温度关联起来??? ifP=0~100,控制范围K=-50~150(即200) else输出占空比=d(t)*K/P "Wi,Wo是速度信号,E(=Wi - Wo )的单位还是速度,P是没有单位的,P*E得到的结果,单位还是速度单位啊,为什么就这么一变就成电压单位了呢?" 控制器的输入输出关系。比例器是最简单的控制器,包含了转换系数,实际上为 V = K* Kv/Kw * E = P * E where P = K * Kv/Kw, Kv/Kw 为转换常量。 "所以 Wi - Wo永远都是不会等于0的,这也就是静差了把。" 对。加入积分后,可以消除静差。直观的理解就是,只要 E 不为 0, 控制器的输出 V 就会不断增加|减少,导致 Wo 增加|减少,最终使 E = 0 关于什么是线性系统:看输入输出的关系,比如N 个不同输入产生的输出叠加后应该等于N 个不同输入叠加的输入产生的输出。PWM 可近似认为是线性系统,dc motor 也是线性系统,pid线性,所以整个系统是线性 To 会流泪的鱼: “d(t)=p*(e(0)-e(1))+i*e(0)+d*(e(0)-2e(1)+e(2))" 这是所谓的增量公式,很多人不求甚解的传抄,search 我以前的帖子。对于温度控制,增量公式的迭代并不适宜,实际中,微分也无必要,因为系统极大的时间常数。可用PI 原型公式: V = Kp*e + Ki*integrator(e)--> I(n) = I(n-1) + Ki * (e(n) - e(n-1)) ---- 单独的积分器 V(n) = Kp*e(n) + I(n) V = Kp*e + Ki*integrator(e)--> I(n) = I(n-1) + Ki * (e(n) - e(n-1)) ---- 单独的积分器 V(n) = Kp*e(n) + I(n) 对于这个公式程序也不难编出来,但是我搞不清楚计算出的V(n)怎么和实际控制器件关联起来. 比如:设P=10,I=30,控制周期T=30秒,设定温度为60度,实际温度为50度.用继电器触点开关进行控制 俗称:PID参数校准。 可以以开环的比例做基本参数,实际在这个参数上调出来。 比例具体多大关系不大,只影响达到平衡的具体时间。 当然你要能算出来就更好。 PID可以想象为一个运放,+-两端一定要达到相等,至于多快和运放参数和反馈参数有关。也存在自激、积分、微分。 一: //关于什么是线性系统:看输入输出的关系,比如N 个不同输入产生的输出叠 //加后应该等于N 个不同输入叠加的输入产生的输出。PWM 可近似认为是线性 //系统,dc motor 也是线性系统,pid线性,所以整个系统是线性 我的理解如下: 假设有n个输入(IN(1),IN(2)...IN(n)), 假设n个输入信号一起输入系统时,产生的输出为OUT(all), 假设n个输入信号分开输入系统时,产生的输出为OUT(1),OUT(2)...OUT(n) 如果 OUT(all)=k*[OUT(1)+OUT(2)+...+OUT(n)],k为常数,那么这个系统可定义为线形的。 请问上面的理解对吗? 二:你说的PWM电源电压是100V,是指的PWM控制极的电压把? [IMG]http://bbs.21ic.com/upfiles/img/200710/20071018132559219.jpg[/IMG] 请问这个理解对不对? 三:举例温度控制: 假设一个温度PID控制,用PWM控制固态继电器实现,暂时不谈I/D环节,就只以P环节说明,假设我们设置的P=2,PWM电源电压为5VDC, 再假设在当前时刻:E=10度 那么:Vpwm=P*E=10*2=20; PWM的占空比=20/5=400% 此时,PWM的占空比>100%,所以系统全功率运行。 请问上面的理解对不对? 四:就上面的问题又产生另一个疑问: 记忆中好象P都是大于1的,如果PWM电压电压为5VDC,那么只有E<5度的时候,PWM的占空比才可能<100%,也就是说,这个控制器只能在当前测量温度和设置温度之差小于5度的情况下才能起点控制作用??? 而且一般是先经过理论计算,仿真,最后应用,这要求有一定的控制理论的背景。pid 等等,归根结底在理论上都是从新配置闭环零极点。对于 pid + dc motor, 如果有control background, 懂matlab, 动动鼠标,点选希望的极点,则立刻能得到pid的参数,当然,人工手算也能做到。 会到温度控制问题:设P=10,I=30,控制周期T=30秒,设定温度为60度,实际温度为50度.用继电器触点开关进行控制 因为用继电器,这里会涉及一个简单的非线性控制,回滞,即设定动作的上下限,比如加热时61停止,59启动加热,目的是减小继电器的动作次数。如果希望更精确,可以把继电器当作 pwm 使用,则可以用 pid 来控制。另一个重要的问题是了解执行机构的特性(最好有transfer function) , 比如占空比100% 目标的稳态平均相对(环境)温差,假设为120 - 20 = 100(环境)。那么50% (15秒通,15秒断),应为 100/2 + 20 = 70。那么最后控制器的占空比为 Ratio = PID ( To - Ti) = 10 * (To - 60) + 30*integrator(To - 60) 当然 ratio 会大于100%,这就是饱和,不要紧,最终 To 会趋近 60,使得占空比最终稳定。 以上未考虑瞬态过程,如果要考虑,那么必须得到系统的transfer function, 这其实不难。这些问题最好的做法是 matlab 仿真 但要么是纯理论的,要么就是含糊的提了一下使用PID控制,然后给一个PID推导公式,然后就不了了之…… 一直没查到实际案例能比较完整的详细描述实现的各个环节。 //假设为120 - 20 = 100(环境)。那么50% (15秒通,15秒断),应为 //100/2 + 20 = 70。那么最后控制器的占空比为 //Ratio = PID ( To - Ti) = 10 * (To - 60) + 30*integrator(To - 60) //当然 ratio 会大于100%,这就是饱和,不要紧,最终 To 会趋近 60,使得 //占空比最终稳定。 里面几个数值是不是:100为设置目标,120为实际测量结果?? 1)线性系统是符合齐次性和叠加性的系统。OUT(all)=OUT(1)+OUT(2)+...+OUT(n)]符合叠加性。 2)是指的PWM控制极的电压 3)我的上个帖子你可能没有看到 当然占空比会大于100%,这就是饱和,不要紧,最终测量温度和趋近设置温度,使得占空比最终稳定。 他合理也好,不合理也好,反正是代入PID计算公式里面计算,根据公式计算出的结果d(t)怎么去判断后面的PWM输出。 PID参数不合理,可以慢慢调,或者用MATLAB仿真计算,但现在是这个PID控制都实现不了的话,后面想实际调也没办法调…… "100为设置目标,120为实际测量结果"120为实际测量结果, 减去环境温度 20 (占空比为 0 时的温度), 得到 100 三:举例温度控制: 假设一个温度PID控制,用PWM控制固态继电器实现,暂时不谈I/D环节,就只以P环节说明,假设我们设置的P=2,PWM电源电压为5VDC, 再假设在当前时刻:E=10度 那么:Vpwm=P*E=10*2=20; PWM的占空比=20/5=400% 此时,PWM的占空比>100%,所以系统全功率运行。 请问上面的理解对不对? 四:就上面的问题又产生另一个疑问: 记忆中好象P都是大于1的,如果PWM电压电压为5VDC,那么只有E<5度的时候,PWM的占空比才可能<100%,也就是说,这个控制器只能在当前测量温度和设置温度之差小于5度的情况下才能起点控制作用??? 记得过去看书的时候好象说比例不能小于1 p 只是一个转换系数,不是放大倍数。 这个控制器只能在当前测量温度和设置温度之差小于5度的情况下才能起点控制作用 也没说错,更确切的说:测量温度和设置温度之差小于5度的情况下,控制器才进入了线性控制区。 他实际想要做的是要继电器通断比例时间来控制问题。 这个比例时间反推到MCU来说,也相当于调节占空比。 所以,我刚才计算的占空比就相对应于他的时间占空比,如果他的控制周期为30S,那么他的开周期=30*占空比,关周期=30*(1-占空比) 在于吃惊的发现计算出来的占空比远远大于 1,于是搞不懂 p 究竟是什么了。呵呵,负反馈的作用就在于此。 用温度控制举例: 假设设置温度为Tset,当前温度为Tend,前一次测量为T1,再前一次为T2, PID计算:d(t)=p*(e(0)-e(1))+i*e(0)+d*(e(0)-2e(1)+e(2)), 不管P/I/D三个参数设置是否合理,算出d(t),如果用PWM控制固态继电器的话,那么占空比=d(t)/power(pwm),如果是5V的MCU系统,PWM电压电压为5VDC,那么占空比=d(t)/5, 如果占空比>100%,说明系统需要全功率运行。 如果占空比<0,说明系统超调了,停止工作(或反方向工作)。 如果P/I/D设置不合理,控制范围过窄,并且超调严重,则应该调节这三个参数到合理程度,例如刚才那个举例,只有5度的控制范围,如果设备功率比较大,系统热惯性比较小的话,很容易就超调,并可能产生振荡,此时要么减小设备功率,要么调节P/I/D参数,但P/I/D参数调节过小的话,可能达到控制点的时间过长,或者根本就到不了拉,此时又要再调参数到合理范围内。 你说的概念基本上正确,除了数学公式: d(t)/5, 这个 5 可以包括在 pid 得系数内。 d(t)=p*(e(0)-e(1))+i*e(0)+d*(e(0)-2e(1)+e(2)) 的结果是pid 的增量,最终的占空比为 R(0) = R(1) + d(t) = 我前面说的原型公式 //d(t)=p*(e(0)-e(1))+i*e(0)+d*(e(0)-2e(1)+e(2)) 的结果是pid 的增 //量,最终的占空比为 R(0) = R(1) + d(t) = 我前面说的原型公式 是这个意思吗?! 公式: d(t)=p*(e(0)-e(1))+i*e(0)+d*(e(0)-2e(1)+e(2))计算出的值是增量,需要折算到位置量输出,也就是:R(0) = R(1) + d(t) 我们感到不清楚的是PID计算结果怎样变换成占空比的变化,PID本身程序编写并不困,至于三个参数怎么调那是另外一回事,现在不知道的是PID计算结果通过怎样数学变换成占空比? 说白了,可以直接把计算出的数值当成占空比。 如果直接过去总是>100%,说明P/I/D参数设置不合理,调节它到合理范围内,就可以得到一个比较好的控制范围和控制结果。 TOIceAge: 下面的说法对不对? 已注册 发 关于同志近三年现实表现材料材料类招标技术评分表图表与交易pdf视力表打印pdf用图表说话 pdf 于 2007-10-19 13:09 侃单片机 ←返回版面 38楼: 到也是,PWM电压可以直接折算到P/I/D三个参数里面 //d(t)=p*(e(0)-e(1))+i*e(0)+d*(e(0)-2e(1)+e(2)) 的结果是pid 的增 //量,最终的占空比为 R(0) = R(1) + d(t) = 我前面说的原型公式 是这个意思吗?! 公式: d(t)=p*(e(0)-e(1))+i*e(0)+d*(e(0)-2e(1)+e(2))计算出的值是增量,需要折算到位置量输出,也就是:R(0) = R(1) + d(t) 如果通过PID计算出的结果为dt,占空比100%时dt为100,那么50%时dt为多少啊? 非常感谢IceAge的热情回答,有一个疑问,你说D=dt/UPWM,即占空比等于PID计算结果除以PWM端电压,但是市场上出售的温控器接固态继电器控制温度,PWM端的电压可以任意接啊,固态继电器并不是接的某一种特定的电压啊,那么这个Upwm不是不确定了吗,那怎么办啊,Upwm等于多少啊? //如果通过PID计算出的结果为dt,占空比100%时dt为100,那么50%时dt为多少? 错,应该是d(t)=1则占空比为100%,d(t)=0.5则占空比为50% //D=dt/UPWM,即占空比等于PID计算结果除以PWM端电压,但是市场上出售的温控 //器接固态继电器控制温度,PWM端的电压可以任意接啊,固态继电器并不是接的 //某一种特定的电压啊,那么这个Upwm不是不确定了吗,那怎么办啊,Upwm等于多 //少啊? 理解还是错的,在上面已经明确了,是PWM控制极电压,看见我的那个图了吗? 是PWM波形的幅值电压,是定值,这个值只是要定值就行,是多少其实无所谓,因为P/I/D三参数可以同比放大这个值。 TOIceAge:我在38楼的理解对吗? 已注册 发表于 2007-10-19 13:09 侃单片机 ←返回版面 38楼: 到也是,PWM电压可以直接折算到P/I/D三个参数里面 //d(t)=p*(e(0)-e(1))+i*e(0)+d*(e(0)-2e(1)+e(2)) 的结果是pid 的增 //量,最终的占空比为 R(0) = R(1) + d(t) = 我前面说的原型公式 是这个意思吗?! 公式: d(t)=p*(e(0)-e(1))+i*e(0)+d*(e(0)-2e(1)+e(2))计算出的值是增量,需要折算到位置量输出,也就是:R(0) = R(1) + d(t) "d(t)=p*(e(0)-e(1))+i*e(0)+d*(e(0)-2e(1)+e(2))计算出的值是增量,需要折算到位置量输出,也就是:R(0) = R(1) + d(t) " 是的,这种算法是迭代算法,对于温度控制来说,没有必要。 Duty = V/Vpwm, 这里的Vpwm 是电源电压,可以是固定的,也可以是变动的。若是固定的,则可把 Vpwm 折算入PID 系数里。比如: Duty = V/Vpwm = PID_1(E)/Vpwm = PID_2(E) = PID_2(Wo - Wi) where PID_2 = PID_1/Vpwm 否则,就得多一步除法: Duty = V/Vpwm = PID_1(E)/Vpwm //Duty = V/Vpwm, 这里的Vpwm 是电源电压,可以是固定的,也可以是变动 //的。若是固定的,则可把 Vpwm 折算入PID 系数里 如果是变动还怎么计算啊? 这个变动可能是怎么个变动法?如果是PWM控制,他的控制极电压随着电路的确定也就确定了啊?怎么还能变动呢? 能不能举个变动的例子说明一下啊 ? 听IceAge一席话真是令我茅塞顿开啊!我对你的景仰有如滔滔江水一发不可收拾.(先拍下马屁,呵呵) 刚才在家里翻箱倒柜找出了一张温控仪的说明书,它P可以在0.0-100.0、I在0-4320、D在0-1200、0-60秒可调,默认是P=3.0、I=250、D=50,采样周期是20秒,就这些参数而言,假设我在设定参数的+-10度之间进行PID控制,公式还是这条:d(t)=p*(e(0)-e(1))+i*e(0)+d*(e(0)-2e(1)+e(2))经过几个周期后设定温度是60.0度,e(0)=55.0、e(1)=55.6、e(2)=55.9 (e直接把温度值代进来应该可以的吧!)有点晚了,明天上班的时候再完成此帖~~~~ 有时并不是确定的,比如变频器,有时得通过采样或者通过设定来得到Vdc,主要是允许用户施加不同的电源电压。对于你的情况,可能不会采用不同的电源电压,不需要适应各种应用。 这些不要紧,只是多一个除法而已。 是不是可以这样理解,只要找到一个系数K,使得dt输出的最大值除以K等于占空比100%,dt输出的最小值除以K为0%,K不一定是PWM控制端电压,只要凑到一个系数K,使得dtmax/k=100%,dtmin=0%,就行了啊? 对于变频器,我是这样想的: 记忆中,一般的变频器是输入电压不同,变频器输出的频率相应的变化,假如用变频器控制一个制冷用的压缩机来实现温度调节(这好象变频空调的使用方式?),如果使用PID调节,此时 E = 设置温度 - 当前实际温度,变频器的输入电压可用PWM的有效值表示(这个可等效过去的把?),占空比不同,PWM的有效值电压也就变化了,所以调节变频器的输入电压也就等同于调节PWM的占空比了,这个时候,PWM的控制极电压应该是一个定值把?不需要改变PWM控制极电压的把? 你那理解好象也能将就,但我理解的实际意思是: d(t)对应输出的占空比的关系,其实无所谓,只要你的控制器能让P/I/D三参数可调整,那么实际使用的时候在做参数整定时,只要是合理的参数整定,最后都基本能得到合适的P/I/D参数让他实现PID调节。 例如,对于同样的温度控制仪表 设计 领导形象设计圆作业设计ao工艺污水处理厂设计附属工程施工组织设计清扫机器人结构设计 ,这个控制器的P=10,那个控制器设计的P=1,但最后的控制效果是一样的,为什么呢?同比放大就是了,第二个控制器可能在设计的时候,设计者就是把P*10代入运算的,你说,这两个控制器有什么区别呢? 对最后的用户来说,他根本不管你内部如何计算的,你乘1也好,乘1000也好,无所谓,他只是按照整定的 方法 快递客服问题件处理详细方法山木方法pdf计算方法pdf华与华方法下载八字理论方法下载 进行系统控制的整定,最后得到一个P/I/D参数结果就可以,殊途同归也就这意思了。 也就是说只要不断的调节P,I,D这三个参数,最终使得pid计算结果符合dtmax=100%,dtmin=0%就行,假如能找到到这样的P,I,D三个值,dt的输出可以直接作为占空比,甚至也可以理解为,dt可以乘以或除以任意值,只要能找到P,I,D使得dtmax=100%,dtmin=0%就行,dt乘以或除以什么数无所畏,因为P,I,D三个数可以调节,dt/Upwm,其中的Upwm可以折算到P,I,D这三个参数中,是啊? 可不可以讲下实利啊!!这样讲起来感觉很抽象 也就是说,PID计算结果dt可以除以或乘以任意值,例如dt/12,dt/35,然后调节P,I,D这三个值,使得dt/12,dt/35的最大值对应占空比为100%,最小值对应为0%,是这样吗? 它P可以在0.0-100.0、I在0-4320、D在0-1200、0-60秒可调,默认是P=3.0、I=250、D=50,采样周期是20秒,就这些参数而言,假设我在设定参数的+-10.0度之间进行PID控制,公式还是这条:d(t)=p*(e(0)-e(1))+i*e(0)+d*(e(0)-2e(1)+e(2))设定的温度是60.0度 头个周期采过来的温度是55.0度,则e(0)=600-550=50、e(1)=0、e(2)=0 R(0)=R(1)+d(t)=0+3*(50-0)+250*50+50*(50-0+0)=150+12500+2500=15150 这样下去感觉R(0)会到很大的值才会变小,也就是说PID设的太大了,或者我觉得它应该要除以一个定值,对应该上面的采样周期,我这样的理解对吗?? 还有就这个公式而言:d(t)=p*(e(0)-e(1))+i*e(0)+d*(e(0)-2e(1)+e(2))我记得I好像是相减的也就是 d(t)=p*(e(0)-e(1))-i*e(0)+d*(e(0)-2e(1)+e(2)) 已经说的很清楚了啊。 1:只是一个系数问题 2:PWM为控制极电压,如果是采用时间比例输出,也可等价于PWM 3:增量算法要换成位置算法 PS: 可变的PWM电压,我还没弄清楚如何理解,IceAge再给俺讲讲!? 有点体会到所长的说法了: 农民讲习所 发表于 2007-10-19 09:11 侃单片机 ←返回版面 18楼: 工程中P是要调的 俗称:PID参数校准。 可以以开环的比例做基本参数,实际在这个参数上调出来。 比例具体多大关系不大,只影响达到平衡的具体时间。 当然你要能算出来就更好。 PID可以想象为一个运放,+-两端一定要达到相等,至于多快和运放参数和反馈参数有关。也存在自激、积分、微分。 PID的计算结果总要转换成占空比进行控制吧,假如PID的计算结果很大很大怎么办,假如PID计算结果为1000~10000,除以Upwm=5还是很大,无法转换成0~100%,怎么办啊? 哪位高手在讲一下啊,PID输出结果究竟除以什么,还是不论除什么数都行啊,反正可以调节P,I,D这三个参数? IceAge再回答一下啊,dt究竟除以什么啊,是不是什么都可以除啊,因为PID三个参数可调啊 PID的运算结果就是一个无量纲的值,取值范围看你对控制精度的要求. 要求高,那么PID的结果范围就取大点,比如说16位,要求低呢就可以取8位,PID运算超过这个范围就取最大数,16位就是65535, 8位就是255. 然后就用这个数按比例对应你的控制方式, PWM方式:256(或者65536)对应100%, 0对应0%. 我也是这么理解的,可是PID通过传递函数控制不怎么理解 你的意思是这样: 假如算出来是245,规定PID的结果范围规定为1个字节内,PWM的占空比=245/255,如果规定PID的结果范围为2个字节,那么PWM的占空比=245/65535, 能不能讲一下软件实现自整定的方法? 将PWM控制对应的时间分成N等分,N视情况而定,N越大表示分辨率越高,那么控制的输出精度就越高,打个比喻,如果N为1000,PWM控制周期为2毫秒,那么他的精度就是1/500毫秒,如果N为2000,那么精度就为1/1000,精度理论上越高越好,这时就要看你的执行机构的要求了,比如高速电空阀,如果他都不能分辨1毫秒的精度,N值取的再大也没有用 确定了N之之后,就好办了,你计算得到的结构除以N就可以得到占空比,反之你给出了站空比,也可以得到输出的时间值了,
本文档为【GOODPID控制游客】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
该文档来自用户分享,如有侵权行为请发邮件ishare@vip.sina.com联系网站客服,我们会及时删除。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。
本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。
网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
下载需要: 免费 已有0 人下载
最新资料
资料动态
专题动态
is_025527
暂无简介~
格式:doc
大小:60KB
软件:Word
页数:0
分类:互联网
上传时间:2018-09-10
浏览量:6