技術(shù)頻道

娓娓工業(yè)
您現(xiàn)在的位置: 中國(guó)傳動(dòng)網(wǎng) > 技術(shù)頻道 > 技術(shù)百科 > 面向?qū)ο蟮淖冸娬咀詣?dòng)化系統(tǒng)控保單元人機(jī)界面設(shè)計(jì)

面向?qū)ο蟮淖冸娬咀詣?dòng)化系統(tǒng)控保單元人機(jī)界面設(shè)計(jì)

時(shí)間:2007-12-27 15:05:00來(lái)源:fenghy

導(dǎo)語(yǔ):?面向?qū)ο蟮某绦蛟O(shè)計(jì)方法(OOP)已成為人們構(gòu)造程序的事實(shí)標(biāo)準(zhǔn),很多采用OOP方法設(shè)計(jì)的程序成為程序設(shè)計(jì)的典范,Windows應(yīng)用程序就是一例。
近年來(lái),面向?qū)ο蟮某绦蛟O(shè)計(jì)方法(OOP)已成為人們構(gòu)造程序的事實(shí)標(biāo)準(zhǔn),很多采用OOP方法設(shè)計(jì)的程序成為程序設(shè)計(jì)的典范,Windows應(yīng)用程序就是一例。借鑒Windows應(yīng)用程序界面設(shè)計(jì)思想,將面向?qū)ο蟮姆椒ㄒ肟乇卧藱C(jī)界面的設(shè)計(jì),使人機(jī)交互程序變得清晰簡(jiǎn)潔,同時(shí)大大提高了在不同功用控保單元上的可移植性。 1 變電站自動(dòng)化系統(tǒng)控保單元人機(jī)界面功能分析 1.1 控保單元 1.1.1 控保單元簡(jiǎn)介 變電站綜合自動(dòng)化系統(tǒng)已經(jīng)從早期的集中式單CPU發(fā)展到今天的分層分布式多CPU系統(tǒng)。目前變電站綜合自動(dòng)化的發(fā)展趨勢(shì)是將功能強(qiáng)大的微機(jī)監(jiān)控系統(tǒng)與全數(shù)字化的微機(jī)保護(hù)測(cè)控技術(shù)、高速網(wǎng)絡(luò)通信技術(shù)結(jié)合起來(lái),取代傳統(tǒng)的RTU,實(shí)現(xiàn)無(wú)人值班。目前國(guó)內(nèi)變電站綜合自動(dòng)化發(fā)展的趨勢(shì)是將傳統(tǒng)上集中在一起的監(jiān)控 、保護(hù)功能分散到各個(gè)現(xiàn)場(chǎng)中分布實(shí)施。具體來(lái)說(shuō)就是在變電站中按照電氣間隔劃分單元,每一個(gè)獨(dú)立控保裝置(如進(jìn)線、出線、變壓器、母聯(lián)、電容器等)分別安裝各自獨(dú)立的控保單元。這些分散的控保單元再通過(guò)通信網(wǎng)絡(luò)與監(jiān)控主機(jī)連起來(lái),構(gòu)成一個(gè)有機(jī)的整體,從而實(shí)現(xiàn)集中管理、分散控制。這種體系結(jié)構(gòu)符合變電站自動(dòng)化系統(tǒng)的發(fā)展趨勢(shì),設(shè)計(jì)規(guī)范,調(diào)整擴(kuò)建簡(jiǎn)單,設(shè)備布置整齊,運(yùn)行維護(hù)方便。
1.1.2 控保單元人機(jī)界面正面示圖 圖1控保單元操作界面圖圖1所示的某種典型控保單元操作界面可分為4個(gè)區(qū)域:區(qū)域A為液晶顯示區(qū);區(qū)域B為鍵盤(pán)輸入?yún)^(qū);區(qū)域C為控制命令輸入?yún)^(qū);區(qū)域D為指示燈及揚(yáng)聲器輸出區(qū)。注意:為了防止誤操作,特意將控制命令鍵同鍵盤(pán)輸入?yún)^(qū)域B分開(kāi),單獨(dú)列為區(qū)域C,并且加密碼保護(hù)。 1.2 鍵盤(pán) 鍵盤(pán)作為控保單元人機(jī)交互系統(tǒng)的主要組成部分,擔(dān)負(fù)著傳遞用戶命令至控保單元的任務(wù)。按人機(jī)交互系統(tǒng)對(duì)其不同的響應(yīng)過(guò)程可將按鍵分為以下5類: (1) 數(shù)字鍵+小數(shù)點(diǎn)鍵+回退鍵 這些鍵用做單個(gè)或連續(xù)數(shù)字的輸入,并由交互系統(tǒng)軟件賦予其意義。 (2) 上/下移動(dòng)選擇鍵 這兩個(gè)鍵用做菜單選擇、屏幕翻頁(yè)、選項(xiàng)選定等。 (3) 確認(rèn)鍵 此鍵用做選定操作項(xiàng),類似于Windows中的[OK]鍵。 (4) 取消鍵 用做取消當(dāng)前操作項(xiàng)或菜單退回到上級(jí)目錄,類似于Windows中的[CANCEL]鍵。 (5) 命令鍵 這些鍵用做合分閘、遠(yuǎn)動(dòng)就地切換、事故復(fù)位等重要命令的輸入。 1.3 液晶屏幕 液晶屏幕在控保單元人機(jī)交互系統(tǒng)中擔(dān)負(fù)著傳遞控保單元信息至用戶的任務(wù)。為了使操作簡(jiǎn)單方便,液晶屏幕信息的顯示采用了分層菜單結(jié)構(gòu),輔以上/下移動(dòng)選擇鍵、確認(rèn)鍵、取消鍵就可完成整個(gè)菜單的完全檢索。菜單結(jié)構(gòu)是建立在“頁(yè)面”的基礎(chǔ)上的,所謂“頁(yè)面”,指的是液晶上顯示的一屏,由兩部分組成:靜態(tài)文本和動(dòng)態(tài)數(shù)據(jù)。靜態(tài)文本包括說(shuō)明性的文字及提示信息等,由漢字和字符組成,在人機(jī)交互軟件中是用字符串來(lái)表示的;動(dòng)態(tài)數(shù)據(jù)指實(shí)時(shí)刷新的數(shù)值或可由用戶修改的信息,在人機(jī)交互軟件中是用數(shù)值變量來(lái)表示的,液晶頁(yè)面根據(jù)其組成的不同可分為以下幾類: (1) 純文本頁(yè)面。如目錄,這類頁(yè)面不包括數(shù)據(jù),因此顯示時(shí)只要刷新一次即可。 (2) 文本+實(shí)時(shí)數(shù)據(jù)頁(yè)面。如測(cè)量電量顯示頁(yè)面,這類頁(yè)面由于包含實(shí)時(shí)刷新的數(shù)據(jù),顯示時(shí),數(shù)據(jù)顯示部分須不斷刷新以保持實(shí)時(shí)有效,但用戶不能通過(guò)鍵盤(pán)對(duì)數(shù)據(jù)進(jìn)行修改等操作。 (3) 文本+可修改數(shù)據(jù)頁(yè)面。如定值修改頁(yè)面,這類頁(yè)面包含的可修改數(shù)據(jù)可由用戶通過(guò)鍵盤(pán)的數(shù)字鍵進(jìn)行改動(dòng)。 (4) 幫助信息頁(yè)面。如錯(cuò)誤操作警告等,這類頁(yè)面通常由純文本組成,但與以上3類頁(yè)面都不同的是頁(yè)面在顯示一段時(shí)間后會(huì)自動(dòng)切換到引起該幫助信息的頁(yè)面。 2 以頁(yè)面為對(duì)象的控保單元人機(jī)交互設(shè)計(jì) 2.1 Windows應(yīng)用程序界面與控保單元界面相似之處 Windows應(yīng)用程序的設(shè)計(jì)過(guò)程是典型的面向?qū)ο蟮脑O(shè)計(jì)方法,同時(shí)Windows應(yīng)用程序“窗口”界面與控保單元人機(jī)交互界面有很大相似之處:(1)窗口通過(guò)消息響應(yīng)機(jī)制響應(yīng)鍵盤(pán)或鼠標(biāo)等輸入設(shè)備的輸入信息,而在控保單元的某個(gè)頁(yè)面也是響應(yīng)鍵盤(pán)的輸入;(2)兩者都是在一簡(jiǎn)單的while()循環(huán)中響應(yīng)外部輸入的;(3)都用多層嵌套的switchcase語(yǔ)句來(lái)決定某一消息對(duì)應(yīng)進(jìn)行何種操作。由此,自然想到借鑒Windows應(yīng)用程序的設(shè)計(jì)思路設(shè)計(jì)控保單元人機(jī)界面。當(dāng)然,在單片機(jī)上設(shè)計(jì)菜單不同于Windows環(huán)境下軟件的開(kāi)發(fā),因?yàn)樵S多Windows內(nèi)部的消息響應(yīng)機(jī)制以及由Windows封裝的數(shù)據(jù)結(jié)構(gòu)、對(duì)象和標(biāo)準(zhǔn)處理函數(shù),在單片機(jī)系統(tǒng)中統(tǒng)統(tǒng)不存在。盡管如此,設(shè)計(jì)控保單元人機(jī)界面時(shí)仍然可以借鑒大量的Windows程序開(kāi)發(fā)思路。 2.2 控保單元頁(yè)面 控保單元的頁(yè)面與Windows應(yīng)用程序中的窗口有很多相似之處。首先頁(yè)面處理的核心也是一個(gè)循環(huán)機(jī)制,它一直運(yùn)行并響應(yīng)外部有效按鍵輸入,直到得到切換窗口的鍵碼。這與Windows窗口消息循環(huán)機(jī)制有很大相似之處;當(dāng)然,基于單片機(jī)的頁(yè)面按鍵響應(yīng)機(jī)制不能借用Windows的消息響應(yīng)機(jī)制,而只能每得到一個(gè)按鍵響應(yīng)就處理一個(gè)。一個(gè)頁(yè)面生命周期流程表示如圖2:
 圖2表示的流程實(shí)際上也是控保單元人機(jī)界面程序的入口程序main()的主體部分,只需在前面加上液晶、通訊模塊的初始化及全局變量的初始化就構(gòu)成了main()程序。流程圖中的幾個(gè)重要模塊說(shuō)明如下: 初始化并顯示頁(yè)面包括以下幾個(gè)操作: (1) 調(diào)用一清屏函數(shù)ClearPage(),清除上次頁(yè)面的遺留物; (2) 顯示當(dāng)前頁(yè)面內(nèi)容。如前所說(shuō),頁(yè)面由靜態(tài)文本和動(dòng)態(tài)數(shù)據(jù)兩部分組成,因此這里也分兩步顯示頁(yè)面內(nèi)容: a.調(diào)用DisplayTxt(unsigned char*)函數(shù)顯示當(dāng)前頁(yè)面的靜態(tài)文本,靜態(tài)文本在屏幕上是逐行分布的,舉例來(lái)說(shuō),一個(gè)256*128點(diǎn)陣的液晶屏幕,顯示一個(gè)漢字需16*16,英文字符需8*16,因此,整個(gè)屏幕可以分成8行,每行可顯示16個(gè)漢字或32個(gè)英文字符。調(diào)用8次DisplayTxt函數(shù)就可完成頁(yè)面的靜態(tài)文本的顯示 。DisplayTxt函數(shù)所帶的行參就是指向某一行文本的指針。 b.顯示當(dāng)前頁(yè)面的動(dòng)態(tài)數(shù)據(jù)。首先頁(yè)面應(yīng)刷新保存在緩沖區(qū)內(nèi)的當(dāng)前頁(yè)面的動(dòng)態(tài)數(shù)據(jù),此步驟調(diào)用Refr eshData(STRUCT*),傳遞參數(shù)是一個(gè)指向頁(yè)面結(jié)構(gòu)的指針。該函數(shù)負(fù)責(zé)從控保單元的數(shù)據(jù)采集CPU得到實(shí)時(shí)動(dòng)態(tài)數(shù)據(jù),并保存在本地緩沖區(qū)以備顯示。然后頁(yè)面調(diào)用DisplayData()顯示動(dòng)態(tài)數(shù)據(jù)。 鍵盤(pán)掃描循環(huán)是一無(wú)條件的while()循環(huán),它通過(guò)鍵盤(pán)掃描函數(shù)ScanKeyboard()返回鍵碼并進(jìn)行相應(yīng)的操作,直到接收到的按鍵會(huì)導(dǎo)致頁(yè)面切換為止,這時(shí),根據(jù)當(dāng)前頁(yè)面的一個(gè)指針?biāo)傅男马?yè)面,程序結(jié)束當(dāng)前頁(yè)面,轉(zhuǎn)而進(jìn)入新頁(yè)面的生命周期。循環(huán)中,除了包含鍵掃描函數(shù)ScanKeyboard()外,如果該頁(yè)面有動(dòng)態(tài)數(shù)據(jù),還應(yīng)包含刷新數(shù)據(jù)的函數(shù)RefreshData(STRUCT*),以保持?jǐn)?shù)據(jù)的實(shí)時(shí)性。 處理按鍵是用一個(gè)兩層嵌套的switch-case語(yǔ)句來(lái)實(shí)現(xiàn)的。如前面1.2節(jié)所述,將按鍵分為5類,而每一類按鍵又根據(jù)當(dāng)前頁(yè)面不同類型分別進(jìn)行處理。 默認(rèn)處理一般可設(shè)為不響應(yīng)。 3 頁(yè)面操作的具體實(shí)現(xiàn) 3.1 按鍵處理 按鍵處理函數(shù)是整個(gè)應(yīng)用程序的核心,在這里,程序定義某一頁(yè)面下對(duì)何按鍵作何處理。下面分析一下每種按鍵的處理。 3.1.1 數(shù)字鍵+小數(shù)點(diǎn)鍵+回退鍵 這些鍵只有在有可修改數(shù)據(jù)的頁(yè)面下才會(huì)響應(yīng),因此對(duì)它們只有一種處理,即將輸入數(shù)字鍵翻譯成對(duì)應(yīng)的數(shù)值。 3.1.2 上/下移動(dòng)選擇鍵 不同的頁(yè)面下,這兩個(gè)鍵的響應(yīng)處理也不同,分為: (1) 切換到新的頁(yè)面。例如,顯示測(cè)量電量時(shí),一屏顯示不下,需多屏顯示時(shí),在顯示其中某一屏?xí)r按上/下移動(dòng)選擇鍵,將顯示相連的屏幕。 (2) 操作條目的移動(dòng)。菜單的當(dāng)前操作條目是用反色顯示的方法表示的,上/下移動(dòng)選擇鍵使反色顯示區(qū)移動(dòng)到用戶選擇的操作條目。 (3) 可選項(xiàng)的選擇??蛇x項(xiàng)指的是界面提供給用戶通過(guò)上/下選擇鍵選定的值,例如界面提供通訊速率的幾種選擇,上/下選擇鍵使用戶在這些可選速率之間切換,直到選中所需通訊速率。 3.1.3 確認(rèn)鍵 確認(rèn)鍵的響應(yīng)有以下幾種可能: (1) 切換到新的頁(yè)面。 (2) 切換當(dāng)前條目的狀態(tài)。在設(shè)置參數(shù)時(shí),選中條目有修改態(tài)和查詢態(tài)兩種狀態(tài),用確認(rèn)鍵使設(shè)置值在反色和正常之間切換,來(lái)代表修改態(tài)和查詢態(tài)之間的切換。 (3) 確認(rèn)當(dāng)前的輸入。 3.1.4 取消鍵 取消鍵只有一種響應(yīng)處理:退出當(dāng)前頁(yè)面,進(jìn)入新的頁(yè)面顯示(通常是返回到當(dāng)前頁(yè)面的前一頁(yè)面)。 3.2 頁(yè)面結(jié)構(gòu) 上述頁(yè)面顯示流程的分析以及按鍵處理的分析,給出了一個(gè)頁(yè)面生命周期內(nèi)的所有活動(dòng)以及這些活動(dòng)所需的頁(yè)面屬性。下面我們就根據(jù)上述頁(yè)面顯示流程的分析以及按鍵處理的分析,定義頁(yè)面結(jié)構(gòu)。由上述的分析,頁(yè)面活動(dòng)分顯示和響應(yīng)按鍵兩大部分,因此頁(yè)面結(jié)構(gòu)也分與之相關(guān)的兩部分。如下所示:
