国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

VISSIM-COM技術(shù)在有軌電車優(yōu)先控制中的應(yīng)用

2019-06-17 02:11
鐵道運(yùn)營技術(shù) 2019年2期
關(guān)鍵詞:電車交叉口路網(wǎng)

章 瑀

(中國鐵路上海局集團(tuán)有限公司杭州電務(wù)段,助理工程師,浙江 杭州 310009)

半獨(dú)立路權(quán)下的新型有軌電車與公路車輛共享交叉口,為提高電車的運(yùn)行效率,交叉口信號(hào)通常給予有軌電車一定的通行優(yōu)先權(quán)。在制定信號(hào)優(yōu)先控制策略時(shí),一般借助VISSIM等微觀交通仿真工具進(jìn)行交叉口的路網(wǎng)建模與通行效率評(píng)價(jià),進(jìn)而輔助運(yùn)營管理的決策。然而對(duì)于管理人員而言VISSIM 的建模過程較為復(fù)雜,當(dāng)各仿真輸入變量出現(xiàn)較大變化時(shí)需重新在軟件中修改并進(jìn)行仿真而不能快速獲取評(píng)價(jià)結(jié)果,因此有必要基于VISSIM 所提供的COM(Component Object Model,組件對(duì)象模型)接口進(jìn)行二次開發(fā),為運(yùn)管者提供方便操作的用戶界面及圖表化的評(píng)價(jià)數(shù)據(jù)顯示,使有軌電車的運(yùn)營管理更加高效。

1 VISSIM仿真的應(yīng)用

VISSIM作為常用的微觀交通仿真軟件,廣泛用于建模與分析各類交通信號(hào)、通道設(shè)置下的公共交通和城市交通運(yùn)行情況,因其底層包含的交通仿真模型都有嚴(yán)格的數(shù)學(xué)分析或邏輯流程為基礎(chǔ),保證了輸出的仿真評(píng)價(jià)結(jié)果對(duì)信號(hào)優(yōu)化及工程實(shí)施都具有一定借鑒意義[1]。

VISSIM 由交通仿真器與信號(hào)狀態(tài)產(chǎn)生器兩部分構(gòu)成,兩者之間通過內(nèi)部接口交換信號(hào)狀態(tài)與車輛運(yùn)行檢測數(shù)據(jù),見圖1。交通仿真器包含了各類車輛運(yùn)動(dòng)模型,如基于心理-生理駕駛行為的車輛跟馳模型,基于規(guī)則算法的車輛換道模型,基于泊松分布的車輛到達(dá)模型等。而信號(hào)狀態(tài)產(chǎn)生器則以一微小固定間隔(最小為0.1 s)從交通仿真器中提取車輛運(yùn)行檢測數(shù)據(jù),用于確定下一仿真秒的信號(hào)狀態(tài),同時(shí)將該信號(hào)狀態(tài)反饋給交通仿真器。

為實(shí)現(xiàn)有軌電車的信號(hào)優(yōu)先控制邏輯,可使用VISSIM 提供的外部信號(hào)狀態(tài)發(fā)生器VAP(Vehicle Actuated Programming,車輛感應(yīng)邏輯編程),該附加模塊提供了一個(gè)可編程的、基于信號(hào)相位及可感應(yīng)控制的仿真環(huán)境,在仿真過程中,通過設(shè)置于路段中的檢測器實(shí)時(shí)采集電車運(yùn)行數(shù)據(jù)并結(jié)合獲取到的信號(hào)顯示信息來實(shí)現(xiàn)電車信號(hào)的優(yōu)先控制。此外,通過VISSIM提供的COM接口還可對(duì)仿真中的模型參數(shù)進(jìn)行提取和修改,在此基礎(chǔ)上通過編程開發(fā)用戶界面,以便運(yùn)管人員更加靈活方便地進(jìn)行仿真輸入,獲取評(píng)價(jià)結(jié)果。

圖1 VISSIM的構(gòu)成及與COM接口的調(diào)用關(guān)系

2 有軌電車信號(hào)控制策略

目前有軌電車通過交叉口時(shí)的信號(hào)控制方案主要有固定周期配時(shí)控制、絕對(duì)優(yōu)先、相對(duì)優(yōu)先等。

固定周期配時(shí)即無優(yōu)先的信號(hào)控制方案,交叉口信號(hào)各相位以固定時(shí)間周期循環(huán)運(yùn)行,有軌電車運(yùn)行至交叉口時(shí)只能跟隨同一方向的車流一起放行,此方案投入最小,也不會(huì)對(duì)現(xiàn)有交通造成額外影響,有軌電車通行效率較低。

