查看: 53655|回复: 17
打印 上一主题 下一主题

适合各种机型的平台自动调平

[复制链接]

2

主题

10

帖子

532

积分

版主

Rank: 7Rank: 7Rank: 7

积分
532
跳转到指定楼层
楼主
发表于 2014-7-22 21:06:54 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式
本帖最后由 开水 于 2014-7-23 16:17 编辑



三角洲的自动调平已经是标配了,有人说其它机型装不了,但其实各种机型都可以装上的,不管哪种机型,自动调平的原理都是一样,区别只是探测开关的安装方式、位置不同而已。
平台校正不但费时,而且经常失败,实在是很令人泄气!研究了Marlin之后,终于将平台自动调平功能加进来了!!这个功能将原本Z轴的Endstop,改装到挤出头的旁边,让Endstop直接接触打印平台,让Marlin直接测量到平台的实际位置。不但如此,Marlin会测量平台上3~4个不同位置,然后计算出整个平台倾斜的状况,并依此修正打印平台的水平方向,让打印件跟着平台一起倾斜,打印件本身的三维维持垂直。如此一来,就不必每次打印前,都要耗费时间跟精神,手动做平台校正工作。






硬件


舵机我选用SG-90,比较轻巧,耗电也不多,可以直接使用RAMPS的5V电源而不至于让RAMPS死机。
i3用的舵机支架,以及探针脚,参考这里:http://www.thingiverse.com/thing:182889 探针的微动开关,直接使用用Z轴的EndStop。不过走线比较长,要重新布线。 探针的最低点,要比喷头的最低点还低,但不要低过一公分,避免探测过程中发生碰撞。 舵机接线如下图所示:










下面图中,1是短路点,2是插舵机线的位置和线序。







固件设置步骤预先烧录      以下红色字是需要修改的选项和数值
  • 将configuration.h中以下这几行的注解符号删去(行首的"//" 删掉)

#define ENABLE_AUTO_BED_LEVELING // Delete the comment to enable (remove // at the start of the line)
#define NUM_SERVOS 3 // Servo index starts with 0 for M280 command
#define SERVO_ENDSTOPS {-1, -1, 0} // Servo index for X, Y, Z. Disable with -1
#define SERVO_ENDSTOP_ANGLES {0,0, 0,0, 165,60} // X,Y,Z Axis Extend and Retract angles


  • NUM_SERVOS 改为1

#define NUM_SERVOS 1 // Servo index starts with 0 for M280 command


  • 将Marlin 烧入RAMPS
  • 烧录完毕后,舵机臂会转动到60度的位置。
  • 使用M code "M280 P0 S angle"    (angle就改成需要转动的角度)可以控制舵机臂转动到指定的位置(例如M280 P0 S60),找出探测时应该要在几度,收起探针应该要几度。假设找出来的度数分别是165度跟60度。
  • 将找出来的度数填回"SERVO_ENDSTOP_ANGLES"。然后重新烧录Marlin。
测量探针与挤出头的相对位置
  • 在打印平台中央做个小记号,然后移动挤出头的位置,让挤出头正好碰触记号。
  • 用G code "G92 X0 Y0 Z0"让Marlin 把现在位置当作原点。
  • 用G code "G1 Z30" 把Z轴抬高。
  • 用M code "M401",让舵机移动到探测的位置。
  • 用控制软件移动XY轴,让探针接触点在记号的正上方(这个步骤不必非常精确,位置大概对就好)。
  • 用控制软件,让Z轴每次下降0.1mm,并检查探针是否被触发。可以用M code "M119"来确认是否触发。这个步骤必须非常精确,要测量到探针刚好被触发时Z轴的高度。
  • 触发后,使用M code "M114"读回目前XYZ座标。(如果有LCD,可以直接参考LCD上的数据。控制软体上的XYZ座标会有错误,请不要参考。)
  • 读出来的座标,乘以负一之后填入设定档。假设M114读回来的座标是X:24.3 Y:-31.4 Z:5.1,则在设定档中,找到以下这三行,并且把数值如下填好。

#define X_PROBE_OFFSET_FROM_EXTRUDER -24.3
#define Y_PROBE_OFFSET_FROM_EXTRUDER 31.4
#define Z_PROBE_OFFSET_FROM_EXTRUDER -5.1

