O autor de Instructables sob o apelido CreativeStuff informa como implementar em Arduino o ohmímetro mais simples. Para fazer isso, ele usa uma placa de ensaio do tipo breadboard:
Na verdade Arduino:
Exibir no HD44780 (KB1013VG6):
Jumpers "dupont" ou caseiros:
Resistor variável de 10 kΩ com fios rígidos finos soldados (para ajustar o contraste da imagem na tela):
Não se parece com nada? É isso mesmo, tudo de novo é bem esquecido. Os especialistas se lembrarão do que é e onde:
Resistor permanente de 470 Ohm:
E tudo isso se conecta de acordo com este esquema:
Como os esquemas compilados no programa Fritzing não são muito informativos, o assistente compila a descriptografia:
Pino 1 da tela - Fio comum
Pino 2 da tela - Potência adicional
Pino 3 da tela - Contato móvel de um resistor variável
Ecrã 4 pinos - Arduino D12
Pino 5 da tela - Fio comum
Pino de exibição 6 - Pino D11 Arduino
Os pinos 7, 8, 9, 10 da tela não estão conectados a nada
Pino 11 da tela - Arduino D5
Display de 12 pinos - pino Arduino D4
Pino de exibição 13 - Pino Arduino D3
Pino de exibição 14 - Pino Arduino D2
Pino de exibição 15 - Potência adicional
Pino 16 da tela - Fio comum
Ao repetir o design, é necessário estudar a folha de dados no visor para descobrir se sua base é diferente da padrão.
O mestre conecta um dos contatos fixos do resistor variável ao power plus, o segundo ao fio comum. Um divisor de tensão é constituído por um resistor exemplar e testado: o resistor testado com uma saída para a potência positiva e o exemplar com uma saída para o fio comum. As restantes saídas desocupadas de ambos os resistores são conectadas e conectadas ao pino A0 do Arduino. Preencha o esboço:
#include
// LiquidCrystal (rs, sc, d4, d5, d6, d7)
LCD de cristal líquido (12, 11, 5, 4, 3, 2);
const int analogPin = 0;
int analogval = 0;
int vin = 5;
buff flutuante = 0;
float vout = 0;
flutuador R1 = 0;
flutuador R2 = 470;
configuração nula () {
lcd.begin (16, 2);
}
loop vazio () {
analogval = analogRead (analogPin);
if (analogval) {
buff = analogval * vin;
vout = (buff) / 1024,0;
if (vout> 0,9) {
buff = (vin / vout) - 1;
R1 = R2 * buff;
lcd.setCursor (0, 0);
lcd.print ("-Resistance-");
lcd.setCursor (0, 1);
if ((R1)> 999) {
lcd.print ("");
lcd.print (R1 / 1000);
lcd.print ("K ohm");
}
mais {
lcd.print ("");
lcd.print (round (R1));
lcd.print ("ohm");
}
atraso (1000);
lcd.clear ();
}
mais {
lcd.setCursor (0, 0);
lcd.print ("Inserir resistor");
lcd.setCursor (0, 1);
}
}
}
Recomenda-se que a resistência do resistor de referência, bem como a tensão de alimentação, sejam medidas com mais precisão (é claro, quando a medição do resistor de referência deve ser removida temporariamente) e, em seguida, insira os resultados da medição nas linhas correspondentes no início do esboço. Pegue a fonte de energia com boa estabilização da tensão de saída. O programa calcula a resistência de acordo com a fórmula:
R2 = Vout * R1 / (Vin - Vout),
derivado da fórmula:
Vout = Vin * R2 / (R1 + R2),
onde R1 é a resistência do modelo, R2 é a resistência medida, Vin é a tensão de alimentação, Vout é a tensão no ponto médio do divisor.
Resta remover a tábua de pão, fazer todas as conexões por solda e transferência caseiro no caso. Mas, dessa forma, é impraticável, pois duplica a função ohmímetro disponível no multímetro. Remodelando o esboço e aplicando uma fonte de energia de precisão e um resistor de modelo, você pode usar o design, por exemplo, para classificar os resistores pela precisão em sua produção. Para exibir imediatamente as informações em qual dos cinco grupos o componente pertence ao conectar um resistor: 1, 2, 5, 10 ou 20%.