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

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

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

MBD工具鏈的云部署

MESEngineering ? 來源:MESEngineering ? 作者:MESEngineering ? 2024-02-18 13:48 ? 次閱讀

“云技術(shù)用于不會用于汽車開發(fā)“。說到云部署在汽車行業(yè)的應(yīng)用,業(yè)界曾經(jīng)認(rèn)為云技術(shù)并不適合用在汽車行業(yè)的產(chǎn)品開發(fā)。知識產(chǎn)權(quán)保護(hù)、數(shù)據(jù)的安全、流程不夠透明、遷移成本過高、IT部門的保守等種種現(xiàn)實問題成為了云技術(shù)應(yīng)用在汽車開發(fā)上的阻礙。然而,隨著電動車巨頭特斯拉等一眾公司的成功,行業(yè)的發(fā)展趨勢變得不言自明: 汽車行業(yè)正朝著更加注重軟件驅(qū)動的方向發(fā)展,越來越多的OEM正重新定位,將重心放在軟件和技術(shù)方面。驅(qū)動這樣的轉(zhuǎn)變的因素有很多,比如高級輔助駕駛系統(tǒng) (ADAS),電動出行技術(shù) (E-mobility) ,以及信息娛樂和舒適系統(tǒng)的開發(fā)等??偟膩碚f,汽車行業(yè)已經(jīng)開始采用云技術(shù)推動汽車軟件的設(shè)計,汽車軟件向著更先進(jìn),更智能的方向邁進(jìn)。本文著重探討云技術(shù)在汽車行業(yè)應(yīng)用的優(yōu)勢和注意事項,以及其在汽車行業(yè)軟件設(shè)計質(zhì)量保證領(lǐng)域的實際應(yīng)用。

云技術(shù)的關(guān)鍵要素

首先明確云技術(shù)應(yīng)用的關(guān)鍵要素。云技術(shù)是一種按需提供計算存儲網(wǎng)絡(luò)或其他IT資源的計算模式。對于云技術(shù)而言,算力和應(yīng)用程序可在任意位置的集中式服務(wù)器農(nóng)場中運行,這些服務(wù)器不受空間約束,可以是OEM在本地的部署,也可以是各個地方公共云上的服務(wù)器。虛擬機 (VM) 是一種虛擬的計算環(huán)境,是云技術(shù)的關(guān)鍵資源。在這些服務(wù)器當(dāng)中,使用虛擬機進(jìn)行計算,并可以根據(jù)工作的負(fù)載動態(tài)部署或撤銷。理論上,云計算的算力可以無限擴(kuò)展。個人電腦的角色也十分重要,是云計算中與云計算中心計算能力進(jìn)行交互的主要接口。帶寬資源在云計算中同樣值得提及,為了使云應(yīng)用程序發(fā)揮作用,需要足夠的帶寬接入使設(shè)備可以實現(xiàn)快速的互聯(lián)網(wǎng)連接,并需要監(jiān)控實際使用的應(yīng)用服務(wù),以確保一切正常運行。這些云技術(shù)的要素幫助提高了開發(fā)工作的靈活度,并使工作更容易擴(kuò)展。從企業(yè)的角度來說,云技術(shù)能夠幫助企業(yè)降低成本,提高效率。