上面只定義了部分與顯示有關(guān)的變量,與按鍵響應(yīng)有關(guān)的變量也只定義了有關(guān)取消鍵的變量。這是因?yàn)楸疚牡哪康闹皇墙o出借鑒Windows程序的頁(yè)面設(shè)計(jì)框架思路,具體到頁(yè)面結(jié)構(gòu)中各變量的具體定義,只需根據(jù)前面流程的分析以及按鍵處理的分析用到了那些頁(yè)面的屬性,加入對(duì)應(yīng)的頁(yè)面變量即可。而按鍵處理隨實(shí)際情況而定,人機(jī)界面的設(shè)計(jì)風(fēng)格也因人而異,所以具體定義頁(yè)面結(jié)構(gòu)變量由讀者需要而定。 4 完成控保單元整個(gè)人機(jī)界面設(shè)計(jì) 上一節(jié)完成了以頁(yè)面為中心的控保單元人機(jī)界面主流程,并給出了頁(yè)面結(jié)構(gòu)的定義。要完成控保單元整個(gè)人機(jī)界面設(shè)計(jì),還缺少基本的顯示、鍵掃描、通訊接口函數(shù)。不同于Windows應(yīng)用程序可以利用大量現(xiàn)成的Windows API函數(shù),在控保單元人機(jī)界面的設(shè)計(jì)中,這些底層接口函數(shù)都需自己設(shè)計(jì)。另外在接口函數(shù)基礎(chǔ)上的一些頁(yè)面方法(函數(shù))也需自己設(shè)計(jì)。由于接口函數(shù)隨硬件而異,頁(yè)面方法隨用戶需要而定,下面只按功能列出它們: (1) 有關(guān)按鍵處理的功能模塊。應(yīng)包括按鍵掃描模塊、輸入轉(zhuǎn)換模塊(將輸入一串?dāng)?shù)字鍵翻譯成一個(gè)浮點(diǎn)數(shù))。 (2) 有關(guān)顯示功能模塊。應(yīng)包括文本顯示模塊、數(shù)值顯示模塊等。 (3) 通訊模塊。應(yīng)包括通訊接口模塊、轉(zhuǎn)換模塊(將數(shù)據(jù)打包傳送給通訊接口及將接受到的數(shù)據(jù)包還原 )。 5 結(jié)束語(yǔ) 上文將面向?qū)ο蟮姆椒☉?yīng)用于控保單元人際界面設(shè)計(jì)的全過(guò)程,尤其借鑒了Windows應(yīng)用程序的設(shè)計(jì)思路,雖然基于單片機(jī)的人際界面程序不可能實(shí)現(xiàn)Windows應(yīng)用程序的核心——消息響應(yīng)機(jī)制,但是仍然大大提高了界面友好性及程序的可移植性,顯示了面向?qū)ο蠓椒ㄔO(shè)計(jì)的優(yōu)越性。

