热门标签 | 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除非适用法律要求或书面同意,否则软件根据许可分发是在“原样”基础上分发的,没有任何明示或暗示的保证或条件。请参阅许可证以了解特定语言的管理权限和许可证下的限制。

推荐阅读
  • 探讨ChatGPT在法律和版权方面的潜在风险及影响,分析其作为内容创造工具的合法性和合规性。 ... [详细]
  • 实用正则表达式有哪些
    小编给大家分享一下实用正则表达式有哪些,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下 ... [详细]
  • 本文旨在探讨如何利用决策树算法实现对男女性别的分类。通过引入信息熵和信息增益的概念,结合具体的数据集,详细介绍了决策树的构建过程,并展示了其在实际应用中的效果。 ... [详细]
  • Coursera ML 机器学习
    2019独角兽企业重金招聘Python工程师标准线性回归算法计算过程CostFunction梯度下降算法多变量回归![选择特征](https:static.oschina.n ... [详细]
  • 国际高保真音乐流媒体平台的崛起:亚马逊与谷歌的竞争策略
    近期,亚马逊和谷歌正积极筹备推出高保真音乐流媒体服务,预计在2019年底前上线。根据市场研究机构CIRP的数据,截至2018年12月,美国智能音箱的安装量已增至6600万台,较第三季度增长显著。这一趋势对Spotify等传统流媒体平台构成了新的挑战。 ... [详细]
  • 如何使用Ping命令来测试网络连接?当网卡安装和有关参数配置完成后,可以使用ping命令来测试一下网络是否连接成功。以winXP为例1、打开XP下DOS窗口具体操作是点击“开始”菜 ... [详细]
  • 深入解析SpringMVC核心组件:DispatcherServlet的工作原理
    本文详细探讨了SpringMVC的核心组件——DispatcherServlet的运作机制,旨在帮助有一定Java和Spring基础的开发人员理解HTTP请求是如何被映射到Controller并执行的。文章将解答以下问题:1. HTTP请求如何映射到Controller;2. Controller是如何被执行的。 ... [详细]
  • 本题要求在一组数中反复取出两个数相加,并将结果放回数组中,最终求出最小的总加法代价。这是一个经典的哈夫曼编码问题,利用贪心算法可以有效地解决。 ... [详细]
  • 本文深入探讨了MySQL中常见的面试问题,包括事务隔离级别、存储引擎选择、索引结构及优化等关键知识点。通过详细解析,帮助读者在面对BAT等大厂面试时更加从容。 ... [详细]
  • 本文详细介绍了如何使用 HTML 和 CSS 对文件上传按钮进行样式美化,使用户界面更加友好和美观。 ... [详细]
  • 在使用Rails Paperclip插件与AWS S3进行文件管理时,遇到了`exists?`和`clear`方法调用时出现的`AWS::S3::Errors::BadRequest`错误。本文探讨了问题的原因及可能的解决方案。 ... [详细]
  • 本文探讨了亚马逊Go如何通过技术创新推动零售业的发展,以及面临的市场和隐私挑战。同时,介绍了亚马逊最新的‘刷手支付’技术及其潜在影响。 ... [详细]
  • 主板IO用W83627THG,用VC如何取得CPU温度,系统温度,CPU风扇转速,VBat的电压. ... [详细]
  • NTP服务器配置详解:原理与工作模式
    本文深入探讨了网络时间协议(NTP)的工作原理及其多种工作模式,旨在帮助读者全面理解NTP的配置参数和应用场景。NTP是基于RFC 1305的时间同步标准,广泛应用于分布式系统中,确保设备间时钟的一致性。 ... [详细]
  • 本文详细介绍了在不同操作系统中查找和设置网卡的方法,涵盖了Windows系统的具体步骤,并提供了关于网卡位置、无线网络设置及常见问题的解答。 ... [详细]
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社区 版权所有