0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

基于模型的設(shè)計(jì)為下一代救援梯開發(fā)控制系統(tǒng)

MATLAB ? 來(lái)源:MATLAB ? 2023-06-01 11:34 ? 次閱讀

| 作者 Clemens Friedl,盧森寶亞集團(tuán)

當(dāng)飛機(jī)上或跑道附近發(fā)生意外事故時(shí),急救人員需要快速進(jìn)入機(jī)艙。在這種情況下,快速架設(shè)救援梯有助于快速疏散乘客或機(jī)組人員,或讓醫(yī)護(hù)人員能夠?yàn)樗麄兲峁┘皶r(shí)的醫(yī)療救助。 最近,盧森寶亞重新設(shè)計(jì)了飛機(jī)內(nèi)部通道車(更通俗的說法是“救援梯”),旨在最大程度減少安裝時(shí)間,同時(shí)保持高安全標(biāo)準(zhǔn)并提高易用性(圖 1)。在開始這項(xiàng)工作時(shí),我們還籍此機(jī)會(huì)重建了現(xiàn)有的控制軟件開發(fā)流程,該流程之前一直基于手寫編碼和大量的車載測(cè)試。我們不再使用這種過時(shí)的方法,而是采用我們?cè)疽詾橹粚?duì)更大型 OEM 具有經(jīng)濟(jì)可行性的方法。具體來(lái)說,我們?cè)?MATLABSimulink 中使用了基于模型的設(shè)計(jì),通過仿真驗(yàn)證我們的早期控制設(shè)計(jì),使內(nèi)外部開發(fā)團(tuán)隊(duì)能夠運(yùn)行硬件在環(huán)測(cè)試,生成產(chǎn)品級(jí)代碼,并將項(xiàng)目開發(fā)時(shí)間縮短一半。

控制設(shè)計(jì)面臨的機(jī)遇和挑戰(zhàn)

在我們?yōu)樯弦淮仍菰O(shè)計(jì)控制系統(tǒng)時(shí),當(dāng)時(shí)可用的控制硬件較為有限。因此,我們需要將控制軟件分布到六個(gè) ECU 上。為了滿足安全要求,我們還需要布線和其他組件應(yīng)有大量冗余。 對(duì)于當(dāng)前的設(shè)計(jì),新的硬件讓我們能夠大大簡(jiǎn)化架構(gòu),并且只需使用兩個(gè) ECU。一個(gè) ECU 通過了安全認(rèn)證,可以處理所有安全功能,其軟件由我們的供應(yīng)商 TTControl 的工程師團(tuán)隊(duì)開發(fā)。另一個(gè) ECU 負(fù)責(zé)運(yùn)行控制應(yīng)用軟件,該軟件則由我在盧森寶亞的團(tuán)隊(duì)開發(fā)。

雖然控制系統(tǒng)的架構(gòu)較為簡(jiǎn)單,但我們?cè)趯?shí)現(xiàn)該系統(tǒng)時(shí)仍面臨諸多挑戰(zhàn)。首先,我們需要在獲得救援梯的硬件(包括液壓和機(jī)械組件)之前就著手開發(fā)工作。其次,控制器有一項(xiàng)關(guān)鍵設(shè)計(jì)限制,禁止樓梯在升降時(shí)隨意停在任何位置。控制器必須從 2,500 個(gè)預(yù)定義鎖定位置中找到最近的位置。在此位置,機(jī)械閂鎖和齒條在重量滿載的情況下應(yīng)該能夠支撐樓梯(圖 2)。隨著這種復(fù)雜性的增加,手工編寫代碼和直接在車輛上進(jìn)行測(cè)試變得不切實(shí)際。此類方法實(shí)施起來(lái)往往很難,而我們的特定需求也使得該過程更具挑戰(zhàn)性。最后,考慮到車輛的尺寸以及在測(cè)試過程中需要運(yùn)行柴油發(fā)動(dòng)機(jī),所有車載測(cè)試都必須在室外進(jìn)行。過去,我們經(jīng)常需要在惡劣的天氣或夜晚黑暗中運(yùn)行測(cè)試,以滿足截止期限要求。

開發(fā)被控對(duì)象和基本控制器模型

