PID控制超详细教程

合集下载

PID 调节步骤UT550

PID 调节步骤UT550

一、PID调节步骤:
1、打开说明书3.4节: Setting PID manually
2、按住5秒钟,这时,PID会出现以下对话框
3、按键一下,PID 表会显示主菜单LP1。

4、按一下,会显示下个菜单PAR
5、按键一下,PID 表会显示1.PID
6、按6下,会显示下1.p
你先看看这个值多大,P:2 I:300 D:60
要回到初始界面,按住不动就可。

二、输入类型控制设置:
1,按住5秒,
2,按一下,
3,按一下
4,按一下
5,按一下
4,按一下
5,按一下
把In1 该为41
三、输出类型控制设置:1,按住5秒,
2,按一下,
3,按一下
4,按一下
5,按一下
6,按2次
7,按一次
把OT1改为1
四:地址设置:
1,按住5秒,
2,按一下,
3,按一下
4,按一下
5,按几次出现6,按几次出现
你看看这个参数是多少?我估计应该是3。

五、切换REM和LCL
1,按5秒,出现
2,按若干次后,直到
通过设置MOD参数为LCL。

(完整版)PID控制详解

(完整版)PID控制详解

PID控制原理和特点工程实际中,应用最为广泛调节器控制规律为比例、积分、微分控制,简称PID控制,又称PID调节。

PID 控制器问世至今已有近70年历史,它以其结构简单、稳定性好、工作可靠、调整方便而成为工业控制主要技术之一.当被控对象结构和参数不能完全掌握,或不到精确数学模型时,控制理论其它技术难以采用时,系统控制器结构和参数必须依靠经验和现场调试来确定,这时应用PID控制技术最为方便.即当我们不完全了解一个系统和被控对象﹐或不能有效测量手段来获系统参数时,最适合用PID控制技术。

PID控制,实际中也有PI和PD控制.PID控制器就是系统误差,利用比例、积分、微分计算出控制量进行控制。

1、比例控制(P):比例控制是最常用的控制手段之一,比方说我们控制一个加热器的恒温100度,当开始加热时,离目标温度相差比较远,这时我们通常会加大加热,使温度快速上升,当温度超过100度时,我们则关闭输出,通常我们会使用这样一个函数e(t) = SP – y(t)-u(t) = e(t)*PSP——设定值e(t)——误差值y(t)——反馈值u(t)——输出值P——比例系数滞后性不是很大的控制对象使用比例控制方式就可以满足控制要求,但很多被控对象中因为有滞后性。

也就是如果设定温度是200度,当采用比例方式控制时,如果P选择比较大,则会出现当温度达到200度输出为0后,温度仍然会止不住的向上爬升,比方说升至230度,当温度超过200度太多后又开始回落,尽管这时输出开始出力加热,但温度仍然会向下跌落一定的温度才会止跌回升,比方说降至170度,最后整个系统会稳定在一定的范围内进行振荡。

如果这个振荡的幅度是允许的比方说家用电器的控制,那则可以选用比例控制2、比例积分控制(PI):积分的存在是针对比例控制要不就是有差值要不就是振荡的这种特点提出的改进,它常与比例一块进行控制,也就是PI控制。

其公式有很多种,但大多差别不大,标准公式如下:u(t) = Kp*e(t) + Ki∑e(t) +u0u(t)—-输出Kp--比例放大系数Ki——积分放大系数e(t)——误差u0——控制量基准值(基础偏差)大家可以看到积分项是一个历史误差的累积值,如果光用比例控制时,我们知道要不就是达不到设定值要不就是振荡,在使用了积分项后就可以解决达不到设定值的静态误差问题,比方说一个控制中使用了PI控制后,如果存在静态误差,输出始终达不到设定值,这时积分项的误差累积值会越来越大,这个累积值乘上Ki 后会在输出的比重中越占越多,使输出u(t)越来越大,最终达到消除静态误差的目的PI两个结合使用的情况下,我们的调整方式如下:1、先将I值设为0,将P值放至比较大,当出现稳定振荡时,我们再减小P值直到P值不振荡或者振荡很小为止(术语叫临界振荡状态),在有些情况下,我们还可以在些P值的基础上再加大一点。

PID控制教程

PID控制教程

PID控制原理教程第一讲 数字PID概述1.1概述在连续-时间控制系统中,PID控制器应用得非常广泛。

其设计技术成熟,长期以来形成了典型的结构,参数整定方便,结构更改灵活,能满足一般的控制要求。

数字PID控制比连续PID控制更为优越,因为计算机程序的灵活性,很容易克服连续PID控制中存在的问题,经修正而得到更完善的数字PID算法。

本章将详细地讨论数字PID控制器的设计和调试问题。

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

同时,控制理论的发展也经历了古典控制理论、现代控制理论和智能控制理论三个阶段。

智能控制的典型实例是模糊全自动洗衣机等。

自动控制系统可分为开环控制系统和闭环控制系统。

一个控制系统包括控制器﹑传感器﹑变送器﹑执行机构﹑输入输出接口。

控制器的输出经过输出接口﹑执行机构﹐加到被控系统上﹔控制系统的被控量﹐经过传感器﹐变送器﹐通过输入接口送到控制器。

不同的控制系统﹐其传感器﹑变送器﹑执行机构是不一样的。

比如压力控制系统要采用压力传感器。

电加热控制系统的传感器是温度传感器。

目前,PID控制及其控制器或智能PID控制器(仪表)已经很多,产品已在工程实际中得到了广泛的应用,有各种各样的PID控制器产品,各大公司均开发了具有PID参数自整定功能的智能调节器(intelligent regulator),其中PID控制器参数的自动调整是通过智能化调整或自校正、自适应算法来实现。

有利用PID控制实现的压力、温度、流量、液位控制器,能实现PID控制功能的可编程控制器(PLC),还有可实现PID控制的PC系统等等。

可编程控制器(PLC) 是利用其闭环控制模块来实现PID控制,而可编程控制器(PLC)可以直接与ControlNet相连,如Rockwell的PLC-5等。

还有可以实现PID控制功能的控制器,如Rockwell 的Logix产品系列,它可以直接与ControlNet相连,利用网络来实现其远程控制功能。

PID控制经典培训教程

PID控制经典培训教程

PID控制经典培训教程一、引言PID控制是自动控制领域最经典、应用最广泛的一种控制策略。

PID控制器因其结构简单、稳定性好、可靠性高、易于调整等优点,在工业控制、航空航天、技术等领域有着广泛的应用。

本教程旨在帮助读者深入理解PID控制原理,掌握PID控制器的设计、参数调整和应用技巧。