圍繞云技術(shù),關(guān)鍵的概念也有很多。容器(Container) 是一種把應(yīng)用程序及其依賴項到打包在一起的一種技術(shù),使其可以方便地在云環(huán)境中部署運行及管理應(yīng)用程序。容器技術(shù)常見的一種實現(xiàn)被稱為Docker, Docker是一種開源的容器化平臺,可以幫助開發(fā)者將應(yīng)用程序及依賴項打包,并在支持Docker的環(huán)境中運行,使其不受環(huán)境差異的影響。對于集群技術(shù),Kubernetes (又稱k8s) 是一種容器編排系統(tǒng),幫助企業(yè)管理容器化的應(yīng)用程序。Automation (自動化),作為云計算的重要概念,其目的在于降本增效。對于自動化管道及構(gòu)建管道,Jenkins、Bamboo、Git等等常被提及。Jenkins是一個由Java編寫的、開源的持續(xù)集成的工具,類似的還有Bamboo。Jenkins主要幫助團(tuán)隊進(jìn)行自動化的構(gòu)建、測試和發(fā)布過程,提高軟件交付的效率及質(zhì)量。此外,同樣需要版本控制系統(tǒng)的支持,比如Git??梢允褂肎it來追蹤項目的變化,協(xié)同開發(fā)。倉庫(Repository) 用于存儲云技術(shù)相關(guān)的軟件要素。IaaS (基礎(chǔ)架構(gòu)即服務(wù)),PaaS (平臺即服務(wù)) 和SaaS (軟件即服務(wù)) 是云服務(wù)的主要類型。IaaS (基礎(chǔ)架構(gòu)即服務(wù)) 提供計算存儲網(wǎng)絡(luò)資源,用戶可以按照實際使用需求支付費用。PaaS (平臺即服務(wù)) 提供開發(fā),部署和運用應(yīng)用程序的平臺。SaaS (軟件即服務(wù)) 提供已經(jīng)預(yù)先構(gòu)建好的軟件應(yīng)用程序。CaaS (內(nèi)容即服務(wù)) 以提供消費者基礎(chǔ)網(wǎng)絡(luò)資源以及操作系統(tǒng)服務(wù)為中心。DbaaS (數(shù)據(jù)庫即服務(wù)) 為客戶提供數(shù)據(jù)庫的訪問,而無需部署或管理底層的基礎(chǔ)設(shè)施。無服務(wù)器(Serverless) 通常稱為功能即服務(wù)(FaaS),是以PaaS (平臺即服務(wù)) 為基礎(chǔ),提供一個微型的架構(gòu),中層客戶無需部署配置或者管理服務(wù)器的服務(wù),代碼運行所需要的服務(wù)器服務(wù)都由云端平臺來提供。對于小型公司來說,可以運用云計算來托管其網(wǎng)站應(yīng)用程序,無需投資建立自己的硬件軟件,從而節(jié)省支出。而大型企業(yè)也可以使用云計算技術(shù)來擴(kuò)展IT基礎(chǔ)設(shè)施,以滿足業(yè)務(wù)需求的多樣化。

行業(yè)機遇與挑戰(zhàn)

云技術(shù)的關(guān)鍵詞和主要運用形式已作過介紹,下面來關(guān)注云技術(shù)的應(yīng)用優(yōu)勢和面對的挑戰(zhàn)??蓴U(kuò)展性是云計算的首要和關(guān)鍵優(yōu)勢。靈活的工具配置使云計算可以更好地適應(yīng)不同的工作場景和負(fù)載。集中的管理可以實現(xiàn)實時的監(jiān)控,使運作流程透明且可控。全局的標(biāo)準(zhǔn)化同樣重要,云計算可以提供一種更為精簡工作流的實現(xiàn)過程,同時其易維護(hù)性保障了系統(tǒng)的可維護(hù)性和高效利用。云計算的這些優(yōu)勢幫助企業(yè)達(dá)到降低成本,同時提高透明度的作用。

當(dāng)然,云技術(shù)同樣面臨一些挑戰(zhàn)。首先,由于云計算的應(yīng)用可能需要用戶更改其原本的工具使用模式,這使得用戶的使用習(xí)慣面臨改變,不適應(yīng)的情況可能出現(xiàn),用戶的接受度成為一大挑戰(zhàn)。此外,將項目完全遷移至云端也會耗費一定時間,項目的運行速度或進(jìn)展可能因此延緩,企業(yè)在進(jìn)行遷移前需要更好的準(zhǔn)備工作以應(yīng)對這些問題。云端工具鏈的不夠完備,一些重要的工具可能還未實現(xiàn)云端化,云工具鏈的不完備也可能造成困擾,需要技術(shù)的持續(xù)發(fā)展來幫助工具鏈實現(xiàn)完全云端化。使用云技術(shù)還可能會導(dǎo)致企業(yè)對第三方服務(wù)的依賴,這其中也存在風(fēng)險。

