开源改变世界

将 FluidNC 重新用于望远镜控制 #631

推推 grbl 2年前 (2023-02-05) 249次浏览
关闭
Cyrille-de-Brebisson 打开了这个问题 2022 年 9 月 26 日 · 6条评论
关闭

将 FluidNC 重新用于望远镜控制#631

Cyrille-de-Brebisson 打开了这个问题 2022 年 9 月 26 日 · 6条评论

评论

将 FluidNC 重新用于望远镜控制 #631

机器上下文

你好,

我想看看我是否可以重新利用 FluidNC 来控制望远镜支架。
望远镜是一个 2 轴系统(第三个马达用于聚焦)。
我对能够使用带有 LCD 的廉价、现成的硬件板来控制我的望远镜很感兴趣……

功能说明

我是一名经验丰富的软件工程师(嵌入式、C/C++ 和应用程序开发)…
但是,我没有 VS 代码或平台 IO 的经验:-(。

我最想了解的是在屏幕上显示的 GUI 是在哪里管理/处理的,这样我就可以开始“破解”他现有的代码,看看我是否可以从那里得到任何东西……

你能给我一些“指点”“从这里开始/如何开始”的建议吗?我会“永远感激”:-)

其他方法

最后,如果我成功了,我会做以下事情:

  • 重用 FluidNC 的低级库/设置(OS、coms、步进控制、图形内容)
  • 在顶部重新编码不同的 UI,这将允许用户:
    • 配置他的坐骑
    • 看夜空(开始地图)
    • 控制望远镜指向

我能提供什么帮助

好吧,我不知道你能做什么,但我相信我能帮上忙!!!

谢谢

将 FluidNC 重新用于望远镜控制 #631 Cyrille-de-Brebisson 添加了 增强 新功能或要求标签 2022 年 9 月 26 日
将 FluidNC 重新用于望远镜控制 #631

没有真正需要使用 VSCode;它只是一个方便的编辑器,具有良好的 platformio 集成。Platformio 是必需的,因为它是构建系统,类似于“make”。它控制编译哪些文件,使用哪些外部库和框架等。Platformio 与大多数其他构建系统的不同之处在于,它具有非常好的安装工具链、SDK、框架和库的功能——其他构建系统不会自动执行或无法执行的步骤只有使用大量繁琐的手写规则才能做到这一点。Platformio 是一个用 Python 编写的命令行应用程序。它有一个执行编译的主要命令“pio run”,类似于键入“make”来进行编译。许多编辑器,如 VSCode、Atom 等,都有不同程度的 platformio 集成,因此您可以启动“pio run”

关于您的实际问题,FluidNC UI 是 ESP3D_WebUI,它是一个单独的项目。我们出于各种原因维护一个分支,但基本代码在另一个 repo中。WebUI 是用 javascript / HTML 编写的。它的源代码合并到一个文件中,并缩小到一个“index.html.gz”文件中。该文件存储在驻留在 ESP32 模块上的 FLASH 文件系统中的文件中。FluidNC 包含简单的网络服务器代码并具有内置的 WiFi 支持。从外部浏览器,无论是在 PC 或智能手机或平板电脑上,您都可以联系该 Web 服务器,它将返回 index.html.gz 文件,它将在浏览器中运行,从而运行 UI 代码。

我们支持几个可以直接连接到 FluidNC 控制器的小型 OLED 屏幕,但它们仅用于信息显示,而不是具有输入功能的完整 UI。许多人编写了基于 LCD 的 UI,这些 UI 在单独的微处理器上运行——例如另一个 ESP32 模块——通过 WiFi 或串口与 FluidNC 通信。鉴于 MCU 的低成本以及让 UI 代码在单独的处理器上运行的模块化优势,我们建议采用这种方法,并且不打算将 LCD UI 代码集成到主要的 FluidNC 代码结构中。

将 FluidNC 重新用于望远镜控制 #631

你好,

感谢所有这些信息!
所以,如果我理解得很好,如果我想使用像这个带有 LCD 的板子https://fr.aliexpress.com/item/1005004255629268.html

LCD 实际上是一个完整的“系统”,它有一个网络浏览器并通过串行(而不是 HTTP,但谁在乎)从主模块获取数据……

所以,如果我想做一个望远镜控制,我真正需要做的是查看 ESP3D_WebUI 项目,看看我如何添加一种可以处理望远镜的新型 UI(我假设你已经有了 cnc 的配置, 激光, 3D 打印机…)

这是相对准确的吗?

西里尔

将 FluidNC 重新用于望远镜控制 #631

您可以使用 10 英寸(65 美元)或 7 英寸(35 美元)的 Android 平板电脑,并添加针对望远镜优化的 UI 面板。TabletUI 选项卡就是此类自定义 UI 的示例;我针对我在生产车间一直做的事情优化了它,消除了我从未用于工作运行的难以触摸的小控件。

将 FluidNC 重新用于望远镜控制 #631

关于您提到的开发板,其源代码改编自我们较旧的 Grbl_Esp32 项目,并且违反了 GPL 许可,他们没有在我见过的任何地方发布他们的模组。

将 FluidNC 重新用于望远镜控制 #631

谢谢(你的)信息。我会仔细看看的。

对不起,那些不恰当地占用了你的工作的人。我也看到它发生在我这边,这非常令人沮丧!

西里尔

将 FluidNC 重新用于望远镜控制 #631

我认为问题已经得到解答。