二、PID控制原理PID控制器由比例(Proportional)、积分(Integral)和微分(Derivative)三个环节组成,其基本原理是根据控制对象的实际输出与期望输出之间的误差,对控制对象进行相应的调节。

1.比例控制(P)比例控制是根据误差的大小进行调节,其控制作用与误差成正比。

比例控制可以减小误差,提高系统的响应速度。

但比例控制无法消除稳态误差,可能导致系统在期望值附近波动。

2.积分控制(I)积分控制是对误差的累积进行调节,其控制作用与误差的累积成正比。

积分控制可以消除稳态误差,提高系统的稳态性能。

但积分控制可能导致系统的超调量和响应速度降低。

3.微分控制(D)微分控制是对误差的变化率进行调节,其控制作用与误差的变化率成正比。

微分控制可以提高系统的稳定性和响应速度,减小超调量。

但微分控制对噪声敏感,可能导致系统在期望值附近波动。

三、PID控制器的设计与参数调整1.确定控制对象和控制目标在设计PID控制器之前,要明确控制对象和控制目标。

控制对象是指需要进行控制的物理量,如温度、压力、位置等。

控制目标是指期望的控制对象达到的值或状态。

2.选择PID控制器类型根据控制对象的特点和控制目标的要求,选择合适的PID控制器类型。

常见的PID控制器类型有:(1)P控制器:适用于控制对象无稳态误差或稳态误差较小的情况。

(2)PI控制器:适用于控制对象有稳态误差,且对响应速度要求较高的情况。

(3)PD控制器:适用于控制对象有稳态误差,且对超调量要求较低的情况。

(4)PID控制器:适用于控制对象有稳态误差,且对超调量和响应速度都有一定要求的情况。

pid控制原理详解及实例说明

pid控制原理详解及实例说明

pid控制原理详解及实例说明PID控制是一种常见的控制系统,它通过比例、积分和微分三个控制参数来实现对系统的控制。

在工业自动化等领域,PID控制被广泛应用,本文将详细介绍PID控制的原理,并通过实例说明其应用。

1. PID控制原理。

PID控制器是由比例(P)、积分(I)和微分(D)三个部分组成的控制器。

比例部分的作用是根据偏差的大小来调节控制量,积分部分的作用是根据偏差的累积值来调节控制量,微分部分的作用是根据偏差的变化率来调节控制量。

PID控制器的输出可以表示为:\[ u(t) = K_p e(t) + K_i \int_{0}^{t} e(\tau) d\tau + K_d \frac{de(t)}{dt} \]其中,\(u(t)\)为控制量,\(e(t)\)为偏差,\(K_p\)、\(K_i\)、\(K_d\)分别为比例、积分、微分系数。

比例控制项主要用来减小静差,积分控制项主要用来消除稳态误差,微分控制项主要用来改善系统的动态性能。

通过合理地调节这三个参数,可以实现对系统的精确控制。

2. PID控制实例说明。

为了更好地理解PID控制的原理,我们以温度控制系统为例进行说明。

假设有一个加热器和一个温度传感器组成的温度控制系统,我们希望通过PID 控制器来控制加热器的功率,使得系统的温度稳定在设定的目标温度。

首先,我们需要对系统进行建模,得到系统的传递函数。

然后,根据系统的动态特性和稳态特性来确定PID控制器的参数。

接下来,我们可以通过实验来调节PID控制器的参数,使系统的实际响应与期望的响应尽可能接近。

在实际应用中,我们可以通过调节比例、积分、微分参数来实现对系统的精确控制。

比如,增大比例参数可以加快系统的响应速度,增大积分参数可以减小稳态误差,增大微分参数可以改善系统的动态性能。

通过不断地调节PID控制器的参数,我们可以使系统的温度稳定在设定的目标温度,从而实现对温度的精确控制。

总结。

通过本文的介绍,我们可以了解到PID控制的原理及其在实际系统中的应用。

PID控制算法详细讲解

PID控制算法详细讲解

PID控制算法详细讲解5.1 PID控制原理与程序流程5.1.1过程控制的基本概念过程控制一一对生产过程的某一或某些物理参数进行的自动控制。

一、模拟控制系统图5-1-1基本模拟反馈控制回路被控量的值由传感器或变送器来检测,这个值与给定值进行比较,得到偏差,模拟调节器依一定控制规律使操作变量变化,以使偏差趋近于零,其输出通过执行器作用于过程。

控制规律用对应的模拟硬件来实现,控制规律的修改需要更换模拟硬件。

二、微机过程控制系统微型计算机图5-1-2微机过程控制系统基本框图以微型计算机作为控制器。

控制规律的实现,是通过软件来完成的。

改变控制规律,只要改变相应的程序即可。

三、数字控制系统DDC图5-1-3 DDC系统构成框图DDC(Direct Digital Congtrol)系统是计算机用于过程控制的最典型的一种系统。

微型计算机通过过程输入通道对一个或多个物理量进行检测,并根据确定的控制规律(算法)进行计算,通过输出通道直接去控制执行机构,使各被控量达到预定的要求。

由于计算机的决策直接作用于过程,故称为直接数字控制。

DDC系统也是计算机在工业应用中最普遍的一种形式。

5.1.2模拟PID 调节器 一、模拟PID 控制系统组成二、模拟PID 调节器是一种线性调节器,它将给定值r(t)与实际输出值c(t)的偏差的比例(P)、积分(I)、微分(D)通过线性组合构成控制量,对控制对象进行控制。

、PID 调节器的微分方程u(t)二 K p e(t) T .0e (t)dt T D 售)式中 e(t)二 r(t) 一c(t)2 、PID 调节器的传输函数 三、PID 调节器各校正环节的作用1、 比例环节:即时成比例地反应控制系统的偏差信号e(t),偏差一旦产生,调节器 立即产生控制作用以减小偏差。

2、 积分环节:主要用于消除静差,提高系统的无差度。

积分作用的强弱取决于积分 时间常数TI ,TI越大,积分作用越弱,反之则越强。

PID控制原理详解及实例说明

PID控制原理详解及实例说明

PID控制原理详解及实例说明PID控制器是一种广泛应用于自动控制系统中的一种控制算法。

它可以根据被控对象的反馈信号,调整控制器的输出信号,从而实现对被控对象的控制。

PID控制器适用于各种自动控制系统,包括工业过程控制、机械运动控制和温度控制等。

本文将从PID控制原理和实例两个方面进行详细介绍。

首先,我们来看PID控制的原理。

PID控制器由三个部分组成,分别是比例(P)、积分(I)和微分(D)部分。