汽車行業(yè)中云部署的經(jīng)典案例

在汽車行業(yè)的軟件開發(fā)和測試中,云部署架構(gòu)的實際應(yīng)用主要有兩種: “桌面云”和“過程云”。“桌面云”以用戶為中心。在這種應(yīng)用案例中,最終的用戶,也就是PC前的工作人員,通過傳統(tǒng)PC觸發(fā)應(yīng)用程序,而算力和數(shù)據(jù)存儲在云端的某服務(wù)器農(nóng)場中。從用戶體驗上來說,基本與傳統(tǒng)PC無異。使用的軟件與應(yīng)用以交互的方式被使用?!斑^程云”則是以過程為中心,在用戶端以自動化流程觸發(fā)應(yīng)用程序,其觸發(fā)的自動化管道前文已有所介紹,主要有Jenkins、Git和Bamboo等等工具。最終的結(jié)果以報告或事件的方式自動分發(fā)。

下面來分析具體架構(gòu)案例。對于軟件開發(fā)來說,當(dāng)開發(fā)人員和測試人員向Git倉庫(Git Repository) 提交(Commit) 一個模型更新或測試變更時,此行為會主動觸發(fā) (Trigger) Jenkins主節(jié)點上的自動化管道,此自動化管道中包含了一系列對測試環(huán)境的描述。當(dāng)測試環(huán)境描述文件發(fā)生變更時,Jenkins主節(jié)點作為數(shù)據(jù)中心樞紐被自動觸發(fā),負(fù)責(zé)控制和分發(fā)這些更改的管道設(shè)置。Jenkins主節(jié)點首先向代理節(jié)點 (Agent Nodes) 請求部署,隨后,代理節(jié)點會向云端倉庫(Container Repository) 請求下載相應(yīng)的容器(Docker)。如圖1所示,Docker倉庫中,已部署好適應(yīng)不同平臺 (Windows或Linux) 的容器包。隨后,適合系統(tǒng)要求的容器包將被請求并部署至Jenkins代理節(jié)點上。容器包(Docker)隨后接收到自動化管道發(fā)出的命令,繼而從Git倉庫(Git Repository) 簽出(Check Out) 相應(yīng)的模型及配置文件等需要的信息。并根據(jù)具體指令進(jìn)行靜態(tài)分析。Jenkins主節(jié)點隨后請求結(jié)果,而分析結(jié)果將會被發(fā)送回Jenkins主節(jié)點,并自動存儲。最后,Jenkins主節(jié)點負(fù)責(zé)向代理節(jié)點 (Agent Nodes) 請求取消部署,關(guān)閉不再需要的容器 (Docker),并將最終報告發(fā)送給開發(fā)或測試人員。

wKgZomXDda-AB6uWAARk2hsXp30243.png

圖1:桌面云設(shè)置

而從用戶出發(fā),用戶端(User Clients) 也可以進(jìn)行擴(kuò)展,通過使用終端服務(wù)器來完成開發(fā)、測試和分析全過程(由圖2所示)。用戶可以是單一或多個開發(fā)或測試人員從終端服務(wù)器(Terminalserver) 登錄。服務(wù)器會針對不同的工作環(huán)境和要求匹配不同的工具鏈并進(jìn)行設(shè)置。如果需要相應(yīng)的工具許可,可以向浮動許可證服務(wù)器發(fā)送相應(yīng)請求,而相應(yīng)的許可也可以被托管在不同位置。為保證安全,服務(wù)器通常配置為冗余或異地冗余的模式。這種情況下,由提交 (Commit) 操作自動觸發(fā)的Jenkins主節(jié)點分發(fā)相應(yīng)的自動化管道 (Automation Pipeline) 到代理節(jié)點(Agent Nodes) ,代理節(jié)點 (Agent Nodes) 則可以通過Kubernetes進(jìn)行擴(kuò)展,從而由靜態(tài)擴(kuò)展轉(zhuǎn)向可擴(kuò)展的代理,進(jìn)而實現(xiàn)云環(huán)境的擴(kuò)展。

