Manufaturação industrial
Internet das coisas industrial | Materiais industriais | Manutenção e reparo de equipamentos | Programação industrial |
home  MfgRobots >> Manufaturação industrial >  >> Manufacturing Technology >> Processo de manufatura

Medidor de pH Arduino

Componentes e suprimentos

Arduino UNO
× 1
Sensor Analógico de pH Atlas Scientific Gravity ™
× 1
Sonda de pH Atlas Scientific Consumer Grade
× 1
Módulo LCD 20x4
× 1
Gabinete de 158x90x60mm
× 1
Mini breadboard
× 1
Resistor 220 ohm
× 1
Resistor 1k ohm
× 1
espaçadores e parafusos de 11 mm (fornecidos com o sensor de pH)
× 4
Jumper fios
× 1
Folha de acrílico (plexiglass)
× 1

Ferramentas e máquinas necessárias

Broca, brocas, brocas de drywall, limas, chaves de fenda, torno de bancada, serra de fita, pistola de cola e bastão de cola, ferro de solda e solda, compasso de calibre digital, régua

Aplicativos e serviços online

Arduino IDE

Sobre este projeto


Neste projeto, estaremos fazendo um medidor de pH de bancada usando o circuito de pH analógico Gravity e uma sonda da Atlas Scientific e um Arduino Uno. As leituras serão exibidas em um display de cristal líquido (LCD).

Observação:

- Este medidor foi desenvolvido em um computador Windows. Não foi testado no Mac.

- O gabinete não é à prova d'água.





Etapa 1:preparar a habitação


Segurança :Lembre-se de tomar cuidado ao manusear ferramentas / máquinas e usar equipamentos de segurança adequados, como óculos de proteção, luvas e respiradores.

A caixa usada é uma caixa de plástico ABS. Tem que ser modificado para o medidor de pH.

Corte a abertura para o LCD

a) O LCD é colocado na parte superior (tampa) do gabinete. Centralize um retângulo de 98x40mm na capa.

b) Coloque a peça no torno e faça um orifício piloto de 3,2 mm (1/8 ") no retângulo que foi marcado.

c) Use este orifício piloto como o ponto inicial para a broca de drywall de 3,2 mm (1/8 "). Como é um trabalho pequeno, usaremos a broca na furadeira manual em vez de uma máquina de corte em drywall. Trabalhe no interior da retângulo em vez das linhas, pois pode ser um pouco difícil cortar de maneira reta com esta broca na furadeira.

d) Em seguida, use uma lima manual para remover o excesso de material e moldar o retângulo no tamanho necessário.

Corte as aberturas para o conector BNC e portas Arduino

As aberturas para o conector BNC e portas Arduino estão na parte lateral da parte inferior do gabinete.

a) Usando as dimensões fornecidas abaixo, marque o ponto central do círculo e os contornos dos dois retângulos.

b) Coloque a peça no torno e corte as aberturas. A abertura circular é feita com brocas. As retangulares são feitas seguindo um processo semelhante ao usado para fazer a abertura para o LCD.

Prepare a placa de base para montar os componentes

A placa de base é usada para montar o Arduino, o sensor de pH e a mini placa de ensaio. É usada uma folha de acrílico com 3,2 mm de espessura.

a) Usando uma serra de fita, corte a folha de acrílico em 135x62,5 mm.

b) Marque as posições para os quatro orifícios conforme mostrado abaixo. Faça orifícios de 2,38 mm (3/32 ") de diâmetro. Faça a escarificação dos orifícios de um lado da placa a uma profundidade de 3 mm e diâmetro de 4,4 mm (11/64"). Isso é necessário para manter uma superfície plana quando os parafusos são inseridos para segurar os espaçadores.

c) Prenda os espaçadores de 11 mm usando os parafusos fornecidos. O sensor de pH vem com 4 espaçadores e parafusos. Use dois deles para o Arduino.





Etapa 2:instalar os eletrônicos na caixa


a) Insira a placa de base na parte inferior da caixa. Mantenha a posição com parafusos ou cola quente.

b) Monte o sensor de pH na placa de base. Prenda aos espaçadores com parafusos.

c) Monte o Arduino Uno na placa de base. Prenda aos espaçadores com parafusos.

d) Adicione o mini breadboard na placa de base.

e) Solde os pinos do cabeçalho no LCD (pinos fornecidos). Insira o LCD na parte superior da caixa e use um pouco de cola quente para manter a tela no lugar.





Etapa 3:conecte os componentes eletrônicos


