调试

From RepRapWiki
Jump to: navigation, search
                           介绍|搭建框架|组装Y轴|组装X轴|组装Z轴|组装热床|挤出机组装|热端组装|电源|布线|调试|打印
                                                多颜色/多材料|彩色切片软件|维护|故障排除|改进

Contents

目标:

在这个阶段结束以后,你的机器准备好第一次打印。

工具

  • 已知高度的东西(我们使用直径为6毫米的银钢棍,钻孔的轴也同样可以)

第一步:通信

在把机器和你的电脑连接起来以前,你需要Python以及和它相关的软件。

Windows用户请安装32位版的Python,即使你使用的是64位系统(跟着下面的链接,一步一步做),Windows和Mac用户看这里的指导,只需安装Python和它所需要的(不需要安装Pronterface/Printrun/skeinforge等)

https://github.com/reprappro/Software/blob/master/README.md

在Ubuntu/Debian Linux下安装所需要的软件是简单的:

 sudo apt-get install python-serial python-wxgtk2.8 python-pyglet python-tk

Windows 7

在windows 7下安装pyglet回有一些问题(查看这里). 感谢Alan Matthews提供的解决方案:

 你需要把Python的可执行路径增加到windows的路径变量中。

   从桌面右键“计算机”,点击属性。
   选择“高级系统设置”。
   在弹出的小框中,选择“环境变量”。
   点击系统变量的“编辑”按钮
   增加python的路径(c:\Python27\). 每一个不同的目录通过分号隔开。
   (注意不要再路径中使用空格,你增加的路径应该像这样;c:\Python27 不是 ; C\Python27)
   “应用”这一改变,你可能需要重启你的电脑,通常仅仅重启cmd.exe就足够了。
   

USB驱动

如果你有一个Melzi控制板,把控制板的PWR-SEL跨界器接到电脑的USB上。在处理器芯片左侧大约20毫米有3个引脚。把底部的两个引脚相连,通过USB上电(注意这只驱动逻辑电路,不驱动步进电机等)。把顶部的的两个引脚相连,从电源给板上电。你希望把底部的两个短路在这个过程。当你在正常运行时,应把顶部的两个短接。

Windows

通过USB接口把控制板和电脑相连。你的电脑有提示没有找到USB设备的驱动吗?如果是的话,剥下USB接头,然后安装驱动: 安装这个驱动 or 在这个页面查找. 然后当你再插入控制板时,你的电脑就能识别该硬件了。

Linux

Linux系统应该能直接识别该控制器,不需要安装驱动。你的电脑会自动显示/dev/ttyUSB0,那说明你的电脑在USB0处察觉了这个控制板。sudo chmod 666 /dev/ttyUSB0意味着不能打开端口,没有成功。在Ubuntu上可能会出现其他情况,确保你作为一个用户是联上网的。/dev/ttyUSB0当你插入控制板时。 然后你可能需要给徐这个USB端口权限,例如对已USB0: sudo chmod 666 /dev/ttyUSB0 (当有错误提示时,可能就是你没有给权限所导致的). 对于像Ubuntu这些系统,确保你是dialout group中的一个用户。

Mac

Mac用户通过下面的链接选择并安装合适的驱动: http://www.ftdichip.com/Drivers/VCP.htm.

2012年12月,这个驱动的名字类似 FTDIUSBSerialDriver_10_4_10_5_10_6_10_7. 尽管这个名字看上去意味着是与Mac OS X想匹配的,但它在 10.8.2版本中也可以正常工作。 如果你的Mac运行Mountain Lion, 那么使用这个驱动.

当驱动装好以后,插入USB线,那么应该会出现如下提示:

kernel[0]: FTDIUSBSerialDriver: 0 4036001 start - ok

连接你的打印机通过叫做/dev/cu.usbserial-XXXXXXXX的设备. 如果你有不止一个USB串口连接到你的Mac,那么你需要记住当你插入USB线时新产生的串口的XXXXXXXX 后缀. 如果没有其他的USB串口设备,那么当你运行 pronterface.py, 在你的端口列表中将只能看到一个设备,它的名字的开头是 cu.usbserial -- 连接到这一个。

开始通信

