Salve,
Ho acquistato un sensore di pressione relativa MPX5700GP il quale è stato collegato sulla board e Arduino Uno, con il seguente collegamento; Vcc sensore al pin 5V, il GND a massa e il primo pin analogico alla porta A0 di Arduino (vorrei capire se i restanti 3 pin debbano essere collegati e a cosa servono).
Nel codice ho provato ad utilizzare la funzione map ma non penso sia propriamente giusta, penso che debba essere calibrato il sensore essendo pressione relativa e non assoluta.
Grazie Federico66, ho visto i due topics che mi hai allegato. Ho un solo problema nel capire questo codice. Non capisco perché effettua una conversione A/D e perché usa un ciclo for. Mi potete aiutare a capire? Grazie
Ziostep:
Grazie Federico66, ho visto i due topics che mi hai allegato. Ho un solo problema nel capire questo codice. Non capisco perché effettua una conversione A/D e perché usa un ciclo for.
Guarda, non conosco il sensore e ho solo fatto una ricerca nel forum, cosa che avresti potuto fare anche tu
Comunque, invece di fare una lettura, ne somma 10 consecutive e poi divide la somma per 10, quindi fa la media su 10 letture; infatti moltiplica per 10 anche i valori di calibratura (offset, fullScale).
Spero ti sia chiaro come calcolare i valori offset e fullScale.
Federico
// MPX5700 pressure sensor (700kPa)
int rawValue; // A/D readings
int offset = 410; // zero pressure adjust
int fullScale = 9630; // max pressure (span) adjust
float pressure; // final pressure
void setup() {
Serial.begin(9600);
}
void loop() {
rawValue = 0;
for (int x = 0; x < 10; x++)
rawValue = rawValue + analogRead(A0);
pressure = (rawValue - offset) * 700.0 / (fullScale - offset); // pressure conversion
Serial.print("Raw A/D is ");
Serial.print(rawValue);
Serial.print(" Pressure is ");
Serial.print(pressure, 1); // one decimal places
Serial.println(" kPa");
delay(500);
}