Injetor de combustível automático
Injetor de combustível automático para carros antigos
O projeto consiste na utilização de um microcontrolador PIC 12F675, junto com um sensor de temperatura LM35, no software foi configurado para que a porta do microcontrolador GPIO.F0 seja configurado como uma entrada analógica, de acordo com o sensor LM35 sofre alterações na sua temperatura, uma tenção e enviada para o PIC na escala de 0,01v "em regiões mais frias" ate 0,98v na sua temperatura de trabalho. Contudo na temperatura de igual ou abaixo de 33º o microcontrolador entra em ação liberando em poucos milésimos (700) a sua porta de saída GPIO.F1 para acionamento da bomba injetor, de acordo que a temperatura vai aumentando sobre o sensor LM35 três LEDs sendo eles o verde, amarelo e vermelho acenderão, as funções dos LEDs e mostrar a temperatura que se encontra no motor ou cofre, a temperatura normal deve ficar entre 80 a no máximo 100 graus, se estiver tudo nos padrões do seu motor os LEDs verde e amarelo ascenderam gradualmente, isso é, assim que seu motor for ligado no começo do dia, o primeiro LED a acender será o verde a uma temperatura de aproximadamente 25 graus, de acordo que seu motor vai aquecendo em 49 graus deve acender o LED amarelo, e assim apenas o led vermelho acendendo em 98 graus mostrando para o motorista ficar atento na temperatura.
OBS: Os valores de tempo de injeção e temperatura podem sem modificados de acordo uso.
Abaixo o esquema detalhado do projeto.
Linha dos comandos
#define rele GPIO.F1
#define led_verde GPIO.f2
#define led_amarelo GPIO.f4
#define led_vermelho GPIO.f5
int lm35 = 0;
int lm35_1 = 0;
void main ( )
{
ANSEL = 1; // 0B00000001 SELECIONA AN0 COMO ENTRADA ANALOGICA
ADCON0 = 1; // SELECIONA ENTRADA AN0
CMCON = 7;
TRISIO = 1; // SELECIONA GPIO.FO SEJA UMA ENTRADA
GPIO = 0b00000000; //MANTEM TODAS AS PORTAS DE SAIDA EM NIVEL LOGICO BAIXO
lm35 = adc_read (0);
if (lm35 < 70)
{
rele = 1;
delay_ms (700); //TEMPO DE INJEÇÃO DE COMBUSTIVEL
rele =0;
led_verde = 1;
delay_ms(200);
led_amarelo = 1;
delay_ms(200);
led_vermelho = 1;
delay_ms(200);
}
led_verde = 0;
led_amarelo = 0;
led_vermelho = 0;
while (1) // COMEÇO DO PROGRAMA PARA NIVEL DE TEMPERATURA MOTOR OU COFRE
{
lm35_1 = adc_read (0);
if (lm35_1 > 50) // CONFIGURADO PARA TEMPERATURA DE 25º
{
led_verde = 1;
led_amarelo = 0;
led_vermelho = 0;
}
if (lm35_1 > 100) // CONFIGURADO PARA TEMPERATURA DE 48º
{
led_verde = 1;
led_amarelo = 1;
led_vermelho = 0;
}
if (lm35_1 > 200) // CONFIGURADO PARA TEMPERATURA DE 98º
{
led_verde = 1;
led_amarelo = 1;
led_vermelho = 1;
}
delay_ms(100); // TAXA DE ATUALIZAÇÃO
}
}
Senha para descompactar arquivo HEX: tecfunken

Comentários
Postar um comentário