Page 2 sur 7
Re: Mesure des températures avec courbes
Publié : mer. déc. 09, 2015 10:14 pm
par Jacques
Il te faudra donc 4 X 750ms pour faire tours de tes sondes, soit une mesure toutes les 3 secondes au plus rapide.
Je pense qu'il te faudra 4 x 2 fils afin d'avoir un câble par sonde afin de les disposer à divers endroits sans avoir à faire un câblage trop compliqué.
Tu peux aussi utiliser du fil de téléphone bien souple et le raccorder par des soudures
Pour le câblage regarde les schémas que je t'ai proposé et refait un schéma au propre depuis la carte Arduino jusqu'à chaque sonde. Ensuite je regarderais pour te dire si c'est bon.
Parce que patte VDD---->résistance 4.7k---->5v, ce n'est pas ce que je t'ai proposé.
Regarde le code que je t'ai donné pour savoir sur quelle broche Arduino tu vas brancher le signal.
L'USB va te donner le 5V et la masse (GND) sur les bornes de la carte Nano
Fait tes connexion sans utiliser de plaque d'essai, il n'y en a pas besoin.
N'utilise pas non plus 123Dcircuit, il n'est pas assez complet comme produit pour faire un véritable dessin. Utilise du papier, ca existe encore et ca sera bien plus clair qu'avec tout le reste

Re: Mesure des températures avec courbes
Publié : mar. déc. 29, 2015 6:20 pm
par Tim0th3e
Bonsoir,
J'ai reçu tout le matériel pour réaliser ce montage. Avant de commencer la carte "arduino" que j'ai commandée est en fait une contrefaçon chinoise. Elle possède un chip différent que l'originale. Ceci réduit son prix de 25 euros à 3 env

.
De ce fait, vous devez mettre à jour le pilote pour pouvoir téléverser vos programmes. Ce n'est pas complexe mais j'ai cherché un long moment.
____________________________________________________________________________________________________
Alors j'ai fait un premier montage avec 1 dallas. Voici le schéma:

- Schéma
- IMG_0786.JPG (54.29 Kio) Consulté 11505 fois
Et le montage sur plaque d'essai:

- IMG_0787.JPG (71.66 Kio) Consulté 11505 fois

