号朱宁基于单片机优化的PID控制设计与实现.docx

上传人:b****6 文档编号:7978312 上传时间:2023-01-27 格式:DOCX 页数:25 大小:204.37KB
下载 相关 举报
号朱宁基于单片机优化的PID控制设计与实现.docx_第1页
第1页 / 共25页
号朱宁基于单片机优化的PID控制设计与实现.docx_第2页
第2页 / 共25页
号朱宁基于单片机优化的PID控制设计与实现.docx_第3页
第3页 / 共25页
号朱宁基于单片机优化的PID控制设计与实现.docx_第4页
第4页 / 共25页
号朱宁基于单片机优化的PID控制设计与实现.docx_第5页
第5页 / 共25页
点击查看更多>>
下载资源
资源描述

号朱宁基于单片机优化的PID控制设计与实现.docx

《号朱宁基于单片机优化的PID控制设计与实现.docx》由会员分享,可在线阅读,更多相关《号朱宁基于单片机优化的PID控制设计与实现.docx(25页珍藏版)》请在冰豆网上搜索。

号朱宁基于单片机优化的PID控制设计与实现.docx

号朱宁基于单片机优化的PID控制设计与实现

关键词:

单片机、PID、自动控制

Abstract

ThispaperintroducestheKeilSoftware'sintegrateddevelopmentenvironmentμVision3MCS-51familyofsinglechiparchitecturetoautomaticcontroltheoryandtransferfunctionanalysis(theoreticalmodeling)andexperimentalmethods(systemidentification)asthebasisofclassicalcontroltheoryandunderstandingofmoderncontroltheoryinengineeringpracticenewoptimalcontrol,robustcontrol,intelligentcontrolofthePIDcontrolprinciple,drawnbyProteusISISschematicanalogPIDcontrollerparametersettingsandcircuitcomponentstomeetthecontrolledvariableontheperformanceindexoftheentiresystemtoprovideareliablebasisforcircuitdesigntheoryandpractice.BasedonMATLAB/Simulinkcontrolsystemmodelingandsimulation,comprehensiveanalysis,implementation-orientedprogramminglanguageMATLAB(M+C)developmentenvironmentoptimizeddigitalPIDcontroltechnologyinthepracticalapplicationofprocesscontrol.

KeyWords:

MCUMATLAB/SimulinkProteusPIDAutomaticControl

第1章系统概述1

1.1系统开发背景1

1.2功能概述1

1.3系统技术简介1

1.3.1μVision3集成开发环境的介绍1

1.3.2VC语言及其特点简介2

1.3.3Dreamweaver开发工具及其特点介绍3

第2章 需求分析5

2.1需求分析的基本任务5

2.2系统的功能需求5

2.3系统运行环境5

第3章 概要设计7

1.18051系统结构及各功能模块作用1

1.1.18051内部结构及各功能模块作用1

1.1.28051外部引脚描述3

2.自动控制原理和新型PID控制设计理念7

2.1自动控制原理的系统分析7

2.1.1自动控制原理概述7

2.1.2控制系统的组成和性能要求7

2.1.3控制系统分析方法8

2.2新型PID控制设计思想的现代控制理论9

2.2.1最优控制9

2.2.2鲁棒控制9

2.3.3智能控制10

3.11

3.1基于单片机优化的PID控制系统“实验箱”功能分析11

3.213

3.320

3.425

3.4.1数字PID理论基础25

3.4.227

3.4.332

3.4.435

3.4.537

4.结论39

5.致谢40

参考文献41

附录A42

附录B43

附录C45

附录D47

附录E48

前言

单片机是随着超大规模集成电路技术的发展而诞生的。

随着技术的发展,单片机片内集成的功能越来越强大,并朝着SoC(片上系统)方向发展。

单片机有着体积小、功耗低、功能强、性价比高等优点、易于推广应用。

基于KeilC51μVision3开发环境的(C和汇编语言)编程以及目标程序的调试,并搭载了Proteus单片机仿真与分析,实现嵌入式单片机系统自动控制的高智能,高效率,以及高可靠性!

