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

正文內(nèi)容

畢業(yè)設(shè)計-基于單片機的恒壓供水系統(tǒng)設(shè)計-資料下載頁

2025-01-17 01:06本頁面
  

【正文】 及內(nèi)部時鐘發(fā)生器的輸入端。 XTAL2:振蕩器反相放大器的輸出端 . 各單元模塊的聯(lián)接 完成各模塊的設(shè)計后,模塊按照功能 的不同連接成整體的電路圖。各模塊的具體聯(lián)接圖見附錄一。 第 頁 24 4 軟件設(shè)計 軟件設(shè)計原理及設(shè)計所用工具 軟件的主要功能是根據(jù)系統(tǒng)的工作原理,框圖,先制定各部分程序的流程圖,然后再根據(jù)流程圖編寫各部分程序,通過調(diào)試各部分程序運行正確無誤后,再進行主程序的調(diào)試,看是否能實現(xiàn)預(yù)期的功能。 系統(tǒng)能否完全正常工作,最主要的也是最關(guān)鍵的是看軟件程序是否正確,它關(guān)系到系統(tǒng)功能的實現(xiàn),可以說,軟件是一個系統(tǒng)的靈魂。 本設(shè)計所使用的軟件工具如下: : KeilC51; 語言: C/C++。 Keil C51是美國 Keil Software公司出品的 51系列兼容單片機 C語言軟件開發(fā)系統(tǒng), 是目前最流行開發(fā) 80C51系列單片機的軟件,提供了包括 C編譯器、宏匯編、連接器、庫管理和一個功能強大的仿真調(diào)試器等在內(nèi)的完整開發(fā)方案,通過一個集成開發(fā)環(huán)境( micro。Vision)將這些部份組合在一起。 與匯編相比, C語言在功能上、結(jié)構(gòu)性、可讀性、可維護性上有明顯的優(yōu)勢,因而易學(xué)易用。用過匯編語言后再使用 C來開發(fā),體會更加深刻。 Keil C51軟件提供豐富的庫函數(shù)和功能強大的集成開發(fā) 調(diào)試工具,全 Windows界面。另外重要的一點,只要看一下編譯后生成的匯編代碼,就能體會到 Keil C51 生成的目標代碼效率非常之高,多數(shù)語句生成的匯編代碼很緊湊,容易理解。在開發(fā)大型軟件時更能體現(xiàn)高級語言的優(yōu)勢。 Keil C51語言編譯工具都是以 ANSLC作為基礎(chǔ)進行開發(fā)的,因此,一種 C語言環(huán)境下所編寫的 C語言程序,只需將部分與硬件相關(guān)的地方和編譯連接的參數(shù)進行適當修改 ,就可方便移植到另外一種系列上。也就是說,基于 C語言環(huán)境下的嵌入式系統(tǒng)能基本達到平臺的無關(guān)性。 用 C語言開發(fā)的代碼便于開發(fā)小組計劃 項目 ,靈活管理 ,分工合作以及后期維護,基本上可以杜絕因開發(fā)人員變化而給項目進度 ,后期維護或升級所帶來的影響。從而保證整個系統(tǒng)的品質(zhì),可靠性以及可升級性。 主程序流程圖 恒壓供水控制器對生活供水、消防供水系統(tǒng)進行監(jiān)控,要求軟件具有高可靠性、高穩(wěn)定性、高抗干擾能力,檢測信號準確,有良好的動靜態(tài)性能,該軟件按結(jié)構(gòu)化流水設(shè)計,分為若干功能部分,采用 C 語言編寫。本設(shè)計的軟件主程序用來動態(tài)顯示系統(tǒng)的壓 第 頁 25 力,壓力的采樣和系統(tǒng)的控制環(huán)節(jié)都在中斷處理程序中 , 主流程圖如圖 41: 圖 41 主程序流程圖 T0中斷服務(wù)程序 主要包括: A/D 轉(zhuǎn)換程序; D/A轉(zhuǎn)換程序;控制程序。 程序流程圖如下:如圖 42示,變頻器控制 M1電機, M2電動機由單片機控制,其標志位為 M2。 1. A/D轉(zhuǎn)換子程序 其主要任務(wù)是把壓力傳感器檢測的壓力轉(zhuǎn)換成數(shù)字量,并送入單片機處理,程序見附錄。 2. D/A轉(zhuǎn)換子程序 其主要任務(wù)是把經(jīng) PID處理過的數(shù)據(jù)轉(zhuǎn)換成模擬量,來控制變頻器輸出電壓的頻率,來控制水泵的轉(zhuǎn)速,以達到控制供水壓力的目的。 主程序初始化 ,開 T0 中斷 ,設(shè)置 T0 為 10ms 的中斷 壓力的動態(tài)顯示 按鍵處理子程序 Y N 是否鍵按下 開始 第 頁 26 圖 42 T0 中斷服務(wù)程序流程圖 讀 A/D 轉(zhuǎn)換器 返回 Y 進入 T0中斷 PID 調(diào)節(jié) 是否為最大值 標志位 M2 是否為 1 是否為最小值 標志位 M2 是否為 1 N Y Y 置標志位 M2 為1, (開 M2 電機 )。 PID 調(diào)節(jié)數(shù)據(jù)送 D/A 轉(zhuǎn)換器 清標志位 M2 為 0 ,(關(guān) M2 電機 ) N N N N Y 第 頁 27 3. PID 調(diào)節(jié)程序 本設(shè)計就是通過單片機實現(xiàn)的 PID 調(diào)節(jié)器來實現(xiàn)水壓的恒定,并自動調(diào)節(jié)水泵的數(shù)量。 在工業(yè)控制過程中,目前采用最多的控制方式仍然是 PID 方式。 PID 有幾個重要的功能:提供反饋控制;通過積分作用可以消除穩(wěn)態(tài)誤差:通過微分作用預(yù)測將來。由于PID 控制器具有簡單而固定的形式,在很寬的操作條件范圍內(nèi),另一方面是因為 PID 控制器允許工程技術(shù)人員以一種簡單而直接的方式來調(diào) 節(jié)系統(tǒng)性能 ,其程序見附錄。 數(shù)字 PID 控制算法通常分為位置式 PID 控制算法和增量式 PID 控制算法。隨 著計算機技術(shù)的發(fā)展,在控制工程中,用計算機 PID 控制算法來實現(xiàn)數(shù)字 PID 控制器,組成計算機控制系統(tǒng)。可以靈活的改變 PID 參數(shù),同時可以改變控制策略來達到控制目的。這是模擬 PID 控制器中所無法實現(xiàn)的。這里所說的控制策略是數(shù)字 PID 的改進算法,如積分分離 PID 控制算法、不完全微分 PID 控制算法、微分先行 PID 控制算法和帶死區(qū)的 PID 控制算法等。在各個控制階段采取各種控制方法,以此來獲得控制目標。本設(shè)計采用 增量式 PID 控制,下面把增量式 PID 控制算法介紹一下: 1) 增量式 PID 控制算法 所謂增量式 PID 是指數(shù)字 控制器的輸出只是控制量的增量 Δu(k)。離散的 PID 表達式為: ?? ????? kj DIP kekeKjeKkeKku 0 )]1()([)()()( ( 41) 當執(zhí)行機構(gòu)需要的是控制量的增量 (如驅(qū)動步進電機 )時,可由式 (41)導(dǎo)出提供增量的 PID 控制算法。根據(jù)遞推原理可得 )]2()1([)(K1)e (kK1)u(k 1k 0jIP ?????? ?? kekeKje D ( 42) 用式 (41 )減去 (42 ),可得 )]2()1(2)([)()]1()([)( ?????????? kekekeKkeKkekeKku DIP )]1()([)()( ???????? kekeKkeKkeK DIP ( 43) 其中: 1)e(ke(k ) e(k ) ?? 式 (43)稱為增量式 PID 控制算法。 可以看出,由于一般計算機控制系統(tǒng)采用恒定的采樣周期 T,一旦確定了 KP, KI,KD,只要使用前后三次測量值的偏差,即可有 (43)求出控制增量。采用增量式算法時,計算機輸出的控制增量 Δu(k)對應(yīng)的是本次執(zhí)行機構(gòu)位置的增量。對應(yīng)閥門實際位置的控制量,目前采用較多的是利用如上算式并通過執(zhí)行軟件來完成。 第 頁 28 獨立按鍵程序設(shè)計 1) 程序設(shè)計思路 按鍵接收子程序主要是實現(xiàn)對當前設(shè)定壓力的調(diào)整。根據(jù)按鍵電路的設(shè)計可 知,當【 SET】鍵按下時可以產(chǎn)生中斷請求, CPU 響應(yīng)中斷請求時,則進入該中斷服務(wù)程序。在程序中,將對當前設(shè)定的壓力進行調(diào)整,利用【 SET】、【 +1】和【 1】鍵配合使用,每次對【 +1】鍵的按下則進行累加;同樣對【 1】鍵按下則進行減 1 操作。 圖 43 鍵盤掃描程序流程圖 開 始 置無鍵按下( P0 口 FFH)標志 進入鍵盤處理程 是否有鍵按下? (讀 P0 口值) 調(diào)延時子程序 是否有鍵按下? (再次讀 P0 口值) 確認有鍵按下 保存鍵值 Y Y N N 第 頁 29 2) 按鍵去抖動的處理 圖 44 按鍵處理程序流程圖 開始 為 F7H 否? 為 EFH 否 為 FBH 否? 為 DFH 否? 讀鍵值( P0 口) 置標志位 執(zhí)行 RUN 置標志位 執(zhí)行 SET 執(zhí)行 +1 執(zhí)行- 1 返回 Y N Y Y Y N N N N N 第 頁 30 由于機械觸點的彈性作用,在閉合及斷開的瞬間均伴隨有一連串的抖動 ,抖動時間的長短由按鍵的機械特性決定,一般為 5~ 10ms。而按鍵穩(wěn)定閉合時間的長短則是由操作人員的按鍵動作決定的,一般為零點幾秒至數(shù)秒。鍵抖動會引起一次按鍵被誤讀多次,為了確保 CPU 對鍵的一次閉合僅作一次處理,按鍵的抖動可以用硬件或者軟件方法來消除。本次設(shè)計中采用軟件方法來消除按鍵抖動,具體的鍵盤掃描程序框圖如圖 43 所示。而按鍵處理的程序框圖如圖 44 所示。讀取 P0 口的值于( 11000011)二進制數(shù)或運算再到鍵盤處理程序中處理,以屏蔽高兩位和低兩位對程序的影響。 LED 動態(tài)顯示程序模塊的設(shè)計 在采用 動態(tài)掃描顯示方式時,要使得 LED 顯示比較均勻,又有足夠的亮度,需要設(shè)置適當?shù)膾呙桀l率。當掃描頻率在 70Hz 左右時,能夠產(chǎn)生足夠的圖形和較好的顯示效果。一般可以采用時間間隔 10ms 對 LED 進行動態(tài)掃描一次,每一位 LED 的顯示時間為 1ms。在單片機中,定時器功能既可以由硬件(定時 /記數(shù)器)實現(xiàn),也可以通過軟件定時程序?qū)崿F(xiàn)。軟件延時程序占用 CPU 的時間,因此,它降低了 CPU 的利用率;硬件定時是利用單片機片內(nèi)定時器,啟動以后定時器可與 CPU 并行工作,不占用 CPU 的時間,使得 CPU 有較高的工作效率。 本設(shè)計采用硬件定 時和軟件定時并用的方式,即用定時器 1 溢出中斷功能實現(xiàn) 10ms定時,通過軟件延時程序?qū)崿F(xiàn) 1ms 的定時。 T1 定時器中斷服務(wù)程序的功能,從顯示緩沖區(qū)分別取出 4 位 LED 顯示數(shù)據(jù)的位碼和段碼,送 P0 口,依次顯示每一位,顯示 4 位需要 4ms 的時間。在設(shè)定時間時候,對當前需要調(diào)整的設(shè)定值應(yīng)具有閃爍功能,用來提醒當前處于設(shè)置狀態(tài)。 第 頁 31 5 系統(tǒng)調(diào)試 本章對系統(tǒng)的各模塊進行了仿真調(diào)試。 保護現(xiàn)場關(guān) T1 中斷 把 DATA1 中數(shù)據(jù)寫到 DATA 中 根據(jù) CLK,送位選 COM 端 恢復(fù)現(xiàn)場,開 T1 中斷,恢復(fù) T1 初值 返回 四位顯示是否結(jié)束 Y N COM+ 1 圖 45 LED 動態(tài)顯示程序程序流程圖 進入 T1 中斷 第 頁 32 Proteus仿真軟件介紹 Proteus軟件是 Labcenter Electronics 公司的一款電路設(shè)計與仿真軟件,它包括ISIS、 ARES等軟件模塊, ARES模塊主要用來完成 PCB的設(shè)計,而 ISIS 模塊用來完成電路原理圖的布圖與仿真。 Proteus的軟件仿真基于 VSM技術(shù),它與其他軟件最大的不同也是最大的優(yōu)勢就在于它能仿真大量的單片機芯片,比如 MCS51系列、 PIC系列等等,以及單片機外圍電路,比如鍵盤、 LED、 LCD等等。通過 Proteus軟件的使用我們能夠輕易地獲得一個功能齊全、實用方便的單片機實驗室。 軟件仿真有很多特點和優(yōu)勢,如:可以隨意方便的更換和改變電路中的器件 及線路,仿真的過程中不會損壞器件,從而降低了產(chǎn)品開發(fā)的成本。 本文中由于我們主要使用 Proteus軟件在單片機方面的仿真功能,所以我們重點研究 ISIS模塊的用法,在下面的內(nèi)容中,如不特別說明,我們所說的 Proteus 軟件特指其ISIS模塊。 我們首先來熟悉一下 Proteus的界面。 Proteus 是一個標準的 Windows 窗口程序,和大多數(shù)程序一樣,沒有太大區(qū)別,其啟動界面如圖 51所示: 圖 51 Proteus 啟動界面 如圖中所示,區(qū)域 ① 為菜單及工具欄,區(qū)域 ② 為預(yù)覽區(qū),區(qū)域 ③ 為元器件瀏覽區(qū),區(qū)域 ④ 為編輯窗口,區(qū)域 ⑤ 為對象拾取區(qū),區(qū)域 ⑥ 為元器件調(diào)整工具欄,區(qū)域 ⑦ 為運行工具條。 第 頁 33 首先點擊 啟動界面區(qū)域 ③ 中的 “P” 按鈕( Pick Devices,拾取元器件)來打開 “Pick Devices” (拾取元器件)對話框從元件庫中拾取所需的元器件。在對話框中的“Keywords” 里面輸入我們要檢索的元器件的關(guān)鍵詞,比如我們要選擇項目中使用的AT89C51,就可以直接輸入。輸入以后我們能夠在中間的 “Results” 結(jié)果欄里面看到我們搜索的元器件的結(jié)果。在對話框的右側(cè),我們還能夠看到我們選擇的元器件的仿真模型、引腳以及 PCB參數(shù)。這里有一點需要注意,可能有時候我們選擇的元器件并沒有仿真模型,對話框?qū)⒃诜抡婺?型和引腳一欄中顯示 “No Simulator Model” (無仿真模型)。那么我們就不能夠用該元器件進行仿真了,或者我們只能做它的 PCB 板,或者我們選擇其他的與其功能類似而且具有仿真模型的元器件。 搜索到所需的元器件以后,我們可以雙擊元器件名來將相應(yīng)的元器件加入到我們的文檔中,那么接著我們還可以用相同的方法來搜索并加入其他的元器件。當我們
點擊復(fù)制文檔內(nèi)容
教學(xué)課件相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1