0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

自动驾驶汽车以太网数字孪生建模(二)

上海控安 来源:上海控安 作者:上海控安 2021-09-28 15:19 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

标注:本文来自本实验室杜兴华的研究成果。

2 构建车载以太网数字孪生模型客户端

2.1 AddEthernetType

在车载以太网数组孪生模型中,AddEthernetType 表示引入以太网的类型。本文中以太网类型为车载以太网。

在该模型中,引用 MDD 的Blocks 功能,将车载以太网加入到模型中,表示我们本次要做的仿真模型为车载以太网的模型。AddEthernetType 模型如图 2-1 所示。

o4YBAGCl2BiARURlAAAhBP_--oM100.jpg

图 2-1: AddEthernetType 模型

2.2 GetEthernetType

在车载以太网数字孪生模型中,GetEthernetType 可以识别引入的以太网的类型,从而建立通信。本文中以太网类型为车载以太网。

在该模型中,引用 MDD 的Blocks 功能,识别引入的车载以太网,与引入的车载以太网建立通信,从而建立 GetEthernetType 模型。GetEthernetType 如图 2-2 所示。

pIYBAGCl2BiAeS3QAAAsQWxs0ds156.png

图 2-2: GetEthernetType 模型

2.3 AddMAC

车载以太网数字孪生模型中,AddMAC 表示在引入以太网的 MAC 地址。

用长度为 255 的char 类型数组来表示 MAC 地址,引用 MDD 的Blocks 功能,引入以太网的 MAC 地址。模型见图 2-3。

o4YBAGCl2BmAccMOAAA6Y8L5tjU918.jpg

图 2-3: AddMAC 模型

2.4 GetMAC

车载以太网数字孪生模型中,GetMAC 表示得到以太网的 MAC 地址。

在该模型中,同样使用长度为 255 的 char 类型数组来表示 MAC 地址,引用 MDD的Blocks 功能,该模型可以在数据包中解析到 MAC 地址。GetMAC 模型如图 2-4 所示。

o4YBAGCl2BmAWxgIAAA2pAS34y0484.jpg

图 2-4: GetMAC 模型

2.5 Test01

在车载以太网数字孪生模型中,Test01 表示使用TCP/IP 协议、UDP 协议、MAC 协议等模拟出车载以太网的模型。

在该模型中,将TCP/IP 协议和 SerialPackger 块连接起来,建立车载以太网的网络, 车载以太网客户端彻底组建完成,待与后端建立网络连接之后,便可以进行车载以太网和车载网络之间的通信。Test01 模型如图 2-5 所示。

o4YBAGCl2BqAQ2I8AAAxzCiYcx8814.jpg

2-5: Test01 模型

3 建立车载以太网后端服务器

在本文的车载以太网数字孪生模型中,后端服务器用 python 代码实现,使用 python模拟 TCP/IP 服务器,输入和输出的数据形式为以太网第二层数据帧。

3.1 设置 HOST 地址和 MAC 地址

我们首先设置一个给车载以太网 HOST 地址和 MAC 地址,如图 3-1 所示。

pIYBAGCl2BqAd-JrAAAeI-x0t9I051.jpg

图 3-1: HOST 地址和 MAC 地址

3.2 设置以太网 IEEE 802.3 接口的全局定义

在车载以太网网址中定义 ETH_ALEN,占据八个字节,在车载以太网类型字段中定义 ETH_TLEN,占据八个字节,设置 ETH_DATA_LEN = 2,表示车载以太网报文有效载荷长度为 2,设置 ETH_FRAME_LEN = 1514,表示在 FCS 中的八位字节中最大值为 1514。代码如图 3-2 所示。

pIYBAGCl2BqABA5fAAAbkG3RjCM983.jpg

图 3-2: 车载以太网全局设置

3.3 以太网可联通性检查工具

可连通性测试可以让我们知道服务器访问互联网的状况。可连通性测试提供了一种可靠的方式,使外部来源检查以太网网络连接。当我们认为一切都正确配置,但无法测试连接时,该测试会提供即时反馈,让我们明白我们的配置是否可以真正进行外部访问。可连通性测试代码如图 3-3 所示。

