一区二区三区三上|欧美在线视频五区|国产午夜无码在线观看视频|亚洲国产裸体网站|无码成年人影视|亚洲AV亚洲AV|成人开心激情五月|欧美性爱内射视频|超碰人人干人人上|一区二区无码三区亚洲人区久久精品

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

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

CANoe仿真HTTP節(jié)點的實戰(zhàn)秘籍大公開

北匯信息POLELINK ? 2025-03-05 10:04 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群


作者 |archer
小編 | 不吃豬頭肉

2f615924-f966-11ef-9434-92fbcf53809c.png

背景

汽車電子系統(tǒng)測試中,CANoe作為主流的仿真測試工具,常需與云端服務器、第三方軟件或物聯(lián)網(wǎng)設備進行交互。隨著CANoe與外部軟件、服務器或設備交互越來越多,直接使用Socket進行通信往往不能滿足使用需求,依托于CANoe 的連接功能集(Connectivity Feature Set),以及Distributed Object(DO)功能,可以仿真HTTP節(jié)點,實現(xiàn)設備與服務器等之間的通信,保證數(shù)據(jù)處理的可靠性和便捷性。本文詳細解析如何利用CANoe搭建HTTP測試環(huán)境,并提供典型應用場景示例

2f762fc0-f966-11ef-9434-92fbcf53809c.png

HTTP通信模型HTTP全稱為HyperText Transfer Protocol(超文本傳輸協(xié)議),用于客戶端和服務器之間的通信,傳輸文本、圖片、視頻等資源。HTTP是在應用層上的協(xié)議,基于TCP/IP通信協(xié)議來傳輸數(shù)據(jù)。HTTP協(xié)議為無狀態(tài)協(xié)議,即服務器不保存客戶端的歷史請求信息,它的請求響應模型為客戶端發(fā)起請求 → 服務端返回響應。

2f84f3f2-f966-11ef-9434-92fbcf53809c.png

圖1 HTTP通信模型

HTTP 的請求-響應模型通常由以下幾個步驟組成:

建立連接:客戶端與服務器之間建立連接。在傳統(tǒng)的 HTTP 中,這是基于 TCP/IP 協(xié)議的。最近的 HTTP/2 和 HTTP/3 則使用了更先進的傳輸層協(xié)議,例如基于 TCP 的二進制協(xié)議(HTTP/2)或基于 UDP 的 QUIC 協(xié)議(HTTP/3)。

發(fā)送請求:客戶端向服務器發(fā)送請求,請求中包含要訪問的資源的 URL、請求方法(GET、POST、PUT、DELETE 等)、請求頭(例如,Accept、User-Agent)以及可選的請求體(對于 POST 或 PUT 請求)。

處理請求:服務器接收到請求后,根據(jù)請求中的信息找到相應的資源,執(zhí)行相應的處理操作。這可能涉及從數(shù)據(jù)庫中檢索數(shù)據(jù)、生成動態(tài)內容或者簡單地返回靜態(tài)文件。