Os componentes são mostrados no esquema acima.

Use a mini placa de ensaio para 1kΩ e 220Ω e para distribuir os pinos de 5V e terra do Arduino.

Os dois resistores são usados ​​para definir o contraste da tela.

Folhas de dados

Sensor de pH de gravidade, sonda de pH





Etapa 4:finalizar a montagem


Depois que a fiação for concluída:

a) Coloque as partes superior e inferior da caixa juntas usando os parafusos fornecidos.

b) Conecte a sonda ao conector BNC.





Etapa 5:fazer upload do código no Arduino Uno


O código para este projeto usa bibliotecas personalizadas e arquivos de cabeçalho. Você terá que adicioná-los ao seu IDE do Arduino para usar o código. As etapas a seguir incluem o processo de adição ao IDE.

a) Conecte o Arduino ao seu computador e abra o IDE. O IDE pode ser baixado deste LINK se você não o tiver. Vá para T ools -> Placa -> Selecione Arduino / Genuino Uno . Vá para Ferramentas -> Porta -> selecione a porta onde o Arduino está conectado.

b) Adicionar biblioteca de exibição de cristal líquido:No IDE, vá para Sketch -> Incluir biblioteca -> Gerenciar bibliotecas . Na barra de pesquisa do Gerenciador da Biblioteca, digite "cristal líquido". Procure o pacote intitulado "LiquidCrystal Built-in by Arduino, Adafruit". Ele pode ou não ser instalado. Caso contrário, selecione o pacote e clique em instalar .

c) Adicionar biblioteca de sensores Atlas Gravity:Baixe o arquivo zip do seguinte LINK. O arquivo será salvo como "Atlas_gravity.zip". No IDE, vá para Sketch -> Incluir biblioteca -> Add.ZIP Library . Localize o arquivo "Atlas_gravity.zip" e selecione para adicioná-lo.

d) Em seguida, temos que adicionar o código para o medidor de pH. Copie o código deste LINK para o painel de trabalho IDE.

e) Compile e faça upload do código para o Arduino.

f) As leituras de pH serão então exibidas no LCD. Você também pode visualizar as leituras no monitor serial. Para abrir o monitor serial, vá para Ferramentas -> Monitor Serial ou pressione Ctrl + Shift + M no seu teclado. Defina a taxa de transmissão para 9600 e selecione "Retorno de carro".





Etapa 6:calibrar o sensor de pH


Nota:Se você planeja usar uma fonte de alimentação externa para o Arduino, conecte-a ao Arduino antes de fazer a calibração. Isso garantirá que os níveis de referência sejam definidos adequadamente, o que ajudará na calibração correta.

Este medidor de pH pode ser calibrado para calibração de um, dois ou três pontos. Soluções tampão padrão (pH 4, 7 e 10) são necessárias

O monitor serial é usado para o processo de calibração. O usuário será capaz de observar a mudança gradual nas leituras conforme elas chegam à estabilização e enviar os comandos apropriados.

Os dados de calibração são armazenados na EEPROM do Arduino.

Comandos de calibração

Ponto baixo: cal, 4

Ponto médio: cal, 7

Ponto alto: cal, 10

Calibração clara: cal, clear

Passos

a) Remova o frasco de imersão e enxágue a sonda de pH.

b) Despeje um pouco da solução de pH 4 em um copo. Certifique-se de que haja o suficiente para cobrir a área de detecção da sonda.

c) Coloque a sonda no copo e mexa para remover o ar preso. Observe as leituras no monitor serial. Deixe a sonda sentar na solução até que as leituras se estabilizem (um pequeno movimento de uma leitura para a próxima é normal)

d) Depois que as leituras se estabilizarem, digite o comando cal, 4 no monitor serial. A calibração para pH 4 está concluída.

Repita as etapas a-d para pH7 e pH10. Lembre-se de enxaguar a sonda conforme você avança para diferentes soluções tampão.

E quanto à compensação de temperatura?

O sensor usado neste projeto tem uma precisão de +/- 0,2%. O medidor de pH operará com essa precisão na faixa de temperatura de 7 a 46 ° C. Fora desta faixa, o medidor terá que ser modificado para compensação de temperatura. Nota:A sonda de pH pode ser submetida a uma faixa de 1 - 60 ° C.

Código

  • código do medidor de pH Arduino
