国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

基于Qt/C++智能化配網(wǎng)設(shè)備命名管理系統(tǒng)設(shè)計

2021-03-02 09:40:24方志輝任存杰崔立卿房旭雪
江西電力 2021年2期
關(guān)鍵詞:命名按鈕配電網(wǎng)

方志輝,任存杰,崔立卿,方 馳,房旭雪

(國網(wǎng)浙江省電力公司岱山縣供電公司,浙江岱山316200)

0 引言

隨著“物聯(lián)網(wǎng)+”發(fā)展模式的不斷推進(jìn),人工智能技術(shù)的逐日普及,配網(wǎng)運行管理正在由人工粗放管理模式逐漸向人機協(xié)同智能管理模式轉(zhuǎn)變。微電網(wǎng)、分布式電源以及各類電力設(shè)備的不斷接入,使配電網(wǎng)設(shè)備管理變得更加復(fù)雜,故設(shè)備基礎(chǔ)臺賬直接影響著智能電網(wǎng)建設(shè)的安全。

為適應(yīng)配電網(wǎng)發(fā)展,規(guī)范統(tǒng)一配電網(wǎng)設(shè)備命名,確保電網(wǎng)安全運行,提高配電網(wǎng)調(diào)度運行管理水平[1],公司發(fā)布了《國網(wǎng)浙江省電力公司配電網(wǎng)設(shè)備調(diào)度命名規(guī)范》。而在制度落地執(zhí)行中,發(fā)現(xiàn)在大量設(shè)備的投運和退役,命名不斷更新變化中,人工記錄經(jīng)常會造成各類紕漏等問題。加之近幾年來公司通過安裝小電流接地故障報警裝置、三遙開關(guān),改造配網(wǎng)自動化等措施來提升配電網(wǎng)供電可靠性。系統(tǒng)高度集合和智能化大幅度減輕了人工操作的壓力,但對系統(tǒng)基礎(chǔ)臺賬的管理提出了更高要求,必須確保地區(qū)內(nèi)配網(wǎng)設(shè)備不重名。

現(xiàn)新設(shè)備申報流程無系統(tǒng)保障,無良好的閉環(huán)環(huán)節(jié),導(dǎo)致設(shè)備重命名、不規(guī)范及現(xiàn)場設(shè)備與系統(tǒng)命名不一致等情況時有發(fā)生,臺賬由各部門各自人工存檔,易丟失,難追溯命名源頭,給設(shè)備管理帶來很大不便。

再則,合理安排電力設(shè)備檢修是保障電網(wǎng)安全穩(wěn)定運行的關(guān)鍵所在,可將檢修成本降至最低[2],目前雖推行了設(shè)備全壽命周期管理制度,但缺乏自動預(yù)警功能。

本系統(tǒng)已申請了一項計算機軟件著作權(quán)及兩項外觀專利,通過對設(shè)備命名的建檔管理,既做到了對配網(wǎng)設(shè)備命名的統(tǒng)一管理、解決命名重復(fù)性問題,還加入了設(shè)備壽命告警等功能,為配網(wǎng)自動化系統(tǒng)以及AI智慧調(diào)度系統(tǒng)的應(yīng)用提供了有力基礎(chǔ)。

1 配網(wǎng)設(shè)備命名管理系統(tǒng)設(shè)計

1.1 配網(wǎng)設(shè)備命名流程

改進(jìn)現(xiàn)有設(shè)備命名流程,實現(xiàn)設(shè)備命名閉環(huán)管理。新設(shè)備命名申請人根據(jù)相關(guān)資料上報設(shè)備建議命名,運行單位主管及調(diào)度部門對該命名進(jìn)行層層審核,經(jīng)確認(rèn)無誤后,正式下發(fā)設(shè)備命名文件。新設(shè)備正式投運時,由現(xiàn)場人員拍攝完現(xiàn)場命名牌并上傳信息,系統(tǒng)自動進(jìn)行數(shù)據(jù)核對,完成設(shè)備命名閉環(huán)管理,如圖1所示。

圖1 設(shè)備命名流程圖

如小白膠支線C0467開關(guān)需投運,經(jīng)上述流程發(fā)文后,在投運當(dāng)日,運行人員拍攝完現(xiàn)場命名牌,由客戶端上傳圖片,系統(tǒng)自動將圖片設(shè)備名稱與數(shù)據(jù)庫內(nèi)設(shè)備名稱進(jìn)行核對,如不一致彈出“錯誤對話框”,提示“現(xiàn)場設(shè)備命名與發(fā)文設(shè)備命名不一致!請核對現(xiàn)場命名牌正確性!”,如一致,則自動填報該設(shè)備的投運日期,如圖2所示。

