Enregistreur de temperature à base de DS18B20

Conseils et outils pour réguler votre installation...

Modérateurs : ramses, Balajol, monteric, ametpierre, j2c

LICHTENBERGER
Newbie
Newbie
Messages : 44
Enregistré le : jeu. août 13, 2009 22:15 pm
Localisation : 69 Francheville
Contact :

Message par LICHTENBERGER »

Oui, c'est bien une seule broche du port qui me séduisais.

J'ai téléchargé la très complète doc de Maxim pour la réalisation du bus. En effet, pas mal de mise en garde.

Ainsi bien sûr que le data sheet.

Je viens de commander une quinzaine de sondes (à moins de 2€ pièce), je vais pouvoir me lancer dans les tests.

J'ai un petit stock de câble réseau catégorie 5. Je vais commencer avec ça pour faire un bus.

Juste un petite question : Avec un µC basique (genre 16F628) et horloge interne à 4MHZ, on a un temps de cycle de 1 µS.
C'est suffisant comme résolution ou il vaut mieux mettre un quartz 16 ou 20MHz ?

Cordialement


SL

Avatar du membre
richardel
Maitre Solaire
Maitre Solaire
Messages : 824
Enregistré le : dim. juin 29, 2008 23:02 pm
Localisation : Verviers Belgique

Message par richardel »

Bonjour a tous,

