亿迅智能制造网
工业4.0先进制造技术信息网站!
首页 | 制造技术 | 制造设备 | 工业物联网 | 工业材料 | 设备保养维修 | 工业编程 |
home  MfgRobots >> 亿迅智能制造网 >  >> Manufacturing Technology >> 制造工艺

带有 Arduino 的自动设备测试仪

组件和用品

Arduino Nano R3
Uno 也能正常工作
× 1
公头 USB
× 1
女性 USB
× 1

应用和在线服务

Arduino IDE

关于这个项目

这可能看起来不多,但这可能是我用 Arduino 制作的最有用的东西。它是我销售的名为 Power Blough-R 的产品的自动测试仪。它不仅为我节省了时间(它目前至少为我节省了 4 小时,而且还在增加),而且还让我更加确信产品在发货前 100% 可用。

Power Blough-R,发音为“Power Blocker”(这是我的名字的一个游戏,发音令人惊讶,发音为“lock”!),用于解决在使用 octoprint 和 3D 打印机时经常遇到的后馈电源问题。

要使用测试仪,您只需将 Power Blough-R 放入 USB 接头并按下 Arduino Nano 上的重置按钮。测试仪将运行一系列测试,并使用 Nano 的内置 LED 指示设备是否通过测试(实心表示通过,闪烁表示失败)。

当你有很多事情要做时,找到减少每个单元时间的方法会产生巨大的影响,使用这个测试仪将我测试一个单元的时间从大约 30 秒减少到 5 秒。虽然 25 秒听起来并不多,但当你有 100 秒的这些事情要做时,它就会加起来!

我认为我能说的最令人印象深刻的事情是,使用此工具,我测试 Power Blough-R 所需的时间比打开所需的时间更短 装运的防静电袋!

您可能不需要构建这个精确的设备,但希望我正在做的一些事情可能对您有用。

观看视频!

我在这篇文章中涵盖的大部分内容都可以通过这个视频获得,所以看看视频是否适合你!

The Power Blough-R

那么什么是 Power Blough-R,它有什么作用?

如果您曾将 Octoprint 与 3D 打印机一起使用,通常会出现一个问题,即即使打印机电源关闭,您的打印机屏幕也会通过树莓派的 USB 电源保持打开状态。虽然这不是世界末日,但它会变得非常烦人,尤其是在黑暗的房间里。

Power Blough-R 是一块简单的 PCB,上面有一个公头和一个母头 USB 连接器,但它不连接 5V 线。

还有其他方法可以解决这个问题,有些人切断了他们 USB 电缆的 5V 线或在 5V 连接器上放了一些胶带,但我想想出一种简单、可靠的方法来实现相同的结果,而不会伤害任何USB 数据线!

如果您对 Power BLough-R 感兴趣,可以购买它们:

  • 在我的 Tindie 商店(成套或组装)
  • TH3dstudio.com(组装)

(顺便说一句,这篇文章不是赞助商,除了 Power Blough-Rs 的供应之外,我没有参与 TH3D。我没有收到任何额外的东西来包含 TH3D 的链接,或者是曾经讨论过的文章/视频作为原始交易的一部分)

背景:大订单

我在 Tindie 商店出售 Power Blough-Rs,主要是作为套件出售。但是对于我出售的组装好的,我会用万用表测试它们。 In将测试输入和输出Ground、D-和D+之间是否连接良好,5V未连接并测试电桥。

这将需要大约 30 秒左右的时间,如果我不小心的话,我很容易犯错误。但是对于我销售的组装产品的数量来说,这并不是一个巨大的时间投入。

但是我在 3d 打印子 reddit 上发布了 Power Blough-R 的图片,来自 TH3DStudio.com 的 Tim 联系我询问有关订购一些在他的商店中作为试用的库存。我说肯定,问他要找多少。我希望他说 10 或 20,但他说让我们从 100 开始......

我几乎不可能用万用表自信地测试 100 台设备,所以我知道我必须为此做些什么!

硬件

我选择了最简单的方法来组装它,因为我有点时间紧迫!这也是一个非常便宜的构建(所有东西都不到 5 美元)。

  • Arduino Nano(这个有一个微型 USB,但任何都可以)*
  • 纳米螺丝端子分线器*
  • 男性 USB Breakout*
  • 女性 USB Breakout*
  • 一些电线

组装这个真的没什么。如果还没有将插头引脚焊接到 nano 上,然后插入螺丝接线端子。

5 根电线应焊接到公母 USB 分接器上。请注意屏蔽线,母接头没有用于此的焊盘,因此我将其焊接到连接器的一侧。这些电线可以在另一端剥开并拧入螺钉端子(确保留出一些松弛度,以便更容易插入和拔出设备)

对于公连接器,我使用了以下引脚

  • 地> 2
  • D+> 3
  • D-> 4
  • VCC> 5
  • 盾牌> 10