圖2 現(xiàn)場設(shè)備命名核對圖

1.2 開發(fā)工具簡介

本系統(tǒng)是利用QT Creator和SQlite數(shù)據(jù)庫開發(fā)的一款應(yīng)用程序[3]。

QT Creator是一款輕量級集成開發(fā)環(huán)境,能使開發(fā)人員能夠利用Qt這個應(yīng)用程序框架更加快速及輕易的完成開發(fā)任務(wù),具有優(yōu)良的跨平臺特性、良好封裝機制、豐富的API、支持2D/3D圖形渲染,支持OpenGL和擁有大量的開發(fā)文檔等優(yōu)勢。

SQLite是一款輕型的嵌入式數(shù)據(jù)庫,是遵守ACID的關(guān)系型數(shù)據(jù)庫管理系統(tǒng),它包含在一個相對小的C庫中,占用資源非常低,能夠支持Windows/Linux/Unix等主流的操作系統(tǒng),并能跟很多程序語言相結(jié)。

2 設(shè)備命名管理系統(tǒng)簡介

登錄系統(tǒng)后,主界面對6大類設(shè)備進(jìn)行命名、退役管理維護(hù),分別為開關(guān)、熔斷器、刀閘、環(huán)網(wǎng)單元、開關(guān)站、配電室;用戶設(shè)置項可以切換登錄用戶;幫助文檔可以查看系統(tǒng)使用方法、版本號等相關(guān)信息。單擊設(shè)備管理樹的任一設(shè)備,看到該設(shè)備的基礎(chǔ)信息、管理信息圖,見圖2。

2.1 設(shè)備編號查重功能

設(shè)備編號查重功能是本系統(tǒng)特色之一。一是通過導(dǎo)入歷史數(shù)據(jù),系統(tǒng)將自動識別是否存在設(shè)備重復(fù)命名的情況,如有,則將列出所有重復(fù)命名或編號的設(shè)備信息。二是新錄入設(shè)備,當(dāng)客戶端輸入用戶自定義編號時,系統(tǒng)將自動與已有數(shù)據(jù)庫內(nèi)的編號進(jìn)行校對,如發(fā)現(xiàn)重復(fù)命名,則會提示“該編號已被使用”,無法進(jìn)行信息錄入。三是可全面查看設(shè)備編號使用情況,紅色的代表已被使用,白色的代表未使用。運行單位可以直接從中選擇需要的編號(實現(xiàn)某一個開關(guān)站、環(huán)網(wǎng)單元或一片區(qū)域內(nèi)設(shè)備保持編號連續(xù)性),如圖3所示。

圖3 編號查重及選擇圖

2.2 設(shè)備使用年限預(yù)警功能

電力設(shè)備在整個使用壽命周期內(nèi)呈浴盆曲線[4]。該曲線是設(shè)備在運行壽命時間內(nèi),故障發(fā)展的規(guī)律,表現(xiàn)了故障率變化的三個階段:早期故障期,偶然故障期,嚴(yán)重故障期。它是以使用時間為橫坐標(biāo),以失效率為縱坐標(biāo)的一條曲線。據(jù)調(diào)查設(shè)備運行狀態(tài)發(fā)現(xiàn)早期故障失效時間比較短,例如油開關(guān)五年內(nèi)設(shè)備運行良好,6~8年開始腐蝕、機械指示故障、開關(guān)拉不開等情況開始出現(xiàn),大于9年,開關(guān)基本無法使用、屬于危急,通過綠色、橙色、紅色分別表示設(shè)備壽命全過程的三個階段,系統(tǒng)將自動對橙色和紅色設(shè)備進(jìn)行預(yù)警提示,如圖4所示。

圖4 設(shè)備年限預(yù)警圖

運行單位根據(jù)設(shè)備預(yù)警合理安排設(shè)備檢修計劃,降低設(shè)備故障率,提高供電可靠性。

2.3 其他功能

除了上述功能外,還具有新增、修改、刪除和統(tǒng)計功能。對精益化配網(wǎng)業(yè)務(wù)起了支撐作用,每一項操作都應(yīng)事出有因,都能“追本溯源”。為相關(guān)部門統(tǒng)計新設(shè)備投運情況、設(shè)備狀態(tài)分析等提供統(tǒng)一數(shù)據(jù)來源。

3 設(shè)備命名管理系統(tǒng)技術(shù)分析

