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

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

3天内不再提示

树莓派 Pico 也能支持强大且可靠的自动化测试!

上海晶珩电子科技有限公司 2025-03-25 09:48 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

Britvic拥有的Aqua Libra Co的可持续性计划依赖于强大、可靠的分配设备。Green Custard设计了一个测试解决方案,利用Raspberry Pi Pico的灵活性,提供难以通过其他方式实现的严格测试。

解决方案Raspberry Pi Pico
企业规模中小企业
行业‍‍测试、传感和控制

根据其“健康人,健康星球”的使命,英国饮料巨头Britvic旗下的Aqua Libra Co正在努力实现工作场所和零售饮料分配的可持续未来。该公司与亚马逊网络服务(AWS)和总部位于剑桥的专业服务公司Green Custard合作开发了Aqua Libra Flavour Tap,通过将饮料直接输送到可重复使用的容器中,消除了对一次性包装的需求。水龙头可以分配静水或气泡水和各种口味。

水龙头内有几个控制系统,其中一个系统对用户输入做出反应,并将风味墨盒信息传递给AWS。另一个直接控制分配,在精确控制的时间内切换阀门和螺线管,以及驱动泵,以获得特定饮料配方的确切风味量。作为Green Custard帮助开发水龙头工作的一部分,需要一个测试在分配控制板上运行的软件和硬件的解决方案。


挑战

在整个开发和部署过程中,寻找漏洞的成本呈指数级增长。几项研究揭示了解决错误的成本,从早期更改需求的100美元到软件部署后修复的数万美元不等。复制在现场看到的间歇性错误可能非常困难,除非可以观察到该错误,否则它很可能被标记为“无法重现”并被忽略。

审查代码可以发现可能表现为错误的实现错误,但测试是现代软件开发的基石。它有多种形式,包括单元测试、集成测试等。测试在嵌入式系统上运行的软件可能特别困难,因为被测设备通常需要来自外部传感器的输入,这些传感器提供随着时间的推移而变化的信号。解决方案是模拟这些外部信号,这允许嵌入式软件像在完整系统中运行一样运行,而不仅仅是一个孤立的测试设置。

可以使用一种称为硬件在环(HIL)的技术来模拟输入。使用HIL,传感器输入可以自动生成,无需用户交互。这有助于测试软件在不同条件下的行为。

Aqua Libra分配控制器由运行实时操作系统的微控制器组成,用于监测重量和流体流动,以及驱动步进电机和机电阀。手动测试需要将容器放在重量测量设备上,以便进行分配。需要监控随后的阀门开关和泵活动,以确认预期的饮料是否已分配。与此同时,需要通过生成一系列脉冲来模拟液体的流动,就像电子流量传感器产生的脉冲一样。


解决方案

Raspberry Pi Pico基于Raspberry Pi的RP2040微控制器,并具有对HIL测试非常有用的外围设备。在Aqua Libra分配控制器的测试工具中,可编程输入/输出(PIO)块用于生成非常快的串行数据,就像来自24位ADC一样,以模拟应变片。ADC输出可以任意设置,并触发被测系统上的事件。PIO还用于模拟流量传感器的输出,模拟输出与真实硬件的输出无法区分。测试中的单元驱动许多步进电机,PIO用于读取两相电机驱动输出,通过光耦合器调节。这种方法可以测量应用于电机的每一步,即使步进速率在kHz范围内。它为低成本的测试工具提供了前所未有的仪器水平。

同样,随着测试的进行,螺线管和阀门状态也会受到监控。RP2040包含两个PIO块,单个步进通道使用单个PIO的所有程序。因此,有必要对多个RP2040进行菊花链,以便能够监控被测电路板的所有I/O。这需要一种新颖的串行通信技术,该技术可以解决测试开始时要配置的唯一电路板或所有电路板,并在测试期间尽可能快地恢复数据。被测单元的I/O状态以20Hz采样,收集的数据与唯一的测试标识符一起写入时间序列数据库。测试后,可以使用Grafana绘制收集的数据,仪表板配置为表示逻辑分析器。这对硬件和机械团队的系统开发非常有用。

