精品国产人成在线_亚洲高清无码在线观看_国产在线视频国产永久2021_国产AV综合第一页一个的一区免费影院黑人_最近中文字幕MV高清在线视频

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫(xiě)文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

基于C5402DSP和DS18B20實(shí)現(xiàn)PID溫度控制系統(tǒng)的設(shè)計(jì)

電子設(shè)計(jì) ? 來(lái)源:微計(jì)算機(jī)信息 ? 作者:肖洪兵,李冬梅, ? 2021-03-23 11:49 ? 次閱讀

作者:肖洪兵,李冬梅,李朝暉

1 C5402DSP的應(yīng)用特點(diǎn)

盡管從一般意義上講,基于MCU單片機(jī))與DSP(數(shù)字信號(hào)處理器)這兩類器件的系統(tǒng)都有各自的用途,但現(xiàn)在很多新興的嵌入式應(yīng)用,尤其是那些大型的復(fù)雜系統(tǒng),在系統(tǒng)內(nèi)同時(shí)實(shí)現(xiàn)信號(hào)與控制兩種處理,它們既需要DSP的功能又需要MCU的功能。筆者正是基于這種嘗試,在PID溫度控制系統(tǒng)中,將DSP應(yīng)用到MCU的應(yīng)用場(chǎng)合,取得了較好的控制效果。隨著DSP(數(shù)字信號(hào)處理器)制造技術(shù)的發(fā)展,其成本已經(jīng)下降到較低水平;而DSP的處理速度可滿足控制的實(shí)時(shí)性需求。本設(shè)計(jì)中選用了性價(jià)比高、運(yùn)算能力強(qiáng)、實(shí)時(shí)性好的TMS320C5402DSP來(lái)實(shí)現(xiàn)PID溫度控制算法。C5402DSP相對(duì)于單片機(jī)的主要優(yōu)勢(shì)在于:首先,C5402DSP采用的是哈佛結(jié)構(gòu),有多組總線分別連接到程序存儲(chǔ)空間和數(shù)據(jù)存儲(chǔ)空間結(jié)構(gòu),片內(nèi)有三組16bit數(shù)據(jù)總線CB、DB、EB和一組程序總線PB以及對(duì)應(yīng)的4組地址線CBA、DBA、EBA、PBA;其次,具有硬件乘加器,包括一個(gè)17*17bit乘法器和一個(gè)40bit專用加法器,可以在單周期內(nèi)完成乘、加運(yùn)算各一次,運(yùn)算能力很強(qiáng);還有,采用了流水線技術(shù),指令具有6級(jí)流水線,相對(duì)于單片機(jī)而言,速度大大提高;另外,還具有串行口和并行口等外設(shè),可滿足控制的輸入輸出要求。

2 系統(tǒng)硬件結(jié)構(gòu)與工作原理

系統(tǒng)的硬件結(jié)構(gòu)如圖1所示。本設(shè)計(jì)主要分為溫度采集和PID控制兩部分。DSP檢查所得溫度是否超過(guò)上下限值,若超過(guò)則報(bào)警并轉(zhuǎn)入相應(yīng)處理;否則根據(jù)所要求的標(biāo)準(zhǔn)溫度值計(jì)算采集溫度與標(biāo)準(zhǔn)值的偏差e(n),轉(zhuǎn)入PID算法程序進(jìn)行處理,得到輸出控制信號(hào)y(n),通過(guò)y(n)來(lái)控制加熱/降溫裝置進(jìn)行工作,達(dá)到控溫的效果。

圖1系統(tǒng)結(jié)構(gòu)原理框圖

3 軟件設(shè)計(jì)

本設(shè)計(jì)主要包括主程序、溫度采集子程序、上下限溫度值查詢子程序、PID子程序等。其中,溫度采集子程序和PID子程序是核心,本文將著重介紹。

3.1溫度采集程序

DSP芯片通過(guò)串口0與單總線溫度傳感器DS18B20的數(shù)據(jù)線相連,對(duì)現(xiàn)場(chǎng)溫度進(jìn)行采集,DSP芯片TMS320C5402通過(guò)串口0讀出采集到的溫度并對(duì)它進(jìn)行濾波處理;通過(guò)串口1寫(xiě)中斷,調(diào)用顯示程序進(jìn)行溫度顯示。為便于讀者參考,下面給出DS18B20的DSP溫度讀寫(xiě)程序。

