3作者: kaipereira5 个月前原帖
3D打印是一个非常迷人的技术领域,因此几个月前,我决定深入研究一下它们的实际工作原理!<p>这让我回到了我的第一个PCB项目,一个小型、廉价的3D打印机主板。虽然这不是最前沿的电路板,但我学到了很多,并且我完整记录了我的设计过程(<a href="https://github.com/KaiPereira/Cheetah-MX4-Mini/blob/master/JOURNAL.md" rel="nofollow">https://github.com/KaiPereira/Cheetah-MX4-Mini/blob/master/JOURNAL.md</a>),以便其他人可以从我的错误中学习!<p>它基于STM32H743微控制器,配备4个TMC步进驱动器,支持UART/SPI配置,传感器无关的归位,热敏电阻和风扇接口,平行、串行和TFT显示连接器,床和加热器输出,以及USB-C/SD卡打印,所有这些都在一个小巧的80x90mm外形中,支持Marlin和Klipper!<p>由于它比典型的主板更小、更便宜,您可以将其用于更小或更实惠的打印机,其他人也可以参考这个日志来制作自己的电路板!<p>如果我制作V2版本,我可能会清理PCB的走线和布局,更加关注走线的尺寸、接缝和填充,进一步优化物料清单,并在电路板上增加一个或两个电机驱动器。我还应该更加关注我将要消耗的电流和电压等级,因为一些部件的额定功率不足。<p>我仍在积极改进并修正一些错误,但我计划使用这个电路板制作一个小型可折叠的3D打印机,方便我在黑客马拉松上随时打印!<p>这个项目是完全开源的,并且有详细的日志记录,如果您想查看,可以在GitHub上找到(<a href="https://github.com/KaiPereira/Cheetah-MX4-Mini" rel="nofollow">https://github.com/KaiPereira/Cheetah-MX4-Mini</a>)!<p>我非常喜欢这个项目的制作过程,也很想听听大家希望在V2版本中看到什么!
4作者: roriau5 个月前原帖
我在过去几周里用 Rust 构建了 SFX。这是一个编程语言实验,专注于上下文导向编程,并采用了一些不寻常的设计选择。 首先进行现实检查: - 个人项目,53 次提交 - 1 个 GitHub 星标 xD - 除我之外没有用户 - 没有生产环境使用 - 文档尚在完善中 - 许多标准库模块只是最基本的占位符 实际上能工作的内容: - 基本解释器(树遍历) - 任意精度小数(0.1 + 0.2 = 0.3) - 基于 1 的索引(我知道这有争议) - 上下文/情境系统(主要思想) - 一些文件 I/O 和基本网络功能 - JIT 钩子存在,但优化很少 关于上下文的想法(希望得到反馈): 与其在每个地方检查 (user.isAdmin),不如定义一个情境:AdminMode,来重写方法: ```plaintext 概念:用户 获取权限: 返回 "read" 情境:AdminMode 调整用户: 获取权限: 返回 "admin,write,delete" 故事: 创建一个名为 Bob 的用户 切换到 AdminMode 打印 Bob.GetPermissions # 现在返回 "admin,write,delete" ``` 对象的行为根据活动情境而变化,而不改变状态。这有用吗,还是过度设计? 尚未准备好的内容: - 性能很差(还没有优化任何东西) - 标准库大多是待办事项 - AI 功能是虚构的 - REPL 不存在 - 没有工具(LSP、调试器等) - 测试存在,但覆盖率很低 我的问题: - 上下文导向编程是否解决了真实问题,还是制造了无用的工作? - 我应该专注于提高性能,还是让标准库变得实用? - 对你来说,基于 1 的索引是个致命缺陷吗? - 对于通用语言,默认的任意精度会让你感到困扰吗? 我并不是想取代任何东西。这是一个失控的学习项目。 仓库地址: [https://github.com/roriau0422/sfex-lang](https://github.com/roriau0422/sfex-lang) 页面地址: [https://roriau0422.github.io/sfex-lang/](https://roriau0422.github.io/sfex-lang/) 希望得到诚实的反馈,包括“这毫无意义,别再浪费时间。”
1作者: NotARoomba5 个月前原帖
嗨,我是内森,一名渴望成为工程师的爱好者,喜欢摆弄硬件。今年早些时候,我通过各种Hack Club项目开始制作硬件/电子项目。这一切都很完美,但由于高额的海关和进口费用,我的大部分项目都被搁置了,因此我想改变这种状况。 大部分费用实际上是用于组装PCB,经过在网上的探索,我发现了热板这一奇妙的发明,我可以自己制作所有的PCB,成本仅为一半多一点。虽然我本可以在eBay上购买一个,但我决定接受挑战,自己动手制作一个(因为为什么不呢),并尽可能使其具备便携性,于是Ember应运而生。 我开始研究热板的工作原理,并在网上寻找是否有人制作过类似的设备,偶然间我发现了这个代码库(https://github.com/ikajdan/reflow-hot-plate)。这基本上就是我想要制作的东西,但仔细阅读后,我发现虽然它的温度可以达到210°C,但热板的尺寸相对较小。此外,它需要一个外部DC插孔和USB-C接口,以便能够通过笔记本电脑进行控制和监控。 功能/规格: - USB-C电源传输,最高可达100W(20V),使用TI的TPS25730D - 配备蓝牙支持的STM32WB55CG微控制器 - 大约120mm x 120mm的灵活加热板,适用于大型PCB回流(JLCFH) - 采用MAX6675热电偶和PT1000 RTD的双温度传感 - 配备旋转编码器的OLED显示屏,便于控制和预设管理 - 支持NFC(因为为什么不呢,哈哈) - 精确PWM加热板控制的门驱动器 - 具备电流和板温监控以确保安全 - 32MB闪存用于图形和数据存储 - 便携设计,采用定制的亚克力/尼龙外壳 如果你想查看我制作过程的完整日志以及我所做的所有设计决策,可以在这里查看:https://blueprint.hackclub.com/projects/1701 对于有兴趣自己制作的人,这里是GitHub代码库:https://github.com/notaroomba/ember 感谢Hack Club的Blueprint赞助这个项目!
1作者: kenonet5 个月前原帖
我们有多个环境(开发、测试、生产),我厌倦了管理内部服务的DNS。 目前的选项都很糟糕: - 公共DNS条目 → 安全风险,混乱真实的DNS - VPN + 自定义DNS → 过于复杂,IT成为瓶颈,大家都在抱怨 - 编辑/etc/hosts → 不可扩展,频繁出错 - Tailscale → 可行,但成本不断增加,需要网络设置 我希望开发人员能够直接访问 api.dev.company.internal,而不需要: - 请求IT配置任何东西 - 运行完整的VPN - 手动编辑主机文件 - 公开暴露端点 我是不是遗漏了什么明显的解决方案?你们公司是如何处理这个问题的?