- IMG_0788.JPG (89.3 Kio) Consulté 11505 fois
Donc
GND -> GND
DQ -> un pin
¦4K7
VQQ -> 5v
Re: Mesure des températures avec courbes
Publié : mar. déc. 29, 2015 10:21 pm
par Jacques
Ce n'est pas une contrefaçon mais une version légèrement différente de celle officielle.
La carte comprend 2 chips, le processeur Atmel et l'interface USB, c'est ce dernier chip qui est différent, ce n'est pas un FTDI mai un CH340, le driver Windows n'est pas le même.
Pour s'en rendre compte, il suffit simplement de lire ce qui est écrit sur le chip.
Enfin, bravo, j'attends maintenant le résultat sur la console
Re: Mesure des températures avec courbes
Publié : mar. déc. 29, 2015 11:19 pm
par Tim0th3e
Jacques a écrit :Enfin, bravo, j'attends maintenant le résultat sur la console
Merci je vais m'attaquer à la partie la plus dure programmer le tout
Je ne mis connait pas en C mais ça sera la bonne occasion d’apprendre...
Par contre en début de programme on définit la librairie OneWire.h, je ne voit pas ce que c'est. Est-elle déjà sur la carte?
Merci et bonne soirée
Re: Mesure des températures avec courbes
Publié : mer. déc. 30, 2015 10:30 am
par Coyotte
Bonjour,
Je me pose une question quant à la position du capteur (et des fils de connexion) sur la breadboard :
Il me semble que toutes les pattes sont connectées entre-elles, puisque sur la même ligne 12.
(Ou alors serait-ce une version spéciale ?)
Coyotte
Re: Mesure des températures avec courbes
Publié : ven. janv. 01, 2016 11:58 am
par Tim0th3e
Coyotte a écrit :Bonjour,
Je me pose une question quant à la position du capteur (et des fils de connexion) sur la breadboard :
Il me semble que toutes les pattes sont connectées entre-elles, puisque sur la même ligne 12.
(Ou alors serait-ce une version spéciale ?)
Coyotte
Bonjour je crois que vous avez effectivement raison.
Je vais corriger ça. Merci
Re: Mesure des températures avec courbes
Publié : ven. janv. 01, 2016 2:10 pm
par Jacques
Tim0th3e a écrit :Jacques a écrit :Enfin, bravo, j'attends maintenant le résultat sur la console
Merci je vais m'attaquer à la partie la plus dure programmer le tout
Je ne mis connait pas en C mais ça sera la bonne occasion d’apprendre...
Par contre en début de programme on définit la librairie OneWire.h, je ne voit pas ce que c'est. Est-elle déjà sur la carte?
Merci et bonne soirée
OneWire.h est une bibliothèque qui permet d'utiliser simplement les sondes 1 fil.
Il faut la télécharger sur le site Arduino et l'installer sur ton PC pour pouvoir l'utiliser.
Le plus simple au début est d'utiliser un programme tout fait qui généralement est en deux parties. La première permet de rechercher le SN des sondes, le second sera le programme de mesure en lui-même.
Re: Mesure des températures avec courbes
Publié : dim. janv. 03, 2016 12:32 pm
par Tim0th3e
Bonjour,
Voici le résultat dans le moniteur série avec le firmware inclus dans la librairie :
ROM = 28 FF C9 8B 92 15 1 FE
Chip = DS18B20
Data = 1 5B 1 4B 46 7F FF C 10 7 CRC=7
Temperature = 21.69 Celsius, 71.04 Fahrenheit
No more addresses.
ROM = 28 FF C9 8B 92 15 1 FE
Chip = DS18B20
Data = 1 5B 1 4B 46 7F FF C 10 7 CRC=7
Temperature = 21.69 Celsius, 71.04 Fahrenheit
No more addresses.
ROM = 28 FF C9 8B 92 15 1 FE
Chip = DS18B20
Data = 1 5B 1 4B 46 7F FF C 10 7 CRC=7
Temperature = 21.69 Celsius, 71.04 Fahrenheit
No more addresses.
ROM = 28 FF C9 8B 92 15 1 FE
Chip = DS18B20
Data = 1 5B 1 4B 46 7F FF C 10 7 CRC=7
Temperature = 21.69 Celsius, 71.04 Fahrenheit
No more addresses.
ROM = 28 FF C9 8B 92 15 1 FE
Chip = DS18B20
Data = 1 5B 1 4B 46 7F FF C 10 7 CRC=7
Temperature = 21.69 Celsius, 71.04 Fahrenheit
No more addresses.
ROM = 28 FF C9 8B 92 15 1 FE
Chip = DS18B20
Data = 1 5B 1 4B 46 7F FF C 10 7 CRC=7
Temperature = 21.69 Celsius, 71.04 Fahrenheit
No more addresses.
ROM = 28 FF C9 8B 92 15 1 FE
Chip = DS18B20
Data = 1 5B 1 4B 46 7F FF C 10 7 CRC=7
Temperature = 21.69 Celsius, 71.04 Fahrenheit
No more addresses.
----------
Et le résultat avec un autre firmware:
Temperature : 21.87°C
Temperature : 21.87°C
Temperature : 21.94°C
Temperature : 21.94°C
Temperature : 21.94°C
Temperature : 21.94°C
Temperature : 21.94°C
Temperature : 21.94°C
Temperature : 21.94°C
Temperature : 21.94°C
Temperature : 21.94°C
J'ai modifié quelques éléments pour qu'il n'y aie que la température:
21.94
21.94
22.00
22.00
22.00
22.00
22.00
22.00
_______________________________________________________________________________
J'ai quelques questions concernant la suite:
-Existe-t-il un autre moyen de stocker les données (par exemple sur une carte SD) pour éviter d'avoir l’ordinateur à côté?
-Pour brancher 10 sondes, comment cela se passe-t-il?
Merci et bonne soirée
Re: Mesure des températures avec courbes
Publié : dim. janv. 03, 2016 8:54 pm
par Jacques
Beau début d'année Thimothee !!!
On peut brancher toute les sondes en parallèle (les trois pates connectées entre elles)
Chaque sonde sera adressée par son adresse (ROM = 28 FF C9 8B 92 15 1 FE) spécifique, il suffit alors de recréer une nouvelle "lecture" avec chaque nouvelle adresse.
Je pense que ton programme prévoit le montage de plusieurs sonde on le voit par le dernier message "no more addresses". Reste simplement à tester en branchant une seconde sonde
Pour stocker les valeurs sur une SD il faut ajouter un lecteur SD (1 ou 2€) et modifier le programme pour qu'il ouvre un fichier sur la SD et écrive les données en séquence, rien de plus simple.
Il y a une bibliothèque pour le lecteur SD sur le site Arduino et des exemples.
Par contre il faudra certainement un interrupteur pour activer et désactiver l'écriture des enregistrements. Le risque de ne pas désactiver les enregistrements c'est de ne pas fermer le fichier sur la SD et de perdre ce qui est écrit en débranchant l'alimentation.
Re: Mesure des températures avec courbes
Publié : lun. janv. 04, 2016 1:25 pm
par Tim0th3e
Merci pour votre réponse.
Pour les dix capteurs, comment fait-on avec les résistances? Peut-on en mettre moins que 5? (de 4.7k)
Je travaille en ce moment pour coder le fait de faire la moyenne des dix capteurs de températures et de l'afficher dans la console...
Je vous enverrai le code plus tard mais la je m'amuse avec les erreurs de compilation :-\
--------------------------------------
J'ai trouvé
ce shield sd arduino sur le site banggood. Est-ce qu'il conviendrai?
--------------------------------------
Je vous décris la suite de mon projet:
Le but premier serait de contrôler automatiquement la ventilation de ma boîte (éventuellement toute l'imprimante mais c'est une autre chose).
En gros le but serait se faire quelque chose du genre:
if température <24
allumer les ventilateurs
else ne rien faire
if température >22
éteindre les ventilateurs
else ne rien faire
C'est une estimation mais j'aimerai juste savoir si il faudrait quelque chose de plus à part:
-Une carte arduino
-Le système de mesure de températures
-Un régulateur de 12 à 5v car les ventilateurs sont en 12v et la carte arduino en 5v.
------------------------
Après si vous pensez à quelque chose pour améliorer le système n'hésitez pas à me le dire