wKgaomXDdbWAf5nuAABqK_osIaY829.png

圖2:可擴(kuò)展的云端自動化

對于云架構(gòu)的過程支持,如果需要容器中的軟件工具,MES模賽思可以提供相應(yīng)的容器模板輔助構(gòu)建配置。

許可模式及工具鏈的云部署

回顧此前的關(guān)鍵詞解釋,根據(jù)云服務(wù)商交付模式的不同,云服務(wù)模型主要可以分為:

軟件即服務(wù) (SaaS)

平臺或基礎(chǔ)架構(gòu)即服務(wù) (PaaS or IaaS)

軟件即服務(wù)(SaaS) 中,用戶應(yīng)用是托管服務(wù)的集成部分,按使用量付費是主要的業(yè)務(wù)開展方式。平臺或基礎(chǔ)架構(gòu)即服務(wù) (PaaS or IaaS) 需要關(guān)注客戶租用的算力以及操作系統(tǒng)的容量。平臺即服務(wù) (PaaS) 包括操作系統(tǒng)及數(shù)據(jù)庫,而基礎(chǔ)架構(gòu)即服務(wù) (IaaS)包括硬件和虛擬機 (VM)。使用平臺或基礎(chǔ)架構(gòu)即服務(wù) (PaaS or IaaS) 的客戶擁有應(yīng)用軟件的所有權(quán)和許可,并可以通過定制計劃來明確使用成本。而在高工作負(fù)載的情況下,額外容量變得非常重要,因此,更為靈活的動態(tài)訂閱模式能夠在超出常規(guī)用量的情況下提供額外的支持。

對于MBD工具鏈來說,行業(yè)的主流為基礎(chǔ)架構(gòu)托管。應(yīng)用及工具鏈多保存在公司內(nèi)部,這樣的架構(gòu)有利于對開發(fā)過程的監(jiān)控和靈活調(diào)控。對于汽車廠商,基礎(chǔ)架構(gòu)即服務(wù) (IaaS) 是主要的云技術(shù)運用方式。動態(tài)許可模式是目前行業(yè)的需求所在,也是MES模賽思所使用的許可模式。

MES模賽思的工具鏈目前已完全適配云許可的模式,并可以提供Windows和Linux版本。對于汽車行業(yè)來說,許可訂閱是主流選擇。許可模式的一種是開發(fā)者云桌面,用于交互式云環(huán)境,為桌面遷移到云設(shè)計。對于許可模式的覆蓋范圍,自動化全球云覆蓋全球許可,做到完全自動化和高動態(tài),并且可以在全球任何地方使用,為過程遷移到云設(shè)計。同樣,目前MES模賽思支持在云端設(shè)置MBD工具鏈,并可為試點項目提供基于云的沙箱環(huán)境,并為Docker容器提供配置模板。MES模賽思同樣支持在云端設(shè)置的自動化管道(Automation Pipeline) 。

wKgZomXDdb6AFD3pAABD6N_l1Eo041.png

圖3:MES模賽思云服務(wù)