首先要做的是你可以和你的电脑通信,你需要安装并运行软件RepRappro Pronterface, 你可以从 repo的github中找到。在顶部左侧你会发现一个下载ZIP文件的按钮(一个很小的云图和一个向下的箭头,并标记为ZIP)。

如果你有一个Melzi控制板,设置它的电源选择器(见后面的Melzi调节),现在不要插上电源。

把Reprap插到你电脑上的一个USB接口,然后运行pronterface.py。

每当你第一次运行pronterface.py,选择正确的打印文件,在Settings->Slicing Settings,将会打开一个新的窗口,在顶部附近有一个按钮是Profile Selection,选择你将要打印的相关文件以及材料。我们提供 Huxley-PLA-05-03 or Mendel-PLA-05-03 具体取决于你的Reprap机器(05表示的是喷嘴的直径是0.5毫米,03表示层的厚度是0.3毫米),选择“Save all”然后关闭窗口,回答软件打打印界面。

对于多颜色、多材料的打印,确认"Monitor Printer" 的checkbox状态是 unchecked.

现在在顶部左侧选择端口,比特率为250000.点击连接,等待一会,软件会确认是都和打印机通信中(当控制板重新气候后,它需要大概10s以后才会有响应)。

Pronterface main.png

按下GET POS按钮,如果你的机器回到X0.00Y0.00Z0.00的位置那么说明串口通信正常工作。

很重要。 接着按下”Get Temp”,然后检查热端和热床正在显示温度(接近室温,它可能偏差几度,热敏电阻是为了操作温度的精确性而设计的),如果温度太高那可能在热敏电阻电路有短路现象,如果太低,可能存在断路。另外,你的固件可能设置不正确,查看下一个环节。不管是什么情况,找到错误的原因,并维修它。

注意:如果你的pronterface窗口没有显示自定义按钮(GET TEMP, GET POS….)你可能需要拷贝pronsolerc或者skeinforge到你的母文件夹中。用新的覆盖原来旧的,你应该就能看到这些按钮了。

确认设定

Melzi控制板运行Reprappro版本的Marlin固件,这允许许多机器的详细设置可以再Pronterface中设置,不需要下载新的固件,为了检查现在的设定,发送M503命令给机器,日志的窗口应该会显示类似于如下内容:

>>>m503

SENDING:M503

echo:Steps per unit:

echo: M92 X91.429 Y91.429 Z4000.000 E945.000

echo:Maximum feedrates (mm/s):

echo: M203 X500.000 Y500.000 Z3.400 E45.000

echo:Maximum Acceleration (mm/s2):

echo: M201 X2500 Y2500 Z50 E2500

echo:Acceleration: S=acceleration, T=retract acceleration

echo: M204 S2000.000 T2000.000

echo:Advanced variables: S=Min feedrate (mm/s), T=Min travel feedrate (mm/s), B=minimum segment time (ms), X=maximum xY jerk (mm/s), Z=maximum Z jerk (mm/s), K=advance_k

echo: M205 S0.000 T0.000 B20000 X15.000 Z0.400 E25.000

echo: M206 X0.000 Y0.000 Z-0.250

echo: M208 X150.000 Y150.000 Z97.000

echo:PID settings:

echo: M301 P10.000 I2.200 D80.000 W70

echo:Thermistor settings: M304 Hh Bb Rr Tt, H0=Bed, H1..n=nozzle, b=thermistor beta value, r=series resistor, t=thermistor resistance as 25C

echo: M304 H0 B4200 R4800 T100000 M304 H1 B3960 R4700 T100000

FPU Enabled no

每一个详细设定都显示出来,并且有描述。想要改变设置,需要发送相关命令和参数,举个例子,热敏电阻读书需要被解释如何得出,而不是一个数据表,所以固件需要知道热敏电阻的beta值(从数据表中),串联电阻的值(在Melzi靠近相关热敏电阻连接器上可以看到),热敏电阻在25C,所以,设定喷嘴热敏电阻参数的Beta值是3960。串联电阻为4K7欧姆,在25C为100K欧姆,所以发送命令:

M304 H1 B3960 R4700 T100000

所有从Pronterface修改的数据会立刻生效,但是你没有保存到EEPROM中,除非你发送M500指令。增加这个指令,即使断电,设定也依旧有效。