本系統(tǒng)基于Qt Creator環(huán)境下進(jìn)行發(fā)開,它提供了完善的窗口模板,QMainWindow具有有菜單欄、工具欄、按鈕、滾動條、框架等控件[5-6]。如圖5為系統(tǒng)開發(fā)調(diào)試時的界面。

圖5 系統(tǒng)開發(fā)調(diào)試界面圖

main()主函數(shù)實現(xiàn)系統(tǒng)初始化,用戶信息存儲,調(diào)用QDialog::LoginWindow(登錄界面)對話框,正確輸入用戶名及密碼,則login.exec()為0,退出登錄界面,顯示MainWindow(主界面)對象,它繼承QMainWindow類,最后等待各類事件發(fā)生。主函數(shù)代碼如下:

int main(int argc,char*argv[])

{ //設(shè)置程序崩潰處理回調(diào)函數(shù)

SetUnhandledExceptionFilter(exceptionFilter);

QApplication a(argc,argv);

SQLiteControl::instance();//初始化

UserInfo::instance();//用戶信息存儲實例

LoginWindow login;

if(!login.exec())return 0;

MainWindow w;

w.show();

return a.exec();

}

輸入用戶名及密碼錯誤,顯示錯誤信息對話框,在登錄按鈕的單擊信號槽添加代碼:

errordlg->setWinowTitle(“錯誤信息對話框”);

errordlg->showMessage(“請檢查用戶名或密碼!”);

MainWindow窗口是核心部分,完成創(chuàng)建界面頭部、左側(cè)菜單欄及右側(cè)頁面內(nèi)容三方面工作。

void loadSetting(); //從數(shù)據(jù)庫加載數(shù)據(jù)

void onUpdateSetting();//用戶變更刷新

1)界面頭部設(shè)計

調(diào)用 void initHeader()函數(shù),設(shè)置 QMenuBar、QTitleBar窗口部件,顯示窗體的菜單欄、標(biāo)題欄具體效果。

2)左側(cè)菜單欄設(shè)計

調(diào)用void initMenu()函數(shù),顯示設(shè)備管理樹下的開關(guān)、跌落式熔斷器、刀閘、環(huán)網(wǎng)單元、開關(guān)站、配電室6類設(shè)備,及用戶設(shè)置、幫助文檔。部分代碼如下:

QStringList listItem;

listItem.append(QStringLiteral("開關(guān)"));

listItem.append(QStringLiteral("熔斷器"));

listItem.append(QStringLiteral("刀閘"));

listItem.append(QStringLiteral("環(huán)網(wǎng)單元"));

listItem.append(QStringLiteral("開關(guān)站"));

listItem.append(QStringLiteral("配電室"));

listItem.append(QStringLiteral("用戶切換"));

listItem.append(QStringLiteral("幫助文檔"));

d->menu->setData(listItem);

3)右側(cè)頁面內(nèi)容設(shè)計

當(dāng)單擊左側(cè)菜單欄的選項按鈕,調(diào)用void init-Body()函數(shù),顯示右側(cè)頁面內(nèi)容,右上方四個功能按鈕指向一容器類:

QStringList names={QStringLiteral("新增"),QStringLiteral("修改"),QStringLiteral("刪除"),QStringLiteral("編號")};

并設(shè)置按鈕樣式、固定高度、圖標(biāo):

btn->setToolButtonStyle(Qt::ToolButtonTextBesideIcon);//設(shè)置按鈕樣式

btn->setFixedSize(100,35);//設(shè)置固定高度

btn->setIcon(QIcon(iconsNames[id]));//設(shè)置圖標(biāo)

右其余部分為自定義風(fēng)格表格模板:

StyledTableView::StyledTableView(QWidget*parent) :QTableView(parent)

該類用來顯示每一類設(shè)備的基礎(chǔ)信息。

4)信號與槽機制

信號與槽實現(xiàn)Qt組件對象之間的通信。當(dāng)某個事件發(fā)生之后,如按鈕檢測到被點擊,發(fā)出signal。如果有對象對此信號感興趣,就會使用connect函數(shù),將要處理的信號和自己的一個slot槽函數(shù)綁定,實現(xiàn)線程間的通信。系統(tǒng)中各按鈕與窗口均用到了信號與槽機制,實行互相切換。登錄界面,有一登錄按鈕QPushButton*login,被按下時,調(diào)用下面該按鈕的connect函數(shù):

connect(d->login,&QPushButton::clicked,this,&LoginWindow::check);

