Fabrication industrielle
Internet des objets industriel | Matériaux industriels | Entretien et réparation d'équipement | Programmation industrielle |
home  MfgRobots >> Fabrication industrielle >  >> Manufacturing Technology >> Processus de fabrication

pH-mètre Arduino

Composants et fournitures

Arduino UNO
× 1
Capteur de pH analogique Atlas Scientific Gravity™
× 1
Sonde de pH Atlas Scientific Consumer Grade
× 1
Module LCD 20x4
× 1
boîtier 158x90x60mm
× 1
Mini maquette
× 1
Résistance 220 ohm
× 1
Résistance 1k ohm
× 1
Entretoises et vis de 11 mm (fournies avec le capteur de pH)
× 4
Câbles de raccordement
× 1
Feuille acrylique (plexiglas)
× 1

Outils et machines nécessaires

Perceuse, mèches, mèches pour cloisons sèches, limes, tournevis, étau de table, scie à ruban, pistolet à colle et bâton de colle, fer à souder et soudure, pied à coulisse numérique, règle

Applications et services en ligne

Arduino IDE

À propos de ce projet

Dans ce projet, nous allons fabriquer un pH-mètre de paillasse en utilisant le circuit et la sonde de pH analogique Gravity d'Atlas Scientific et un Arduino Uno. Les lectures seront affichées sur un écran à cristaux liquides (LCD).

Remarque :

- Ce compteur a été développé sur un ordinateur Windows. Il n'a pas été testé sur Mac.

- L'enceinte n'est pas étanche.

Étape 1 : préparer le logement

Sécurité  :N'oubliez pas de faire attention lorsque vous manipulez des outils/machines et de porter des équipements de sécurité appropriés tels que des lunettes, des gants et des respirateurs.

Le boîtier utilisé est un boîtier en plastique ABS. Il doit être modifié pour le pH-mètre.

Ouverture coupée pour l'écran LCD

a) L'écran LCD est placé dans la partie supérieure (couvercle) du boîtier. Centrez un rectangle de 98x40mm sur la couverture.

b) Mettez la pièce dans l'étau et percez un trou pilote de 3,2 mm (1/8") dans le rectangle qui a été délimité.

c) Utilisez ce trou pilote comme point de départ pour le foret de coupe pour cloisons sèches de 3,2 mm (1/8"). Comme il s'agit d'un petit travail, nous utiliserons le foret sur la perceuse à main plutôt qu'une machine de découpe pour cloisons sèches. Travaillez à l'intérieur du rectangle au lieu des lignes car il peut être un peu difficile de couper de manière droite avec cette mèche sur la perceuse.

d) Ensuite, utilisez une lime à main pour retirer l'excès de matériau et façonnez le rectangle à la taille requise.

Couper les ouvertures pour le connecteur BNC et les ports Arduino

Les ouvertures pour le connecteur BNC et les ports Arduino se trouvent sur le côté de la partie inférieure du boîtier.

a) En utilisant les dimensions fournies ci-dessous, marquez le point central du cercle et les contours des deux rectangles.

b) Mettez la pièce dans l'étau et découpez les ouvertures. L'ouverture circulaire est réalisée à l'aide de forets. Les rectangulaires sont fabriqués en suivant un processus similaire à celui utilisé pour faire l'ouverture de l'écran LCD.

Équiper la plaque de base pour monter les composants

La plaque de base est utilisée pour monter l'Arduino, le capteur de pH et la mini planche à pain. Une feuille acrylique de 3,2 mm d'épaisseur est utilisée.

a) À l'aide d'une scie à ruban, découpez la feuille acrylique à 135 x 62,5 mm.

b) Marquez les positions des quatre trous comme indiqué ci-dessous. Percez des trous de 2,38 mm (3/32") de diamètre. Fraisez les trous sur un côté de la plaque à une profondeur de 3 mm et un diamètre de 4,4 mm (11/64"). Ceci est nécessaire pour garder une surface inférieure plane lorsque les vis sont insérées pour maintenir les entretoises.

c) Fixez les entretoises de 11 mm à l'aide des vis fournies. Le capteur de pH est livré avec 4 entretoises et vis. Utilisez-en deux pour l'Arduino.

Étape 2 :Installez l'électronique dans le logement

a) Insérez la plaque de base dans la partie inférieure du boîtier. Maintenir en position avec des vis ou de la colle chaude.

b) Montez le capteur de pH sur la plaque de base. Fixez aux entretoises avec des vis.

c) Montez l'Arduino Uno sur la plaque de base. Fixez aux entretoises avec des vis.

d) Ajoutez la mini planche à pain sur la plaque de base.

e) Soudez les broches de l'en-tête à l'écran LCD (broches fournies). Insérez l'écran LCD dans la partie supérieure du boîtier et utilisez de la colle chaude pour maintenir l'écran en place.

Étape 3 :Câblez l'électronique ensemble

