基于Python的計(jì)量電能表管理系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)
引言
計(jì)量電能表是電力系統(tǒng)連接用戶(hù)的一種終端設(shè)備,對(duì)計(jì)量電能表的入庫(kù)、統(tǒng)計(jì)、維護(hù)等工作也是供電所基層班組工作的重要部分。根據(jù)精益化管理相關(guān)要求,對(duì)于電能表的管理應(yīng)遵循規(guī)定,嚴(yán)格做好臺(tái)賬管理、出入庫(kù)登記管理等。而在當(dāng)前的供電所電能表管理中,主要由人工管理,通常使用Excel表格或紙質(zhì)記錄本等傳統(tǒng)工具。
使用軟件實(shí)現(xiàn)辦公信息化主要體現(xiàn)出以下兩點(diǎn)優(yōu)勢(shì):第一,工作效率高,填寫(xiě)紙質(zhì)表格,手寫(xiě)速度比不上電腦輸入(尤其是具備自動(dòng)輸入功能的軟件),對(duì)于大批量的入庫(kù)、領(lǐng)用等,差距更加凸顯,同時(shí)頻繁記錄增加了工作量,不利于基層班組減負(fù),而辦公信息化軟件可實(shí)現(xiàn)大批量的管理:第二,使用Excel表格或紙質(zhì)記錄本記錄,需要核對(duì)的內(nèi)容較多,尤其是對(duì)于目前的電能表來(lái)說(shuō),臺(tái)賬記錄點(diǎn)多,記錄起來(lái)較為繁瑣,若不一一核對(duì),容易發(fā)生遺漏或記錯(cuò)等。而使用二維碼技術(shù),既可做到快速識(shí)別,還能保證準(zhǔn)確率。
1系統(tǒng)設(shè)計(jì)架構(gòu)分析
本設(shè)計(jì)采用Python+Py0t5+s0Lite的系統(tǒng)架構(gòu),Python作為當(dāng)前流行的編程語(yǔ)言,具有豐富和強(qiáng)大的庫(kù),幾乎涵蓋了計(jì)算機(jī)技術(shù)的各個(gè)領(lǐng)域,具有良好的編程生態(tài),在圖像處理以及數(shù)字識(shí)別領(lǐng)域也發(fā)揮了其重要作用[1]。同時(shí),Python的特性讓它在處理數(shù)據(jù)時(shí)擁有開(kāi)發(fā)速度快、代碼量少、成本低的特點(diǎn),而且其豐富的數(shù)據(jù)處理包可以幫助人們方便地進(jìn)行數(shù)據(jù)處理。而對(duì)于這類(lèi)數(shù)據(jù)量不大的系統(tǒng),s0Lite數(shù)據(jù)庫(kù)的優(yōu)勢(shì)也較為突出,s0Lite是一個(gè)輕量級(jí)、嵌入式數(shù)據(jù)庫(kù),使用起來(lái)非常方便,不需要安裝,免費(fèi)使用。此外,為適應(yīng)目前辦公電腦多為windows系統(tǒng)的現(xiàn)狀,本次編譯環(huán)境采用windows操作系統(tǒng),編譯的軟件在其他電腦可直接運(yùn)行,無(wú)需安裝Python和數(shù)據(jù)庫(kù)。
2系統(tǒng)功能分析
本系統(tǒng)主要實(shí)現(xiàn)以下兩方面功能:
2.1基本功能
作為電能表的管理系統(tǒng),首先需具備基本功能,也就是對(duì)于電能表臺(tái)賬的增、查、刪、改功能。
2.2拓展功能
為提高日常管理效率,本系統(tǒng)結(jié)合二維碼進(jìn)行出入庫(kù)管理,當(dāng)前使用的電能表通常已做好資產(chǎn)編號(hào)及相應(yīng)的條形碼、二維碼,無(wú)需生成新的二維碼,管理起來(lái)更加方便快捷:
同時(shí),本系統(tǒng)也具備生成二維碼的功能,可結(jié)合標(biāo)簽機(jī)打印出二維碼。
3系統(tǒng)功能設(shè)計(jì)
為達(dá)到便于維護(hù)、便于操作的目的,提高使用效率,本系統(tǒng)采用模塊化的架構(gòu)設(shè)計(jì),主要包括電能表庫(kù)存臺(tái)賬管理模塊、人員登錄和信息校驗(yàn)?zāi)K、庫(kù)存查詢(xún)模塊、庫(kù)存修改模塊、出庫(kù)入庫(kù)模塊、二維碼生成模塊,如圖1所示。
31庫(kù)存臺(tái)賬管理模塊
具備庫(kù)存的電能表臺(tái)賬管理功能,直觀(guān)展示了庫(kù)存中的電能表的廠(chǎng)商、型號(hào)、資產(chǎn)編碼、在倉(cāng)庫(kù)中的位置、入庫(kù)時(shí)間等信息。
3.2人員登錄和信息校驗(yàn)?zāi)K
本系統(tǒng)采用普通登錄和權(quán)限校驗(yàn)兩種不同登錄方式,為提高備品的入庫(kù)、出庫(kù)效率,在進(jìn)行電能表出庫(kù)、入庫(kù)時(shí),無(wú)需輸入密碼,只需在登錄位置選擇登錄的人員即可,此處通過(guò)Py0t5中的combox下拉按鈕實(shí)現(xiàn)人員選擇,在Python中調(diào)用combox函數(shù)來(lái)進(jìn)行人員選擇;如需要修改庫(kù)存數(shù)據(jù),則需校驗(yàn)登錄人的密碼權(quán)限,目的在于防止維護(hù)人員在操作過(guò)程中誤修改數(shù)據(jù)。設(shè)計(jì)login.py模塊來(lái)實(shí)現(xiàn)登錄窗口,當(dāng)需修改庫(kù)存信息時(shí),調(diào)用login.py模塊,驗(yàn)證賬號(hào)和密碼正確后實(shí)現(xiàn)人員登錄修改。
3.3庫(kù)存查詢(xún)模塊
設(shè)計(jì)select函數(shù),先讀取信息框的輸入數(shù)據(jù),然后連接s0Lite數(shù)據(jù)庫(kù),通過(guò)搜索數(shù)據(jù)庫(kù)的庫(kù)存數(shù)據(jù)表,篩選出符合的數(shù)據(jù)并顯示到窗口,同時(shí)具備模糊查詢(xún)和精確查詢(xún)功能,輸入關(guān)鍵字后能快速篩選相關(guān)信息,快速定位。
3.4庫(kù)存修改模塊
實(shí)現(xiàn)庫(kù)存信息修改、清空庫(kù)存、清空出庫(kù)記錄等功能,需要驗(yàn)證管理員密碼才能操作。通過(guò)精確搜索庫(kù)存數(shù)據(jù)表中的數(shù)據(jù)與輸入數(shù)據(jù)匹配,刪除相應(yīng)行的數(shù)據(jù),并顯示剩余庫(kù)存,清空庫(kù)存和清空出庫(kù)記錄分別設(shè)計(jì)clearin和clearo一t函數(shù)模塊實(shí)現(xiàn)。
35出庫(kù)入庫(kù)模塊
電能表入庫(kù)方面,設(shè)計(jì)insert函數(shù),連接s0Lite數(shù)據(jù)庫(kù),將輸入的數(shù)據(jù)先寫(xiě)入庫(kù)存數(shù)據(jù)表中,再調(diào)用shouwb函數(shù)輸出到圖形界面;出庫(kù)方面,設(shè)計(jì)welete函數(shù),先根據(jù)輸入數(shù)據(jù)讀取庫(kù)存數(shù)據(jù)表中的數(shù)據(jù),將其寫(xiě)入出庫(kù)數(shù)據(jù)表中,然后將庫(kù)存數(shù)據(jù)表中的數(shù)據(jù)刪除,再調(diào)用shouwbd函數(shù)輸入到出庫(kù)記錄圖形界面。
3.6二維碼生成模塊
在Python中導(dǎo)入02cowe和Pil模塊,先通過(guò)無(wú)線(xiàn)掃碼器讀取設(shè)備編碼信息,然后通過(guò)maRe函數(shù)生成二維碼,再調(diào)用save函數(shù)保存二維碼的png格式圖片到當(dāng)前目錄,將電腦連接到標(biāo)簽打印機(jī)上,直接打印出二維碼,粘貼到電能表上即可。
4系統(tǒng)應(yīng)用
4.1入庫(kù)、查詢(xún)管理
事先規(guī)劃好倉(cāng)庫(kù)中電能表所存放的位置,在圖形入庫(kù)界面上輸入電能表的廠(chǎng)商、型號(hào)、位置、設(shè)備資產(chǎn)編號(hào)(也可通過(guò)掃碼器掃碼實(shí)現(xiàn)快速輸入),在人員登錄出選擇當(dāng)前操作人員,點(diǎn)擊入庫(kù)即可實(shí)現(xiàn)入庫(kù),同時(shí)自動(dòng)記錄當(dāng)前時(shí)間生成入庫(kù)時(shí)間。在數(shù)據(jù)查詢(xún)出輸入電能表型號(hào)關(guān)鍵字,可通過(guò)關(guān)鍵字模糊查詢(xún)篩選出相關(guān)電能表,可直接看到位置、資產(chǎn)編號(hào)等全部信息。
4.2數(shù)據(jù)修改
點(diǎn)擊數(shù)據(jù)修改界面,輸入準(zhǔn)備刪除的電能表編號(hào),彈出權(quán)限驗(yàn)證框,驗(yàn)證管理員賬號(hào)密碼正確后即可刪除。
4.3出庫(kù)管理
(1)普通出庫(kù)模式:輸入電能表的設(shè)備資產(chǎn)編號(hào)點(diǎn)擊出庫(kù)即可。
(d)快速出庫(kù)模式:點(diǎn)擊出庫(kù)輸入框,使用無(wú)線(xiàn)掃碼器進(jìn)行掃碼即可自動(dòng)出庫(kù),且無(wú)需操作可連續(xù)掃碼,實(shí)現(xiàn)快速大批量出庫(kù)。
5結(jié)語(yǔ)
在辦公信息化的大趨勢(shì)下,供電所基層班組人員自主研發(fā)了基于Python的計(jì)量電能表管理系統(tǒng),結(jié)合二維碼讀寫(xiě)技術(shù),實(shí)現(xiàn)電能表倉(cāng)儲(chǔ)的信息化管理,為維護(hù)人員節(jié)省了大量時(shí)間,提高了工作效率。相對(duì)于依靠第三方軟件,自主設(shè)計(jì)的軟件不僅節(jié)省費(fèi)用,且在維護(hù)上和功能調(diào)整上更加靈活、方便;同時(shí),基于Python語(yǔ)言的簡(jiǎn)潔性和面向?qū)ο筇匦?本系統(tǒng)經(jīng)過(guò)簡(jiǎn)單改動(dòng)即可應(yīng)用到其他辦公場(chǎng)合,可見(jiàn),本設(shè)計(jì)也是對(duì)于使用Python語(yǔ)言實(shí)現(xiàn)辦公信息化的一次探索。