J'accepte les propositions
Merci de votre aide
Re: Mesure des températures avec courbes
Publié : lun. janv. 04, 2016 8:06 pm
par Jacques
Même avec 10 sondes il n'y a qu'une résistance à mettre. En fait il faut simplement connecter les 3 pates des sondes entre elles (avec 3 fils, c'est mieux pour pouvoir répartir les sondes à différents endroits.
L'adaptateur micro SD semble bon mais le mieux serait peut être une SD qui se convertie plus facilement en micro-SD que l'inverse.
Pour le control de la ventilation il faut utiliser un transistor pour faire changer le 5V en 12V (prendre modèle sur la carte Ramps (chauffe, plateau ou fan (D8 à D10))
Ensuite le principe de ventiler à 24° ou ne rien faire en dessous est bon si ce n'est que le bruit deviendra vite désagréable entre ventilateur à fond et rien.
Dans la pratique il faudrait utiliser la fonction PWM (impulsions proportionnelles de 0 à 100%) de la carte Arduino. En fait le ventilateur serait mis en marche progressivement (valeur entre 0 et 255) en fonction de la différence de température mesurée/souhaitée. Par exemple si l'on veut maintenir une température égale à 24°, à 24 on met un PWM à 30%, à 24,3 un PWM à 40%, à 24,6 un PWM à 50% et ainsi de suite jusqu'à 100%.
A une température ordinaire, la ventilation sera pratiquement inaudible, le bruit montera progressivement en fonction uniquement des véritables besoins.
Sur la Witbox, j'ai mis en consigne basse 28° de façon à avoir une bonne accroche du PLA sur le plateau.
Re: Mesure des températures avec courbes
Publié : lun. janv. 04, 2016 11:11 pm
par Tim0th3e
J'ai fait le montage des sondes et maintenant je m'coupe du firmware qui me donne du fil à retordre...
Je vous redonne des nouvelles concernant cela
-----------------------
Pour le transitor, je recherche avec le critère 5 to 12v mais je n'obtient aucun résultat. Si je note juste "transitor", j'ai un peut près 2000 résultat

.
Quel modèle faut-il choisir (Je n'ai pas retrouvé celui sur la ramps)
Le transistor peut bien se fixer sur une plaque d'essai, mais faudrai-t-il une plaque vierge pour souder le tout?
Est ce que l'arduino nano pourra supporter le tout (mesure, analyse et contrôle de la ventilation)?
-----------------------
Au niveau de l'idée, dans le firmware, je strutureai cela comme ça:
1) Mesure des températures avec les 10 sondes.
2) Enregistrement de ces données sur une carte sd
3) Additionner les valeurs et faire la moyenne (je crois qu'il faut créer un tableau)
4) Analyser les données avec la fonction de contrôle et ventiler la boîte
Merci et bonne soirée
Re: Mesure des températures avec courbes
Publié : mar. janv. 05, 2016 12:17 am
par Jacques
10 sondes pour faire une moyenne

