问题标签 [cnc]

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.

0 投票
3 回答
902 浏览

c++ - 机器实时处理

我将用 C++ 编写一个控制大型 CNC 机床的接口,它将在 Windows 上运行。出于安全原因,我希望这个进程在它自己的核心上运行,以便它可以实时运行该进程。如果它与 Windows 共享一个内核,那么所有的 Windows 进程都会在我的进程之前被处理。基本上,我如何确保我的进程始终位于处理队列的前面,或者我如何指定一个核心来运行我的进程并让另一个核心来处理 Windows?另外,有什么方法可以看到我的程序是实时运行的。AKA,这个核心正在处理这个程序,但是这个核心没有做任何事情,因为我们告诉程序不要在它上面运行。任何输入都会有所帮助。

0 投票
2 回答
749 浏览

android - 数控铣刀材料表示

我正在为 3 轴铣刀编写 CNC 模拟器。第一次尝试时,我将材质表示为 WxHxD 框(W - 宽度,H- 高度,D - 深度),带有 W 和 D 除数参数。因此,例如 W = D = 120,H = 50,W-div = 20,D-div = 20:

在此处输入图像描述

在每个步骤中,磨机都在去除材料,并且每个分割点的 H 坐标都被调整以模拟材料去除:

在此处输入图像描述

这种方法是可以开始的。但是要模拟铣刀的全精度,除数应该有很高的值,即对于 100 mm x 100 mm x 100 mm 的材料块,精度为 0.01 mm,除数应该是 10 000,这使得模拟几乎不可能。此外,设置除数可以使精度固定且不依赖于铣削参数(半径、高度、曲率等)。

使用当前解决方案的工作应用程序在 PC 机器上运行,但下一次迭代应该能够在使用 OpenGL ES 3.0 作为渲染 API 的移动设备上运行。

牢记这一点,问题就出现了从起始块模拟(最好是实时)材料去除的最佳方法是什么?第二个问题是使用什么数据结构和算法来实现这个目标。

0 投票
1 回答
470 浏览

math - Two possible paths for G-code circles

In G-codes a clockwise arc can be specified by e.g.

This code should give an arc between the current position and (2,0) with radius=2.

According to several sources (And Math) eg.

There will always be two circles/arcs that satisfies these conditions each with a clockwise arc. enter image description here

Which one is chosen and is it implementation/manufacturer dependent?

0 投票
1 回答
9863 浏览

arduino - 在 arduino 中使用 accelStepper 以恒定速度到达特定位置

我一直在尝试制作一个简单的两轴数控。我只是在开始阶段,我只是想查看 accelStepper 库。在 constantSpeed 和 Bounce 草图示例的帮助下,我有了一些想法并编写了以下代码。

当我上传这个草图时,电机不运转。但是当我将 runSpeed() 更改为 run() 并添加 setAcceleration() 时,电机会运行但加速。我不想加速。那么,有没有办法在不加速的情况下做到这一点。

0 投票
1 回答
115 浏览

python - 使用 txt 文件更改值

我正在做一个项目,我必须在 CNC 程序中手动编辑偏移量。我想在 python 中做到这一点,但是,我的经验并没有涉及到这样的事情。任何帮助是极大的赞赏。

代码示例:

我需要通过提示使用用户输入来更改 Z 值,并且我希望使用与输入相同的文本输出它,只是在 Z 中使用新值

例如:用户提示并输入值 .226

我希望输出是

0 投票
1 回答
1778 浏览

svg - 如何为 CNC 制作平滑曲线?

我制作了一个基于 Arduino 的 XY 激光切割机。我已经为它构建了机制并完成了基本运动,但我无法让它绘制直线和曲线。我最终希望能够将 SVG 或 Illustrator 文件转换为 Gcode,或者让 Arduino 直接解释和绘制它们

我的设置图片。

有像 GRBL 和 Rstepper 这样的库,它们提供基于 Gcode 的 2 线(步进和方向)指令。问题是我正在使用 ULN2003 芯片驱动两个步进电机,它使用 4 根线来步进电机的相位。

我可以让这些库中的任何一个用于 4 线控制吗?


如果没有,我将需要找到另一种方法来绘制我的设计。

我目前正在考虑如何为 SVG 或 G 代码样式指令制作函数。

会不会太慢?

0 投票
1 回答
94 浏览

java - 用于 CAD NC 程序的 Lexer

我正在评估使用不同格式的nc 程序作为输入来跟踪工具移动的可能性。使用词法分析器将不同的程序类型标记为元层,其中只存在统一的工具和点等似乎是个好主意。

但,

  • 我对词法分析一无所知。有没有一种简单的方法来创建词法分析器?也许出于EBNF
  • 您如何看待我的方法,您是否看到一种更可行的方法来提取数据并支持多种 nc 文件格式?

附加信息

  • 关于提供哪种具体类型的 NC 程序的信息是预先知道的。
  • 我不必检查 NC 程序的语法。我认为它们是有效的,因为它们已经在生产中使用。
0 投票
1 回答
135 浏览

algorithm - 使用路径几何的循环确定顺时针角度

我正在以编程方式创建路径工具,但我陷入了困境。我需要在锐角的连接中添加循环。我有所有数据,但仍然不知道如何确定何时为环弧设置 CW 或 CCW 角度方向。下面是固定 CW 的结果。

在此处输入图像描述

0 投票
3 回答
283 浏览

functional-programming - 学习数控车床编程

我想学习数控车床编程。首先,什么开源程序(类似 BobCAD-CAM)最好?其次,学习使用这些程序的最佳方法是什么?我期待着了解我的问题的答案。谢谢!

0 投票
1 回答
227 浏览

pdf - 如何将pdf数据发送到微控制器

我正在制作一台 CNC 激光 pcb 制造机,我想使用布局的 pdf 文件并将其串行发送到微控制器(avr),以便它可以控制两个步进器和激光二极管。我不确定如何发送 pdf 数据或如何解码。有人可以向我提供链接或建议,让我可以了解 pdf 的工作原理以及如何在我的应用程序中使用数据吗?如果我想让界面像打印机一样单击打印选项,我的机器将打印 pcb,我需要做什么?我不想使用任何软件,只想自己开发。请帮忙 !谢谢你。