mega99 发表于 2023-1-26 11:24

单片机/DSP数字化控制与Z变换 满满的干货!

本帖最后由 mega99 于 2023-2-4 09:46 编辑

回复本帖显示全部内容和下载附件

#申请原创#   
      我们知道,在利用单片机或者是DSP进行控制的时候,被控制量一般是模拟量,所以需要AD采样转换成数字量,

再通过数字量的变换处理去控制模拟量,这个过程实际就是数字信号处理的过程。这里讲下数字PID控制,在

网路上搜了下PID数字控制的相关资料,发现有部分的推导公式是错误的,而且没有一个采用Z变换来求解PID数字

控制序列信号,特别是在数字控制的离散化这块基本化是利用微分方程进行的,比喻 df(t)/dt ,那么数字离散成

f(n) - f(n-1) / T来近似(以下讲的都是右向序列,不对收敛ROC做讨论),下面我用Z的反变换来推导PID的数字控制序列,这些

方法可以推广到其他的数字控制中,实现从f(t)-->F(s)-->F(z)-->f(k) 数字化控制,而Z变换就是这个利器,这中间还涉及零极点

的数字化补偿,这里主要是利用逆向Z变换来求数字控制序列 x   **** Hidden Message *****

通过本贴,你将彻底弄明白PID数字控制的原理

下图是经典的PID控制框图







mega99 发表于 2023-1-26 11:46

本帖最后由 mega99 于 2023-1-26 14:34 编辑

      对连续的模拟量f(t)采样,按理想的采样器完成模型建立就是f(t) * δT(t)

在时间轴上离散化就是f(kT) *   δT(t - kT) ,这就是f(t)在 δT(t - kT)的作用下得到一系列的幅度为f(kT)冲激串,

这个冲激串是离散的信号

这就是我们采样后得到的序列信号,这些信号可以直接存在的计算机或者控制的内存单元x下图中es(t) = e(k) ,

这种离散信号可以直接存在x数组中,完成了数字化的采样






mega99 发表于 2023-1-26 12:14

本帖最后由 mega99 于 2023-1-26 12:27 编辑

      对于上式,两边取拉普拉斯变换就是离散的拉普拉斯信号,再映射到z平面就是z函数了
   一般地,对一个模拟系统数字化控制,可以先求出系统的传递函数H(s)(这样更简单)

再通过s变换到z域,然后通过z函数求解差分方程,也就反变换求出序列信号f(k),根据上图①的

模拟PID控制函数,很容易得到下面的传递函数H(s)

mega99 发表于 2023-1-26 12:33

本帖最后由 mega99 于 2023-1-26 12:34 编辑

通过后向差分,把H(s)转换成关于Z的H(z)函数 ,图④

mega99 发表于 2023-1-26 13:35

离散的拉普拉斯变换后是关于s的函数,现在要映射到关于z的平面上

令 z = e^(sT)    ,实现了s-->z的映射

U(z)是一个关于z的幂级数

下面给出z的通项公式

mega99 发表于 2023-1-26 13:40

本帖最后由 mega99 于 2023-1-26 15:53 编辑

通过④式反Z变换,得到关于u(k)的序列信号 图⑥
**** Hidden Message *****

mega99 发表于 2023-1-26 13:48

本帖最后由 mega99 于 2023-1-29 13:42 编辑

对⑥式进行合并化简后为下图式子,这个式子在网络上大部分是对的,实际控制中
为了调试方便还是不要PID三项控制分开

mega99 发表于 2023-1-26 14:14

本帖最后由 mega99 于 2023-1-29 13:42 编辑

转换成增量PID

zwjiang 发表于 2023-1-26 15:28

学习学习

mega99 发表于 2023-1-26 15:32

本帖最后由 mega99 于 2023-1-29 13:47 编辑


上式转换成增量PID
回复有附件**** Hidden Message *****


xch 发表于 2023-1-26 17:16

宇宙第一了。

jameswangchip 发表于 2023-1-26 20:15

好好学习!

dytg 发表于 2023-1-26 21:31

谢谢分享。

王栋春 发表于 2023-1-26 22:16

学习了解一下,多谢楼主分享。

zyj9490 发表于 2023-1-27 00:07

okokoklokokk

shenwen2011 发表于 2023-1-27 02:12

谢谢楼主

apan 发表于 2023-1-27 16:12

谢谢分享!

cooldog123pp 发表于 2023-1-27 20:10

没有回复之前没有看到具体代码,希望回复以后能看到具体代码,还有能说下具体单片机型号。

00750 发表于 2023-1-27 21:22

了解一下

w1w1 发表于 2023-1-28 09:41

挺复杂的,有简化的吗?
页: [1] 2 3
查看完整版本: 单片机/DSP数字化控制与Z变换 满满的干货!