第二步:轴

电机移动

在这步之前,一定要检测电流限制!

如果没有设定限制,那么驱动板很有可能会被破坏掉。

Melzi调节

如果你有Melzi控制板,你应该已经设置好电机电流了,在布线中已经描述过了。 这里是针对 Mendel的 and 这里是针对Huxley.

Sanguinololu调节

Pololu步进电机调节,在这里有具体描述 here on the Pololu site. 查看Current Limiting的部分,但是忽略一点,该页面上关于参考电压的测量通过最早的地方测量,并且旋转电位器本身的金属部分。最简单的方法是测量电位器的旋转金属部分。

调节电位器到0.4V通过慢慢的顺时针旋转,当测量电压时使用万用表。

Melzi和Sanguinololu

插入电源,如果看到烟雾,可能哪里有严重的错误了。另外,确认电机,更重要的是,四个电机驱动芯片,没有变热。当限制电流设置正确以后,它们触碰上去应该稍微有一些热。小心芯片,它们有大约在80摄氏度左右会关闭,一个会灼烧你手指的温度,除非你仅仅轻轻的触碰一下。

插上USB,运行Pronterface程序,点击“Connect”,然后等待通信。

现在输入:

G1 X5 F500

在日志窗口下方,点击send,X电机应高往正方向移动5毫米(X5),速度为500毫米/分钟(F500).

接着输入:

G1 X0 F500

然后发送,这时X电机应该移回初始点(X0),如果你发现你的机器没有往负方向移动,那么你的停止末端可能布线不正确。再次检查你的布线,参考这里

对其他三个轴重复上面的操作,对于每个轴的测试,只需把上面的X换为(Y,Z,E)即可,但是Z轴进料速率的是200毫米/分钟:

G1 Z5 F200

对于E:

M302

在发送之前:

G1 E5 F500

注意: 当你的挤出机内有金属丝时,不要这么做。M302指令允许冷却挤出,允许挤出点击移动,不论热端的温度是多少。

你可能发现一些轴会颤动,或者发出声音,但是不移动。这意味着你的电流设置得太小。

关闭电源, 然后调节电位器,旋转一点点以增加电流,。再次上电,重复上面的测试。

电机后退

Reprap工具时使用相对于热床的右手直角坐标系,而不是相对于框架的。这也就是说从电机前侧往下看(往热床看),X是从左往右工作,Y是从前往后工作,Z是往上工作。

记住通过打印头的移动来计数:当Y增加时,热床向你移动。

如果你发现有最轴后退,那可能是电机接反了,只需断电然后把接到控制板的电机线顺序进行调整。比如,[黑,绿,蓝,红]变为[红,蓝,绿,黑]。 在断开连接前不要忘记拔掉电源.

停止末端

停止开关只检查是否能归位。为了测试,轮流发送归位指令给X,Y,Z轴,比如:

G28 X0

当你按下发送指令之后,轴开始移动,激活相关开关停止轴的移动,如果启动开关,轴没有停止移动的话,检查布线,点击这里).

归位

你几乎准备好把你的机器归位,在这之前,还需确保Z停止末端足够高,能够触发开关而不触碰到热床。

按下HOME ALL按钮,你的机器会找到参考位置X0 Y0 Z0。

如果你的机器在到达停止端前就停止了,那么可能是停止端被错误的出发了,由于步进电机线的干扰。)

第三步:对齐

使X轴水平

使用游标卡尺测量在Y连接杆上X连接杆的高度(如果需要的话,把托架先移除)。调整Z电机,知道X轴是水平的。

使热床水平

如果你使用Mendel,使用玻璃夹和4个夹子使热床水平。

如果你使用Huxley,使铝板水平。

主要的不同是在标准pronterface和eMAKER版本之间,而人们通过这个方式控制机器。你有5个按钮,它们允许你可以在热床的4个角上接近喷嘴。Z轴可能被移动0.1毫米,1毫米和10毫米。E轴可能通过距离控制引脚控制被移动的距离。

人控制的移动速度可以通过引脚控制,在人工控制的移动按钮之上。

为了使热床水平,把喷嘴往上移动,使它们之间的高度至少为你测量的热床和喷嘴之间的距离。然后把喷嘴放在中间,然后把它往下慢慢移动直到几乎触碰到物品。每一个角度这么操作,调节安装在热床上的M3 x30螺丝帽,使热床水平。

