venerdì 4 settembre 2015
Microfono Keyes per Arduino
Mi sono comprato un paio di modulini Keyes con microfono per provare a registrare suoni con Arduino (ed anche per provare la modalita' Fast Analog Read)
La scelta e' caduta sui microfoni Keyes che hanno una uscita analogica ed una uscita digitale (superata una certa soglia lo stato digitale si alza ad 1)
Il modulo ha anche un trimmer (in blu) con una vite che non sembra avere un fondo scala
Come semplice prova ho collegato Vcc, Gnd ed A0 e montato lo sketch Basic/AnalogReadSerial
--------------------------------------------
void setup() {
Serial.begin(9600);
}
void loop() {
int sensorValue = analogRead(A0);
Serial.println(sensorValue);
delay(1);
}
--------------------------------------------
sul lato PC per vedere in diretta i dati ho preso un esempio di Processing
--------------------------------------------
import processing.serial.*;
Serial myPort; // The serial port
int xPos = 1; // horizontal position of the graph
PrintWriter output;
//Variables to draw a continuous line.
int lastxPos=1;
int lastheight=0;
void setup () {
size(600, 400);
println(Serial.list());
myPort = new Serial(this, Serial.list()[1], 9600); //
myPort.bufferUntil('\n');
background(0); // set inital background:
output = createWriter("dati.txt");
}
void draw () {
}
void serialEvent (Serial myPort) {
String inString = myPort.readStringUntil('\n');
output.println(inString);
if (inString != null) {
inString = trim(inString); // trim off whitespaces.
float inByte = float(inString); // convert to a number.
inByte = map(inByte, 0, 1023, 0, height); //map to the screen height.
stroke(127,34,255); //stroke color
strokeWeight(4); //stroke wider
line(lastxPos, lastheight, xPos, height - inByte);
lastxPos= xPos;
lastheight= int(height-inByte);
if (xPos >= width) {
xPos = 0;
lastxPos= 0;
background(0); //Clear the screen.
}
else {
xPos++;
}
}
}
--------------------------------------------
Alla prova dei fatti il sensore si rileva estremamente poco sensibile anche in modalita' analogica. Si osservano variazioni sensibili di corrente solo per rumori molto forti e vicini
Anche agire sul trimmer non migliora la situazione. Di fatto si alza e si abbassa solo l'offset della misura (il grafico si muove lungo l'asse Y) ma non si hanno miglioramenti della misura
Fondamentalmente inutile
Iscriviti a:
Commenti sul post (Atom)
Alpine Linux 2024 su IBM A31
Ho provato a far resuscitare un IBM A31 destinato alla discarica. La macchina ha processore P4, 256 Mb di RAM, la batteria CMOS morta ed e...
-
In questo post viene indicato come creare uno scatterplot dinamico basato da dati ripresi da un file csv (nel dettaglio il file csv e' c...
-
Questo post e' a seguito di quanto gia' visto nella precedente prova Lo scopo e' sempre il solito: creare un sistema che permet...
-
La scheda ESP32-2432S028R monta un Esp Dev Module con uno schermo TFT a driver ILI9341 di 320x240 pixels 16 bit colore.Il sito di riferiment...
Nessun commento:
Posta un commento