隨著項(xiàng)目的推進(jìn),我們開始在 Simulink 中開發(fā)救援梯的被控對(duì)象模型。該模型包括用于作動(dòng)器位置、液壓、電流CAN 信號(hào)傳感器。它還包括液壓系統(tǒng)的元件,如閥門和液壓缸。這些元件視制造商數(shù)據(jù)表中的信息而定。 除了被控對(duì)象模型,我們還使用 Simulink 和 Stateflow 開發(fā)了一個(gè)簡(jiǎn)單的控制器模型。這個(gè)初始模型并未實(shí)現(xiàn)我們針對(duì)控制軟件提出的所有需求。不過,其功能足以讓我們了解機(jī)器將如何運(yùn)轉(zhuǎn),以及我們可能需要對(duì)硬件設(shè)計(jì)進(jìn)行哪些改進(jìn)(如果有的話)。

通過將控制器和被控對(duì)象模型相結(jié)合,我們創(chuàng)建了一個(gè)用于運(yùn)行閉環(huán)仿真的系統(tǒng)級(jí)模型(圖 3)。仿真結(jié)果的分析影響了我們?cè)谝韵路矫娴臎Q定:將哪種液壓升降機(jī)用于救援梯,以及實(shí)施哪種類型的傳感器。例如,我們最初計(jì)劃在液壓缸上使用電流傳感器,但當(dāng)仿真顯示這些傳感器缺乏足夠的精度時(shí),我們決定改用 CAN 傳感器。過去,這類設(shè)計(jì)問題只有等到開發(fā)過程的后期(即實(shí)車測(cè)試階段)才被發(fā)現(xiàn)。

2ae5ba9c-ffef-11ed-90ce-dac502259ad0.jpg

圖 3. 包含被控對(duì)象和控制器子模型的系統(tǒng)級(jí)模型。

代碼生成和 HIL 測(cè)試

通過桌面仿真驗(yàn)證了我們的早期控制設(shè)計(jì)后,我們很快便轉(zhuǎn)向了 HIL 測(cè)試。我們使用 Embedded Coder 從我們的被控對(duì)象模型生成了代碼,并將其部署到了一個(gè) TTControl 的 TTC 580 ECU。我們還遵循同樣的流程從控制器模型生成了代碼,并將其部署到了另一個(gè) TTControl 的 ECU。以實(shí)際控制器連接到救援梯的方式將這兩個(gè) ECU 連在一起后,我們運(yùn)行了 HIL 測(cè)試來(lái)確認(rèn)控制設(shè)計(jì)的實(shí)時(shí)性能,并驗(yàn)證救援梯觸摸屏控制面板的操作(圖 4)。 我們還為 TTControl 公司從事安全軟件工作的同行提供了相同的 HIL 測(cè)試設(shè)置。這樣,該團(tuán)隊(duì)便能與我們同時(shí)工作,對(duì)他們正在開發(fā)的軟件進(jìn)行自己的測(cè)試,而無(wú)需登上實(shí)際的救援梯。這種 HIL 測(cè)試設(shè)置不僅使 TTControl 團(tuán)隊(duì)能夠加速他們的軟件開發(fā),而且還能夠幫助他們開始在實(shí)際的救援梯上進(jìn)行測(cè)試之前便發(fā)現(xiàn)并解決一些問題。

車載測(cè)試和調(diào)試