如圖3所示,從技術(shù)咨詢,到工具與工作流,最后到構(gòu)建與遷移,MES模賽思能夠為客戶提供云部署的全程支持,幫助客戶實現(xiàn)工具鏈的云部署。模賽思軟件技術(shù)有限公司(Model Engineering Solutions,簡稱MES)是一家高科技軟件公司,專為軟件項目的質(zhì)量保證提供解決方案。MES為客戶基于模型的軟件開發(fā)提供技術(shù)支持,使其符合IEC 61508、ISO 26262或ASPICE等行業(yè)標(biāo)準(zhǔn)。MES模賽思成立于2006年,總部位于德國柏林。MES的主要客戶包括整車廠如戴姆勒、大眾、豐田和吉利等以及博世、西門子三星等行業(yè)供應(yīng)商。在汽車行業(yè)中,除少數(shù)幾家公司外,全球數(shù)十家頂尖制造商及供應(yīng)商均在他們的開發(fā)環(huán)境中使用MES的解決方案。為支持其全球客戶,MES已在美國和中國建立了子公司,并與全球分銷商網(wǎng)絡(luò)緊密合作。

MES的產(chǎn)品包括4種質(zhì)量工具軟件:MES Model Examiner?、MES Test Manager?、MES Model & Refactor?和MES Quality Commander?,它們共同構(gòu)成了一個工具鏈,全面保障基于模型的軟件開發(fā)過程中所有階段的質(zhì)量。通過MES Jenkins Plugin,該工具鏈也可以在持續(xù)集成環(huán)境中使用。工具鏈主要應(yīng)用平臺為MATLAB?Simulink?。除了MES質(zhì)量工具外,MES測試中心和MES學(xué)院的專家們還為全球客戶提供關(guān)于質(zhì)量保證和開發(fā)流程優(yōu)化的定制咨詢服務(wù)及培訓(xùn)課程。

MES是dSPACE公司的戰(zhàn)略合作伙伴和MathWorks及ETAS的產(chǎn)品合作伙伴。MES學(xué)院與SAE International有合作關(guān)系。

審核編輯 黃宇

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

    關(guān)注

    8

    文章

    5033

    瀏覽量

    126223
  • MES
    MES
    +關(guān)注

    關(guān)注

    5

    文章

    859

    瀏覽量

    29693
  • MBD
    MBD
    +關(guān)注

    關(guān)注

    0

    文章

    24

    瀏覽量

    8922
  • 云技術(shù)
    +關(guān)注

    關(guān)注

    1

    文章

    188

    瀏覽量

    18799
  • 汽車功能安全
    +關(guān)注

    關(guān)注

    0

    文章

    24

    瀏覽量

    1393