發(fā)送響應:服務器將處理后的結果封裝在響應中,并將其發(fā)送回客戶端。響應包含狀態(tài)碼(用于指示請求的成功或失?。㈨憫^(例如,Content-Type、Content-Length)以及可選的響應體(例如,HTML 頁面、圖像數(shù)據(jù))。

關閉連接:在完成請求-響應周期后,客戶端和服務器之間的連接可以被關閉,除非使用了持久連接(如 HTTP/1.1 中的 keep-alive)。

HTTP常用的方法:

2f965a5c-f966-11ef-9434-92fbcf53809c.png2faaac32-f966-11ef-9434-92fbcf53809c.png

CANoe HTTP環(huán)境配置

CANoe中HTTP功能配置如下:進入Options→Extensions→Connectivity設置項,然后勾選HTTP Active選項框。注意:此配置需要連接CANoe license才可選擇。

2fc3512e-f966-11ef-9434-92fbcf53809c.png

圖2 CANoe HTTP功能配置

在使用HTTP進行數(shù)據(jù)交互之前,需要創(chuàng)建HTTP的vCDL數(shù)據(jù)庫文件,定義相關的IP、端口和方法,以及payload的數(shù)據(jù)結構。

創(chuàng)建vCDL數(shù)據(jù)庫流程

在Communicating Setup窗口中單擊“Open vCDL Editor”;參考Vector的help文檔,根據(jù)vCDL的語法(類C#),創(chuàng)建HTTP的接口、對象和數(shù)據(jù);根據(jù)HTTP的屬性值(communication setup中Objects 窗口),定義HTTP的屬性值;在communication setup窗口中,選擇import Data Source導入創(chuàng)建好的vCDL文件;

2fd6f6de-f966-11ef-9434-92fbcf53809c.png

圖3 HTTP vCDL數(shù)據(jù)庫開發(fā)界面

如圖3所示,HTTP vCDL數(shù)據(jù)庫部分參數(shù)說明如下:
[HTTPBinding::Host="http://127.0.0.1:9091"]:該行定義了第三方軟件的服務器地址與端口號,將接口方法的HTTP請求發(fā)送到該地址。[interface IClient5]:定義了一個接口名稱為IClient5。[HTTPBinding::Method=POST]:該行代碼是指HTTP的請求方法為POST,這里需注意,HTTP常用的請求方法還有GET,GET方法用于從服務器獲取資源,POST 方法用于向服務器提交數(shù)據(jù),通常會導致服務器狀態(tài)的改變,在測試的過程中,通常情況下使用CANoe進行測試,然后再由CANoe去調用第三方軟件運行,所以在這里使用POST方法。[HTTPBinding::path="getExecuteResult"]:該行代碼定義了HTTP的綁定路徑,在這個例子中,路徑被設置為"getExecuteResult"。這意味著當客戶端想要調用這個服務方法時,它需要在HTTP請求的URL中包含這個路徑。完整URL為 http://127.0.0.1:9091/getExecuteResult。[Binding="SerializationService"]:綁定名為 SerializationService 的服務,用于處理數(shù)據(jù)序列化。[Serialization="JSON"]:這部分指定了序列化和反序列化應該使用的具體格式。JSON是一種輕量級的數(shù)據(jù)交換格式,易于人閱讀和編寫,同時也易于機器解析和生成。它基于JavaScript的一個子集,但是JSON是獨立于語言的,很多編程語言都支持JSON格式。[SerializationService::Method=Serialize]:指定序列化服務使用的方法名為Serialize。consumed method Datatypes::Result_Response GetExecuteResult(gInput_Testend Input):該行定義了一個由客戶端調用名為getExecuteResult的方法,形參類型為gInput_getExecuteResult(該形參類型為用戶自定義)。方法的返回值為Datatypes::Result_Response類型。

2fe7fcc2-f966-11ef-9434-92fbcf53809c.png

使用場景介紹通過上面的配置,即完成了一個HTTP Client節(jié)點的仿真。要完成雙向通信,還需要一個Server節(jié)點。下面以python程序仿真的Server和后臺服務器的網(wǎng)頁顯示界面為例,舉例說明通信過程:1.場景一:CANoe與Python服務端交互

2ff23228-f966-11ef-9434-92fbcf53809c.png

圖4 CANoe和Python接口交互示例

步驟:

(1)Python服務端:使用requests/FaskAPI搭建HTTP Server,并封裝了/RunCase和/getExecuteResult接口;

(2)CANoe啟動測試:調用RunCase和getExecuteResult方法發(fā)送JSON請求體;

(3)服務端響應:執(zhí)行封裝好的接口,返回狀態(tài)碼和結果數(shù)據(jù);

(4)結果解析:CANoe Trace窗口自動解析HTTP的報文(如圖5)。

3001d61a-f966-11ef-9434-92fbcf53809c.png

圖5 CANoe Trace窗口HTTP數(shù)據(jù)解析

2.場景二:TBox自動化測試

真實服務器一般會有一個網(wǎng)頁顯示界面,方便測試人員手動的查詢后臺云端數(shù)據(jù)。所以可通過HTTP的接口訪問后臺數(shù)據(jù),很好應用于TBox的自動化測試。

30135610-f966-11ef-9434-92fbcf53809c.png

圖6 基于HTTP接口的TBox自動化測試

步驟:

(1)TBox與云端通信:通過4G/5G網(wǎng)絡上傳車輛狀態(tài)、接收遠控請求等指令;

(2)CANoe仿真客戶端:模擬手動下發(fā)網(wǎng)頁請求,讀取網(wǎng)頁數(shù)據(jù)等操作;

(3)自動化校驗:結合CAPL腳本自動判斷云端數(shù)據(jù)(如整車電源模式、門鎖狀態(tài)、車速等)是否符合預期;

3023bb40-f966-11ef-9434-92fbcf53809c.png

總結

本方案利用HTTP協(xié)議的技術特點,可以解決CANoe與其他軟件或者服務器直接交互問題。結合第三方測試工具封裝的測試接口,實現(xiàn) HTTP 通信的自動化測試,提高測試效率和覆蓋度。通過本文方案,可顯著提升CANoe在車聯(lián)網(wǎng)、座艙自動化等場景下的測試效率,構建高可靠性的分布式測試系統(tǒng)。北匯信息是一家專注于汽車電子測試領域的企業(yè),對網(wǎng)絡測試有著豐富經(jīng)驗,并可提供相關培訓、咨詢服務以及測試解決方案,幫助汽車制造商和零部件供應商確保其車載網(wǎng)絡的可靠性和安全性。如果需要具體的測試服務或了解更多信息,歡迎大家來聯(lián)系我們。注:文中部分圖片來源于Vector。

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

    關注

    52

    文章

    4253

    瀏覽量

    135530
  • HTTP
    +關注

    關注

    0

    文章

    523

    瀏覽量

    32602
  • CANoe
    +關注

    關注

    4

    文章

    74

    瀏覽量

    9138
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關推薦
    熱點推薦

    擰螺絲秘密大公開

    電工技術電工基礎
    jf_97106930
    發(fā)布于 :2022年08月10日 10:56:14

    CANoe仿真配置介紹-仿真節(jié)點與DBC添加-封面#CANoe #DBC添加

    CANoe
    北匯信息POLELINK
    發(fā)布于 :2022年12月17日 16:25:30

    CANoe仿真配置介紹-IG模塊#CANoe

    CANoe
    北匯信息POLELINK
    發(fā)布于 :2023年01月31日 12:27:26

    CANoe:網(wǎng)絡和ECU開發(fā)、測試和分析的專業(yè)工具

    規(guī)范/集成/回歸測試 仿真ECU的診斷功能 針對好的/壞的測試用例,訪問所有級別診斷通信(CAN報文,傳輸協(xié)議和診斷服務)的能力仿真和殘余總線仿真在使用CANoe開發(fā)分布式通信系統(tǒng)的過
    發(fā)表于 10-09 17:42

    基于CANoe總線系統(tǒng)實時調度的仿真

    基于CANoe總線系統(tǒng)實時調度的仿真
    發(fā)表于 01-24 17:21 ?22次下載

    CANOE教程之CANOE的使用手冊免費下載

    本文檔的主要內容詳細介紹的是CANOE教程之CANOE的使用手冊免費下載1 CANoe是進行網(wǎng)絡和ECU開發(fā)、測試和分析的全面工具,支持總線網(wǎng)絡開發(fā)從需求分析到系統(tǒng)實現(xiàn)的全過程,包括模型創(chuàng)建、
    發(fā)表于 11-07 08:00 ?263次下載
    <b class='flag-5'>CANOE</b>教程之<b class='flag-5'>CANOE</b>的使用手冊免費下載

    【工程師小貼士】二維三維傳感器開發(fā)大不同?細小電阻值測量法大公開

    【工程師小貼士】二維三維傳感器開發(fā)大不同?細小電阻值測量法大公開
    的頭像 發(fā)表于 07-12 16:17 ?2210次閱讀

    【工程師小貼士】二維三維傳感器開發(fā)大不同?低阻值四線測量法大公開

    【工程師小貼士】二維三維傳感器開發(fā)大不同?低阻值四線測量法大公開
    的頭像 發(fā)表于 07-12 16:17 ?2456次閱讀

    職場人減壓秘籍大公開

    圖片來源:Aki白薇薇 當代職場人像是一個氣球,而氣球中的氣體正如壓在他們身上的工作,領導和客戶則是向氣球中注入氣體的打氣筒,氣球放氣的速度永遠趕不上注入氣體的速度。職場人的氣球就這樣慢慢的達到了極限,好像輕輕一碰就會爆炸。 工作量超負荷是當代職場人都會遇到的問題,由于三大幫兇熬不完的夜、操不完的心、做不完的表,導致當代職場人越來越累。你與正常的生活方式越走越遠,工作似乎占據(jù)了你生活的全部。如果你正處于這種狀態(tài)之中
    發(fā)表于 07-04 21:26 ?510次閱讀

    華為的網(wǎng)絡AI領域10大公開數(shù)據(jù)集是哪些

    在華為開發(fā)者大會HDC.Cloud 3月20號直播間,華為網(wǎng)絡人工智能數(shù)據(jù)湖專家周堯,向開發(fā)者們正式發(fā)布了網(wǎng)絡AI領域10大公開數(shù)據(jù)集,解決了網(wǎng)絡AI開發(fā)缺乏工業(yè)級數(shù)據(jù)的難題。
    的頭像 發(fā)表于 03-21 10:53 ?4500次閱讀

    2022微信公開課小程序AR應用大公開!

    在剛剛過去的1月6日,微信公開課于廣州正式開講。今年的公開課以「入微」為主題,預示微信邁進產(chǎn)品打磨入微、行業(yè)創(chuàng)新入微、服務場景入微的新階段。 公開課從小程序、視頻號、搜一搜、企業(yè)微信等生態(tài)產(chǎn)品及其
    發(fā)表于 01-13 15:13 ?1382次閱讀
    2022微信<b class='flag-5'>公開</b>課小程序AR應用<b class='flag-5'>大公開</b>!

    淺談CANoe實現(xiàn)SOA仿真測試

    本文介紹怎么通過我們CANoe工具去實現(xiàn)SOA的相關功能。CANoe Communication Setup功能為實現(xiàn)SOA模型的交互和模型測試提供了全新的接口。用戶可以通過CANoe更加靈活地實現(xiàn)面向服務架構的
    的頭像 發(fā)表于 08-01 14:17 ?2232次閱讀
    淺談<b class='flag-5'>CANoe</b>實現(xiàn)SOA<b class='flag-5'>仿真</b>測試

    CANoe進階功能:Multi CANoe

    本文介紹CANoe的進階功能:Multi CANoe,適用于ECU聯(lián)合仿真,簡化多設備聯(lián)調。
    的頭像 發(fā)表于 08-04 14:41 ?2453次閱讀
    <b class='flag-5'>CANoe</b>進階功能:Multi <b class='flag-5'>CANoe</b>

    CANoe集成解決方案

    本文介紹CANoe集成解決方案,搭配測試管理平臺,實現(xiàn)測試項目的集中管理。用于監(jiān)控管理CANoe工程,采集、仿真CANoe報文數(shù)據(jù)等。
    的頭像 發(fā)表于 08-04 14:49 ?1286次閱讀
    <b class='flag-5'>CANoe</b>集成解決方案

    氣密性能檢測你需要知道這些,主流的5種密封性測試原理詳細拆解

    氣密性檢測原理大公開,測試方法你知道幾種
    的頭像 發(fā)表于 10-25 17:15 ?3801次閱讀
    氣密性能檢測你需要知道這些,主流的5種密封性測試原理詳細拆解