(1)DSP寫(xiě)數(shù)據(jù)子程序

TX0STM#PCR0,SPSA0

STM#0011001000000010B,McBSP0

RPT#100

NOP

STM#PCR0,SPSA0

STM#0011001000000000B,McBSP0

RPT#1500

NOP

STM#PCR0,SPSA0

STM#0011001000000010B,McBSP0

RET

(2)DSP讀數(shù)據(jù)子程序

RXSTM#PCR0,SPSA0

STM#0011001000000010B,McBSP0

RPT#120

NOP

STM#PCR0,SPSA0

STM#0011001000000000B,McBSP0

RPT#120

STM#PCR0,SPSA0

STM#0011001000000010B,McBSP0

RPT#120

NOP

LD#04H,A

STLA,TMP

PORTWTMP,7H

STM#PCR0,SPSA0

LDMcBSP0,A

AND#0001H,A

BCRX1,ANEQ

RSBXC

BRX2

RX1SSBXC

RX2RORB

LD#02H,A

STLA,TMP

PORTWTMP,7H

RET

3.2 PID算法在DSP上的實(shí)現(xiàn)

經(jīng)典PID控制算法的表達(dá)式為:

y(t)=KP*[e(t)+1/TI*∫e(t)dt+TD*de(t)/dt](3.1)

式中:

y(t)—調(diào)節(jié)器的輸出信號(hào)

e(t)—調(diào)節(jié)器的偏差信號(hào),它等于給定值與測(cè)量值之差

KP—調(diào)節(jié)器的比例系數(shù)

TI—調(diào)節(jié)器的積分系數(shù)

TD—調(diào)節(jié)器的微分時(shí)間

為了用DSP實(shí)現(xiàn)上式,必須將其離散化,用數(shù)字形式描述為:

y(n)-y(n-1)=KP[e(n)-e(n-1)]+KI*e(n)+KD[e(n)-2e(n-1)+e(n-2)](3.2)

其中:

KI=KP*T/TI;

KD=KP*TD/T

T—采樣周期

e(n)—第n次采樣的偏差;

e(n-1)—第n-1次采樣時(shí)的偏差;

e(n-2)—第n-2次采樣時(shí)的偏差。

由式(3.2)可知,要計(jì)算第n次輸出值y(n),只要知道y(n-1),e(n)、e(n-1)、e(n-2)即可。

式(3.2)還可以表示為下式:

y(n)-y(n-1)=d0*e(n)+d1*e(n-1)+d2*e(n-2)(3.3)

式中:

d0=KP(1+T/TI+TD/T)

d1=-KP(1+2TD/T)

d2=KP*TD/T

將式(3.3)代入(3.2)得:

y(n)=d0*e(n)+d1*e(n-1)+d2*e(n-2)+y(n-1)

上述式子是典型的乘加算式,而DSP具有專門的乘加指令,在DSP上非常容易實(shí)現(xiàn);所以,該式成為PID算法在DSP上實(shí)現(xiàn)的依據(jù)。

在C5402DSP上實(shí)現(xiàn)的PID算法程序包括:PID各參量的初始化,計(jì)算偏差值e(n),PID算法處理,e(n)、y(n)參數(shù)更新等。這些功能在DSP上實(shí)現(xiàn)較之單片機(jī)而言,顯得非常方便。

在DSP上實(shí)現(xiàn)的程序代碼如下。

(1)PID初始化

startpid:SSBXFRCT;小數(shù)方式標(biāo)志位

STM#en+1,AR1;取e(n-1)地址送AR1

RPT#1;重復(fù)2次

MVPD#table,*AR1+;傳送初始數(shù)據(jù)e(n-2),e(n-1)

STM#yn,AR1;取y(n-1)地址送AR1

MVPD#table+2,*AR1;傳送初始數(shù)據(jù)y(n-1))

STM#Kpid,AR1

RPT#2;重復(fù)3次

MVPD#table+3,*AR1+;傳送初始數(shù)據(jù)d2,d1,d0

(2)PID算法程序

STM#en,AR1;取e(n)地址送AR1

LD@Tx,A;調(diào)入溫度值

