在科技飛速發展與智能用電系統的普及的大背景下,高性能高要求的電力參數系統的相關研究也備受關注。計算機技術與無線傳輸技術的發展,為由普通功能型電力參數向多功能,高精度,高可靠,可移植,無線抄表的電力參數監測系統的發展提供了充足的技術支持。電力參數采集技術不斷發展,朝著越來越智能,成本越來越低的方向發展。 本次項目,采用QT設計一個電力參數采集和控制系統。通過這次學習,專業技能和實驗技能,調試代碼能力得到有效鍛煉,不論對于知識系統的鞏固還是對以后走到未來崗位上都是起到很好的幫助作用。
- 使用Peacefail電力參數模塊(實訓將采用軟件模擬的方式來實現,不需要準備硬件)。
- 測量電路電壓,頻率,功率,電能等參數。
- 發送至使用由C++的QT creator編制的上位機程序進行數據的顯示。
該項目使用的Modbus協議最初由施耐德公司為其PLC制定的一種通訊協議。在本項目中,下位機采用軟件模擬的方式來代替Peacefail電力參數模塊來實現采集交流電路中的電力參數, 如電壓, 電流, 功率等, 并發送至使用由C++的QT creator編制的上位機程序進行數據的顯示。 (1)交流通讀盒介紹
圖1 交流通讀盒連接圖 1.物理層協議 - 物理層采用UART 轉TTL通信接口。
- 波特率為9600,8位數據位,1位停止位,無校驗。
2.應用層協議 應用層采用 Modbus-RTU 協議進行通信,目前只支持 Ox03(讀保持寄存器)、Ox04(讀輸入寄存器)、Ox06(寫單個寄存器)、0x41(校準)、0x42(電能清零)等功能碼。其中Ox41功能碼僅限于內部使用(地址只能是 OxF8),用作出廠校準和返廠維修等場合,在功能碼之后增加16位的密碼,密碼默認為0x3721。 從機的編址范圍為0x01~OxF7,地址0x00作為廣播地址,從機不需回復主機,地址OxF8 作為通用地址,該地址只能用在單從機的環境中,可以用作校準等操作。 3.讀取測量結果 主機讀取測量結果的命令格式為(共8個字節): 從機地址+Ox04+寄存器地址高字節+寄存器地址低字節+寄存器數量高字節+寄存器數量低字節+CRC校驗高字節+CRC校驗低字節。 從機回復如下的命令格式分為兩種: 正確回復:從機地址+Ox04+字節數+寄存器1數據高字節+寄存器1數據低字節+...+ CRC校驗高字節+CRC校驗低字節。 錯誤回復:從機地址+0x84+異常碼+CRC校驗高字節+CRC校驗低字節。 異常碼解讀如下(下同): ①Ox01,非法功能; ②Ox02,非法地址; ③Ox03,非法數據; ④0x04,從機錯誤。 表1 測 量 結 果 的 寄 存 器 排 布
表2 功 能 描 述 | | | | | | | | | | |
| | | | | | | | | | | | | | | | | |
| | | | |
| | | | |
| | | | 有功功率門限可進行設置,當實測的有功功率超過設定的門限時,置報警狀態。 | | | | | | 單相工頻電網電源經過阻容降壓給主電路供電,TTL輸出通訊接口與 主電路光耦隔離,為無源輸出,通訊時需要外部提供5V電源。 | | |
(2)Modbus協議介紹RS232,RS485通訊指的是兩個設備之間通過485或232串口連接,在串口信道上實現數據通訊,是一種硬件規范,并未為具體工業應用領域確定或規范數據的意義,是一種通用的底層硬件協議和簡單的軟件規范的結合。modbus指的是一種工業標準的數據對話協議,對于保持寄存器,輸入寄存器,輸出寄存器,線圈寄存器等不同的寄存器數值的讀寫,均定義了專門的指令和數據交換規范。 表3 兩 種 不 同 的 Modbus 模 式
表4 Modbus RTU 報 文 格 式
數據幀之間的時間間隔,防止粘包。在9600波特率下,約4ms。 Modbus是一個應用層協議,會根據你的環境是網絡還是串口,會有一個區分。 - 對于網絡,有Modbus-TCP和Modbus-UDP
- 對于串口,有Modbus-RTU和Modbus-ASCII
Modbus存儲區:MODBUS涉及到的控制器(或MODBUS 設備〉存儲區以OXXXX、1XXXX、3XXXX、4XXXX標識;
表5 Modbus 存 儲 區
讀取保存寄存器功能碼: 03H
表6 主 站 詢 問 報 文 格 式
主站詢問報文格式: 功能:讀從站保持寄存器4XXXX值。 注意:報文中寄存器起始地址00000對應設備中40001地址,其他順延。 本例:讀11H號從站保持寄存器值,起始地址=006BH=107,對應地址40108;寄存器數=0003;末地址=40108+3-1=40110; 因此,本詢問報文功能是:讀17 (11H)號從站3個保持寄存器40108—40110的值; 仔細分析任務要求,查閱相關技術資料。基于QT的電力參數采集系統,采用QT需要模擬下位機發送的信號,不然QT上位機沒有輸入量,因此需要串口調試軟件模擬下位機給上位機發送信號,需要虛擬串口來創造串口來進行連接。采用PZEM014-Master上位機作為我們設計的QT上位機對照,驗證本項目的可行性及準確性。當然設計中需要ModeBusRTU調試工具,支持系統的正常工作。同時,為了實現任務要求中的按鍵操作功能,必不可少的需要加入模擬按鍵、參數顯示面板。 經過設計分析,系統框圖成及上位機基本頁面如下圖所示:
 
圖2 系統框圖 圖3 上位機基本頁面 Qt Creator 為應用程序開發人員提供了一個跨平臺的完整集成開發環境(IDE),可以為多個臺式機、嵌入式和移動設備平臺(例如Android 和 iOS)創建應用程序。它可用于 Linux、macOS 和 Windows 操作系統。此外,用戶可以使用實驗性的 WebAssembly 插件以 Web 格式構建應用程序,然后在 Web 瀏覽器中運行它們。 Qt Creator 包括項目生成向導、高級的 C++ 代碼編輯器、瀏覽文件及類的工具、集成了 Qt Designer、圖形化的 GDB 調試前端,集成qmake 構建工具等。 圖4 Qt Creator 4.7.1 (Enterprise)軟件頁面
QtCreator 主要是為了幫助新 Qt 用戶更快速入門并運行項目,還可提高有經驗的 Qt 開發人員的工作效率。語法標識和代碼完成功能輸入時進行靜態代碼檢驗以及提示樣式上下文相關的幫助代碼折疊括號匹配和括號選擇模式高級編輯功能。集成了領先的版本控制軟件,包括Git、Perforce 和 Subversion開放式文件,無須知曉確切的名稱或位置搜索類和文件跨不同位置或文件沿用符號在頭文件和源文件,或在聲明和定義之間切換。集成了特定于 Qt 的功能,如信號與槽 (Signals & Slots)圖示調試器, 對 Qt 類結構可一目了然集成了 Qt Designer 可視化布局和格式構建器只需單擊一下就可生成和運行 Qt 項目。 - VirtualSerialPortDriverPro
允許將物理串行端口分成幾個虛擬通信端口(COM2、COM3、COM4等),在系統中作為硬件串行接口的精確拷貝出現。可連接多個虛擬COM端口到一個真實的物理端口。串行應用程序將同時接收來自所有連接的虛擬COM端口的數據。允許創建和管理復雜的串行端口束。由“in”端的COM端口接收,串行數據將被重定向到捆綁包的“外”側的每個COM端口,反之亦然。 適用范圍: 1、適用的嵌入式設備:可以將任何使用TCP/IP或UDP廣播方式傳輸數據的嵌入式設備虛擬成本機COM口。 - 虛擬串口互聯:一臺電腦用Server模式和Client模式運行2個VSPM虛擬串口軟件,可以實現虛擬串口互聯。
- 軟件調試及串口通訊模擬:利用各類擴展DLL插件,可以使VSPM模擬成一個串口設備,方便軟件調試。

圖5 Virtual Serial Port Driver Pro軟件頁面
串口調試工具,方便調試串口,可用于串口通訊,發送命令,接收信息,,波特率支持110~256000,可保存己接收數據文件,方便串口數據調試,sscom3.2可快速將所需要的串口調式完成。適合單片機編程時對RS232通訊測使用,功能包含三大項,快速發送串口指令,編輯指令列表,共享指令列表。 此外sscom3.2串口調試工具能支持所有物理的、虛擬的、USB轉的、藍牙的,從COM0到COMxxx任何串口號的端口,自動識別電腦里已經存在的串口,例如COM1、COM2、COM30、COM40,不存在的串口不顯示問題。 圖6 sscom32軟件頁面 利用Virtual Serial Port Driver Pro, 創建兩個互連虛擬串口:COM1和COM2;實現向com1發數據,com2能收到,實現向com2發數據,com1能收到。 圖7 創建虛擬串口 利用sscom3.2串口調試工模擬下位機傳輸給上位機數據,準備階段采用PZEM014-Master上位機,作為我們設計的QT上位機對照,方便驗證本項目的可行性及準確性。 打開sscom3.2作為下位機,配置COM1串口,波特率設置9600。 同時打開PZEM014-Master作為上位機,配置COM2串口,波特率設置9600。 
圖8 創建連接 sscom32作為下位機,模擬兩組數據傳輸,成功送。 PZEM014-Master作為上位機,成功接受數據,成功顯示電參數。 圖9 模擬傳輸
圖10 創建QT項目
ui界面各控制的objectName: - cboSerial
- lblSerialState
- btnOpenSerial
- lblVolt
- lblCircut
- lblFreq
- lblPower
圖11 設計項窗口 
圖12 核心代碼 此次功能調試首先要測試連接是否正常,然后需要調試QT上位機和sscom32作為下位機連接之后能否正常顯示。測試結束后用PZEM014-Master上位機,作為我們設計的QT上位機對照,方便驗證本項目的可行性及準確性。本次設計使用Peacefail電力參數模塊(本次實訓將采用軟件模擬的方式來實現,不需要準備硬件)來測量電路電壓,頻率,功率,電能等參數。該項目使用的Modbus協議最初由施耐德公司為其PLC制定的一種通訊協議。 
圖13 測試連接
- 測試QT上位機和sscom32下位機連接之后正常顯示。

圖14 測試顯示 - 用PZEM014-Master上位機,作為QT上位機對照,對照結果一致。

圖15 對照結果 系統測試得驗證只是系統功能基本實現,還需要進行更多得數據測試進行分析,驗證系統的穩定性如何, 這里我們模擬了9組數據。 表7 模 擬 數 據 組 F8 04 14 08 ED 00 00 00 00 00 00 00 00 00 00 00 00 01 F4 00 00 00 00 FC CD | F8 04 14 08 ED 01 00 00 00 01 00 00 00 00 00 00 00 01 2C 00 00 00 00 FC CD | F8 04 14 08 ED 05 00 00 00 05 00 00 00 00 00 00 00 03 E8 00 00 00 00 FC CD | F8 04 14 08 E8 00 00 00 00 00 00 00 00 00 00 00 00 01 F4 00 00 00 00 30 01 | F8 04 14 08 E8 01 00 00 00 01 00 00 00 00 00 00 00 01 2C 00 00 00 00 30 01 | F8 04 14 08 E8 05 00 00 00 05 00 00 00 00 00 00 00 03 E8 00 00 00 00 30 01 | F8 04 14 08 98 00 00 00 00 00 00 00 00 00 00 00 00 01 F4 00 00 00 00 FC CD | F8 04 14 08 98 01 00 00 00 01 00 00 00 00 00 00 00 01 2C 00 00 00 00 FC CD | F8 04 14 08 98 05 00 00 00 05 00 00 00 00 00 00 00 03 E8 00 00 00 00 FC CD |
模擬數組選擇說明: - 上位機發:F8 04 00 00 00 0A 64 64
- F8 04 為固定,從寄存器地址00開始,0A表示要接收10個寄存器,共20個字節,校驗碼為 64 64
- 下位機收:F8 04 14 08 ED 00 00 00 00 00 00 00 00 00 00 00 00 01 F4 00 00 00 00 FC CD
- F8 04 為固定,14表示要接收20個字節,不包括校驗碼,校驗碼為 FC CD
- 08 ED 表示電壓為228.5V
- 01 F4 表示頻率為50Hz
但是執行兩次就失敗,且上位機讀不出來數據
直連一切正常: - 上位機發:F8 04 00 00 00 0A 64 64
- 下位機收:F8 04 14 08 E8 00 00 00 00 00 00 00 00 00 00 00 00 01 F4 00 00 00 00 30 01
- 08 E8 表示電壓為228V
- 兩次發送時間間隔為:575~592ms
- 兩次接收時間間隔為:560~575ms
表8 模 擬 數 據 測 試 結 果
對以上表格內部的數據進行分析,可以發現模擬數字在都可以正常在上位機進行顯示,對模擬數據進行正確得處理后輸出相應得電參數顯示。通過模擬的分析與驗證,本次設計任務的要求全部可以成功實現,所以此次的基于QT的電力參數采集系統設計成功。 其次在這次中,下載了C++軟件,由老師帶領我們進行快速的復習C語言編程的重點知識點,在快速地進行系統的學習后,老師帶領下我們做了打印日歷的C++小項目,在學習過程中有問題時,認真和同學、老師討論交流。在正式進入項目前,我們下載了QT軟件,及涉及項目相關軟件。然后老師帶領我們進行系統的學習,知道軟件基本的功能菜單,會自己創建工程文件,把需要的庫函數組件放好地方,加入到工程之中使用。在快速地進行系統的學習后,老師帶領下我們做了mp3播放器小項目,深深的吸引力我對嵌入式的興趣。正式進入本項目的設計,我遇到問題總是會自己思考,找老師尋求幫助,只有通過親自動手操作,完成一個任務的設計制作。才知道其過程的艱巨,但是有苦也有樂,有付出也有收獲。發現自己不足之處的同時也收獲到很多有用的東西:對以前所學過的知識理解得不夠深刻,掌握得不夠牢固,雖然感覺理論上已經掌握,但在運用到實踐的過程中仍有意想不到的困惑,需要再去查找資料才得以解決。這也激發了我今后努力學習的斗志,我想這將對以后的學習產生比較深遠的影響。
以上圖文的Word格式文檔下載(內容和本網頁上的一模一樣,方便大家保存):
小惜設計51hei.doc
(2.37 MB, 下載次數: 27)
2022-5-12 20:53 上傳
點擊文件名下載附件
electricty.zip
(6.75 KB, 下載次數: 34)
2022-5-12 20:38 上傳
點擊文件名下載附件
|