热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

优秀网页翻译:一个智能旋钮:DIYhapticinputknob:BLDCmotor+roundLCD

一个智能旋钮:DIYhapticinputknob:BLDCmotorroundLCD智能旋钮硬件设计智能旋钮视图演示视频3DCAD建立一个你自己的?基


一个智能旋钮:DIY haptic input knob: BLDC motor + round LCD

  • 智能旋钮
  • 硬件
    • 设计
      • 智能旋钮视图
        • 演示视频
        • 3D CAD
        • 建立一个你自己的?
        • 基础PCB
        • 屏幕PCB
      • 手持式智能旋钮
      • 智能旋钮迷你
    • 组件信息
      • 磁性编码器
        • MT6701 (MagnTek)
        • TLV493D(英飞凌)
        • AS5600 (AMS)
      • 电机驱动器
        • TMC6300-LA
      • 电机
        • 32mm 转子,空心轴,直径磁铁
  • 固件
  • 常见问题 (FAQ)
  • 致谢
  • License

原文链接:
https://github.com/scottbez1/smartknob


智能旋钮

SmartKnob 是一种开源输入设备,具有软件可配置的止动装置和虚拟定位器。
无刷云台电机与磁性编码器配对,提供闭环扭矩反馈控制,可以动态创建和调整止动和止动的感觉。


硬件


设计


智能旋钮视图

高级智能旋钮体验。正在积极开发中。
不推荐用于一般用途(计划进行机械和电气修订)。
需要先进的焊接经验来构建 - 需要回流和/或小间距表面贴装焊接,并且组装非常耗时且精细。

特征:


  • 240x240 圆形 LCD,由转子上的 39.5 毫米表玻璃保护
  • 低成本 BLDC 万向节电机,带有用于机械和电气连接 LCD 的空心轴
  • 由 ESP32-PICO-V3-02 (Lilygo TMicro32 Plus 模块) 供电
  • 用于压力检测的 PCB 弯曲和应变计(通过电机提供的触觉反馈)
  • 8 个侧面发光的 RGB LED (SK6812-SIDE-A) 照明环环绕旋钮
  • USB-C (2.0) 连接器,用于 5V 电源和串行数据/编程 (CH340)
  • VEML7700 环境光传感器,用于自动背光和 LED 强度调节
  • 用于安装的多功能背板 - 使用 4 个螺钉或 2 个 3M 中号命令条(带有用于在安装后访问拆卸标签的切口)
  • 前盖卡扣,方便接触 PCB

演示视频

在这里插入图片描述
https://www.youtube.com/watch?v=ip641WmY4pA


3D CAD

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-oHG12dWw-1648008861509)(doc/img/explodedv145.gif)]
最新的 Fusion 360 模型:https://a360.co/3BzkU0n


建立一个你自己的?

更多关于 BOM 的文档以及您需要订购的部件将在未来提供 - 非常感谢您的关注!在 Twitter 上关注我,了解有关此项目和其他项目的最新更新。

