怪兽怪秀 - 3D打印
type: channel
link: https://blog.guai.show/tag/3D打印
items: 分享一款比较好用的助焊膏锡膏针筒挤出器3D打印模型
items: 3D打印机marlin固件自动调平设置和使用及方向及坐标系设置
items: Marlin 增加断料检测
items: 3D打印机固件 marlin_2.0.X 中文翻译 配置详解

分享一款比较好用的助焊膏锡膏针筒挤出器3D打印模型
type: item
date: 2022-02-28T10:18:00+08:00
description: 分享一款比较好用的3D打印模型锡膏挤出器没什么好介绍的了，杠杆原理。可以轻松均匀的挤出锡膏。期初也尝试过电动的那种，并没有更加方便。反而要记得充电或者插电，更加的繁琐。如果小批量肯定就直接上钢网了。说道钢网，油管上有位大神，蚀刻铜片替代钢网。也是脑洞出奇。本地下载链接[button color="success" icon="glyphicon glyphicon-send" url="https://cloud.guaishow.cn/3D%E6%89%93%E5%8D%B0%E6%A8%A1%E5%9E%8B/%E9%94%A1%E8%86%8F%E6%8C%A4%E5%87%BA%E5%99%A8/" type=""]锡膏挤出器3D打印模型 下载链接[/button]来源[scode type="share"]模型一个来源T站的分享，链接www.thingiverse.com/thing:5242071[/scode]

3D打印机marlin固件自动调平设置和使用及方向及坐标系设置
type: item
date: 2021-11-13T14:24:00+08:00
description: 自动调平1. 硬件接线电路连接：直接接Zmin接口，替换原来的Zmin传感器（个人使用的接近开关，接在ZMax 并没有撤销原来的行程开关）2. 固件修改我们建议您在使用床架之前，尝试手动调试打印机尽可能达到最佳状态，因为所有床架只能补偿“不良”硬件，而不会对它进行纠正。a) 传感器引脚接在Zmin的引脚上define Z_MIN_PROBE_USES_Z_MIN_ENDSTOP_PIN如果不接在Zmin引脚，对于RAMPS 1.3/1.4 可以用Aux4->D32 pin://#define Z_MIN_PROBE_PIN 32 // Pin 32 is the RAMPS defaultb) 选择用的那种传感器各传感器详见 http://marlinfw.org/docs/configuration/probes.html我们这里选择#define FIX_MOUNTED_PROBEc) 设置喷嘴与Z探针的偏移define NOZZLE_TO_PROBE_OFFSET {-40, 16, -10 }这里需要根据自己安装位置进行设置，不同机器设置参数不一样，详细见marlin程序//Specify a Probe position as { X, Y, Z }注意：初次使用需要调试Z轴的偏移量。调试方法，先将Z偏移量设置为一个较大的负数，如-10，然后机器全部归零，当Z轴归零过程中，探针触发到自动调平的传感器，此时机器认为Z轴高度为负的Z偏移量（示例为10mm），手动移轴Z轴，当喷嘴接触到平台/热床（可在喷嘴正下放置A4纸的方法确定是否接触），记录此时剩余的Z高度，比如Z向下移动5.51mm后，喷嘴接触到热床，则修改Z偏移量为-5.51mm。d) 设置探针距离边缘的距离#define MIN_PROBE_EDGE 102.0.7版本的marlin中更改为#define PROBING_MARGIN 10e) 设置 探针之间的X和Y轴移动速度（mm / m）#define XY_PROBE_SPEED 2500#define XY_PROBE_SPEED 2500f) 设置探测几遍 2或者3#define MULTIPLE_PROBING 2g) 启用M48重复性测试以测试探针的准确性#define Z_MIN_PROBE_REPEATABILITY_TESTh) 选择调平方式（小的平板热床）#define AUTO_BED_LEVELING_LINEAR建议2560就用这个或者#define AUTO_BED_LEVELING_BILINEAR更好的控制器可以选这个i) 设置探测点数#define GRID_MAX_POINTS_X 4200的热床设置为4*4点，更大的热床适当增大点数j) 启用数据存储到EEPROM上#define EEPROM_SETTINGS // Persistent storage with M500 and M501k) 启用LCD按钮#define LCD_BED_LEVELINGl)#define Z_SAFE_HOMINGm) 修改速度#define HOMING_FEEDRATE_XY (40*60)n) 归零时的最小高度#define Z_HOMING_HEIGHT 20不能太小，否则归零时，探针容易被热床挡住o) 未探测边界区域延申 AUTO_BED_LEVELING_BILINEAR才可以用#define EXTRAPOLATE_BEYOND_GRID通常，探测到的网格不会一直延伸到床的边缘。因此，在探测网格的边界之外，Z调整可以采用以下两种方法之一。Z高度可以通过最近的网格框的确定的倾斜度继续升高/降低（最好是在探测了大部分床时），或者它可以遵循最近的边缘的轮廓（默认值）。启用此选项进行推断。3. 使用方法1）下载好固件后，使用屏幕进行自动调平探测，探测完使用屏幕保存探测数据2) 运行以下Gcode进行调平G28 ;move X/Y Z to min endstops G29; 自动调平 不需要每次都设置 M500;保存 leveling data到EEPROM M501;加载 EEPROM中的leveling data3）切片软件“Start G-code”中加入：G28 ;move X/Y Z to min endstops M501;加载 EEPROM中的leveling data M420 S1;启用床平整4. 扩展资料：床平整G代码解读a) G28： X YZ 轴回零b) G29： 开启床平整探测Note1: 使用G29后 leveling data 仅保存再RAM中，必须使用M500将数据保存到EEPROM中，否则机器重启或重新连接打印机后，leveling data将丢…