標(biāo)簽:

點(diǎn)贊

分享到:

上一篇:PLC自動(dòng)控制系統(tǒng)可靠性分析

下一篇:微能WIN-V63矢量控制變頻器在...

中國(guó)傳動(dòng)網(wǎng)版權(quán)與免責(zé)聲明:凡本網(wǎng)注明[來(lái)源:中國(guó)傳動(dòng)網(wǎng)]的所有文字、圖片、音視和視頻文件,版權(quán)均為中國(guó)傳動(dòng)網(wǎng)(www.treenowplaneincome.com)獨(dú)家所有。如需轉(zhuǎn)載請(qǐng)與0755-82949061聯(lián)系。任何媒體、網(wǎng)站或個(gè)人轉(zhuǎn)載使用時(shí)須注明來(lái)源“中國(guó)傳動(dòng)網(wǎng)”,違反者本網(wǎng)將追究其法律責(zé)任。

本網(wǎng)轉(zhuǎn)載并注明其他來(lái)源的稿件,均來(lái)自互聯(lián)網(wǎng)或業(yè)內(nèi)投稿人士,版權(quán)屬于原版權(quán)人。轉(zhuǎn)載請(qǐng)保留稿件來(lái)源及作者,禁止擅自篡改,違者自負(fù)版權(quán)法律責(zé)任。

網(wǎng)站簡(jiǎn)介|會(huì)員服務(wù)|聯(lián)系方式|幫助信息|版權(quán)信息|網(wǎng)站地圖|友情鏈接|法律支持|意見(jiàn)反饋|sitemap

中國(guó)傳動(dòng)網(wǎng)-工業(yè)自動(dòng)化與智能制造的全媒體“互聯(lián)網(wǎng)+”創(chuàng)新服務(wù)平臺(tái)

網(wǎng)站客服服務(wù)咨詢采購(gòu)咨詢媒體合作

Chuandong.com Copyright ?2005 - 2024 ,All Rights Reserved 版權(quán)所有 粵ICP備 14004826號(hào) | 營(yíng)業(yè)執(zhí)照證書(shū) | 不良信息舉報(bào)中心 | 粵公網(wǎng)安備 44030402000946號(hào)