查看最新的自动生成(未经测试)[Base PCB Interactive BOM](https://smartknob-artifacts.s3.us-west-1.amazonaws.com/master/electronics/view_base-ibom.html)和Screen PCB交互式 BOM(或组合的 [BOM csv](https://smartknob- artifacts.s3.us-west-1.amazonaws.com/master/electronics/view_base-bom.csv)) 用于电子/硬件零件清单。 ⚠️ 这些是从 GitHub 上最新的未经测试的版本自动生成的。对于经过测试/稳定/推荐的工件,请改用 release。

在此期间还有一些其他注意事项:


  • 尽可能使用经过良好调整的打印机进行 FDM 3D 打印的,但视频/照片中显示的部件是用尼龙 MJF 打印的,以实现严格的公差和更好的表面光洁度
  • 如果您想要更简单的构建,您可以省略 LCD,只需将模型中的旋钮 + 玻璃合并到单个 STL 中即可获得封闭式旋钮
  • LCD 支架内部的接线空间有限,需要 8 根电线穿过中心的孔。我使用了 30 AWG 绕线线。漆包线可能也可以。
  • 应变片是 BF350-3AA,并用 CA 胶粘在适当的位置(我将在未来包含这个过程的视频,但基本上我使用 kapton 胶带拿起应变片并在固化过程中将其固定到位)。这必须在回流焊接后完成,并且在出现错误的情况下很难移除/修复,因此在尝试在 PCB 上之前,请务必练习将应变计粘合到其他物品上!
  • TMC6300 非常小并且有底部焊盘,所以我会认真考虑与 PCB 订单一起获得模板。即使使用模板,我也需要在之后手动清理一些桥接;我强烈推荐 Chip Quik NC191 凝胶助焊剂,可在 Amazon 上购买(或使用此 [非附属链接](https://www.amazon.com/Smooth-Flow- No-Clean-syringe-plunger/dp/B08KJPG3NZ))或从您选择的电子产品经销商处购买。将 LCD 带状电缆焊接到屏幕 PCB 时,助焊剂也非常有用。
  • 对于面包板原型设计,TMC6300-BOB 非常棒,而且比裸芯片更容易使用想玩低电流 BLDC 电机
  • 对于速卖通购买:我强烈建议使用速卖通标准运输(在美国购买)。我有多次购买需要几个月的时间,或者在使用菜鸟或其他低成本运输方式购买时从未送达,而 AliExpress Standard 非常可靠,并且根据我的经验通常更快。
  • 确保检查 open issues - 这个设计还不是“稳定的”,所以要注意一切可能不会顺利。在 stable release v1.0 里程碑 完成之前,我不建议您自己订购这些部件,因为有

当前版本中的一些机械干扰问题。

未来的计划:


  • 考虑切换到使用 ESP32-S3-MINI-1 模块(一旦 Arduino 核心支持完成),因为这将允许直接 USB HID 支持(用于计算机的操纵杆/宏垫类型输入)
  • 配置 wifi 并正常工作(可能是 MQTT?)。目前内存是完整显示帧缓冲区精灵的问题。 PSRAM 可能会解决这个问题(需要更新的 ESP-IDF 和未发布的 Arduino 内核,并且通过简短的测试,我在启用 PSRAM 的情况下得到了可怕的性能),或者下一项可能有助于减少内存:
  • 迁移到 LVGL,以获得更好的显示渲染和对菜单等的轻松支持。不需要内存中的完整 240x240x24b 帧缓冲区,释放一些用于 wifi 等。
  • 为结构化串行数据集成 nanopb(例如,参见 splitflap protobuf 协议)
  • 家庭助理集成,或其他现实世界的应用程序
  • ???
  • 利润 😉

基础PCB

在这里插入图片描述在这里插入图片描述

订购说明:使用白色阻焊层,用于反射旋钮周围 RGB LED 环的光。应该是 1.2 毫米厚(不是“标准”1.6 毫米)。

最新的自动生成(未经测试且可能损坏!)工件⚠️:

示意图

交互式 BOM

PCB包

Gerbers

⚠️ 对于经过测试/稳定/推荐的工件,请改用 release。


屏幕PCB

在这里插入图片描述在这里插入图片描述
订购说明:每个机械设计的厚度必须为 1.2 毫米(非“标准”1.6 毫米)。

最新的自动生成(未经测试且可能损坏!)工件⚠️:

示意图

交互式 BOM

PCB 数据包

Gerbers

⚠️ 对于经过测试/稳定/推荐的工件,请改用 release。


手持式智能旋钮

对小型手持设备的探索。正在积极开发中。

在这里插入图片描述


智能旋钮迷你

为未来计划。


组件信息


磁性编码器


MT6701 (MagnTek)

价格合理的优秀传感器 - 强烈推荐。比 TLV493D 噪音更小,使用 SSI 时响应更快(控制回路更稳定)。


  • 许多 IO 选项 - SSI、I2C 和 ABZ - 应该提供良好的响应延迟
  • SSI 包括用于验证数据的 CRC
  • 没有断电或低功耗选项 - 可能不适合电池供电的设备
  • 不适用于美国分销商(Mouser、Digi-Key)

数据表

订购 (LCSC)


TLV493D(英飞凌)

中规中矩的选择。使用 Adafruit 的 QWIIC 分线板 可轻松进行原型制作。

在我的测试中,它有点嘈杂,需要过滤/平滑,这会减慢响应速度,损害控制回路的稳定性。或者,通过较少的过滤,噪声
PID 电机转矩控制器中的微分元件可以很容易地“放大”,从而引起可听(和可触知)的嗡嗡声/嗡嗡声。

也出现了一个已知的芯片问题会导致内部 ADC 有时完全锁定,需要完全复位和重新配置。见部分
[用户手册]中的5.6(https://www.infineon.com/dgdl/Infineon-TLV493D-A1B6_3DMagnetic-UM-v01_03-EN.pdf?fileId=5546d46261d5e6820161e75721903ddd)

在主控模式 (MCM) 或快速模式 (FM) 中,ADC 转换可能会挂起。挂机可以
被检测到:- 帧计数器 (FRM) 计数器卡住并且不再增加。

根据我测试 4 种不同的 Adafruit 分线板的经验,其中 2 种 (50%) 在使用后的一两分钟内经常表现出这种锁定行为。可以检测和自动重置(项目中有代码可以这样做),但速度很慢,如果传感器经常锁定,可能会导致不希望的跳跃/延迟。

数据表


AS5600 (AMS)

中规中矩的选择。便宜的分线板很容易买到。

在我的测试中,它相当嘈杂(据说,比 TLV493d 更嘈杂),需要过滤/平滑会减慢响应速度,损害控制回路的稳定性。此外,与我测试的其他传感器相比,它在较低的磁场强度下饱和,当与 Radial Magnets 8995 等强钕直径磁铁一起使用时,需要很大的气隙 (8-10mm) /en/products/detail/radial-magnets-inc/8995/5126077)。

数据表


电机驱动器


TMC6300-LA

这是一个相对较新的 IC,它是一个完美的匹配!本项目中使用的低压小电流电机一般没有其他驱动(带集成场效应管)满足要求(DRV8316可能工作,但未测试)。

强调:


  • 2-11V 直流电机电源输入
  • 高达 1.2A RMS
  • 微型(3x3mm QFN)

数据表

产品页面


电机


32mm 转子,空心轴,直径磁铁

在这里插入图片描述在这里插入图片描述


  • 32mm 转子
  • 15mm 总高度(包括磁铁),12.75mm 高度 w/o 磁铁,9mm 转子高度
  • 低/零齿槽效应 - 非常适合完全平滑的输入
  • 5.9mm 空心轴
  • 编码器内置直径磁铁
  • 久经考验的选择

总的来说,这是最容易上手的电机。低齿槽效应和内置直径磁铁非常棒!

速卖通

如果上面的速卖通列表缺货,这个其他列表 看起来是相同的,但我目前正在等待交货确认它实际上是一样的,所以购买要谨慎。

即将推出:我已经订购了十几种不同的 BLDC 电机进行测试,并将概述哪些电机适合这种触觉反馈用例。


固件

TODO:记录这个

还有 TODO:实现更多的固件


常见问题 (FAQ)

它要多少钱?

我希望我现在可以告诉你,但我实际上并不知道。请稍后再回来查看 - 到目前为止,我只建造了 1 个,这是在很长一段时间内进行大量修补和原型设计的结果,所以我还没有计算所有费用。零件肯定不到 200 美元,也许接近 100 美元?

它适用于 XYZ 吗?

还没有。到目前为止,我只为视频中显示的演示实现了足够的固件,因此您实际上还不能将它用于任何有生产力的事情。基本的制动器配置 API 就在那里,但其他的不多。许多固件工作仍有待完成。如果您构建一个,我希望您能帮助添加对 XYZ 的支持!

我可以购买一个作为套件还是已经组装好?

可能不是?或者至少,我自己没有立即出售它们的计划。并不是我不希望你快乐,而是硬件是一项艰巨的工作,我只是在空闲时间从事这些工作。

虽然它是开源的,但具有相当宽松的许可证,因此理论上任何人都可以开始提供套件/组件。如果有人确实走上了销售他们的路线,请注意归因是
required(如果你有奉献的心情,我不会拒绝 royalties/tips/thanks 🙂)。


致谢

该项目受到 Jesse Schoch 的视频“触觉纹理和虚拟定位”和
相应的 SimpleFOC 社区中的讨论。说真的,如果没有那个视频,这个项目就不会存在 - 谢谢你,杰西!


License

该项目在 Apache v2(软件、电子、文档)和知识共享署名 4.0(硬件/机械)下获得许可(参见 LICENSE.txt 和 [Creative Commons](https://creativecommons.org/ 许可证/by/4.0/))。

版权所有 2022 斯科特·贝泽克根据 Apache 许可证 2.0 版(“许可证”)获得许可;除非遵守许可,否则您不得使用此文件。您可以在以下网址获取许可证的副本http://www.apache.org/licenses/LICENSE-2.0除非适用法律要求或书面同意,否则软件根据许可分发是在“原样”基础上分发的,没有任何明示或暗示的保证或条件。请参阅许可证以了解特定语言的管理权限和许可证下的限制。

推荐阅读
author-avatar
werwd2_736
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有