讨论:Mini CNC:修订间差异

来自工场百科
→‎Axis 界面:​ 新章节
第29行: 第29行:
LinuxCNC 只支持特定型号的PCIE转并口,选型时应当格外注意。
LinuxCNC 只支持特定型号的PCIE转并口,选型时应当格外注意。
一开始选用AX 99100,发现不work(没有配套并口驱动)
一开始选用AX 99100,发现不work(没有配套并口驱动)
后来换成了9901,能work
后来换成了9901,还是不能work<br>
最后换成了若溪哥哥带并口的主板,终于能work了


== Stepconf 细节 ==
== Stepconf 细节 ==

2021年9月1日 (三) 21:00的版本

讨论实验

Latency and Jitter

魏冰川讨论) 2021年8月19日 (四) 15:09 (CST) latency 和 Jitter 是LinuxCNC 对机器要求最重要的两个参数,Linux CNC为RTOS,运行有servo thread(1ms) 和 base thread(25us), 后者用于步进电机控制,是最为重要的关注对象,一般要求Jitter在25us内可以获得良好效果。 Jitter可以在Application->LinuxCNC->latency test中进行测试 可以使用glxgear等软件增加负荷 

关于Windows下的Mach3

--魏冰川讨论) 2021年8月19日 (四) 20:55 (CST) Mach3支持WindowsXP,Windows 7 32bit,考虑到Windowsxp对sata接口的支持有问题,我一开始选择了Windows7,然而使用精雕机官方提供的Mach3破解,软件汉化之后的UI被修改,感觉非常山寨,更离谱的是每次打开软件,电脑都会出现黑屏错误,修改数据读写保护等设置都没有改善这种状态。于是换用了LinuxCNC。在调LinuxCNC的过程中王冠同学觉的是国内的Mach3破解有问题,于是从国外下载破解的软件,企图用Windows使之工作,但是仍然出现黑屏的问题,遂彻底放弃此方案,转向LinuxCNC。

CNC参数获取

--魏冰川讨论) 2021年8月20日 (五) 10:20 (CST) 使用LinuxCNC,需要获取CNC的各项参数。 电机部分:步距角1.8 电机驱动(问商家得到):细分1:8 丝杆:有丝杆信息 并口映射(从原来的Mach3配置文件中获取): X/Y/Z Dir/StepPin 容易理解,可以直接使用 Spindle Index 直接从xml文件读取信息有难度,可以在Windows电脑上装Mach3(不需要破解),然后用loader把xml文件导入,再在配置里面看各引脚映射

并口

--魏冰川讨论) 2021年8月25日 (三) 21:58 (CST) LinuxCNC 只支持特定型号的PCIE转并口,选型时应当格外注意。 一开始选用AX 99100,发现不work(没有配套并口驱动) 后来换成了9901,还是不能work
最后换成了若溪哥哥带并口的主板,终于能work了

Stepconf 细节

--魏冰川讨论) 2021年8月25日 (三) 21:57 (CST) 配置里的BothLimits and HOME 是指home switch,问题是:我们的机子上并没有硬件home switch, 但是一个limit switch可以被用作home switch。 关于Home的详细说明参考 http://linuxcnc.org/docs/2.4/html/config_ini_homing.html 每次home后机器会回到机械右上角点,然后将此点处坐标标记成(0,0,0),然后在接下来的运动中,机器只能在0 - Max范围内移动,然而bug在于,三轴继续正向移动只会触发限位开关,所以三轴实际上无法进一步移动,这个bug让我反思stepconf中每个轴配置中的Home location, table travel, home switch location 这几个量。

首先更改home location 在更改之后,仍然运动到限位开关处,但是此点处坐标不再是(0,0,0)而是home location的值,而机器的行程仍然是0-Max,这使得三轴不再是被卡到home处,通过这个也知道了table travel中的值正是基于G53坐标的。

思考CNC总是回到右上角点而不是左下角点的原因,想到一种可能的原因:我们没有home switch,所以机器只能朝一个方向试探,在试探过程汇总trip到了limit switch,于是在A点停止,能否通过更改试探的方向,使得机器能在B点home呢?因为我想使用正的坐标,这样可以对后续的G code采用的坐标系统进行一个sanity check。 在stepconf 中修改了home search Velocity ,将其调成负值 它 W O R K 了!

由于我们使用的4060CNC在触发Limit switch 的时候会自动向后移动一个固定offset,所以不必担心serach velocity带来的问题,可以把它调大一点儿。 但是后面又发现limit switch 用作home switch 和直接使用home switch 是不同的,电机会在触发limit switch 之后再次调整位置,触发limit switch 同时导致电机进入急停,一方面这会碰撞机器,另一方面使得home all无法使用,目前还没有一个比较好的解决办法。

Axis 界面

--魏冰川讨论) 2021年9月1日 (三) 20:50 (CST) 打开LinuxCNC 不知道为啥home之后XYZ不为零,就很懵逼,仔细查看发现是坐标的显示格式发生了变化。
在Axis中,工具栏->View中可以设置坐标的显示格式,分别可以选择show commanded/actual position,show machine/relative position,两两组合有四种坐标的显示模式。
对于Machine Actual模式,XYZ 值表示刀头在绝对坐标系中的位置,Homing过后,XYZ值都变成零,G54 三个坐标值表示G54坐标原点在机械坐标中的坐标值,touch off之后,XYZ值不变,G54坐标值变为当前XYZ值。
对于Relative Actual模式,XYZ值变为刀头在工件坐标中的数值,homing过后,XYZ值不一定归零,G54三个坐标值表示G54坐标原点在机械坐标中的坐标值,touch off之后,XYZ和G54值相反。
在Homing之外,有一个操作为Zero Coordinate System, 这个操作就是将G54坐标原点与机械坐标原点重合。
在View中还有其他设置,打开Show machine Limits是非常有帮助的。