带动了整个电子产业单片机构成的现代电子系统,将成为主流电子系统是应用最为广泛的一种自动控制器。

目前工业自动化水平已成为衡量各行各业现代化水平的一个重要标志。

在工业控制中,按偏差的比例P、积分I和微分D进行控制的PID调节器现在得到广泛的应用。

它以其结构简单、稳定性好、工作可靠、调整方便而成为工业控制的主要技术之一。

当被控对象的结构和参数不能完全掌握,或得不到精确的数学模型时,控制理论的其它技术难以采用时,系统控制器的结构和参数必须依靠经验和现场调试来确定,这时应用PID控制技术最为方便。

即当我们不完全了解一个系统和被控对象﹐或不能通过有效的测量手段来获得系统参数时,最适合用PID控制技术。

PID控制器的参数整定是控制系统设计的核心内容。

它是根据被控过程的特性确定PID控制器的比例系数、积分时间和微分时间的大小嵌入式系统。

它具有原理简单,易于实现,适用面广,控制参数相互独立,参数的选定比较简单等优点;PID控制器是一种最优控制。

PID控制器问世至今已有近70年历史,同时,控制理论的发展也经历了古典控制理论、现代控制理论和智能控制理论三个阶段。

人类的许多希望和梦想,被科学和技术变成现实;其中自动控制理论和技术已经介入到许多学科,渗透到各个工程领域,如今异常火热的汽车电子中的车身控制、底盘控制、发动机控制、安全控制、娱乐系统;以及传统工业控制中的电机控制、温控系统、仪表设备、楼宇自控系统、数据采集系统和计算机网络通信、数据传输、军用设备、航空航天等。

单片机控制技术不断发展,特别是基于计算机技术的数字PID控制技术的应用和发展,代替了原来很多硬件PID调节器,在工业控制系统和嵌入式系统中得到了更加广泛的应用,正向着数字化、智能化、鲁棒性好、算法高效、高可靠性的方向发展。

1.MCU系统结构和PID设计的开发环境

1.18051系统结构及各个功能模块作用

1.1.18051内部结构及各功能模块作用

单片机微型计算机(Single-ChipMicrocomputer)是在一块芯片上集成了中央处理器(CentralProcessingUnit,CPU)、只读存储器(ReadOnlyMemory,ROM)、随机存取存储器(RandomAccessMemory,RAM)、定时器/计数器及I/O(Input/Output)接口等部件,这些部件构成了一个完整的微型计算机。

8051单片机结构的总框图。

它可以划分为CPU、存储器、并行口、串行口、定时器/计数器和中断逻辑几部分。

(如图1-1)

 

(图1-18051单片机的内部结构框图)

1.CPU系统

CPU系统包括有CPU、时钟系统、复位、总线(BUS,即信号的公共通道)控制逻辑。

(1)CPU

单片机中的CPU与微型计算机中的CPU有所不同,它的特点是,面向控制、面向嵌入系统、面向单芯片化。

(2)时钟系统

时钟系统用于产生单片机工作所需的时钟信号。

它必须满足CPU及单片机内各单元电路对时钟的要求。

时钟振荡器的工作频率一般在1.2~12MHz。

(3)复位电路

复位电路应满足上电复位、信号控制复位的要求。

(4)总线控制逻辑

总线控制逻辑应满足CPU对内部总线和外部总线的控制要求。

2.程序存储器

程序存储器是一种只读存储器ROM(ReadOnlyMemory),用它来固化单片机的应用程序和一些表格常数。

单片机生产厂家按单片机内部程序存储器的不同结构,形成单片机的不同结构类型,分为:

(1)MaskROM型

(2)EPROM型(3)ROMless型(4)OTPROM(5)FlashROM(MTPROM)型。

前三种程序存储器的单片机是早期的产品,目前EPROM、ROMLess型已较少使用。

3.数据存储器RAM

RAM是一种可读写的存储器,也叫随机存储器。

