问题标签 [g-code]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
perl - 使用 Perl 减少粘贴 3D 打印机渗出的 G 代码后处理脚本
这是我的第一篇文章,所以我希望我设置正确。
基本情况:我正在尝试使用后处理 Perl 脚本来更改我的自定义粘贴 3D 打印机的 G 代码行。为防止糊剂渗出,我通过手动更改 G 代码以在一层完成后缩回取得了不错的成功,回到原位并等待,然后继续下一层,然后挤出。然而,对于更大的 G 代码,这将是一场噩梦……
我正在努力克服 3 个主要障碍。
- 我如何“查找/索引到最接近的 E##(从 Z),读取值,减去回缩值,然后打印该新值?”
- 如何确保我没有阅读以注释/(;)开头的行并意外更改它们?
- 我不确定这是否是实现上述内容的最合乎逻辑的方法,或者是否还有其他用于粘贴挤出的切片机?这里的任何信息都会有所帮助!
到目前为止,我真正拥有的后处理脚本是这样的:
输出是:
我想重新创建的内容的简短摘录:我从之前的挤出中减去 8 来创建这条线 G1 E-0.66668 F1800。然后,在换层之后基本上只是打印了之前的挤压。G1 E7.33332 F1800.000。
g-code - 如何让便宜的 DRO 进入快速模式?
我有这个来自亚马逊/中国的便宜 DRO https://www.amazon.com/gp/product/B00E7XFF5Q/ref=ppx_yo_dt_b_asin_title_o07_s00?ie=UTF8&psc=1
我可以使用小型 FPGA 读取其中的值。文档说,如果处于快速模式,更新速率可以快到每 20 毫秒,但没有说明如何启用快速模式。目前,输出仅每 ~125 ms 一次。
我试过长按零和英寸/毫米按钮,以及各种按钮组合(包括电源),但模式没有变化。没有其他按钮。例如,没有输入线来发送命令。
有人知道如何让这个东西进入快速模式吗?如果这是一个不正确的 SO 论坛,我们深表歉意。我不确定其他 SO 论坛会接受这个问题(我尝试过机器人技术)。
谢谢
传感器
python - 在 .gcode 文件中搜索以特定字母开头的字符串
我有一个名为test.gcode
. 该文件包含以下数据:
您会注意到每个“块”代码都由换行符分隔,并由'N Code'
每个“块”第一行中的(我的描述)标识。所以对于这个例子,我们有两个“块”:N100
和N200
.
在每个“代码块”中都有一个包含“T”的字符串,a 'T Code'
,(我的描述)不等于T0000。
在此示例中'T Code'
,N100
块的为“T0101”,'T Code'
块N200
的为“T0303”
我想读取这个文件并输出一个包含以下内容的 txt 文件:
到目前为止,我有以下内容:
我对如何找到每个块的关联 T 值并写出文件感到困惑。
任何帮助将不胜感激!
g-code - arc 缺少 RJK 词
我有一个代码。在 Math3 CNC 中编译时,我在 5 行出现错误:
arc 缺少 RJK 词
但我不想做插值,这是我的出发点。问题是什么?
javascript - 用于解析 Gcode 值的 javascript 正则表达式
我已经用头撞了2天,但仍然无法破解它。
我有包含数百行 XY 位置数据的 Gcode 文件,我正在尝试计算正则表达式以仅提取“X”和“Y”字符之后的浮点值。
Gcode 的每一行通常都喜欢这样,并且使用起来相当简单
G1X445.71Y602.47
但偶尔我也会有这样的奇怪线条,这让它变得更加棘手
我正在尝试制定正则表达式以在任何这些情况下仅提取 X 和 Y 值。这些值始终为正浮点数。如此神奇的正则表达式代码是这样的
以及偶尔不一致的线条
- G1X446.11 --> X= 446.11 Y=null (为缺失的 Y 值添加一个空值)
- G1Y601.91 --> X= null Y= 601.91(为缺失的 X 值添加一个 null
- G1X445.73Y602.26S76.5F300 --> X= 445.73 Y=602.26(忽略 F 和 S 值)
我最接近的是,
X(?:\d+\.\d+|\d+)
但它仍然保持 X 为“X445.71”
任何建议都非常感谢...
decode - 如何解码 .dxf 文件?
我想将 .dxf 文件中的图纸转换为 g 代码。有工具可以做到这一点,但我想自己编写代码。因此,第一部分是解码 .dxf 格式。然而,.dxf 文件的内容看起来并不容易破译。
我在这里下载了一个 .dxf 文件并在文本编辑器中打开它。
我也指的是这本手册。看起来 .dxf 文件中的内容主要是样式和配置信息,我倾向于省略几乎所有内容。那么,1.你能指定不应该省略的属性吗?
据我所知,这些数字在 .dxf 文件中分为多个实体。因此,我只是复制粘贴实体部分。请注意,文件中有 6 个部分,最后一部分(块对象)是最长的部分,尽管我不知道那部分代表什么(如果你能解释一下就好了)。
在下面的代码中,10 和 20 应该代表 X 和 Y 位置,42 应该代表凸起。可以跟踪折线。我考虑使用 TITLES 作为导航点以及 10、20 和 42 等数字从文件中提取信息。但下面有两条折线。那么,2.我应该考虑哪条折线,另一条的用途是什么?
相关问题
decode - 在 .dxf 文件中要考虑哪些字段以获得准确的 G 代码?
我想将 .dxf 文件中的图纸转换为 g 代码。有工具可以做到这一点,但我想自己编写代码。因此,第一部分是解码 .dxf 格式。
我在这里下载了一个 .dxf 文件并在“文本编辑器”中打开它。我也指的是这本手册。看起来 .dxf 文件中的内容主要是样式和配置信息,我倾向于省略几乎所有内容。
有关坐标的实际信息似乎SECTION
在 ENTITIES
. 我在下面复制粘贴此部分。有两个LWPLOYLINES
where10
代表顶点的 X 位置和20
Y 位置。42
表示图中关于bulge的一些信息。
问题是,在将 dxf 格式转换为 G 代码时,除了坐标之外,我还应该考虑什么?另外,我不知道这些信息存储在 dxf 文件中的什么位置。
我想到的是:
- 单位,即米、毫米、英寸
- 偏移量,即根据(0,0)点
- 比例,即1:8、1:100等。
那么,我应该知道哪些字段才能从 dxf 文件中获取准确的 G 代码,以及这些字段在文件中的什么位置?谢谢你。
相关问题
google-apps-script - Google App Script - TypeError:无法读取未定义的属性“getResponse”
我正在关注如何自动更改通过 Google 表单上传的文件的文件名的教程。运行脚本时,我收到以下错误:
这是脚本:
第 19 行是这一行:
关于问题是什么的任何想法?
顺便说一句,我是个菜鸟,所以如果可以的话,请用勺子喂我:P
干杯
xml - 是否有人类可读的机器控制文件格式
我正在寻找一种通用的机器控制文件格式来与设备交互。该设备由各种阀门、泵和加热器组成,并运行嵌入式 C。我希望能够在文件定义的“脚本”中控制这些设备的激活顺序。如果格式也支持循环或条件语句,那就太好了,如果非技术用户可以理解和编写脚本文件,那将是有利的。该文件将由机器的固件解析。
像下面这样重复说明 5 次:
有这样的格式吗?或者我会更好地实施自己的?快速浏览一下,GCode 可以在更新的版本中支持循环,但它的可读性不是很好。
regex - 用于 PC 上 CNC 代码更改的 Kate Text Editor 正则表达式
使用某些 CAM 软件时,CNC 代码通常以空格正确生成。但是例如,当通过 USB 或网络移动到“Citizen Cincom L20”机器并在那里进行编辑时,它会丢失空格并丢失分号,同时保留无论如何都可以用作分号的新行。
但是由于 CNC 程序的编辑发生在 3 个地方:CAM 软件(在这种情况下为 ESPRIT)、CNC 机床控制器以及通过计算机上的文本编辑器作为 ESPRIT 中的后处理器是垃圾。我想出了这个正则表达式
所以
变成
这在 Kate 中起作用,可以将所有内容重新分开,以便更清晰地审查代码。关于它的唯一问题是我需要为每个文件手动执行此操作,并且我想自动化它,最好是通过 Kate,所以它会在打开任何 ????.PRG 纯文本文件时发生。
但是我不完全知道应该如何称呼这种情况是宏还是什么?我正在寻找一些建议来实现这一点。或者也许一些替代解决方案