这三个部分可以根据具体的控制需求进行组合或选择。

比例部分(P)根据被控对象的反馈信号与期望值之间的偏差,输出与该偏差成正比的控制信号。

积分部分(I)通过积分被控对象的偏差信号,来消除静态误差。

微分部分(D)通过对被控对象的反馈信号进行微分,来预测被控对象未来的变化趋势。

PID控制的原理可以总结为以下几个步骤:首先,获取被控对象的反馈信号和期望值,计算偏差值;然后,根据比例系数和偏差值计算比例部分的输出;接着,将比例部分的输出与被控对象的反馈信号进行积分,并根据积分系数进行调整,计算积分部分的输出;最后,将比例部分和积分部分的输出与被控对象的反馈信号进行微分,并根据微分系数进行调整,计算微分部分的输出。

最终,将比例部分、积分部分和微分部分的输出进行加权求和,得到PID控制器的最终输出信号。

下面,我们以温度控制为例进行说明。

假设我们需要将一个物体加热到指定温度。

我们可以使用PID控制器来控制加热装置的功率,在达到指定温度时自动停止加热。

首先,我们需要将温度传感器的输出与设定温度进行比较,计算出温度的偏差。

然后,根据比例系数和偏差值计算出比例部分的输出。

如果比例部分的输出过大,可能会引发温度的过冲现象。

为了解决这个问题,我们引入积分部分,通过积分被控对象的偏差信号来消除静态误差。

如果积分部分的输出过大,可能会引发温度的振荡现象。

为了解决这个问题,我们引入微分部分,通过对温度的变化趋势进行预测,来控制加热装置的功率的变化速度。

由入门到精通吃透PID

由入门到精通吃透PID

由入门到精通吃透PIDPID控制器(Proportional-Integral-Derivative Controller)是一种常见的控制器,广泛应用于工业自动化领域。

它通过对系统的反馈信号进行比例、积分和微分运算,以达到控制系统稳定和响应速度的目的。

本文将从入门到精通分别介绍PID控制器的基本原理、参数调整方法和应用实例。

一、基本原理在控制系统中,PID控制器根据反馈信号与设定值之间的差异来调整输出信号,从而实现对被控对象的控制。

它由三个基本部分组成:比例控制部分、积分控制部分和微分控制部分。

1. 比例控制部分:根据反馈信号与设定值之间的差异,以一定的比例调节输出信号。

比例控制的作用是根据差异的大小来进行精确调节,但它不能解决系统的超调和稳态误差问题。

2. 积分控制部分:通过累积反馈信号与设定值之间的差异,对输出信号进行调节。

积分控制可以消除系统的稳态误差,但会增大系统的超调。

3. 微分控制部分:通过反馈信号的变化率来预测未来的发展趋势,以调节输出信号。

微分控制可以提高系统的响应速度和稳定性,但过大的微分作用会引入噪声和振荡。

PID控制器的输出信号可以表示为:u(t) = Kp * e(t) + Ki * ∫e(t)dt + Kd * de(t)/dt其中,u(t)为输出信号,Kp、Ki和Kd分别为比例、积分和微分增益,e(t)为反馈信号与设定值之间的误差,∫e(t)dt为误差的积分,de(t)/dt为误差的微分。

二、参数调整方法PID控制器的参数选择对控制系统的性能至关重要。

有许多方法可以调整PID控制器的参数,常见的包括经验法、试错法和优化算法。

1. 经验法:根据实际经验,选择适当的参数范围,并逐步调整参数,观察系统的响应变化。

这种方法简单直观,但需要具备一定的经验和调试能力。

2. 试错法:通过不断试验不同的参数组合,观察系统的响应,并根据系统的性能指标进行优化调整。

试错法可以快速找到合适的参数组合,但依赖于多次试验和手动调整。

简单有效的PID调节方法

简单有效的PID调节方法

简单有效的PID调节方法PID控制是一种常用的控制方法,在许多工业自动化和过程控制应用中广泛使用。

PID控制器可以根据系统的测量值和设定值进行调节,通过计算误差的比例、积分和微分部分来产生输出控制信号,从而实现对系统的稳定控制。

PID控制器由比例(P)、积分(I)和微分(D)三个控制部分组成,通过调整这三个部分的权重参数,可以实现对系统的精确控制。

下面是一些简单有效的PID调节方法:1.手动调校法:手动调校法是最简单直接的PID调节方法。

首先将控制器的三个参数P、I、D设置为零,然后逐步增加每个参数,观察系统反应。

通过观察和调整参数,直到系统达到所需的稳定状态。

这种方法需要经验和反复试验,但是可以在没有系统模型的情况下快速部署。

2. Ziegler-Nichols 方法:Ziegler-Nichols方法是一种经典的PID调节方法,将系统的冲击响应曲线用于参数调整。

首先将控制器的参数设置为零,然后逐步增加比例参数P,直到系统出现持续的震荡。

根据震荡周期T,可以计算出比例参数P、积分参数I和微分参数D的合适取值。

-P参数:设置为震荡周期的1/2;-I参数:设置为2倍的震荡周期;-D参数:设置为1/8的震荡周期。

3.设定点加持续曲线修正法:设定点加持续曲线修正法是一种基于反馈曲线的调节方法。

首先将控制器的参数设置为零,然后将设定点改变为一个较大的值。

观察系统反应的过程中,调整控制器的参数以实现稳定。

根据响应曲线的形状,调整P、I、D的权重参数,以使系统能够迅速且准确地响应设定点的变化。

4.模型预测控制法:模型预测控制法是一种基于系统模型的调节方法,通过建立系统的数学模型,并预测系统的响应,以改善控制效果。

该方法根据系统的模型通过优化算法计算出最优的PID参数。

-首先,需要建立系统的数学模型,可以使用系统辨识等方法进行建模;-然后,通过最优化算法(如梯度下降法或遗传算法)最优的PID参数;-最后,将优化得到的参数应用于控制器,并进行实际测试和调节。

pid控制原理详解及实例说明

pid控制原理详解及实例说明

pid控制原理详解及实例说明PID控制是一种经典的控制算法,适用于很多控制系统中。

它通过对误差进行反馈调整,以实现系统稳定和快速响应的目标。

PID控制包含三个部分,即比例(Proportional)、积分(Integral)和微分(Derivative)控制。

比例控制(P)是根据误差的大小来调整控制输出的大小。

当误差较大时,控制输出也会相应增加;而当误差较小时,控制输出减小。

比例系数Kp用于调节比例作用的强弱。

积分控制(I)是根据误差的累积值来调整控制输出的大小。

它主要用于消除稳态误差。

