软硬件交互

连接OBD实时读取汽车信号构建车载交互新体验

学习如何使用 ProtoPie 车载交互解决方案,利用实时车辆数据创建全新的车载交互体验。

Tony Kim, CEO & Co-Founder

August 9, 2023

连接OBD实时读取汽车信号构建车载交互新体验
汽车行业正在迅速发展。20年前,一辆普通汽车中包含大约100万行代码,而如今这个数字已经增长到约1亿行代码。如今,“车载体验”这个术语不仅涉及汽车的信息娱乐系统,也包括驾驶车辆的实际感受。
事实上,研究甚至表明,驾驶员希望他们的汽车提供与智能手机相同的娱乐和通信功能。对于用户体验设计师来说,结论是明确的:优化车载体验现在既是数字化的努力,也是物理的努力。
因此,汽车设计师在设计车载体验时,需要使用真实的车辆数据作为输入。这不是一个选项,而是必需的。这就是我们创建了 ProtoPie 车载交互解决方案原因。

ProtoPie如何帮助汽车公司使用实时的车载数据

ProtoPie 车载交互解决方案允许汽车公司在多个显示器上构建和测试原型,并与任何硬件和 API 进行集成。
潜在的用例非常广泛,我们不断地被客户使用ProtoPie 车载交互解决方案所创造的成果所打动和惊讶。最近,我们的一位德国客户向展示了他们如何使用 ProtoPie 来测试全新的交互设计概念,这些概念与真实的汽车相结合,并使用来自这些车辆的实时数据。
由于保密原因,我们无法公开分享这个具体的用例,但我们想到了一个好的方式。决定接受这个挑战,创建一个示例,展示如何利用来自汽车的实时数据来测试交互设计概念,正如下面的视频。
该演示展示了数字仪表板原型如何接收,并使用汽车的实时数据来测试其提供的车载体验。然而,这只是 ProtoPie 汽车解决方案可以实现的冰山一角。汽车的每个部件都在不断地发送和接收信号,作为一个不在该行业工作的人,我甚至不知道从何处开始。
但是当我进一步研究时,我发现了一个叫做 OBD 的东西。

什么是OBD?它是如何用于设计和测试车载体验的?

OBD,即车载诊断系统(On-Board Diagnostics ),是一种基于计算机的系统,用于跟踪汽车的各种子系统的状态。它可以用于调查汽车性能方面的任何问题,因此基本上可以看作是您车辆的内置自我诊断系统。
我利用了我的汽车的 OBD 系统来接收汽车的实时数据/信号。虽然还有其他 OBD 系统,但 OBD2 是目前几乎所有新车中最常见的一个,包括我的车型在内。

能从OBD2获得哪些数据?

可以通过简单地查看 OBD2 PIDs 或车载诊断参数 IDs 来了解,这些基本上是用于请求车辆数据的代码。以下是一些示例,或者您也可以查看此链接 以获取更全面的列表。
1

如何访问这些数据?

要获取 OBD 数据,首先需要一个 OBD 扫描仪 。我购买了一个名为 OBDLink MX+ 的蓝牙 OBD 扫描仪,用于接收汽车本身的实时信号。安装非常简单,只需将扫描仪插入 OBD2 接口即可。然后,它将通过蓝牙连接将信号传送到您的笔记本电脑上。
2
OBDLink MX+ 购买链接:OBDLInk

如何使用 OBD2 和 OBD2 扫描仪数据测试设计

要在自己的设计上测试这些数据,首先需要使用 ProtoPie Connect桥接应用将设计或原型与OBD2 扫描仪连接起来。ProtoPie Connect 将您的原型(在本例中为 iPad 上的仪表板)与 OBD2 扫描仪连接起来。但要与 ProtoPie Connect 进行通信,需要支持 Socket.IO ,这就是桥接应用发挥作用的地方。
点击此链接 查看专门为 OBD2 扫描仪创建的桥接应用。您还可以自己修改桥接应用的代码,使其适用于您想连接的任何硬件设备。下图显示了此过程的工作原理。
3
因此,包括汽车和 OBD 扫描仪在内的整个四步流程如下所示:
4
  1. 汽车通过 OBD2 端口向 OBD 扫描仪发送各种信号。
5
2. OBD 扫描仪将这些信号传递给正在运行 ProtoPie Connect 的笔记本电脑。 
6
3. 然后,需要一个桥接应用 来解释 OBD 信号,并确保ProtoPie Connect能够理解这些信号。
4. 通过无线连接将 ProtoPie Player 与笔记本电脑配对。在这个演示中,我使用了我的 iPhone 将 MacBook(ProtoPie Connect)与 iPad(ProtoPie Player)进行了连接。

原型是如何创建的?

现在我们已经介绍了整体设置的一些基础知识,让我们深入了解原型的细节。
简而言之,我想创建一个根据车速旋转的仪表指针。
当汽车行驶时,它通过 OBD2 接口发送一系列从0到255(尽管跑车可能会得到更高的值)不断变化的数字。然后,桥接应用程序解释这些信号,以便 ProtoPie Connect 能够理解它们,然后将它们传送给 ProtoPie Player。
7
ProtoPie Connect正在接收车速值。
如上所示,ProtoPie Connect 正在接收名为“OD”的消息,其值从0到255不等。桥接应用能够解释从 OBD 表中获取的 XX 信号,并且如果需要,您可以编辑桥接应用以获取更多信号。太棒了!现在,让我们确保 Pie 文件(原型)能够理解这些信号,以便在交互中使用。
8
在「接收」触发中为变量赋值
在添加「接收」触发后,需要在信息中输入“OD”,并勾“选赋值给变量”。选择之前创建的变量来分配这些值。
9
在「旋转」反应中使用变量
最后,在「旋转」反应中选择“旋转至”并使用该变量来旋转仪表指针。现在您已经准备就绪!在这个原型中,信号从真实的汽车流向 ProtoPie Player。
进入 Tony 的原型并亲自尝试吧。

为连续或相反的动态环境制作原型

对于如何发送动态值感到困惑吗?别担心,让我们深入了解如何使用桥接功能 制作涉及多个设备的交互。
这其实很简单。「发送」反应和「接收」触发可以通过发送和接收消息来相互交流。如果想要发送动态值,可以选择“同时发送数据”选项。
10
就是这样!
勾选“同时发送数据”发送动态值

车载交互原型设计的未来

汽车设计师能够使用真实的车辆数据测试其设计是至关重要的。借助 ProtoPie,这一过程变得简化和可行。它允许您通过与实际车辆集成来测试您的设计,这意味着可以直接使用 CAN/LIN 总线或 OBD 的车内数据进行原型设计。现在,您可以利用仪表盘、灯光、扬声器、显示屏等体验更广泛的汽车原型设计功能。
如果您对 ProtoPie 车载解决方案感兴趣或希望安排演示会议,请随时与我们联系。