Índice:

Construindo um Sensor Capacitivo de Líquido: 8 Passos (com Imagens)
Construindo um Sensor Capacitivo de Líquido: 8 Passos (com Imagens)

Vídeo: Construindo um Sensor Capacitivo de Líquido: 8 Passos (com Imagens)

Vídeo: Construindo um Sensor Capacitivo de Líquido: 8 Passos (com Imagens)
Vídeo: Sensores Industriais - Funcionamento, Instalação e Aplicação 2024, Novembro
Anonim
Construindo um Sensor Capacitivo de Líquido
Construindo um Sensor Capacitivo de Líquido

Um promotor de líquido capacitivo depende do fato de que a capacitância ou carga entre 2 placas de metal irá mudar (neste caso, aumentar) dependendo do material que está entre elas. Isso nos permite criar um sensor de nível seguro para uso com qualquer líquido, este será usado em um carrinho com gasolina (gasolina). Uma placa está presa ao solo. O outro se conecta ao pino 23. Há um resistor de 820K ohm do pino 22 ao 23. O sensor funciona carregando o capacitor (a garrafa d'água) e medindo quanto tempo leva para drenar pelo resistor.

Etapa 1: peças

Peças
Peças

1. Uma placa de pão sem solda é estritamente desnecessária, mas a torna muito mais fácil, especialmente se você planeja adicionar outras coisas mais tarde. 2. Arduino, estou usando um mega Arduino, mas um padrão deve ter apenas pinos suficientes. 3. Display de caracteres LCD. 4. Algumas vantagens e desvantagens, incluindo algum fio e um resistor de 1MΩ. 5. Um computador, você sabe, aquela coisa que você está usando para ler meu instrutível. 6. Paciência.

Etapa 2: Conectando o LCD e deixando sua criação falar com o mundo

Conectando o LCD e deixando sua criação falar com o mundo
Conectando o LCD e deixando sua criação falar com o mundo

Como em todas as etapas deste instrutível, há muitas maneiras de fazer isso. Eu vou te mostrar o meu favorito.

Seu lcd tem 16 almofadas de solda com orifícios de garganta, então a primeira coisa a fazer é prender alguns pinos. Se for sua patente, recomendo comprar um cabeçalho como este https://www.sparkfun.com/commerce/product_info.php?products_id=117. Mas se você quiser fazer o mais rápido possível (como eu), você pode usar fio. Corte simples 16 pedaços de arame em cerca de 1/2 (13 mm (mais comprido). Em seguida, solde-os na placa.

Etapa 3: Conectando o LCD Continuação

Conectando o LCD Continuação
Conectando o LCD Continuação
Conectando o LCD Continuação
Conectando o LCD Continuação

Pecados Estou usando caracteres especiais. Estarei conectando todos os fios.

Pino 1 Aterramento Pino 2 +5 Volt Pino 3 Ajuste de contraste Pino 4 RS Pino 5 R / W vai para o aterramento Pino 6-14 Pino de dados 15 Alimentação da luz de fundo Pino 16 Aterramento da luz de fundo

Etapa 4: Linhas de dados

Linhas de Dados
Linhas de Dados
Linhas de Dados
Linhas de Dados

Agora você precisa conectar o Arduino ao lcd. Não importa quais pinos você usa, mas recomendo seguir o esquema.

Etapa 5: Power MaHaHaHa

Power MaHaHaHa
Power MaHaHaHa

A porta usb em seu computador tem energia suficiente para executar o Arduino e a luz de fundo LED, portanto, basta conectar o aterramento e os trilhos de energia da placa de pão à saída de energia da placa do Arduino.

Etapa 6: Faça o sensor capacitivo

Faça o sensor capacitivo
Faça o sensor capacitivo
Faça o sensor capacitivo
Faça o sensor capacitivo

Para o teste, usei papel alumínio e uma garrafa de água de plástico. Funciona com qualquer recipiente, desde que não seja de metal.

Você pode usar qualquer tipo de fio, mas qualquer linha não blindada terá um desempenho ruim. Você pode usar 2 pinos quaisquer, eu escolhi 22 e 23. Conecte um lado ao terra e o outro a um resistor e 2 pinos de E / S.

Etapa 7: Programação

Programação
Programação

Você precisa adicionar 2 arquivos de biblioteca para fazer este trabalho LiquidCrystal.h https://arduino.cc/en/Tutorial/LiquidCrystalCapSense.h https://www.arduino.cc/playground/Main/CapSenseCopy e colá-lo no Arduino 0017 ou mais recente. // Sensor capacitivo de líquido // Vadim 7 de dezembro de 2009 #include #include // Isso é para definir o tamanho do lcd const int numRows = f = 4; const int numCols = 20; // Isso define os pinos para o LCD (RS, Ativar, dados 0-7) LiquidCrystal LCD (53, 52, 51, 50, 49, 48, 47, 46, 45, 44); #define Tempin 0x48 #define Tempout 0x49 CapSense cs_22_23 = CapSense (22, 23); bloco uint8_t [8] = {0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF}; uint8_t tl [8] = {0x0F, 0x08, 0x08, 0x08, 0x08, 0x08, 0x0F, 0x0F}; uint8_t tr [8] = {0x16, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x1D, 0x15}; uint8_t bl [8] = {0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x1F}; uint8_t br [8] = {0x15, 0x15, 0x15, 0x15, 0x15, 0x15, 0x15, 0x12, 0x18}; void setup () {lcd.begin (numRows, numCols); lcd.createChar (4, tl); lcd.createChar (5, tr); lcd.createChar (6, bl); lcd.createChar (7, br); lcd.setCursor (18, 0); lcd.print (4, BYTE); lcd.setCursor (19, 0); lcd.print (5, BYTE); lcd.setCursor (18, 1); lcd.print (6, BYTE); lcd.setCursor (19, 1); lcd.print (7, BYTE); lcd.setCursor (0, 2); lcd.print ("Combustível"); lcd.setCursor (0, 3); lcd.print ("E"); } void loop () {combustível longo; lcd.createChar (2, bloco); início longo = milis (); combustível = cs_22_23.capSenseRaw (200); // Temratue faz uma pequena diferença, então deixe-o funcionar por 5 minutos antes de ajustar. // Ajuste este número para que a saída seja o mais próximo possível de zero. combustível = combustível - 7200; // Em seguida, preencha o conataner // Remova o comentário e ajuste-o para que a saída, quando o contêiner estiver cheio, // seja o mais próximo possível de 100. // combustível = combustível / 93; lcd.setCursor (0, 0); lcd.print (""); lcd.setCursor (0, 0); lcd.print (combustível); if (combustível> = 6) {lcd.setCursor (1, 3); lcd.print (2, BYTE); } else {lcd.setCursor (1, 3); lcd.print (""); } se (combustível> = 12) {lcd.setCursor (2, 3); lcd.print (2, BYTE); } else {lcd.setCursor (2, 3); lcd.print (""); } se (combustível> = 17) {lcd.setCursor (3, 3); lcd.print (2, BYTE); } else {lcd.setCursor (3, 3); lcd.print (""); } se (combustível> = 23) {lcd.setCursor (4, 3); lcd.print (2, BYTE); } else {lcd.setCursor (4, 3); lcd.print (""); } se (combustível> = 28) {lcd.setCursor (5, 3); lcd.print (2, BYTE); } else {lcd.setCursor (5, 3); lcd.print (""); } se (combustível> = 34) {lcd.setCursor (6, 3); lcd.print (2, BYTE); } else {lcd.setCursor (6, 3); lcd.print (""); } se (combustível> = 39) {lcd.setCursor (7, 3); lcd.print (2, BYTE); } else {lcd.setCursor (7, 3); lcd.print (""); } se (combustível> = 44) {lcd.setCursor (8, 3); lcd.print (2, BYTE); } else {lcd.setCursor (8, 3); lcd.print (""); } se (combustível> = 50) {lcd.setCursor (9, 3); lcd.print (2, BYTE); } else {lcd.setCursor (9, 3); lcd.print (""); } se (combustível> = 55) {lcd.setCursor (10, 3); lcd.print (2, BYTE); } else {lcd.setCursor (10, 3); lcd.print (""); } se (combustível> = 60) {lcd.setCursor (11, 3); lcd.print (2, BYTE); } else {lcd.setCursor (11, 3); lcd.print (""); } se (combustível> = 64) {lcd.setCursor (12, 3); lcd.print (2, BYTE); } else {lcd.setCursor (12, 3); lcd.print (""); } se (combustível> = 69) {lcd.setCursor (13, 3); lcd.print (2, BYTE); } else {lcd.setCursor (13, 3); lcd.print (""); } se (combustível> = 74) {lcd.setCursor (14, 3); lcd.print (2, BYTE); } else {lcd.setCursor (14, 3); lcd.print (""); } se (combustível> = 78) {lcd.setCursor (15, 3); lcd.print (2, BYTE); } else {lcd.setCursor (15, 3); lcd.print (""); } se (combustível> = 83) {lcd.setCursor (16, 3); lcd.print (2, BYTE); } else {lcd.setCursor (16, 3); lcd.print (""); } se (combustível> = 87) {lcd.setCursor (17, 3); lcd.print (2, BYTE); } else {lcd.setCursor (17, 3); lcd.print (""); } se (combustível> = 92) {lcd.setCursor (18, 3); lcd.print (2, BYTE); } else {lcd.setCursor (18, 3); lcd.print (""); } se (combustível> = 96) {lcd.setCursor (19, 3); lcd.print ("F"); } else {lcd.setCursor (19, 3); lcd.print (""); } atraso (50); }

Etapa 8: Coisas

Isso é perfeito para medir líquidos voláteis, até mesmo funciona dentro de um tanque de propano. Divirta-se. Toda e qualquer informação é apenas para fins educacionais e não posso ser responsabilizado se você se explodir.

Recomendado: