国产精品1024永久观看,大尺度欧美暖暖视频在线观看,亚洲宅男精品一区在线观看,欧美日韩一区二区三区视频,2021中文字幕在线观看

  • <option id="fbvk0"></option>
    1. <rt id="fbvk0"><tr id="fbvk0"></tr></rt>
      <center id="fbvk0"><optgroup id="fbvk0"></optgroup></center>
      <center id="fbvk0"></center>

      <li id="fbvk0"><abbr id="fbvk0"><dl id="fbvk0"></dl></abbr></li>

      一種時序同步方法與流程

      文檔序號:12034942閱讀:437來源:國知局
      一種時序同步方法與流程

      本發(fā)明涉及車輛動力學仿真與控制領域,更具體的是,本發(fā)明涉及一種時序同步方法。



      背景技術:

      公路液罐車是液態(tài)化工產(chǎn)品運輸?shù)闹匾d體。對于液罐車,尤其是拖帶掛車的液罐車,在極端工況下,由于罐體內(nèi)部液體的晃動與車輛運動之間的耦合,很容易喪失穩(wěn)定性,發(fā)生折疊、擺振以及側(cè)翻事故。由于這種危險性的存在,研究人員難以通過實車試驗對液罐車的穩(wěn)定性進行研究。因此對液罐車動力學的性能測試以及穩(wěn)定性控制策略的離線驗證是十分必要的。

      當前尚無專門用于建立液罐車動力學的模型,液罐車模型的建立主要是通過分別對車輛與液體進行建模并將兩個模型耦合在一起實現(xiàn)的。目前絕大多數(shù)液罐車輛建模所采用的技術方案是:建立液體的線性等效模型,如單擺模型、彈簧-質(zhì)子模型等,再建立車輛的簡化模型或準確模型,這種技術方案不足之處是所建立的液罐車動力學模型不能充分考慮液體的晃動特性?;蛘呤墙⒁后w的非線性模型,而建立車輛的簡化模型,將二者進行聯(lián)合建立液罐車動力學模型,這種技術方案能夠充分體現(xiàn)液體的非線性晃動特性,但車輛模型不夠準確。人們想到,建立一個準確的車輛模型,再建立一個非線性的液體模型后,將二者聯(lián)合來建立液罐車動力學模型。但是準確的車輛模型和非線性的液體模型并沒有相同的計算周期,時序并不相同,因此有必要設計一種方法,使二者能夠聯(lián)合使用,控制二者的時序同步,從而建立較高精度的液罐車動力學模型。



      技術實現(xiàn)要素:

      本發(fā)明的一個目的是設計開發(fā)了一種時序同步方法,在trucksim中的車輛模型和在fluent中的液體模型,能夠使得兩個模型在聯(lián)合使用時保證時序的同步。

      本發(fā)明提供的技術方案為:

      一種時序同步方法,包括:

      在trucksim中車輛模型,其為第一模型;

      在fluent中液體模型,其為第二模型;

      以第一模型的計算周期為主導周期:

      當其與第二模型時序同步時,進行數(shù)據(jù)傳遞;

      當其與第二模型時序不同步時,進入等待狀態(tài)直至時序同步;

      第二模型保持連續(xù)的運行,其內(nèi)部設有時序判別方法:

      在每個第二模型的計算周期內(nèi),當所述第一模型的累計時長tf與所述第二模型的累計時長tt的偏差δ小于等于一設定閾值時,所述第一模型和第二模型的時序同步。

      優(yōu)選的是,當所述第一模型和所述第二模型的時序同步時,所述第二模型的計算周期內(nèi)包括運行、判斷、寫入和讀取四個狀態(tài),隨后進入下一第二模型計算周期的運行狀態(tài)。

      優(yōu)選的是,當所述第一模型和所述第二模型的時序不同步時,所述第二模型的計算周期內(nèi)僅包括運行和判斷兩個狀態(tài),隨后進入下一第二模型計算周期的運行狀態(tài)。

      優(yōu)選的是,所述第一模型包括等待、讀取、運行和寫入四個狀態(tài),在其每個計算周期開始時即進入等待狀態(tài),直至所述第一模型和所述第二模型的時序同步時,進入讀取、運行和寫入狀態(tài),隨后進入下一個所述第一模型的計算周期的等待狀態(tài)。

      優(yōu)選的是,所述第二模型的單個計算周期為tf,所述偏差δ小于等于tf/2。

      優(yōu)選的是,還包括一個中間同步源,其與所述第一模型的時序同步,用于聯(lián)合所述第一模型和所述第二模型。

      優(yōu)選的是,所述中間同步源內(nèi)設置有第一模塊和第二模塊,所述第一模塊用于運行所述第一模型,所述第二模塊用于數(shù)據(jù)讀寫,所述第一模塊與所述第二模塊之間進行數(shù)據(jù)傳遞,實現(xiàn)所述第一模型和第二模型的聯(lián)合。

      本發(fā)明所述的有益效果為:

      本發(fā)明所述的時序同步方法,能夠使得兩個模型在聯(lián)合使用時保證時序的同步。

      附圖說明

      圖1為本發(fā)明實施例所述的液罐車整車動力學測試模型仿真中fluent6.3與trucksim8.0聯(lián)合仿真的流程圖。

      圖2為本發(fā)明實施例所述的液罐車整車動力學測試模型仿真中第一模型的運行狀態(tài)示意圖。

      圖3為本發(fā)明實施例所述的液罐車整車動力學測試模型仿真中fluent6.3與trucksim8.0聯(lián)合仿真過程中的時序同步方法示意圖。

      圖4為本發(fā)明實施例所述的液罐車整車動力學測試模型仿真中fluent6.3與trucksim8.0聯(lián)合仿真過程中時序同步判別標準示意圖。

      具體實施方式

      下面結(jié)合附圖對本發(fā)明做進一步的詳細說明,以令本領域技術人員參照說明書文字能夠據(jù)以實施。

      本發(fā)明提供一種時序同步方法,包括:在trucksim中車輛模型,其為第一模型;在fluent中液體模型,其為第二模型;以第一模型的計算周期為主導周期:當其與第二模型時序同步時,進行數(shù)據(jù)傳遞;當其與第二模型時序不同步時,進入等待狀態(tài)直至時序同步;第二模型保持連續(xù)的運行,其內(nèi)部設有時序判別方法:在每個第二模型的計算周期內(nèi),當所述第一模型的累計時長tf與所述第二模型的累計時長tt的偏差δ小于等于一設定閾值時,所述第一模型和第二模型的時序同步。當所述第一模型和所述第二模型的時序同步時,所述第二模型的計算周期內(nèi)包括運行、判斷、寫入和讀取四個狀態(tài),隨后進入下一第二模型計算周期的運行狀態(tài)。當所述第一模型和所述第二模型的時序不同步時,所述第二模型的計算周期內(nèi)僅包括運行和判斷兩個狀態(tài),隨后進入下一第二模型計算周期的運行狀態(tài)。所述第一模型包括等待、讀取、運行和寫入四個狀態(tài),在其每個計算周期開始時即進入等待狀態(tài),直至所述第一模型和所述第二模型的時序同步時,進入讀取、運行和寫入狀態(tài),隨后進入下一個所述第一模型的計算周期的等待狀態(tài)。所述第二模型的單個計算周期為tf,所述偏差δ小于等于tf/2。本實施例中,還包括一個中間同步源,其與所述第一模型的時序同步,用于聯(lián)合所述第一模型和所述第二模型。所述中間同步源內(nèi)設置有第一模塊和第二模塊,所述第一模塊用于運行所述第一模型,所述第二模塊用于數(shù)據(jù)讀寫,所述第一模塊與所述第二模塊之間進行數(shù)據(jù)傳遞,實現(xiàn)所述第一模型和第二模型的聯(lián)合。

      下面通過建立液罐車整車動力學測試模型仿真具體闡述所述時序同步方法的使用;所述第一軟件為trucksim8.0;第二軟件為fluent6.3;操作系統(tǒng)為windows7;所述中間同步源的軟件為matlab/simulinkr2015b。

      如圖1所示,在trucksim8.0中建立車輛模型,在matlab/simulinkr2015b中建立cosimulation.mdl文件,將車輛模型的聯(lián)合仿真接口代碼發(fā)送至cosimulation.mdl中,建立trucksim8.0與matlab/simulinkr2015b的聯(lián)合仿真環(huán)境。車輛模型在cosimulation.mdl中以s-function的形式通過調(diào)用trucksim8.0產(chǎn)生的dll文件來運行,仿真結(jié)束后的車輛動力學響應可以在trucksim8.0中查看。在cosimulation.mdl中包含兩個s-function模塊,一個用于運行車輛模型,另一個為數(shù)據(jù)讀寫s-function,其用途如下:1.讀取生成共享文件force.txt中的液體晃動力及晃動力矩;2.將液罐側(cè)向加速度及側(cè)傾角速度寫入共享文件motion.txt;3.當trucksim8.0與fluent6.3時序不一致時循環(huán)等待。兩個s-function在cosimulation.mdl中進行數(shù)據(jù)的傳遞從而實現(xiàn)液體模型與車輛模型之間的耦合,當然,還可以通過在cosimulation.mdl中加入對車輛的穩(wěn)定性控制策略以驗證其有效性。液體晃動模型的運行步長、介質(zhì)屬性及邊界條件等事先寫入fluent6.3的日志文件中,fluent6.3運行前需要載入日志文件進行配置,在fluent6.3中使用c語言編寫用戶自定義函數(shù)(udf),udf主要用于實現(xiàn)以下作用:1.讀取共享文件motion.txt中的液罐側(cè)向加速度及側(cè)傾角速度;2.將計算得到的液體晃動力及晃動力矩寫入共享文件force.txt;3.將讀取的液罐側(cè)向加速度及側(cè)傾角速度施加與fluent6.3中的液體模型;4.計算液體模型的液體晃動力及晃動力矩;5.判斷fluent6.3與trucksim8.0運行的時序是否一致。當與trucksim8.0運行的時序一致時,fluent6.3將計算得到的液體晃動力及晃動力矩寫入共享文件force.txt中,并讀入共享文件motion.txt中的液罐側(cè)向加速度及側(cè)傾角速度,隨后對液體模型的液體晃動力及晃動力矩進行迭代計算。

      如圖2所示,所述trucksim8.0與matlab/simulinkr2015b的運行狀態(tài)是同步的,在程序運行過程中每個車輛模型計算周期包含等待、讀取、運行、寫入四個狀態(tài),每個車輛模型計算周期開始時進行等待,直到有新的共享文件force.txt生成,此時進入讀取狀態(tài),從共享文件force.txt中讀取液體晃動力及晃動力矩,讀取后進入運行狀態(tài),計算車輛的運動狀態(tài),計算完畢后進入寫入狀態(tài),將通過對車輛模型進行求解得到的液罐側(cè)向加速度及側(cè)傾角速度寫入共享文件motion.txt,隨后轉(zhuǎn)入下一個車輛模型計算周期的等待狀態(tài)。程序運行過程中以trucksim8.0與matlab/simulinkr2015b的運行周期為主導周期,與fluent6.3時序一致時進行數(shù)據(jù)的傳遞,否則進入等待狀態(tài)直至時序一致,而fluent6.3保持連續(xù)的運行。當時序一致時,fluent6.3中的液體模型計算周期是一個完整的計算周期,包含運行、判斷、寫入、讀取四個狀態(tài),首先進入該周期的運行狀態(tài),求解液體的晃動力及晃動力矩,求解完畢進入判斷狀態(tài),判斷時序是否一致,一致則進入寫入狀態(tài),將液體晃動力及晃動力矩寫入共享文件force.txt,寫入完畢后進入讀取狀態(tài),從共享文件motion.txt中讀取液罐側(cè)向加速度及側(cè)傾角速度,隨后進入下一液體模型計算周期的運行狀態(tài)。當時序不一致時,fluent6.3中的液體模型計算周期只包含運行與判斷兩個狀態(tài),當判斷結(jié)果為時序不一致時,不進行數(shù)據(jù)的讀寫操作,直接轉(zhuǎn)入下一計算周期的運行。

      如圖3所示,trucksim8.0中的車輛模型計算步長與fluent6.3中的液體模型計算步長多數(shù)情況下是不一致的,即使步長一致,由于fluent6.3相對于trucksim8.0計算耗時較長,二者也難以保持時序上的同步,因此設計開發(fā)了時序同步方法,該機制的核心為trucksim8.0中的車輛模型計算周期的等待與fluent6.3中的液體模型計算周期中的判斷。fluent6.3在每個液體模型計算周期中都會判斷fluent6.3的累計時長與trucksim8.0的累計時長的偏差δ是否滿足若滿足,則認為此時時序一致,生成共享文件force.txt,否則轉(zhuǎn)入下一液體模型計算周期的運行。trucksim8.0在每個車輛模型計算周期開始時判斷是否有共享文件force.txt生成,若無共享文件force.txt生成則進入循環(huán)等待,而當fluent6.3在時序一致時生成共享文件force.txt,此時trucksim8.0結(jié)束等待,matlab/simulinkr2015b中的數(shù)據(jù)讀寫s-function在每個車輛模型計算周期結(jié)束時將當前共享文件force.txt刪除然后進入下一車輛模型計算周期的等待狀態(tài)。以工作環(huán)境中共享文件force.txt的生成作為時序同步的標志,通過這種方法使trucksim8.0與fluent6.3保持運行時序上的同步。

      如圖4所示,設定tf為fluent6.3的單個液體模型計算周期時長,tt為trucksim8.0的單個車輛模型計算周期時長,tt為trucksim8.0當前的累計時長,tf2、tf4為fluent6.3當前液體模型計算周期結(jié)束時的累計時長,tf1、tf3為fluent6.3上一液體模型計算周期結(jié)束時的累計時長。圖4中包括兩組對比,前一組中fluent上一計算周期結(jié)束時的累計時長與trucksim當前的累計時長的偏差比fluent當前計算周期結(jié)束時的累計時長與trucksim當前的累計時長的偏差小,即

      tt-tf3<tf4-tt

      為保證時序一致的唯一性,此時應認為在tf3時刻時序是一致的,在fluent6.3的上一液體模型計算周期結(jié)束時即將fluent6.3計算結(jié)果寫入共享文件force.txt中供trucksim8.0讀取。而在后一組對比中,fluent當前計算周期結(jié)束時的累計時長與trucksim當前的累計時長的偏差比fluent上一計算周期結(jié)束時的累計時長與trucksim當前的累計時長的偏差小,即

      tf2-tt<tt-tf1

      為保證時序一致的唯一性,此時應認為在tf2時刻時序是一致的,在fluent6.3的當前液體模型計算周期結(jié)束時將fluent6.3計算結(jié)果寫入共享文件force.txt中供trucksim8.0讀取。因此,時序一致判別標準所采用的偏差δ應為:

      本發(fā)明所述的時序同步方法,能夠使得兩個模型在聯(lián)合使用時保證時序的同步。在液罐車整車動力學測試過程中,建立了準確的車輛模型和非線性液體模型,并通過上述時序同步方法使兩者能夠聯(lián)合使用,較高精度的實現(xiàn)對液罐車整車動力學的測試。

      盡管本發(fā)明的實施方案已公開如上,但其并不僅僅限于說明書和實施方式中所列運用,它完全可以被適用于各種適合本發(fā)明的領域,對于熟悉本領域的人員而言,可容易地實現(xiàn)另外的修改,因此在不背離權利要求及等同范圍所限定的一般概念下,本發(fā)明并不限于特定的細節(jié)和這里示出與描述的圖例。

      當前第1頁1 2 
      網(wǎng)友詢問留言 已有0條留言
      • 還沒有人留言評論。精彩留言會獲得點贊!
      1