登錄界面的登錄按鈕發(fā)出信息,登錄界面接受到信息,調(diào)用槽函數(shù)LoginWindow::check,判斷賬號與密碼是否正確。

5)防程序崩潰機制

建立了防程序崩潰機制,在系統(tǒng)調(diào)試運行時,如遇突發(fā)情況導(dǎo)致程序奔潰,會彈出CrashDialog對話框,并執(zhí)行內(nèi)部函數(shù),關(guān)閉原程序,重新打開登錄界面,并發(fā)送導(dǎo)致程序奔潰的消息,根據(jù)收到的消息不斷改正完善系統(tǒng)。部分代碼如下:

QLabel*msg=new QLabel(this);

msg->setText(QStringLiteral("抱歉!應(yīng)用程序崩潰. 請點擊[奔潰文件路徑]并把文件發(fā)送給我們 以幫助我們找到錯誤 謝謝 "));

const QString email="***********@qq.com";

emailaddr->setText(QStringLiteral("聯(lián)系我們-電子郵件:")+email);

emailaddr->setAlignment(Qt::AlignCenter);

restartButton->setText(QStringLiteral("重啟"));

closeButton->setText(QStringLiteral("關(guān)閉"));

gotoButton->setText(QStringLiteral("奔潰文件路徑"));//重啟程序

void CrashDialog::restartApp()

{

qApp->closeAllWindows();Process::startDetached(qApp->applicationFilePath(),QStringList());

}

4 結(jié)語

本系統(tǒng)具有很強的實際應(yīng)用功能。2017年至2019年,岱山公司調(diào)度員累計發(fā)現(xiàn)重復(fù)命名及設(shè)備不規(guī)則30起。使用系統(tǒng)后,又發(fā)現(xiàn)歷史重復(fù)命名28起,避免了設(shè)備重復(fù)命名4起,設(shè)備命名編號不一致3起,有效避免了誤操作誤調(diào)度,大大提高配網(wǎng)安全性與可靠性。系統(tǒng)目前已經(jīng)集成了《國網(wǎng)浙江省電力公司配電網(wǎng)設(shè)備調(diào)度命名規(guī)范》,可實現(xiàn)該文件要求的功能,將人工執(zhí)行規(guī)范變?yōu)橛嬎銠C自動執(zhí)行規(guī)范,杜絕了人工記錄經(jīng)常會造成各類紕漏等問題。設(shè)備名稱與編號重復(fù)性、配網(wǎng)管理粗略的問題不僅在舟山市內(nèi)存在,其他省市也存在,尤其落后地區(qū),有的設(shè)備甚至還沒有編號及名稱,故具有推廣性。下一步將繼續(xù)開發(fā)一些實用功能,如改善目前純年限預(yù)警功能,結(jié)合開關(guān)承受負(fù)荷大小、地理環(huán)境、絕緣接地、開關(guān)操作次數(shù)及已使用時間,利用數(shù)據(jù)融合手段,自動設(shè)置安全與危險不同標(biāo)志,增強設(shè)備運維管理水平與電網(wǎng)安全性。

猜你喜歡
命名按鈕配電網(wǎng)
當(dāng)你面前有個按鈕
命名——助力有機化學(xué)的學(xué)習(xí)
配電網(wǎng)自動化的應(yīng)用與發(fā)展趨勢
有一種男人以“暖”命名
東方女性(2018年3期)2018-04-16 15:30:02
為一條河命名——在白河源
散文詩(2017年17期)2018-01-31 02:34:08
死循環(huán)
基于IEC61850的配電網(wǎng)數(shù)據(jù)傳輸保護(hù)機制
電測與儀表(2016年5期)2016-04-22 01:14:14
配電網(wǎng)不止一步的跨越
河南電力(2016年5期)2016-02-06 02:11:24
內(nèi)心不能碰的按鈕
基于CIM的配電網(wǎng)線損計算
汽车| 棋牌| 汝州市| 潞城市| 长岭县| 澎湖县| 页游| 贺州市| 六盘水市| 宝山区| 金昌市| 东乌珠穆沁旗| 灵武市| 抚州市| 噶尔县| 宁津县| 璧山县| 平安县| 温泉县| 锡林郭勒盟| 万载县| 五大连池市| 鄂州市| 章丘市| 长宁区| 张家川| 勐海县| 永兴县| 建始县| 临湘市| 江西省| 巍山| 蚌埠市| 都江堰市| 华安县| 玛曲县| 佳木斯市| 德阳市| 贡觉县| 拜城县| 常州市|