絕對(duì)優(yōu)先與相對(duì)優(yōu)先都是主動(dòng)優(yōu)先的信號(hào)控制策略[2]。在交叉口接近區(qū)段以及離去區(qū)段布設(shè)電車位置檢測器,根據(jù)對(duì)電車位置信息的檢測來實(shí)現(xiàn)交叉口信號(hào)的調(diào)整控制,給予電車通行優(yōu)先權(quán),具體的調(diào)整方法包括紅燈早斷、綠燈延長、插入相位等[3]。絕對(duì)優(yōu)先即無條件優(yōu)先,無論有軌電車接近交叉口時(shí)當(dāng)前信號(hào)是何種顯示,信號(hào)機(jī)在確保沖突相位關(guān)閉的情況下為其開放通過信號(hào),響應(yīng)優(yōu)先請(qǐng)求。相對(duì)優(yōu)先則在絕對(duì)優(yōu)先控制的基礎(chǔ)上增加了公路交通信號(hào)最小綠燈時(shí)長的判斷條件,保證了當(dāng)前正在放行的車流能得到最低程度的疏解,避免有軌電車的優(yōu)先給公路交通造成過多延誤與擁堵。

圖2 主動(dòng)優(yōu)先信號(hào)控制流程

圖2 描述了主動(dòng)優(yōu)先控制下的信號(hào)感應(yīng)控制與有軌電車行為之間的對(duì)應(yīng)聯(lián)系。當(dāng)有軌電車通過接近區(qū)段的檢測器1時(shí),有軌電車發(fā)出優(yōu)先通行請(qǐng)求,若此時(shí)交叉口信號(hào)機(jī)顯示的相位與電車通行方向非沖突,則不需做任何信號(hào)切換即可使電車通過交叉口;若當(dāng)前為沖突相位,相對(duì)優(yōu)先下還需要判斷此時(shí)交叉口信號(hào)相位是否已經(jīng)滿足了設(shè)置的最小綠燈時(shí)長,在滿足條件時(shí)再根據(jù)下一相位是否為沖突顯示,進(jìn)行紅燈的早斷或者插入可供有軌電車通過的相位,以允許電車駛?cè)虢徊婵趨^(qū)段。有軌電車經(jīng)過布置于交叉口出口處的檢測器2 時(shí),交叉口區(qū)段電車出清,此時(shí)根據(jù)是否已滿足當(dāng)前信號(hào)相位的規(guī)定顯示時(shí)間來決定是否切換至下一相位,至此一次主動(dòng)優(yōu)先下的信號(hào)控制流程結(jié)束。

在VISSIM中進(jìn)行絕對(duì)優(yōu)先、相對(duì)優(yōu)先等信號(hào)感應(yīng)邏輯控制的實(shí)現(xiàn)時(shí),可借助其提供的VisVAP 工具,利用繪制信號(hào)流程圖的方式并結(jié)合獲取到的檢測器狀態(tài)來實(shí)現(xiàn)所需的邏輯過程。提供邏輯控制函數(shù)的動(dòng)態(tài)鏈接庫vap216.dll、相位過渡轉(zhuǎn)換定義文件.pua 以及VisVAP 編譯生成的.vap 邏輯控制文件三者一同構(gòu)成并實(shí)現(xiàn)了VAP信號(hào)感應(yīng)控制。

3 VISSIM_COM接口的應(yīng)用開發(fā)

VISSIM 所 提 供 的VISSIM_COMSERVERLib 組件為連接外部的客戶端程序提供了新的方法,將VISSIM 作為服務(wù)器并通過COM 接口,使客戶端程序得以從VISSIM 中獲取仿真信息,并可向VISSIM傳輸仿真參數(shù)等控制指令,最終實(shí)現(xiàn)對(duì)VISSIM仿真過程的控制[4]。

本文將在微軟Visual StudioNET 環(huán)境下以C#語言實(shí)現(xiàn)客戶端的界面設(shè)計(jì)并完成COM 所提供接口方法的使用。在一個(gè)新工程中,通過添加引用的方式即可將VISSIM_COMSERVERLib 組件添加進(jìn)工程。圖3為VISSIM_COM 接口對(duì)象所包含的層次結(jié)構(gòu)[5],Vissim為根節(jié)點(diǎn),其他所有對(duì)象都由其派生而來,如Net(路網(wǎng))、Simulation(仿真)、Evaluation(評(píng)價(jià))等,Net 節(jié)點(diǎn)下還包括了構(gòu)成交通路網(wǎng)的其他要素,如Links(路段集合)、VehicleInputs(車輛輸入集合)等,每一集合都可索引至具體的已建模對(duì)象,COM提供了若干方法可對(duì)每一對(duì)象進(jìn)行特定操作。

