Industriële fabricage
Industrieel internet der dingen | Industriële materialen | Onderhoud en reparatie van apparatuur | Industriële programmering |
home  MfgRobots >> Industriële fabricage >  >> Manufacturing Technology >> Productieproces

Bouw een Precieze Arduino pH-meter met Atlas Scientific Sensor – Onderdelen & Handleiding

Onderdelen en benodigdheden

OnderdeelAantal
Arduino UNO1
Atlas Scientific Gravity™ Analog pH Sensor1
Atlas Scientific Consumer Grade pH Probe1
20×4 LCD Module (met I2C-adapter)1
Behuizing 158×90×60 mm1
Mini breadboard1
Weerstand 220 Ω1
Weerstand 1 kΩ1
11 mm afstandshouders en schroeven (bij pH-sensor meegeleverd)4
Jumper draden1 set
Acrylplaat (plexiglas) voor basisplaat1

Benodigde tools en machines

  • Boormachine, boorbouten, gipsknipperbits, vijlen, schroevendraaiers, bankschroef, bandsaag, lijmpistool, soldeerbout & tin, digitale schuifmaat, liniaal

Apps en online diensten

  • Arduino IDE

Over dit project

In dit project bouwen we een lab-pH-meter met de Gravity analoge pH-circuit en -probe van Atlas Scientific en een Arduino Uno. Meetwaarden worden weergegeven op een LCD-display (20×4).

Let op:

  • Ontwikkeld op Windows; niet getest op Mac.
  • De behuizing is niet waterdicht.

Stap 1: Behuizing voorbereiden

Veiligheid: draag beschermingsbril, handschoenen en adembescherming bij het werken met machines.

De behuizing is een ABS-kunststof doos die aangepast moet worden.

Opening voor LCD zagen

  1. Centreer een rechthoek van 98 × 40 mm op het deksel (bovenste deel).
  2. Spannen in de bankschroef en boor een 3,2 mm (1/8″) loodgat in de rechthoek.
  3. Gebruik dit gat als startpunt voor een 3,2 mm gipsknipperbit op de boormachine. Werk aan de binnenkant van de getekende lijnen.
  4. Werkt de overige restafval af met een handvijl tot de juiste maat.

Bouw een Precieze Arduino pH-meter met Atlas Scientific Sensor – Onderdelen & Handleiding

Opening voor BNC-connector en Arduino-poorten

Deze openingen zitten in de zijkant van het onderste deel.

  1. Markeer middelpunt voor cirkel en rechthoeken op basis van de afmetingen.
  2. Zaag/boor de openingen (cirkel met boorbouten, rechthoeken zoals bij LCD).

Bouw een Precieze Arduino pH-meter met Atlas Scientific Sensor – Onderdelen & Handleiding

Basisplaat uitrusten voor componentmontage

De basisplaat (3,2 mm acryl) draagt de Arduino, pH-sensor en mini-breadboard.

  1. Zaag acrylplaat op maat: 135 × 62,5 mm.
  2. Markeer 4 gatposities, boor Ø 2,38 mm (3/32″). Kontersenk de gaten aan één kant 3 mm diep, Ø 4,4 mm (11/64″) – voor vlakke onderkant bij schroeven.
  3. Bevestig de 11 mm afstandshouders met meegeleverde schroeven. Gebruik er 2 voor de Arduino.

Bouw een Precieze Arduino pH-meter met Atlas Scientific Sensor – Onderdelen & Handleiding

Stap 2: Electronica in behuizing monteren

  1. Plaats basisplaat in onderkant behuizing, fixeren met schroeven of lijmpistool.
  2. Monteer pH-sensor op basisplaat, vastzetten op afstandshouders.
  3. Monteer Arduino Uno op basisplaat, vastzetten op afstandshouders.
  4. Plaats mini-breadboard op basisplaat.
  5. Soldeer header-pinnen aan LCD (meegeleverd). Zet LCD in deksel, fixeren met wat lijm.

