①②③④⑤⑥⑦⑧⑨⑩⑪⑫⑬⑭⑮⑯⑰⑱⑲⑳✕✓✔✖ ≥≤≠÷
这一节内容太多,会分成 硬件 软件 第一次打印前调试三个文件。
双十一在蜘蛛与章鱼之间,因为价格原因,还是选择了蜘蛛主板。
蜘蛛主板的参考资料
这个文档仅限于我购买的硬件设备进行接线。
- 蜘蛛 2.3:这个版本与 2.2 的接线方式不一样。不要看错文档了。
- TMC2209
- 树莓派 3B+
1、总体接线图
接线前一定要仔细看下图,最好是放大了看。
2、调整主板跳线
拿出主板,检查一下。
- 首先将 AB 驱动多余的跳线帽给拔掉,结果如下图。
- 其次,本次使用 24V 电机,所以把支持 24V 电机的跳线插入,如下图。
- 最后检查风扇的跳线:24V 12V 5V。一定要跳线.
3、安装 TMC2209
第一步:贴散热片
- 检查一下针脚,焊接的情况。我买的,感觉是自己后来手工焊的,焊的好像还没有我自己焊的好。
- 不要让散热片碰到针脚。
第二步:插入主板
- 主板上有颜色的对应 TMC2209 有颜色的地方。(如果你分不清楚,看第三节参考内容)
- 将左侧第一个空出来,其他的插入驱动。
安装完后结果如下:
4、连接树莓派
建议在接树莓派之前,先把树莓派的软件给安装了。
以为蜘蛛提供了相应的线,所以就按照这个来接线就可以了。
4.1 最终接线效果
4.2 原理图
4.3 软件配置
如果使用这种方法,还需要修改内容。
sudo raspi-config
编辑/boot/config.txt
sudo nano /boot/config.txt
=> 在文件最底部添加如下字段 :
dtoverlay=pi3-disable-bt
保存退出,输入一下命令重启
sudo reboot
编辑 cmdline.txt
sudo nano /boot/cmdline.txt
=>删除一下字段 :
“console=serial0,115200″或者 “console=ttyAMA0,115200”
然后重启
sudo reboot
5 连接 mini 12864
这个比较简单,看总体接线图的接线方法就行
6. 问题指引
6.1 Spider 3.3v 问题
6.2 TMC2209 报错
修复方法 1:如下图所示,请在主板的所有 TMC2209 上用跳线帽短接 RX TX 管脚,然后重启机器。
修复方法 2:请用如下命令来复位 TMC 驱动。
INIT_TMC STEPPER=<name>
name 请填入 stepper_x
,stepper_y
等在你 printer.cfg
文件中的定义,详情请查看 Klipper 官方文档.
6.3 卡刷固件没有变成 old.bin/无法卡刷
修复方法 1:重新刷一遍 bootloader,方法请参考这里( github gitee)。
修复方法 2:用 SD Card Formatter 软件把 TF 卡格式化一下.
修复方法 3:如果用的是 Klipper 固件,请使用 No bootloader
选项来编译 Klipper,并采用线刷方式上传固件到 0x08000000
地址。具体请看上传固件 dfu-util 方式 或者上传固件 DFU 方式章节。
6.4 没有运行 klipper/无法找到 id
请在编译 klipper 过程中选择 No bootloader
选项,如下图蓝色部分。这意味着不使用 bootloader(引导程序)。如果 bootloader 损坏时可以使用这个选项。上传固件请采用 上传固件(DFU 方式) ,操作时,你需要修改 ‘Start address’ 为 0x08000000
,切记,切记.
7、参考内容
7.1 蜘蛛管脚与分配
管脚定义
Spider v2.x 管脚分配
Features | Spider Pin | STM32 Pin | Pin No. | Comment |
X-MOTOR(1) | X-Step | PE11 | 42 | |
X-DIR | PE10 | 41 | ||
X-EN | PE9 | 40 | ||
X-CS/PDN | PE7 | 38 | ||
Y-MOTOR(2) | Y-Step | PD8 | 55 | |
Y-DIR | PB12 | 51 | ||
Y-EN | PD9 | 56 | ||
Y-CS/PDN | PE15 | 46 | ||
Z-MOTOR(3) | Z-Step | PD14 | 61 | |
Z-DIR | PD13 | 60 | ||
Z-EN | PD15 | 62 | ||
Z-CS/PDN | PD10 | 57 | ||
E0-MOTOR(4) | E0-Step | PD5 | 86 | |
E0-DIR | PD6 | 87 | ||
E0-EN | PD4 | 85 | ||
E0-CS/PDN | PD7 | 88 | ||
E1-MOTOR(5) | E1-Step | PE6 | 5 | |
E1-DIR | PC13 | 7 | ||
E1-EN | PE5 | 4 | ||
E1-CS/PDN | PC14 | 8 | ||
E2-MOTOR(6) | E2-Step | PE2 | 1 | |
E2-DIR | PE4 | 3 | ||
E2-EN | PE3 | 2 | ||
E2-CS/PDN | PC15 | 9 | ||
E3-MOTOR(7) | E3-Step | PD12 | 39 | |
E3-DIR | PC4 | 33 | ||
E3-EN | PE8 | 59 | ||
E3-CS/PDN | PA15 | 77 | ||
E4-MOTOR(8) | E4-Step | PE1 | 34 | |
E4-DIR | PE0 | 97 | ||
E4-EN | PC5 | 98 | ||
E4-CS/PDN | PD11 | 58 | ||
TMC Driver SPI (SPI4) | MOSI | PE14 | 45 | |
MISO | PE13 | 44 | ||
SCK | PE12 | 43 | ||
End-stops | X-MIN | PB14 | 53 | Share with X-DIAG |
X-MAX | PA1 | 24 | Share with E0-DIAG | |
Y-MIN | PB13 | 52 | Share with Y-DIAG | |
Y-MAX | PA2 | 25 | Share with E1-DIAG | |
Z-MIN | PA0 | 23 | Share with Z-DIAG | |
Z-MAX(Probe) | PA3 | 26 | Share with E2-DIAG | |
FAN/RGB | FAN0 | PA13 | 72 | |
FAN1 | PA14 | 76 | ||
FAN2 | PB2/BOOT1 | 37 | ||
LED-R | PB6 | 92 | Can be used for fan3 | |
LED-G | PB5 | 91 | Can be used for fan4 | |
LED-B | PB7 | 93 | Can be used for fan5 | |
5V-LED(WS2812) | PD3 | 84 | Share with flash indicator(Bootloader) | |
Heating | E0-Heater | PB15 | 54 | |
E1-Heater | PC8 | 65 | ||
E2-Heater | PB3 | 89 | ||
Heated-Bed | PB4 | 90 | ||
Temperature | TE0(THERM0) | PC0 | 15 | A 4.7kOhm 0.1% temperature sensor pull up resistor is used,PT1000 can be connected directly. For PT100, an amplifier board must be used. |
TE1(THERM1) | PC1 | 16 | A 4.7kOhm 0.1% temperature sensor pull up resistor is used,PT1000 can be connected directly. For PT100, an amplifier board must be used. | |
TE2(THERM2) | PC2 | 17 | A 4.7kOhm 0.1% temperature sensor pull up resistor is used,PT1000 can be connected directly. For PT100, an amplifier board must be used. | |
TE3(THERM3) | PC3 | 18 | A 4.7kOhm 0.1% temperature sensor pull up resistor is used,PT1000 can be connected directly. For PT100, an amplifier board must be used. | |
TE4(THERM4) | PB1 | 36 | A 4.7kOhm 0.1% temperature sensor pull up resistor is used,PT1000 can be connected directly. For PT100, an amplifier board must be used. | |
TB(THERM3) | PB0 | 35 | A 4.7kOhm 0.1% temperature sensor pull up resistor is used,PT1000 can be connected directly. For PT100, an amplifier board must be used. | |
EXP2 | LCD_D7 | PD1/CAN-TX1 | 82 | Share with CAN-TX1 |
LCD_D6 | PD0/CAN-RX1 | 81 | Share with CAN-RX1 | |
LCD_D5 | PC12/MOSI3/TX5/SDA2 | 80 | ||
LCD_D4 | PC10/SCK3/TX3/4 | 78 | ||
LCD_EN | PC11/MISO3/RX3/4 | 79 | ||
LCD_RS | PD2/RX5 | 83 | ||
ENC_C | PA8/SCL3 | 67 | ||
BEEP | PC9/SDA3 | 66 | ||
EXP1 | RESET | NRST | 14 | |
ENC_A | PC6/TX6 | 63 | ||
ENC_B | PC7/RX6 | 64 | ||
SD-DET | PB10/SCL2 | 47 | ||
SD-MISO | PA6/MISO1 | 31 | ||
SD-MOSI | PA7/MOSI1 | 32 | ||
SCK | PA5/SCK1 | 30 | ||
CS | PA4/CS1 | 29 | ||
EEPROM(4K) I2C Pin-Out | SCL | PB8/SCL1 | 95 | Connect to 24LC32(4K EEPROM) |
SDA | PB9/SDA1 | 96 | Connect to 24LC32(4K EEPROM) | |
Pi_PWR/UART | TX | PA9/TX1 | 68 | |
RX | PA10/RX1 | 69 | ||
SWD Debug | PA13/SWDIO | 72 | only used for debugging now and can be used for other purposes. | |
PA14/SWCLK | 76 | only used for debugging now and can be used for other purposes. |
7.2 TMC2209 规格说明
没有买富源盛的 TMC2209,它家的质量绝对好。但是网友说有点贵,买了其他家的,但是拿到手后,发现有两个问题要解决。
- 怎么插才对?
- 怎么跳线来适配 TMC2209?
- 多出来的那两根线有啥用途?无限位归零
① 主板跳线
PDN: 安装驱动模块之前,必须设置图中所示的跳线帽。只通过单线连接到 tx,用于 tmc 和 mcu 之间的通信。
DIAG: 在归零时不是用使用限位开关,如果这个功能开启,要保证限位开关的跳线处于闭合状态。
下使用 TMC2209 时,下面多余跳的跳线,是否拔掉?
如果看淘宝商城,现在少了一条电源线,一个跳线帽,难道是为了降低成本?
② 插入方向
我用的针脚是红色,用红色对应主板的蓝色插入就可以了。
③ 参考内容
我的 TMC2209
第一步,先去买 TMC2209 知道针脚图。
富源盛的 TMC2209
第二步:看看富源盛的 TMC2209
- 多了两个针脚
- TX RX 向上。
- 具体不明白的地方,可以问问富源盛
有看到富源盛的 s6609,才 10 元,觉得自己是不是买的不是 2099,是 6609。看了后面的芯片,才确定是 2209,今后可以买这个 s6609,这个毕竟便宜,还有大厂支持。
无限位归零
富源盛多出的针脚是用来无传感器归零。
Fly TMC2209,与一般的 TMC2209 上的区别就是:一般的 TMC2209 如果需要不使用无传感器归位功能的话,必须要移除 DIAG 引脚。一般来说,需要拆焊并拔出引脚,或者从步进驱动器上完全切断销钉。也有人通过讲引脚弄弯来解决,但这些方法对我来说都太过麻烦了。
选择使用 Fly TMC2209 是因为该模块在步进驱动器按了个小型的 DIP 开关,可以简单进行随意切换无传感器归零功能。
在官方网站上没有看到这个开关。
富源盛的电路图
接线图