调节Y轴轴承上的螺母变松弛一下,然后调整水平,再慢慢旋紧,直到接近你的目标。你将会发现,你仍然可以调节即使螺母稍微有些紧时。

当你完成后,轴承上的M3螺丝的螺母需要被完全旋紧,使热床将不会在操作中再次移动。

另外一种调整水平的方法可以查看这里: http://www.britishideas.com/2013/03/03/leveling-a-reprap-bed-with-three-screws

Mendel 水平假象

不可避免的,有些时候Mendel的玻璃板不是完全平整的,它是一个鞍形,由两个对角组成,且每个对角低0.1或0.2毫米,而另外两个对角是略微高一些。当然,在几何上,通过调节3个螺丝时不可能完全修正的,定义三个螺丝位第一度面(线性的),而鞍形为第二度面(非线性的)。

但是我们可以通过一个简单的办法:折叠一些铝箔,然后把它们放在玻璃的角落中,当做垫片。然后你可以使用三个螺丝继续调解。

Reprappro-mendel-bed-level-shim.jpg

如果你发现你想要在不止一个角落使用铝箔,记住不要这样,只能在一个角落使用铝箔,然后耐心的使用螺丝调解。

设置Z高度

设置喷嘴在Z0处,喷嘴的前端需要离热床的表面有一张纸那么厚的距离,为了达到这个,跟随下面的操作:

  • HOME ALL
  • 发送以下指令:G1 Zz F200,z等于测量物体的已知高度。
  • CENTRE
  • 检查喷嘴和物体的距离在0.3毫米以内

  • 对于Huxley,调解Z轴停止端的高度。对于Mendel,旋转可调节螺丝,并且重复,直到你的高度设置正确。

第四步:加热

选择显示器,检查热床和喷嘴的温度,保证读数和室温接近。

热床

使热床到达45C,选择显示器,并检查读数是否上升,最好稳定在45C,这时热床是真的很暖。

热端

注意,一些Huxley套件中Melzi控制板的固件有问题(在2012八月至2012十月第一周之间发货的),请去论坛的帖子查看解决办法: http://forums.reprap.org/read.php?214,123839,159857#msg-159857

使喷嘴到100C,然后观察温度的上升,最终温度在100C。在这个测试中注意喷嘴。如果你看看很多烟从热端冒出,关闭加热器。重复这个测试,调为200C。喷嘴应该在1分钟左右到达设定的问题。

喷嘴加热电阻的功率比我们需要的大很多,所以控制参数使它提供可以接受的能量。为了让喷嘴能快速到达目标温度,并且不会超过太多,完整的系统需要调节到目标温度。默认的,固件把它设置为80,但是对于start_PLA.gcode 和start_ABS.gcode,需要设定合适的温度针对材料,通过下面的方法实现:

M301 Ww,在这里的w在0~255之间,一个高一些的数值,代表允许输入喷嘴加热器的功率大一些。

所以,当你的喷嘴没有达到目标温度,慢慢的增加W直到达到我们想要的效果。一般对于PLA,W=120,对于ABS,通常W=180.

如果你调试好了这个值,把它输入到相关的start.gcode文件中,这些文件的目录是:

skeinforge/skeinforge_application/alterations/

它已经安装在 pronterface的目录下。

Media:范例.ogg=第五步:挤出机=

当你确认喷嘴的表现和你希望的是一样的时候,你可以用手测试挤出机。移除bowden,从挤出机开始,放一些PLA到管中,知道它们到达喷嘴(注意喷口内PTFE管的丝),输入命令使喷嘴在205度,而且一旦到达这个温度就稳定在这,把PLA丝放入,观察挤出口。挤压应该是保持稳定的,但不是额外的力。

取出金属丝,重新组装bowden管,测试挤出机的驱动机械。这次,点击 IDLE或者发送一个 M84指令,然后旋转减速齿轮,当放入一些PLA丝在挤出口驱动机械中。重复以上测试,这次人为的转动大的减速齿轮。

最后,测试挤出材料通过控制E轴,200毫米/分钟是一个不错的速度。

下一步

打印!