积分系数Ki用于调节积分作用的强弱。

微分控制(D)是根据误差的变化率来调整控制输出的大小。

它主要用于快速响应系统的变化。

微分系数Kd用于调节微分作用的强弱。

PID控制的输出值计算公式为:Output = Kp * Error + Ki * Integral(Error) + Kd * Derivative(Error)下面举一个温度控制的例子来解释PID控制的应用。

假设有一个温度控制系统,希望将温度维持在设定值Tset。

系统中有一个可以控制加热器功率的变量,设为u。

温度传感器可以实时测量当前温度T,误差为Error = Tset - T。

比例控制(P):根据误差值来调整加热器功率,公式为u =Kp * Error。

当温度偏低时,加热器功率增加;当温度偏高时,加热器功率减小。

积分控制(I):根据误差的累积值来调整加热器功率,公式为u = Ki * ∫(Error)。

当温度持续偏离设定值时,积分控制会逐渐累积误差,并调整加热器功率,以消除误差。

微分控制(D):根据误差的变化率来调整加热器功率,公式为u = Kd * d(Error)/dt。

当温度变化率较大时,微分控制会对加热器功率进行快速调整,以避免温度过冲。

这样,通过比例、积分和微分控制的组合,可以实现温度控制系统对设定温度的稳定和快速响应。

总结起来,PID控制通过比例、积分和微分控制,根据误差的大小、累积值和变化率来调整控制输出,使系统能够稳定地达到设定目标。

PID控制经典培训教程

PID控制经典培训教程

PID控制经典培训教程PID控制是一种经典的控制算法,被广泛应用于工业自动化领域。

本文将详细介绍PID控制的原理、调节方法以及实际应用案例,以帮助读者深入理解和掌握这一重要的控制技术。

第一节:PID控制原理PID控制是基于反馈原理的一种控制方法,由比例(P)、积分(I)和微分(D)三个控制环节组成。

比例控制环节根据目标值与实际值之间的差异进行调节;积分控制环节用于消除偏差积累;微分控制环节则用于预测偏差变化趋势。

这三个环节合理的组合和调节可以使控制系统更加稳定、精确地达到目标。

第二节:PID参数调节方法PID控制器的性能很大程度上取决于参数的选择。

常用的PID参数调节方法主要有试验法、经验法和自整定法。

试验法通过对系统进行试验,根据试验结果调节控制参数;经验法则基于实际应用经验,通过调整比例、积分和微分参数来达到理想控制效果;自整定法是通过系统建模和频率分析等方法,自动调整PID参数以实现最佳控制性能。

第三节:PID控制应用案例PID控制在各个工业领域都有广泛的应用。

以温度控制为例,将控制对象设为温度传感器,目标温度设定值为T0。

通过实时测量温度传感器输出的实际温度值T1与设定值T0的差异,并通过PID控制器输出适当的控制信号,调节加热或冷却设备的运行状态,以维持温度稳定在设定值附近。

第四节:PID控制器改进技术虽然PID控制在很多应用中表现出色,但在某些复杂系统中可能存在一些问题。

为了克服这些问题,人们提出了许多优化PID控制器的方法。

例如,基于模糊逻辑的模糊PID控制、基于人工神经网络的神经网络PID控制等。

这些改进技术能够更好地适应不同系统的控制需求,提高控制性能。

结语:PID控制作为一种经典的控制算法,在工业自动化领域发挥着重要的作用。

通过对PID控制原理、调节方法以及应用案例的学习,读者可以更好地理解和掌握PID控制技术,进而在实际应用中进行相应的控制设计和改进。

希望本文能够对读者有所启发,为他们提供有用的参考和指导。

PID控制原理详解及实例说明

PID控制原理详解及实例说明

PID控制原理详解及实例说明PID控制是一种常用的控制算法,它能够在工业控制系统中实现对各种参数的精确控制。

PID分别代表比例(proportional)、积分(integral)和微分(derivative),这三个参数共同决定了控制系统的输出。

在本文中,我们将详细介绍PID控制的原理,并通过一个实例来说明PID控制的应用。

**PID控制原理**PID控制算法的基本原理是通过反馈来调节控制系统的输出值,使其与期望值尽可能接近。

PID控制器根据当前的误差值(e),积分项(i)和微分项(d)来计算控制输出(u)。

具体来说,控制输出可以表示为以下公式:\[ u(t)=K_p \cdote(t)+K_i\cdot\int{e(t)dt}+K_d\cdot\frac{de(t)}{dt} \]其中,\(K_p\)、\(K_i\)和\(K_d\)分别是比例增益、积分增益和微分增益。

比例项用于根据误差信号的大小来调整输出,积分项用于修正系统的静态误差,微分项用于预测误差的变化趋势。

通过调节这三个参数的数值,可以使PID控制器在不同的控制情况下获得最佳性能。

**实例说明**为了更好地理解PID控制的应用,我们以一个简单的温度控制系统为例进行说明。

假设我们需要设计一个PID控制器来维持一个恒定的温度值,控制系统的输入是一个加热元件的功率,输出是系统的温度。

首先,我们需要建立一个数学模型来描述系统的动态特性。

假设系统的温度动态可以由以下微分方程描述:\[ \tau \cdot \frac{dT(t)}{dt}+T(t)=K \cdot P(t) \]其中,\(T(t)\)代表系统的温度,\(P(t)\)代表加热元件的功率,\(\tau\)代表系统的时间常数,\(K\)代表系统的传递函数。

接下来,我们可以根据这个数学模型来设计PID控制器。

首先,我们需要对系统进行参数调试,确定合适的比例增益\(K_p\)、积分增益\(K_i\)和微分增益\(K_d\)。

从小白到专家掌握PID调试技术的完全指南

从小白到专家掌握PID调试技术的完全指南

从小白到专家掌握PID调试技术的完全指南PID(Proportional Integral Derivative)是一种常用的控制算法,广泛应用于工业自动化领域。

在掌握PID调试技术之前,我们首先需要了解PID的基本原理和工作方式。

一、PID的基本原理PID控制器的作用是通过对系统反馈信号与设定值进行比较,计算出控制量的调节量,从而使系统稳定在设定值附近。

它由三个部分组成:比例部分(P)、积分部分(I)和微分部分(D)。

1. 比例部分(P):根据实际偏差的大小,以一定比例作用于控制量。

具体而言,当实际偏差越大时,P部分的调节量越大。

2. 积分部分(I):根据时间上的累积误差,以一定比例作用于控制量。

I部分的作用是消除稳态误差,使系统更加稳定。

3. 微分部分(D):根据实际偏差的变化率,以一定比例作用于控制量。

