




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、基于DARTS的洗衣機控制軟件設計 1.洗衣機控制軟件需求分析與說明洗衣機是日常家用電器,它是人們日常使用頻率較高的家用電器,有全自動、半自動等不同類型。根據題目中提出的需求概述,結合日常生活中人們的使用習慣,在這里給出其功能需求和相應的非功能需求以及相應的外部接口等的定義和描述。1)功能需求定義和描述(1) 默認狀態下洗衣機處于關閉狀態。用戶按下電源開關后,洗衣機上電工作;當洗衣機處于工作狀態時,用戶按下電源開關后,無論洗衣機處于何種運行狀態均斷電、停止工作;(2) 電源開關開啟后,洗衣機默認的程序功能是洗衣、漂洗、脫水,默認水位時中等水位,運行狀態是等待狀態;(3) 洗衣機有運行狀態和等待
2、狀態;當用戶按下暫停啟動開關后,若洗衣機原來處于等待狀態,則轉入運行狀態,執行等待狀態時的程序執行狀態;若洗衣機處于運行狀態,則轉入等待狀態,并保存程序的執行狀態;(4) 當洗衣機處于運行狀態時,用戶的程序控制,即洗衣、漂洗、脫水按鍵和水位按鍵的輸入無效;只有當洗衣機處于等待狀態時其輸入才有效;(5) 程序控制的洗衣、漂洗、脫水這三個鍵可以按下一個、兩個或者三個,洗衣機總是按洗衣->漂洗->脫水的順序執行程序并且只執行用戶選擇的程序;(6) 水位按鍵每次只能選擇高、中、低三種水位的一個值;(7) 洗衣機顯示面板顯示洗衣機的電源狀態、暫停啟動狀態、當前執行的程序以及即將執行的程序和水
3、位狀態,并且能根據用戶輸入以后及時改變顯示信息。2)非功能需求定義和描述(1) 洗衣機開關機的響應時間控制在500ms以內;(2) 洗衣機在運行狀態和等待狀態之間的才換控制在800ms以內;(3) 洗衣機功能和水位的輸入控制在600ms以內;(4) 洗衣機顯示面板的響應控制在1200ms以內;(5) 這里假設洗衣機洗衣用600s的時間,漂洗用300s的時間,脫水用100s的時間。3)外部接口描述電源暫停/啟動漂洗甩干高水位中水位低水位洗滌外部接口描述如下所述:共有八個按鈕,分為四組,分別是電源、暫停/啟動、程序控制和水位。按鈕旁邊的指示燈顯示每個按鈕對應的狀態:電源指示燈亮表示電源打開,暗則表
4、示關閉;暫停/啟動按鈕亮表示正在運行,暗表示處于暫停狀態;程序控制按鈕亮表示正在執行或者將要執行,暗則表示不能執行;水位按鈕亮表示當前處于某個水位。4)系統狀態變遷圖斷電態通電等待態通電執行態電源打開電源關閉程序水位控制啟動暫停電源關閉2.洗衣機控制軟件系統設計以及數據流分析根據以上所提出的需求,相應的數據流圖如下所示:讀取按鍵輸入按下按鍵按鍵有效性檢查按鍵輸入按鍵輸入處理按鍵有效無效處理按鍵無效洗衣機狀態信息查看程序狀態狀態信息按鍵狀態轉換狀態信息有效按鍵輸入定時20個時鐘中斷觸發信息狀態判斷器輸入信息定時10個時鐘中斷面板輸出觸發信息狀態信息改變顯示管狀態信息解釋程序信息狀態變化信息發動機
5、機械、電信號信號響應動作輸出定時15個時鐘中斷觸發信息洗衣機狀態、指令集指令信息說明:(1)洗衣機程序狀態信息是一組數據,包含四個項:電源狀態、運行情況、程序狀態和水位信息,與輸入面板的相對應;(2)時鐘中斷的時間間隔是20ms,通過具有一定頻率的時鐘中斷來查看當前洗衣機程序執行的執行情況、按鍵輸入和面板輸出,以提高效率、降低復雜性。(3)洗衣機狀態、指令集是洗衣機在裝變為相應狀態的時候所需要運行的指令等,這些設局存儲在快速讀寫存儲器之中,讀取這些數據的時間非常快,在100ms的量級。3.洗衣機控制軟件任務劃分以及任務模塊設計1)洗衣機控制軟件任務劃分根據設計的數據流圖,洗衣機程序的任務劃分如
6、下圖所示(在數據流圖中被劃入相同的任務的數據處理過程用相同顏色的虛線方框來表示):讀取按鍵輸入按下按鍵按鍵有效性檢查按鍵輸入按鍵輸入處理按鍵有效無效處理按鍵無效洗衣機狀態信息查看程序狀態狀態信息按鍵狀態轉換狀態信息有效按鍵輸入定時20個時鐘中斷觸發信息狀態判斷器輸入信息定時10個時鐘中斷面板輸出觸發信息狀態信息改變顯示管狀態信息解釋程序信息狀態變化信息發動機機械、電信號信號響應動作輸出定時15個時鐘中斷觸發信息洗衣機狀態、指令集指令信息進行以上任務劃分的理由:在DARTS設計方法中,劃分任務的原則包括以下幾種:I/O依賴性、功能的時間關鍵性、計算需求、功能內聚、時間內聚和周期執行,正是根據以上
7、原則進行整體考慮得到以上的功能劃分。(1)按鍵輸入任務:功能內聚原則;(2)中斷定時任務:周期執行原則;(3)洗衣機狀態信息處理任務:計算需求和功能內聚原則;(4)信號輸出任務:I/O依賴性原則。另外,為了提高效率,將數據流圖中的洗衣機狀態信息和洗衣機狀態指令集整合在一起作為洗衣機程序的信息存儲,以便各個任務的訪問能夠有一個統一的入口。2)洗衣機控制軟件任務接口洗衣機信息存儲按鍵輸入任務信號輸出任務狀態信息處理任務中斷定時任務觸發信息觸發信息按鍵輸入消息隊列存儲信息消息隊列存儲信息消息隊列修改存儲信號面板、動作輸出按鍵輸入3)任務模塊設計(1)按鍵輸入任務按鍵輸入任務的主要功能是在面板上的按鍵
8、按下以后,得到正確的按鍵信息傳遞給狀態信息任務對按鍵信息進行處理。這里的正確信息是指每次只能有同一種類的按鍵信息按下,比如不能同時按下暫停啟動鍵和洗衣程序任務鍵或者洗衣程序任務鍵和水位鍵等。而且需要將按鍵的電信號轉換成可以識別的程序信號傳遞下去。按鍵輸入任務的數據流圖如下所示:讀取按鍵按鍵輸入提取按鍵信息錯誤信息處理按鍵信息轉換按鍵信息傳遞不同類型按鍵相同類型按鍵傳遞給狀態信息任務處理忽略按鍵信息按鍵類型判斷按鍵輸入的模塊結構圖如下所示:讀取按鍵按鍵信息提取、判斷錯誤信息處理正確信息傳遞(2)狀態信息處理任務狀態信息處理任務的主要功能是(1)每隔一段時間,把得到的按鍵輸入轉換成為相應的狀態信息
9、,根據得到的按鍵輸入和當前的運行信息進行比較得到一個正確的運行信息寫入信息存儲器;(2)每隔一段時間,將運行信息傳遞給信號輸出單元執行要運行的程序。狀態信息處理的數據流圖如下所示:定時信號得到按鍵信息是得到運行狀態信息按鍵信息洗衣機信息存儲運行信息按鍵信息與運行信息判斷是否有按鍵是按鍵是否與運行信息矛盾否寫入運行信息運行信息發送狀態變化信息狀態變化信息定時信號得到運行狀態信息否運行信息判斷信息是否應該改變否是不予相應,空操作更改的運行信息狀態信息處理的模塊結構如下所示:獲取按鍵信息狀態判斷運行信息更改動作信號傳遞查看運行信息(3)中斷定時任務中斷定時任務的主要功能是為程序的執行提供時間控制,狀
10、態信息處理和信號輸出均需要中斷定時任務的控制。中斷定時任務為每一個需要的任務設置定時器,如果定時器時間到達就發送觸發信息,并重置相應的中斷定時器。中斷定時任務的數據流圖如下:判斷20個定時時間是否到是重設20個定時時間,發送處罰信息否定時器重置信號設置定時器定時器是指減1定時器設置信號觸發信息判斷15個定時時間是否到時鐘中斷是重設15個定時時間,發送處罰信息否定時器重置信號設置定時器定時器是指減1定時器設置信號觸發信息判斷10個定時時間是否到是重設10個定時時間,發送處罰信息否定時器重置信號設置定時器定時器是指減1定時器設置信號觸發信息定時器的任務模塊如下所示:設置定時信息發送觸發信號獲取定時
11、信息判斷10個定時時間判斷15個定時時間判斷20個定時時間重置定時信息是是是否否否(4)信號輸出任務信號輸出任務主要是將程序的執行狀態轉化為用戶可見的顯示和洗衣機的動作輸出。其數據流圖如下所示:程序執行狀態讀取執行信息存儲顯示面板輸出觸發信息狀態、指令讀取狀態和指令比對,選擇正確指令指令轉化為電信號,出書信號狀態改變信息狀態改變信息,指令信息指令信息電信號運行信息指令信息信號輸出任務模塊如下所示:執行信息讀取顯示面板輸出指令轉換、電信號輸出4.主要的功能流程設計通過以上的分析與設計,程序框架基本建立,大部分模塊的形成和設計如上面設計過程中的功能所示,這里對按鍵輸入任務中的按鍵提取、判斷和狀態信息處理任務中的狀態信息處理的算法實現進行描述。按鍵提取、判斷的流程:當得到輸入鍵值以后,檢測按鍵的類型,如果類型大于1便認為是錯誤輸入;按鍵的類型等于1則認為是正確輸入,才能將其進行傳遞。狀態信息處理的流程:(1) 如果輸入的是電源開關按鍵值,直接傳遞給動作輸出信號任務改變電源狀態,并將洗衣機狀態信息設為初始狀態,因為電源狀態在洗衣機軟件中具有最重要的地位和最高優先級;(2) 如果輸入的是暫停啟動按鍵值,應先判斷電源狀態是否為開,如果為開啟狀態就改變運行狀態為相對的狀態,如果為關則將洗衣機狀態設置為初始狀態,因為在電源為關閉的狀態下
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 茶顧問聘用合同協議書
- 小區廣告合同協議書范本
- 土方填坑合同協議書
- 工程承包事故合同協議書
- 牙齒美容學徒合同協議書
- 簡單的員工合同協議書
- 中國工業級甘氨酸項目創業計劃書
- 租地種養合同協議書模板
- 經銷授權合同協議書模板
- 2025秋五年級語文上冊統編版-【8 冀中的地道戰】交互課件
- 【MOOC】太陽能電池測試及標準-常熟理工學院 中國大學慕課MOOC答案
- 防汛搶險人員安全培訓
- 左肘管綜合征的護理查房
- 一例支氣管肺炎合并右肺實變患兒的護理查房
- 【MOOC】電子技術實驗-北京科技大學 中國大學慕課MOOC答案
- 含兩級混合運算(同步練習) 二年級下冊數學人教版
- 2024年七月醫療器械質量管理制度
- 2024年高考真題-歷史(安徽卷) 含答案
- 2024年湖南省初中學業水平考試地理試卷含答案
- 八年級生物期中模擬卷(考試版A4)(江蘇專用蘇科版)
- GB/T 32124-2024磷石膏的處理處置規范
評論
0/150
提交評論