999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于單片機的PID控制算法實現

2017-07-09 08:11:29陳洪偉
現代職業教育·職業培訓 2017年10期
關鍵詞:單片機定義系統

陳洪偉

[摘 要] 我國提出了“中國制造2025”。目前企業工業自動化的水平已經成為現代化水平的一個主要衡量指標。PID控制器的特點是結構簡單、應用廣泛、完全擺脫了精確模型的限制,這樣就能解決在工業過程中需要精確建模的困難。那么,基于單片機的PID控制成本低廉,可以根據不同的應用環境進行開發,具有很大的應用優勢。

[關 鍵 詞] PID算法;C語言;單片機

[中圖分類號] F403.6 [文獻標志碼] A [文章編號] 2096-0603(2017)30-0220-01

不論在工業還是民用應用中PID及其衍生算法是應用較為廣泛的算法之一,也被大家稱為萬能算法,所以熟練掌握PID算法的設計和實現的過程,對研發人員來講,基本上是可以應對工作中遇到的一些基本問題了。其實PID的控制過程也是相當的簡單了,原理是通過誤差信號來控制被控的量,就控制器本身而言就是比例、積分、微分三個環節的加和。在這里我們規定(在t時刻):輸入的變量為rin(t),輸出的變量為rout(t),所以我們可以得出偏差量為err(t)=rin(t)-rout(t)。那么我們從參考文獻上可以查閱到PID的控制規律為U(x)=kp(err(t)+1/T*∫err(t)*dt+TD*derr(t)/dt)。接下面我們來舉例說明這個公式,首先來假設這個工作流程是用來直流電機調速的。在這里rin(t)為電機轉速預定值,rout(t)作為電機的實際轉速值。直流電機的調速方法為PWM脈寬調制。轉速的單位用轉/min表示。那么接下來我們要考慮的是系統中的U(t)是什么,而U(t)和PWM之間存在的關系是什么樣的。我們都知道實際應用中,每一個電壓對應的是一個轉速,但是大多數人把電壓和轉速的關系理解成線性的對應關系了。而在實際的應用中直流電機的特性不是線性的,或者只能說直流電機的特性是在局部上趨于線性的。所以這樣就引出來一個問題,直流電機在PID調速上是有范圍限制的。這樣就要求我們在進行PID調速之前,用開環系統來測試電壓和轉速之間的特性曲線,根據這個曲線再進行閉環參數的調整。