Oui, la doc est intéressante (elle m'a obligé a modifier mon câblage étoile en configuration "linéaire" mais ca marche).
Par sécurité, j'ai mis, aussi de la catégorie 5 même si ca ne fait "que" 30 mètres.
Pour la résistance pullup, ca coince au dessus de 6k8 et en dessous de 2k2 (dans mon cas) donc 4k7 est un bon choix (c'est celui recommandé, du reste).

c'est pas un mauvais prix, moi je les ai eu un peu moins cher ici:
http://stores.befr.ebay.be/zyscom/Digit ... 34.c0.m322

Pour le quartz, a mon avis, ca suffit.
Comme je travaille en AVR, j'utilise le langage bascom qui a des fonctions spécifiques pour le bus 1W... ça facilite les choses.
Mais si tu descend a une micro-seconde, et au vu des délais requis par le bus, ca devrait marcher surtout si tu programme en langage machine.
Si tu emplois un compilateur... ça va dépendre de ses performances.
En fait, les temps pour lire un état sont de l'ordre de 15µs donc ca devrait suffire.
une autre doc intéressante
http://daniel.menesplier.free.fr/Doc/BUS%201%20WIRE.pdf

Personnellement, je travail a 20M mais c'est pour une tout autre raison. Il a beaucoup de travail a faire (presque simultanément) et il doit dialoguer avec un Sheeva (petit plugcomputer linux) qui sera chargé (entre autres) des calculs nécessaires à la régulation.

Amitiés et bonne réalisation
L'important n'est pas la température de l'eau solaire, c'est le nombre de KWh engrangé.

LICHTENBERGER
Newbie
Newbie
Messages : 44
Enregistré le : jeu. août 13, 2009 22:15 pm
Localisation : 69 Francheville
Contact :

Message par LICHTENBERGER »

Merci de cette réponse

En effet, c'est moins cher chez les polonais.

Ce sera pour une éventuelle prochaine commande.

Très bien la doc de Menesplier. Pour une fois en français.
Ça confirme ce que je m'étais bien arraché la tête à comprendre à partir des docs anglaises, à savoir le fonctionnement de la recherche de chips multiples sur le bus !

Je vais monter une platine d'expérimentation avec un PIC, un afficheur et quelques DS18B20 pour développer les routines utiles.

J'ai un Proton+ compiler qui possède les routines read et write 1-wire, mais je ne l'utilise guère que pour en extraire des routines car je ne travaille quasi qu'en assembleur.
Je vais quand même regarder si pour cette appli ça ne vaut pas le coup de s'y remettre.

Merci de ces conseils

Amicalement

SL

Avatar du membre
richardel
Maitre Solaire
Maitre Solaire
Messages : 824
Enregistré le : dim. juin 29, 2008 23:02 pm
Localisation : Verviers Belgique

Message par richardel »

je ne travaille quasi qu'en assembleur.
Ah, punaise... un vrai de vrai... :cool:
C'est vrai que pour ce genre d'application, il est utile de bien gérer le temps. Savoir qu'une routine dure X micro-seconde exactement peut être utile.
Très bien la doc de Menesplier. Pour une fois en français.
Oui, il y a parfois de bonnes choses en français (heureusement pour moi, d'ailleurs) :roll:

Comme tu as pu le lire, il y a une méthode pour connaitre les adresses gravés dans ces composants. Il y a moyen de découvrir les adresses des composants présents sur un bus. C'est pratique mais ca ne permet pas de localiser quel capteur a telle adresse (sauf si le capteur est seul sur le bus).

Dans ma régulation, j'ai deux bus 1W.
Le premier est le bus général avec les 45 sondes.
Le deuxième mène a un petit socket en face avant ou je peux placer un (et un seul) ds18b20 ce qui permet d'en connaitre l'identité.
Ca peut être utile en cas de remplacement d'un composant défectueux.

C'est ce que j'ai fait avec chacune de mes 45 sondes.
Le plus difficile a été de ne pas mélanger les sondes lors de la mise en place :-D
Pour ma part, petit sachet plastique avec le composant et petit papier avec la désignation de la sonde et son identité (mais j'ai quand même pas pu éviter une inversion :oops:

Amitiés
L'important n'est pas la température de l'eau solaire, c'est le nombre de KWh engrangé.

Avatar du membre
richardel
Maitre Solaire
Maitre Solaire
Messages : 824
Enregistré le : dim. juin 29, 2008 23:02 pm
Localisation : Verviers Belgique

Message par richardel »

re,

je viens de tomber sur ceci... comme tu travail avec un pic, ca pourrait t'intéresser...
http://vede.free.fr/electronique/ds18b20/

autre chose, pour les doigts de gants et les DS18b20, j'ai trouvé ceci... mais la commande minimum est de 100 pièces...
http://jyntc.en.alibaba.com/product/360 ... 8b20_.html

s'il y a des amateurs, 5 pour moi :roll:

Amitiés
L'important n'est pas la température de l'eau solaire, c'est le nombre de KWh engrangé.

LICHTENBERGER
Newbie
Newbie
Messages : 44
Enregistré le : jeu. août 13, 2009 22:15 pm
Localisation : 69 Francheville
Contact :

Message par LICHTENBERGER »

Merci, j'avais en effet vu cette réalisation qui ne manque pas d’internet.

Mais qui est toujours avec un seul capteur sur le bus.

Son compilateur Basic donne le même genre d'ASM que mon Proton. Mais quand je vois la taille de l'ASM et par là même du .HEX par rapport à mon écriture ASM directe, c'est du délire !
Bon, il est vrai qu'on a largement la place de mettre ça dans le PIC.
Mais il ne faut pas avoir à intervenir pour debug ou modif...

Je n'ai pas vu de prix par 100 des sondes que tu indiques. Un groupement pourrait être fait par l'APER, mais je pense que le problème risque de se situer dans l'utilisation. Quand on utilise un PIC (Microchip ou Atmel), pas de problème (à condition de savoir le programmer). Mais avec les automates souvent rencontrés, je ne sais pas trop comment ça s'interface.

Amicalement

SL

Avatar du membre
richardel
Maitre Solaire
Maitre Solaire
Messages : 824
Enregistré le : dim. juin 29, 2008 23:02 pm
Localisation : Verviers Belgique

Message par richardel »

je n'ai pas approfondis le liens que je t'ai cité (lors d'une recherche je suis tombé dessus et dès que j'ai vu "PIC", j'ai pensé a toi).

Pour les sondes, il y a un prix indicatif (1 a 5 USD) mais je suppose que ca dépend de la quantité.
C'est probablement plus cher que les sondes habituelles mais pour les doigts de gant, c'est nickel.
En fait, je serais plus tranquille si les sondes "critiques" étaient de ce type.
j'ai constaté qu'il y avait une dizaine de degrés de différence entre un ds18B20 et l'indicateur a aiguille associé. J'ai revu le contact de la sonde et l'écart est devenu insignifiant (de l'ordre de 1 degré).
Du coup, pour la cuve solus qui contient des équipements synthétiques, il est préférable de ne pas dépasser 90° et si un problème de contact fausse la mesure, je risque le vie de ma cuve. Je pense que le type de sonde "style pt1000" assurerait un meilleur contact.

Concernant les automates, tu as totalement raison... Mais il y a plusieurs amateurs d'électronique sur ce forum alors... qui sait. :roll:

Amitiés
L'important n'est pas la température de l'eau solaire, c'est le nombre de KWh engrangé.

LICHTENBERGER
Newbie
Newbie
Messages : 44
Enregistré le : jeu. août 13, 2009 22:15 pm
Localisation : 69 Francheville
Contact :

Message par LICHTENBERGER »

Ça y est, j'ai commencé le boulot.

J'ai fait un petit montage de test avec un 16F628, un afficheur 2 lignes de 16 caractères et une ligne Bus 1-wire (on peut en mettre quelques autres si on veut).

J'ai écrit et testé les routines d'affichage.

Je suis en train d'écrire celles de travail avec le bus 1-wire.
Pour l'heure, je les teste en simulation.

Si on veut utiliser les DS18B20 avec un automate (genre Mx de Crouzet qui semblent bien utilisés mais je ne les connais pas), il faut sans doute une interface.
Elle devait pouvoir être assez simple, un 12F629 suffit si l'automate sait lire du RS232 ou un 16F628 s'il faut passer par une liaison parallèle 8 bits.

Si tu penses que ça peut avoir un intérêt, je me pencherai éventuellement sur la question. Je trouve que le traitement numérique de la température via un 18B20 est plus simple (quand les routines de traitement sont écrites) et moins couteux, qu'une ribambelle de PT1000 avec autant de convertisseurs à régler. C'est ce que j'ai fait dans l'installation que je gère, mais justement si j'avais consacré le temps nécessaire à la mise en œuvre des 18B20, ça m'aurait finalement bien satisfait.

A suivre...

SL

Avatar du membre
richardel
Maitre Solaire
Maitre Solaire
Messages : 824
Enregistré le : dim. juin 29, 2008 23:02 pm
Localisation : Verviers Belgique

Message par richardel »

Bravo, c'est bien partit !!!

Un petit tuyau... un ds18b20 qui vient d'être mis sous tension (aucune conversion n'a été demandée) a, en mémoire, la température de 85°.
Ca peut être utile pour tester les routines de lecture et/ou de conversion.
Chez moi, je lisais 68° et j'ai pu détecter, ainsi, qu'une variable "integer" = une variable virgule flottante divisé par 1,6 ne marchait pas en bascom.
J'ai du faire cela en deux étapes :
1- variable virgule flottante = variable virgule flottante / 1,6
2- variable integer = variable virgule flottante
NB j'emploie le 1,6 car je travaille en dixième de degrés.

Concernant le M3, faudrait poser la question...
Personnellement, comme toi, je préfère faire appel a un processeur donc je ne suis pas spécialement intéressé...
Mais il y a du potentiel, le M3 est fort prisé sur ce forum (et il faut reconnaître que c'est un bon matériel qui semble être fiable et très souple).

Il serait, peut-être intéressant de créer un nouveau post pour poser la question.
A mon avis, ce post-ci est devenu tellement "pointu" que les non-électroniciens l'ont probablement déserté (je dis ca pour susciter des réactions :roll: :-D )
une ribambelle de PT1000
sans parler de la ribambelle de câbles (c'est pour ca que le bus m'a attiré)
Y a plus que ca, dans mon installation solaire... des bus... un bus interne au processeur, un bus pour les sondes et même un bus pour le raccordement de mes cuves (ce qui en a dérouté pas mal :???: )

Amitiés
Modifié en dernier par richardel le mar. mai 31, 2011 0:48 am, modifié 3 fois.
L'important n'est pas la température de l'eau solaire, c'est le nombre de KWh engrangé.

LICHTENBERGER
Newbie
Newbie
Messages : 44
Enregistré le : jeu. août 13, 2009 22:15 pm
Localisation : 69 Francheville
Contact :

Message par LICHTENBERGER »

Donc, je résume :

S'il y a des utilisateurs d'automate Crouzet qui sont séduits par l'utilisation d'un bus 1-wire, ils sont invités à se manifester ici.

Le cas échéant, s'ils me disent ce que leur automate demande pour l'acquisition des températures, je peux faire une petite interface. Il ne devrait pas y en avoir pour beaucoup plus qu'une dizaine d'euros.

Les essais sur ma maquette de test se passent bien (pour l’instant avec un seul 18B20 sur le bus). Les routines d'initialisation, de lecture du code et de lecture de la température fonctionnent parfaitement.
Je vais encore un peu avancer, mais il va y avoir un "break" de 15 jours.

Amicalement

SL

Mallusone
Maitre Solaire
Maitre Solaire
Messages : 886
Enregistré le : ven. avr. 13, 2007 17:46 pm
Localisation : Angoulême (16)
Contact :

Message par Mallusone »

Salut à tous,

Eh bien oui, cela m'intéresse, l'idée d'utiliser un bus pour raccorder de multiples sondes de température me conviendrai.

J'ai actuellement seulement 8 sondes pour connaitre la températures de mes modules photovoltaiques.

Mais le toit fait 250 m2 (24m * 10m60) et pour aller lire au plus loin les PT1000 posent un problème.
Cela doit me permettre de refroidire au mieux sous les modules à l'aide d'une brumisation (gestion des températures, volume d'eau, rendement gagné...etc).

@+

Avatar du membre
richardel
Maitre Solaire
Maitre Solaire
Messages : 824
Enregistré le : dim. juin 29, 2008 23:02 pm
Localisation : Verviers Belgique

Message par richardel »

et pour aller lire au plus loin les PT1000 posent un problème
En theorie, il suffit d'augmenter la section des câbles pour diminuer leur résistance interne ou d'utiliser des sondes a 4 fils (2 d'alimentation et 2 de mesure) mais c'est clair que les ds18b20 seraient plus facile.

Je surveille ton installation depuis quelques mois pour me faire une idée de la températures des modules (les installations qui donnent cette info sont assez rare (solarlog 1000)).
Comme tu parles de pt1000, comment est traitée cette info ? qu'emploi-tu comme interface entre les sondes et le solarlog (a moins que l'info ne vienne par un autre chemin et s'incorpore aux graphiques sans passer par le solarlog ?)
Ah, pour ne pas fausser mes observations, je suppose que c'est de l'intégré ?

Concernant la brumisation, certains ont essayés (sur l'autre forum) et le résultat ne semblait pas a la hauteur des attentes (juste pour info, pas d'expérience personnelle a ce niveau).

Amitiés
Modifié en dernier par richardel le mar. mai 31, 2011 18:01 pm, modifié 2 fois.
L'important n'est pas la température de l'eau solaire, c'est le nombre de KWh engrangé.

LICHTENBERGER
Newbie
Newbie
Messages : 44
Enregistré le : jeu. août 13, 2009 22:15 pm
Localisation : 69 Francheville
Contact :

Message par LICHTENBERGER »

J'ai un peu avancé dans la programmation.

Mon dispositif de test donne correctement le N° du chip et la température ambiante.

Je vais mettre l'avancement de mes travaux en ligne, ça suscitera peut-être des vocations.

Le schéma est hyper simple et je mets toujours à disposition le source (en asm) qui fait fonctionner le truc.

Avis aux amateurs...

SL

LICHTENBERGER
Newbie
Newbie
Messages : 44
Enregistré le : jeu. août 13, 2009 22:15 pm
Localisation : 69 Francheville
Contact :

Message par LICHTENBERGER »

Voilà la chose.

IL n'y a pas encore de traitement de plusieurs sondes en parallèle mais ça donne déjà une idée de ce qu'on peut faire.

Je ne suis pas très loquace dans mes sources, mais j'ai essayé de mettre le minimum indispensable.

Bien sûr la taille du binaire est minuscule par rapport à ce qu'on obtient avec un Proton.

Rendez-vous ici:

http://sylvain.lichtenberger.perso.sfr.fr/DS18B20.htm

Bonne découverte

SL

Forhorse
Etudiant Solaire
Etudiant Solaire
Messages : 278
Enregistré le : lun. févr. 08, 2010 14:42 pm
Localisation : 61 - Perche

Message par Forhorse »

ça squatt dur ici :grin:

[quote="LICHTENBERGER"]

Bien sûr la taille du binaire est minuscule par rapport à ce qu'on obtient avec un Proton.

[/quote]

Pas sûr que la différence soit si énorme.

Répondre

Retourner vers « Régulation »