código do medidor de pH arduino C / C ++
 / * Depois de carregado, abra o monitor serial, defina a taxa de transmissão para 9600 e anexe "Retorno do carro". O código permite ao usuário observar as leituras de pH em tempo real, bem como calibrar o sensor. Um, dois ou três pontos a calibração pode ser feita.Comandos de calibração:ponto baixo:"cal, 4" ponto médio:"cal, 7" ponto alto:"cal, 10" calibração clara:"cal, limpo" * / # inclui "ph_grav. h "// arquivo de cabeçalho para sensor de gravidade de pH da Atlas Scientific # include" LiquidCrystal.h "// arquivo de cabeçalho para display de cristal líquido (LCD) String inputstring =" "; // uma string para conter os dados de entrada do PCboolean input_string_complete =false; // um sinalizador para indicar que recebemos todos os dados do PCchar inputstring_array [10]; // um array de caracteres necessário para a análise de stringGravity_pH pH =A0; // atribua o pino analógico A0 do Arduino à classe Gravity_pH. conecte a saída do sensor de pH ao pino A0LiquidCrystal pH_lcd (2, 3, 4, 5, 6, 7); // cria um pH_lcd variável e atribui pinos digitais Arduino aos pinos lcd (2 -> RS, 3 -> E, 4 a 7 -> D4 a D7) void setup () {Serial.begin (9600); // habilita a porta serial pH_lcd.begin (20, 4); // inicia a interface lcd e define o tamanho do lcd (20 colunas e 4 linhas) pH_lcd.setCursor (0,0); // coloque o cursor na tela na coluna 1, linha 1 pH_lcd.print ("--------------------"); // exibe caracteres pH_lcd.setCursor (0,3); // coloque o cursor na tela na coluna 1, linha 4 pH_lcd.print ("--------------------"); // exibe caracteres pH_lcd.setCursor (5, 1); // coloque o cursor na tela na coluna 6, linha 2 pH_lcd.print ("Leitura de pH"); // exibe "Leitura de pH" if (pH.begin ()) {Serial.println ("EEPROM carregada");} Serial.println (F ("Use os comandos \" CAL, 4 \ ", \" CAL, 7 \ ", e \" CAL, 10 \ "para calibrar o circuito para esses respectivos valores")); Serial.println (F ("Use o comando \" CAL, CLEAR \ "para limpar a calibração")); } void serialEvent () {// se o hardware serial port_0 receber um caractere inputstring =Serial.readStringUntil (13); // leia a string até que vejamos um  input_string_complete =true; // define o sinalizador usado para dizer se recebemos uma string completa do PC} void loop () {if (input_string_complete ==true) {// verifica se os dados foram recebidos inputstring.toCharArray (inputstring_array, 30); // converte a string em um array char parse_cmd (inputstring_array); // envia dados para a função pars_cmd input_string_complete =false; // redefine o sinalizador usado para informar se recebemos uma string completa do PC inputstring =""; // limpa a string} Serial.println (pH.read_ph ()); // saída da leitura de pH para o monitor serial pH_lcd.setCursor (8, 2); // coloca o cursor na tela na coluna 9, linha 3 pH_lcd.print (pH.read_ph ()); // output pH to lcd delay (1000);} void parse_cmd (char * string) {// Para chamar funções de calibração strupr (string); // converte a string de entrada em maiúsculas if (strcmp (string, "CAL, 4") ==0) {// compare a string de entrada do usuário com CAL, 4 e se elas corresponderem, prossiga com pH.cal_low (); // chamar função para calibração de ponto baixo Serial.println ("LOW CALIBRATED"); } else if (strcmp (string, "CAL, 7") ==0) {// compare a string de entrada do usuário com CAL, 7 e se eles corresponderem, prossiga com pH.cal_mid (); // chama a função para calibração do ponto médio Serial.println ("MID CALIBRATED"); } else if (strcmp (string, "CAL, 10") ==0) {// compare a string de entrada do usuário com CAL, 10 e se eles corresponderem, prossiga com pH.cal_high (); // chamada de função para calibração de ponto alto Serial.println ("HIGH CALIBRATED"); } else if (strcmp (string, "CAL, CLEAR") ==0) {// compare a string de entrada do usuário com CAL, CLEAR e se eles corresponderem, prossiga com pH.cal_clear (); // chama a função para limpar a calibração Serial.println ("CALIBRATION CLEARED"); }} 

Esquemas


Processo de manufatura

  1. Arduino Spybot
  2. FlickMote
  3. TV B-Gone caseiro
  4. Relógio mestre
  5. Encontre-me
  6. Arduino Power
  7. Tech-TicTacToe
  8. Arduino Quadruped
  9. Joystick Arduino
  10. Máquina CNC