单片机内部的RAM除了作为工作寄存器、位标志和堆栈区以外的单元都可以作为数据缓冲器使用,存放输入的数据或运算的结果。

由于单片机主要是面向测控系统,所以单片机内部的数据存储器容量较小,通常不多于256字节,而且都使用静态随机存储器SRAM(StaticRandomAccessMemory)。

4.各种I/O端口

I/O端口是计算机的输入、输出接口(I是输入,O是输出)。

单片机中的I/O端口都是芯片的输入/输出引脚。

这些I/O端口,可分为以下几种类型:

(1)总线输入/输出端口

(2)用户I/O端口。

由用户用于外部电路的输入/输出控制。

(3)单片机内部功能的输入/输出端口。

例如,定时器/计数器的计数输入、外部中断源输入等。

为减少单片机引脚数量,一般I/O口都有复用功能。

例如不使用外部总线时,总线端口可出让给用户做输入/输出端口用。

从I/O口的结构上还可以分为并行I/O口,即多位数据一起输出或输入,这种形式传送数据速度快但使用的引脚多。

另—种I/O口称为串行I/O口,即传送数据是顺序输出或输入,这种形式可大大减少I/O口的引脚数,但传送数据较慢。

5.基本功能单元

基本功能单元是为满足单片机测控功能而设置的一些电路,是用来完善和扩大计算机功能的一些基本电路,如定时器/计数器,中断系统等。

定时器/计数器在实际应用中作用非常大,如精确的定时,或者对外部事件进行计数。

1.1.28051外部引脚描述(如图1-2)

(1)电源引脚Vcc和Vss

Vcc:

电源端,接+5V。

Vss:

接地端。

(2)时钟电路引脚XTAL1和XTAL2(图1-2引脚原理图)

XTAL1:

接外部晶振和微调电容的一端,在片内它是振荡器倒相放大器的输入,若使用外部TTL时钟时,该引脚必须接地。

XTAL2:

接外部晶振和微调电容的另一端,在片内它是振荡器倒相放大器的输出,若使用外部TTL时钟时,该引脚为外部时钟的输入端。

(3)地址锁存允许ALE

系统扩展时,ALE用于控制地址锁存器锁存P0口输出的低8位地址,从而实现数据与低位地址的复用。

(4)外部程序存储器读选通信号PSEN

PSEN是外部程序存储器的读选通信号,低电平有效。

(5)程序存储器地址允许输入端EA/VPP

当EA为高电平时,CPU执行片内程序存储器指令,但当PC中的值超过0FFFH时,将自动转向执行片外程序存储器指令。

当EA为低电平时,CPU只执行片外程序存储器指令。

(6)复位信号RST

该信号高电平有效,在输入端保持两个机器周期的高电平后,就可以完成复位操作。

(7)输入/输出端口引脚P0,P1,P2和P3

P0口(P0.0~P0.7):

该端口为漏极开路的8位准双向口,它为外部低8位地址线和8位数据线复用端口,驱动能力为8个LSTTL负载。

P1口(P1.0~P1.7):

它是一个内部带上拉电阻的8位准双向I/O口,P1口的驱动能力为4个LSTTL负载。

P2口(P2.0~P2.7):

它为一个内部带上拉电阻的8位准双向I/O口,P2口的驱动能力也为4个LSTTL负载。

在访问外部程序存储器时,作为高8位地址线。

P3口(P3.0~P3.7):

为内部带上拉电阻的8位准双向I/O口,P3口除了作为一般的I/O口使用之外,每个引脚都具有第二功能。

[9]

1.2基于MCU的PID控制设计的开发软件平台

熟悉ProteusISIS和KeilC51μVision3单片机电路设计分析、仿真、调试工具软件的开发环境。

在工程控制实践中实现优化的PID控制参数设计算法与仿真,本课题我使用的是基于ProteusISIS绘制PID模拟控制器原理图的ASF高级图形仿真、MATLABR2009a(M+C)语言编程、Simulink7.1系统的动态建模的综合分析设计方法。

1.2.1Proteus与KeilμVision集成开发环境