當(dāng) TTControl 團(tuán)隊(duì)完成安全軟件開發(fā)時(shí),我們繼續(xù)開發(fā)并完善控制應(yīng)用軟件。在這個(gè)過程中,我們使用代碼繼承工具 (https://ww2.mathworks.cn/help/simulink/sfg/integrating-existing-c-functions-into-simulink-models-with-the-legacy-code-tool.html) 將 TTControl 工程師手寫的電流和位置控制 C++ 代碼導(dǎo)入我們的 Simulink 模型。然后,我們繼續(xù)運(yùn)行仿真和 HIL 測(cè)試,這不僅是為了驗(yàn)證我們添加到控制應(yīng)用的新功能,而且是為了驗(yàn)證另一個(gè)團(tuán)隊(duì)開發(fā)并交付的 C++ 代碼。 此時(shí),我們已經(jīng)準(zhǔn)備好要在實(shí)際的救援梯上測(cè)試我們的控制器。我們?cè)俅问褂?Embedded Coder 從 Simulink 模型生成了代碼,并將其部署到了 TTControl 的 ECU。但這次,我們不是將 ECU 連接到 HIL 設(shè)置,而是將其連接到了實(shí)際的救援梯,并運(yùn)行了一系列車載測(cè)試。 我們通過仿真驗(yàn)證的所有測(cè)試用例,也都在實(shí)際的救援梯上順利執(zhí)行。不過,我們確實(shí)發(fā)現(xiàn)了一些我們事先沒有考慮到的邊角情況,包括觸摸屏顯示器上的奇怪按鈕組合。通過在 Stateflow 的狀態(tài)機(jī)中插入額外的狀態(tài)和轉(zhuǎn)移,我們解決了這些問題(圖 5)。然后,我們運(yùn)行了仿真來(lái)驗(yàn)證所做的更改,重新生成了代碼,并在實(shí)際的救援梯上再次進(jìn)行了測(cè)試,以確保各方面都正常工作。以前,在我們手寫控制代碼時(shí),凡是涉及添加狀態(tài)和轉(zhuǎn)移的更改,都需要相當(dāng)長(zhǎng)的時(shí)間來(lái)實(shí)現(xiàn)和調(diào)試。

2afbbf04-ffef-11ed-90ce-dac502259ad0.jpg

圖 5. 使用 Stateflow 設(shè)計(jì)的狀態(tài)機(jī)概覽。

在當(dāng)前項(xiàng)目中使用基于模型的設(shè)計(jì)

隨著救援梯現(xiàn)已投產(chǎn),我們對(duì)所取得的成果做個(gè)總結(jié)。在性能方面,這些救援梯可以快速延伸到最高位置,其速度比我們之前的設(shè)計(jì)要快 20% 左右,這提高了緊急情況下的實(shí)際救援速度。從開發(fā)角度看,基于模型的設(shè)計(jì)幫助我們實(shí)現(xiàn)了更可靠的控制系統(tǒng),而用時(shí)大約是以前方法的一半。 使用 Embedded Coder 從 Simulink 模型生成代碼,是我們提高開發(fā)速度的關(guān)鍵因素之一。為了更好地了解如何利用代碼生成,我們專門花時(shí)間學(xué)習(xí)了 Embedded Coder 的相關(guān)培訓(xùn)課程。除了幫助我們充分利用這款工具之外,這門課程還讓我們對(duì)于將代碼生成融入我們工作流的便捷程度大開眼界。以前,我們?cè)?jīng)花費(fèi)大量時(shí)間調(diào)試和維護(hù)手寫代碼。那時(shí),我們并未意識(shí)到有那么多汽車行業(yè)的大型公司都在利用代碼生成實(shí)現(xiàn)生產(chǎn)控制軟件。憑借這一認(rèn)識(shí),再加上我們自己在救援梯方面的第一手經(jīng)驗(yàn),我們的團(tuán)隊(duì)已將基于模型的設(shè)計(jì)推廣應(yīng)用到了其他幾個(gè)項(xiàng)目,包括目前正在開發(fā)的電動(dòng)消防車的控制設(shè)計(jì)。

編輯:黃飛

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • 傳感器
    +關(guān)注

    關(guān)注

    2542

    文章

    50308

    瀏覽量

    750324
  • 控制器
    +關(guān)注

    關(guān)注

    112

    文章

    16041

    瀏覽量

    176765
  • CAN
    CAN
    +關(guān)注

    關(guān)注

    57

    文章

    2687

    瀏覽量

    462978
  • ecu
    ecu
    +關(guān)注

    關(guān)注

    14

    文章

    865

    瀏覽量

    54335

原文標(biāo)題:MBD | 使用基于模型的設(shè)計(jì)為下一代救援梯開發(fā)控制系統(tǒng)

文章出處:【微信號(hào):MATLAB,微信公眾號(hào):MATLAB】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