收藏 人收藏

    評論

    相關(guān)推薦

    基于模型的設(shè)計(MBD)的深入討論

    討論1:2016-6-14-基于模型的設(shè)計(MBD)_討論1主要論述了MBD的自動生成代碼的可用性,以及自動生成代買與手寫代碼的效率討論2:2016-6-14-基于模型的設(shè)計(MBD)_討論2深入介紹了基于模型的設(shè)計(
    發(fā)表于 06-14 18:30

    區(qū)塊不是泡沫 馬或?qū)?chuàng)造新的神話

    近日,在第二屆世界智能大會上,馬談到區(qū)塊時表示,他十分看好區(qū)塊,并且阿里巴巴必須要有區(qū)塊。因此,“區(qū)塊也成為了大會中的新熱詞”,會
    發(fā)表于 05-18 18:10

    阿里發(fā)布新版SaaS上工具包,全面助力SaaS上

    9月26日,在云棲大會SaaS加速器專場上,阿里發(fā)布了新版的SaaS上工具包(SaaS Launch Kit),發(fā)布了API網(wǎng)關(guān)的新功能,以及推出了全新升級的能力中心。SaaS上
    發(fā)表于 10-12 17:02

    簡化針對服務(wù)的語音檢測算法的部署

    驅(qū)動程序,用于與DBM10芯片進(jìn)行通信。SoC還具有跨平臺工具,該工具支持所有常用的人工智能(AI)和機器學(xué)習(xí)(ML)框架,以簡化算法部署
    發(fā)表于 03-03 10:46

    MBD設(shè)計模式

    機器人開發(fā)設(shè)計MBD設(shè)計模式(機器人開發(fā),控制系統(tǒng)開發(fā))掌握基于模型設(shè)計的六軸機械臂控制系統(tǒng)的開發(fā)方法掌握六軸機械臂的知識和控制器的軟硬件實現(xiàn)MBD設(shè)計模式(機器人開發(fā),控制系統(tǒng)開發(fā))MBD是一種
    發(fā)表于 06-28 12:29

    使用MBD進(jìn)行stm32開發(fā)

    MBD學(xué)習(xí)之路1——使用MBD進(jìn)行stm32開發(fā)準(zhǔn)備工作準(zhǔn)備工作
    發(fā)表于 08-17 07:55

    企業(yè)桌面要如何部署

    在前面文章中我們介紹了如何部署高校和普教桌面的方法,有用戶看到后就問,我們是企業(yè)用戶,想采用桌面來辦公的,企業(yè)桌面又要如何去部署的。今
    發(fā)表于 09-23 10:01

    什么是交叉編譯工具

    @LINUX# 嵌入式嵌入式LINUX交叉編譯工具前言一、什么是交叉編譯工具?二、ARM交叉編譯工具
    發(fā)表于 11-04 07:05

    為S12ZVMx安裝MBD工具箱,許可證錯誤是怎么回事?

    License Invalid。我檢查了MATLAB和toolbox的版本,也看了所有社區(qū)的方法,仍然無法解決問題。一些信息如下:1.Matlab版本為R2020a,MBD工具箱為S12ZVMx V1.4.0
    發(fā)表于 04-06 07:32

    如何在MBD中實現(xiàn)DAC?

    我正在使用 NXP S32k148 工具箱,我想在我想使用數(shù)模轉(zhuǎn)換器(即 DAC)的地方構(gòu)建模型。那么我可以在這里使用哪個工具箱?或者如何在 MBD 中實現(xiàn) DAC(數(shù)模轉(zhuǎn)換器)。
    發(fā)表于 04-07 12:50

    MBD模型設(shè)計的CAN通信步驟和方法

    本篇筆記主要記錄基于MBD模型設(shè)計的CAN通信步驟和方法。前期工具箱的安裝不在本文檔討論范圍內(nèi)。
    的頭像 發(fā)表于 01-20 12:00 ?1109次閱讀
    <b class='flag-5'>MBD</b>模型設(shè)計的CAN通信步驟和方法

    MBD模型設(shè)計的PWM輸出步驟和方法

    本篇筆記主要記錄基于MBD模型設(shè)計的PWM輸出步驟和方法。前期工具箱的安裝不在本文檔討論范圍內(nèi)。
    的頭像 發(fā)表于 01-20 14:48 ?1378次閱讀
    <b class='flag-5'>MBD</b>模型設(shè)計的PWM輸出步驟和方法

    基于MBD模型設(shè)計的CAN通信步驟和方法

    本篇筆記主要記錄基于MBD模型設(shè)計的CAN通信步驟和方法。前期工具箱的安裝不在本文檔討論范圍內(nèi)。
    的頭像 發(fā)表于 04-20 14:18 ?859次閱讀
    基于<b class='flag-5'>MBD</b>模型設(shè)計的CAN通信步驟和方法

    基于MBD模型設(shè)計的PWM輸出步驟和方法

    本篇筆記主要記錄基于MBD模型設(shè)計的PWM輸出步驟和方法。前期工具箱的安裝不在本文檔討論范圍內(nèi)。
    的頭像 發(fā)表于 04-20 14:19 ?962次閱讀
    基于<b class='flag-5'>MBD</b>模型設(shè)計的PWM輸出步驟和方法

    初識MBDMBD模型管理

    基于模型的設(shè)計( **Model-Based Design,MBD** )是一種圍繞模型搭建展開的一種項目開發(fā)方法。
    的頭像 發(fā)表于 07-13 09:16 ?1897次閱讀
    初識<b class='flag-5'>MBD</b>及<b class='flag-5'>MBD</b>模型管理