D部分的作用是预测未来的趋势,并提前调整控制量,以减小调节过程中的超调和振荡。

二、PID调试技术的步骤掌握PID调试技术的关键在于对PID参数的调整。

下面将为您介绍一种常用的PID调试技术,以帮助您从小白逐步成为专家。

1. 初始参数设定在进行PID调试之前,首先需要对PID参数进行初始设定。

我们可以先根据经验值或者系统模型给定一个初始参数,然后再进行调整。

2. 比例增益调整将积分时间常数(Ti)和微分时间常数(Td)设置为较大的值(如Ti=10*Td=10)进行调试。

然后逐步增大比例增益(Kp),观察系统的响应。

当系统出现永久偏差时,可以通过增大Kp来减小偏差;当系统出现超调或者振荡时,可以通过降低Kp来减小超调和振荡。

3. 积分时间常数调整保持比例增益不变,逐步减小积分时间常数(Ti),观察系统的响应。

如果系统出现快速振荡或者超调,说明积分时间常数太小,可以适当增大Ti;如果系统出现较大的永久偏差,说明积分时间常数太大,可以适当减小Ti。

4. 微分时间常数调整保持比例增益和积分时间常数不变,逐步增大微分时间常数(Td),观察系统的响应。

从零开始初学者指南教你如何使用PID调节

从零开始初学者指南教你如何使用PID调节

从零开始初学者指南教你如何使用PID调节PID调节是一种常见的控制算法,广泛应用于工业自动化领域。

对于初学者来说,学习和理解PID调节可能会有一定的困难。

本文将从零开始,提供一个初学者指南,教你如何使用PID调节。

一、PID调节概述PID调节是一种反馈控制系统中的一种常见算法。

PID代表比例、积分和微分控制,通过对系统输出与期望值之间的误差进行比较,产生控制信号来稳定系统。

1. 比例(Proportional)控制比例控制是PID调节中最基础的部分,它根据当前误差的大小进行输出的调整。

比例系数(Kp)决定了输出调整的速度,当误差增大时,输出也相应增大。

2. 积分(Integral)控制积分控制是为了解决比例控制无法消除静态误差的问题。

通过累积误差,并乘以积分系数(Ki)进行输出调整,积分控制可以减小较小的误差,并消除静态误差。

3. 微分(Derivative)控制微分控制通过检测误差变化速率来进行输出调整。

它可以减小系统的响应时间,并减少超调和震荡。

微分系数(Kd)决定了调整速度的快慢。

二、设定PID参数在实际应用中,正确设置PID参数是关键。

参数的设定需要根据具体的系统特征进行调整。

1. 比例系数(Kp)比例系数是PID调节中最重要的参数之一,它决定了输出调整的速度。

一般情况下,可以从一个较小的值开始,逐渐增加直到系统开始震荡。

2. 积分系数(Ki)积分系数是用于减小静态误差的参数。

开始时,可以将其设为零,逐渐增加直到系统的静态误差消除为止。

3. 微分系数(Kd)微分系数用于减小系统的超调和震荡。

较小的值可能足够满足大多数情况。

三、使用PID调节的步骤使用PID调节进行控制需要以下步骤:1. 收集系统数据首先,需要收集系统的输入和输出数据。

这些数据将用于分析系统的特征,并设置PID参数。

2. 设定目标值根据实际需求,设定系统的目标值。

PID控制将使输出尽可能接近设定值。

3. 初始化PID参数根据收集到的系统数据,初始化比例、积分和微分系数。

PID控制原理详解及实例说明

PID控制原理详解及实例说明

PID控制原理详解及实例说明PID控制是一种常用的控制算法,它通过测量系统的状态与设定值之间的差异,利用比例、积分和微分三个控制参数来调节系统的控制量,使其尽量接近设定值。

PID控制器通过不断调整这三个参数,可以在稳态误差小的情况下快速、平稳地将系统控制到设定值。

PID控制器的输出由三个部分组成:比例项、积分项和微分项。

比例项是测量误差与设定值之间的比例关系,调整比例参数可以控制系统的敏感程度;积分项是历史误差的积累,调整积分参数可以消除稳态误差;微分项是测量误差的变化率,调整微分参数可以增强系统的稳定性。

PID控制器的输出可以用以下公式表示:u(t) = Kp * e(t) + Ki * ∫e(t)dt + Kd * de(t)/dt其中,u(t)是控制器的输出,e(t)是测量误差,Kp、Ki和Kd是分别对应比例、积分和微分参数。

接下来以一个温度控制系统为例说明PID控制的原理:假设有一个恒温箱,我们希望将箱内的温度控制在一个设定值。

首先,我们需要测量箱内的温度和设定值之间的差异,即测量误差。

然后,根据测量误差的大小,我们可以调整控制器的输出,通过增加或减少加热器的功率,使温度接近设定值。

在PID控制中,我们可以通过调节比例参数Kp来控制系统的灵敏度。

增大Kp可以使系统对误差更敏感,但过大的Kp可能导致系统震荡。

当温度误差较大时,控制器会输出较大的功率,加热箱内的温度快速升高;当温度接近设定值时,控制器会输出较小的功率,使温度稳定在设定值附近。

积分参数Ki用于消除稳态误差。

如果系统存在稳态误差,说明温度无法完全达到设定值,可能是由于传感器或加热器的不精确性引起的。

通过调节Ki的大小,积分项可以自动调整系统的控制量,消除稳态误差。

微分参数Kd用于增强系统的稳定性。

如果系统的温度变化率很大,说明加热或冷却过程不够平稳。

通过调节Kd的大小,微分项可以抑制温度的剧烈波动,使系统更加稳定。

综上所述,PID控制器通过比例、积分和微分三个参数的调节,可以实现快速、平稳地将系统控制到设定值。

工业控制中PID控制方法的使用教程

工业控制中PID控制方法的使用教程

工业控制中PID控制方法的使用教程PID(比例-积分-微分)控制是一种广泛应用于工业控制中的经典控制方法。

它通过根据当前偏差的大小来调整控制器的输出,实现对系统的稳定性和精度的控制。

在本文中,我们将介绍PID控制的基本原理、参数调整方法和应用实例,帮助读者理解和应用PID控制方法。

一、PID控制的基本原理PID控制的基本原理是根据当前偏差的大小,将比例项、积分项和微分项的加权和作为控制器的输出。

具体而言,PID控制器的输出可以表示为:\[u(t) = K_p e(t) + K_i \int_{0}^{t} e(\tau) d\tau + K_d \frac{de(t)}{dt}\]其中,u(t)为控制器的输出,e(t)为设定值与实际值之间的偏差,Kp、Ki和Kd分别为比例项、积分项和微分项的增益。