ProteusISIS是英国Labcenter公司开发的电路分析与实物仿真软件。

它运行于Windows操作系统上,可以仿真、分析(SPICE)各种模拟器件和集成电路。

目前支持的单片机类型有:

68000系列、8051系列、AVR系列、PIC12系列、PIC16系列、PIC18系列、Z80系列、HC11系列以及各种外围芯片;在硬件仿真系统中具有全速、单步、设置断点等调试功能,同时可以观察各个变量、寄存器等的当前状态,同时支持第三方的软件编译和调试环境,如KeilC51μVision系列等软件,并具有强大的原理图绘制功能。

Proteus构成(如图1-2-1)

(1)Proteus是一个完整的嵌入式系统软、

硬件设计仿真平台。

(2)ISIS为功能强大的原理布线工具。

(3)ARESPCB设计为一PCB设计系统。

(图1-2-1Proteus构成)

单片机的程序设计需要在特定的编译器中进行。

编译器完成对程序的编译、连接等工作,并最终生产可执行文件。

对于单片机程序的开发,一般采用Keil公司的μVision

系列的集成开发环境,KeilμVision系列是德国KeilSoftware公司推出的51系列兼容单片机软件开发系统。

μVision3是集成的可视化Windows操作界面,其提供了丰富的库函数和各种编译工具,能够对51系列单片机和51系列兼容的绝大部分类型的单片机进行设计。

1.2.2MATLAB/Sumilink开发环境

MATLAB是美国MathWorks公司推出的产品,MATLAB名称来自于Matrix和Laboratory两个英文单词的前3个字母的组合。

时至今日,MATLAB已经发展为高性能的数值计算软件,并且集成了可视化功能,提供了大量的内置函数,具有编写简单、效率高、易学易懂等其他高级语言难以比拟的一些优点,在信号处理、通信、自动控制及科学计算等领域中被广泛应用。

在MATLAB7.X版本中,MATLAB提供了灵活而又强大的接口技术,使用者可以在MATLAB程序里调用其他语言编写功能,比如可以把一些繁重的计算模块以C/C++编写,然后利用MEX(MATLABExecutable)接口在MATLAB中调用这些模块,从而提高整个程序的执行效率。

MATLAB提供的C/C++编译器,可以方便地把M文件编译链接成可以在其他编程语言或者应用程序种使用的库函数,利用其他语言如C/C++和操作系统的密切联系,在不同程序之间共享数据的接口,实现从MATLAB环境到计算及外围设备的通信。

另外MATLAB还提供了如何在其他编程语言中调用MATLAB的数值计算和图形功能,从而加强应用程序的功能。

这些技术拓宽了MATLAB在实际使用中的应用范围,给开发者提供了灵活多变解决问题的途径。

Simulink仿真系统是MATLAB7.X最重要的组件之一,能够使用户和系统交互进行动态系统建模、仿真和综合分析。

Simulink仿真模型支持完全的图形化界面。

只要根据需要选择相应的组建模型后,将相应的图标放在仿真系统的创建界面内就可以实现功能仿真和运行。

通过图块方式,分层设计流程,将主要的精力放在设计模块结构的实现上,而不必将大量的精力放在算法的实现上,几乎可以做到不输一行代码就完成整个动态系统的建模工作。

因此,从分析研究的角度上看,Simulink模型可以让用户知道具体环节的动态细节,也可以让用户清楚地了解到系统各组件、各子系统、各分系统之间的信息交互。

[6]

2.自动控制原理和新型PID控制设计理念

2.1自动控制原理的系统分析

2.1.1自动控制原理概述

自动控制就是在没有人直接操作的情况下,通过控制器使一个装置或过程(统称为控制对象)自动的按照给定的规律运行,使被控变量能按照给定的规律变化。

系统是指按照某些规律结合在一起的物体(元部件)的组合,它们互相作用、互相依存,并能完成一定的任务。

能够实现自动控制的系统就可以称为自动控制系统。

自动控制原理是以自动控制的基本原理和分析、设计控制系统的基本方法。

