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

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

3天内不再提示

专业工程师的快速系统原型设计

星星科技指导员 来源:嵌入式计算设计 作者:Brandon Lewis 2022-08-15 15:40 次阅读

除了易于使用之外,像 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)、长生命周期和工业嵌入式应用程序的严格修订控制而设计的。

因此,如果您可以使用 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 载体

图 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、UARTI2C 等串行接口。但设置的真正美妙之处在于,实际 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 模块。

图 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。

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

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

图 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 美元。

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

因此,现在有一个面向专业工程师的原型设计解决方案,可以实现快速的硬件和软件设计迭代,使用可商业部署的技术,并且可以通过 FIRST Robotics 团队成员的每月津贴购买。

审核编辑:郭婷

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

    关注

    98

    文章

    14258

    浏览量

    136065
  • 适配器
    +关注

    关注

    8

    文章

    1928

    浏览量

    67878
  • Arduino
    +关注

    关注

    187

    文章

    6461

    浏览量

    186570
收藏 人收藏

    评论

    相关推荐

    FPGA算法工程师、逻辑工程师原型验证工程师有什么区别?

    的设计和实现。他们使用硬件描述语言(如 Verilog 或 VHDL)来编写代码,构建复杂的数字逻辑系统。工作包括模块的设计、功能的实现、时序的优化以及与其他硬件组件的接口设计等。 FPGA 原型验证工程师
    发表于 09-23 18:26

    寻求专业工程师帮助设计USB多口充电器

    嗨, 我正在开发一款USB多口充电器,现寻求一位专业工程师或产品设计的帮助。希望能够与有经验的工程师合作,共同完成产品设计。以下是我们的需求: 产品类型:USB多口充电器 基本设计要
    发表于 08-05 12:03

    正是拼的年纪|65岁电子工程师上班VLOG #65岁退休 #电子工程师 #搞笑 #上班vlog

    电子工程师
    安泰小课堂
    发布于 :2024年07月25日 11:31:02

    用二创,1:1复刻工程师的职场现状

    工程师
    扬兴科技
    发布于 :2024年07月19日 18:30:07

    嵌入式软件工程师如何提升自己?

    的发展打下坚实的基础。 2.掌握专业技能 除了基础知识外,嵌入式软件工程师还需要掌握专业的技能。这包括熟练掌握嵌入式系统的开发工具、硬件平台和软件开发流程。建议通过参加培训课程、实习经
    发表于 06-12 11:20

    嵌入式软件工程师和硬件工程师的区别?

    嵌入式软件工程师和硬件工程师的区别? 嵌入式软件工程师 嵌入式软件工程师是软件开发领域中的一种专业工程师
    发表于 05-16 11:00

    大厂电子工程师常见面试题#电子工程师 #硬件工程师 #电路知识 #面试题

    电子工程师电路
    安泰小课堂
    发布于 :2024年04月30日 17:33:15

    企业老工程师和高校老师有啥区别

    电子工程师硬件
    电子发烧友网官方
    发布于 :2024年02月28日 17:50:00