freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

基于單片機(jī)控制直流電機(jī)調(diào)速系統(tǒng)設(shè)計(jì)正文(存儲版)

2024-12-22 14:58上一頁面

下一頁面
  

【正文】 PID 算法,因?yàn)檫@是關(guān)鍵的一步,位置型和增量型都是數(shù)字型 PID 算法,但是兩者都有自己的優(yōu)缺點(diǎn)。 sbit key2=P1^1。 bit high_flag=0。 //定義 三個時(shí)刻的誤差存儲變量 float a0=,a1=,a2 =,un=0。 SCON=0x40。ET0=1。amp。un =0。stop_count=0。key2==0amp。 } if(key1==1amp。 if(set_count100) set_count=1。amp。 else if(un 400)un = 400。itimeamp。j123。break。 } 智能儀器綜合設(shè)計(jì)用紙 48 delay1_ms(2)。bai==0)bai=11。 display_num1(shi,2)。 //while(TI) {TI=0。 t2=0。 /**/ } 。//低電平時(shí)間計(jì)時(shí) t2++。 } void time0() interrupt 1 //定時(shí)器 0用于產(chǎn)生 PWM ,占空比通過 PID 計(jì)算獲得 {// SBUF=39。amp。 if(qian==11amp。break。 } void display_num1(uint dat,uchar num1) //指定的位上顯示 指定的一位數(shù)據(jù) { P0=xianshi[dat]。itime。 } 智能儀器綜合設(shè)計(jì)用紙 47 void delay(uint time) { uint i。 un=a0*ena1*en_1+a2*en_2。amp。state_flag==0) //KEY3 為按鍵減 { while(key3==0)。 set_count+=1。 } } if(key1==1amp。TR0=0。en_1 =0。amp。TL0=0X33。 void pid(void)。 //電機(jī)轉(zhuǎn)速存儲變量 uint time=0。 uint time_high=100。 sbit PWM=P1^7。這就是 PID 算法的優(yōu)越性。 如果系統(tǒng)處于運(yùn)行模式 , xcount 開始計(jì)時(shí),當(dāng) xcount=82 時(shí),即為 1s 時(shí),調(diào)用串口中斷子程序,單片機(jī)開始發(fā)送數(shù)據(jù),模擬 I/O 口輸出 PWM,此時(shí) PWM 波的頻率為 ,周期為 ,然后調(diào)用 PID 函數(shù),計(jì)算出PWM 波輸出的占空比,最后上位機(jī)顯示轉(zhuǎn)速。 下面的圖片是最后調(diào)試出來的結(jié)果。 這個函數(shù)節(jié)點(diǎn)可以幫助我們以字符串形式保存所要接收的數(shù)據(jù)。 在串口通 信中 ,如果指定讀 取 100 個串口緩沖區(qū)的字節(jié)數(shù) ,如果當(dāng)前緩沖區(qū)的數(shù)據(jù) 量 不足 100 個時(shí) ,程序會一直停在 VISA 讀取 這個節(jié)點(diǎn)上 ,如果在超時(shí)的時(shí)間 (默認(rèn)是 10 秒 )內(nèi)還沒有湊足 100個數(shù)據(jù)的話 ,程序就會報(bào) Time out的錯誤 ,如果超時(shí)時(shí)間設(shè)置得太長 ,有可能導(dǎo)致程序很長時(shí)間停止在 VISA 讀取 這個節(jié)點(diǎn)上。 數(shù)據(jù)位 端口 是輸入數(shù)據(jù)的位數(shù) , 數(shù)據(jù)位的值介于 5 和 8 之間 , 默認(rèn)值為 8,我們選擇的也是 端口 指定要傳輸或接收的每一幀使用的奇偶校驗(yàn) ,本次課程設(shè)計(jì)中只需要從單片機(jī)向 PC 傳輸數(shù)據(jù),選擇方式 1,所以奇偶端口選擇 . 清空 I/O 緩沖區(qū) 運(yùn)用此函數(shù)來清除發(fā)送和接收的 I/O 接口的緩沖區(qū)。波特率可變,取決于定時(shí)器 T1 或 2 的溢出率。很希望大學(xué)期間可以多有一些這樣的課程設(shè)計(jì)。主要就是 ZYMCU02 主機(jī)模塊 、 顯示與鍵盤模塊、 ZigBee 無線收發(fā) 實(shí)驗(yàn)?zāi)K 和 轉(zhuǎn)動源實(shí)驗(yàn)?zāi)K 的運(yùn)用異界連接。我們組的課題 —— 直流電機(jī)轉(zhuǎn)速測量與控制系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)。在搜索字符串 /字符輸入端接入字符串常量 F即可。解決的辦法是使用 Bytes at Port這個串口的屬性節(jié)點(diǎn) ,在 VISASerialadvance 下 ,也可以在 VISA 資源線上右鍵 創(chuàng)建 屬性節(jié)點(diǎn) 串口設(shè)置 Bytes at Port, Bytes at Port 這個屬性節(jié)點(diǎn)讀取當(dāng)前串口緩沖區(qū)有多少字節(jié)數(shù) ,然后將它的輸出連接到 VISA 讀取的 讀取字節(jié)數(shù) 這個輸入端上即可 ,這樣當(dāng)前緩沖區(qū)中有多少個字節(jié)就讀回多少個 ,不會有任何等待。 讀取 這個函數(shù)的作用是從 VISA 資源名稱指定的設(shè)備或接口中讀取指定數(shù)量的字節(jié),并使數(shù)據(jù) 返回至讀取緩沖區(qū)。波特率= 2^SMOD/32} if(t1==wide)//wide 的值即為低電平的時(shí)間 {PWM=0。 time++。 display_num1(ge,1)。 shi=(num%100)/10。 qian=num/1000。break。 } void delay1(uint num) { uint i。key1==1。因此,實(shí)際用得較多的還是 試測 法 。en_1=en。 } } } } 主程序主程序是一個循環(huán)程序,其主要思路是, 首先 判斷系統(tǒng)的運(yùn)行模式,如果 KEY1鍵按下 , 且 state_flag 為 1則系統(tǒng)處于運(yùn)行模式,如果 state__flag 為 0則為設(shè)置模式 。key2==1amp。amp。 delay1(20)。 a=0。 EA=0。 en =0。 while(1) { while (key1==0||key2==0||key3==0||a==0) { if(key1==0amp。TH0=0XFE。軟件由 1 個主程序、1個中斷子程序 、 1個 PID 控制算法子程序 、 1個定時(shí)器子程序、 3個延時(shí)子程序和 2個顯示子程序 組成。②可以實(shí)現(xiàn)軟件的結(jié)構(gòu)化編程, C語言使得軟件的邏輯結(jié)構(gòu)變 得清晰、有條理。 使用 Keil Software 工具時(shí)的項(xiàng)目開發(fā)流程和其他軟件開發(fā)項(xiàng)目的流程極其相似 :①創(chuàng)建一個項(xiàng)目,從器件庫中選擇目標(biāo)器件,配置工具設(shè)置。 智能儀器綜合設(shè)計(jì)用紙 13 矩陣式鍵盤適用于按鍵數(shù)量較多的場合,它由行線和列線組成,按鍵位于行、列的交叉點(diǎn)上。也正因?yàn)槿绱耍?PWM 又被稱為“開關(guān)驅(qū)動裝置”。注意加密方式 1時(shí), /EA 將內(nèi)部鎖定為 RESET;當(dāng) /EA 端保持高電平時(shí),此間內(nèi)部程序存儲器。如想禁止ALE 的輸出可在 SFR8EH 地址上置 0。 : RD,外部數(shù)據(jù)存儲器的讀取信號。 PORT3( ~ ): 端口 3也具有內(nèi)部提升電路的雙向 I/O 端口,其輸出緩沖器可以推動 4個 TTL 負(fù)載,同時(shí)還多工具有其他的額外特殊功能,包括串行通信、外部中斷控制、計(jì)時(shí)計(jì)數(shù)控制及外部數(shù)據(jù)存儲器內(nèi)容的讀取或?qū)懭肟刂频裙δ堋? PORT0( ~ ): 端口 0是一個 8位寬的開路汲極( Open Drain)雙向輸出入端口,共有 8 個位, 表示位 0, 表示位 1,依此類推。如果是使用 8751 內(nèi)部程序空間時(shí),此引腳要接成高電平。 實(shí)驗(yàn)連線表: 表 31 主臺體 ZigBee 無線收發(fā)模塊 轉(zhuǎn)動源 ZYMCU02 主機(jī)模塊 顯示與鍵盤模塊 +24V +24V GND GND Vout +24V GND GND +5V +5V GND GND 頻率 /轉(zhuǎn)速表“ +” Fout 頻率 /轉(zhuǎn)速表“ ” GND KEY1(設(shè)置) KEY2(加) KEY3(減) Q7(用于指示“設(shè)置”按鍵的動作狀態(tài) ) 與 GND 之間未標(biāo)示的插針 P0[0..7] LED4[H..A] P2[0..7] LED4[8..0] 智能儀器綜合設(shè)計(jì)用紙 8 圖 ZYMCU02主機(jī)模塊 AT89S52單片機(jī)簡介: AT89S52 為 ATMEL 所生產(chǎn)的一種低功耗 、高性能 CMOS8 位微控制器,具有 8K 在系統(tǒng)可編程 Flsah 存儲器。也正因?yàn)槿绱耍?PWM 又被稱為 “ 開關(guān)驅(qū)動裝置 ” 。本系統(tǒng)以 AT89S52 單片機(jī)為核心,通過單片機(jī)控制, C 語言編程實(shí)現(xiàn)對直流電機(jī)的平滑調(diào)速。 而中間利用了大家都比較熟悉的數(shù)字 PID 算法,以前大家用的比較多的是模擬PID 算法,但是 由于現(xiàn)場的系統(tǒng)參數(shù)、溫度等條件發(fā)生變化,使系統(tǒng)很難達(dá)到最佳的控制效果,因此采用模擬 PID 控制器難以獲得滿意的控制效果。隨著單片機(jī)技術(shù)的不斷進(jìn)步,使得許多控制功能及算法可以采用軟件技術(shù)來完成,為直流電動機(jī)的控制提供了更大的靈活性,并使系統(tǒng)能夠達(dá)到更高的穩(wěn)定性能,同時(shí)還具有軟特性好,過載能力強(qiáng),可進(jìn)行 PID 調(diào)節(jié),調(diào)速穩(wěn)定等優(yōu)勢。 早期的直流電動機(jī)的控制均以模擬電路為基礎(chǔ),采用運(yùn)算放大器、非線性集成電路以及少量的數(shù)字電路組成,控制自通的硬件部分非常復(fù)雜,功能單一,而且系統(tǒng)非常不靈活,調(diào)試?yán)щy。 智能儀器綜合設(shè)計(jì)用紙 4 第二章 總體設(shè)計(jì)方案 本文主要研究了利用 AT89S52 單片機(jī)控制 PWM信號從而實(shí)現(xiàn)對直流電機(jī)轉(zhuǎn)速進(jìn)行控制的方法。因此, PWM 又被稱為 “ 開關(guān)驅(qū)動裝置 ” 。通過改變直轉(zhuǎn)動源 光電對管 INTO MCU 轉(zhuǎn)速顯示 上位機(jī)監(jiān)控 PID 調(diào)整 模擬 PWM 智能儀器綜合設(shè)計(jì)用紙 6 流電機(jī)電樞上電壓的 “ 占空比 ” 來達(dá)到改變平均電壓大小的目的,從而來控制電動機(jī)的 轉(zhuǎn)速。采用增量型算法,易實(shí)現(xiàn)手動到自動的無沖擊切 PID 驅(qū)動 電機(jī) + — N 給定 智能儀器綜合設(shè)計(jì)用紙 7 第三章 硬件設(shè)計(jì) ZYMCU02 主機(jī)模塊 、 顯示與鍵盤模塊、 ZigBee 無線收發(fā) 實(shí)驗(yàn)?zāi)K、轉(zhuǎn)動源實(shí)驗(yàn)?zāi)K、電腦一臺(已裝 KEIL 和 STC 下載軟件)、導(dǎo)線。因此在 8031 及 8032 中, EA引腳必須接低電平,因?yàn)槠鋬?nèi)部無程序存儲器空間。 AT89S52 可以利用 PSEN 及 RD 引腳分別啟用存在外部的 RAM 與 EPROM,使得數(shù)據(jù)存儲器與程序存儲器可以合并在一起而共用 64K 的定址范圍。如果是使用 8052智能儀器綜合設(shè)計(jì)用紙 11 或是 8032 的話, 又當(dāng)做定時(shí)器 2 的外部脈沖輸入腳,而 可以有 T2EX 功能,可以做外部中斷輸入的觸發(fā)腳位 。 : WR:外部數(shù)據(jù)存儲器的寫入信號 。然而要注意的是:每當(dāng)用作外部數(shù)據(jù)存儲器時(shí),將跳過一個 ALE 脈沖。 /EA/VPP:當(dāng) /EA保持低電平時(shí),則在此期間外部程序存儲器( 0000HFFFFH),不管是否有內(nèi)部程序存儲器。 在 PWM驅(qū)動控制的調(diào)整系統(tǒng)中, 通過一個 頻率來接通和斷開電源, 就可以 改變一個周期內(nèi)“接通”和“斷開”時(shí)間的長短 ,就可 改變直流電機(jī)電樞上電壓的“占空比”來達(dá)到改變平均電壓大小的目的, 平均電壓是通過等效直流電流實(shí)現(xiàn)的,由 沖量相等而形狀不同的窄脈沖加在具有慣性的環(huán)節(jié)上時(shí),其效果基本相同 , 沖量即指窄脈沖的面積 , 從而來控制電動機(jī)的轉(zhuǎn)速。智能儀表鍵盤的設(shè)置應(yīng)由該儀表具體的功能來決定,因此,智能儀表往往采用專用的功能鍵盤。 Keil 軟件是目前最流行的開發(fā)單片機(jī)的軟件, Keil 提供了包括編譯器、宏匯編、連接器、庫管理和一個功能強(qiáng)大的仿真調(diào)試器等在內(nèi)的完整開發(fā)方案,通過一個集成開發(fā)環(huán)境(μ Vision)將這些部分組合在一起。 C 語言與匯編語言相較而言有以下優(yōu)勢:①可以大幅加快開發(fā)進(jìn)度,特別是開發(fā)一些復(fù)雜的系統(tǒng),程序量越大,用 C語言就越有優(yōu)勢。其程序流程圖如圖所示。TH1=0xfa。EA=1。TR0=1。 } if(state_flag==0) { PWM = 0。 display_num4(set_count)。state_flag==0) { while(key2==0)。key3==0amp。amp。 pid()。 en_2=en_1。用理論計(jì)算法設(shè)計(jì)調(diào)節(jié)器的前提是能獲得被控對象準(zhǔn)確的數(shù)學(xué)模型,這在工業(yè)過程中一般較難做到。amp。j++)。 case 2: P2=0x02。 } void display_num4(uin
點(diǎn)擊復(fù)制文檔內(nèi)容
畢業(yè)設(shè)計(jì)相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1