数据库也可以被查询,根据测试的类型,数据可能会被处理以表示通过或失败条件。整个系统是完全自动化的,可以运行数千个独立的测试,而无需人工交互。在RP2040上运行的软件对每个测试节点都是相同的,GPIO通过跳线使用,以提供唯一的节点标识,RP2040应用程序在运行时读取。这定制了节点功能,为该节点加载PIO程序,并意味着只需要维护单个图像。

设计和制造了一个PCB,节点0上的Raspberry Pi Pico作为主控制器,可以选择连接多个节点以提供更多的输入监控。

42121b48-091b-11f0-9434-92fbcf53809c.png

树莓派 Pico 安装在电路板中心的顶部;I/O位于板的外围

为什么是树莓派?

Raspberry Pi Pico作为这种测试的基础很有吸引力,原因有几个:

成本:整个 PCB 板,包括板载电源供应和闪存存储,成本低于 4 英镑。这很有利,因为可以为不同的现场制作多个测试设置,如果在开发过程中 Pico 损坏,也不会造成太大损失。

外形:Pico使用40针DIL接头,可以直接焊接到PCB上或使用低剖面转换接头,便于更换。

PIO:Green Custard报道,PIO (可编程 I/O)是一个出色的设计理念,并给予了极大的灵活性,以至于它的实用性怎么强调都不为过”。

生态系统:整个Raspberry Pi生态系统——从博客文章到GitHub repos、YouTube教程和Raspberry Pi论坛——提供了许多有用的信息,大大减少了开发时间。

可获性:即使在全球芯片短缺期间,Raspberry Pi Pico 仍然保持现货供应,因此可以放心下订单。

4235cf2a-091b-11f0-9434-92fbcf53809c.jpg

正在测试的电路板在中间,基于Pico的HIL电路板在左右

“可编程I/O(PIO)是Raspberry Pi Pico的一个令人难以置信的灵活功能。它允许开发在没有完整 FPGA 实现的情况下也能实现的硬件接口。PIO提供的零件成本和电力使Pico成为引人注目的选择。SDK有据可查,随附的GitHub回购协议中有许多有用的代码示例。Pico是我首选的低成本、低批量开发的部分。我对HIL测试框架感到满意。这让我相信,对在目标硬件上运行的软件所做的任何更改都没有引入任何回归,并且按预期运行。”

结果

HIL测试工具提供的灵活性允许在自动化环境中运行许多分配配方的组合。一次测试可以要求数千个分配器,这些分配需要几个小时才能完成,检查每个泵步骤和阀门打开和关闭周期。这几乎不可能手动完成。然后,测试结果可以被视为基于文本的结果,最终是通过或失败条件,也可以被视为类似于逻辑分析器的图形显示。

在Green Custard的系统中,测试结果被转换为记录,并批量写入Influx时间序列数据库的实例。测试输入JSON文件包含用于确定测试是否通过的指标。Python脚本解析JSON文件,提取该测试的相关指标,并存储它们可供使用。测试完成后,会查询Influx数据库,并可以检查特定功能;例如,泵电机的步数,或阀门打开时间和持续时间达到毫秒的精度。

425bedd6-091b-11f0-9434-92fbcf53809c.png成功的测试用例427d660a-091b-11f0-9434-92fbcf53809c.png测试失败;控制器 1 超出公差范围

第二个图形显示数据的方式由开源数据分析和可视化平台Grafana提供。这种观点允许不参与软件开发的团队——例如,开发口味的人和液体专家——使用测试数据来确定切换时间和序列是否符合预期。例如,下图显示了在分配四杯单独饮料期间按顺序生成的三个不同的图表。顶部图表显示分配进度周围的数据;中间图表显示与分配相关的更多数据,这些数据随时间而变化;底部图表显示水龙头内控制元素的打开和关闭。

