基于Raspberry Pi的快速系统原型设计

描述

Arduino 和 Raspberry Pi 没有为商业产品中的电子硬件提供足够的模拟。专业工程师需要工业级原型设计解决方案。他们需要一个“工业 Pi”。

除了易于使用之外,像 Arduino 和 Raspberry Pi 这样的快速原型制作平台的最大优点是它们的成本极低。除非你是专业工程师。

所谓的“创客板”最初是为大型 STEM 教育环境设计的,因此必须尽可能便宜。结果,它们集成了许多不适合商业部署的电子元件。换句话说,它们很便宜。

尽管出于显而易见的原因,快速原型设计的概念对工业设计师很有吸引力,但 Arduino 和 Raspberry Pi 级设备通常无法为将在其成品中使用的电子硬件提供足够的模拟。这些开发人员需要更多的工业级原型设计平台,这些平台仍然允许他们快速完成设计迭代。

为什么不使用计算机模块 (COM)?

为什么不使用 COM 进行工业原型设计?

COM 架构在 2000 年代末和 2010 年代初在工业、商业、医疗和运输行业中流行起来,作为延长电子系统部署寿命的一种方式。他们通过两板架构实现了这一点:

首先,包含系统可能需要的所有 I/O 和接口的特定应用载板将被设计成一台机器。

然后,在载体顶部插入一个计算模块,以提供最终应用程序使用的处理、内存和 I/O 控制器。

为确保设计相隔数年或可能数十年的电路板之间的兼容性,开放 COM 标准指定了在模块和载体之间传输信号的连接器。迄今为止,这些行业标准中最成功的是 PICMG 的 COM Express、Qseven 和SGET SMARC。

这种架构的好处是它可以防止硬件过时。例如,如果一台机器需要运行比最初设计的更强大、更复杂的软件堆栈,工程师可以简单地将现有的计算模块换成具有更高计算机和内存性能的计算模块。承运人保持不变,系统中的其他一切也一样。

例如,像LEC-PX30之类的 SMARC 模块本身就是为满足苛刻的平均故障间隔时间 (MTBF)、长生命周期和工业嵌入式应用程序的严格修订控制而设计的(图 1)。

python

图 1.像 ADLINK LEC-PX30 这样的 SMARC 计算模块专为工业用例而设计,包括边缘连接器等坚固的组件,以实现高平均故障间隔时间和长生命周期,同时保持严格的修订控制

因此,如果您可以使用 COM 将部署的系统从 A 点带到 B 点,为什么不使用 COM 将设计从原型设计到生产?嗯,COM 传统上并没有被用作原型平台,因为:

为了优化设计的性能、尺寸和成本,系统集成商或最终用户通常会设计自己的特定应用载板。这可能很耗时。

从一个目标优化软件到下一个目标可能是劳动密集型的,因此专业开发人员通常希望在实施生产质量软件之前确定最终硬件。

工业级 COM 只是比业余爱好者的替代品更昂贵,但它们通常不提供与创客板相同的即插即用功能。

快速原型板和工业级 COM 之间的中间地带是什么?

工业 Raspberry Pi或“I-Pi 。

工业 Pi 的构建块

凌华科技最近推出了工业物联网原型平台I-Pi,让专业工程师可以使用基于 COM 的平台快速验证他们的设计。

该套件由上述LEC-PX30 SMARC 模块组成;简化的现成 SMARC 载板;以及类似于 Raspberry Pi 生态系统中使用的硬件连接顶部 (HAT),可将 DSI 信号转换为 HDMI(图 3)。HAT 通过 40 针扩展接头插入 I-Pi 载体,而 LEC-PX30 模块通过 SMARC 2.1 MXM 3.0 连接器连接到 I-Pi 载体

python

图 3. SMARC 2.1 规范中使用的 MXM 3.0 连接器在 SMARC 计算模块和载板之间传输大量信号,最终有助于简化整个系统设计

如图 3 所示,MXM 连接器在 I-Pi 载体和模块之间承载各种信号,连接两个 10/100 Mbps LAN、四个 USB 2.0 端口和一个 USB 2.0 OTG 端口、四通道 MIPI DSI、两个通道 MIPI CSI,以及 CAN、SPI、UART 和 I2C 等串行接口。但设置的真正美妙之处在于,实际 I-PI 基板上唯一的高速信号是 PCI Express 和 HDMI。

当然,在原型设计阶段完成后,这些信号可以在优化的特定应用载板上进行更改。但是将更复杂的走线限制为仅 PCI Express 和 HDMI 会降低 I-Pi 的复杂性并增加工程师的易用性。事实上,每个模块都包含 PCI 去耦电容和锁,因此工程师在更改硬件配置时所要做的就是确保处理器板和载卡之间的走线对齐。

