机械社区

 找回密码
 注册会员

QQ登录

只需一步,快速开始

搜索
查看: 25515|回复: 69

怎样利用数学模型进行精确控制?

[复制链接]
发表于 2013-10-24 18:11:12 | 显示全部楼层 |阅读模式
最近在学自动控制,处于9-98大侠所说的转专业的状态(原专业是机械),试着做了一个温度控制系统,硬件:触摸屏---PLC---固态继电器---发热盘---热电偶+变送器---AD转换。
控制方法是PID,其中最关键的是PID参数整定的问题,查了下资料,常用的有试凑法、等幅振荡法、飞升曲线法。
这些都是在不知道数学模型的情况下用的,还有一种方法就是建立控制对象的数学模型,进而搭建整个控制系统的传递函数,再根据控制指标求得PID的参数。下面,我尝试用这种方法来做。
0 t' U: Q8 v* F. V4 r
步骤:& M) Y) y. Z( o( `# O' S- R3 l) @
(1)确定基本数学模型;) x' a# W, M  p% z' T. X+ R6 s
(2)从阶跃响应得到模型的参数;" P/ h$ }7 d5 j- `! Y7 ?
(3)Matlab仿真,得到PID参数;
( U! D9 N) C5 \(4)实际运行,并调试。
; `. @! T/ Z3 j9 K4 H
详细的推导过程在附件。
问题:
这里我建立的数学模型目的只是为了更快地得到PID的参数,不通过数学模型而用试凑的方法也能得到,只不过麻烦点。之前请教过9-98大侠关于精确控制的问题,不知道怎样利用数学模型进行精确控制?应该不是用PID控制吧。
' J, a4 c- ~% B

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册会员

x

评分

参与人数 3威望 +32 收起 理由
野嘉森 + 1
老鹰 + 30
ltk5614 + 1 问题描述清楚,显得很专业!

查看全部评分

本帖被以下淘专辑推荐:

回复

使用道具 举报

发表于 2013-10-24 18:52:47 | 显示全部楼层
你这么想一个问题,这种控制,其核心问题是为了实现一个‘目标’,一切是围绕这个目标的,其展开、持续发生、结束,都是为一个目标,实现这个目标,并对比那个实现的数值,就是你需要的精度误差,* b% O! V3 e6 O$ _$ q% y8 i6 b4 g
) N, f2 f) v9 }# B& O) ?
给你举一个例子,你就明白了,
7 W2 C6 D: E9 J, F
; K2 e6 T( \) L$ e# v. @, h5 R1 M1,为控制一个稳定的温度目标值,要一套供热系统,一套阀组系统,一套自动化系统,并且还有你要控制的那个‘加热体’,
9 P1 C7 B# y5 |8 N& S& Y- D5 |+ y7 P0 G) t, k) q7 h2 b
2,你对目标加热,一定有一个加热速率,其数值与原始的热动势,阀组开度,泵系统效率有关系,你控制好这个,就实现了那个速率,这不是核心问题,加热速率是一个动态问题,好玩,不复杂,
" }0 I) J1 K/ v5 }# k2 T0 p5 j2 M6 r: Y: a
3,核心问题是你怎么控制那个‘目标值’,你以一个速率来‘驱动加热’,到目标点就会有‘过冲现象’,你用PID来抑制这个,就会影响你加热速率,假如你希望完全达到你的目标点,加热速率就很低,甚至是遥遥无期,这在工艺上不现实,甲方也不允许,5 M$ W# j1 e0 Y

- f+ [2 U& w( q& P4,你用‘屁埃地’到一个接近值的时候,这个PID就无效了,或者过冲,或者没法接近,! M% \( y! X# ~3 r4 ^" G! g- l
5 q, |' g* y! U. M& }
5,再往下玩,就是你自己的模型了,你厉害,是厉害在你自己的模型上面了,用PID谁都会的,大家都会,你就没法牛,4 N/ C  Q& C1 @* ?0 k. r, u" Y
- g1 k7 A: _, u
6,你切了PID,就得玩你自己的东西了,你必须准确知道那个加热体的确切问题,比如热容,散热率等东西,不知道这个,没法精确控制目标点,8 i' H* N6 u6 ?2 W+ b
* S, p# Q/ b. c0 ~- w
7,你写数学模型,就是先要预知那个目标,即再给多少热量,就正好是你目标,并且不过冲,或者过冲非常小,其与理论目标值的差值,这就是你要的精度,水平高,是在这个上面了,, F- Z* b* o/ z& n/ v8 q

( Y! V* Q: }/ \- f6 V2 E8,假如你用‘单短路’来玩PID 的话,后期要开‘双短路’,切掉‘双短路’以后,切入你的模型,7 x! k' ^6 J+ u! |9 s. n

; O0 Z! a+ T7 p2 P3 I' F# b9,即使是‘三短路 也只能玩到一定精度,高了都不行,这之后,你用你自己的模型去带‘中继箱’,用中继箱的温度去换那个‘加热体’的热容空缺,假如计算准确的条件下,一次就‘准确切入’了,所谓说模型,是这个模型,而不是PID,一次没有切入,要有手段修正,修正是高速的,比PID的效率高许多倍,直接就可以切到目标,俺是这个玩的好,才在行业里混住了,而不是玩PId, / Y' O7 i. v7 j5 p0 ~) \  d9 @
8 C+ ^) |, @( R' d' r) Q, L0 ?
10, 当然了,你PID玩的熟练,也是‘大爷’,因为许多家伙连PID 的积分都调不了,假如你随手会玩PID的,玩弄于股掌之间,就可以每天有6000块,再多了就困难,因为再多的话,你就必须切入俺说的模型去,否则没戏,
9 N( G+ k1 r. a# G( H6 k! \9 N
  o4 o+ b+ g; ]. t% A6 Q4 Z! f11,你玩了俺上面说的东西,两次就可以准确’切入‘,就没有人敢跟你还价,你就可以给博导们作咨询,给航空领域做设计,他们都很乖的,并且非常富有,2 u- U2 X) K3 Z! ?. }  t

6 J0 n; P6 \5 w7 [哈哈,
6 N2 b% v# R1 }4 W8 @: l# j: f, l' ~- Z! f' `) i
顺便说一句,俺非常,非常喜欢你学习的态度,是属于多年都见不到的年轻人,努力下去,必有出息的,5 `1 Y/ q- b1 u
& x2 J! w9 N; T' t; L

点评

精辟  发表于 2021-9-8 10:00
讲得好!  发表于 2013-10-28 12:01
学习了。  发表于 2013-10-25 22:28
多谢99/8大侠的指点,我得好好琢磨一下。努力才有出路啊,另外自己也喜欢玩这类东西,何乐不为呢?  发表于 2013-10-24 23:15

评分

参与人数 2威望 +2 收起 理由
风追云 + 1
Michael0576 + 1 热心助人,专业精湛!

查看全部评分

回复 支持 反对

使用道具 举报

发表于 2013-10-24 21:29:26 | 显示全部楼层
我也是机械,楼主这个跨的挺远的啊
, j9 r) }, v. R/ R( x* [1 |% Q数学建模不是一个人能完成的,隔壁实验室是控制的,一般是一个小组来完成的

点评

大虾,还是我说的那个概念,设计是设计,画图是画图,编程是编程,设计是智慧劳动,是用智力的,而其它是体力,  发表于 2013-10-26 13:48
编程是双控,前面是热动。这不2人吗  发表于 2013-10-25 21:32
没必要俩人,这些东西从来都是我自己写,系统图我也自己画,只是到编程阶段再交他人完成,初期只能自己做,不可能有别的选择,  发表于 2013-10-25 16:59
最少俩人,一个热动,一个双控。  发表于 2013-10-25 12:35
这都是单人玩的项目,所谓一个小组,肯定就玩死了,这也就是教授都不会这个东西的原因,就是你依靠我,我依靠他,最终就大家都不玩,  发表于 2013-10-25 09:42
我学机械的时候也有自动化的课,不过不是主要的。建模要很多人吗?  发表于 2013-10-24 23:25
回复 支持 反对

使用道具 举报

发表于 2013-10-25 01:37:40 | 显示全部楼层
PID的参数可以试着设定一个值,跑一下,看到曲线之后就知道三个值分别调整的方向了。/ D. C- Q- ~1 K0 F4 D5 h
另外,成品的温控器很多带有“自整定”功能,其实也是试着跑一下,然后自动调节参数。
2 ~6 s& \+ g2 ?1 H4 `% m* r7 N( c- F% \3 ]' w  [6 W
感觉您说的这个数学模型,像是要自己推整个系统的方程了。如果是真要推这个东西的话,* j, ?- S( P- Y7 o; |
个人觉得:被加热物体在x温度下、对y温度空气的散热功率,难在这个地方了。

点评

如果散热的功率和温度差是线性关系的话,推导出来还是不难,做几个测试,参数就出来了,最怕是非线性的关系,要做大量的测试,或者找出这个非线性方程了。  发表于 2013-10-25 07:47
回复 支持 反对

使用道具 举报

发表于 2013-10-25 11:40:45 | 显示全部楼层
这种帖子我喜欢:lol
回复 支持 反对

使用道具 举报

发表于 2013-10-25 13:17:01 | 显示全部楼层
如果散热的功率和温度差是线性关系的话,推导出来还是不难,做几个测试,参数就出来了,最怕是非线性的关系,要做大量的测试,或者找出这个非线性方程了。
个人观点:8 F0 y, n: e) J& G
恒定加热功率,分别测试许多个功率点的内外温差,最终才能得到点图,到时候才能知道拟合出来是个什么样子的线吧?# W% E6 Z% z: u! e2 m
如果这个很准确的话,可以得知加热过程中散失多少热量。有比热容数据的话,可得知△T需要的热量,得发热体在定功率下的加热时间。
5 S; h2 g, M7 Q7 \( R$ A
$ l* |: M$ F! B7 i, L  r+ [我尝试做过小尺寸铝壳体的恒温,里面装电路板的。
& L9 C9 r! H9 P; V如果内部有局部自身发热的恒温器件的话,感觉就麻烦许多,比如说LM399这样的自恒温基准器件。/ w$ a+ S; ~- S) ]( j. y
曾经考虑过楼主所说的那种数学模型,一方面是自己水准欠,又感觉现有的PID方案够用,所以没有硬啃下去,觉得那事儿太大了。% O! z1 G0 A8 m
双层铝壳,热稳定时间很长,就感觉只有PID自整定方便点了。
  W# b" H8 S' Z* ~/ I' \% W1 w) b

点评

我是假定散失的热量和温度成正比,温度高散热里大,通过给加热体一个恒定的功率,当温度恒定后,散失的热量就等于加热的热量了。我只测了一点,测了不同温度下的加热功率,基本是成线性的,也验证了我的假设。  发表于 2013-10-25 13:37
回复 支持 反对

使用道具 举报

发表于 2013-10-25 16:43:57 | 显示全部楼层
                           讨论的真热闹哎,不过看的不太懂
回复 支持 反对

使用道具 举报

发表于 2013-10-25 17:17:59 | 显示全部楼层
看着好学术啊,完全没看懂。
5 \" C, b: J+ H6 o$ g

点评

其实是很基本的东西,真没啥高深的。  发表于 2013-10-25 21:40
回复 支持 反对

使用道具 举报

发表于 2013-10-25 20:48:15 | 显示全部楼层
学生进来学习
回复 支持 反对

使用道具 举报

发表于 2013-10-25 20:51:05 | 显示全部楼层
2266998 发表于 2013-10-24 18:52
) W: L1 o% t' d. h$ |; G0 V你这么想一个问题,这种控制,其核心问题是为了实现一个‘目标’,一切是围绕这个目标的,其展开、持续发生 ...
我是假定散失的热量和温度成正比,温度高散热里大,通过给加热体一个恒定的功率,当温度恒定后,散失的热量就等于加热的热量了。我只测了一点,测了不同温度下的加热功率,基本是成线性的,也验证了我的假设。
俺也是那么想的,恒功率稳定后就是平衡状态。
' d7 U0 m& A$ g1 I3 ~恭喜楼主啦!  D6 v7 g8 _9 x5 x1 w/ [

3 G) y8 i/ d  @) T5 ~' U7 [$ m俺当初想着散热功率跟空气流速有关系,空气流速度跟△T有关系,结果就越想事儿越大,并没有真正去测试一下。
0 w# g* [6 C/ u  d+ J改天我也试试去9 F; {# M' \% G# ?9 w0 u4 D
( k" p8 ~! a- t- F; u

点评

我现在的发热盘就是直接暴露在空气中,室温稳定,可以说是恒定负载了,模型就是在这样的情况下测的,如果风吹一下,气温降一点,模型就不准确了。所以还得找出散热功率跟室温、风速等负载的关系。  发表于 2013-10-25 21:37
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册会员

本版积分规则

小黑屋|手机版|Archiver|机械社区 ( 京ICP备10217105号-1,京ICP证050210号,浙公网安备33038202004372号 )

GMT+8, 2024-11-26 17:21 , Processed in 0.063743 second(s), 24 queries , Gzip On.

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表