Problème de gestion Thermocouples MX6675 et MAX31855

Bonsoir à tous,

Je bute sur un problème étrange :

J'ai testé les 2 modules Thermocouples cités en sujet sur un Mega 2560 en utilisant les 2 sketches d'exemples respectifs.

Pour les pins DO - CS et CLK, j'ai utilisé respectivement :

pour le MAX6675 : 4 - 5 - 6
pour le MAX31855 : 11 - 12 - 13

Tout fonctionnait parfaitement.

Après cette phase exploratoire, j'ai inclus les codes des 2 MAX dans mon application de gestion de brûleur.

J'ai du changer l'affectation des pins suite aux autres besoins (sorties PWM et gestion d'affichage LCD).

Le MAX6675 est à présent sur les pins 11 - 12 - 13
Le MAX31855 sur les pins 14 - 15 - 16.

Le MAX31855 continue à fonctionner parfaitement,
Le MAX6675 ne retourne que du 0°C

Après différents essais croisés pour tenter d'isoler le problème, comme :

  • inversion des pins entre les 2 MAX
  • inversion des thermocouples
    le problème demeure sur le MAX6675.

J'ai renouvelé l'essai de départ (avec un autre Mega 2560) et respectant la nouvelle affectation des pins.

Tout fonctionne.

La seule différence réside donc dans le code limité à la gestion des modules.

Conclusion : les pins 11 - 12 - 13 - 14 - 15 - 16 ne peuvent pas être utilisées par le MAX6675 et semblent être en conflit avec d'autres fonctions liées à mon sketch ou aux librairies additionnelles.

J'ai vérifié côté code, rien d'anormal en affectation de pins.

Mes autres librairies (en plus des max6675.h et maxMAX31855.h) sont :
AltSoftSerial.h (pins 46 - 48)
LiquidCrystal.h (pins 2 - 3 - 4 - 5 - 6 - 7)
Thermistor.h (pins A10 - A11 - A12 - A13)

N'y entendant pas grand chose dans les liaisons SPI, quelqu'un aurait-il une idée de l'origine du problème ?

J'aurais aimé poster mon code, mais je dépasse le nombre de caractères autorisés...

jackjean:
...
J'aurais aimé poster mon code, mais je dépasse le nombre de caractères autorisés...
...

Passe par un hébergeur externe pas "trop intrusif"
perso j'utilise sans trop de problèmes http://www.cjoint.com/

voici le lien du sketch.

Soyez indulgents, c'est mon premier, et un exemple de mauvaise syntaxe, mauvaise mise en page, redondance, etc...

J'ai juste une petite question à propos du max31855, on peux le brancher en 5v ? Car j'ai un projet similaire en cours, merci

Tout dépend de quoi on parle.
Si c'est du chip nu : 4V maxi.
Si c'est d'un module, il peut être équipé d'un régulateur 3.3V.
A vérifier.

En fonction de la sonde (2 fils, 3 fils, 4fils) voir aussi le MAX31865

Je suis pas encore un pro dans le monde de l'arduino je parle du vcc dans mon projet j'ai besoin de 2 thermocouple à utiliser avec un Arduino uno qui a une sortie 5v donc je suis parti sur le module max6675 mais je me suis rendu compte qu'il ne gère pas les températures négatives comparer au max31855 :confused: du coup si je veux utiliser le max31855 avec un uno que faut-il que je mettre entre les 2 ?
Désolé de pollué le sujet là mais j'ai trouvé aucune info ailleurs

J'ai essayé le MAX31865 ICI, alimenté en 3.3V et communicant en 5V avec une ARDUINO.

Mais est-ce bien recommandé ?

Personnellement je pense qu'il serait préférable de l'utiliser avec un processeur 3.3V, du genre ARDUINO PRO MINI 3.3V 8MHz.
Et pourquoi faire une fixation sur la UNO ? C'est une grosse carte et elle va imposer d'insérer des adaptateurs de niveaux 5V / 3.3V entre ARDUINO et MAX31865, si l'on veut faire les choses correctement.

Je me fie uniquement à la datasheet.

Et celle-ci dit (page 2: Absolute Maximum Ratings) :
Voltage Range on All Digital Pins Relative to DGND .............................-0.3V to (VDVDD + 0.3V)

Je fait pas une fixation, c'est juste que j'ai que ça sous la main :slight_smile: du coup je vais commander un petit pour essayer.
Avez-vous déjà essayer avec 2 max31855 et en température négative ?

du coup je vais commander un petit pour essayer.

Il n'y a aucun inconvénient à part la taille ...

  1. la PRO MINI n'a pas de trous de fixation, contrairement à une NANO ou UNO
    C'est une carte qui s'enfiche sur les connecteurs d'un PCB ou d'une plaquette à pastilles.
    On peut bien entendu la souder directement.
    Voir par exemple la dernière réalisation de Leptro : Module relais Mysensors deux voies sur rail Din - Réalisations et Projets Finis - Arduino Forum

  2. elle ne possède pas de connecteur USB. Il faut donc un convertisseur USB / série pour la charger :
    Voir ici : arduino-pro-mini-basse-consommation
    Paragraphe 5. Chargement

Avez-vous déjà essayer avec 2 max31855 et en température négative ?

Non je n'ai pas essayé avec 2 MAX31855, mais étant donné que les broches de communication sont personnalisables (soft SPI), je ne vois pas à priori ce qui pourrait l'empêcher.
Température négative : non plus.

La librairie : GitHub - adafruit/Adafruit-MAX31855-library: Library for the Adafruit Thermocouple breakout with MAX31855K

Dernier détail : attention il existe deux versions :

PRO MINI 8MHz 3.3V

PRO MINI 16MHz 5V

Une PRO MINI 16MHz 5V ne fonctionnera pas en 3.3V.

Une PRO MINI 8MHz 3.3V fonctionnera en 3.3V mais aussi en 5V.

En fait c'est le même processeur mais le fait de tourner à 8MHz au lieu de 16MHz lui permet d'accepter une tension de fonctionnement réduite.