圖3 VISSIM_COM接口節(jié)點(diǎn)層次

3.1 需求分析

1)交叉口線位類型是制約有軌電車通行效率的因素之一,根據(jù)不同的線位類型進(jìn)行建模分析也是VISSIM仿真的基礎(chǔ),故在客戶端操作流程的起始需要對(duì)線位類型進(jìn)行選擇,常見的有軌電車線位布置有路中直行式、路側(cè)直行式、路中轉(zhuǎn)彎式、路中轉(zhuǎn)路側(cè)等。

2)不同的信號(hào)控制策略適用不同的流量背景,故客戶端中用戶應(yīng)根據(jù)實(shí)際調(diào)查得到的交通流量及流量組成進(jìn)行自定義的輸入。

3)固定周期配時(shí)信號(hào)下包含了各相位的綠燈時(shí)長,主動(dòng)優(yōu)先感應(yīng)控制下包含了各相位的最小綠燈時(shí)長,客戶端提供對(duì)信號(hào)控制參數(shù)的設(shè)置,并提供信號(hào)控制策略的選擇。

4)有軌電車的發(fā)車時(shí)刻、發(fā)車頻率的合理性也是VISSIM仿真評(píng)價(jià)的應(yīng)用之一,客戶端提供電車發(fā)車時(shí)刻的自定義編輯。

5)此外為便于用戶可以觀察到仿真的運(yùn)行過程,還提供仿真速度,仿真周期的選擇,對(duì)仿真得到的評(píng)價(jià)結(jié)果進(jìn)行圖表化的展示,得到行程時(shí)間、延誤時(shí)間、車輛排隊(duì)長度這三方面的評(píng)價(jià)數(shù)據(jù)并提供仿真信息的匯總打印功能。

3.2 詳細(xì)設(shè)計(jì)

1)加載既有路網(wǎng)工程文件。加載路網(wǎng)的前提是設(shè)計(jì)人員已對(duì)典型的交叉口路網(wǎng)進(jìn)行了建模,對(duì)主動(dòng)優(yōu)先的信號(hào)控制邏輯進(jìn)行了實(shí)現(xiàn)并對(duì)VISSIM 仿真底層模型的參數(shù)進(jìn)行了初步校核,得到了一個(gè)較完善可靠的仿真工程。

作為VISSIM-COM 接口調(diào)用層次的根節(jié)點(diǎn),Vissim類所提供的方法是其他路網(wǎng)元素得以定義的基礎(chǔ)。如:

Vissim v-tram=new Vissim();//定 義 一 個(gè)Vissim類對(duì)象

v-tram.LoadNet(“tramcross.inp”);//使用Vissim類的方法加載路網(wǎng)文件

v-tram.LoadLayout(“tramcross.ini”);//加 載 路 網(wǎng)配置文件

調(diào)用成功即會(huì)打開VISSIM軟件,并在窗口中加載指定的路網(wǎng)文件及配置。對(duì)于調(diào)用過程中的異常,COM 通過返回HRESUTs 來報(bào)告錯(cuò)誤信息,可在客戶端中對(duì)拋出的這些異常進(jìn)行彈窗提示。

2)設(shè)置仿真輸入?yún)⒘?。用戶可以根?jù)電車沿線實(shí)際調(diào)查所得的交通量,對(duì)交叉口的車流量、路口轉(zhuǎn)向比、車型組成進(jìn)行輸入。以設(shè)置某一路口的車流量為例:

Net nt=v-tram.Net;//通過根節(jié)點(diǎn)構(gòu)建Net路網(wǎng)類

VehicleInputs.vehinputs=nt.VehicleInputs;//通 過Net類獲取仿真中車輛輸入集合

VehicleInput.vehinp1=vehinputs.GetVehicleInputByNumber(1);//根據(jù)索引號(hào)從集合中獲取一條

輸入記錄

vehinp1.set_AttValue("VOLUME",Convert.

ToDouble(w_input.Text));//將客戶端的輸入數(shù)據(jù)添加至該記錄的“流量”屬性中,見圖4。

圖4 車流量的設(shè)置實(shí)現(xiàn)過程

