基于QT的地鐵司機模擬駕駛顯示單元的設(shè)計與實現(xiàn)
發(fā)布時間:2021-09-28 23:13
近年來,我國的城市軌道交通系統(tǒng)取得了很大的發(fā)展,尤以地鐵最為顯著。隨著各地大興地鐵建設(shè),人們對地鐵的熱情日漸高漲,司機駕駛顯示單元(Driver Display Unit,簡稱DDU)作為司機與地鐵TCMS系統(tǒng)交互的橋梁也越來越多地受到人們的關(guān)注,但是DDU的國產(chǎn)化率并不高,模擬地鐵司機駕駛的軟件也相對滯后,本文以此為背景,充分整合實驗室硬件設(shè)備,開發(fā)了地鐵司機模擬駕駛顯示單元,用于仿真地鐵牽引、制動和運行過程。本文首先對實驗室現(xiàn)有設(shè)備進行了整合,引入了嵌入式微處理器,基于STM32F407微處理器開發(fā)了模擬駕駛操控系統(tǒng),它是DDU軟件設(shè)計的基礎(chǔ),該系統(tǒng)具有牽引控制、制動控制、門控制、數(shù)據(jù)采集和發(fā)送等功能,能夠充分利用試驗平臺設(shè)備模擬地鐵司機操縱列車的牽引、制動和運行過程。依此為基點,本文重點開發(fā)了基于Qt軟件的地鐵司機模擬駕駛顯示單元,完成了主駕駛界面設(shè)計,能實時顯示當(dāng)前列車的運行時速、站點信息、距離信息、門控制信息、系統(tǒng)連接信息、車次信息、運行狀況信息等,還提供司機與列車交互接口;完成了串口通信系統(tǒng)設(shè)計,使DDU能夠與模擬駕駛操控系統(tǒng)無縫融合;還完成了乘客信息系統(tǒng)、消息日志系統(tǒng)的設(shè)...
【文章來源】:西南交通大學(xué)四川省 211工程院校 教育部直屬院校
【文章頁數(shù)】:85 頁
【學(xué)位級別】:碩士
【部分圖文】:
TCMS系統(tǒng)拓撲圖
西南交通大學(xué)碩士研究生學(xué)位論文第4頁第2章模擬駕駛DDU的總體設(shè)計和軟硬件基礎(chǔ)2.1模擬駕駛DDU與TCMS系統(tǒng)的關(guān)系司機駕駛顯示單元(DDU)是列車控制與監(jiān)視系統(tǒng)(TCMS)的重要組成部分,主要用于在列車的運行過程中顯示車輛狀態(tài)信息、故障信息和操作指示,同時完成行車數(shù)據(jù)的記錄。司機一方面通過監(jiān)視顯示單元,可以獲取列車的運行狀態(tài)信息,并以此作為判斷依據(jù)操控司機顯示單元,達到控制列車的目的。另外司機通過顯示單元也可以對列車的系統(tǒng)初始化、輔助功能等進行相關(guān)的設(shè)置。司機駕駛顯示單元,是司機與車輛溝通的橋梁,在保障列車安全運行方面具有重要的意義[20~23]。圖2-1TCMS系統(tǒng)拓撲圖如圖2-1所示,司機顯示單元是人與列車交互的窗口。一方面,列車的實時運行狀況信息通過DDU來進行展示;另一方面,地鐵司機駕駛員可以通過控制DDU來達到控制列車安全運行的目的。圖2-2地鐵運行中的司機顯示單元
西南交通大學(xué)碩士研究生學(xué)位論文第7頁調(diào)函數(shù)的機制,信號與槽的調(diào)用方式會更加穩(wěn)定[36~38]。當(dāng)信號函數(shù)(無需聲明)發(fā)射后,與它關(guān)聯(lián)的槽函數(shù)就會執(zhí)行。Qt4中信號與槽的連接具體形式為:connect(sender,SIGNAL(signal),receiver,SLOT(slot);這里的sender和receiver分別指發(fā)送者和接收者,signal和slot是函數(shù)名,可以帶參數(shù),但是參數(shù)類型需要匹配,格式舉例:signal(int),slot(int)。這是Qt4版本的信號與槽的機制,其存在固有的問題:1、沒有編譯期檢查。類型被處理成了字符串,只有等到程序運行的時候才會看有沒有警告信息;2、不能使用相容類型的參數(shù)。它只檢查是否類型的字符串一致,如果使用typedef重新命名的相同類型將不被Qt的信號與槽機制所承認,導(dǎo)致提示類型不匹配,運行時報錯。在Qt5中,Qt對信號與槽的機制進行了很大的優(yōu)化,使之更易使用。變化如下:1)支持程序編譯器檢查。在信號與槽函數(shù)參數(shù)不匹配的時候,可以直接提示語法問題。2)支持相容類型的自動轉(zhuǎn)換。解決了Qt4中實際上是的相同類型而不能轉(zhuǎn)換的問題。3)槽函數(shù)可以是任意函數(shù)。新的Qt5支持的槽函數(shù)包括類中任意的成員函數(shù)、靜態(tài)函數(shù),還支持C++11的Lambda表達式(即匿名內(nèi)部類函數(shù)),而不必像Qt4中必須對槽函數(shù)使用slots關(guān)鍵字修飾。4)支持限定修飾符。在Qt4中槽函數(shù)是不支持使用private修飾符修飾的,因為槽函數(shù)最終會被字符串連接處理,不含類型,而Qt5是支持修飾符修飾的,所有在類外部是無法通過獲取被private修飾的槽函數(shù)指針。Qt5中新的信號與槽的連接形式舉例如下:connect(sender,&Sender::valueUpdate,receiver,&Receiver::showValue);信號與插槽的連接關(guān)系如圖2-4所示。圖2-4信號與槽連接抽象圖
本文編號:3412718
【文章來源】:西南交通大學(xué)四川省 211工程院校 教育部直屬院校
【文章頁數(shù)】:85 頁
【學(xué)位級別】:碩士
【部分圖文】:
TCMS系統(tǒng)拓撲圖
西南交通大學(xué)碩士研究生學(xué)位論文第4頁第2章模擬駕駛DDU的總體設(shè)計和軟硬件基礎(chǔ)2.1模擬駕駛DDU與TCMS系統(tǒng)的關(guān)系司機駕駛顯示單元(DDU)是列車控制與監(jiān)視系統(tǒng)(TCMS)的重要組成部分,主要用于在列車的運行過程中顯示車輛狀態(tài)信息、故障信息和操作指示,同時完成行車數(shù)據(jù)的記錄。司機一方面通過監(jiān)視顯示單元,可以獲取列車的運行狀態(tài)信息,并以此作為判斷依據(jù)操控司機顯示單元,達到控制列車的目的。另外司機通過顯示單元也可以對列車的系統(tǒng)初始化、輔助功能等進行相關(guān)的設(shè)置。司機駕駛顯示單元,是司機與車輛溝通的橋梁,在保障列車安全運行方面具有重要的意義[20~23]。圖2-1TCMS系統(tǒng)拓撲圖如圖2-1所示,司機顯示單元是人與列車交互的窗口。一方面,列車的實時運行狀況信息通過DDU來進行展示;另一方面,地鐵司機駕駛員可以通過控制DDU來達到控制列車安全運行的目的。圖2-2地鐵運行中的司機顯示單元
西南交通大學(xué)碩士研究生學(xué)位論文第7頁調(diào)函數(shù)的機制,信號與槽的調(diào)用方式會更加穩(wěn)定[36~38]。當(dāng)信號函數(shù)(無需聲明)發(fā)射后,與它關(guān)聯(lián)的槽函數(shù)就會執(zhí)行。Qt4中信號與槽的連接具體形式為:connect(sender,SIGNAL(signal),receiver,SLOT(slot);這里的sender和receiver分別指發(fā)送者和接收者,signal和slot是函數(shù)名,可以帶參數(shù),但是參數(shù)類型需要匹配,格式舉例:signal(int),slot(int)。這是Qt4版本的信號與槽的機制,其存在固有的問題:1、沒有編譯期檢查。類型被處理成了字符串,只有等到程序運行的時候才會看有沒有警告信息;2、不能使用相容類型的參數(shù)。它只檢查是否類型的字符串一致,如果使用typedef重新命名的相同類型將不被Qt的信號與槽機制所承認,導(dǎo)致提示類型不匹配,運行時報錯。在Qt5中,Qt對信號與槽的機制進行了很大的優(yōu)化,使之更易使用。變化如下:1)支持程序編譯器檢查。在信號與槽函數(shù)參數(shù)不匹配的時候,可以直接提示語法問題。2)支持相容類型的自動轉(zhuǎn)換。解決了Qt4中實際上是的相同類型而不能轉(zhuǎn)換的問題。3)槽函數(shù)可以是任意函數(shù)。新的Qt5支持的槽函數(shù)包括類中任意的成員函數(shù)、靜態(tài)函數(shù),還支持C++11的Lambda表達式(即匿名內(nèi)部類函數(shù)),而不必像Qt4中必須對槽函數(shù)使用slots關(guān)鍵字修飾。4)支持限定修飾符。在Qt4中槽函數(shù)是不支持使用private修飾符修飾的,因為槽函數(shù)最終會被字符串連接處理,不含類型,而Qt5是支持修飾符修飾的,所有在類外部是無法通過獲取被private修飾的槽函數(shù)指針。Qt5中新的信號與槽的連接形式舉例如下:connect(sender,&Sender::valueUpdate,receiver,&Receiver::showValue);信號與插槽的連接關(guān)系如圖2-4所示。圖2-4信號與槽連接抽象圖
本文編號:3412718
本文鏈接:http://sikaile.net/kejilunwen/jiaotonggongchenglunwen/3412718.html
教材專著