接下來我們再來說明一下反饋的原理,來看一下公式U(x)=kp(err(t)+1/T*∫err(t)*dt+TD*derr(t)/dt)。在這里,PID控制其實就是對偏差的控制過程。那么偏差如果為0則比例環節就不起作用了。當控制系統存在偏差時比例環節才發揮作用,這里的積分環節是用來消除靜差的,靜差在這里是系統穩定后輸出值和設定值之間的相差值,而積分環節就是偏差累計后的結果,把累計的誤差加到原有系統上用來抵消掉系統產生的靜差。而微分信號則是反映偏差信號的變化規律,它的作用是根據偏差信號的變化趨勢提前進行調節,這樣就增加了系統的快速性。了解了它的控制原理后,接下來我們將對PID進行連續系統離散化,這樣我們就能在單片機上通過C語言來實現。偏差err(K)=rin(K)-rout(K);積分環節用加和來表示,也就是err(K)+err(K+1)+……,而微分環節用斜率的形式來表示,[err(K)-err(K-1)]/T,這樣就形成了如下所列出的PID離散表示形式:U(k)=kp(err(k)+Ki∑err(j)+Kd(err(k-1)-err(k-2)),從這個公式可以看出,增量式的結果是和最近的一次偏差有關系,這樣就可以最大限度地提高系統的穩定性。但是需要注意的是最后的結果應該為u(K)+增量調節后的值,這就是PID的離散化過程,接下來要做的工作是將離散化的公式轉換成為C語言,從而實現在單片機上控制。實現過程C語言控制代碼如下:

首先我們來定義一個PID變量結構體struct_pid{ float SetSpeed;float ActualSpeed;float err;float err_last;float Kp,Ki,Kd;float voltage;float integral} pid,結構體中變量含義分別為定義一個設定的值,定義一個偏差值,定義上一個偏差值,定義比例系數、積分系數、微分系數,定義一個控制執行器電壓值的變量,定義一個積分值。把所要用到的參數定義在一個結構體中可以使程序更加模塊化。接下來我們要對三個比例系數賦初值,pid.Kp=0.2;pid.Ki=0.015;pid.Kd=0.2.在調試過程當中,對要求的控制效果,可以通過調節這三個量直接進行調節。float PID_realize(float speed){pid.SetSpeed=speed;pid.err=pid.SetSpeed-pid.ActualSpeed;pid.integral+=pid.err;pid.voltage=pid.Kp*pid.err+pid.Ki*pid.integral+pid.Kd*(pid.err-pid.err_last);pid.err_last=pid.err;pid.ActualSpeed=pid.voltage*1.0;returnpid.ActualSpeed;}那么到此PID的基本算法已經呈現出來了。但是在實際應用中這個算法沒有考慮上下限的問題,只是對公式的一種直接實現。如放在實際應用中應根據情況加以改進。

參考文獻:

[1]維斯.數據結構與算法分析[M].機械工業出版社,2004.

[2]譚浩強.C語言程序設計[M].清華大學出版社,2001,

猜你喜歡
單片機定義系統
Smartflower POP 一體式光伏系統
工業設計(2022年8期)2022-09-09 07:43:20
WJ-700無人機系統
ZC系列無人機遙感系統
北京測繪(2020年12期)2020-12-29 01:33:58
基于單片機的SPWM控制逆變器的設計與實現
電子制作(2019年13期)2020-01-14 03:15:28
基于單片機的層次漸變暖燈的研究
電子制作(2019年15期)2019-08-27 01:12:10
基于單片機的便捷式LCF測量儀
電子制作(2019年9期)2019-05-30 09:42:02
連通與提升系統的最后一塊拼圖 Audiolab 傲立 M-DAC mini
成功的定義
山東青年(2016年1期)2016-02-28 14:25:25
Microchip推出兩個全新PIC單片機系列
修辭學的重大定義
當代修辭學(2014年3期)2014-01-21 02:30:44
主站蜘蛛池模板: 国产在线啪| 国产美女无遮挡免费视频网站| 热伊人99re久久精品最新地| 尤物国产在线| 欧美一级高清片久久99| 日韩成人免费网站| 国内黄色精品| 欧美日韩va| 亚洲精品另类| 91娇喘视频| 亚洲午夜综合网| 国产91视频观看| 欧美日韩成人| 色综合色国产热无码一| 91国内外精品自在线播放| 国产欧美日韩一区二区视频在线| 成人一级免费视频| 丁香六月激情婷婷| 成人免费一区二区三区| 国产美女无遮挡免费视频| 欧美精品三级在线| 伊人91在线| 亚洲日韩精品无码专区97| 国产菊爆视频在线观看| 日韩天堂视频| 最新国产麻豆aⅴ精品无| 亚洲午夜福利在线| 91精品日韩人妻无码久久| 日本人妻一区二区三区不卡影院| 日韩专区第一页| 丁香五月激情图片| 亚洲色图欧美一区| 蜜桃臀无码内射一区二区三区 | 亚洲欧美一级一级a| 亚洲国产av无码综合原创国产| 国产成人在线小视频| 天天色天天操综合网| 亚洲中文精品人人永久免费| 一本视频精品中文字幕| 欧美97欧美综合色伦图| 欧美亚洲国产精品久久蜜芽| 国产成人亚洲无吗淙合青草| AV天堂资源福利在线观看| 国产国拍精品视频免费看| 白浆视频在线观看| 国外欧美一区另类中文字幕| 欧美在线一级片| 成人免费网站久久久| 精品国产乱码久久久久久一区二区| 亚洲精品va| 超薄丝袜足j国产在线视频| 久久永久免费人妻精品| 精品视频福利| 在线va视频| 亚洲国产精品日韩av专区| 国产又黄又硬又粗| 91在线国内在线播放老师| 中文字幕天无码久久精品视频免费 | 操操操综合网| 国产日产欧美精品| 日韩区欧美区| 国产成人综合久久| 国产伦片中文免费观看| 国产亚洲精品97在线观看| 午夜毛片免费观看视频 | 亚洲香蕉久久| 亚洲精品色AV无码看| 久久香蕉国产线看观看式| 毛片免费网址| 日本福利视频网站| 韩国福利一区| 亚洲日本中文字幕乱码中文| 香蕉网久久| 亚洲无码37.| 色婷婷综合在线| 又粗又硬又大又爽免费视频播放| 色九九视频| 男女男免费视频网站国产| 日本三区视频| 中文字幕人成人乱码亚洲电影| 88av在线| 亚洲 成人国产|