Étape 5: Double faisceau et tests
Quand j’ai ouvert la tête du capteur, j’ai trouvé un autre Conseil très compliqué (pas utilisable pour ce projet), alors j’ai retiré le capteur optique du plateau et il câblé à l’One Linkit pour tester la sortie, mais j’ai trouvé que la portée du capteur est très limitée, donc probablement la fonction du circuit original était d’amplifier les signaux ainsi que les envoyer vers le logiciel. J’ai été obligé de se replier sur la résistances dépendantes Light (LDR)
J’ai utilisé un autre morceau de carton attaché les LDRs à ce passant les fils par la carte et ensuite fixé le nouveau Conseil de capteur à la plaque de base original grossissant des lentilles.
J’ai alors écrit un script pour collecter les données provenant de deux capteurs c’est quand j’ai trouvé une autre question, le câblage que j’utilisais connecté deux LDRs à travers une résistance variable unique - la théorie étant qu’en recueillant la valeur POT pour chacun d’une épingle différente sur la carte j’ai pu équilibrer les signaux à l’aide de la résistance variable. Cependant, j’ai trouvé qu’un LDR était moins sensible que les autres donc équilibrage de cette manière n’a pas fonctionné.
J’ai dû refaire l’installation électrique les deux afin que chacun ait sa propre résistance variable - l’inconvénient, c’est qu’il est maintenant plus difficile d’aligner les deux valeurs distinctes.
float potSample = A2 ;
float potBlank = A0 ;
float SampleValue = 0 ;
flotteur blanc = 0 ;
int x = 0 ;
void setup() {}
Serial.Begin(9600) ; ouvre le port série
Serial.println("CLEARDATA") ; efface toutes les données résiduelles Serial.println("LABEL,Time,val,blk") ; définir les en-têtes pour le transfert de données vers excel
}
void loop() {}
x = x + 1 ;
Si (x > = 200) {}
Serial.println("CLEARDATA") ; x = 0 ;
}
SampleValue = analogRead(potSample) ;
Delay(10) ;
Vide = analogRead(potBlank) ;
Serial.Print("Data,Time,") ;
Serial.Print(SampleValue) ;
Serial.Print(",") ;
Serial.println(blank) ;
Delay(1000) ;
}