Bonjour,
Je souhaiterais créer un montage utilisant environ 5sondes de température, afin de créer des courbes de la température en fonction du temps.
Problème: Je n’ai jamais utilisé de carte arduino. Je possède une carte arduino uno , et j’aimerais avoir des conseils sur les sondes qui seront dans du sable et résister à une température d’environ 125 degrés( le moins cher sera le mieux) ( j’ai vu les sondes DS18B20, mais je ne vois pas comment en brancher 5.) Enfin, j’ai évidemment un problème pour le code, avec les rapides tuto que j’ai vu, il s’agissait seulement de regarder une valeur qui s’affiche, il me faudrait donc stocker ces valeurs, et après je pourrais tracer un graphe avec python.
Merci d’avance pour votre aide.
Avec la librairie OneWire, tu peux communiquer avec tes capteurs en utilisant une seule broche.
Il faut donc brancher tes capteurs à différentes broches de ton Arduino et dans ton programme avoir autant d'instance d'objet OneWire que tu as de capteurs, le constructeur de chaque instance prenant le numéro de la broche sur lequel est connecté.
Par contre 125° c'est la limite de ce type de capteur ?
Alors non 125 degrés c’est juste une valeur à laquelle j’ai besoin que le capteur résiste, sinon je n’ai pas encore acheté les capteurs.
Mais il n’y aura pas de problèmes d’alimentation? Comme je crois que les différentes broches ne fournissent pas la même alimentation.
Pourtant c'est ce qu'indique la datasheet
Donc a moins qu'il y ait plusieurs version de ce capteur, cela risque de poser problème.
Je ne comprends pas ce que tu veux dire.
toujours d'après la datasheet, le composant accepte entre 3.0V et 5.5V, ce qui correspond au régulateur embarqué dans une carte Arduino.
As tu un exemple de ce que tu veux dire, je ne vois pas de quoi tu parle?
Hello,
Je débute mais je pense pouvoir t'aider.
Pour le câblage quelque chose comme ca :
Résistances 4.7 kΩ.
Câbles des sondes de températures de gauche a droite :
- GND (noir)
- Data (Jaune)
- VCC (Rouge)
Pour le code :
#include <OneWire.h>
#include <DallasTemperature.h>
// Definition du pin 1-Wire
const int pinDonnees = 13;
// classes OneWire et DallasTemperature
OneWire oneWireObjeto(pinDonnees);
DallasTemperature sensorDS18B20(&oneWireObjeto);
void setup() {
// Initialiser la communication de serie
Serial.begin(9600);
// Initialisé le 1-Wire
sensorDS18B20.begin();
}
void loop() {
// requeter la temperature
Serial.println("Requete de la temperature");
sensorDS18B20.requestTemperatures();
// Lire et afficher les donnees des sondes
Serial.print("Temperature capteur 0: ");
Serial.print(sensorDS18B20.getTempCByIndex(0));
Serial.println(" C");
Serial.print("Temperature capteur 1: ");
Serial.print(sensorDS18B20.getTempCByIndex(1));
Serial.println(" C");
delay(1000);
}
Il faudra, préalablement télécharger les librairies 1wire et DallasTemperature.
Pour le stockage des données, comme ca je sais pas... j'imagine qu'il te faudra stocker ca dans une matrice. J'ai programmer sur d'autre logiciel donc je ne peut pas trop te dire comment faire sur celui la... mais c'est rien de très compliquer.
Pour pouvoir travailler avec une donnée ca serait quelque chose comme :
temp_capteur_0 = sensorDS18B20.getTempCByIndex(0)
temp_capteur_1 = sensorDS18B20.getTempCByIndex(1)
Ici temp_capteur_0 et temp_capteur_1 stockeront ta donnée de température tu pourra donc l'appeler aux besoins. En l'ajoutant à la boucle tu aura une donnée qui change à chaque nouvelle analyse. d'où le besoin d'une matrice.
Je débute encore, je peux donc me tromper mais ce raisonnement me semble logique.
Bonsoir,
Merci beaucoup pour ta réponse, je vais essayer tout ça, j'essaierai de te tenir au courant de l'avancée du montage.
This topic was automatically closed 180 days after the last reply. New replies are no longer allowed.