SUB#TSTD,A;計(jì)算溫度值與標(biāo)準(zhǔn)值的偏差

STHA,*AR1+;輸入偏差e(n)

STM#en+2,AR1

STM#Kpid+2,AR2

STM#2,AR0

LD*AR1-,T;e(n-2)送T

MPY*AR2-,A;d2*e(n-2)

LTD*AR1-;e(n-1)送T,e(n-1)送e(n-2)

MAC*AR2-,A;A+d1*e(n-1)

LTD*AR1+0;e(n)送T,e(n)送e(n-1)

MAC*AR2+0,A

ADDA,@yn,A

STHA,@yn;保存y(n)

PORTW@yn,PA1

RET

4 結(jié)語(yǔ)

在過(guò)去的設(shè)計(jì)中我們選用了80C51MCU實(shí)現(xiàn)了PID溫度控制,但由于單片機(jī)的運(yùn)算功能較差,程序?qū)崿F(xiàn)的效率不夠高,實(shí)時(shí)性不好。本設(shè)計(jì)中由于選用了性價(jià)比高、運(yùn)算能力強(qiáng)、實(shí)時(shí)性好的TMS320C5402DSP來(lái)實(shí)現(xiàn)PID溫度控制算法,取得了較好的控制效果。目前,許多MCU制造廠家在它們的體系結(jié)構(gòu)中增加或擴(kuò)充了各種DSP功能,例如增加了MAC(乘法累加)指令等。同樣,一些DSP體系結(jié)構(gòu)也增加了像集成的外圍設(shè)備、可編程的外部芯片選擇連線、中斷驅(qū)動(dòng)的I/O、定時(shí)器以及較大的外部存儲(chǔ)器等功能部件。將來(lái),對(duì)復(fù)雜的應(yīng)用系統(tǒng),可能不會(huì)再明確地區(qū)分DSP應(yīng)用還是MCU應(yīng)用。因此,DSP與MCU融合的時(shí)代即將到來(lái)。

責(zé)任編輯:gt

聲明:本文內(nèi)容及配圖由入駐作者撰寫(xiě)或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問(wèn)題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • dsp
    dsp
    +關(guān)注

    關(guān)注

    552

    文章

    7962

    瀏覽量

    348256
  • 溫度傳感器
    +關(guān)注

    關(guān)注

    48

    文章

    2912

    瀏覽量

    155887
  • 控制系統(tǒng)
    +關(guān)注

    關(guān)注

    41

    文章

    6546

    瀏覽量

    110476
