王奉武(上海國(guó)際主題樂(lè)園有限公司,上海 201205)
上位機(jī)設(shè)計(jì)技術(shù)剖析
王奉武(上海國(guó)際主題樂(lè)園有限公司,上海 201205)
上位機(jī)的主要功能就是為用戶(hù)提供較好的人機(jī)界面,將電表中的數(shù)據(jù)進(jìn)行處理、生成測(cè)量曲線(xiàn),并且以報(bào)表的形式進(jìn)行呈現(xiàn)。本文對(duì)上位機(jī)的基本原理進(jìn)行了初步介紹。并分別從上位機(jī)功能實(shí)現(xiàn)的以下幾個(gè)方面剖析了上位機(jī)設(shè)計(jì)的相關(guān)內(nèi)容:電表結(jié)構(gòu)設(shè)計(jì)、用戶(hù)配置界面設(shè)計(jì)、備份數(shù)據(jù)的處理設(shè)計(jì)以及軟件校表的設(shè)計(jì)。
上位機(jī);設(shè)計(jì)技術(shù);工作原理;電表結(jié)構(gòu)
近年來(lái),計(jì)算機(jī)技術(shù)得到高速發(fā)展,計(jì)算機(jī)系統(tǒng)也得到了廣泛的應(yīng)用,計(jì)算機(jī)網(wǎng)絡(luò)間的通訊也顯得越來(lái)越為重要。在單片機(jī)系統(tǒng)的實(shí)際應(yīng)用過(guò)程中,通常會(huì)遇到數(shù)據(jù)交換的情況,特別是在進(jìn)行通訊的過(guò)程中,上位機(jī)直接進(jìn)行數(shù)據(jù)交換時(shí),通常需從PC端接收控制信息,或者直接將數(shù)據(jù)傳遞到PC,該接口采用異步串行的傳輸方式,而上位機(jī)一般具有COM異步串行通信端口,采用RS-232標(biāo)準(zhǔn)設(shè)計(jì)。因此,設(shè)計(jì)上位機(jī)時(shí)可以借助COM和UART兩個(gè)端口進(jìn)行通訊,進(jìn)而實(shí)現(xiàn)數(shù)據(jù)的傳遞。
上位機(jī)的主要功能就是為用戶(hù)提供較好的人機(jī)交流界面,對(duì)電表中的數(shù)據(jù)進(jìn)行簡(jiǎn)單的處理,生成測(cè)量曲線(xiàn),并且以報(bào)表的形式呈現(xiàn),這極大地方便了用戶(hù)對(duì)數(shù)據(jù)的查看。同時(shí),上位機(jī)還能根據(jù)自身的配置管理功能實(shí)現(xiàn)電表的個(gè)性化配置和所有信息的設(shè)置,這也方便了用戶(hù)在PC機(jī)里設(shè)置個(gè)性化模式。上位機(jī)能夠結(jié)合電表實(shí)現(xiàn)軟件的校表功能,這極大地減少了硬件校表的繁瑣過(guò)程。開(kāi)發(fā)上位機(jī)運(yùn)行程序的常用工具有Java,C++和C#等,上位機(jī)開(kāi)發(fā)和運(yùn)行程序的環(huán)境通常為個(gè)人計(jì)算機(jī),這為用戶(hù)的安裝使用方面提供了方便。利用MFC提供的函數(shù)庫(kù),采用C++語(yǔ)言進(jìn)行上位機(jī)程序開(kāi)發(fā),可以實(shí)現(xiàn)上位機(jī)強(qiáng)大的繪圖功能和文件處理能力。上位機(jī)主體結(jié)構(gòu)較為簡(jiǎn)單,數(shù)據(jù)通信、數(shù)據(jù)視圖和校表數(shù)據(jù)三個(gè)內(nèi)容能設(shè)計(jì)到不同的獨(dú)立進(jìn)程中,而且互不干擾。
2.1 上位機(jī)電表的接口設(shè)計(jì)
上位機(jī)主要完成的功能包括下發(fā)配置的消息和各種命令,上傳備份數(shù)據(jù)等。電表和上位機(jī)之間使用USB接口,并且串口數(shù)據(jù)使用UARK進(jìn)行實(shí)際通訊,兩者有自己獨(dú)特定義的通訊協(xié)議。電表和上位機(jī)通訊方式通常有“命令-響應(yīng)”、“查詢(xún)-應(yīng)答-處理-命令”兩種?!懊?響應(yīng)”通訊方式是電表和上位機(jī)之間常用的通訊方式,而“查詢(xún)-應(yīng)答-處理-命令”通訊方式則需要通過(guò)電表進(jìn)行數(shù)據(jù)讀取或者通過(guò)上位機(jī)在本地存取相關(guān)的信息,適用于電表和上位機(jī)兩者相互交換信息數(shù)據(jù)的情況。
2.2 用戶(hù)配置界面設(shè)計(jì)
良好的人機(jī)操作界面是上位機(jī)設(shè)計(jì)的關(guān)鍵,人機(jī)操作界面的主要功能就是通過(guò)界面的配置來(lái)實(shí)現(xiàn)一定的定制業(yè)務(wù)。同現(xiàn)在的電腦系統(tǒng)類(lèi)似,當(dāng)上位機(jī)上有相關(guān)接口(如USB)插入時(shí),上位機(jī)就會(huì)顯示發(fā)現(xiàn)新的硬件,并且自動(dòng)安裝預(yù)先定義好的USB驅(qū)動(dòng)程序。新的驅(qū)動(dòng)已經(jīng)安裝好的標(biāo)志是會(huì)在上位機(jī)設(shè)備管理器中發(fā)現(xiàn)PORT_3符號(hào)。USB驅(qū)動(dòng)安裝好后,電表就會(huì)收到上位機(jī)發(fā)出的狀態(tài)請(qǐng)求信息,這個(gè)信息被稱(chēng)為握手信息(STATUS_FRAM),信息主要請(qǐng)求電表的序列號(hào)(Device Id)、備份文件版本(Log Data Version)、硬件版本號(hào)(Firmware version)、硬件 ID、總空間(Total size)和已被使用的空間(Flash space Used)等,并在消息體中將上位機(jī)所需的以上信息帶回。
上位機(jī)用戶(hù)界面設(shè)計(jì)中,用戶(hù)可以配置的信息一共可以分成四大類(lèi),分別為參數(shù)設(shè)置(Setting)、電表操作的配置(Operate)、測(cè)量項(xiàng)的配置(Measure)和電表顯示的配置(Display),并且不同模式下具有不同的顯示項(xiàng)內(nèi)容,例如在進(jìn)行模擬設(shè)計(jì)時(shí),如果用戶(hù)不關(guān)心Energy模式下的季度用電量,在界面設(shè)計(jì)中就不用勾選這個(gè)選項(xiàng),而后將該信息發(fā)送到電表中。在進(jìn)行用戶(hù)界面設(shè)計(jì)時(shí)參數(shù)設(shè)計(jì)還有不同于其他業(yè)務(wù)配置的地方,除了能夠給用戶(hù)提供Check Box控件外,還可以提供更為方便的列表控制和輸入文本框方面的設(shè)計(jì),這就給用戶(hù)設(shè)計(jì)的相關(guān)參數(shù)帶來(lái)很大的靈活性,圖1就是參數(shù)設(shè)計(jì)的相關(guān)界面。在進(jìn)行用戶(hù)配置界面設(shè)計(jì)的時(shí)候,Upload 按鍵的主要功能是將獲取的數(shù)據(jù)上傳至上位機(jī)的系統(tǒng)中,此外,該按鍵還有Upload Log Data和Upload Confi gure兩個(gè)下拉菜單,其中Upload Log Data菜單的主要功能是上傳備份的數(shù)據(jù),Upload Log Data功能是取出配置的信息,上報(bào)給上位機(jī),并將信息以pmcx文件格式上傳到指定的目錄。
圖1 上位機(jī)參數(shù)設(shè)計(jì)界面
2.3 備份數(shù)據(jù)處理設(shè)計(jì)
上位機(jī)最重要的功能之一就是將備份數(shù)據(jù)以圖表的形式反映給用戶(hù)。在進(jìn)行設(shè)計(jì)時(shí),用戶(hù)可以通過(guò)調(diào)用圖形設(shè)備接口,進(jìn)行函數(shù)和設(shè)備的調(diào)整,并且通過(guò)調(diào)用不同的設(shè)備驅(qū)動(dòng)程序,來(lái)給出不同的設(shè)備制圖指令,這樣就實(shí)現(xiàn)了設(shè)備的直接關(guān)聯(lián),避免了用戶(hù)對(duì)硬件進(jìn)行直接的操作,數(shù)據(jù)的處理和上位機(jī)的通訊接口實(shí)現(xiàn)了通訊功能
上的相互獨(dú)立,并且可以實(shí)現(xiàn)設(shè)計(jì)獨(dú)立的進(jìn)程。通常情況下,數(shù)據(jù)被處理成3種方式呈現(xiàn)給用戶(hù),分別為測(cè)量參量曲線(xiàn)圖、備份數(shù)據(jù)表和電費(fèi)報(bào)表。在智能電表里面能夠進(jìn)行數(shù)據(jù)的直接讀取,這種數(shù)據(jù)是一種中間的數(shù)據(jù),并且為參數(shù)曲線(xiàn)圖提供數(shù)據(jù)。電費(fèi)報(bào)表數(shù)據(jù)主要參照電力公司提供給居民的電力清單進(jìn)行設(shè)計(jì),數(shù)據(jù)的信息包括:用電器的名稱(chēng)、電表的序列號(hào)S/N、峰谷時(shí)間及費(fèi)率、備份數(shù)據(jù)的起始和結(jié)束時(shí)間等。上位機(jī)能夠通過(guò)這些數(shù)據(jù)自行對(duì)每天、每個(gè)月所產(chǎn)生的電能和消耗的費(fèi)用進(jìn)行估算,并提供給用戶(hù)整體的評(píng)估數(shù)據(jù)。在進(jìn)行數(shù)據(jù)備份的時(shí)候,智能電表對(duì)電壓、電流參量的計(jì)算一般是1s執(zhí)行一次,因此用戶(hù)進(jìn)行數(shù)據(jù)備份的最小間隙為1s,上位機(jī)備份數(shù)據(jù)最大提供30天的存儲(chǔ)空間。用戶(hù)可以將鼠標(biāo)置于相應(yīng)的位置,來(lái)查看每個(gè)數(shù)據(jù)點(diǎn)的具體數(shù)值,并且可以調(diào)整顯示圖表的長(zhǎng)短和顯示時(shí)間,這極大地方便了用戶(hù)對(duì)數(shù)據(jù)的分析。
本文概述了上位機(jī)的系統(tǒng),分別從電表結(jié)構(gòu)設(shè)計(jì)、用戶(hù)配置界面設(shè)計(jì)、備份數(shù)據(jù)的處理設(shè)計(jì)等幾個(gè)方面,介紹了上位機(jī)設(shè)計(jì)的相關(guān)內(nèi)容。上位機(jī)和嵌入部分的相關(guān)接口設(shè)計(jì)是上位機(jī)設(shè)計(jì)的基礎(chǔ)工作,也是實(shí)現(xiàn)上位機(jī)相關(guān)功能的基礎(chǔ)。其中備份數(shù)據(jù)處理模塊和個(gè)性化配置模塊能夠開(kāi)啟不同的進(jìn)程,這大大方便了用戶(hù)的操作體驗(yàn),提高了相關(guān)應(yīng)用程序的設(shè)計(jì)性能。
[1]唐志平.供配電節(jié)能技術(shù)和措施[J].常州工學(xué)院學(xué)報(bào),2006, 4(02):1-4.
[2]譚紹瓊.淺談電能計(jì)量裝置的發(fā)展[J].機(jī)械管理開(kāi)發(fā),2007, 10(05):4-5.
[3]李劍.單相智能復(fù)費(fèi)率電能表的設(shè)計(jì)與開(kāi)發(fā)[D].南京:同濟(jì)大學(xué),2008.
[4]李靜,楊以涵,于文斌.電能計(jì)量系統(tǒng)發(fā)展綜述[J].電力系統(tǒng)保護(hù)與控制,2009,37(11):130-134.
[5]張彩芬,遲喜梅.電子式電能表與感應(yīng)式電能表性能比較分析[J].內(nèi)蒙古電力技術(shù),2006,24(S3):133-135.
[6]李峰.電子式電能表的結(jié)構(gòu)及誤差分析[J].儀器儀表標(biāo)準(zhǔn)化與計(jì)量,2006(04):29-30.
[7]杜瓊.電子式電能表系列以及集中抄表系統(tǒng)的設(shè)計(jì)開(kāi)發(fā)[D].無(wú)錫:江南大學(xué),2005.
[8]國(guó)家電網(wǎng)公司.國(guó)外智能電網(wǎng)發(fā)展綜述[J].物聯(lián)網(wǎng)技術(shù),2012, (01):4-8.
[9]王欣異.多功能智能電表的設(shè)計(jì)與研究[D].武漢:武漢理工大學(xué),2011.
[10]麻秀范,盧文冰,王宏.IC卡電表的低壓電力載波自動(dòng)抄表方案研究[J].電力自動(dòng)化設(shè)備,2002,22(7):53-55.