1. 比例项(Proportional):比例项根据当前偏差的大小来调整控制器的输出。

它的作用是使控制器能够迅速响应偏差变化,并带来一定的调节力,但常常会导致系统的震荡和超调。

2. 积分项(Integral):积分项根据偏差的累积值来调整控制器的输出。

它的作用是使控制器能够消除静差,并实现系统的精确控制。

然而,过大的积分时间常数可能导致系统的不稳定性和超调。

3. 微分项(Derivative):微分项根据偏差的变化率来调整控制器的输出。

它的作用是使控制器能够预测系统的未来偏差趋势,并提前调整控制器的输出。

过大的微分时间常数可能会引入噪声响应和系统不稳定。

通过调整比例项、积分项和微分项的增益,可以在控制过程中平衡系统的响应速度、精度和稳定性。

二、PID控制参数的调整方法PID控制器的性能取决于控制参数的选择。

通常情况下,PID控制参数的调整是一个经验性的过程,需要根据实际系统的特性和控制要求进行实验和优化。

1. 手动调整方法:手动调整方法是一种简单直接的方法,适用于对系统特性有一定了解的情况。

手动调整需要根据系统的响应曲线,通过逐渐调整比例增益、积分时间常数和微分时间常数,以达到满足控制要求的效果。

pid控制面板的使用方法

pid控制面板的使用方法

pid控制面板的使用方法【原创实用版4篇】《pid控制面板的使用方法》篇1PID 控制面板是一种用于调节控制系统的设备,通常包括比例、积分和微分三个控制器。

在使用PID 控制面板时,需要按照以下步骤进行操作:1. 连接传感器和执行器:将传感器和执行器连接到PID 控制面板的相应端口,以获取系统实时的反馈信息和控制执行器的输出。

2. 设置PID 参数:根据系统的特性和实际需求,设置比例、积分和微分三个控制器的参数。

比例控制器的参数决定了控制器输出的变化量与偏差之间的比例关系,积分控制器的参数决定了控制器输出的变化量与偏差积分值之间的比例关系,微分控制器的参数决定了控制器输出的变化量与偏差变化率之间的比例关系。

3. 启动控制系统:打开PID 控制面板的电源,启动控制系统。

此时,PID 控制器会根据设置的参数自动计算并输出控制信号,控制执行器的动作。

4. 调试系统:在系统运行过程中,根据实际需求和系统反馈信息,逐步调整PID 参数,以达到所需的控制效果。

需要注意的是,在调整参数时,应该缓慢、渐进地调整,以避免系统出现剧烈波动或不稳定的情况。

5. 维护系统:在系统运行过程中,定期检查传感器、执行器和PID 控制面板的工作状态,确保系统的稳定性和可靠性。

如果出现异常情况,应及时进行维护和修理。

《pid控制面板的使用方法》篇2PID 控制面板是一种用于调节控制系统的工具,通常用于工业自动化领域。

PID 控制器使用比例、积分和微分三种控制算法来调整控制系统的输出,以达到所需的输出或目标。

使用PID 控制面板时,需要先将面板连接到控制系统的输入和输出设备上。

然后,根据控制系统的需要,设置PID 控制器的参数,包括比例增益、积分时间和微分时间等。

在设置参数时,需要根据控制系统的具体情况进行调整。

一般来说,初调时参数应该设置得较小,然后慢慢调大,直到系统波动足够小,再调节积分或微分系数。

过大的参数值会导致系统不稳定,持续振荡;过小的参数值又会使系统反应迟钝。

(完整版)PID控制详解

(完整版)PID控制详解

PID控制原理和特点工程实际中,应用最为广泛调节器控制规律为比例、积分、微分控制,简称PID控制,又称PID调节。

PID控制器问世至今已有近70年历史,它以其结构简单、稳定性好、工作可靠、调整方便而成为工业控制主要技术之一。

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

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

PID控制,实际中也有PI和PD控制。

PID控制器就是系统误差,利用比例、积分、微分计算出控制量进行控制。

1、比例控制(P):比例控制是最常用的控制手段之一,比方说我们控制一个加热器的恒温100度,当开始加热时,离目标温度相差比较远,这时我们通常会加大加热,使温度快速上升,当温度超过100度时,我们则关闭输出,通常我们会使用这样一个函数e(t) = SP – y(t)-u(t) = e(t)*PSP——设定值e(t)——误差值y(t)——反馈值u(t)——输出值P——比例系数滞后性不是很大的控制对象使用比例控制方式就可以满足控制要求,但很多被控对象中因为有滞后性。

也就是如果设定温度是200度,当采用比例方式控制时,如果P选择比较大,则会出现当温度达到200度输出为0后,温度仍然会止不住的向上爬升,比方说升至230度,当温度超过200度太多后又开始回落,尽管这时输出开始出力加热,但温度仍然会向下跌落一定的温度才会止跌回升,比方说降至170度,最后整个系统会稳定在一定的范围内进行振荡。

如果这个振荡的幅度是允许的比方说家用电器的控制,那则可以选用比例控制2、比例积分控制(PI):积分的存在是针对比例控制要不就是有差值要不就是振荡的这种特点提出的改进,它常与比例一块进行控制,也就是PI控制。

其公式有很多种,但大多差别不大,标准公式如下:u(t) = Kp*e(t) + Ki∑e(t) +u0u(t)——输出Kp——比例放大系数Ki——积分放大系数e(t)——误差u0——控制量基准值(基础偏差)大家可以看到积分项是一个历史误差的累积值,如果光用比例控制时,我们知道要不就是达不到设定值要不就是振荡,在使用了积分项后就可以解决达不到设定值的静态误差问题,比方说一个控制中使用了PI控制后,如果存在静态误差,输出始终达不到设定值,这时积分项的误差累积值会越来越大,这个累积值乘上Ki后会在输出的比重中越占越多,使输出u(t)越来越大,最终达到消除静态误差的目的PI两个结合使用的情况下,我们的调整方式如下:1、先将I值设为0,将P值放至比较大,当出现稳定振荡时,我们再减小P值直到P值不振荡或者振荡很小为止(术语叫临界振荡状态),在有些情况下,我们还可以在些P值的基础上再加大一点。

PID参数设置及调节方法

PID参数设置及调节方法

PID参数设置及调节方法PID控制器是一种通过对被控对象的测量值与参考值进行比较,并根据误差值来调整控制器输出的方法。

PID参数的设置和调节是PID控制的关键部分,合理的参数设置可以使系统稳定性和响应速度达到最佳状态。

