亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        基于變量快速提取的顯示屏系統(tǒng)的設(shè)計(jì)及實(shí)現(xiàn)

        2020-07-10 15:52:24張雁勛王晉斌梁智勇
        軟件 2020年5期
        關(guān)鍵詞:牽引車(chē)數(shù)據(jù)流顯示屏

        趙 貝,張雁勛,王晉斌,梁智勇

        (中車(chē)大同電力機(jī)車(chē)有限公司,山西 大同 037038)

        0 引言

        電力蓄電池牽引車(chē)(以下簡(jiǎn)稱(chēng)牽引車(chē))是中車(chē)大同電力機(jī)車(chē)有限公司自主研發(fā),用于段內(nèi)調(diào)度地鐵列車(chē)[1]、牽引平板車(chē)運(yùn)輸貨物等,也可兼顧列車(chē)救援?,F(xiàn)階段機(jī)車(chē)顯示界面的設(shè)計(jì)還沒(méi)有一種較為快捷的導(dǎo)入數(shù)據(jù)流的方法,為實(shí)現(xiàn)顯示屏設(shè)計(jì)自主高效研發(fā),大同機(jī)車(chē)廠提出以牽引車(chē)為起點(diǎn),自主研發(fā)一套可快速導(dǎo)入變量的、完整的、可適用于所有車(chē)型的顯示屏系統(tǒng),為設(shè)計(jì)及售后提供便利。

        1 牽引車(chē)網(wǎng)絡(luò)功能概述

        TCMS(微機(jī)網(wǎng)絡(luò)控制系統(tǒng))包括DDU(司機(jī)顯示單元)、CCU(中央控制單元)、RIOM(遠(yuǎn)程輸入輸出模塊)、TCU(牽引控制單元)GW(網(wǎng)關(guān))等部分。車(chē)輛網(wǎng)采用MVB(多功能車(chē)輛)總線。

        其中,CCU完成MVB網(wǎng)絡(luò)總線管理功能。RIOM負(fù)責(zé)采集現(xiàn)場(chǎng)信息和數(shù)據(jù),同時(shí)驅(qū)動(dòng)相應(yīng)部件現(xiàn)場(chǎng)執(zhí)行。DDU位于牽引車(chē)司機(jī)室操作臺(tái),在車(chē)輛運(yùn)行過(guò)程中顯示車(chē)輛狀態(tài)信息、故障信息和操作提示,同時(shí)完成地鐵車(chē)輛的運(yùn)行控制。另外司機(jī)通過(guò) DDU也可對(duì)車(chē)輛進(jìn)行參數(shù)設(shè)置及功能測(cè)試。

        2 硬件介紹

        牽引車(chē)顯示屏采用兩臺(tái) 12.1英寸的 PIXY INC-91,INC-91支持XGA方案(1024*768像素)。INC-91是基于移動(dòng)微機(jī)的可視化系統(tǒng),主要應(yīng)用在惡劣的條件或戶(hù)外工業(yè)環(huán)境的移動(dòng)平臺(tái)上。INC-91提供兩種不同類(lèi)型的MVB接口: ESD(電氣短距離介質(zhì))和 EMD(電氣中距離介質(zhì)),接口通信存儲(chǔ)器大小為 256KBit*16,可作為一個(gè) 16bit的字的端口進(jìn)行存取。

        3 軟件的開(kāi)發(fā)及實(shí)現(xiàn)

        開(kāi)發(fā)環(huán)境:(1)界面框架:在 VMware Workstation虛擬機(jī)中,安裝fedora系統(tǒng),搭建QT開(kāi)發(fā)環(huán)境;(2)變量快速定義:SpringBoot后端開(kāi)發(fā)框架,Bootstrap web前端開(kāi)發(fā)框架。

        編譯環(huán)境:Oracle VM VirtualBox軟件在Windows環(huán)境下虛擬Linux Debian操作系統(tǒng)。將開(kāi)發(fā)好的程序放置到此虛擬機(jī)中進(jìn)行編譯,生成的可執(zhí)行文件即可在PIXY顯示屏中運(yùn)行。

        3.1 人機(jī)交互概述

        人機(jī)交互流程[2]如圖1所示。顯示屏上電后,系統(tǒng)讀取配置文件[3],判斷哪臺(tái)顯示屏為主屏,并讀取進(jìn)入某些頁(yè)面所需的密碼等數(shù)據(jù);實(shí)例主對(duì)話(huà)框,顯示主界面。系統(tǒng)可通過(guò)顯示屏底部按鍵進(jìn)入到二級(jí)界面。

        圖1 人機(jī)交互流程Fig.1 Human computer interaction process

        3.2 界面的實(shí)現(xiàn)

        (1)重寫(xiě)控件

        為方便各頁(yè)面調(diào)用,重寫(xiě)按鈕、柱狀圖等控件。例如,柱狀圖控件繼承自 QWidget,重繪刻度、數(shù)字文本及顏色顯示區(qū)域。

        (2)主對(duì)話(huà)框

        自定義主對(duì)話(huà)框,主對(duì)話(huà)框繼承自 QDialog,實(shí)現(xiàn)端口導(dǎo)入及數(shù)據(jù)的刷新。其中,消息映射宏OnUpdatePage可以使相應(yīng)界面響應(yīng)界面更新的消息,并調(diào)用函數(shù) OnUpdatePage(),實(shí)現(xiàn)實(shí)時(shí)刷新?tīng)恳?chē)所需要顯示的圖標(biāo)、數(shù)據(jù)、故障信息等。

        (3)頁(yè)面跳轉(zhuǎn)

        在程序中添加二級(jí)頁(yè)面,使用槽函數(shù)(slot)實(shí)現(xiàn)頁(yè)面的跳轉(zhuǎn)。

        (4)界面繪制

        添加各控件到界面,進(jìn)行合理布局。

        3.3 數(shù)據(jù)變量提取

        實(shí)現(xiàn)通信需同步端口數(shù)據(jù)變量(見(jiàn)圖1),而數(shù)據(jù)變量需先按一定格式定義,再一一初始化。變量定義強(qiáng)依賴(lài)于制定好的數(shù)據(jù)流 Excel文件,且工作量十分龐大。數(shù)據(jù)流文件定義了設(shè)備端口地址、偏移位、變量類(lèi)型、變量名等。不同機(jī)車(chē)的數(shù)據(jù)流內(nèi)容不盡相同。為提升開(kāi)發(fā)效率,提高顯示屏系統(tǒng)框架的通用性,提高程序中變量定義的準(zhǔn)確度,研究并開(kāi)發(fā)了一種快速數(shù)據(jù)流變量提取工具,主要結(jié)構(gòu)如圖2所示。

        圖2 快速數(shù)據(jù)流變量提取系統(tǒng)結(jié)構(gòu)Fig.2 Structure of variable extraction system for fast data flow

        (1)在利用框架插件 Bootstrap web[4]開(kāi)發(fā)的web界面上(即表示層)輸入所需參數(shù)(數(shù)據(jù)流文檔總頁(yè)數(shù)、所需提取變量所包含的頁(yè)面及數(shù)據(jù)流文件名等)。

        (2)利用Ajax[5]交互式網(wǎng)頁(yè)開(kāi)發(fā)技術(shù)將本機(jī)地址和參數(shù)傳給后臺(tái)controller控制層。

        (3)后臺(tái) controller控制層將封裝后的參數(shù)對(duì)象傳遞給service業(yè)務(wù)層進(jìn)行處理。

        (4)service業(yè)務(wù)層對(duì)提交的數(shù)據(jù)流文檔每個(gè)工作表的每一行進(jìn)行遍歷,分析計(jì)算后得到每行數(shù)據(jù)所映射的顯示屏程序所需變量,例如提取數(shù)據(jù)流文檔中所有的變量類(lèi)型和變量名,并對(duì)其賦初值。

        (5)導(dǎo)出顯示屏程序所需變量的文件(Excel),如圖3所示,初始化變量需要配置變量類(lèi)型、變量名及初始值。將所需行導(dǎo)入程序新建的變量類(lèi)中,即完成了對(duì)變量的初始化。

        圖3 提取初始化變量文件示意圖Fig.3 Schematic diagram of extracting initialization variable

        該工具在降低人工提取變量出錯(cuò)率的同時(shí),大大提高了顯示屏程序開(kāi)發(fā)效率,同時(shí)具有適用于所有車(chē)型的特點(diǎn)。

        3.4 MVB通信的實(shí)現(xiàn)

        車(chē)輛網(wǎng)采用 MVB總線,用于整個(gè)車(chē)輛網(wǎng)內(nèi)部的智能電子設(shè)備的互連,實(shí)現(xiàn)本車(chē)廂內(nèi)部的數(shù)據(jù)交換[6]。蓄電池車(chē)MVB總線采用EMD傳輸,最多可支持32個(gè)設(shè)備。

        通信線程的處理(如圖1)即DDU與其他設(shè)備的數(shù)據(jù)交互,需要調(diào)用MVB驅(qū)動(dòng)函數(shù)來(lái)實(shí)現(xiàn)。MVB通信基本流程如圖4所示。

        圖4 MVB通信流程圖Fig.4 MVB communication flow chart

        (1)MVB初始化

        在程序最開(kāi)始調(diào)用初始化函數(shù),自動(dòng)完成MVB設(shè)備開(kāi)啟、寄存器配置等工作。初始化完成后,會(huì)返回一個(gè)值,提示初始化狀態(tài)是否完成。

        (2)端口配置

        MVB初始化完成后,需在主程序Dialog類(lèi)的構(gòu)造函數(shù)程序中,按照MVB端口配置函數(shù)添加TCU、CCU等設(shè)備。mvb_AddPort()包括四個(gè)參數(shù):端口已配好的地址、端口類(lèi)型、源/宿端口及緩存區(qū)地址。

        (3)啟動(dòng)工作模式

        MVB設(shè)備工作狀態(tài)函數(shù) mvb_ChangeState()有三種狀態(tài):停止?fàn)顟B(tài)、配置狀態(tài)及工作狀態(tài)。此時(shí),修改MVB設(shè)備為工作狀態(tài)。

        (4)讀端口

        添加設(shè)備后,還需讀取端口的變量。mvb_GetPort()包括兩個(gè)參數(shù):端口地址及變量所在偏移位。下圖5中g(shù)etBool等函數(shù)是類(lèi)crrcMvb中根據(jù)讀端口函數(shù)及不同類(lèi)型變量重新定義的函數(shù),可用快速提取變量的方法,配置變量名、調(diào)用函數(shù)、變量所在端口等。或根據(jù)變量類(lèi)型轉(zhuǎn)換成對(duì)應(yīng)的調(diào)取變量函數(shù)等。

        圖5 提取端口變量文件示意圖Fig.5 Schematic diagram of extracting port variable

        (5)寫(xiě)端口

        DDU向其他設(shè)備發(fā)送數(shù)據(jù),則需調(diào)用寫(xiě)端口函數(shù)。mvb_PutPort()包括三個(gè)參數(shù):設(shè)備地址、變量偏移位及變量名。

        界面實(shí)時(shí)刷新線程和通信線程即保證了顯示界面數(shù)據(jù)的實(shí)時(shí)性。

        3.5 編譯

        程序完成后,需進(jìn)行編譯(主要指令為 qmake→make clean→make),最終生成PIXY屏幕可執(zhí)行文件。

        4 結(jié)語(yǔ)

        在Linux系統(tǒng)下采用QT軟件完成了電力蓄電池牽引車(chē)顯示屏設(shè)計(jì),實(shí)現(xiàn)了在車(chē)輛運(yùn)行過(guò)程中實(shí)時(shí)顯示車(chē)輛信息和操作提示。蓄電池牽引車(chē)現(xiàn)已投入應(yīng)用,良好穩(wěn)定的界面設(shè)計(jì)為工作人員提供了便利,同時(shí)也為售后提供了快速便捷保障;易移植的顯示屏框架及變量快速導(dǎo)入的方法,也為大同機(jī)車(chē)廠后續(xù)自主化顯示屏研究提供了基礎(chǔ)。

        猜你喜歡
        牽引車(chē)數(shù)據(jù)流顯示屏
        一塊布就是一個(gè)顯示屏?
        軍事文摘(2022年10期)2022-06-15 02:29:30
        基于靈敏度分析提升某重型牽引車(chē)車(chē)架剛度的研究
        汽車(chē)維修數(shù)據(jù)流基礎(chǔ)(下)
        蒼蠅迷戀顯示屏
        一種提高TCP與UDP數(shù)據(jù)流公平性的擁塞控制機(jī)制
        降低鐵水罐牽引車(chē)故障影響時(shí)間的研究與應(yīng)用
        未來(lái)五年LED顯示屏出貨將保持16%增長(zhǎng)
        某重型牽引車(chē)傳動(dòng)系匹配分析
        基于數(shù)據(jù)流聚類(lèi)的多目標(biāo)跟蹤算法
        基于AT89S52的手勢(shì)可控LED滾動(dòng)顯示屏設(shè)計(jì)
        国产成人综合在线视频| 日本一二三区免费在线| 插插射啊爱视频日a级| 久久少妇高潮免费观看| 亚洲国产精品国自产拍久久蜜av| 亚洲成人av在线第一页| 潮喷失禁大喷水aⅴ无码| 品色永久免费| 亚洲色偷拍一区二区三区| 中文字幕中文字幕人妻黑丝| 亚洲一区第二区三区四区| 国产激情一区二区三区| 午夜成人理论无码电影在线播放| 中文字幕久久久人妻无码| 色婷婷亚洲一区二区在线| 最新中文字幕日韩精品| 成人无码av一区二区| 亚洲色欲色欲www在线播放| 18禁美女裸体网站无遮挡| 久久精品国产成人午夜福利| 久久成人精品国产免费网站| 亚洲视频在线观看第一页| 无码精品人妻一区二区三区漫画 | 亚洲av无码成人精品区天堂| 久久一区av蜜桃人妻| 免费看男女啪啪的视频网站| 亚洲国产中文字幕一区| 日韩精品久久无码中文字幕| 色爱区综合五月激情| 激情五月婷婷久久综合| 亚州中文热码在线视频| 成熟丰满熟妇av无码区| 国产麻传媒精品国产av| 亚洲啪啪综合av一区| 国产一起色一起爱| 日本国产一区二区在线观看| 色综合久久久久综合体桃花网 | 久久亚洲精品无码va大香大香| 久久久久久人妻一区精品| 人日本中文字幕免费精品| 久久精品国产亚洲av麻豆长发|