RRoy 发表于 2023-7-19 14:49:55

自制一个基于ESP32的沙画机器人





作者在高二的时候就做过一个非常基础的沙画机器人,现在准备去普渡大学上学了,正好也打算带上它,于是想着用这俩年新学到的技能重新设计一下之前的沙画机器人。






https://dfrobot.loll.cc/video/Untitled%20fixed.mp4


所需材料
[*]3D打印机
[*]ESP32 DevKit V1
[*]2个TMC2208或TMC2209步进电机驱动器
[*]2个迷你NEMA 17步进电机
[*]2个霍尔效应端止器(通用的就行)
[*]TSL2561光传感器
[*]用于面板安装的USB-C接口和直流电源插座
[*]定制PCB
[*]4英寸懒人转盘轴承
[*]各种嵌角M3螺丝
[*]SK6812 RGBW LED灯带(1米),项目使用的是144颗LED/米
[*]M3铆入螺套(外径4.5毫米)
[*]各种2、3、4、5引脚的JST连接器和SMT插座
[*]带有滑轮的400毫米GT2同步带


步骤1:Fusion 360
我设计这个动态沙画机器人时非常轻薄,打印后高度不到3英寸(7.62 厘米)!有很多重叠的零件,主要集中在大尺寸的Theta齿轮连接到底板的地方。整个机器人是使用Fusion 360从零开始设计的,并且我通过Fusion Team在线共享了它们。

我从草图开始设计外壳的大致形状,然后沿着大悬挑部分分割它,确保可打印。然后我构建了机器人底板,建模了懒人转盘轴承和中央齿轮组合。







附上机器人组装的剖面和**视图,好让大家更详细地了解它们如何组装。


步骤2:3D打印






我用黑色Polymaker ABS打印了所有零件,使用30-50%的gyroid填充,具体取决于零件的情况。通常,内部组件使用50%的填充率,而外壳则打印足够的壳材使其坚固。我几乎用光了为这个项目购买的3公斤的线材。

如果使用PLA(聚乳酸),在抵抗扭曲变形方面会有更好的效果,然而我需要ABS(丙烯腈-丁二烯-苯乙烯)的结构性能。

附上的照片展示了测试安装线性轴和导轨的情况。


步骤3:机器人组装




我在步进电机上加了4引脚的JST连接器,给TSL2561光传感器加了一个5引脚的连接器,并在磁性限位开关和LED灯带上都添加了3引脚的连接器。

然后,我用嵌头M3螺丝将theta步进电机安装到机器人底盘上。接着,我把GT2滑轮安装在电机上,用M3螺丝把懒人轴承固定在大的中心theta齿轮和下底盘上。轴承应该能够直接嵌入位置,不会摇晃。在Fusion组装中,如果轴承出现摇晃,可以使用额外的间隔器。直线轴和导轨用热塑插件直接固定在theta齿轮的顶部。


步骤4:PCB设计




设计文件可以在这个网站获取:https://oshwlab.com/acvigue/sandscara


步骤5:PCB组装
我直接焊接下了马达驱动器、ESP32以及JST连接器。我添加了一个可选的SD卡插槽,它与MPN#47352-1001(Mouser)是兼容的。我使用尖细的焊接头和一些无需清洁的焊膏手动焊接了这个连接器。


步骤6:连接所有部件


我安装了一个磁性端止器传感器,安装在中心的微小孔上,用来感知Theta齿轮到达已知位置的情况。

完全组装好的机器人底板只需滑入外壳的中间部分。


步骤7:组装外壳




将上半部分的外壳放在下半部分上。用防塌塞的铆入螺套和12颗10mm M3螺丝将其固定。


步骤8:加入沙子


我使用家里的一些普通工艺毡布,通过喷雾胶把它粘在沙床的底部,这样可以让沙床工作的时候更加安静。然后,我就把家得宝(Home Depot)的沙倒进去,用一把黄油刀将其均匀铺开。


步骤9:灯光


我用双面海绵胶带把LED灯带粘在沙床的两侧,并将3根导线(5V数据和地线)从侧面的小缝隙穿过,延伸到主控板。


步骤10:编译Web界面






我从头开始使用TypeScript和Vue 3编写了Web界面,状态管理使用了Pinia,数据获取使用了一组Axios请求***。

GitHub仓库链接:https://github.com/acvigue/tranquilvue

只需克隆和构建这个项目即可继续进行。

你可以在Linux机器上运行以下命令构建项目(对于Windows机器,更改命令为相应的命令):
yarn && yarn build

生成的构建文件保存在./dist目录中。


步骤11:编译设备固件


该固件几乎是从零开始重新编写的,并且已经进行了至少一年的开发。它是一个普通的PlatformIO项目,可以在这里下载:https://github.com/acvigue/tranquilfirmware

将构建的Web资源拖到此目录,PlatformIO将自动将它们移动到ESP32的SPIFFS分区。

特别提醒:本文中所示的图案不包括在内,可以从互联网上下载。Web界面仅列出设备上安装的图案。


步骤12:配置设备
固件安装后,设备将设置自己的访问点,名为"Tranquil",所有初始配置都在此完成。你可以将其连接到您的Wi-Fi,设置OTA更新。


步骤13:开始玩耍






我现在已经制作了两个沙子绘图机器人,并在设计可打印性和确保我编写的固件稳定性方面积累了很多经验!遇到任何问题,欢迎和我沟通!

作者的博客:https://vigue.me

作者的GitHub:https://github.com/acvigue

原文作者:aidenvigue

原文连接:https://www.instructables.com/ES ... Sand-Drawing-Robot/

转载请注明来源信息

Amos Young 发表于 2023-7-20 11:09:05

竟然是web操作,好厉害

RRoy 发表于 2023-7-20 14:00:05

Amos Young 发表于 2023-7-20 11:09
竟然是web操作,好厉害

哈哈是的,不愧是去普渡大学的

三春牛-创客 发表于 2023-7-20 22:18:12

好厉害!!!{:6_215:}

三春牛-创客 发表于 2023-7-20 22:20:02

沙画,还是机器人画的!赞!!{:6_209:}

花生编程 发表于 2023-7-21 22:52:09

厉害厉害!!

花生编程 发表于 2023-7-21 22:53:10

赞赞赞赞!

JVUm7ppJGaRK 发表于 2023-7-24 14:39:01

大神操作,出手就是精品

派大星ym 发表于 2023-8-19 18:45:23

太酷了   

派大星ym 发表于 2023-8-19 18:47:15

66666666666666

LL7YTT 发表于 2023-9-28 10:03:17

比较感兴趣,博主能把Fusion 360的3d文件共享一下吗

LL7YTT 发表于 2023-9-28 10:51:16

我在Fusion Team没找能到你的3d项目,能分享一下链接吗

txm派瑞深山锹 发表于 2023-10-14 10:49:48

爱了爱了,全新的坐标移动看着思路

RRoy 发表于 2023-12-28 11:12:44

LL7YTT 发表于 2023-9-28 10:51
我在Fusion Team没找能到你的3d项目,能分享一下链接吗

https://vigue.autodesk360.com/g/shares/SH9285eQTcf875d3c5397e371072af688736

式点 发表于 2024-1-7 09:24:45

{:6_215:}6666666

罗罗罗 发表于 2024-4-14 11:31:36

艺术
页: [1]
查看完整版本: 自制一个基于ESP32的沙画机器人