Marlin 增加断料检测
type: item
date: 2020-11-05T18:06:04+08:00
description: Marlin支持一个非常棒的GCode那就是M600，这是一个指示打印机更换打印耗材的半自动化功能。但如果要打开这个功能就需要在固件中更改不少的地方，首先要找到FILAMENT_RUNOUT_SENSOR的定义并取消注释，使耗材检测传感器处于可用状态。然后要将FIL_RUNOUT_INVERTING设置为true，具体代码如下：/** * Filament Runout Sensor * A mechanical or opto endstop is used to check for the presence of filament. * * RAMPS-based boards use SERVO3_PIN. * For other boards you may need to define FIL_RUNOUT_PIN. * By default the firmware assumes HIGH = has filament, LOW = ran out */ #define FILAMENT_RUNOUT_SENSOR #if ENABLED(FILAMENT_RUNOUT_SENSOR) #define FIL_RUNOUT_INVERTING false // set to true to invert the logic of the sensor. #define ENDSTOPPULLUP_FIL_RUNOUT // Uncomment to use internal pullup for filament runout pins if the sensor is defined. #define FILAMENT_RUNOUT_SCRIPT "M600" #endif此时需要在将的 pins_RAMP.h 文件中的FIL_RUNOUT_PIN指向当前使用的跳线，如果采用Y-MIN则要改成以下的设定#define FIL_RUNOUT_PIN 14 // 现在采用 Y-Min // 4如果不清楚传感器的状态可以输入M119来查看断料传感器的状态，插入耗材后filament的状态应该为Tiggered, 在Pronterface的输出如下所示：>>> M119 SENDING:M119 Reporting endstop status x_max: open y_max: open z_min: open z_max: open filament: TRIGGERED当然此时你还没有上传固件，因为现在的状态是不能成功进行编译的FILAMENT_RUNOUT_SENSOR是需要在Configuration_adv.h文件中启用ADVANCED_PAUSE_FEATURE才能成功编译。打开Configuration_adv.h文件找到以下的代码行:/** * Advanced Pause * Experimental feature for filament change support and for parking the nozzle when paused. * Adds the GCode M600 for initiating filament change. * If PARK_HEAD_ON_PAUSE enabled, adds the GCode M125 to pause printing and park the nozzle. * * Requires an LCD display. * Requires NOZZLE_PARK_FEATURE. * This feature is required for the default FILAMENT_RUNOUT_SCRIPT. */ #define ADVANCED_PAUSE_FEATURE这个选项实际的意义就是让3d打印机可以暂停打印并进行停靠，当然你还得在Configuration.h 文件中将NOZZLE_PARK_FEATURE启用起来：/** * Nozzle Park * * Park the nozzle at the given XYZ position on idle or G27. * * The "P" parameter controls the action applied to the Z axis: * * P0 (Default) If Z is below park Z raise the nozzle. * P1 Raise the nozzle always to Z-park height. * P2 Raise the nozzle by Z-park amount, limited to Z…