本文将详细介绍PID参数的设置方法以及常用的调节方法。

一、PID参数设置方法:1.经验法:通过实际系统控制经验来设置PID参数。

a.暂时忽略I和D项,先将P参数设为一个较小的值进行试控,观察系统的响应情况。

b.根据实际系统的特性,逐渐增大P参数,直至系统开始发散或产生剧烈振荡,这时就找到了P参数的临界值。

c.根据实际系统的稳态误差,调整I参数,使系统能够快速消除稳态误差。

d.根据系统的动态响应情况,调整D参数,使系统的超调量和响应速度达到最优。

2. Ziegler-Nichols方法:利用开环实验数据来设置PID参数。

a.将系统工作在开环状态下,即没有反馈控制。

b.逐步增大控制器的P参数,直至系统开始发散或产生剧烈振荡,记下此时的P临界值Ku。

c.通过实验得到的P临界值Ku,可以根据以下公式得到PID参数:-P参数:Kp=0.6*Ku-I参数:Ti=0.5*Tu-D参数:Td=0.125*Tu其中,Tu为系统开始发散或产生剧烈振荡时的周期。

3. Cohen-Coon方法:利用闭环实验数据来设置PID参数。

a.在系统工作在闭环状态下,进行阶跃响应实验。

b.根据实验得到的曲线,计算响应曲线的时间常数T和该时间常数对应的增益K。

c.根据以下公式计算PID参数:-P参数:Kp=0.5*(K/T)-I参数:Ti=0.5*T-D参数:Td=0.125*T二、PID参数调节方法:1.手动调节法:通过观察系统响应曲线和实际系统需求来手动调整PID参数。

a.调整P参数:增大比例系数可以加快系统的响应速度,但可能会引起系统的振荡;减小比例系数可以减小系统的超调和振荡,但可能会导致响应速度过慢。

b.调整I参数:增大积分系数可以消除系统的稳态误差,但可能会使系统响应速度变慢或产生振荡;减小积分系数可以减小系统的超调和振荡,但可能会引起稳态误差。

学会PID通用调试方法,什么控制器都不怕!

学会PID通用调试方法,什么控制器都不怕!

学会PID通用调试方法,什么控制器都不怕!【导读】搞懂PID基本原理和通用调试方法,不管是什么品牌的PLC还是其它控制器,都能比较快速的调试成功。

(一)先来彻底搞懂PID到底是什么?啥是PID?PID,就是“比例(proportional)、积分(integral)和微分(derivative)”,是一种很常见的控制算法。

算法是不可以吃的。

PID已经有107年的历史了。

它并不是什么很神圣的东西,大家一定都见过PID的实际应用。

比如四轴飞行器,再比如平衡小车......还有汽车的定速巡航、3D打印机上的温度控制器....就是类似于这种:需要将某一个物理量“保持稳定”的场合(比如维持平衡,稳定温度、转速等),PID都会派上大用场。

那么问题来了:比如,我想控制一个“热得快”,让一锅水的温度保持在50℃,这么简单的任务,为啥要用到微积分的理论呢。

你一定在想:这不是so easy嘛~ 小于50度就让它加热,大于50度就断电,不就行了?几行代码用Arduino分分钟写出来。

没错~在要求不高的情况下,确实可以这么干~ But!如果换一种说法,你就知道问题出在哪里了?如果我的控制对象是一辆汽车呢?要是希望汽车的车速保持在50km/h不动,你还敢这样干么。

设想一下,假如汽车的定速巡航电脑在某一时间测到车速是45km/h。

它立刻命令发动机:加速!结果,发动机那边突然来了个100%全油门,嗡的一下,汽车急加速到了60km/h。

这时电脑又发出命令:刹车!结果,吱...............哇............(乘客吐)所以,在大多数场合中,用“开关量”来控制一个物理量,就显得比较简单粗暴了。

有时候,是无法保持稳定的。

因为单片机、传感器不是无限快的,采集、控制需要时间。

而且,控制对象具有惯性。

比如你将一个加热器拔掉,它的“余热”(即热惯性)可能还会使水温继续升高一小会。

这时,就需要一种『算法』:•它可以将需要控制的物理量带到目标附近•它可以“预见”这个量的变化趋势•它也可以消除因为散热、阻力等因素造成的静态误差•....于是,当时的数学家们发明了这一历久不衰的算法——这就是PID。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

PID调节控制做电机速度控制V1.1 – Jan 23, 2006中文版版权声明凌阳科技股份有限公司保留对此文件修改之权利且不另行通知。

凌阳科技股份有限公司所提供之信息相信为正确且可靠之信息,但并不保证本文件中绝无错误。

请于向凌阳科技股份有限公司提出订单前,自行确定所使用之相关技术文件及规格为最新之版本。

若因贵公司使用本公司之文件或产品,而涉及第三人之专利或著作权等智能财产权之应用及配合时,则应由贵公司负责取得同意及授权,本公司仅单纯贩售产品,上述关于同意及授权,非属本公司应为保证之责任。

又未经凌阳科技股份有限公司之正式书面许可,本公司之所有产品不得使用于医疗器材,维持生命系统及飞航等相关设备。

目录页1模拟PID控制 (1)1.1 模拟PID控制原理 (1)2数字PID控制 (3)2.1 位置式PID算法 (3)2.2 增量式PID算法 (4)2.3 控制器参数整定 (4)2.3.1 凑试法 (5)2.3.2 临界比例法 (5)2.3.3 经验法 (5)2.3.4 采样周期的选择 (6)2.4 参数调整规则的探索 (6)2.5 自校正PID控制器 (7)3软件说明 (8)3.1 软件说明 (8)3.2 档案构成 (8)3.3 DMC界面 (8)3.4 子程序说明 (9)4程序范例 (16)4.1 DEMO程序 (16)4.2 程序流程与说明 (19)4.3 中断子流程与说明 (20)5MCU使用资源 (21)5.1 MCU硬件使用资源说明 (21)6实验测试 (22)6.1 响应曲线 (22)7参考文献 (26)修订记录日期版本编写及修订者编写及修订说明2004/11/26 1.0 初版2006/1/23 1.1 错误校正3 软件说明3.1 软件说明AN_SPMC75_0012在微处理器SPMC75F2413A上实现数字PID对BLDC速度的调节,重点将是对PID参数的整定,使系统的动静态性能达到“满意”的效果。

