注释
这是一个绝妙的主意!也许这是为 Grbl 获得无头控制器的最佳和最便宜的方法。我想几乎每个人都有旧键盘、鼠标和满是灰尘的液晶显示器。我必须自己做类似的事情。太棒了 |
不错的设置。但是,请记住,@chamnit,Pis 有 a) HDMI 或 b) 复合视频输出,所以尘土飞扬的液晶显示器正是无法工作的东西…… |
好吧,那真是太可惜了!我想以相当便宜的价格找到小型 DVI 显示器或带有复合输入的旧 LCD 并不难。我想知道 Pis 是否可以为界面运行廉价的小型触摸屏(如果存在)。我认为在我看来这将是一个很棒的终极设置。尽管冷却剂可能会破坏表面(虽然可以受到保护),但它们没有任何开口可以让切屑堵塞。 |
从技术上讲,RPi(就像 BeagleBoard 的 DVI-D 披风一样)执行“HDMI 连接器上的 DVI 信号”,而不是纯/完整的 HDMI。对我们来说幸运的是,99% 的带有 HDMI 输入的电视和显示器都会将其隐藏起来,您永远不会知道,但如果您遇到问题,了解这些技术细节会有所帮助。 此外,HDMI/DVI-D 转 VGA 适配器非常便宜,而且任何打算与 PC 一起使用的显示器都有 VGA 输入,因此可以轻松解决您的接口问题。 RPi 有大量的 GPIO 可以连接任何可用的触摸屏,无论是哑(4-5-7 线)还是智能(SPI/I2C)。 |
我对那些便宜的“DVI-D-to-VGA”适配器有点谨慎,@csdexter. 不久前在 Pi 论坛上已经讨论过这个问题,结论总是便宜的适配器是简单的 DVI-I 到 VGA 通道(在这种情况下对我们没有任何作用),而实际的 DVI-D -to-VGA 的从来都不便宜(〜另一个 Pi 的价格)。至于“老实说,它们是’-D-‘并且便宜,包装/制造商这么说!”,请参阅http://forums.whirlpool.net.au/archive/559174之类的线程…… |
我想知道您是否可以使用 RPi headless 将控件公开为 Web 应用程序,然后通过 wifi 使用手机/平板电脑运行它。 |
哦,天哪,这是一个绝妙的主意。我一直对通过 wifi 流式传输 gcode 程序持怀疑态度,但 RPi 有一个用于存储的 sd 卡和一个完整的操作系统和一个库来备份它。我认为这可以工作并且工作得很好。如果喜欢看到这样的事情发生。 |
由于 Universal-GCode-Sender 是一个 java swing 应用程序,有人可以在上面尝试 AjaxSwing: |
这是我现在的设置,看起来它工作正常。我确实有 问候, 2012 年 12 月 25 日下午 2:11,Sonny Jeon 写道:
|
@blinkenlight Elara 的 HP HDMI 到 VGA 适配器:包括 29.52 欧元增值税;Raspberry Pi B CPC 38.07EUR 含增值税。我相信“HP”可以消除疑虑,如果您以 30 欧元的价格购买 HP,我敢肯定“中国版”的售价要低得多。 @chuck-h有很多免费/开源的 Java 框架可用于将您的应用程序迁移到 Web。当然,需要多少工时仅取决于应用程序最初编写的好坏(模块化)。 |
我想自愿处理 webapp。服务器端和客户端。恰巧我花了很多时间在工作上使用 GWT 编写控制冷轧机的 web 应用程序。在服务器端使用 Java 和 Tomcat 来托管 webapp。任何可以运行 tomcat 的设备都可以很好地工作,我最近刚拿到一个 ODROID U2,可能是 grbl 的一个很好的外围设备。 这似乎是一个常见的故事,但我也刚买了一栋房子,目前正在完成我的 2 个车库改建为机械车间/实验室。完成后,我将使用它为我的原型 2 英尺立方体 CNC 完成电气/软件系统的设计。 无论如何,在春天的时候,我应该准备好并想做一些特定于 grbl 的东西,作为一个伟大的控制器项目的感谢。 斯科特 |
你好呀。 在我看来,解决方案作为提议的网络应用程序效果更好,因为我可以在地下室的 TFT 上开始本地铣削,然后回到楼上通过 VNC 控制机器并从我的任何 PC 或平板电脑上观看网络摄像头 wia 浏览器. 我开始在我的页面上记录这个 – 用德语 – 图片将随之而来。 |
@scottrcarlson: 你是我的英雄!:) 我迫不及待地想看看结果如何。无论如何,在我的车库改装中,我几乎没有完成电气改造,而且在我看到曙光之前还有很长的路要走。我也希望春天。祝你好运! @derFrickler: 绝对是一个很酷的想法并且非常实用。尤其是网络摄像头的想法。这种方法没有任何问题,我可能会做和你一样的事情(最终)。虽然我不认为每个人都能够拥有必要的技能来轻松设置这样的东西。我认为一个非常简单的、易于运行、设置和使用的网络服务器界面在我看来会很棒(并且在 RPi 上运行,现在数量超过一百万)。这将允许立即控制任何支持网络的设备上的 CNC 设备。以我的经验,VNC 可能会滞后,并且有一两秒的延迟有时可能意味着损坏部分,尽管可能很少见。 |
我认为很少有人能够让安装 Vnc 包的 Web 服务器工作。尽管 Web 服务的响应速度不会比 vnc 连接快。 |
也许,也许不是。我敢打赌,有一种方法可以让它变得简单。您会在应用商店中看到所有这些“空中驱动”应用。这些通常只是运行类型的应用程序。我的看法是,如果有 Web 服务器,则根本不需要标准的显示器、键盘和鼠标设置。一个真正的无头系统,具有易于修改/自定义的基于 http 的界面。使用您想要的任何设备,从旧的退役智能手机或 ipad 到您家中的台式机。 计算机上的 VNC 可以正常工作,但智能手机和平板电脑上的 VNC 应用程序非常糟糕。VNC 的屏幕分辨率几乎从不匹配设备的分辨率,因此虚拟键盘和鼠标之间似乎总是有很多乏味的滚动和切换。单击专为鼠标设计的东西,而不是触摸屏上的手指。不是一个很好的界面,至少在这些设备上是这样。使用 Web 界面,这些可以很容易地编写为适合任何设备的大小。 但我想魔鬼总是在细节中。我敢肯定会有一些东西会导致这个问题,无论是延迟还是其他。 |
怎么回事?为什么不使用iteadstudio iboard之类的东西 |
@jgeisler0303: 你的方法也没有错。我想我想要做的是使用两个最流行的板:Arduino 和 RPi。两者都非常便宜且无处不在。我认为@alpharesearch说RPi上的VNC和uGS很慢,理论上的网络服务器应该更快。我们有 Linux 的开源库来(在某种程度上)快速原型化这样的东西。 由于分组和延迟,我对使用以太网有点怀疑。这是一个完全不同的蠕虫罐头,已经被探索过了。让 RPi 通过 USB 连接到 grbl,直接从其广告卡或 USB 闪存驱动器流式传输,并通过以太网(或 wifi)通过 VNC/webserver 提供实时数据和控制,如果不这样做,这将是对可用硬件的一种很好的利用很多。 我曾经看过你实际需要的实时数据量,如果有些人连接了 LCD。事实证明,你需要很多。不仅仅是一个简单的 4×16 字符 LCD 所能提供的。超过 320×240 LCDS。你真的至少需要一个 VGA 之类的东西。智能手机、平板电脑、旧电视和旧电脑显示器是唯一对我有意义且无需更多成本即可使用的东西。 我不知道。也许我只是在做梦。 |
好点子!我认为我们现在应该能够做到这一点。我们可以使用 问候, PS:我没用过socat,不过周末会做一些测试。 Jens Geisler 在 2013-01-29 14:53 写道:
|
Divide et impera 可用的解决方案将因答案而异。 其次,如果您仔细规划您的临界边界,那么分布式(例如通过网络)运行事物是很容易的。例如,驱动步进器的“盒子”应该与电机本身处于相同的临界边界内——所以我们不应该把网络放在那里,除非它是一个仅供我们使用的专用设置。 继续前进,发出 G 代码的“盒子”和解析它的“盒子”很可能位于不同的临界域中。我们可能必须想出一个巧妙的缓冲解决方案,以确保任何依赖于 G-Code 以某个最小速度进入的东西都保持愉快,但否则设计与这两个概念“盒子”之间的通信介质的属性无关”。 更进一步,向用户显示状态信息的“框”很可能位于第三个关键域中——只要保证安全(即您仍然可以点击急停并使其冻结),它不会如果我们正在流式传输 G 代码,控制面板是否反应缓慢或每分钟崩溃 2 次无关紧要。当然,如果我们想用面板来做手工铣削,当然,我们应该升级它的可靠性,也许还应该把它移到另一个领域,用其他更关键的“盒子”。 所以,总结一下:我们要解决的问题或问题是什么? |
@csdexter——好问题。我认为我们可以放心地假设我们中的许多人都有不同的期望和要求。 在我的情况下,我想在我的接线盒内打包一个无头服务器,该服务器物理连接到 grbl 和其他关键子系统,我认为 linux 服务器是合适的,一些不错的防弹的,最小的,添加一个独立的无线路由器,并有一个用于 cnc 的隔离网络。我已经为手动铣削控制构建了一个物理控制面板。对于自动化铣削作业、机器配置、3D 打印、激光切割、拉伸测试,我想启动我的笔记本电脑并连接到我的机器,并拥有一套应用程序来控制和连接。安全始终是一个问题,我相信一旦原型启动并运行,这些事情就可以并且将会得到解决。 至于流式 gcode,我永远不会喜欢从 web 客户端逐行推送 gcode 的想法。即使使用 websockets,这似乎也不是一个好主意。我们只允许用户上传 gcode 文件然后执行它,在服务器端我们可以使用任何我们想要将该信息推送到 grbl 的东西。 其他用途如下: 我想上传一个 STL 文件并使用 Skeinforge 对其进行切片以进行打印作业。在我的cnc接线盒内准备好并配置一个无头linux盒会非常好。这样我就可以拿起我想要的任何笔记本电脑或计算机并上传我的 stl,让我的 webapp 运行 skeinforge 切片,在它可用并准备好时通知我,然后让我开始工作或排队。随着需求和应用程序的增长,这更有意义。 对不起,我现在都在说话。我将准备在春季晚些时候开始制作这只小狗的原型,并与任何感兴趣的人讨论细节。启动并运行某些东西不会花费很长时间。我已经有效地编写了大部分代码,只需要组织它并实现最终的管道。然后我们将不得不就我们(每个人)想要/需要什么进行更多讨论……我认为这会很有趣。 很棒的谈话! 斯科特 |
只需再添加一件事。就安装方便而言。多年来,我一直在部署独立的 Tomcat 网络服务器安装。没什么。我们可以提供预先配置的设置,只需下载并运行。从那里,我有一个作为安装/删除程序界面的 webapp,带有一个有点原始的包管理系统。从这里我们可以下载额外的服务器端功能和 WAR 文件并简单地部署。对于不干涉的用户,整个过程可以比在 Windows 上安装程序更简单。 斯科特 |
@csdexter: 同意。非常好的问题。而且很难回答,因为每个人都“想要”不同的东西。 我想应该首先承认我并不总是 100% 完成我的接线工作,当我的电脑运行足够高的电压以杀死我的笔记本电脑和/或 USB 端口时,我真的很紧张将新的 CNC 驱动程序设置连接到我的电脑(尽管一台蹩脚的笔记本电脑,但不想死)。我认为这里的目标是为 Grbl 创建一个非常简单且功能强大的无头控制器,而不会使计算机或有线网络上的东西因非常糟糕的接线工作而冒险。此外,一台用于 CNC 机床的专用计算机不需要我将笔记本电脑暴露在一堆铝屑中,这些铝屑可能会使某些东西短路或车库的严寒。 因此,用于控制 Grbl 并为 Grbl 提供 g 代码程序的 RPi 是最佳选择,无论是标准监视器 BYKAM 设置还是通过 VNC 联网和整洁的网络摄像头来监控进度。25 美元。无需来回怒斥笔记本电脑。只是一个始终存在的专用界面,随时可用。这就是工业界的做法,Grbl 也没有理由不能或不应该这样做。 至于网络服务器的想法,这只是我们在应用新技术方面可以做的扩展。如今,几乎每个人都有智能手机,而且总是随身携带。能够在任何时间、任何地点、自由地观察 CNC 机床的工作进度,这将是令人惊奇的,至少对我来说是这样。更少的时间看着机器移动或冲回电脑和检查 VNC,更多的时间做其他事情。 最后一点。通常,如果有一些紧急情况,通常是在您校对一段新的 g 代码时,如果它出现,您会在场、观看并准备好采取行动。一旦你确定一切都很好,你几乎可以让机器在无人看管的情况下运行,特别是如果你有足够的经验并相信你的机器没有任何问题。这在批量作业中很常见,在这些作业中,您要生产大量相同的零件,或者有一个可能需要数小时的非常长的程序。 |
如果我们为 Raspberry Pi 制作这个,我们应该只创建一个 问候, 在 2013 年 1 月 29 日下午 6:21,斯科特卡尔森写道:
|
没门!Lasersaur 的家伙有一个很好的网络界面,他们从 beaglebone (或者如果你想将一个专用于机器)提供给计算机。他们使用 python 为网络应用程序提供服务,当我上次检查时,他们没有将实时数据发送到网络界面。 我喜欢把它变成一个网页并让机器连接到 wifi/lan 的想法。带着平板电脑/手机在 cnc 上运行作业会非常棒!更不用说,使用 html/css/js 对接口/内部进行黑客攻击时的准入门槛更低。 今晚我将建立一个原型 |
哇,那天晚上有这么多回复;_) 我只是想展示我的设置,而不是对 Web 解决方案说任何话,我真的很兴奋它的外观和工作方式。我认为部署不会是一个问题,一旦安装了 Java 和 rxtx-stuff,这应该是困难的。 在考虑如何实现我的解决方案时,我虽然考虑过编写一个 android 应用程序并通过蓝牙使用它来将 GCode 流式传输到 grbl。GUI 已经准备好了。 但我喜欢 Raspberry+TFT 和 VNC 解决方案的原因是我可以完全控制机器(在 90% 的情况下我需要),而无需额外的设备,并且可以选择从远程查看它。 顺便说一句,对于最重要的命令和控制主轴电机、激光和清洁器,我正在构建一个带有真实开关的控制面板和一个额外的 Arduino。 我真的很想看到有动静和很多人在做这个项目。 约翰内斯 |
@derFrickler: 现在来做一些广告: 所以如果我们创建一个标准的 grbl-proxy/server 来让不同的 guis/frontends 可以连接,那就太好了!
|
嗨科迪, 如果距离很短,我认为蓝牙就足够了。grbl 缓存命令,串行速度仅为 9600 – 但这只是一个想法。 是的,我知道 grblgui,将 3D 窗口集成到 UniversalGCodeSender 中会非常酷。 您使用代理的想法很好,但也许我只是不明白为什么我需要一个具有完全实时控制等功能的 Web 或远程应用程序。 我在这里的正常“工作流程”是进入地下室,将木材等固定到磨机上,定位磨机,加载 gcode 文件(在这里很高兴看到文件中设置的刀具路径和零位)并点击运行。然后,如果这是新的和重要的事情,我会留在工厂观看铣削,或者在正常情况下,我会上楼听磨坊主轴停止,然后下楼拿起我的东西并关闭所有东西。 如前所述,这就是我使用它的方式。 |
当然,这取决于您如何使用您的机器。我总是待在机器旁清理线束。我没有测试它在被股线覆盖时是否仍然有效。 但是无论你使用什么前端,当你通过网络做事时,你都需要我描述为“grbl-proxy”的功能。 无论如何,紧急停止和状态报告都需要 webapp 中的实时控制。您可能不需要点动控制,但这只是一个额外的小功能。此外,您不需要根据您是否靠近/远离机器来切换前端。你可以从你的智能手机/平板电脑/任何东西上做任何事情。 我不知道蓝牙的延迟。grbl 需要非常快的命令,因为它的缓冲区非常小。 |
+1 模块化。 @derFrickler:一般来说,我建议不要依赖 Grbl 的规划器缓冲区。如果可能的话,它应该一直保持满。这确保了诸如通过曲线(许多短线段)的快速运动之类的事情以可能的最高速度运行。并作为@cody82声明,缓冲区很小,主要是由于 Arduino 的速度和有限的 2K ram。 无论如何,我看不出 webapp 会如何改变你的方法。您仍然可以直接在 RPi 上打开 Web 浏览器并直接在 CNC 上使用该界面,而不是基于 Java 的 UGS。现在唯一的区别是您应该能够使用任何设备来控制 Grbl。这确实带来了一个好点,我们如何区分同一网络服务器上的多个设备? 现在,我认为我们不需要太复杂的东西。只是一个可以构建的概念证明。就像能够指向 RPi 上的 g 代码文件进行流式传输、流式传输和一些基本控件一样。如果这没有太大问题,我认为这可能很棒。尤其是因为我们只需要为 RPi 开发,而不必担心让事情跨平台这么多。 |
你们到底是从哪里买树莓派的?我在美国东海岸,似乎找不到任何没有标记的东西? 斯科特 |
哈哈!无处。我借了一个碰巧碰巧的朋友。需求是荒谬的,我认为这种情况不会很快发生变化。RPI 网站说它有库存,但似乎有一个候补名单,至少对于美国订单来说是这样。 |
试试http://www.mcmelectronics.com/product/83-14421 2013 年 1 月 30 日星期三上午 7:45,Sonny Jeon notifications@github.com写道:
|
@chuck-h谢谢!好像有货。将不得不抢2! |
@chuck-h: 也谢谢我!订购了 4 个(不是我的全部)。希望我不会收到一封电子邮件说他们缺货。 |
呵呵,去年春天第一批得到了 2 个 Raps,但由于它们对于家庭服务器来说有点慢,我不得不为它们找到一个新的工作地点。 |
查克-h 评论 2012 年 12 月 24 日
似乎工作正常!
http://opensourceecology.org/wiki/GcodeCommunications#Universal_G-code_Sender_on_Raspberry_Pi