基于FPGA的模糊PID控制.docx
《基于FPGA的模糊PID控制.docx》由会员分享,可在线阅读,更多相关《基于FPGA的模糊PID控制.docx(45页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、海 南 大 学 毕 业 论 文(设计)题 目: 基于FPGA的模糊PID控制 学 号: 20151681310477 姓 名: 余宝杰 年 级: 电子信息工程二班 学 院: 信息与通信学院 系 别: 信息与通信工程系 专 业: 电子信息工程 指导教师: 张育 完成日期: 年 月 日 摘要PID控制具有很好的稳定性和鲁棒性,可以在一定结构或大小的参数摄动下,维持性能稳定的特性。相比于传统的PID控制系统,基于模糊数学的模糊PID控制由于非线性控制可以不依赖于被控对象的精确数值完成符合要求的多种控制,其主要是通过模糊规则表将是实际控制人员的经验和控制目标转化为语言变量,描述控制规则,用于被控对象的
2、实时控制。本设计利用MATLAB进行模糊规则表的设计和模糊控制系统的测试及模糊规则表调整,然后将模糊PID控制运用到无人船设计,根据无人船的特点对模糊控制表进行相应的调整。最后利用VHDL语言进行模糊PID控制器的FPGA设计及仿真,使用的软件平台为QUARTUS II 和MATLAB。关键词: 模糊PID控制;FPGA;无人船AbstractPID control is a kind of modern automatic control system, with good stability and robustness, can be in a certain structure or
3、size parameter perturbation, maintain stable performance characteristics. Compared to the traditional PID control system, fuzzy PID control based on fuzzy mathematics because of the nonlinear control can not rely on the controlled object accurate numerical complete conform to the requirements of a v
4、ariety of control, it mainly through the fuzzy rules table will be the actual control experience and control objectives into language variables, describe the control rules, used for real-time control of the controlled system. Precisely because of the non-linear characteristics, fuzzy PID control has
5、 a good effect in many systems with more internal disturbances and larger changes in system parameters.In this paper, MATLAB was used to design and test fuzzy rule table .The platform also used to test fuzzy control system . VHDL language is used for the FPGA design and simulation of the fuzzy PID c
6、ontroller. The QUARTUS II 15.0 and MATLAB 2017 software platforms are used.Key words: PID control; Fuzzy control; FPGA; Hardware description language (VHDL)目录摘要21 概述与基本原理51.1 FPGA及设计语言51.1.1 FPGA51.1.2设计语言61.2 PID控制器61.2.1位置式控制算法71.2.2增量式控制算法81.3 模糊控制理论92 模糊PID控制112.1论域、量化因子和比例因子122.2模糊规则表132.3 MATL
7、AB中simulink仿真183模糊PID用于无人船控制214 VHDL编写模糊PID控制程序274.1 取差值284.2 模糊量化284.3 ROM制作304.4 总程序335 结果分析与总结35致谢37参考文献38附录391 概述与基本原理本章主要介绍和分析了FPGA、VHDL、Verilog HDL、PID控制器以及模糊控制的基本原理和有关的背景知识,重点分析了PID控制器的控制算法,部分公式、原理和设计思想是下面章节讨论和分析的基础。1.1 FPGA及设计语言FPGA是现代常用的集成电路之一, FPGA开发一般需要首先从顶层设计开始,接着构建基本的设计框然后进行相应的模块分层,用复杂的
8、逻辑实现各个模块,最后编写程序、导入硬件进行相应的调试。1.1.1 FPGA二十世纪九十年代,在PAL、GAL、CPLD等可编程器件的基础上一种计算速度快且可以在制作后多次编程的集成电路被发明出来,由于这种可以制造后编程的特性,这种集成电路被称作FPGA(Field-Programmable Gate Array)即现场可编程门阵列。正如其名,在FPGA器件中大量的CLB模块一般排列为阵列状,小型查找表链接D触发器是CLB模块用于实现功能的基础。小型查找表和时序逻辑结构构成函数发生器、数据选择器、触发器和信号变换电路。可编程输入输出单元(IOB)是芯片与外界的接口,与一般集成电路的接口部分类似
9、,IOB部分主要是改变驱动电流、上下电阻和输入输出的频率的大小来实现不同电气特性下对输入或输出信号的驱动与匹配。FPGA中布局布线器可自动地根据输入逻辑网表的结构和约束条件选择布线资源来连通各个模块,所以这样就大大降低了设计难度。布FPGA中大部分布线通道都是用于连接CLB与CLB,或者CLB与IOB。相比于定制电路的制作后只能用于固定的用途,FPGA生产后可以用于多种场合并可多次使用。 对于FPGA器件,为了实现不同功能,可以更改储存单元中的值就实现更改逻辑单元的逻辑功能最终改变FPGA的功能。因为存储单元允许无数次修改,所以FPGA允许无限次的编程。同时FPGA可以根据运用场景添加很多逻辑
10、功能模块,比如存储器模块RAM或ROM、DSP模块、硬件乘法器模块等。 1.1.2设计语言对于FPGA,一般使用的设计语言有VHDL和Verilog HDL。VHDL在上世纪八十年代就开发出来的电路设计语言,可以用于描述数字系统的结构、行为、功能和接口。作为美国电气电子工程师协会(IEEE)的标准硬件描述语言,VHDL可以兼容绝大数EDA工具。VHDL的语言结构形式非常严谨,很容易明白所要表达的意思,对于初学者,VHDL语法简单易懂且易于上手。正是因为VHDL的多种优点,本次的设计使用VHDL语言。Verilog HDL是由GDA公司开发出来的并在大约1984年开始快速发展的用于制作数字电路的
11、硬件描述语言。因为Verilog HDL的主要结构和很多描述语句与C语言比较类似,所以一般有软件编程基础的人员就可以快速学会。因为Verilog HDL在功能设计和逻辑验证阶段中可以不必过多考虑门级及工艺实现的具体细节,所以设计者往往只需施加不同的约束条件,就能设计出正确可用的电路。 1.2 PID控制器PID控制器又称PID调节器, PID控制器主要是通过控制比例、积分、微分三个环节来实现控制系统的目的, PID控制易于理解,结构简单,稳定性强,正因为如此,相比于其它的控制器,PID控制器在实际系统中运用更加广泛。图1 传统PID控制模块的结构模拟PID控制器的输入是误差: e(t)=rt-
12、y(t) (1-1)控制规律: ut=Kpe(t)+1Ti0te(t)dx+Tdde(t)dt (1-2)传递函数: Gs=U(S)E(s)=Kp1+1TiS+Tds (1-3)其中Kp为比例系数,Ti为积分时间常数,Td为微分时间常数,upt=Kpe(t)为比例项, uit=Kp0te(t)dt/Ti为积分项,uDt=KpTDde(t)dt为微分项。因为Ti、Td都为常数,所以令Ki=KpTi,Kd=KpTd,则Kp、Ki、Kd分别PID控制器的比例参数、积分参数和微分参数。式(1-3)可以转化为下式:Us=Es*Kp1+1TiS+Tds=Es*Kp+Es*Kis+E(s)*Kd*s(1-4
13、)根据式(1-4)可知在系统受干扰产生偏差时,比例环节Es*Kp会快速产生反应,比例环节的效果主要取决于比例系数Kp。 Es*Kis是控制系统中的积分环节,可以进行滞后校正。同样,积分环节的作用效果取决于Ki的大小。E(s)*Kd*s是控制中微分环节,因为微分环节主要的输入是偏差信号的变化率,所以微分环节可以根据偏差的变化趋势,提前做出调节动作,从而减小系统的响应时间,改善系统的动态性能。随着计算机技术的发展,传统的控制方式逐渐被数字控制方式所取代,数字PID控制算法主要分为位置是PID控制算法和增量式PID控制算法。本文主要介绍和使用的是增量式PID控制算法。1.2.1位置式控制算法对于数字
14、PID控制系统,需要对比例项、积分项、微分项分别进行离散化:upn=Kpen (1-5)uin=KpTTii=0nei (1-6)udn=KpTdTen-e(n-1) (1-7)其中为设定的值减去当前采样值,T为PID控制采样周期,所以位置式PID控制在当前采样时刻输出的控制量计算式为:un=Kpen+TTii=0ne(i)+TdTen-e(n-1)+u0 (1-8)式中的u(n)为当前控制量的采样值,u0为PID调节开始之前瞬间执行器的输入的控制信号也就是控制信号的初值1.2.2增量式控制算法增量式控制算法顾名思义是根据输出的结果,不断改变输出量的变化的增量,实现对系统的有效控制。由上文可以
15、得到离散的PID表达式为: Uk=Kpek+TTii=0kei+Tdek-e(k-1)T (1-9)由此第k-1个采样时刻的输出值为: Uk-1=Kpek-1+TTii=0k-1e(i)+Tdek-1-ek-2T (1-10)将(1-8)与(1-9)相减并整理,就可以得到增量式PID控制算法公式为:Uk=Uk-Uk-1=Kpek-ek-1+TTiek+Tdek-2ek-1+ek-2T=Kp1+TTi+TdTek-Kp1+2TdTek-1+KpTdTek-2 (1-11)位置式PID控制算法也可以通过增量式控制算法推出递推计算公式: Uk=Uk-1+U (1-12)对比参考可以很明显看出,相比于
16、位置式控制算法,增量式控制算法的计算量更小,更容易理解,同时如果控制出现问题,增量式因为控制的只是变化的量,出现问题造成的影响更小。同时在实际操作中,如果确定控制出现问题,可以直接减去增加的量U,恢复到上一个量,问题就得到解决。所以本次设计使用的是增量式PID控制。但是在实际工业生产控制过程中因为受控对象一般其特性参数或结构会不断发生改变。需要控制系统可能是非线性的、时变的,PID 控制器的参数往往难以有效的及时的设置,而不能达到满意的控制效果。1.3 模糊控制理论上世纪六七十年代,Zadeh教授创立了模糊数学,为模糊控制理论的建立奠定了基础,在这之后的很多年中,关于模糊数学的争论一直不断。
17、1974年,英国马丹尼博士将模糊逻辑与自动控制相结合,将模糊数学运用到实际操作中,设计了世界上第一个模糊控制器,之后模糊控制在多个领域有着很广泛的运用。根据模糊控制器输入变量的个数,可以把模糊控制器分为单变量模糊控制系统和多变量模糊控制系统。在设计过程中可以很清楚感受到如果模糊控制的输入变量大于三个的话,那么模糊控制的规则很难符合操作经验,所以大多数情况下不会设计超过三个输入的模糊控制器,下图为常见的一输入模糊控制器、二输入模糊控制器和三输入模糊控制器:图2 一输入模糊控制器 图3 二输入模糊控制器图4 三输入模糊控制器图5 二维模糊控制器常见结构以二维模糊控制器为例分析模糊控制器的各模块,模
18、糊控制器一般由模糊化模块、知识库、模糊推理模块和解模糊模块组成。模糊模块将输入的精确量转化为用隶属函数表示的模糊变量。比如说,输入的量是15,模糊化后输出该输入量有0.5的概率属于较大,后面就根据属于较大的概率为0.5进行接下来推理操作,模糊化的关键在于隶属函数和量化因子,改变隶属函数和量化因子会改变模糊模块对输入量的反应程度,直接影响控制效果。知识库包括数据库和规则库。数据库中一般包含有定义,语言控制规则以及论域的离散化、量化规则。假如前面模糊模块输出的结果是误差有0.5的概率属于较大,那么根据规则表可以读出输出的控制量应该是反向较大。其中根据规则表得出控制量应该是反向较大的过程体现了操作的
19、经验和知识,可以看出,规则表可以将无法线性表示的,主观上的操作经验有效地运用到实际系统控制中,仿佛给操作系统加上思考部分,虽然看起来规则表的思想很好理解,但是规则表的设计和优化是模糊控制设计中最能体现设计思想和控制经验的环节。从上面的推理模块得到的是模糊集,可以认为是对操作量的定性,比如说通过推理模块得到操作数有0.3的概率属于中等,0.2的概率属于较小,这样不能直接用于系统控制,必须要将模糊集转化成精确量,所以就得用到解模糊模块,解模糊模块就是模糊操作的反向过程,同理,解模糊模块的关键是隶属函数和比例因子,解模糊方法则就是如何根据模糊集合得到确定的量有重心法、面积积分法、左取大法、右取大法、
20、最大平均法等,在实际操作中,设计软件中自带有这些解模糊方法的详细计算方法,本次设计的重点不在于解模糊方法所以就不展开讨论了,本次设计中选用采用最大平均法。2 模糊PID控制根据PID的结构和表达式可以知道,PID控制的关键在于参数Kp、Ki、Kd的设置,因此在模糊控制中,最后一定是通过改变Kp、Ki、Kd实现控制、优化PID控制系统。相比于一维模糊控制系统二维的控制效果更好,同时比三维的设计难度小,因此选择二维模糊控制,由此可以得到模糊PID的大致结构如图:图6 模糊PID结构根据上面对模糊控制各模块的分析中可知在解模糊中得到的值是不连续的,为了得到连续变化的控制量,设定Kp,Ki,Kd计算表
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 FPGA 模糊 PID 控制
限制150内