控制理论包括经典理论和现代控制理论。

经典控制理论主要是以传递函数为工具和基础,以频域法和根轨迹法为核心,研究单输入、单输出一类控制系统的分析和设计问题。

现代控制理论从1960开始得到迅速发展。

它以状态空间方法作为标志和基础,研究多变量、多输入、多输出、定常数或变参数、线性或非线性一类控制系统的分析和设计问题。

[1]

2.1.2控制系统的组成和性能要求

1.控制系统的基本组成框图及其各部分功能

控制系统中控制对象以外的元部件统称为控制元件。

由于控制对象的不同,控制系统也是各种各样的。

但是根据控制元件在系统中的功能和作用,可将控制元件分成4大类。

(如图2-1-2)

 

(图2-1-2控制系统的典型功能框图)

2.控制系统设计的性能要求

当控制系统受到各种干扰(扰动)或人为要求给定值(参考输入)改变时,被控量就会发生变化,偏离给定值。

通过系统的自动控制作用,经过一段的过渡过程,被控量又恢复到原来的稳态值或稳定到一个新的给定值。

这时系统从原来的平衡状态过渡到一个新的平衡状态,我们把被控量在变化中的过渡过程称为动态过程(即随时间而变的过程),而把被控量处于平衡状态时称为静态或稳态。

对控制系统最基本的要求是必须稳定,具体稳态误差可以多大,要根据具体的生产过程的要求而定。

对于一个好的控制系统来说,我们希望控制系统的动态过程不仅是稳定的,稳态误差越小越好,过渡过程时间(又称调整时间)越短越好,振荡幅度越小越好,衰减得越快越好。

综上所述,对于一个控制系统的性能要求可以概括为三个方面:

稳定性、快速性和准确性。

(1)稳定性(稳)

一个控制系统的最基本的要求是系统必须是稳定的,不稳定的控制系统是不能工作的。

如何判断系统是稳定的,有很多科学家发明的稳定判据(如劳斯稳定判据、赫尔维茨稳定判据、奈奎斯特稳定判据、李雅普诺夫稳定判据和伯德定理等)

(2)快速性(快)

在系统稳定的前提下,希望控制过程(过渡过程)进行得越快越好,但是有矛盾,如果要求过渡过程时间很短,可能使动态误差(偏差)过大。

合理的设计应该兼顾这两方面的要求。

(3)准确性(准)

即要求动态误差(偏差)和稳态误差(偏差)都越小越好。

当与快速性有矛盾时,应兼顾两方面的要求。

[7]

2.1.3控制系统分析方法

(1)控制系统的时域分析

时域分析法是根据自动控制系统微分方程,用拉普拉斯变换来求解动态响应的过程曲线。

典型的动态过程有单位阶跃响应、单位斜坡响应、单位加速度响应、单位冲激响应等。

时域分析的另一个目的是求解响应的性能指标。

通常将控制系统跟踪或复现阶段输入信号响应的指标作为系统控制性能的指标。

阶跃响应的一般性能指标有:

峰值时间、超调量、调节时间及稳态误差。

在MATLAB中实现时域分析有两种方法,一是MATLAB的函数指令方式,如求取连续系统的单位阶跃响应函数step(),单位冲激函数impulse(),零输入响应函数initial()等;另一种是在Simulink窗口菜单操作方式下进行时域仿真。

(2)控制系统的频域分析

控制系统的数学模型是分析研究控制系统的基础。

当建立起系统的数学模型后,就可以采用各种方法分析系统的运动模态。

在经典控制理论中,常用的工程分析方法有频域分析法、根轨迹法。

频域分析法是应用频率特性研究控制系统的一种经典方法。

这种方法可以直观地表达出系统的频率特性,而且分析方法比较简单,物理概念比较明确。

对于引入防止结构谐振、抑制噪声、改善系统稳定性和暂态性能等问题,都可以从系统的频率特性上明确地看出其物理实质和解决途径。

2.2新型PID控制设计思想的现代控制理论