429da3b6-091b-11f0-9434-92fbcf53809c.png

Grafana 仪表板显示系统状态;数据描述已被模糊处理

这种详细程度,加上能够测试许多输入条件的能力,使其成为一个功能强大的测试工具。

在这个应用程序中,Raspberry Pi Pico使Green Custard能够提供低成本的解决方案来模拟不同类型的传感器,并测量由此产生的输出变化。可以实时监控不同组件的状态,并将收集的数据写入时间序列数据库。最后,至关重要的是,数据可以绘制在仪表板上,以便进一步分析。整个过程是自动化的,无需人工交互即可运行数千次测试。

Green Custard的Hardware-in-the-Loop系统支持测试用例,这些测试用例注入了在真实系统上重新创建非常困难甚至完全无法实现的故障条件,从而可以评估被测软件的鲁棒性。

如果没有Raspberry Pi Pico,识别可能影响现场性能的间歇性错误将非常困难(如果不是不可能的话)。使用Hardware-in-the-Loop,Britvic可以确信Aqua Libra Co Flavour Tap将按预期运行。

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

    关注

    0

    文章

    277

    浏览量

    27865
  • Pico
    +关注

    关注

    0

    文章

    189

    浏览量

    18729
  • 树莓派
    +关注

    关注

    122

    文章

    2086

    浏览量

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

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    通用自动化测试系统:FCT、ATE、ICT、PCBA功能测试

    管理软件,旨在为电子行业提供灵活、高效的测试流程管理。支持多种测试场景,包括 FCT 测试、ATE 测试、ICT
    发表于 04-13 14:54

    ATE测试是什么?电源企业为什么必须上自动化测试

    在电源行业快速发展的年代,产品质量、生产效率与成本控制成为企业竞争的关键。很多电源厂家都在关注ATE 测试,但不少人仍不清楚 ATE测试是什么,不明白自动化
    的头像 发表于 03-24 14:37 487次阅读
    ATE<b class='flag-5'>测试</b>是什么?电源企业为什么必须上<b class='flag-5'>自动化</b><b class='flag-5'>测试</b>?

    树莓5还是香橙5 Pro?两款热门开发板的详细对比

    完善的社区支持和成熟的软件生态,预算允许,树莓5会是比较省心的选择;如果更看重硬件配置和扩展性,愿意花一些时间自己研究解决问题,香橙
    发表于 03-04 19:29

    电源模块的短路保护如何通过自动化测试软件完成测试

    在当今电力电子领域,电源模块的可靠性至关重要,短路保护作为其关键特性,需通过精确的自动化测试软件进行验证。本文将整理如何借助自动化测试软件A
    的头像 发表于 09-03 19:10 1114次阅读
    电源模块的短路保护如何通过<b class='flag-5'>自动化</b><b class='flag-5'>测试</b>软件完成<b class='flag-5'>测试</b>

    EasyGo TestSim:新能源电力系统自动化测试的利器

    。 EasyGo TestSim 仿真自动化测试软件为新能源电力系统的测试提供了一个高效、可靠的解决方案。它不仅简化了测试流程,还提高了
    发表于 09-03 18:35

    树莓Pico上运用不同的并行手段

    树莓Pico由RP2040微控制器驱动,其上搭载两个CPU核,这让它非常适合探索并行计算。本文通过真实的数字信号处理样例来说明从双核架构中提取最大价值的方法和考量。
    的头像 发表于 08-29 09:51 4259次阅读
    在<b class='flag-5'>树莓</b><b class='flag-5'>派</b><b class='flag-5'>Pico</b>上运用不同的并行<b class='flag-5'>化</b>手段

    树莓操作系统:版本、特性及设置完整指南!

    桌面环境的版本和轻量级、仅用于命令行的最小安装版本。该操作系统设计高效资源友好,是树莓设备的理想选择。树莓操作系统的优势√轻量高效该操
    的头像 发表于 07-28 18:26 2043次阅读
    <b class='flag-5'>树莓</b><b class='flag-5'>派</b>操作系统:版本、特性及设置完整指南!

    工业树莓的高光时刻!树莓工业级 HMI 列阵!

    上海晶珩作为树莓官方设计合作伙伴和代理商,基于树莓技术开发了一系列工业级人机界面(HMI)产品,广泛应用于工业自动化、楼宇控制、智能制造
    的头像 发表于 07-23 18:36 1177次阅读
    工业<b class='flag-5'>树莓</b><b class='flag-5'>派</b>的高光时刻!<b class='flag-5'>树莓</b><b class='flag-5'>派</b>工业级 HMI 列阵!

    树莓6 传闻:发布日期与规格!

    每当我想再为我的收藏增添一款树莓时,总会在是立即购买还是等待硬件更强大的下一代之间犹豫不决。但新树莓型号的发布往往容易被错过,尤其是在你
    的头像 发表于 07-11 16:21 3442次阅读
    <b class='flag-5'>树莓</b><b class='flag-5'>派</b>6 传闻:发布日期与规格!

    如何将你手中的树莓变身为强大路由器?

    树莓用作路由器,是一种经济高效可定制的解决方案,满足从基础家庭网络到专业设置的各种网络需求。树莓
    的头像 发表于 07-07 16:30 3736次阅读
    如何将你手中的<b class='flag-5'>树莓</b><b class='flag-5'>派</b>变身为<b class='flag-5'>强大</b>路由器?

    20个任何人都能完成的树莓酷炫项目!

    不知道如何利用你买的树莓?这个小设备真的当台式电脑用吗?当服务器吗?当广播电台吗?当然可以!为了帮助你入门,我们精心挑选了这份
    的头像 发表于 07-03 17:10 4968次阅读
    20个任何人都能完成的<b class='flag-5'>树莓</b><b class='flag-5'>派</b>酷炫项目!

    搭载树莓CM5:Sfera Labs 工业控制器!

    可靠性。解决方案树莓计算模块5RP2040企业规模中小企业(SME)行业工业自动化,物联网,边缘计算SferaLabs是一家意大利公司,专注于设计、制造和销售
    的头像 发表于 07-01 17:41 944次阅读
    搭载<b class='flag-5'>树莓</b><b class='flag-5'>派</b>CM5:Sfera Labs 工业控制器!

    基于树莓的工业级 3D 打印机!

    基于计算模4的3D打印机功能强大可靠易于使用!Formlabs采用树莓计算模块4为其最新款3D打印机Form4提供动力,提升了其旗舰系
    的头像 发表于 06-29 08:22 1524次阅读
    基于<b class='flag-5'>树莓</b><b class='flag-5'>派</b>的工业级 3D 打印机!

    树莓小技巧:无需键盘或显示器,如何通过WiFi设置树莓

    树莓是一款小巧便携的USB供电计算机,可以隐藏起来用于小型项目,如网络服务器或家庭自动化。通常,设置树莓需要键盘和显示器来编辑和查看
    的头像 发表于 06-26 15:41 1999次阅读
    <b class='flag-5'>树莓</b><b class='flag-5'>派</b>小技巧:无需键盘或显示器,如何通过WiFi设置<b class='flag-5'>树莓</b><b class='flag-5'>派</b>?

    树莓分类器:用树莓识别不同型号的树莓

    在本教程系列的第一部分中,您将学习如何使用树莓AI摄像头来检测不同的树莓型号。本系列由DavidPlowman创建,他是树莓
    的头像 发表于 06-13 16:39 1710次阅读
    <b class='flag-5'>树莓</b><b class='flag-5'>派</b>分类器:用<b class='flag-5'>树莓</b><b class='flag-5'>派</b>识别不同型号的<b class='flag-5'>树莓</b><b class='flag-5'>派</b>!