Méthodes de configuration des thermistances
Cette page répertorie les méthodes de configuration courantes des capteurs de température dans Klipper, y compris la buse, le lit chauffant, la température de la chambre, la température de la carte mère, la température de l'ordinateur hôte, la connexion directe PT1000, MAX31865 et le thermocouple de type K. Les broches, les modèles de capteurs, les résistances de tirage et les plages de température dans les exemples doivent être modifiés en fonction du matériel réel.
Avant d'inspecter ou de remplacer une thermistance, un PT100/PT1000, un module de thermocouple, une cartouche chauffante, un lit chauffant, un cavalier ou une borne, veuillez éteindre complètement l'imprimante et débrancher l'alimentation électrique, et attendre que la buse et le lit chauffant aient refroidi. Ne débranchez pas les faisceaux de câbles, ne réorganisez pas le câblage des interfaces et ne touchez pas les bornes lorsque l'appareil est sous tension.
sensor_typedoit correspondre au capteur réel, ne vous contentez pas de copier l'exemple de configuration.sensor_pindoit être connecté à une interface ADC / thermistance prenant en charge l'échantillonnage de la température. Ne remplissez pas avec une broche de ventilateur, de chauffage, de fin de course ou de sortie générale.- Les PT100/PT1000, les thermocouples et les thermistances NTC ordinaires utilisent des interfaces et des méthodes de configuration différentes. Brancher sur la mauvaise interface entraînera des températures anormales ou une erreur
ADC out of range. - Après avoir modifié la configuration du capteur de température ou du radiateur, revérifiez les relevés de température et recalibrez le PID si nécessaire.
Structure de base
Les capteurs de température apparaissent généralement dans les sections de configuration suivantes :
| Scénario | Section de configuration | Utilisation courante |
|---|---|---|
| Buse | [extruder] | Lire la température de la buse et contrôler le chauffage de la buse |
| Lit chauffant | [heater_bed] | Lire la température du lit chauffant et contrôler le chauffage du lit |
| Température de chambre / Supplémentaire | [temperature_sensor xxx] | Afficher la température uniquement, ne contrôle pas le chauffage directement |
| Radiateur personnalisé | [heater_generic xxx] | Contrôler des équipements de chauffage supplémentaires comme la chambre de chauffe, le boîtier de séchage, etc. |
| Température de la carte mère | [temperature_sensor xxx] + temperature_mcu | Afficher la température interne du MCU |
| Température de l'hôte | [temperature_sensor xxx] + temperature_host | Afficher la température du CPU de l'hôte |
La structure de configuration la plus courante pour la buse est la suivante :
[extruder]
heater_pin: <hotend_heater_pin>
sensor_type: <sensor_type>
sensor_pin: <hotend_sensor_pin>
min_temp: 0
max_temp: 300
La structure de configuration la plus courante pour le lit chauffant est la suivante :
[heater_bed]
heater_pin: <bed_heater_pin>
sensor_type: <sensor_type>
sensor_pin: <bed_sensor_pin>
min_temp: 0
max_temp: 120
Thermistances NTC standard
Les buses et lits chauffants courants utilisent souvent des thermistances NTC 100K. Ces capteurs sont généralement connectés aux interfaces de thermistance standard de la carte mère ou de la carte outil.
Exemple pour la buse
[extruder]
heater_pin: <hotend_heater_pin>
sensor_type: Generic 3950
sensor_pin: <hotend_sensor_pin>
min_temp: 0
max_temp: 300
Exemple pour le lit chauffant
[heater_bed]
heater_pin: <bed_heater_pin>
sensor_type: Generic 3950
sensor_pin: <bed_sensor_pin>
min_temp: 0
max_temp: 120
Exemple pour les ports C8P
Ce qui suit montre uniquement l'écriture courante des ports C8P. Veuillez remplir en fonction des ports de thermistance et de chauffage que vous avez câblés dans la pratique.
[extruder]
heater_pin: PD12
sensor_type: Generic 3950
sensor_pin: PC2
min_temp: 0
max_temp: 300
[heater_bed]
heater_pin: PB0
sensor_type: Generic 3950
sensor_pin: PC5
min_temp: 0
max_temp: 120
Les sensor_type courants incluent Generic 3950, PT1000 ou d'autres modèles intégrés à Klipper. Veuillez vous référer au modèle nominal de la buse, du lit chauffant ou du capteur. En cas de doute, consultez d'abord la documentation du produit ou le service après-vente.
Connexion directe PT1000
Le PT1000 peut être connecté directement à une interface de thermistance prenant en charge le PT1000. Certaines cartes mères FLY ou cartes outil nécessitent de changer la résistance de tirage à l'aide d'un cavalier. Généralement, le NTC standard utilise un tirage 4.7K et le PT1000 utilise un tirage 1K.
[extruder]
heater_pin: <hotend_heater_pin>
sensor_type: PT1000
sensor_pin: <pt1000_sensor_pin>
pullup_resistor: 1000
min_temp: 0
max_temp: 350
- Si la carte mère ou la carte outil a déjà été configurée avec un cavalier pour un tirage
1Kpour le PT1000, écrivezpullup_resistor: 1000dans la configuration. - Si le matériel utilise toujours le tirage
4.7Kpar défaut, vous pouvez omettrepullup_resistor; Klipper le traitera par défaut comme4700. - L'état du cavalier et la configuration doivent être cohérents, sinon la température sera nettement trop élevée, trop basse ou déclenchera une erreur
ADC out of range.
Configuration MAX31865
Le MAX31865 est utilisé pour lire les capteurs de température à résistance de platine (RTD). Il est couramment divisé en deux types : PT100 et PT1000. Cette méthode n'utilise pas les broches ADC de thermistance standard, mais utilise la communication SPI et les broches de sélection de puce (CS).
| Capteur | Écriture courante | Exemple de résistance de référence | Description |
|---|---|---|---|
| PT100 | rtd_nominal_r: 100 | rtd_reference_r: 430 | La résistance nominale de la sonde est de 100 ohms |
| PT1000 | rtd_nominal_r: 1000 | rtd_reference_r: 4300 | La résistance nominale de la sonde est de 1000 ohms |
Le PT100, le PT1000 et le thermocouple de type K ne sont pas le même type de capteur. Le MAX31865 est uniquement utilisé pour les capteurs RTD à résistance de platine comme le PT100/PT1000, pas pour les thermocouples de type K.
Exemple PT100
[extruder]
heater_pin: <hotend_heater_pin>
sensor_type: MAX31865
sensor_pin: <max31865_cs_pin>
spi_bus: <spi_bus>
rtd_nominal_r: 100
rtd_reference_r: 430
rtd_num_of_wires: 2
min_temp: 0
max_temp: 350
Exemple PT1000
[extruder]
heater_pin: <hotend_heater_pin>
sensor_type: MAX31865
sensor_pin: <max31865_cs_pin>
spi_bus: <spi_bus>
rtd_nominal_r: 1000
rtd_reference_r: 4300
rtd_num_of_wires: 2
min_temp: 0
max_temp: 350
- Le MAX31865 ne peut être utilisé qu'avec le câblage PT100/PT1000 pris en charge par la carte correspondante. Ne connectez pas de thermistance NTC standard au MAX31865.
sensor_pinest la broche de sélection de puce (CS) du MAX31865, pas une broche ADC de thermistance standard.rtd_num_of_wiresdoit être renseigné en fonction du nombre réel de fils de la sonde. Les valeurs courantes sont2,3ou4.- Pour les cartes avec interrupteurs DIP ou cavaliers, le PT100/PT1000 et le nombre de fils doivent être définis conformément à la documentation du produit, sinon les lectures de température seront anormales.
Configuration du thermocouple de type K
Les thermocouples de type K nécessitent une puce de conversion de thermocouple dédiée. Ils ne peuvent pas être connectés directement à une interface de thermistance standard, ni à l'interface PT100/PT1000 du MAX31865. La configuration courante utilise SPI :
[extruder]
heater_pin: <hotend_heater_pin>
sensor_type: MAX31856
sensor_pin: <thermocouple_cs_pin>
spi_bus: <spi_bus>
tc_type: K
min_temp: 0
max_temp: 500
Si vous utilisez une autre puce de conversion pour thermocouple de type K, remplacez sensor_type par le modèle de puce réel, par exemple MAX6675, MAX31855 ou MAX31856, et configurez le SPI selon les instructions du module. tc_type: K indique que la sonde actuelle est un thermocouple de type K.
N'augmentez max_temp que si la buse, la cartouche chauffante, la thermistance, la buse, la structure de montage de la buse et le câblage prennent tous en charge les hautes températures. Ne définissez pas arbitrairement max_temp à une valeur bien supérieure aux capacités du matériel pour éliminer une erreur.
Affichage indépendant de la température
Si vous souhaitez uniquement afficher la température sans contrôler de radiateur, vous pouvez utiliser [temperature_sensor xxx].
Température de la chambre / Température ambiante
[temperature_sensor chamber]
sensor_type: Generic 3950
sensor_pin: <chamber_sensor_pin>
min_temp: 0
max_temp: 100
Température de la carte mère
[temperature_sensor MCU]
sensor_type: temperature_mcu
min_temp: 0
max_temp: 100
Température de l'ordinateur hôte
[temperature_sensor Host]
sensor_type: temperature_host
min_temp: 0
max_temp: 100
Le chamber dans [temperature_sensor chamber] est le nom affiché sur l'interface. Vous pouvez le changer en box, toolboard, host, etc., selon l'utilisation réelle. Le nom ne doit pas entrer en conflit avec les sections de configuration existantes.
Thermistances courantes et personnalisées
Sensor_type intégré à Klipper
Les sensor_type suivants sont intégrés à Klipper. Il suffit de les remplir directement, aucun [thermistor xxx] personnalisé n'est nécessaire :
| sensor_type | Résistance nominale | Méthode de définition | Utilisation courante |
|---|---|---|---|
Loading... | 100K @ 25°C | Méthode à 3 points | Configuration par défaut de la buse/lit chauffant des cartes FLY |
Loading... | 100K @ 20°C | Méthode à 3 points | Buse haute température, type E3D |
Loading... | 100K @ 25°C | Méthode à 3 points | Buse / Lit chauffant universel |
Loading... | 100K @ 25°C | Valeur B 4100 | Coussin chauffant en silicone |
Loading... | 500K @ 25°C | Méthode à 3 points | Buse haute température (450°C) |
Loading... | 100K @ 25°C | Méthode à 3 points | Buse / Lit chauffant |
Loading... | 100K @ 25°C | Valeur B 3974 | Buse / Lit chauffant |
Loading... | 100K @ 25°C | Méthode à 3 points | Buse |
- La configuration d'usine des cartes FLY utilise généralement
Generic 3950. Vérifiez le modèle d'origine avant de remplacer la thermistance. - Pour les buses haute température de type E3D ou les thermistances associées,
ATC Semitec 104GT-2est courant. - En cas de doute sur le modèle, consultez d'abord la documentation du produit ou le service après-vente. Ne changez pas
sensor_typearbitrairement.
Thermistances personnalisées
Si le capteur ne se trouve pas dans la liste intégrée ci-dessus, vous pouvez utiliser [thermistor xxx] pour définir une courbe de thermistance personnalisée.
[thermistor xxx] doit être écrit avant la section de configuration qui l'utilise, c'est-à-dire avant le [extruder], [heater_bed], [temperature_sensor xxx] ou [heater_generic xxx] correspondant.
Il existe deux façons courantes d'écrire une thermistance personnalisée :
| Type de données | Écriture recommandée | Description |
|---|---|---|
| Plusieurs points température/résistance | Méthode à 3 points | À privilégier, la courbe de température est plus proche du capteur réel |
| Uniquement résistance nominale et valeur B | Méthode de la valeur B | Écriture plus simple, mais la précision peut être moindre à haute température qu'avec la méthode à 3 points |
Exemple de méthode à 3 points
Voici un exemple utilisant les paramètres de l'ATC Semitec 104GT-2 pour démontrer l'écriture d'une thermistance personnalisée à 3 points. Définissez d'abord [thermistor semitec_104gt2], puis utilisez-la dans [extruder] :
[thermistor semitec_104gt2]
temperature1: 20
resistance1: 126800
temperature2: 150
resistance2: 1360
temperature3: 300
resistance3: 80.65
[extruder]
heater_pin: <hotend_heater_pin>
sensor_type: semitec_104gt2
sensor_pin: <hotend_sensor_pin>
min_temp: 0
max_temp: 300
Voici un exemple utilisant les paramètres de l'EPCOS 100K B57560G104F :
[thermistor epcos_100k]
temperature1: 25
resistance1: 100000
temperature2: 150
resistance2: 1641.9
temperature3: 250
resistance3: 226.15
[extruder]
heater_pin: <hotend_heater_pin>
sensor_type: epcos_100k
sensor_pin: <hotend_sensor_pin>
min_temp: 0
max_temp: 300
Les trois points doivent idéalement couvrir la plage de températures d'impression courante, par exemple la température ambiante, la température moyenne et la température maximale couramment utilisée. Si la fiche technique fournit un tableau température/résistance, sélectionnez de préférence trois points à partir de ce tableau.
Méthode de la valeur B
Si le fabricant ne fournit que la résistance nominale et la valeur B, vous pouvez utiliser les paramètres temperature1, resistance1 et beta comme suit :
[thermistor ntc_100k_b3950]
temperature1: 25
resistance1: 100000
beta: 3950
[extruder]
heater_pin: <hotend_heater_pin>
sensor_type: ntc_100k_b3950
sensor_pin: <hotend_sensor_pin>
min_temp: 0
max_temp: 300
[thermistor ntc_100k_b4500]
temperature1: 25
resistance1: 100000
beta: 4500
[extruder]
heater_pin: <hotend_heater_pin>
sensor_type: ntc_100k_b4500
sensor_pin: <hotend_sensor_pin>
min_temp: 0
max_temp: 350
Configuration des thermistances haute température
Les paramètres de thermistance haute température suivants proviennent de tables de thermistances du firmware Marlin vérifiées par rapport aux fiches techniques des fabricants. Ils conviennent aux buses haute température nécessitant une mesure au-delà de 300°C. Avant utilisation, assurez-vous que la buse, la cartouche chauffante, la buse et le câblage prennent en charge la température correspondante.
# R25 = 200K, B25 = 4338, tirage 4.7K
# Source : Marlin thermistor_2.h, vérifié par rapport à la fiche technique Mouser
[thermistor semitec_204gt2]
temperature1: 25
resistance1: 200000
temperature2: 150
resistance2: 2520
temperature3: 300
resistance3: 142
[extruder]
heater_pin: <hotend_heater_pin>
sensor_type: semitec_204gt2
sensor_pin: <hotend_sensor_pin>
min_temp: 0
max_temp: 300
- La résistance nominale de 200K est plus élevée dans la plage des hautes températures, offrant une meilleure résolution ADC au-dessus de 250°C par rapport à une thermistance 100K.
- Convient aux buses haute température de niveau 300°C, comme pour l'impression de matériaux haute température tels que le PEI, le PC, le PA.
- Utilise le tirage standard de 4.7 kΩ, aucun changement de résistance de tirage n'est nécessaire.
# R25 = 100K, B25/50 = 3950, tirage 4.7K
# Source : Marlin thermistor_61.h, 100KR13950181203
[thermistor formbot_3950_350]
temperature1: 25
resistance1: 100000
temperature2: 150
resistance2: 509
temperature3: 300
resistance3: 63.5
[extruder]
heater_pin: <hotend_heater_pin>
sensor_type: formbot_3950_350
sensor_pin: <hotend_sensor_pin>
min_temp: 0
max_temp: 350
Une thermistance 100K n'a qu'une résistance d'environ 63 Ω à 300°C, une différence énorme par rapport au tirage de 4.7 kΩ, ce qui entraîne une faible résolution ADC dans la plage des hautes températures. Si une impression prolongée au-dessus de 300°C est nécessaire, privilégiez une thermistance 200K (204GT-2) ou 500K (SliceEngineering 450).
# R25 = 2.5M, B25 = 4500, nécessite un tirage de valeur élevée
# Source : Paramètres commentés de Marlin thermistor_66.h
[thermistor dyze_500]
temperature1: 25
resistance1: 2500000
beta: 4500
[extruder]
heater_pin: <hotend_heater_pin>
sensor_type: dyze_500
sensor_pin: <hotend_sensor_pin>
pullup_resistor: 470000
min_temp: 0
max_temp: 500
- La résistance nominale de 2.5 MΩ à température ambiante est bien supérieure au tirage standard de 4.7 kΩ. Avec le tirage par défaut, l'ADC est presque saturé à basse température, rendant la mesure de température impossible.
- Une résistance de tirage de 470 kΩ ou plus est nécessaire, et vous devez définir
pullup_resistor: 470000dans la configuration. - Si la carte mère ou la carte outil ne permet pas de changer la résistance de tirage, n'utilisez pas cette thermistance. Optez plutôt pour une solution PT1000 + MAX31865 ou un thermocouple de type K.
- Pour une mesure de température de niveau 500°C, assurez-vous que la cartouche chauffante, la buse, la structure de la buse et le câblage répondent tous aux exigences de résistance à la température.
| Température cible | Solution recommandée | Description |
|---|---|---|
| ≤ 300°C | Loading... Loading... | Configuration standard suffisante |
| 300°C ~ 350°C | Loading... | Nécessite d'ajouter d'abord la configuration [thermistor] personnalisée de cette page |
| 350°C ~ 450°C | Loading... | Intégré à Klipper, il suffit de remplir sensor_type |
| 450°C ~ 500°C | Loading... Loading... | Nécessite d'ajouter d'abord la configuration [thermistor] personnalisée de cette page, ou d'utiliser un thermocouple de type K |
| Au-dessus de 500°C | Loading... | Les thermistances NTC ne sont pas adaptées |
Modèle générique pour la méthode à 3 points
Si vous disposez d'une fiche technique mais pas de paramètres prêts à l'emploi, vous pouvez utiliser le modèle suivant :
[thermistor my_custom_thermistor]
temperature1: 25
resistance1: <resistance_at_25c>
temperature2: 150
resistance2: <resistance_at_150c>
temperature3: 250
resistance3: <resistance_at_250c>
[extruder]
heater_pin: <hotend_heater_pin>
sensor_type: my_custom_thermistor
sensor_pin: <hotend_sensor_pin>
min_temp: 0
max_temp: 300
max_temp doit être défini uniquement en fonction de la résistance thermique réelle de la buse, de la cartouche chauffante, de la thermistance, de la buse et du câblage. Une configuration de thermistance NTC haute température peut lire des températures plus élevées, mais cela ne signifie pas que l'ensemble de la buse peut être chauffé en toute sécurité à cette température.
Vérification après modification
Après avoir enregistré la configuration et redémarré Klipper, veuillez vérifier dans l'ordre suivant :
- Vérifiez que la température affichée sur l'interface est proche de la température ambiante.
- Si vous voyez
ADC out of range, une température extrêmement haute, extrêmement basse ou négative, arrêtez d'abord le chauffage, coupez l'alimentation, puis vérifiez les connecteurs, le câblage et le type de capteur. - Assurez-vous que
sensor_pinn'est pas utilisé par une autre fonction. - Vérifiez que
sensor_type,pullup_resistor,rtd_nominal_r,rtd_reference_rcorrespondent au matériel réel. - Après avoir remplacé le capteur de la buse ou du lit chauffant, effectuez à nouveau un calibrage PID et enregistrez les résultats.
Pour les erreurs courantes de température et de chauffage, veuillez vous référer à : Erreurs de température, chauffage et extrusion.