2.2.1最优控制

最优控制理论是现代控制理论中的重要内容,近几十年的研究与应用使最优控制理论成为现代控制论中的一大分支。

应用最优控制理论和方法可以在严密的数学基础上找出满足一定性能优化要求的系统最优控制律,这种控制律可以是时间的显式函数,也可以是系统状态反馈或系统输出反馈的反馈律。

常用的最优化求解方法有变分法、最大值原理以及动态规划法等。

最优控制问题一般提法为:

对于某个由动态方程描述的系统,在某初始和终端状态条件下,从系统所允许的某控制系统集合中寻找一个控制,使得给定的系统的性能目标函数达到最优。

2.2.2鲁棒控制

控制系统的鲁棒性研究是近年来现代控制理论研究的热点和前沿课题。

所谓“鲁棒性”是指控制系统在一定(结构、大小)参数的扰动下,维持某些性能的特性。

在设计控制系统前,需要对被研究对象进行建模,系统控制器的设计一般是理想模型情况下完成的。

如果事先对系统的建模比较精确,换句话说,所建立的系统模型能够完全反映实际系统的动态属性,则按照该模型设计的控制器在实际环境中仍然可以保证它的稳定性。

然而在实际工程应用中,许多系统存在外界干扰和系统参数扰动等不稳定性因素,有些系统还存在没有或无法进行数学建模的部分,在设计过程中希望所设计的控制器即使在这些不确定性因素的影响下仍然可以使得系统保持稳定,也就是说,所设计的控制系统具有一定的鲁棒性。

鲁棒多变量反馈控制的设计问题可以简单地描述为系统设计控制规律使系统在环境或系统本身的不确定性影响下仍然具有指定容许误差范围内的系统响应和系统误差。

[16]

2.3.3智能控制

现代控制理论从理论上解决了系统的能控性、能观性、稳定性,以及许多复杂系统的控制问题。

但是,随着现代科学技术的迅速发展,生产系统的规模越来越大,形成了复杂大系统,导致了控制对象、控制器及控制任务和目的日益复杂化,从而导致现代控制理论的成果很少在实际中得到应用。

第三代控制理论,即智能控制理论就是在这样的背景下提出来的,它是人工智能和自动控制交叉的产物,是当今自动控制科学的出路之一。

“智能控制”概念是美国普度大学电气工程系的美籍华人傅京孙教授于1970年提出的。

智能控制是指驱动智能及其自动地实现其目标的过程。

也就是说,智能控制是一类无需人的直接干预就能独立地驱动智能及其实现其目标的自动控制。

智能控制的基础是人工智能、控制论、运筹学和信息论等学科的交叉。

 

3.优化的PID设计与实现

自从计算机进入控制领域以来,用数字计算机模拟计算机调节器组成计算机控制系统,不仅可以用软件实现PID控制算法,而且可以利用计算机的逻辑功能,使得PID控制更加灵活。

数字PID控制在生产过程中是一种最普通采用的控制方法,在机电、冶金、机械、化工等行业中获得了广泛的应用。

将偏差的比例(Proportion)、积分(Integrator)、微分(Derivative)通过线性组合构成控制量,对被控对象进行控制,故称PID控制器。

3.1基于单片机优化的PID控制系统“实验箱”功能分析

 

(图3-1单片机PID控制实验箱系统框图)

(1)实现PC计算机与单片机“实验箱”(如图3-1)的程序指令通讯,采用串口COM(RS-232)或并口EPP。

RS-232:

是个人计算机上的通讯接口之一,由电子工业协会(ElectronicIndustriesAssociation,EIA)所制定的异步传输标准接口。

通常RS-232接口以9个引脚(DB-9)或是25个引脚(DB-25)的型态出现,一般个人计算机上会有两组RS-232接口,分别称为COM1和COM2。

EPP口(Enhanced-ParallelPort,增强并行口):

目的是在外部设备间进行双向通信,在输入输出数据时表现得很出色。

如果在

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 农林牧渔 > 畜牧兽医

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1