Bouw een Precieze Arduino pH-meter met Atlas Scientific Sensor – Onderdelen & Handleiding Bouw een Precieze Arduino pH-meter met Atlas Scientific Sensor – Onderdelen & Handleiding Bouw een Precieze Arduino pH-meter met Atlas Scientific Sensor – Onderdelen & Handleiding Bouw een Precieze Arduino pH-meter met Atlas Scientific Sensor – Onderdelen & Handleiding Bouw een Precieze Arduino pH-meter met Atlas Scientific Sensor – Onderdelen & Handleiding

Stap 3: Electronica bedraden

Bouw een Precieze Arduino pH-meter met Atlas Scientific Sensor – Onderdelen & Handleiding

Bedraad volgens het schema. Gebruik het mini-breadboard voor de 1 kΩ en 220 Ω weerstanden en voor verdeling van 5V en GND van de Arduino. De twee weerstanden stellen de LCD-contrast in.

Bouw een Precieze Arduino pH-meter met Atlas Scientific Sensor – Onderdelen & Handleiding

Datasheets: Gravity pH sensor, pH probe.

Stap 4: Montage afronden

  1. Schroef deksel en onderkant samen met meegeleverde schroeven.
  2. Sluit de pH-probe aan op de BNC-connector.

Bouw een Precieze Arduino pH-meter met Atlas Scientific Sensor – Onderdelen & Handleiding

Stap 5: Code uploaden naar Arduino Uno

De code gebruikt aangepaste bibliotheken en header-bestanden. Deze moeten je Arduino IDE toegevoegd worden.

  1. Sluit Arduino aan, open IDE. Tools → Board → Arduino/Genuino Uno. Tools → Port → selecteer juiste poort.
  2. LiquidCrystal-bibliotheek: Sketch → Include Library → Manage Libraries → zoek „liquidcrystal” → installeer „LiquidCrystal Built-in by Arduino, Adafruit”.
  3. Atlas Gravity sensor bibliotheek: Download zip van de Atlas Scientific GitHub. Sketch → Include Library → Add .ZIP Library → selecteer Atlas_gravity.zip.
  4. Kopieer de pH-meter code (zie Code-sectie) in de IDE.
  5. Compileer en upload.
  6. pH-waarden verschijnen op LCD. Ook zichtbaar via Serial Monitor (Tools → Serial Monitor of Ctrl+Shift+M). Baudrate: 9600, „Carriage return” selecteren.

Stap 6: pH-sensor kalibreren

Let op: als je een externe voeding gebruikt, sluit die aan voor kalibratie, zodat referentieniveaus correct zijn.

De meter ondersteunt 1-, 2- of 3-punts kalibratie. Standaard bufferoplossingen (pH 4, 7, 10) zijn vereist.

Kalibratie verloopt via de Serial Monitor. Je ziet de waarden stabiliseren en stuurt dan de commando's.

Kalibratiegegevens worden opgeslagen in de EEPROM van de Arduino.

Kalibratie-commando's

  • Laag punt: cal,4
  • Midden punt: cal,7
  • Hoog punt: cal,10
  • Wissen kalibratie: cal,clear

Stappen

  1. Verwijder bewaarflesje en spoel de probe af.
  2. Giet pH 4-oplossing in een beker (genoeg om de meetzone te bedekken).
  3. Plaats probe in de beker, roer om luchtbellen te verwijderen. Waarneem waarden op Serial Monitor. Wacht tot stabilisatie (kleine wisselingen zijn normaal).
  4. Na stabilisatie: typ cal,4 in Serial Monitor. Laag-punt kalibratie klaar.

Herhaal voor pH 7 en pH 10. Spoel probe tussen elke oplossing af.

Temperatuurcompensatie?

De sensor heeft een nauwkeurigheid van ±0,2%. De meter werkt binnen deze nauwkeurigheid bij 7–46 °C. Buiten dit bereik is aanpassing voor temperatuurcompensatie nodig. De probe zelf kan 1–60 °C aan.