对于我使用的母连接器:

  • 地> 6
  • D+> 7
  • D-> 8
  • VCC> 9
  • 盾牌> 11

*附属链接

软件

首先,您需要下载 Arduino IDE 并进行设置(如果您还没有的话)。

你可以从我的 Github 上抓取我使用的草图并将其上传到板上。完成后,您就可以开始了!

在启动时,草图会运行一系列测试。如果所有测试都通过,它会将内置 LED 设置为亮起。如果有任何故障,它会闪烁内置 LED。设备也会向串口监视器输出故障原因,但我实际上并没有使用这个功能。

草图经过以下测试

初始测试:

这是为了检查母针是否按预期读取,同时忽略公针。有关这方面的更多信息,请参阅三态逻辑步骤。

主要测试:

该测试检查 GND、D+、D- 和 Shield 是否已连接,同时 5V 线路被阻塞。这是为了检查 Power Blough-R 的主要功能,它通过除了 5V 线之外的所有东西。

桥接测试:

这会检查所有引脚是否桥接在一起。因此它会遍历每个引脚,设置其输出,然后检查所有其他引脚是否受此影响。

下面我将介绍一些在测试中使用的功能/概念。

INPUT_PULLUP

这是一个非常有用的方法,它可以在您的项目中为您节省一个额外的电阻器(每个引脚)。当您使用按钮时,它特别有用。

当一个引脚设置为 INPUT_PULLUP 时,它基本上用一个 10k 电阻将引脚连接到 VCC。如果没有上拉(或下拉)电阻,引脚的默认状态被认为是浮动的,读取引脚时会得到不一致的值。由于电阻器的值相当高,因此可以通过向引脚施加不同的逻辑电平来轻松改变引脚的状态(例如,当按下按钮时,它将引脚连接到地并且引脚将读取低电平。

我将 FEMALE 引脚的引脚模式设置为 INPUT_PULLUP,因此只要没有外力作用,我就有了引脚应该是什么(高)的参考点。在整个测试过程中,MALE 引脚设置为低电平,当这两个引脚应连接时,我们预计 FEMALE 引脚为低电平。

三态逻辑

初始测试时,我想检查 FEMALE 引脚的逻辑电平,而基本上忽略 MALE 引脚。

这似乎是一个问题,因为 MALE 引脚必须具有一些会影响的逻辑电平,对吗?

实际上,大多数微控制器的引脚都有所谓的三态逻辑,这意味着它们可以处于 3 种状态:高、低和高阻抗

高阻抗是通过将引脚设置为输入来实现的。这相当于在引脚前放置一个 100 Mega OHM 电阻器,这将有效地将其与我们的电路断开。

三态逻辑是 Charlie-plexing 的主要功能之一,这是一种使用较少引脚数寻址单个 LED 的神奇方式。如果您有兴趣进一步了解 Charlie-plexing,请观看以下视频。

测试测试员

这实际上是非常重要的一步,因为如果您不测试测试人员是否捕获了负面情况,那么您就可以确信当测试通过时设备按预期工作。

如果您熟悉软件开发中的单元测试,这相当于创建负面测试场景。

为了测试这一点,我创建了几个有错误的板:

  • 将 USB 接头焊接在电路板的错误一侧。 USB 接头很适合,但不会连接地线,而是连接 5V 线。 (可惜这个不是故意创建的,证明需要测试人员!)
  • 特意桥接两个引脚以测试桥接测试代码。

结论

正如我在本文开头提到的,这可能是我用 Arduino 构建的最有用的东西。

由于最初的订单 Tim 又订购了 200 台 Power BLough-R,虽然非常感谢节省的时间,但它让我对产品处于完美工作状态的信心是我最喜欢的事情。

事实上,对于 200 的订单,我妻子基本上做了所有的测试。她真的很喜欢它的使用速度和通过/失败指示器的简单性。

希望可以从本指南中学到一些有用的东西,如果您有任何问题,请随时在下面提问!

祝一切顺利,

布莱恩

  • YouTube
  • 推特
  • Tindie

代码

Github
https://github.com/witnessmenow/Power-BLough-R-Testerhttps://github.com/witnessmenow/Power-BLough-R-Tester

制造工艺

  1. 最小化设备待机功耗
  2. 使用蓝牙网状网络进行设计:设备要求
  3. 用三星 SAMIIO、Arduino UNO 和 Raspberry Pi 在几分钟内制作一个火灾探测器
  4. 使用 K30 传感器监测二氧化碳
  5. 聋盲通信与 1Sheeld/Arduino
  6. 使用 Arduino 控制硬币接收器
  7. 带有 Arduino 的自动植物浇水系统
  8. Arduino 带蓝牙控制 LED!
  9. 带有 Arduino 或 ESP8266 的电容式指纹传感器
  10. 使用 Arduino 和 Android 设备控制 Roomba 机器人
  11. 什么是自动压力机?
  12. 什么是自动动力压力机?