o4YBAGCl2BqAQuJmAAA3IkyEUlw798.jpg

图 3-3: 以太网可联通性检查工具

3.4 生成一个随机的 MAC 地址及其原始字符

首先生成一个随机的 MAC 地址,让以太网服务器拥有物理地址。代码如图 3-4 所示。

o4YBAGCl2BuAGbNUAAAdhgso9wI094.jpg

图 3-4: MAC 地址随机生成函数

3.5 建立服务器与车载以太网模型的通信

首先服务器在端口上监听车载以太网模型发出的数据包,监听到数据包之后进行解析,并且获得通信目标的 MAC 地址。获得地址之后进行数据的偏移,检测获得目标的MAC 地址是否和机器的 MAC 地址一致,如果不一致,返回一条错误信息,如果一致, 则建立通信连接,在给目标发送数据包时需要交换源地址和目标地址。通信代码如图 3-5 所示。

pIYBAGCl2BuAeNVLAAAwUpfgwJY940.jpg

图 3-5: 建立通信

首先我们运行python 的服务器代码,让服务器处于监听状态,之后在 OpenModelica里面运行车载以太网的仿真模型,让两者建立通信,并且查看建模仿真结果。运行服务器代码结果如图 4-1 所示。

o4YBAGCl2BuALs1fAAAVVRCMhzY055.jpg

图 4-1: python 代码运行结果

由此图可以看出服务器正在监听,暂时还没有收到数据包。

接下来运行 OpenModelica 里面的车载以太网模型,结果如图 4-2 所示。

o4YBAGCl2ByAO4w_AAAouCzhgY4922.jpg

4-2: 模型运行结果

此时我们回看服务器运行结果,可以看到服务器与车载以太网模型已经建立通信连接。结果如图 4-3 所示。

pIYBAGCl2ByAfOOsAAAUCj3LDWQ617.jpg

图 4-3: 通信连接

编辑:jq

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • Mac
    Mac
    +关注

    关注

    0

    文章

    1133

    浏览量

    55710
  • 车载以太网
    +关注

    关注

    19

    文章

    275

    浏览量

    24171
  • TCP/IP
    +关注

    关注

    0

    文章

    15

    浏览量

    10892
