Arduino & DFROBOT pH-meter
Το
παρακάτω pH meter της
DFROBOT (λεπτομέρειες
στο https://www.dfrobot.com/product-1025.html),
σχήμα 1, συνδέεται με το Arduino UNO με βάση την συνδεσμολογία που
παρουσιάζεται στο σχήμα 2. Σχήμα 1. Σχήμα 2. ·
Το κόκκινο
καλώδιο συνδέεται με τον ακροδέκτη της τάσης των 5 V ·
Το μαύρο
συνδέεται με τη γείωση GND ·
Το μπλε με
τον αναλογικό ακροδέκτη εισόδου Α0 του
Arduino, ο οποίος λαμβάνει την πρωτογενή μέτρηση. |
Κώδικας /* # This sample codes is for
testing the pH meter V1.0. # Editor : YouYou # Date
: 2013.10.12 # Ver
: 0.1 # Product: pH meter # SKU
: SEN0161 */ #define SensorPin 0 //pH
meter Analog output to Arduino Analog Input 0 unsigned long int avgValue; //Store
the average value of the sensor feedback float b; int buf[10],temp; void
setup() { pinMode(13,OUTPUT); Serial.begin(9600); Serial.println("Ready"); //Test
the serial monitor } void
loop() { for(int i=0;i<10;i++) //Get
10 sample value from the sensor for smooth the value { buf[i]=analogRead(SensorPin); delay(10); } for(int i=0;i<9;i++) //sort
the analog from small to large { for(int j=i+1;j<10;j++) { if(buf[i]>buf[j]) { temp=buf[i]; buf[i]=buf[j]; buf[j]=temp; } } } avgValue=0; for(int i=2;i<8;i++)
//take the average value of 6 center sample avgValue+=buf[i]; float phValue=(float)avgValue*5.0/1024/6; //convert the analog into
millivolt phValue=3.5*phValue;
//convert the millivolt into pH value Serial.print(" pH:"); Serial.print(phValue,2); Serial.println("
"); digitalWrite(13, HIGH); delay(800); digitalWrite(13, LOW); } |