on est plus proche d'une centrale nucléaire que d'une imprimante 3D...
Pour les ports, on utilise un seul pour les 10 sondes et un autre pour le ventilateur, sur 14 ports dispo ca devrait le faire
Ensuite pourquoi enregistrer sur la carte SD ?
Si le projet est intéressant dans l'écriture, à l'usage je crois qu'il serait plus efficace de concevoir quelque chose de plus simple mais bien conçu avec une sonde et un ventilateur, le port USB servant au besoin de datalogger pour tracer une courbe de fonctionnement. Un afficheur LCD peut compléter le tout en affichant la température et le taux de ventilation.
Pour compliquer un peu les choses on pourrait ajouter une sonde externe afin de compenser la ventilation en fonction aussi de la température externe en augmentant la ventilation si la température externe est plus haute. De cette facon on aurait une régulation encore plus fine de la température interne (en même temps, et pour être honnête, ca ne servira pas à grand chose :-\ )
Pour le transistor, il faut utiliser un Mosfet canal N qui peut se monter sur la planche de tests.
Un exemple de montage est ici
http://premium-forum.fr/viewtopic.php?f ... ation#p900

Le transistor est T2 qui est commandé par le CI NE555 et qui serait dans ton cas l'Arduino
Re: Mesure des températures avec courbes
Publié : mar. janv. 05, 2016 6:41 am
par Tim0th3e
Jacques a écrit : Pour les ports, on utilise un seul pour les 10 sondes et un autre pour le ventilateur, sur 14 ports dispo ca devrait le faire

Oui effectivement mais il en faudrait un autre car il y a deux ventilateurs, un d'entrée d'air et un de sortie.
Est ce que la moyenne de 10 sondes est compexe?
Pour expliquer j'ai pensé à dix sonde car c'est complexe de placer une d'onde seule car la température n'est pas la même partout. C'était mon idée première...
Jacques a écrit :Ensuite pourquoi enregistrer sur la carte SD ?
Je me disait qu'il fallait faire cela pour créer le tableau de la moyenne...
Jacques a écrit :Si le projet est intéressant dans l'écriture, à l'usage je crois qu'il serait plus efficace de concevoir quelque chose de plus simple mais bien conçu avec une sonde et un ventilateur, le port USB servant au besoin de datalogger pour tracer une courbe de fonctionnement. Un afficheur LCD peut compléter le tout en affichant la température et le taux de ventilation.
Le problème est que j'ai la boîte et de ce fait il faut tout que je démonte pour faire les trous pour l'éventuel écran. Je dis ça car celui de base avec l'imprimante est assez grand. Le fait d'afficher la température c'est accessoire je pense?
Jacques a écrit :Pour compliquer un peu les choses on pourrait ajouter une sonde externe afin de compenser la ventilation en fonction aussi de la température externe en augmentant la ventilation si la température externe est plus haute. De cette facon on aurait une régulation encore plus fine de la température interne (en même temps, et pour être honnête, ca ne servira pas à grand chose :-\ )
Je vais voir mais ça reste secondaire
Jacques a écrit :Pour le transistor, il faut utiliser un Mosfet canal N qui peut se monter sur la planche de tests.
Un exemple de montage est ici
http://premium-forum.fr/viewtopic.php?f ... ation#p900

Le transistor est T2 qui est commandé par le CI NE555 et qui serait dans ton cas l'Arduino
Donc au final deux transitors, celui à 6 pattes et celui à 3 pattes
Re: Mesure des températures avec courbes
Publié : mar. janv. 05, 2016 11:57 am
par Jacques
Non, il n'y a que T2 qui est utile, juste 3 pates à câbler. Ce "relais" permet non seulement d'augmenter la tension mais aussi le courant. Avec ce transistor, il est possible d'alimenter 3 ou 4 ventilateurs sans problème.
Dans ton cas un seul ventilateur est utile, celui du haut qui sort l'air qui sera aspirée par une ouverture en bas (avec ou sans filtre)
Le but du jeu est de renouveler l'air chaud par de l'air plus frais, un seul ventilateur peut le faire, deux le fera aussi mais avec moins de bruit. Quoi qu'il en soit les ventilateurs sont conçus pour fonctionner sans pression, il ne faut donc pas aspirer de l'air en passant directement par un filtre. On met un ou deux trous avec filtres en bas et en haut un ou deux ventilateurs.
Faire une moyenne de 10 sondes est très simple mais pour quel intérêt ? L'enceinte est fermée et la chaleur monte naturellement, c'est déjà une température moyenne. Il suffit juste de mesurer la température en haut de la boite avant le ventilateur d'extraction pour déterminer à quel moment il doit fonctionner.
Une fois en fonction, le courant d'air généré brassera l'air de bas en haut et la sonde mesurera de fait une nouvelle température moyenne.
Il ne faut pas oublier non plus que la sonde a un temps de réaction qui peut être de plusieurs secondes, la véritable température interne sera alors bien moins précise que la mesure effectuée à un instant T.
Dans la réalité nous n'avons pas besoin d'une précision aussi importante, nos imprimantes fonctionnent de 20 à 35° sans problème.