注释
我偶然发现了一点,并认为我找到了解决方案。 在 gcode.c 文件中,我找到了以下用于主轴控制的代码块:
并添加了另一个 if 语句。所以意图是,如果命令是打开主轴,它会使用我在文件其他地方找到的代码执行进给保持。
所以现在当 gcode 发送 M03 命令时,它会进入暂停状态。我在一个 gcode 文件上对此进行了测试,该文件在剪切一些字母的过程中会触发两次火炬。将屏蔽上的恢复引脚接地,然后恢复程序。通过 UGCS 发送的“~”恢复命令在此保持状态下将不起作用,但我应该能够忍受。我只是想知道这是否表明我忽略了一些可能导致问题的东西。 |
G4 会在一段时间内停下来,为你想要的而工作吗? |
不,因为探头将花费不同的时间,具体取决于割炬头在开始时与工件的距离。探针完成后,THC 将信号发送到等离子电源以触发电弧,因此 CNC 需要在与该电弧相关的精确时间恢复运动。 |
危机 评论 2017 年 7 月 8 日
我认为这是错误的方式。例如,如果您启动 ARC,并且 ARC_OK 未在 2 秒内到达,则必须发出错误并且必须全部关闭。您可以在外部处理此问题,与压力传感器(微动开关和硅胶管)相同,以便在压力缺失时关闭,同时您必须/应该计时 ER 和消耗品的使用。做 THC 很简单,我不明白你对 arduino 有什么问题,也许只是拍一张 arduino 板的照片和包括接地在内的连接示意图。可以显示问题。也许等离子桌和电缆链的整体照片还不错。2017-07-08 2:37 GMT+02:00,bduplan <notifications@github.com>:
|
THC 很简单,在 THC 端需要什么: ―> ARC OK ―> THC UP ―> THC DOWN <― Torch ON <― 协议 /Charge Pump <― THC LOCK 如果不是 UP/DOWN 它应该发出脉冲,而不是up/down <― Z DIR <― Z STEP ―> THC STEP ―> THC DIR 和如果不是等离子不在 Z 上直接通过,并且在运行过程中发出简单的脉冲发生器 在等离子运行过程中,通常不驱动 Z 轴,它仅在两种情况下驱动:材料高度检查以设置正确的起始高度以及使用不均匀切割的小材料作为控制回路更快。基本上有 2V 50/60Hz 的噪声过大,这就是为什么较高电压比较低电压更可取的原因,因为具有 150V 和 2V 噪声不同于具有 2.94V 和 2V 噪声。那没问题,但这意味着,作为具有 50Hz 的示例,需要集成 2500 个样本(50khz)或 60hz 3000 个样本。这将最大单个样本值降低到 50 或 60 / sec。如果平均 4 个样本,即低平均,这是 12.5 或 15 个实数值/秒。由于有向上/向下的反馈,这仅适用于较厚的材料。较薄的材料需要预先使用欧姆传感器和软件校正进行映射,或者使用更高的传感电压。Grbl 需要什么。这取决于您使用什么以及是否使用 WDT。以 TORCH-ON 为例,它必须以 2 秒的间隔自动触发 WDT,如果产生中断,它应该中断等待反馈信号并返回 ERR。等离子有两种传感器,一种是欧姆传感器,通常在运行期间自动停用,另一个是接触传感器和/或碰撞传感器。两者都可以使用探头输入,也可以使用 m4 来切换传感器。如果这两个输入都被触发,则需要立即暂停,因此应将其映射到限制开关,如果等离子正在运行且探针输入处于活动状态,则应尽快停止。A4 可用于回读 ARC-OK 的信号 等离子表还有什么其他要求。通常等离子工作台可以在没有限位开关的情况下工作,并且只需要对穿孔高度进行 Z 控制,并且通常有伺服驱动的微动开关来检查穿孔高度。工作时,(ARC-OK)不使用 Z 引脚,如果继电器外部交换此引脚,此引脚可用于其他用途。其他 Z 引脚 DIR XYZ STEP XYZ ENABLE LIMIT XYZ M3 主轴使能 M4/M12 主轴方向 ABORT/FEED-HOLD/START M8 M7/M10 探针等离子切割需要: DIR XY(Z) STEP XY(Z) ENABLE ABORT/FEED-HOLD /START M3 (Torch ON) M4 (Scribe ON) M8 (LOCK) M7 (交换 Z 轴或气动 Z,启用它) Probe (ohmic sensor) Limit Z (Limit + and – + collision switch) 操作面板有一个开关将碰撞开关路由到探头输入 Limit X 设置用于归位和限位开关。极限 Y 用于 ARC ON 输入 需要的修改是:需要使用 M5 关闭 M4,但是可以使用 M12/M13 来代替以具有相同的行为。2 秒计时器确定并检查限制 X,包括启用软件方法来设置和获取(arduino)THC 上的方法以计算耗材使用量,秒)限制 Y 不应进入停止模式,相反,它应该暂停和/或记录它已执行的行号,因为它经常是等离子工作 10 分钟,暂停 90 秒,然后再次工作 10 分钟。如果发生这种情况,发送者软件必须知道它执行了哪些代码和位置,因为它需要再次触发火炬,如果不起作用,请等待 30 秒,再次触发,等待 60 秒,再次触发, 等 120 秒再开火,等 300 秒,再开火,等 600 秒,最后一次托盘。并在可能的情况下继续工作。后处理器必须代替 M3 生成如下代码: ( G31Z-100 ) G38.2Z-100 F100 G92Z0 G0Z4.8 (或程序中的高度计算,使用后处理器中的变量来获取穿孔高度)M3(此处应触发 2 秒计时器,并且在 limitY 为 ON 后,该限制应包含在限制掩码中)G4P0.8(穿孔延迟,thc 延迟设置为 1 秒)F3200(或从程序计算的速度,使用后处理器内的变量作为穿孔高度)。用于设置或存储/调用它。最终 G70 最大的问题是,对于不同的材料或速度,需要再次运行后处理器,因为不可能使用变量,并且每个穿孔 (m3) 都会破坏 F 速度。这是一个大问题。在这种情况下,我建议添加 10 个变量,可以使用 $99N 设置并使用 #99N 调用,#97N 可以是输入引脚,…,#90N 是当前系统位置,#91N 是规划器/Gcode 位置。 .. 并添加符号 [ thc 延迟设置为 1 秒)F3200(或从程序计算的速度,使用后处理器中的变量来确定穿孔高度)。用于设置或存储/调用它。最终 G70 最大的问题是,对于不同的材料或速度,需要再次运行后处理器,因为不可能使用变量,并且每个穿孔 (m3) 都会破坏 F 速度。这是一个大问题。在这种情况下,我建议添加 10 个变量,可以使用 $99N 设置并使用 #99N 调用,#97N 可以是输入引脚,…,#90N 是当前系统位置,#91N 是规划器/Gcode 位置。 .. 并添加符号 [ thc 延迟设置为 1 秒)F3200(或从程序计算的速度,使用后处理器中的变量来确定穿孔高度)。用于设置或存储/调用它。最终 G70 最大的问题是,对于不同的材料或速度,需要再次运行后处理器,因为不可能使用变量,并且每个穿孔 (m3) 都会破坏 F 速度。这是一个大问题。在这种情况下,我建议添加 10 个变量,可以使用 $99N 设置并使用 #99N 调用,#97N 可以是输入引脚,…,#90N 是当前系统位置,#91N 是规划器/Gcode 位置。 .. 并添加符号 [ 最终 G70 最大的问题是,对于不同的材料或速度,需要再次运行后处理器,因为不可能使用变量,并且每个穿孔 (m3) 都会破坏 F 速度。这是一个大问题。在这种情况下,我建议添加 10 个变量,可以使用 $99N 设置并使用 #99N 调用,#97N 可以是输入引脚,…,#90N 是当前系统位置,#91N 是规划器/Gcode 位置。 .. 并添加符号 [ 最终 G70 最大的问题是,对于不同的材料或速度,需要再次运行后处理器,因为不可能使用变量,并且每个穿孔 (m3) 都会破坏 F 速度。这是一个大问题。在这种情况下,我建议添加 10 个变量,可以使用 $99N 设置并使用 #99N 调用,#97N 可以是输入引脚,…,#90N 是当前系统位置,#91N 是规划器/Gcode 位置。 .. 并添加符号 [#990 = X + 3.2 ] 添加一个小表达式计算器,忽略旁边的 [ 和 ] 将其用作 ( ) 和 [ #NNN = 调用应该等同于 $NNN = ,但在 gcode 中允许并且例如限制为 95x 到 999范围。表达式解析器很简单,但根本不需要,只需添加#9NN 符号并手动设置即可。您使用或编写的发送代码的程序是什么?2017-07-08 17:17 GMT+02:00,Cri S <phone.cri@gmail.com>:
|
感谢您的全面回复。我不得不承认,我需要一点时间来消化其中的大部分内容。我了解 THC 操作,因为我在设计我的第一个操作时花了很多心思。第二个 Uno 处理了您概述的所有功能。我遇到的问题是稳定性。有时切割时会崩溃。它会做一些削减,然后重置。因为我通过串行监视器处理了材料厚度识别,所以它会重置并询问用户切割中间的厚度。我遇到的另一个问题是获得准确的电弧电压。它非常准确地读取电池电压和 0-5V 之间的任何电压,但切断电压有点嘈杂,而且通常低于应有的电压。我拥有的 Hypertherm Powermax 45XP 提供分弧电压,但我想它没有很好地过滤。这是我需要测试的东西。我可以在运算放大器板上制作一个 RC 滤波器来测量电压。我不得不使用运算放大器,因为 Hypertherm 在 (+) 和 (-) 引脚上提供分压电弧电压 (50:1),但两者均未以地为参考。所以我制作了一个运算放大器电路,接地参考电压测量,以便 arduino 可以在模拟引脚上读取它。我还有一个让 arduino 更稳定的想法,我将通过简单地测量电弧电压并看看 Uno 的表现来测试它。所以我制作了一个运算放大器电路,接地参考电压测量,以便 arduino 可以在模拟引脚上读取它。我还有一个让 arduino 更稳定的想法,我将通过简单地测量电弧电压并看看 Uno 的表现来测试它。所以我制作了一个运算放大器电路,接地参考电压测量,以便 arduino 可以在模拟引脚上读取它。我还有一个让 arduino 更稳定的想法,我将通过简单地测量电弧电压并看看 Uno 的表现来测试它。 昨天,我设法在我的后处理器中获得了可靠的探测序列。有趣的是,如果探针后面跟着一个弧,我得到错误 33 并且它没有被执行。弧确实位于 0.0005″ 以内的路径上。通过将我的引导从弧更改为直线,它可以工作。我在最新的 grbl 1.1 和 0.9j 上验证了这种行为。 (附带说明一下,最新的稳定版 UGCS(1.0.9)在 grbl 1.1 上不显示机器位置,但在 0.9j 上显示。) 我买了 SheetCAM 来编写 gcode。SheetCAM 存储工具,我为每种材料厚度都有一个。不同厚度的再加工对我来说不是问题。我使用了 Mach3_plasma 帖子并对其进行了一些修改。这部分给了我探测: 以上工作正常,所以剩下的就是切割时响应分压弧压的调整。如果我能让我的另一个 Uno 来处理它,我可能会使用它。根据经验,我希望看到的问题是: |
hypertherm 的输出如 50:1 所述,实际上是 51:1,对于公差,它也可能不同。此外,我认为您没有所需的 Vref 上限,也许您也需要校准 5V 值。将值存储在 eeprom 中,如果它崩溃,您不需要重新输入值。您是否使用 USB 连接了您的第二个 arduino,或者如果不是没有电隔离到 pc?接地参考是什么意思?pierce delay 和 thc delay 需要关联起来,因为这通常是 fix 。10mm检查高度有点小,先回原点Z高度,以G53Z0为例。并且您对 pierce hieght 感到困惑,将其硬编码为 11,85 mm,然后使用 pierceHeight * 比例。1) 改用 pwm 或在 adc 读数之间发出它。2)如果您选择了两个具有相同引脚的不同端口,这很简单。例如,只是一个猜测:#define plasma_start ((PLASMA_PORT&_BV(PLASMA_PIN))==0) #define Z_MASK (_BV(Z_DIR_PIN)+_BV(Z_STEP_PIN)) noInterrupts(); while(!plasma_start) { PORTB=(PORTB&~Z_MASK)|(PORTA&Z_MASK) } 中断(); 这里 PORTB 是 step/dir 输出,PortA 是 step/dir 输入,在两个端口上使用相同的引脚。我不知道其他软件,但如果不使用上述类似的东西,arduino 的毫秒定时器中断可能是丢失步骤的原因。3)没有任何连接图和描述和照片,我只能猜测,根据这封邮件的回复,猜测是你在接地/EMI方面犯了大错误。4) 如果喷嘴额定为 100.000 秒,您需要在 20 秒时更换它。0000 秒表示有问题。2017-07-09 19:32 GMT+02:00,bduplan <notifications@github.com>:
|
回复:电弧电压校准。hypertherm 背面有一个 amphenol 端口,该端口具有用于触发电弧的引脚、接地引脚、arc ok 引脚(干式接地)以及用于分压电弧电压的 (+) 和 (-)。我首先尝试通过将 (+) 引脚连接到 THC Uno 上的模拟引脚并将 (-) 引脚接地来测量电压。这给出了非常不一致的值。(-) 引脚在切割时测量到接地时读取电压,有时它既是正的又是负的。所以我构建了一个微分运算放大器电路,它测量 (+) 和 (-) 之间的差异,然后输出该电压(这就是我所说的接地参考,因为电压现在是从所有的公共接地测量的控制使用。)起初,我在运算放大器电路上的增益是 1,你是对的,它在 5V 时确实有问题。然后我通过增加电阻将增益降低到 1/2,现在它可以准确测量 1.63V 的电池、两个串联的 3.26V 和 5V 的 Vref。在 5V 时,测量值为 4.96。 我将不得不查找如何写入 eeprom,但我不知道这可以通过编程方式实现,所以这是个好消息。 grbl Uno 和我的 THC Uno 都通过 USB 连接到笔记本电脑。THC Uno 似乎没电了,所以我也用 1A 9V DC 壁式电源给它供电。我认为这是导致我的崩溃问题的一个重要因素,因为电线没有屏蔽并且在我的电箱之外运行。 我有一个装有电子设备的家用断路器箱。它通过橡胶隔离器(电气和振动隔离)安装在桌面框架上,并通过 4ga 绞线直接接地到 8′ 接地棒。台架也与接地棒分开接地。所有接线(除了电源线)都被屏蔽并接地到脚架。在它们进入电子盒之前,我的电线上有铁氧体磁芯。盒子上的所有孔(一个用于 120 毫米风扇,另外三个用于排气)都覆盖有铝窗纱。grbl Uno 从不崩溃。 我的割炬头浮动在轴承上,4.85mm 是割炬头接触工件和触发探头开关之间的测量值。因此,当探头开关打开时,Z 轴低于零,因为它必须在割炬开始升高之前恢复。然后,我将割炬带到零上方 7 毫米处,然后返回以考虑运行 z 轴的螺杆驱动器的间隙。这确保了我得到正确的穿孔高度 (0.15″) 并且 z 轴在 grbl 要求它下降到切割高度 (0.06″) 时立即响应。我已经验证这适用于百分表,并且始终在 0.003″ 以内。 非常感谢您花时间帮助我!我将研究 _BV 函数和中断。我使用中断来测量 X 和 Y 步长,以便确定它们是否足够快地进给以进行 Z 调整,或者我是否应该在减速转弯时停止 THC。稍后我将在删除探测例程后发布我的 THC 代码,因为它在 grbl 中工作。 在测头后放置 G02/G03 圆弧后,您是否遇到过错误 33?如果我注释掉 G38.2 行并保持其他所有内容不变,则弧线工作正常。我现在使用线性导入而不是弧线。 |
通常你将等离子表接地,即(+)和(-)相对于地是负的,但如果钳子没有连接到表上,它相对于地是浮动的,实际上是几百伏。THC 不必接地,从不,从不,除了读数错误和不稳定性之外,这是一个安全风险,并且只使用真正的变压器,而不是 dc/dc 。如果您出于多种原因需要将 THC 连接到笔记本电脑,请仅使用光隔离串行连接,两个便宜的光耦和电阻器就足够了。如果您没有串行转换器,您可以将 arduino 用作 usb-ttl 转换器,将复位连接到地,并将 TX 和 RX(引脚 0 和 1)用于 rs232。连接 1kohm 电阻以在连接错误引脚时保护引脚,因为 TX 接收和 RX 发送。THC 必须根据电流调整高度,在等离子运行期间,grbl don’ t 必须发出除穿刺之外的任何 Z 运动。错误 33,将小数增加到 4(mm) 或 5(inch) 或将项目转换为公制然后做 CAM 并使用公制 gcode 文件,这是精度问题,尤其是在 Autodesk 产品中。2017-07-10 14:18 GMT+02:00,bduplan <notifications@github.com>:
|
等离子台接地到接地棒,接地棒被驱动到地面 8 英尺。我通常将等离子电源的大夹具夹在工件上,但我已将它夹在工作台和接地棒上(海宝的 Jim Colt 向其他人提出的建议。) 当您说不要将 THC 接地时,我不明白。您如何在不共享接地的情况下为其供电或让它向/从 grbl Uno 发送信号? 我的 gcode 是公制的,精度为 4 位小数。只有在 G38.2 存在时才会出错。如果我将其注释掉并离开 G92,它不会出错。(坐标都是错误的,但不会抛出错误。) |
最终我可以在模拟器上运行它并检查真正的原因。发布或发送原理图和连接图或 scetches,如果您不理解接地声明,我可以告诉您更多信息。如果您想要 g**gle 搜索“Class II”设备。
|
会做。希望今晚我回家时能有一些时间。
|
嗨,大家好, 我刚刚连接了我们的测试平台,明天太平洋夏令时间下午 6:00 将运行等离子/grbl 测试,在我们的 youtube 频道上直播。我们正在使用 Lotos LTP5000D 和 CNC 直式割炬。Grlb 版本 1.1f。 谢谢 辛 |
@zentoolworks 是否有更多关于 LTP5000D 的引脚排列、接线和技术数据等技术数据? |
这是我将 Uno THC 与继电器和 Z 驱动器连接起来的方法。X 和 Y 驱动程序(以及 A 上的克隆 X)是 grbl shield 上的 8825。我的下一步是取出为 THC 供电的壁疣,并在 EMI 滤波器之后从金属盒内部获取电力。与此类似:https ://www.picclickimg.com/d/w1600/pict/121235665835_/1pc-NEW-AC-Power-Line-EMI-Filter-10A.jpg 图: 如果有问题,我真的不需要在切割时将 THC 连接到计算机上。 这是我将运算放大器放入分压弧压之前的接线图。 运算放大器电路: |
LTP4000D Lotos 是一款没有任何探头反馈的 50A 机器。我正在使用 Pin12(主轴启用)来控制等离子炬触发器。目前,我只有 X 和 Z 轴设置,所以它只会切出一条直线。最后,我想先探测切割区域,并使用该数据来补偿割炬高度。 这是一个示例 gcode 序列,它将被发送到 grbl shield。我们现在假设表面是平的。 S1000 |
由于您没有发送 THC 的原理图或块原理图,因此我无法完全解决问题..-您有 1mh / 220mh / 什么的电感器,LC 滤波器可以阻止 HF 吗?它不是必需的,但它可以阻止很多噪音。- 您拥有的电源和 THC 在 GND 上接地。- 等离子表,接地在 (+) 上而不在 (-) 上,如果 THC 没有电隔离(光耦合器,….)。我确定您没有将等离子(+)连接到 thc 上的 gnd,但是等离子(-)这会产生电流隔离问题。2017-07-11 19:07 GMT+02:00,陈鑫<notifications@github.com>:
|
原理图是指草图吗?至于硬件,它只是一个 Uno。我没有电感器,但我有用于 RC 滤波器的电阻器和电容器,但我还没有组装。我是否应该将接地线与电源断开,留下负载和中性线?电源的金属底盘接触主电箱,主电箱也接地到不同的接地棒。等离子接地线确实连接到我的接地母线。我可以断开它。分压的 (-) 进入该运算放大器,因此可以确定 bw (+) 和 (-) 的差值。如果我将它连接到 THC 接地,则 (-) 将具有负电压。我不认为这可以在 Uno 的模拟引脚上读取。谢谢伯尼
|
这是 THC Uno 上的代码。我还没有运行这个特定的草图。我一直在运行另一个版本,其中包括探测,所以我只是移除了探针部分,这就是闭环电弧电压反馈部分的剩余部分。
|
是的,可以读取负电压,需要不同的电路。问题是不同的接地连接。我建议您购买 USB 转 rs232 ttl 接口(6 针)或使用 arduino 将其保持在重置状态以仅使用 USB 转换器。并使用光隔离器来保护个人电脑/笔记本电脑。 http://www.deep-shadows.com/hax/wordpress/?page_id=372 https://softsolder.com/2010/01/13/arduino-serial-optical-isolator/ 只需要 RX 和 TX 可能 PC 已接地并且 24V 电源已接地,也许使用带有多个电源连接器的电源线,您可以在其中移除接地连接。如果你已经调试完成,只需在THC中添加光耦,用于输入和输出的信号。如果电机驱动器有光耦,则不需要输出光耦。对于 eeprom,这里是设置配置的示例。如果在最后添加新变量,它不会出现问题,以防您将已写入数据的结构更改为 eeprom ,不仅要添加其他变量,还必须增加 VERSION,并且 VERSION 不能为 0xff 或 0。#include <avr/ eeprom.h> #define VERSION 1 struct settings_t { 长警报;整数模式;} 设置 = { 1234L, 0, }; void setup() { if(eeprom_read_byte ((void*)0)==VERSION) eeprom_read_block((void*)&settings, (void*)3, eeprom_read_word((void*)1)&0x3ff); eeprom_update_byte ((void*)0,VERSION); eeprom_update_word ((void*)1,sizeof(settings)); eeprom_update_block((const void*)&settings, (void*)3, sizeof(settings)); // … } void loop() { // 让用户调整他们的警报设置 // 让用户调整他们的模式设置 // … // 如果他们按下“保存”按钮,保存他们的配置 if ( digitalRead(13) == HIGH) eeprom_update_block((const void*)&settings, (void*)3, sizeof(settings)); 对于 adc 读数,您需要使用外部 VREF 或至少对其进行校准并在 arduino 上的 Vref 引脚上添加 0.1 个电容。long readVcc() { 长结果;// 根据 AVcc 读取 1.1V 参考 uint8_t mux = ADMUX; if(settings.flag&F_VREF) 返回 settings.calib; // 外部 Vref,不需要这个 #if defined(__AVR_ATmega32U4__) || 定义(__AVR_ATmega1280__)|| 定义(__AVR_ATmega2560__) ADMUX = _BV(REFS0) | _BV(MUX4) | _BV(MUX3) | _BV(MUX2) | _BV(MUX1); #elif 定义 (__AVR_ATtiny24__) || 定义(__AVR_ATtiny44__)|| 定义(__AVR_ATtiny84__) ADMUX = _BV(MUX5) | _BV(MUX0); #elif 定义 (__AVR_ATtiny25__) || 定义(__AVR_ATtiny45__)|| 定义(__AVR_ATtiny85__) ADMUX = _BV(MUX3) | _BV(MUX2); #else ADMUX = _BV(REFS0) | _BV(MUX3) | _BV(MUX2) | _BV(MUX1); #endif 延迟(2);// 等待 Vref 稳定 ADCSRA |= _BV(ADSC); // 转换 while (bit_is_set(ADCSRA,ADSC)); 结果 = ADCL;结果 |= ADCH<<8; ADMUX = 多路复用器;结果 = settings.calib / 结果;// 在 mV 返回结果中反算 AVcc;} 在你的代码上,arcVsum 如果使用 float 这可能会引入错误,请改用 unsigned long。并将循环增加到 10 赫兹。如果 (arcVavg > vTarg + vTarg>>3) do_nothing 而不是 80% 的速度,检查它是否工作得更好。如果进行校正,您必须加速循环,例如平均 10 个读数并发出步骤。步速从 2500 uS 开始,每一步减少 4 到 700 uS 的最小值,如果可以,将步数增加 16 到 2500 uS。这是完整的步骤,。对于微步,使用 625 降至 175 并减少 1。2017-07-11 23:56 GMT+02:00,bduplan <notifications@github.com>:您必须加速循环,例如平均 10 个读数并发出步骤。步速从 2500 uS 开始,每一步减少 4 到 700 uS 的最小值,如果可以,将步数增加 16 到 2500 uS。这是完整的步骤,。对于微步,使用 625 降至 175 并减少 1。2017-07-11 23:56 GMT+02:00,bduplan <notifications@github.com>:您必须加速循环,例如平均 10 个读数并发出步骤。步速从 2500 uS 开始,每一步减少 4 到 700 uS 的最小值,如果可以,将步数增加 16 到 2500 uS。这是完整的步骤,。对于微步,使用 625 降至 175 并减少 1。2017-07-11 23:56 GMT+02:00,bduplan <notifications@github.com>:
|
我订购了一些光隔离器,应该在星期一。我还订购了一条串行电缆和一个串行到 USB 转换器。我将光隔离 TX/RX 引脚,使用 1k 电阻,并将它们连接到串行电缆以与我的笔记本电脑通信。我还将隔离进入 arduino THC 的其余输入/输出。我使用的 Z 驱动器在板上确实具有隔离功能。 我将尝试摆脱接地回路。 我将使用 RC 滤波器过滤来自等离子体的分弧电压并读取参考电压,而不是假设它是 5.0。我将 arcVsum 更改为 unsigned long 并将循环速度提高到 10Hz。 你是说我需要在 Vref 和地之间连接一个 0.1uF 的电容吗?我假设这是为了过滤和稳定 Vref? 我一直在尝试理解 Z 步长和方向的端口掩码代码。首先,我假设如果 grbl 引脚为低电平,则当 THC 步骤/dir 引脚变为高电平时,我将需要二极管来保护 grbl arduino。 就代码而言,我一直在阅读有关 arduino 端口的信息,并且我想我遵循了您如何更改 Z step/dir 引脚的输入/输出状态。据此:https ://www.arduino.cc/en/Reference/PortManipulation ,端口 B 是数字引脚 8-13。我没有看到任何关于端口 A 的信息。 |
一定要极化 optos 的底座,否则它们会使 115k bps 信号变形。2017-07-18 17:22 GMT-03:00 bduplan <notifications@github.com>:
|
Oi, para todos, sei que esta Discussionão ficou um pouco para trás, estava acompanhado os comentários, gostaria de sabre sobre o desfecho final, se o colega bduplan conseguiu resolver seus problemas com o THC, e se possível passe para nós suas experiencias tais como , circuitos, placas, programas e dicas, pois creio que muitos estão também com o mesmo questiona, 包容性欧盟。瓦卢… |
我需要它来工作,几个月后,我屈服了,买了一个 Proma SD。现在效果很好,从那以后我一直在切割。 |
Stò usando grbl per il mio cnc taglio al plasma autocostruito tutto funziona bene fino a che non accendo il plasma , allora il programma si blocca e devo staccare usb e ricominciare ma aimè si blocca di continuo .In principio questo difetto lo faceva meno e ho potuto tagliare alcune cosette ma adesso non va .Cosa posso fare ? |
我有同样的问题。您需要屏蔽所有电机和开关电缆,并将屏蔽层仅在一端接地到工作台。然后你需要将桌子接地到接地棒上。控制器需要安装在与工作台电气隔离的屏蔽外壳中,并通过单独的电线接地到接地棒。所以它在技术上不是隔离的,但是在它们连接之前它必须通过接地棒,因此干扰是隔离的。我移除了与家庭布线的接地连接,因此只有一条接地路径。
|
grazie mille cercherò di fare queste cose che dici tu ,buon anno Il giorno 30 dic 2017, alle ore 15:13, bduplan <notifications@github.com<mailto:notifications@github.com>> ha scritto: 我有同样的问题. 您需要屏蔽所有电机和开关电缆,并将屏蔽层仅在一端接地到工作台。然后你需要将桌子接地到接地棒上。控制器需要安装在与工作台电气隔离的屏蔽外壳中,并通过单独的电线接地到接地棒。所以它在技术上不是隔离的,但是在它们连接之前它必须通过接地棒,因此干扰是隔离的。我移除了与家庭布线的接地连接,因此只有一条接地路径。
2017 年 12 月 30 日星期六上午 9:02 nicolaux ***@***.******@***.***>> 写道:Stò usando grbl per il mio cnc taglio al plasma autocostruito tutto funziona bene fino a che non accendo il plasma , allora il programma si blocca e devo staccare usb e ricominciare ma aimè si blocca di continuo .In principio questo difetto lo faceva meno e ho potuto tagliare alcune cosette ma adesso non va .Cosa posso fare ? — 您收到此消息是因为您修改了打开/关闭状态。直接回复此邮件,在 GitHub 上查看< #1260(评论) >,或将线程静音< https://github.com/notifications/unsubscribe-auth/AcjDOdF9DbWhzID6HmARCGUHl23Q_Yy-ks5tFkJYgaJpZM4OPChr >。
|
bduplan 评论 on 6 Jul 2017
我正在使用 v3.51 grbl shield 运行 0.9j。它在我的 4×4 英尺数控等离子台上运行良好,但我很难让割炬高度控制器工作。我编写了第二个 arduino uno 作为割炬高度控制器 (THC),它一直工作到等离子电源打开。等离子弧会产生大量 EMI,我只是无法防止 THC uno 在切割过程中崩溃并重新启动。它有时可以正常工作,但有时不能。我已经屏蔽并接地了所有东西,grbl控制器很好。我在设计、构建和故障排除之间尝试了几个月。无论如何,我现在已经准备好硬着头皮购买像 Proma THC 这样的集成单元。我真的需要让机器工作并使用它。
THC 获取 SpinEn 输出,当不使用 THC 时触发等离子弧继电器,并拦截它。它使用它作为触发器首先进行探测,然后将信号发送到继电器以启动等离子体。然后它等待一段预定的时间(约 0.5 秒)并向 CNC 控制器发送一个“Arc OK”信号,告诉它开始 X 和 Y 运动。我的 Hypertherm 等离子机在检测到电弧已穿透金属时也可以发送 Arc OK。
所以我的问题是:“arc OK”反馈可以作为恢复命令发送到 grbl,但我一开始不知道如何保持它。我希望有一种方法可以将命令放入后处理器中,从而使 grbl 进入暂停状态。我对此很陌生,所以我试着放一个“!” 紧跟在 M03 命令之后的行上,我相信您知道这会为不受支持的 g-code 命令引发错误。但我提到这一点是为了说明我正在努力实现的目标。有没有办法让 grbl 在继续之前基本上等待那个 Arc OK 信号?
谢谢你的帮助!