收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    车载以太网,速度直指Tbps?

    要点总结:汽车以太网,特别是10BASE-T1S,正在成为车载网络中CAN的替代品,预计未来自动驾驶和联网汽车将拥有更高的速度。汽车领域向
    的头像 发表于 04-02 11:00 2409次阅读
    车载<b class='flag-5'>以太网</b>,速度直指Tbps?

    自动驾驶汽车如何完成超车?

    在我们日常开车时,别人想要超车,只要确认后方、旁边有没有车,打个灯、稍微加速、换个车道就完成了。这一动作乍一看非常简单,但对自动驾驶汽车来说,这个过程需要多方协调。 自动驾驶车辆要完成超车动作,必须
    的头像 发表于 02-16 17:37 1.7w次阅读
    <b class='flag-5'>自动驾驶</b><b class='flag-5'>汽车</b>如何完成超车?

    自动驾驶汽车如何实现自动驾驶

    人类驾驶员而言是非常直观且有效的指令,但对于自动驾驶汽车来说,则意味着需要一套极其复杂的感知、理解与决策链路。 自动驾驶如何看清文字? 自动驾驶
    的头像 发表于 02-10 08:50 915次阅读
    <b class='flag-5'>自动驾驶</b><b class='flag-5'>汽车</b>如何实现<b class='flag-5'>自动驾驶</b>

    2026年自动驾驶汽车发展趋势前瞻

    自动驾驶汽车会使用人工智能吗?答案是肯定的。人工智能(AI)是自动驾驶汽车运行的基石,它使车辆能够平稳、安全地在道路上正常行驶,适应实时交通状况,并做出瞬间的决策,确保道路交通安全,是
    的头像 发表于 02-05 09:38 4107次阅读
    2026年<b class='flag-5'>自动驾驶</b><b class='flag-5'>汽车</b>发展趋势前瞻

    车载以太网协议转换器操作教程# 车载以太网# 转换器# 硬件# 教程# 汽车# 技术# 操作

    车载以太网
    康谋自动驾驶
    发布于 :2026年01月28日 11:19:40

    车载以太网解决方案推荐:智能汽车网络升级的核心选择

    随着汽车智能化、网联化进程的加速,自动驾驶、车载信息娱乐、V2X通信等功能对车载网络的带宽、延迟和可靠性提出了前所未有的高要求。传统CAN/LIN总线因带宽有限、拓扑复杂等瓶颈,已难以支撑智能汽车
    的头像 发表于 01-23 17:05 911次阅读

    GL5450助力以太网记录解决方案

    01应用背景:以太网在智能汽车中的关键作用在汽车智能化、电动化与网联化持续演进的趋势下,以太网已逐步成为车载通信的核心骨干网络,广泛应用于自动驾驶
    的头像 发表于 01-14 10:02 531次阅读
    GL5450助力<b class='flag-5'>以太网</b>记录解决方案

    车载以太网高端数据记录模块GL5450解决方案

    汽车智能化、电动化与网联化持续演进的趋势下,以太网已逐步成为车载通信的核心骨干网络,广泛应用于自动驾驶域控制器、信息娱乐系统、摄像头视频传输以及V2X等高带宽场景。
    的头像 发表于 12-23 09:25 2979次阅读
    车载<b class='flag-5'>以太网</b>高端数据记录模块GL5450解决方案

    汽车自动驾驶的太阳光模拟应用研究

    测试装备,通过提供可控、可重复的测试环境,已成为汽车自动驾驶研发、验证与标定过程中不可或缺的核心工具。汽车自动驾驶的光挑战与测试需求luminbox
    的头像 发表于 12-10 18:04 646次阅读
    <b class='flag-5'>汽车</b><b class='flag-5'>自动驾驶</b>的太阳光模拟应用研究

    自动驾驶汽车如何确定自己的位置和所在车道?

    [首发于智驾最前沿微信公众号]我们平时开车时,判断自己在哪条路、哪个车道,只需要看一眼导航、扫几眼车道线、再听听提示就够了。但对自动驾驶汽车来说,这件事既简单又复杂。简单在于自动驾驶汽车
    的头像 发表于 11-18 09:03 1149次阅读
    <b class='flag-5'>自动驾驶</b><b class='flag-5'>汽车</b>如何确定自己的位置和所在车道?

    车载以太网技术的深度解析与核心应用

    汽车智能化浪潮下,传统CAN总线已难以支撑自动驾驶海量数据传输需求。本文深入解析车载以太网如何通过高带宽、低延迟特性突破这一瓶颈,重点剖析其在自动驾驶系统中的TSN实时传输、SOME
    的头像 发表于 09-03 09:57 6551次阅读
    车载<b class='flag-5'>以太网</b>技术的深度解析与核心应用

    如何确保自动驾驶汽车感知的准确性?

    [首发于智驾最前沿微信公众号]自动驾驶汽车想要自动驾驶,首先要做的就是能对周边环境实现精准感知,也就是能“看”清道路,那自动驾驶汽车如何在复
    的头像 发表于 08-23 15:06 1923次阅读
    如何确保<b class='flag-5'>自动驾驶</b><b class='flag-5'>汽车</b>感知的准确性?

    塑造自动驾驶汽车格局的核心技术

    自动驾驶汽车长期以来一直是科幻小说中的情节,但在如今的2025年,它似乎已经离我们越来越近,智能辅助驾驶已经出现在越来越多的新能源汽车中。但距离完全的
    的头像 发表于 08-21 16:03 1196次阅读

    自动驾驶汽车是如何准确定位的?

    [首发于智驾最前沿微信公众号]随着自动驾驶技术的快速发展,车辆的精准定位成为安全驾驶与路径规划的核心基础。相比于传统人类驾驶依赖路标和视觉判断,自动驾驶
    的头像 发表于 06-28 11:42 1608次阅读
    <b class='flag-5'>自动驾驶</b><b class='flag-5'>汽车</b>是如何准确定位的?