Le câblage des composants est indiqué dans le schéma ci-dessus.

Utilisez la mini planche à pain pour les 1kΩ et 220Ω et pour distribuer les broches 5V et de masse de l'Arduino.

Les deux résistances sont utilisées pour régler le contraste de l'écran.

Fiches techniques

Capteur de pH par gravité, sonde de pH

Étape 4 :Finaliser l'assemblage

Une fois le câblage terminé :

a) Assemblez les parties supérieure et inférieure du boîtier à l'aide des vis fournies.

b) Connectez la sonde au connecteur BNC.

Étape 5 : Télécharger le code sur Arduino Uno

Le code de ce projet utilise des bibliothèques personnalisées et des fichiers d'en-tête. Vous devrez les ajouter à votre IDE Arduino pour utiliser le code. Les étapes ci-dessous incluent le processus de création de cet ajout à l'EDI.

a) Connectez l'Arduino à votre ordinateur et ouvrez l'IDE. L'IDE peut être téléchargé à partir de ce LIEN si vous ne l'avez pas. Allez dans Tools -> Board -> Select Arduino/Genuino Uno . Allez dans Outils -> Port -> sélectionnez le port où l'Arduino est connecté.

b) Ajouter une bibliothèque d'affichage à cristaux liquides :dans l'IDE, accédez à Sketch -> Inclure la bibliothèque -> Gérer les bibliothèques . Dans la barre de recherche du gestionnaire de bibliothèque, entrez "liquidcrystal". Recherchez le package intitulé "LiquidCrystal Built-in par Arduino, Adafruit". Il peut être installé ou non. Sinon, sélectionnez le package et cliquez sur installer .

c) Ajouter la bibliothèque de capteurs Atlas Gravity :téléchargez le fichier zip à partir du LIEN suivant. Le fichier sera enregistré sous le nom "Atlas_gravity.zip". Dans l'IDE, allez dans Sketch -> Include library -> Add.ZIP Library . Localisez le fichier "Atlas_gravity.zip" et sélectionnez-le pour l'ajouter.

d) Ensuite, nous devons ajouter le code du pH-mètre. Copiez le code de ce LIEN sur le panneau de travail IDE.

e) Compilez et téléchargez le code sur l'Arduino.

f) Les lectures de pH seront alors affichées sur l'écran LCD. Vous pouvez également afficher les lectures sur le moniteur série. Pour ouvrir le moniteur série, accédez à Outils -> Moniteur série ou appuyez sur Ctrl+Maj+M sur votre clavier. Réglez le débit en bauds sur 9600 et sélectionnez "Retour chariot".

Étape 6 :Étalonner le capteur de pH

Remarque :si vous prévoyez d'utiliser une alimentation externe pour l'Arduino, connectez-la à l'Arduino avant de procéder à l'étalonnage. Cela garantira que les niveaux de référence sont correctement définis, ce qui aidera à un étalonnage correct.

Ce pH-mètre peut être calibré sur un, deux ou trois points. Des solutions tampons standards (pH 4, 7 et 10) sont nécessaires

Le moniteur série est utilisé pour le processus d'étalonnage. L'utilisateur pourra observer le changement progressif des lectures au fur et à mesure qu'ils arrivent à la stabilisation et envoyer les commandes appropriées.

Les données d'étalonnage sont stockées dans l'EEPROM de l'Arduino.

Commandes d'étalonnage

Point bas :cal, 4

Point médian :cal, 7

Point culminant :cal, 10

Calibrage clair :cal, clear

Étapes

a) Retirez le flacon de trempage et rincez la sonde pH.

b) Versez une partie de la solution pH 4 dans une tasse. Assurez-vous qu'il y en a assez pour couvrir la zone de détection de la sonde.

c) Placez la sonde dans la tasse et remuez-la pour éliminer l'air emprisonné. Observez les lectures sur le moniteur série. Laissez la sonde reposer dans la solution jusqu'à ce que les lectures se stabilisent (un petit mouvement d'une lecture à l'autre est normal)

d) Une fois les lectures stabilisées, entrez la commande cal, 4 dans le moniteur série. L'étalonnage au pH 4 est maintenant terminé.

Répétez les étapes a-d pour pH7 et pH10. N'oubliez pas de rincer la sonde au fur et à mesure que vous passez aux différentes solutions tampons.

Qu'en est-il de la compensation de température ?

Le capteur utilisé dans ce projet a une précision de +/- 0,2%. Le pH-mètre fonctionnera avec cette précision dans la plage de température de 7 à 46 °C. En dehors de cette plage, le compteur devra être modifié pour la compensation de température. Remarque :La sonde de pH peut être soumise à une plage de 1 à 60 °C.

Code

  • code du pH-mètre arduino