这使得在原型制作过程中将具有一组接口和性能的 SMARC 模块换成另一组接口和性能变得轻而易举。

例如,LEC-PX30 基于Rockchip PX30片上系统,包括四核 Arm Cortex-A35 CPU 和安全扩展(图 4)。该板还配备了 2 GB 内存和 Microchip 的 ATT ECC608A 加密认证芯片。但是,I-Pi 载体支持具有与顶级英特尔 Apollo Lake 处理器一样先进的处理器的 SMARC 模块。

python

图 4. Rockchip PX30 SoC 包含一个四核 Arm Cortex-A35 CPU 和 Mali G31 GPU,以及用于通用工业应用的大量多媒体、安全和连接模块

这将我们带到了软件上。在大多数情况下,在不同的计算模块之间进行转换,更不用说具有不同处理器架构的计算模块,例如基于 Arm 的 Rockchip PX30 和基于 x86 的 Intel Atom 处理器,这意味着原型设计过程要重新开始。然而,鉴于 I-Pi 平台广泛的硬件灵活性,凌华科技通过为其所有 SMARC 模块配备MRAA 功能来解决这个问题(图 5)。

图 5. MRAA 硬件抽象层 (HAL) 是一个具有 Java、JavaScript 和 Python 集成的 C/C++ 库,允许用户轻松地将软件从一个硬件平台移植到另一个硬件平台,例如不同的 SMARC 计算模块(来源:Eclipse UPM )。

MRAA 是最初由英特尔开发的开源硬件抽象层 (HAL)。它是一个包含 Java/JavaScript 和 Python 集成的 C/C++ 驱动程序和 API 库,允许开发人员无缝集成新的硬件组件,而无需修改任何代码。因此,工程师可以简单地用一个 SMARC 模块替换另一个,即使一个支持瑞芯微 PX30 而另一个托管 NXP i.MX8M SoC;他们可以添加他们需要的任何传感器 HAT;他们甚至可以将 Raspberry Pi 或 Arduino 环境中的软件移植到他们的 I-Pi COM,而无需对其进行重新加工。

MRAA 可以通过 Github 下载,也可以通过 MRAA 扩展的有用包和模块折叠到 Eclipse IDE 中。它可以使用英特尔 Apollo Lake 平台和 Docker 容器等模拟平台以及标准和嵌入式 Linux 发行版在 Windows 环境中运行。

I-Pi 本身支持Android、Ubuntu、Debian和Yocto。

python

图 6.所有凌华科技 SMARC 模块都集成了 MRAA 硬件抽象层 (HAL),以实现从一个目标到另一个目标的无缝软件可移植性,即使该代码是在 Arduino 或 Raspberry Pi 编程环境中开发的

与 I-Pi 平台兼容的其他开源软件组件包括 ADLINK 的部分 Vortex 数据分发服务 (DDS) 网络中间件,这是一个发布/订阅软件框架,允许物联网工程师以安全、可扩展、容错的方式连接他们的设备和确定性的方式。

python

图 7. ADLINK Vortex 数据分发服务 (DDS) 中间件是一种网络抽象软件,它以发布/订阅格式可靠、确定性和安全地传输消息

以 Pi 级风险加速工业原型制作

从硬件和软件的角度来看,I-Pi 的模块化方法使其尽可能接近 Arduino 或 Raspberry Pi 的开箱即用用户体验。那就只剩下成本问题了。

如前所述,工业级组件本质上比用于制造板的技术更昂贵。毕竟,I-Pi COM 支持高达 -20ºC 至 +85ºC 的工作温度范围,以及符合 IEC 60068-2-27/64 和 MIL-STD-202 F 的冲击和振动容限。对于接近生产的客户,凌华科技还将 USB 和 PCI 开关集成到他们的 SMARC 模块中,这提高了这些模块的价格。而且,当然,您必须考虑到 I-Pi 实际上是三个工业板封装在一个套件中。

尽管如此,该套件的零售价仅为 125 美元,或包括蓝牙/Wi-Fi 加密狗的 136 美元。为此,您将获得 I-Pi 载板、LEC-PX30 SMARC 模块、DSI 转 HDMI HAT、32 GB SD 卡、Micro USB 电缆和电源适配器。散热器/散热器也可提供,起价约为 15 美元。

对于为可商业部署的产品寻找快速原型解决方案的专业工程师来说,这一点也不差。

审核编辑:郭婷

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

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分