收藏 人收藏

    評(píng)論

    相關(guān)推薦

    基于DS18B20和LabVIEW的多點(diǎn)溫度測(cè)量系統(tǒng)

    今天我們一起完成一個(gè)比較完整的作品,基于DS18B20和LabVIEW的多點(diǎn)溫度測(cè)量系統(tǒng)。我重點(diǎn)介紹實(shí)現(xiàn)多點(diǎn)DS18B20
    發(fā)表于 09-26 10:28 ?1727次閱讀

    DS18B20 數(shù)字溫度計(jì)特點(diǎn)

    一.DS18B20特點(diǎn) DS18B20 數(shù)字溫度計(jì)提供12位(二進(jìn)制)溫度讀數(shù)的數(shù)字型傳感器。傳感器僅需要單總線接口與CPU連接,實(shí)現(xiàn)信號(hào)送
    的頭像 發(fā)表于 09-11 11:19 ?2656次閱讀
    <b class='flag-5'>DS18B20</b> 數(shù)字<b class='flag-5'>溫度</b>計(jì)特點(diǎn)

    求個(gè)基于AT89S51和DS18B20溫度控制系統(tǒng)仿真

    {:2:}急用 基于AT89S51和DS18B20溫度控制系統(tǒng)的proteus 系統(tǒng)
    發(fā)表于 04-09 22:48

    DS18B20溫度檢測(cè)系統(tǒng)中的應(yīng)用

      摘要:該論文結(jié)合實(shí)際使用經(jīng)驗(yàn),完成了DS18B20數(shù)字溫度傳感器在基于單片機(jī)的溫度檢測(cè)系統(tǒng)中的應(yīng)用。本設(shè)計(jì)有效的提高了控制系統(tǒng)的實(shí)時(shí)性改
    發(fā)表于 11-06 15:09

    怎么采用DS18B20和NiosⅡ設(shè)計(jì)的遠(yuǎn)程溫度控制系統(tǒng)

    采用AT89S51系列單片機(jī)、傳感器DS18B20和NiosⅡ設(shè)計(jì)的遠(yuǎn)程溫度控制系統(tǒng)具有結(jié)構(gòu)新穎、電路簡(jiǎn)單、體積小和控制方便等優(yōu)點(diǎn)。
    發(fā)表于 04-30 06:09

    DSP~il DS18B20溫度測(cè)量系統(tǒng)

    本文簡(jiǎn)要介紹了單總線數(shù)字溫度傳感器DS18B20的特性及工作原理,給出了DS18B20與TMS320LF2407A 的接線圖并且非常詳細(xì)介紹了如何用C語(yǔ)言完成比較精確的軟件延時(shí)程序,從
    發(fā)表于 07-28 09:41 ?73次下載

    基于DS18B20測(cè)溫的單片機(jī)溫度控制系統(tǒng)

    介紹了以AT89S52單片機(jī)為控制核心的溫度控制系統(tǒng)系統(tǒng)采用數(shù)字溫度計(jì)芯片DS18B20構(gòu)成測(cè)
    發(fā)表于 12-19 16:47 ?799次下載

    ds18b20電路圖

    ds18b20電路圖,C語(yǔ)言源程序,ds18b20溫度計(jì).PRJPCB,DS18B20溫度計(jì).M
    發(fā)表于 03-03 10:47 ?624次下載
    <b class='flag-5'>ds18b20</b>電路圖

    DS18B20完成溫度檢測(cè)的技巧

    介紹了DS18B20 溫度傳感器 的結(jié)構(gòu)和特點(diǎn)以及用DS18B20溫度傳感器進(jìn)行溫度檢測(cè)的方法和技巧.
    發(fā)表于 08-23 10:44 ?190次下載
    <b class='flag-5'>DS18B20</b>完成<b class='flag-5'>溫度</b>檢測(cè)的技巧

    基于ARM和DS18B20溫度監(jiān)測(cè)系統(tǒng)

    基于ARM和DS18B20溫度監(jiān)測(cè)系統(tǒng)使用SAMSUNG公司的32位ARM微控制器S3C2440作為數(shù)據(jù)采集單元, 數(shù)字
    發(fā)表于 11-03 11:21 ?339次下載

    DS18B20溫度顯示報(bào)警控制設(shè)計(jì)

    本文設(shè)計(jì)了一種基于AT89C51 單片機(jī)與DS18B20溫度控制系統(tǒng)。該設(shè)計(jì)通過(guò)AT89S52 單片機(jī)驅(qū)動(dòng)數(shù)字溫度傳感器
    發(fā)表于 12-17 00:24 ?696次下載
    <b class='flag-5'>DS18B20</b><b class='flag-5'>溫度</b>顯示報(bào)警<b class='flag-5'>控制</b>設(shè)計(jì)

    DS18B20_LCD1602_AT24C02智能溫度控制系統(tǒng)設(shè)計(jì)

    DS18B20+LCD1602+AT24C02智能溫度控制系統(tǒng)
    發(fā)表于 01-11 15:55 ?25次下載

    基于DS18B20數(shù)字溫度報(bào)警系統(tǒng)的設(shè)計(jì)

    基于SST單片機(jī)的DS18B20數(shù)字溫度報(bào)警系統(tǒng)
    發(fā)表于 02-08 02:34 ?20次下載

    基于DS18B20溫度測(cè)量系統(tǒng)_杜海龍

    基于DS18B20溫度測(cè)量系統(tǒng)_杜海龍
    發(fā)表于 03-19 11:45 ?15次下載

    ds18b20的特性_ds18b20溫度傳感器應(yīng)用

    本文首先介紹了ds18b20的特性,其次介紹了DS18B20工作原理,最后介紹了ds18b20溫度傳感器應(yīng)用。
    發(fā)表于 04-24 09:10 ?1.1w次閱讀
    <b class='flag-5'>ds18b20</b>的特性_<b class='flag-5'>ds18b20</b><b class='flag-5'>溫度</b>傳感器應(yīng)用