Code

Arduino pH meter code C/C++
/* Once uploaded, open the serial monitor, set the baud rate to 9600 and append "Carriage return"
   The code allows the user to observe real time pH readings as well as calibrate the sensor.
   One, two or three-point calibration can be done.
   Calibration commands:
   low-point: "cal,4"
   mid-point: "cal,7"
   high-point: "cal,10"
   clear calibration: "cal,clear"
*/
#include "ph_grav.h"       // header file for Atlas Scientific gravity pH sensor
#include "LiquidCrystal.h" // header file for liquid crystal display (lcd)

String inputstring = "";
boolean input_string_complete = false;
char inputstring_array[10];

Gravity_pH pH = A0; // assign analog pin A0 to class Gravity_pH
LiquidCrystal pH_lcd(2, 3, 4, 5, 6, 7); // RS=2, E=3, D4-D7=4-7

void setup() {
  Serial.begin(9600);
  pH_lcd.begin(20, 4);
  pH_lcd.setCursor(0,0);
  pH_lcd.print("--------------------");
  pH_lcd.setCursor(0,3);
  pH_lcd.print("--------------------");
  pH_lcd.setCursor(5, 1);
  pH_lcd.print("pH Reading");
  if (pH.begin()) { Serial.println("Loaded EEPROM"); }
  Serial.println(F("Use commands \"CAL,4\", \"CAL,7\", and \"CAL,10\" to calibrate the circuit to those respective values"));
  Serial.println(F("Use command \"CAL,CLEAR\" to clear the calibration"));
}

void serialEvent() {
  inputstring = Serial.readStringUntil(13);
  input_string_complete = true;
}

void loop() {
  if (input_string_complete == true) {
    inputstring.toCharArray(inputstring_array, 30);
    parse_cmd(inputstring_array);
    input_string_complete = false;
    inputstring = "";
  }
  Serial.println(pH.read_ph());
  pH_lcd.setCursor(8, 2);
  pH_lcd.print(pH.read_ph());
  delay(1000);
}

void parse_cmd(char* string) {
  strupr(string);
  if (strcmp(string, "CAL,4") == 0) {
    pH.cal_low();
    Serial.println("LOW CALIBRATED");
  } else if (strcmp(string, "CAL,7") == 0) {
    pH.cal_mid();
    Serial.println("MID CALIBRATED");
  } else if (strcmp(string, "CAL,10") == 0) {
    pH.cal_high();
    Serial.println("HIGH CALIBRATED");
  } else if (strcmp(string, "CAL,CLEAR") == 0) {
    pH.cal_clear();
    Serial.println("CALIBRATION CLEARED");
  }
}

Schema's

Bouw een Precieze Arduino pH-meter met Atlas Scientific Sensor – Onderdelen & Handleiding

Productieproces

  1. Bluetooth-gecontroleerde Arduino Spybot bouwen
  2. FlickMote: Gebarengecontroleerde IR-afstandsbediening voor Slimme Huizen
  3. DIY Arduino TV-B-Gone: Universele TV-uit-schakelaar
  4. Bouw een Aangepaste LED Hoofdklok met Alarm – Zichtbaar vanaf 12 Meter
  5. Find Me: Slimme Item Locator met Arduino en Bluetooth
  6. Geoptimaliseerde Voedingsoplossingen voor Arduino Projecten
  7. Arduino Boter-Kaas-Eieren met MAX7219 LED Matrix en Kartonnen Behuizing
  8. Bouw een Slimme Arduino Vierpotige Robot: Stap-voor-Stap Handleiding
  9. Bouw een Aangepaste Arduino Joystick Stuurwiel voor Gaming
  10. Bouw een Volledig Functionele CNC-machine met Arduino Nano R3
  11. Earth Analyzer: Geavanceerde IoT Sensor Kit voor Milieumonitoring