3各种PID控制
这节将介绍常规PID,史密斯补偿控制,模糊控制等,C语言程序及程序中变量均放在单片机中,没有用到扩展内存,由于STC89C52单片机的程序存储器容量为8K,所以,程序限制在8K以内,数据存储器用到了低128字节RAM和高128字节RAM(C语言中用idata声明),也用到了内部扩展256字节RAM(C语言中用xdata声明)。
3.1理想PID控制
PID算法如下:
Gc(s)=Kc(1+1/(Ti*s)+Td*s)
PID算法的数值计算方法是将∫用Σ代替,de用Δe代替,dt用Δt代替,因此理论上讲只有Δt趋于零时,才得到理想PID算法,但实际上,即无可能,也无必要,做到Δt趋于零,究竟Δt多少合适,前面已经讲过各种过程控制参数的采样周期,这里不再重复,经这么算出来的式子是位置式的,但通常用的增量式的,即
Δu(k)=Kc(e(k)-e(k-1)+Ts*e(k)/Ti+Td*(e(k)-2*e(k-1)+e(k-2))/Ts)
Keil C51语言的PID算法代码如下:
float PID1(float sp,float pv,float Kc,unsigned int Ti,unsigned int Td,float Ts)
{
static float idata du=0.0,u0=0.0,u1=0.0,e0=0.0,e1=0.0,e2=0.0;
u1=u0;
e2=e1;
e1=e0;
e0=sp-pv;
du=Kc*(e0-e1+e0*Ts/Ti+Td*(e0-2*e1+e2)/Ts);
u0=u1+du;
if (u0<0)
u0=0;
if (u0>1)
u0=1;
return(u0);
}
PID控制的效果如下图1所示,从图中可以看出,调节器输出有较大瞬间波动,这对现场的执行机构很不利,将加速执行机构的损坏,如果过程值中混有白噪声,调节器输出波动更大,如下图2所示。
关键字:单片机 PID控制 理想PID控制 先进PID控制
引用地址:
用单片机玩PID控制—从理想PID控制至先进PID控制_7
推荐阅读最新更新时间:2024-03-16 16:17
基于MC9S08QG8单片机的EEPROM虚拟技术
引 言 MC9S08QG8(以下简称QG8)是Freeseale公司于2006年推出的一款HCS08系列MCU。HCS08系列MCU是HC08系列的升级,具有更高的总线频率和更低的工作电压。QG8总线频率可以达到10 MHz,工作电压可以低至1.8 V,尤其是QG系列MCU采用了新型的Flash存储器(HCS08系列MCU的典型型号为MC9S08GB/GT系列MCU,Flash编程擦除可使用2.7 V电压,QG系列MCU工作在1.8 V时即可以对Flash进行操作)。同时低功耗也是QG系列MCU的一大特点。通过降低主频,在总线频率为1 MHz、供电电压2 V、温度125℃的情况下正常工作,典型的芯片电流仅有370μA。而如果进
[单片机]
PIC单片机该怎么加密
见过很多初学者对PIC16系列单片机的ID码的读和写犯迷糊。说实话,这方面的资料也不怎么全。有些教材可能会涉及ID区域的介绍,可是往往是一代而过。这对初学者来说是比较容易犯错的地方。今天有空,对相关的问题作了一些整理,分享给大家。可能有些地方说的不够妥当,欢迎大家多多探讨。 1.什么是ID区域? ID区域是独立于EEPROM,FLASH,RAM的区域。程序设计人员可以利用该区域存放软件的版本号,编写日期,烧录日期,产品标识等信息。不过该区域很小PIC16系列只能存放4个字节。 2.ID码怎么烧录到ID区域里面去? 可以利用PICC自带的宏命令IDLOC(X)来实现。具体操作如下: ...............
[单片机]
单片机与PLC的区分!步进电机和伺服电机的区别!
单片机是一种集成电路芯片,单片机系统一般是根据具体的控制要求,通过专业人员设计,以印刷电路板(PCB)为基础,将单片机和其它芯片、器件等组合在一起,设计并固化相应的软件,最终构成的控制系统。 PLC上是专为工业环境使用的通用控制平台,由用户进行二次开发完成最终控制目的。 PLC是智能产品,小型PLC的核心控制器往往就是单片机,小型PLC在某种程度上可以理解为一种特殊的单片机系统。 由此可得出结论: 1)PLC是建立在单片机之上的产品,单片机是一种集成电路,两者不具有可比性。 2)PLC是单片机应用系统的一个特例。 3)不同厂家的PLC有相同的工作原理,类似的功能和指标,有一定的互换性,质量有保证,编程软
[单片机]
基于单片机和车辆检测器的车型分析技术研究分享
1 引言 在科学技术飞速发展的今天,单片机也日新月异,迅速发展。目前,他不仅在工业上有极广泛的应用,而且已普遍地渗透到国民经济各个部门,特别在交通建设中起着重要的作用。在目前和今后的交通系统中,车辆检测器以其交通控制的“耳目”而引起交通工程专家们的高度重视,车辆检测器可为交通监视与控制系统提供车辆感应信号,提供有关交通环境条件的情报与数据。车辆检测器的种类很多,检测方式也各不相同,目前主要使用的车辆检测器有电磁式车辆检测器、地磁式车辆检测器、超声波式车辆检测器、环形线圈(有源和无源两种)车辆检测器等。这些检测器的主要工作原理各不相同,但他们都是基于车辆通过或存在,使检测器中能量发生变化而产生车辆感应信号。 2 国内外车型分类
[单片机]
proteus与keil Cx51的单片机仿真(定时器应用1)
使用定时器定时,每隔10s使与P0、P!、P2、P3口连接的发光二极管闪烁10次;设P0、P!、P2、P3口低高电平灯亮,反之灯灭。 电路图: C程序: #include reg51.h #include intrins.h #define uchar unsigned char bit flag; void delay(); uchar IntNumber,Flashnumber;//T0中断次数,闪烁次数 void main() { TMOD=0x01;//T0方式1 TL0=0xb0; TH0=0x3c;//定时器赋初值 EA=1;//开总中断 ET0=1;//开T0中断
[单片机]
单片机最小系统组成电路及其作用
下面我们首先来简单介绍下51单片机各个管脚的具体作用,然后再重点给大家介绍单片机最小系统的概念、组成及其各部分电路原理图的实际用途。 按照集成电路的管脚识别方法,缺口朝上,逆时针转一圈,单片机的引脚编号从1到40,如图所示。图中同时给出了各个管脚的名称。我们完全不需要刻意去记这些管脚顺序和名称,在需要的时候查一下就好了,如果用的比较多,后来自然就记住了。 按照图中的大括号的提示,我们把P0.0~P0.7这样八个管脚称为一组IO口,叫做P0,同样有P1、P2和P3。IO口(IO = Input / Output),顾名思义,就是输入输出接口,它是单片机与外界进行信息交流的途径。之后我们主要的学习内容,也是围绕IO口进行的。另
[单片机]
关于单片机通过串口发送浮点数信息
最近弄一个小东西的时候,需要将AD采集的数据,通过串口发送上位机。由于还得在下位机部分显示出来,所以这个AD采集的数据转换之后发送到串口,比较容易点。但是问题来了,以前的串口,只有从GPS模块接收的信息是浮点类型外。其他的东西,都只是把字符类型或者字符串类型的数据发到串口。 查阅了一点资料,这里是资料的链接。 单片机将浮点数从串口发送出去: 1.http://www.51hei.com/bbs/dpj-31223-1.html 采用了将浮点数转换为四个字节的数据,放到数组中,发送到串口。 2.http://blog.sina.com.cn/s/blog_a8576df901011efv.html 加入了标准输入输
[单片机]
单片机在无线接入固定终端中实现内部通话的运用
摘要: 无线本地环路系统具有极其广泛的应用前景。文章阐述了一种用MSC8051单片机作为CPU,以MITEL公司的MT8816作为交换芯片、MT88500作为用户接口芯片和DTMF8870DC作为双音多频信号识别芯片来实现多用户台终端线路接续的硬件连接与软件设计。
关键词: 单片机 无线本地环路(无线接入) MT8816 MT88500 DTMF8870DC
1 无线接入系统简介
人类社会发展到高度信息化的今天,信息的交流不仅对经济,同时对于变化的发展也起到重要的作用。在通信基础设施缺乏的区域,由于信息的闭塞,其经济和文化的发展会受到严重阻碍。在中国,由于广大农村地区人口分散
[工业控制]