【飛凌嵌入式 RK3399-C 開發(fā)板試用體驗】(使用QT編寫組態(tài)控件)

原創(chuàng) 2020-09-30 09:38:00 RK3399 RK3399開發(fā)板


作者:fcb5511


幾年前基于stm32平臺做過一套簡單的組態(tài)程序,基本上能滿足公司項目的需求,但是對于一些復(fù)雜的功能需求,這套軟硬件就顯得愛莫能助了,并且stm32是在全裸機的條件下開發(fā),整套工程導(dǎo)出需要借助上位機開發(fā)的界面編輯軟件通過USB讀寫,很是麻煩。一個看似簡單的控件繪圖,可能需要編寫大量的程序。一直想著嘗試在QT環(huán)境下來做一套功能升級的替代。直到看到這款OK3399-C,不管是硬件資源還是性能,都很合適。大致羅列一下我想到的一些基礎(chǔ)控件:


1、 按鍵(分普通按鍵和帶狀態(tài)鎖的)

2、 動態(tài)數(shù)據(jù)顯示控件

3、 靜態(tài)文本顯示控件

4、 儀表

5、 柱狀圖

6、 曲線圖

7、 狀態(tài)顯示

8、 表格

9、 腳本執(zhí)行器

10、…


本次時間有限,先實現(xiàn)了三個控件的顯示:1、兩態(tài)按鍵(能綁定圖片和報警信號,區(qū)分點擊狀態(tài),釋放狀態(tài)和報警狀態(tài))2、儀表(能設(shè)置儀表盤的角度區(qū)間和量程區(qū)間,表盤顏色,指針顏色等)3、曲線圖,能設(shè)置圖標(biāo)顏色,曲線顏色,X軸測量周期和Y軸測量值范圍等。
按鍵和儀表均通過QPainter實現(xiàn),曲線圖表初次嘗試使用QT的可視化視圖實現(xiàn)(貌似做動態(tài)曲線不太方便,X軸刻度想做成自定義格式比較麻煩,先湊合用吧,后面再改),使用QT的可視化試圖需要安裝QtCharts包,OK3399-C提供的QT是不包含此包的。安裝QtCharts的方式如下

1、從github克隆源碼包
git clone https://github.com/qtproject/qtcharts.git

2、檢出版本分支
git checkout 5.7(一定要做這一步)

3、執(zhí)行qmake

4、執(zhí)行make

5、執(zhí)行安裝
make install

打開QtCreator
新建工程,ui界面類型選widget和mainwindow均可,名字隨意
QT工程中用Qtcharts需要對pro文件進行設(shè)置
添加 QT +=  chart


我的ui是mainwindow,尺寸選擇1024x600,在mainwindow窗體添加QLable作為所有控件的父控件。

按鍵,儀表,曲線圖控件分別以三個類的方式實現(xiàn),代碼結(jié)構(gòu)如下:


控件在窗體中的拖動通過捕獲鼠標(biāo)事件實現(xiàn),控件最終運行效果如下:


本次項目最終實現(xiàn)的三個控件功能只是組態(tài)功能中最基本的顯示,曲線圖的拖動效果還存在問題,后期功能開發(fā)還包括在頁面編輯中通過添加不同控件并編輯相關(guān)功能,保存數(shù)據(jù)庫或配置文件,這里暫定用json來存儲頁面的控件配置信息。至于數(shù)據(jù)交互,暫定使用RabbitMq和共享內(nèi)存的方式,通過RabbitMq可以將網(wǎng)絡(luò)中的數(shù)據(jù)匯集到本機,本機將原始數(shù)據(jù)幀解析寫入共享內(nèi)存,方便應(yīng)用程序的本地快速讀寫。


相關(guān)產(chǎn)品 >

  • FET3399-C核心板

    飛凌RK3399安卓高性能核心板采用 采用六核Rockchip RK3399芯片,雙Cortex-A72大核+四Cortex-A53小核結(jié)構(gòu),對整數(shù)、浮點、內(nèi)存等作了大幅優(yōu)化,在整體性能、功耗及核心面積三個方面提升。以下將對瑞芯微芯片RK3399參數(shù),RK3399核心板方案及其性能做具體介紹。如您對飛凌RK3399系列核心板有興趣,歡迎咨詢了解。

    了解詳情
    FET3399-C核心板
  • OK3399-C開發(fā)板

    飛凌嵌入式RK3399安卓開發(fā)板主芯片采用高性能六核CPU Rockchip RK3399,GPU采用Mail-T860四核 GPU,RK3399作為目RK產(chǎn)品線中低功耗、高性能的代表,可滿足人臉識別設(shè)備、機器人、無人機、IoT物聯(lián)網(wǎng)領(lǐng)域應(yīng)用。飛凌RK3399開發(fā)板在整體性能、功耗及核心面積做了大幅度優(yōu)化,更加滿足工業(yè)設(shè)計需求。飛凌RK3399開發(fā)板為進一步減少用戶二次開發(fā)難度,開放了底板原理圖,并提供了RK3399用戶手冊、芯片手冊,加上優(yōu)質(zhì)的技術(shù)服務(wù),讓您的方案從構(gòu)思到上市時間縮短。

    了解詳情
    OK3399-C開發(fā)板

推薦閱讀 換一批 換一批