×

基于Arduino HID的CNC吊坠

消耗积分:0 | 格式:zip | 大小:1.55 MB | 2022-11-03

莫联雪

分享资料个

描述

Last article update:

2018-07-31: added the CAD files

2018-07-24: added the schematic and programming section

注意:提供的 Aduino 草图是根据我的情况定制的,但可以根据您的特定需求进行调整。所以请随意使用它,但您确实需要更改草图!

为什么这个项目?

您可以为您的 CNC 机床购买一个吊坠,但我制造了我的木制 CNC 机床,那为什么不自己制作吊坠呢?

除此之外,我的控制器板的普通挂件要 100 欧元,而且只有 2 个按钮和一个手轮。

我的挂件有 23 个按钮,每个按钮最多 6 个功能和一个手轮。

一条评论可能是,“它又大又重!” 但在实践中,意外地证明,在转动手轮时有一个挂件会非常方便......

这是如何运作的?

带有 32u4 芯片(并非所有型号都有此芯片)的 Arduino 的美妙之处在于能够模拟键盘和/或鼠标。当您将 Leonardo 连接到 PC 时,它会“看到”一个键盘。伟大的!

因此,当您对 Arduino 进行编程时,为其添加一些开关并将其连接到 PC 或 Mac,您可以按下按钮向计算机发送(多个)击键/鼠标移动。正如我所提到的,每个按钮有 23 个按钮/6 个功能 = 许多选项..

这一切都取决于为 Arduino 草图使用正确的库!经过数小时的搜索,我终于找到了一个很棒的库,我将其包含在此页面中:Clickbutton。

使用这个库,您可以为每个(瞬间!)按钮获得这些可能性:

  • 单击
  • 双击
  • 三连击
  • 单击并按住
  • 双击并按住
  • 三击并按住

您还可以在 Clickbutton 库中获得去抖动功能,这很重要。

您可以调整每个按钮的时间,但标准时间 >= 250 毫秒以识别单击,>= 1000 毫秒以识别按钮保持。

只是我的 3 功能 X 轴按钮(键 13)草图的摘录

if (button[13].clicks != 0)
 {
   switch (button[13].clicks)
   {
     case 1: // Single click
       // Handwheel on X
       shortcut_HANDWHEEL_X();
       break;
     case 2: // Double click
       // Zero X
       shortcut_ZERO_X();
       break;
     case 3: // Triple click
       break;
     case -1: // Single Click and Hold
       // USER MACRO 18: X-axis: goto work zero position G0 X0.0000
       press_ESC();
       goto_MAIN_MENU();
       user_MACRO_18();
       break;
     case -2: // Double Click and Hold
       break;
     case -3: // Triple Click and Hold
       break;
   }
 }

外壳

我选择使用桃花心木作为吊坠外壳。我喜欢用木头工作,外观和感觉都很棒。同样通过这种方式,我可以制作一个真正的定制案例,这并不总是可以用现成的 ABS 型案例来实现,你可以花 20-50 欧元购买。

绘图是使用 Vectric Cut2D 软件制作的。我很高兴我投资了这个软件包,因为它使 CNC 学习曲线变得不那么陡峭并且更有趣。它还可以帮助您非常轻松地设计双面作业。

打磨一点后,木头得到了许多层清漆。

 
 
 
 
poYBAGNh2aqAAPpbABUXSIAMpyM775.jpg
 
1 / 8
 

本视频中的进给率:

2400mm/min (~ 94"/min) 40mm/sec. (~ 1.57"),当时切割 3mm (1/8")

 

开关

开关很棒它们是瞬时类型,除了我用来打开/关闭 LED 的开关。您可以在透明顶盖后面贴一个标签,如果需要,您可以使用内置 LED 点亮开关。

我为每个开关使用了一个 1KΩ 电阻,在 5 伏时使用 2 毫安。

这是一个带有荷兰语音频的视频,只是为了让您听到开关发出的声音。我的评论并不重要。我确实说过开关有点响,但至少你知道什么时候按下它们;)

 

使用这些开关的一个缺点是它们需要相当高或“厚”的外壳。顶部和底部的木材厚度为 21 毫米(0.82 英寸或 53/64 英寸)。加工后,吊坠的总厚度为 36.5 毫米(14.37 或 14 3/8 英寸)

连接开关非常简单……我使用Arduino 内置上拉电阻,因此您只需将所有开关的一侧连接到地,另一侧连接到 Arduino 输入。

开关标签

为了给开关贴标签,我为我的彩色激光打印机使用了高质量的聚乙烯贴纸。(也可用于喷墨打印机)。在普通纸上打印是没有选择的,因为您确实看到纸张的结构在点亮时非常好。

然后我从开关上取下透明盖,把标签贴在它下面的塑料片上。

图标与购买时硬件随附的 Eding CNC 软件中使用的图标相同。我刚刚从软件目录中复制了 JPEG 图标,并在图形程序中更改了一些图标以根据需要对其进行自定义。

手轮

好吧,这是一个标准的60mm 100PPR 6 端子电子数控手轮

因此每转 100 个脉冲,在大多数 CNC 软件中您可以编辑此值。

电子产品

作为 HID(人机接口设备),我使用了Arduino Leonardo微控制器。

这个微控制器板已经停产,但我可以在几家网上商店买到。作为替代方案,您可以使用使用相同 32u4 芯片的 Arduino Micro。

 
 
 
 
poYBAGNh2dSACBe9ABJ1ddNTRFM026.jpg
 
1 / 3
 

通过这种方式,我可以模仿键盘敲击并控制 CNC 加工软件的许多功能,在我的例子中是Eding CNC

Arduino Leonardo 有 23 个输入引脚,绰绰有余。如前所述,您可以为每个按钮分配 6 个功能。

按键 LED 亮起时,总功耗为 150mA。

对 Arduino 微控制器进行编程

要对 Arduino 进行编程,您需要将挂件连接到 CNC 电源并使用 Arduino IDE 软件上传新草图。(请参阅下面的注释)因此,您当然使用用于模拟键盘的相同 USB 插头。

如果您想使用另一台电脑(笔记本电脑)进行编程,只需将 USB 插头插入另一台电脑并对 Arduino 进行编程,再次将挂件连接并通过 CNC 电源供电

注意:我没有将USB 5(来自 PC)连接到吊坠,因为我不想要两个 VCC 电源、PC USB 连接和 CNC 机床电源。确实需要连接PC USB GND 因此我们有一个共同的接地电平。

玩得开心制作自己的吊坠!


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

评论(0)
发评论

下载排行榜

全部0条评论

快来发表一下你的评论吧 !