收藏 人收藏

    評(píng)論

    相關(guān)推薦

    下一代定位與導(dǎo)航系統(tǒng)

    下一代定位與導(dǎo)航系統(tǒng)
    發(fā)表于 08-18 10:37

    TEK049 ASIC下一代示波器提供動(dòng)力

    TEK049 ASIC下一代示波器提供動(dòng)力
    發(fā)表于 11-01 16:28

    基于CompactRIO和LabVIEW的下一代機(jī)器人控制系統(tǒng)設(shè)計(jì)

    用CompactRIO和LabVIEW開發(fā)下一代機(jī)器人控制系統(tǒng)Author(s):Bill Miller - FIRST Frank Merrick - FIRSTKate Pilotte
    發(fā)表于 05-15 09:40

    下一代SONET SDH設(shè)備

    下一代SONET/SDH設(shè)備
    發(fā)表于 09-05 07:05

    單片光學(xué)實(shí)現(xiàn)下一代設(shè)計(jì)

    單片光學(xué) - 實(shí)現(xiàn)下一代設(shè)計(jì)
    發(fā)表于 09-20 10:40

    下一代測(cè)試系統(tǒng):用LXI拓展視野

    下一代測(cè)試系統(tǒng):用LXI拓展視野
    發(fā)表于 09-26 14:24

    下一代測(cè)試系統(tǒng):用LXI推進(jìn)愿景

    下一代測(cè)試系統(tǒng):用LXI推進(jìn)愿景(AN 1465-16)
    發(fā)表于 10-09 09:47

    如何利用低成本FPGA設(shè)計(jì)下一代游戲控制臺(tái)?

    如何利用低成本FPGA設(shè)計(jì)下一代游戲控制臺(tái)?
    發(fā)表于 04-30 06:54

    用Java開發(fā)下一代嵌入式產(chǎn)品

    用Java開發(fā)下一代嵌入式產(chǎn)品在我10年的Java布道師生涯里,沒有哪次Java新版本發(fā)布能讓我如此興奮。Java 8的發(fā)布不僅在語(yǔ)言本身加入了些不錯(cuò)的新特性,還在嵌入式開發(fā)上加入了很棒的功能
    發(fā)表于 11-05 09:12

    用CompactRIO和LabVIEW開發(fā)下一代機(jī)器人控制

    用CompactRIO和LabVIEW開發(fā)下一代機(jī)器人控制系統(tǒng) Author(s):Bill Miller - FIRST Frank Merrick - FIRSTKate Pilotte
    發(fā)表于 01-21 17:01 ?785次閱讀

    FIRST與NI共同開發(fā)下一代機(jī)器人控制系統(tǒng)

    FIRST與NI共同開發(fā)下一代機(jī)器人控制系統(tǒng)  FIRST (For Inspiration and Recognition of Science and Technology,鼓勵(lì)及認(rèn)識(shí)科學(xué)技術(shù))是工程師、發(fā)明家Dean Kamen先生于1989年創(chuàng)立的
    發(fā)表于 01-23 10:03 ?734次閱讀

    高通與Panasonic將合作發(fā)展下一代以Android基礎(chǔ)的車載娛樂系統(tǒng)

    Infotainment, IVI)系統(tǒng)。目前的技術(shù),除了能控制汽車的功能,更實(shí)現(xiàn)了Google服務(wù)、Android應(yīng)用與該車載娛樂系統(tǒng)的整合。而下一代IVI
    發(fā)表于 01-11 11:09 ?1226次閱讀

    簡(jiǎn)化下一代物聯(lián)網(wǎng)應(yīng)用的雷達(dá)開發(fā)

    簡(jiǎn)化下一代物聯(lián)網(wǎng)應(yīng)用的雷達(dá)開發(fā)
    發(fā)表于 10-28 11:59 ?0次下載
    簡(jiǎn)化<b class='flag-5'>下一代</b>物聯(lián)網(wǎng)應(yīng)用的雷達(dá)<b class='flag-5'>開發(fā)</b>

    下一代家電供電:如何積少成多?

    下一代家電供電:如何積少成多?
    發(fā)表于 11-02 08:16 ?1次下載
    <b class='flag-5'>為</b><b class='flag-5'>下一代</b>家電供電:如何積少成多?

    下一代家電供電:如何集腋成裘

    下一代家電供電:如何集腋成裘
    發(fā)表于 11-02 08:16 ?1次下載
    <b class='flag-5'>為</b><b class='flag-5'>下一代</b>家電供電:如何集腋成裘