對(duì)于固定周期配時(shí)下的信號(hào)參量設(shè)置,也采取類似方法。 由根節(jié)點(diǎn)不斷向下遍歷直至SignalGroup(單一信號(hào)燈組),通過set-AttValue方法將客戶端獲取的數(shù)據(jù)添加入VISSIM 仿真的參數(shù)中。對(duì)于主動(dòng)優(yōu)先下的信號(hào)控制,由于COM未提供可讀寫的接口方法,可將客戶端獲取到的最小綠燈時(shí)間等參量通過文本的方式直接寫入工程文件的指定字段中。

3)設(shè)置發(fā)車時(shí)刻及仿真控制。客戶端中以表格的形式供用戶輸入電車的發(fā)車時(shí)刻,對(duì)上下行分別定義兩個(gè)List(隊(duì)列)用于存放用戶的輸入數(shù)據(jù)。當(dāng)運(yùn)行仿真時(shí),程序以仿真時(shí)間為上限循環(huán)調(diào)用COM提供的單步仿真函數(shù)RunSingleStep(),當(dāng)循環(huán)至用戶自定義的時(shí)刻時(shí),上行或下行線路即發(fā)送一輛電車AddVehicleToTransitLine()。

循環(huán)完成即代表仿真結(jié)束,使用根節(jié)點(diǎn)的Exit()方法退出VISSIM程序,同時(shí)刪除已創(chuàng)建的對(duì)象實(shí)例。

4)評(píng)價(jià)數(shù)據(jù)的圖表化顯示。仿真結(jié)束,評(píng)價(jià)的原始數(shù)據(jù)主要以文本形式進(jìn)行存儲(chǔ),可使用.NET中File 類的相關(guān)方法進(jìn)行文本文件的信息處理,提取有效信息進(jìn)行圖形繪制。對(duì)于仿真信息的匯總打印,使用WinForm 所提供的PrintDocument 等組件,將用戶輸入的仿真信息以及評(píng)價(jià)圖表通過DrawString()、DrawImage()等方法進(jìn)行重新組織編排,將重要信息匯總于一頁。

3.3 仿真測試 通過客戶端窗口中各控件的事件響應(yīng)以及對(duì)VISSIM_COM 接口的調(diào)用,在客戶端輸入?yún)?shù)進(jìn)行測試,所實(shí)現(xiàn)的仿真控制效果見圖5。

圖5 客戶端效果

對(duì)各信號(hào)控制策略下的不同電車線位類型交叉口進(jìn)行多次測試顯示,只要在初始建模過程中按照統(tǒng)一順序進(jìn)行路網(wǎng)元素的編排,保證車輛輸入集合、路段集合等集合中的索引一致對(duì)應(yīng),客戶端程序即可通過索引號(hào)獲取正確的路網(wǎng)元素,以實(shí)現(xiàn)對(duì)仿真輸入?yún)⒘康目刂疲M(jìn)而提高客戶端的通用性。

4 結(jié)束語

本文提出了基于VISSIM_COM接口通過NET平臺(tái)開發(fā)客戶端供有軌電車運(yùn)營管理者輔助決策的新思路,并給出了詳細(xì)的方法與步驟。該客戶端程序充分利用了兩個(gè)平臺(tái)的優(yōu)勢,通過NET編制的圖形界面,實(shí)現(xiàn)了對(duì)VISSIM在有軌電車優(yōu)先控制仿真方面的交互,簡化了以往直接通過VISSIM進(jìn)行仿真參數(shù)輸入修改的繁瑣步驟。當(dāng)然為了提高仿真的真實(shí)性,在建模之前應(yīng)盡可能地進(jìn)行實(shí)地的交通調(diào)查,進(jìn)行底層模型參數(shù)的校核,從而得到更接近實(shí)際、更具參考價(jià)值的評(píng)價(jià)結(jié)果。

猜你喜歡
電車交叉口路網(wǎng)
城市道路平面交叉口的渠化設(shè)計(jì)
城市道路平面交叉口設(shè)計(jì)研究與實(shí)踐
城市道路小間距T型錯(cuò)位交叉口交通組織研究
基于衛(wèi)星遙感圖像自動(dòng)提取路網(wǎng)與公路路網(wǎng)的校核比對(duì)
高速公路路網(wǎng)復(fù)合通行卡(CPC)管理方案探討
高速公路路網(wǎng)內(nèi)復(fù)合通行卡(CPC)調(diào)撥方法研究
打著“飛的”去上班 城市空中交通路網(wǎng)還有多遠(yuǎn)
馬鞍山市湖東路與湖南路交叉口交通改善設(shè)計(jì)
由電車引出的故事
電車奶奶