DS18B20 sur bus 1-Wire

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

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

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 »

J'ai donc fais ce que tu m'as dis, et ça marche, j'allume une moche selon l'écart de température
ben oui, ca parait logique... mais c'est quoi une moche ? :roll:
la seconde température lue est instable et cela n'a pas l'air de venir du capteur.
je n'irais pas jusqu'a analyser ton programme car le C n'est pas (encore) dans mes connaissances.
Et t'as pas de chance, l'assembleur est mon dada mais... pas en PIC (on sait pas tout connaitre et j'en suis loin).

Par contre, ton instabilité, ca se marque sur l'afficheur ?
Pour être sur que ca ne vient pas des capteurs, tu peux les inverser et vérifier si ca vient d'eux, un mauvais contact thermique ou autre chose.
Si tu as une branche qui est stable et l'autre qui ne l'est pas, la permutation (tant hardware que software) devrait te permettre de localiser le problème rapidement.
N'oublie pas que si tu permute les capteurs, tu permute aussi leur adresse (puisque incluse dans le composant).
L'instabilité joue sur combien ? 10° ou 1 dixième ?

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 »

Encore faut il que j'assimile tout cela ce qui est un pas énorme me semble t il.
Ca c'est sur... l'électronique est passée des tubes aux transistors, puis des transistors aux circuits intégrés et maintenant, c'est des circuits intégrés a la programmation. La suite logique (sans jeu de mots) mais qui est plus importante que les évolutions précédentes.
mais nullement insurmontable, loin de là.

Quand tu teste un circuit, tu change un composant, tu place un bout de fil ou tu mesure avec ton oscillo.
En programmation, pas besoin d'un fer a souder... quand tu doute d'un programme, tu place une instruction en plus (qui allume une petite LED témoin par ex) et tu fais fonctionner et si ta led s'allume, tu es sur que le programme se déroule au moins jusque là. te reste a mettre le "piège" un peu plus loin.
C'est une autre manière de procéder mais c'est tout aussi passionnant :cool:
Le temps d'approvisionner tous ces circuits et composants.
C'est aussi un avantage des circuits a microprocesseurs, tous les schémas se ressemblent... Du reste, si ca t'intéresse, je peux te fournir le schéma de la régulation que je suis en train de mettre au point (je crois avoir prévu pas mal d'entrées/sortie différentes).
Tu pourras éliminer ce qui ne t'intéresse pas et tu auras déjà une bonne base.
J'ai prévu des sorties 220V (beaucoup trop probablement)
8 relais
Des entrées PT1000 et solarimètre (8 au total)
un bus I2C et 1Wire (pour les ds18B20)
8 sorties analogique 0-10V pour certains circulateurs (vitesse variable)
un afficheur est aussi prévu
le connecteur pour la programmation "sur carte"
une entrée/sortie RS232
ca fait pas mal d'exemple qu'il te suffit d'épurer pour en faire ce que tu veux.
Mon schéma est basé sur un processeur ATMEGA32 (en gros, un type de processeur vaut un autre). J'ai choisi ce processeur car il a une mémoire importante et que le programme Bascom a été développé pour cette série.
si ca t'intéresse...
J'ai ressorti mon scope qui, surprise, fonctionne encore, malgré un stockage de plus de 30 ans
c'est le même age que le miens (BEM016) mais il y a trois ans, j'ai du remplacer tous les électrolytiques qui commençaient a sécher.
Je reviendrai sans doute vous solliciter pour dissiper mes ignorances au fur et à mesure.
Je t'envoi un MP a ce sujet

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

Avatar du membre
patrick07
Maitre Solaire
Maitre Solaire
Messages : 1869
Enregistré le : lun. avr. 03, 2006 11:07 am
Localisation : Sud Ardèche -07- St Germain
Contact :

Message par patrick07 »

[quote="daniel 53"]
...
Le programme est en C (base de Patrick 07, merci Patrick) mais très mal écrit à mon gout, je ne suis pas un expert.
[/quote]

Salut Daniel,

Je t'avais prévenu, le bout de prog que je t'avais envoyé il y a 2 ans (!!!) était écrit "à l'arrache", juste pour que tu puisses tester tes 1Wire.

Depuis je ne me suis pas tellement amélioré, j'écris toujours le C façon assembleur et le C++ façon C :oops: .

Si tu veux que j'y jette un oeil, envoies sur mon mail...

:bye:
Patrick

[url=https://ard-tek.com/index.php/forum/sujets-recents]Le forum du MaxiSun[/url]

Avatar du membre
daniel 53
Technicien Solaire
Technicien Solaire
Messages : 406
Enregistré le : mer. déc. 27, 2006 21:49 pm
Localisation : 53 300 Ambrières-les-Vallées

Message par daniel 53 »

Merci Patrick

Il semblerait que le problème d'instabilité soit résolu par une modification de tempo.

Maintenant, toutes les décimales s'affichent, je ne sais pas pourquoi.

Les mesures en négatif semblent OK

La partie thermostat différentiel fonctionne.

Donc, on arrive au même résultat que le minisun sauf que pour modifier les réglages, il faut allumer le PC, modifier les paramètres, compiler, télécharger et hop! c'est reparti...

Daniel

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

Message par Forhorse »

Avec quelques boutons et quelques lignes de programmes en plus tu peux même modifier les reglages sans pc :cool:

Avatar du membre
daniel 53
Technicien Solaire
Technicien Solaire
Messages : 406
Enregistré le : mer. déc. 27, 2006 21:49 pm
Localisation : 53 300 Ambrières-les-Vallées

Message par daniel 53 »

Dans la grande tradition du YAKAFOKON ?

Avatar du membre
patrick07
Maitre Solaire
Maitre Solaire
Messages : 1869
Enregistré le : lun. avr. 03, 2006 11:07 am
Localisation : Sud Ardèche -07- St Germain
Contact :

Message par patrick07 »

daniel 53 a écrit :
Il semblerait que le problème d'instabilité soit résolu par une modification de tempo.
Salut Daniel,

Elles nous embêtent depuis le début de ton projet ces tempos :-x . Content que tu ais trouvé mais vérifies quand même, si ce n'est déjà fait, à l'oscilo que tu sois bien dans la moyenne des spécifications 1Wire.
Forhorse a écrit :Avec quelques boutons et quelques lignes de programmes en plus tu peux même modifier les reglages sans pc
Pour avoir une érgonomie acceptable sur une carte à "petit" microcontroleur, l'IHM (interface homme-machine) ne se résume pas à quelques lignes mais occupe plutôt une part importante du programme.

:bye:
Patrick

[url=https://ard-tek.com/index.php/forum/sujets-recents]Le forum du MaxiSun[/url]

Avatar du membre
daniel 53
Technicien Solaire
Technicien Solaire
Messages : 406
Enregistré le : mer. déc. 27, 2006 21:49 pm
Localisation : 53 300 Ambrières-les-Vallées

Message par daniel 53 »

Bonjour Patrick et à tous

J'avais déjà testé à l'oscillo ces tempos et il me semble que bizarrement les valeurs mesurées n'étaient pas forcément proportionnelles au paramétrage, mais sautaient brutalement d'une valeur à une autre. Et pourtant, je ne bois pas...
En tout cas, depuis cette légère modif de théoriquement 1 microseconde, pas moyen de le prendre en défaut! Mais de quoi je vais me plaindre aujourd'hui? :cry: (Ayé! j'ai pigé comment ça marche, les émoticônes)

Forhorse, j'ai bien pensé à ces lignes complémentaires, mais le programme est actuellement si mal structuré depuis mon passage, qu'il va falloir y remettre de l'ordre avant.

Une fois que tout sera OK, on pourra peut-être baptiser le p'tit nouveau: "microsun"?

Daniel

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

Message par Forhorse »

Si c'est a base de pic, moi j'appelerais ça "picosun" :lol:

Sinon Patrick à raison, une interface utilisateur prend souvent enormement de place dans un programme.
Après ça depend si on souhaite pouvoir modifier les paramètres à n'importe quel moment ou juste lors d'une phase d'initialisation.
Moi souvent je prévoi une routine particulière lors du "boot" du microncontrôleur. ça consiste à maintenir un bouton appuyé lors de la mise sous tension du montage afin d'acceder à la procedure de configuration. ça simplifie un peu le programation puisque l'on a pas à gerer l'appel et l'affichage des menus durant le fonctionnement normal du montage mais ça reste malgré tout plutôt gourmand.
J'ai un peu exageré en disant "quelques lignes"

Avatar du membre
daniel 53
Technicien Solaire
Technicien Solaire
Messages : 406
Enregistré le : mer. déc. 27, 2006 21:49 pm
Localisation : 53 300 Ambrières-les-Vallées

Message par daniel 53 »

Bonjour

Bonne idée ce nom de "Picosun", quoique, je ne sais pas pourquoi, je trouve ça un peu ... petit.

Pour Patrick, j'ai fait des essais avec différentes valeurs de tempo (et non pas les temps réels). Les limites de fonctionnement constatées sont 6 et 11, donc j'ai finalement adopté la valeur 8. Cela était peut-être la cause de mes décimales manquantes dans mes essais précédents???

Daniel

Avatar du membre
daniel 53
Technicien Solaire
Technicien Solaire
Messages : 406
Enregistré le : mer. déc. 27, 2006 21:49 pm
Localisation : 53 300 Ambrières-les-Vallées

Message par daniel 53 »

Bonjour

Tout d'abord, je m'aperçois que je n'ai pas répondu à une question qui lancine Richardel. Une "moche" c'est bien sur une LED :-)

Je voudrais faire évoluer maintenant mon projet en combinant des mesures sur le bus one wire et des valeurs continues commutées sur des entrées analogiques du PIC. En effet, pour les adeptes du "drain back" dont je fais partie, il vaut mieux utiliser une PT 100 dans le panneau solaire qu'un composant électronique qui cale à 125 °C.
J'ai essayé de faire fonctionner le convertisseur analogique /numérique du PIC, mais je sèche lamentablement pour l'instant.
Si quelqu'un peut me proposer un exemple d'utilisation de ce CAN en C adapté pour le PIC, je suis preneur.
J'ai fait des fouilles sur le ouaib, mais je n'ai rien trouvé.

Daniel

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,

Merci Daniel pour la "moche"... je ne connaissais pas ce surnom :-D

Concernant le pic, je ne saurais pas t'aider vu que je suis plutôt ATméga.
Mais il va y avoir des réactions, j'en suis sur.

Pour la petite histoire, on a monté les cuves et, ce week-end, je vais préparer les DS18B20. Ils prendront place dans les doigts de gant prévus, au départ, pour une pt1000 (je vais me renseigner sur une pate thermique qui compenserait l'écart).
je vais souder les 3 pattes du composant avec 3 fils, Chaque fil et patte placés dans une gaine thermorétractable de 1.2mm qui assurera l'isolation entre pattes.
L'ensemble (hormis le corps du composant) sera dans une autre gaine thermorétractable de 4.8mm.
De cette manière, j'espère protéger les fils de la chaleur.
la connexion avec le bus s'effectuera entre deux couches d'isolant.

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

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

Message par Forhorse »

Désolé j'ai pas d'exemple en C, je travail en Basic (Proton+) :???:

nicolas34
Expert Solaire
Expert Solaire
Messages : 543
Enregistré le : lun. mars 03, 2008 12:43 pm
Localisation : montoulieu (34)

Message par nicolas34 »

Hello tous
[quote="daniel 53"]
Si quelqu'un peut me proposer un exemple d'utilisation de ce CAN en C adapté pour le PIC, je suis preneur.
J'ai fait des fouilles sur le ouaib, mais je n'ai rien trouvé.
Daniel[/quote]
Je suis comme toi, je cherche (tout début en pic :oops: )
j'ai trouvé ceci, mais pas encore testé
http://angeliz.free.fr/langagec/howto_can.htm
et des explications (utiles pour moi) ici
http://www.abcelectronique.com/forum/sh ... hp?t=36728
le premier qui teste le dit aux autres
A plus tard - nico
Nicolas Pons pour CR (pas que c'était mieux avant..mais un peu quand même)
https://webold.apper-solaire.org/

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 »

j'ai fait un système de ce genre avec un attiny

Un truc découvert dans élektor et qui, je pense, est astucieux c'est d'effectuer 25 conversions en exactement 20ms (soit une conversion toutes les 800µs) puis on fait la moyenne.
le principe est de faire la mesure sur une période secteur exactement de façon a éliminer toute erreur due a l'influence du 50Hz (ripple d'alimentation ou câble 220v rayonnant etc...) ca marche bien.

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

Répondre

Retourner vers « Régulation »