3.2 档案构成文件名称功能类型Main BLDC驱动相关参数初始化,DMC服务 CChap2 BLDC驱动相关函数 CInitial 系统所有相关初始化程序 CISR 驱动中相应的中断服务 C DigitalPID_V100.lib PID设置,初始化和PID计算函数库函数lib Spmc75_dmc_lib_V100.lib DMC通信程序lib3.3 DMC界面Speed1_Cmd:设置电机运转的速度Speed1_Now:电机当前反馈速度Speed1_Kp:2.5节自校正PID控制器中提到的Kp值User_R0:当前P_TMR3_TGRA寄存器的值User_R1:设置速度与电机实际转速的差值Motor 1 Start 和Motor 1 Stop 控制启停3.4 子程序说明PIDInit ( )原形void PIDInit (void)描述PID所用到的RAM清零输入参数无输出参数无头文件Spmc75_PID.h库文件DigitalPID_V100注意事项请在设置参数前使用。

例子PIDInit ();PIDSetPoint ( )原形void PIDSetPoint(int)描述设置PID调节的目标值输入参数期望值输出参数无头文件Spmc75_PID.h库文件DigitalPID_V100注意事项例子PIDSetPoint (2000); //期望电动机的转速为2000rpmPIDGetSetpoint ( )原形int PIDGetSetpoint(void)描述读取PID调节设置的目标值输入参数无输出参数所设置的期望值头文件Spmc75_PID.h库文件DigitalPID_V100注意事项得到的期望值将和数值的是同一个数值例子uiSpeed =PIDSetPoint (); //读取所设置的期望电动机转速IncPIDCalc ( )原形int IncPIDCalc(int)描述增量式PID计算输入参数PID调节当前采样值输出参数计算增量头文件Spmc75_PID.h库文件DigitalPID_V100注意事项(式2-5)增量式PID算法的实现。

例子uiGoalvalue += IncPIDCalc (1998); //位置式PID控制算法通过增量式控制算法递推实现,当前采样得到转速1998rpm。

LocPIDCalc ( )原形unsigned int LocPIDCalc(int)描述位置式PID计算输入参数PID调节当前采样值输出参数位置式PID计算出的绝对位置值头文件Spmc75_PID.h库文件DigitalPID_V100注意事项(式2-4)位置式式PID算法的实现。

例子uiGoalvalue = LocPIDCalc (1998); //位置式PID控制算法,当前采样得到转速1998rpm。

其它应用函数式对BLDC驱动的实现,不再一一赘述,可以参考【AN_SPMC75_0003】应用例的介绍。

4 程序范例4.1 DEMO程序/*=============================================*///应用范例/*=============================================*/#include "Spmc75_regs.h"#include "Spmc_typedef.h"#include "unspmacro.h"#include "Spmc75_BLDC.h"main(){P_IOA_SPE->W = 0x0000;P_IOB_SPE->W = 0x0000;P_IOC_SPE->W = 0x0000;Spmc75_System_Init(); //Spmc75系统初始化while(1){BLDC_Run_Service(); //启停监控NOP();}}//================================================================= // Description: IRQ0 interrupt source is XXX,used to XXX// Notes:错误保护//================================================================= void IRQ0(void) __attribute__ ((ISR));void IRQ0(void){IPM_Fault_Protect();}//================================================================= // Description: IRQ1 interrupt source is XXX,used to XXX// Notes:BLDC启动及正常运行服务//================================================================= void IRQ1(void) __attribute__ ((ISR));void IRQ1(void){/*=============================================================*/ /*Position detection change interrupt/*=============================================================*/ if(P_TMR0_Status->B.PDCIF && P_TMR0_INT->B.PDCIE){BLDC_Motor_Normalrun();}/*=============================================================*/ /*Timer Counter Overflow/*=============================================================*/ if(P_TMR0_Status->B.TCVIF && P_TMR0_INT->B.TCVIE){BLDC_Motor_Startup();}P_TMR0_Status->W = P_TMR0_Status->W;}//=================================================================// Description: IRQ6 interrupt source is XXX,used to XXX// Notes:DMC接收中断服务函数//================================================================= void IRQ6(void) __attribute__ ((ISR));void IRQ6(void){if(P_INT_Status->B.UARTIF){if(P_UART_Status->B.RXIF) MC75_DMC_RcvStream();if(P_UART_Status->B.TXIF && P_UART_Ctrl->B.TXIE);}}//=================================================================// Description: IRQ7 interrupt source is XXX,used to XXX// Notes:512Hz定时中断完成PID调节速度//================================================================= void IRQ7(void) __attribute__ ((ISR));void IRQ7(void){if(P_INT_Status->B.CMTIF){if(P CMT Ctrl->B.CM0IF && P CMT Ctrl->B.CM0IE){BLDC_Motor_Actiyator();}P_CMT_Ctrl->W = P_CMT_Ctrl->W;}}PID计算子函数://数据结构typedef struct PID{int SetPoint; //设定目标 Desired Valuelong SumError; //误差累计double Proportion; //比例常数 Proportional Const double Integral; //积分常数 Integral Constdouble Derivative; //微分常数 Derivative Constint LastError; //Error[-1]int PrevError; //Error[-2]} PID;static PID sPID;static PID *sptr = &sPID;//PID参数初始化void IncPIDInit(void){sptr->SumError = 0;sptr->LastError = 0; //Error[-1]sptr->PrevError = 0; //Error[-2]sptr->Proportion = 0; //比例常数 Proportional Const sptr->Integral = 0; //积分常数Integral Constsptr->Derivative = 0; //微分常数 Derivative Constsptr->SetPoint = 0;}//增量式PID控制设计int IncPIDCalc(int NextPoint){register int iError, iIncpid;//当前误差iError = sptr->SetPoint - NextPoint;//增量计算iIncpid = sptr->Proportion * iError //E[k]项- sptr->Integral * sptr->LastError //E[k-1]项+ sptr->Derivative * sptr->PrevError; //E[k-2]项//存储误差,用于下次计算sptr->PrevError = sptr->LastError;sptr->LastError = iError;//返回增量值return(iIncpid);}//位置式PID控制设计unsigned int LocPIDCalc(int NextPoint){register int iError,dError;iError = sptr->SetPoint - NextPoint; //偏差//积分iError;+=sptr->SumErrordError = iError - sptr->LastError; //微分sptr->LastError = iError;return(sptr->Proportion * iError //比例项+ sptr->Integral * sptr->SumError //积分项+ sptr->Derivative * dError); //微分项}4.2 程序流程与说明主程序主要完成系统必要的初始化,而对电动机的实时处理基本上是在中断中完成的,其中涉及到的中断主要有:IRQ0的错误输入和输出中断、IRQ1的PDC和TCV中断、IRQ6的UART RXD 中断及CMT0的定时中断。

相关文档
最新文档