code du pH-mètre arduinoC/C++
/* Une fois téléchargé, ouvrez le moniteur série, réglez le débit en bauds sur 9600 et ajoutez "Retour chariot". Le code permet à l'utilisateur d'observer les lectures de pH en temps réel ainsi que d'étalonner le capteur. Un, deux ou trois points la calibration peut être effectuée.Commandes de calibration :point bas :"cal,4" point milieu :"cal,7" point haut :"cal,10" clear calibration :"cal,clear"*/#include "ph_grav. h" //fichier d'en-tête pour le capteur de pH à gravité Atlas Scientific#include "LiquidCrystal.h" //fichier d'en-tête pour l'affichage à cristaux liquides (lcd)String inputstring ="" ; //une chaîne pour contenir les données entrantes du PCboolean input_string_complete =false; //un indicateur pour indiquer que nous avons reçu toutes les données de PCchar inputstring_array[10] ; //un tableau de caractères requis pour la chaîne parsingGravity_pH pH =A0; //affectez la broche analogique A0 d'Arduino à la classe Gravity_pH. connectez la sortie du capteur de pH à la broche A0LiquidCrystal pH_lcd(2, 3, 4, 5, 6, 7); //créer une variable pH_lcd et affecter des broches numériques arduino aux broches lcd (2 -> RS, 3 -> E, 4 à 7 -> D4 à D7)void setup() { Serial.begin (9600); //activer le port série pH_lcd.begin (20, 4); //démarrer l'interface lcd et définir la taille de l'écran (20 colonnes et 4 lignes) pH_lcd.setCursor(0,0); //placez le curseur sur l'écran à la colonne 1, ligne 1 pH_lcd.print("--------------------"); //afficher les caractères pH_lcd.setCursor(0,3) ; //placez le curseur sur l'écran à la colonne 1, ligne 4 pH_lcd.print("--------------------"); //afficher les caractères pH_lcd.setCursor(5, 1); //placez le curseur sur l'écran à la colonne 6, ligne 2 pH_lcd.print("PH Reading"); // affiche "lecture du pH" if (pH.begin()) { Serial.println("Loaded EEPROM");} Serial.println(F("Utiliser les commandes \"CAL,4\", \"CAL,7\ ", et \"CAL,10\" pour calibrer le circuit à ces valeurs respectives")); Serial.println(F("Utilisez la commande \"CAL,CLEAR\" pour effacer le calibrage")); }void serialEvent() { //si le port série matériel_0 reçoit un char inputstring =Serial.readStringUntil(13); //lire la chaîne jusqu'à ce que nous voyions un  input_string_complete =true; //définir le drapeau utilisé pour dire si nous avons reçu une chaîne complète du PC}void loop() { if (input_string_complete ==true) { //vérifier si les données ont été reçues inputstring.toCharArray(inputstring_array, 30); //convertit la chaîne en un tableau de caractères parse_cmd(inputstring_array); //envoyer les données à pars_cmd function input_string_complete =false; // réinitialiser le drapeau utilisé pour dire si nous avons reçu une chaîne complète du PC inputstring =""; //efface la chaîne } Serial.println(pH.read_ph()); //sortir la lecture du pH au moniteur série pH_lcd.setCursor(8, 2); //placez le curseur sur l'écran à la colonne 9, ligne 3 pH_lcd.print(pH.read_ph()); //sortie du pH au délai lcd(1000);}void parse_cmd(char* string) { //Pour appeler les fonctions d'étalonnage strupr(string); //convertir la chaîne d'entrée en majuscule if (strcmp(string, "CAL,4") ==0) { //comparer la chaîne d'entrée utilisateur avec CAL,4 et si elles correspondent, continuer pH.cal_low(); //fonction d'appel pour l'étalonnage du point bas Serial.println("LOW CALIBRATED"); } else if (strcmp(string, "CAL,7") ==0) { //comparez la chaîne d'entrée utilisateur avec CAL,7 et si elles correspondent, continuez pH.cal_mid(); //fonction d'appel pour l'étalonnage du point médian Serial.println("MID CALIBRATE"); } else if (strcmp(string, "CAL,10") ==0) { //comparez la chaîne d'entrée utilisateur avec CAL,10 et si elles correspondent, continuez pH.cal_high(); //fonction d'appel pour l'étalonnage du point haut Serial.println("HIGH CALIBRATE"); } else if (strcmp(string, "CAL,CLEAR") ==0) { //comparez la chaîne d'entrée utilisateur avec CAL,CLEAR et si elles correspondent, continuez pH.cal_clear(); //appel de la fonction pour effacer l'étalonnage Serial.println("CALIBRATION CLEARED"); }}

Schémas


Processus de fabrication

  1. Arduino Spybot
  2. FlickMote
  3. Téléviseur maison B-Gone
  4. horloge maîtresse
  5. Trouvez-moi
  6. Puissance Arduino
  7. Tech-TicTacToe
  8. Arduino quadrupède
  9. Joystick Arduino