3D打印机固件 marlin_2.0.X 中文翻译 配置详解
type: item
date: 2020-11-03T09:56:00+08:00
description: 基于对应机型的配置文件，结合官方文档食用。如果出现翻译错误，官方文档为主，我才不负责人:)，然而官方文档也是写得挺乱的文件配置的内容非常多，新手可能会遇到不知道哪些功能需要启用，不建议全部看完。而文中的一些参考视频都需要科学上网开始前你需要知道的一些事情，这些事情在配置过程中并不会都排上用场，但知道有助于你配置并优化打印机框架结构类各个机械配件的详细信息，比如同步轮的直径、丝杆的螺距、并联臂两孔中心距机器的架构，在config/examples选择对应机器架构的配置文件，这样会节省大量时间，如果目录没有就下载挤出机数量和挤出方式End Stop 的位置 (XYZ轴电机的起点或终点)电子电路类驱动打印机的控制板型号，比如 RAMPS步进电机驱动器详细信息，比如驱动电流，最小微步步进电机的详细参数，比如步距角、最大电流热敏电阻型号 (探测热端/热床的温度)液晶显示屏的型号探针信息配置文件有两个Configuration.h 包含硬件核心、语言和控制器的设置，以及最常见的功能和组件的设置，主要配置的地方。Configuration_adv.h 提供更详细的自定义选项，附加组件，实验功能和其他功能。以下配置以 kossel(delta) + Arduino Mega2560 + Ramps 1.4 作为示例目录[TOC]Configuration 文件版本控制#define CONFIGURATION_H_VERSION 020004固件基本信息#define STRING_CONFIG_H_AUTHOR "(none, default config)" #define SHOW_BOOTSCREEN #define SHOW_CUSTOM_BOOTSCREEN #define CUSTOM_STATUS_SCREEN_IMAGE作者和固件的信息，这些信息会在 Marlin 启动时、连接终端、重启和执行 M115 时显示，可以用于区分不同配置文件的版本定义它可以在打印机启动时，开机画面会显示在 LCD 上定义它可以使用自定义的启动画面，编译时会自动寻找Marlin/_Bootscreen.h位图文件定义它可以使用自定义的状态画面，编译时会自动寻找Marlin/_Statusscreen.h位图文件硬件基本信息串行端口串行端口的配置选项，暂时不知道怎样使用#define SERIAL_PORT 0 #define SERIAL_PORT_2 -1波特率与蓝牙#define BAUDRATE 115200 #define BLUETOOTH波特率设置，使用电脑或其他终端连接时需要用到启动蓝牙功能，比如说基于 AT90USB控制板#define MOTHERBOARD BOARD_RAMPS_14_EFB这是最重要的设置，Marlin 需要知道它运行在什么控制板上，这个设置会影响功能分配到那个引脚上，错误配置将导致不可预测的后果。在Marlin\src\core\boards.h找到你控制板的型号，用它的 ID 替换实例代码里的BOARD_RAMPS_14_EFB(define 的名字也行)。你可能发现你的开发板型号有好几个 ID，你可以参考代码后面跟着的注释去选择正确的 ID。 例如：#define BOARD_RAMPS_14_EFB 1020 // RAMPS 1.4 (Power outputs: Hotend, Fan, Bed) #define BOARD_RAMPS_14_EEB 1021 // RAMPS 1.4 (Power outputs: Hotend0, Hotend1, Bed) #define BOARD_RAMPS_14_EFF 1022 // RAMPS 1.4 (Power outputs: Hotend, Fan0, Fan1) #define BOARD_RAMPS_14_EEF 1023 // RAMPS 1.4 (Power outputs: Hotend0, Hotend1, Fan) #define BOARD_RAMPS_14_SF 1024 // RAMPS 1.4 (Power outputs: Spindle, Controller Fan)这个是 RAMPS 1.4 相关的 ID 号，可以看到后面注释把不同的功能分配到 Power out 上，比如说 1020 的功能有一个挤出头，一把吹件风扇，一个热床，而 1021 是有两个挤出头，一个热床，没有吹件风扇。打印机命名定义打印机的名称，名称将会出现在 LCD 屏幕上和 M115#define CUSTOM_MACHINE_NAME "3D Printer"打印机 UUID设置 UUID，有些软件可以用 UUID 区分不同的打印机，你可以…