设定测量位置
  • 这四个参数用来设定测量面的边界,请依照机器XY工作范围的边界做缩减后,填入设定档。如果手边的机器是Prusa i3,可以直接使用以下的数据。

#define LEFT_PROBE_BED_POSITION 30
#define RIGHT_PROBE_BED_POSITION 140
#define BACK_PROBE_BED_POSITION 140
#define FRONT_PROBE_BED_POSITION 30


  • 测量过程中XY轴移动的速度,单位是mm/min,建议用预设值就好。

#define XY_TRAVEL_SPEED 6000


  • 探测前抬高Z轴,避免探测脚与平台相撞。可以先设到50mm。如果有把握不会撞到,再回来改。

#define Z_RAISE_BEFORE_PROBING 10


  • 探测过程中抬高Z轴。如果平台没有倾斜得很厉害,探测过程中应该是不会撞到平台的。用预设值就很​​安全了。

#define Z_RAISE_BETWEEN_PROBINGS 10

最后烧录
  • 相关设定都完成了,再烧录一次Marlin,机器就具备平台自动调平的功能了!
G-code Prefix修改
机器只会照着Gcode的指令工作,一般切片软件产生出来的G code,并不会通知机器要做平台自动补正。如果没有加上自动补正的命令稿在G code Prefix里面,那就没办法享受到自动补正的功能,甚至还会造成机器的伤害。千万要小心、耐心做好以下的步骤。

KISSlicer


M104 S<TEMP>;开始加热挤出头
G92 Z0;目前的Z位置设为原点
G1 Z10; Z向上移10mm,避免探针放下时发生碰撞。
G28 Y; Y轴归零
G28 X; X轴归零
G1 X100 Y100 F6000;挤出头位移到平 ​​台中心
M401;放下探针
G28 z; Z轴归零
G29;平台补正侦测
G1 Z5 F3000 ;抬高Z轴
M109 S<TEMP>;等待温度到达工作温度
M82; E轴使用绝对座标





Slic3r  Cura

M104 S[first_layer_temperature];开始加热挤出头
G92 Z0;目前的Z位置设为原点
G1 Z10; Z向上移10mm,避免探针放下时发生碰撞。
G28 Y; Y轴归零
G28 X; X轴归零
G1 X100 Y100 F6000;挤出头位移到平 ​​台中心
M401;放下探针
G28 z; Z轴归零
G29;平台补正侦测
G1 Z5 F3000 ;抬高Z轴
M109 S[first_layer_temperature];等待温度到达工作温度
M82; E轴使用绝对座标





修改好之后重新切片,就可以开始测试平台自动调平的功能了。
实际使用时Z轴高度可能还是会有些误差,需要回头微调Marlin中的Z_PROBE_OFFSET_FROM_EXTRUDER参数。

参考资料https://github.com/ErikZalm/Marlin
http://reprap.org/wiki/RAMPS_1.4
http://kisslicer.com/
http://slic3r.org/





回复

使用道具 举报

68

主题

115

帖子

5554

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
5554
沙发
发表于 2014-7-23 18:08:14 | 只看该作者
高质量的帖子,造福大家了
回复 支持 反对

使用道具 举报

0

主题

2

帖子

13

积分

红蚂蚁

Rank: 1

积分
13
7#
发表于 2014-12-19 14:32:40 | 只看该作者
楼主,硬件哪里有卖的啊
回复 支持 反对

使用道具 举报

1

主题

6

帖子

69

积分

橙蚂蚁

Rank: 2

积分
69
8#
发表于 2014-12-27 21:04:29 | 只看该作者
高质量的帖子,刚想了解下原理呢。
回复 支持 反对

使用道具 举报

0

主题

7

帖子

36

积分

红蚂蚁

Rank: 1

积分
36
9#
发表于 2015-1-6 15:57:00 | 只看该作者
为什么不用,接近开关来实现,简洁
回复 支持 反对

使用道具 举报

0

主题

5

帖子

48

积分

红蚂蚁

Rank: 1

积分
48
10#
发表于 2015-1-14 12:27:02 | 只看该作者
高质量、牛X的帖子
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|手机版|小黑屋|3D小蚂蚁工作室 ( 赣ICP备13006545号 )

GMT+8, 2024-4-25 16:29 , Processed in 0.100252 second(s), 21 queries .

Powered by 版权所有 X3

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表