背景介紹
這是一款采用Qt5編寫的用於生成故障模擬波形的軟件。生成的波形數據用於下發到終端機器生成對應的故障類型,用於培訓相關設備維護人員的故障排查技能。因此,在這款軟件中實現了故障方案管理、故障波形編輯下發、波形數據生成等基本功能。從拓撲結構來說,本軟件處於服務端,而其他下游的終端機器都屬於客戶端。這里的終端機器,實質是一個具備TCP通信能力的嵌入式芯片。服務端和客戶端都是通過TCP來是實現通信的,通信協議雙方協議好即可。每當需要新的波形數據時,客戶端發送特定指令到服務端,服務端接受指令從數據庫中提取相應的故障方案數據,下發到終端機。
軟件主要采用了Qt5來實現界面的設計與實現。實現數據庫存儲和網絡通信功能時,主要使用了network, sql模塊。另外,波形編輯的功能借鑒了Qt自帶的例子。數據存儲采用的是SQLite,這個是Qt自帶的驅動。UI和SQL的交互存在一定的復雜性,其他的數據通信都采用了XML格式來處理。
項目是幾年前實現的了,那個時候痴迷於Qt技術,在編碼的時候有很多東西也沒有注意。而且那個時候更青睞手寫UI,所以這個項目沒有任何一個UI文件,跟Qt Designer基本絕緣。現在想想,如果結合Qt Designer和QSS來寫,速度能快幾倍吧。
這兩天把項目采用CMake來重構了一下,如果要編譯項目的話,需要先用CMake生成VS工程。VS最好是2013或以上吧,Qt版本沒有什么特別的要求。
圖示
代碼庫及使用
https://github.com/csuft/QCircuitFaultEditor
騰訊雲社區聲明
我的博客即將搬運同步至騰訊雲+社區,邀請大家一同入駐:https://cloud.tencent.com/developer/support-plan