Leitura de RPM para Datalogger Automotivo (Arduino, SDCard e LCD 1602) com FuelTech

Bom vou explicar o cenário, estou desenvolvendo um Datalogger automotivo, ele tem a função de monitorar tudo que acontece com o carro e armazenar em um cartão Sd, Uso para carros de arrancada, competição e/ou modificados sistema de injeção com a Fueltech, Pandoo Injetech e etc... O Datalogger tem a função de capturar os dados como, posição do acelerador, pressão atmosférica do coletor, temperatura do motor e etc... isso já esta funcionando perfeitamente, Já esta coletando os dados armazenando em um SD e exibindo em tempo real em um Display 1602, porém eu preciso de Ler o RPM do carro, e essa parte que não estou conseguindo desenvolver, estou coletando o sinal do motor, medido antes, ele gira em torno de 2V porém as leituras ocila muito e não tem nada a ver com o RPM do carro, estudando um pouco sobre o assunto, eu descobri que ele trabalha em frequencia Hz e estou tentando ler isso pelo arduino, até encontrei um material, em [url]http://www.avdweb.nl/arduino/hardware-interfacing/frequency-period-... [/url] porém jogo dentro do arduino e não compila, mesmo colocando as bibliotecas no lugar, alguém tem um rumo pra mim caminhar ou solução? 

Já tentei da 022 até a 1.5 do arduino 

Exibições: 34186

Responder esta

Respostas a este tópico

Wellington, esses carros tem interface OBD?

Através da interface OBD, poderá obter todos dados do carro, inclusive RPM.

Todo sistema de injeção (ECU) tem uma entrada com o sinal do sensor de RPM.

Terá que descobrir através de manuais ou diagramas.

Então, ele não usa a injeção original, usa apenas a Fueltech ela não tem OBD

Documentação muito show essa que enviou, vou fazer uns estudos em cima dela

Wellington, achei um diagrama de uma ECU (engine control unit) ou centralina (módulo de injeção eletrônica);

Veja que toda centralina, tem conexão com sensor de rotação do motor (Crankshaft position sensor).

http://en.wikipedia.org/wiki/Crankshaft_position_sensor

Não sei qual o carro que esta usando, mas os sensores atuais usam chaves de efeito Hall. 

Elas fecham o circuito quando um imã passa por perto. 

Com esse sensor poderá fazer a leitura de RPM do motor.

http://www.daytona-twintec.com/tech_sensors.html

Boa tarde, José Gustavo, eu fiz a marcação no ponto que quero extrair a leitura do RPM do motor ali no bico de injeção numero 1, ali esta indo em torno de 2V porém não consigo ler, a injeção que estou usando é esta aqui  

Manual Injeção  

Na pagina 25 do manual tem o diagrama do chicote, tentei ler por 2 locais o pino 4 que é um sinal de rotação e também pelo 12 que é o negativo dos bicos injetores, no arduino, ao colocar ele gera uns valores que não corresponde a nada, tentei ler usando http://www.pjrc.com/teensy/td_libs_FreqMeasure.html e o FreqCount e não consegui, 

Esse carro não tem hall 

Wellington , legal esse manual do módulo de injeção.

Muito cuidado com as altas tensões na bobina (o choque pode ser letal)!

Primeiro ponto, recomendo que use somente o PINO 4 - sinal de rotação. 

O carro usa distribuidor? É um opala?

Se for distribuidor antigo, realmente não deve ter chave de efeito hall.

Será que usa sensor indutivo(bobina)? Então o pulso deve ser pequeno e precisará ser amplificado. Meça a resistência do sensor com multimetro.

Ou o distribuidor usa platinado (muito antigo)?

Imagino que não tenha osciloscópio para verificar a forma de onda.

Me responda que tipo de sensor usa o distribuidor e depois enviarei um circuito adequado.

Veja o que achei:

http://www.fueltech.com.br/materias-tecnicas/captando-sinal-de-rota...

José Gustavo, o carro é um GOL 1.8 AP com distribuidor de 3 fios, estou usando o PINO 4 que retirei do chicote da Fueltech, 
Eu medi a voltagem do pino e fica em torno de 2.30V 

Não tenho ociloscópio :( 

O meu sistema esta nesta foto, mais acima a injeção e abaixo o meu datalogger 

Aqui esta uma captura da porta analógica do arduino, os valores que estão sendo lidos, fiz no formato CSV (comma-separated values)
A divisão das colunas são:
EX: 
53 Tempo, 0 % Acelerador, 65 Sensor MAP, 66 Temperatura, 669 Lambda, 1023 Sensor de Rotação, 701 Bico injetor, 0 Reserva1, 0 Reserva2
53;0;65;66;669;1023;701;0;;0

Os 5 primeiros valores estão identificados ok, sem problema, o problema é o 1023 (PINO4) e o 701 (PINO 12)  que não consigo fazer corresponder com nada, do carro 

Note o comportamento dele.....

  a primeira coluna estou usando o tempo = millis();  / 100

53;0;65;66;669;1023;701;0;;0
55;17;30;66;650;0;0;0;;0
57;14;37;66;801;1023;705;0;;0
59;10;43;66;832;1023;706;0;;0
61;13;49;66;844;1023;707;0;;0
63;0;60;66;848;1023;705;0;;0
65;0;71;66;852;1023;0;0;;0
67;2;73;66;817;0;0;0;;0
69;2;64;67;834;0;0;0;;0
71;7;60;66;879;1023;702;0;;0
73;17;41;66;866;1023;705;0;;0
75;9;55;66;859;1023;707;0;;0
77;19;51;66;857;1023;707;0;;0
79;19;54;66;819;0;0;0;;0
81;6;63;66;835;0;0;0;;0
83;15;61;66;843;0;0;0;;0
85;4;65;66;847;0;0;0;;0
88;5;68;66;849;0;0;0;;0
92;6;61;66;875;1023;706;0;;0
94;11;56;66;844;1023;707;0;;0
96;11;54;66;854;1023;706;0;;0
98;0;64;66;855;1023;706;0;;0
100;0;72;66;856;1023;708;0;;0
102;0;72;66;857;1023;707;0;;0
104;0;67;66;857;1023;720;0;;0
107;0;63;66;857;1023;798;0;;0
109;0;61;66;857;1023;821;0;;0
111;9;47;66;856;1023;803;0;;0
113;10;40;66;857;1023;827;0;;0
115;10;44;66;854;1023;703;0;;0
117;10;48;66;819;0;0;0;;0
119;10;54;66;833;0;0;0;;0
121;0;66;66;878;1023;706;0;;0
123;1;74;65;832;2;0;0;;0
125;40;45;66;878;1023;709;0;;0
127;15;53;65;831;0;0;0;;0
129;17;46;65;877;1023;707;0;;0
131;7;62;66;864;1023;707;0;;0
133;4;68;66;859;1023;707;0;;0
135;5;67;66;857;1023;707;0;;0
137;0;66;66;856;1023;707;0;;0
139;0;73;66;855;1023;707;0;;0
141;0;72;66;855;1023;708;0;;0
143;0;69;66;854;1023;707;0;;0
145;0;64;66;819;0;91;0;;0
147;0;63;66;870;1023;713;0;;0
149;0;64;66;860;1023;728;0;;0
151;0;64;66;857;1023;749;0;;0
153;0;64;66;855;1023;714;0;;0
155;0;66;66;817;0;10;0;;0
157;0;67;66;870;1023;707;0;;0
160;4;66;66;825;0;0;0;;0
162;23;35;66;873;1023;0;0;;0
164;15;52;66;858;1023;706;0;;0
166;15;48;66;820;0;0;0;;0
168;9;61;66;871;1023;708;0;;0
170;17;53;66;861;1023;708;0;;0
172;6;61;66;856;1023;707;0;;0
174;6;65;66;854;1023;707;0;;0
176;6;67;66;851;1023;707;0;;0
178;6;68;66;851;1023;707;0;;0
180;7;69;66;815;1;0;0;;0
182;6;69;66;867;1023;707;0;;0
184;6;69;66;821;0;0;0;;0
186;8;66;66;870;1023;707;0;;0
188;8;64;66;859;1023;707;0;;0
190;8;65;66;819;0;0;0;;0
192;8;65;66;832;0;0;0;;0
194;8;64;66;841;1;0;0;;0
196;8;63;66;878;1023;707;0;;0
198;8;63;66;826;0;0;0;;0
200;8;61;66;837;0;0;0;;0

 

isso ai, 

Wellington , andei pesquisando no Google, o esquema da centralina do  Gol 1.8 AP.

Achei esses diagramas :

http://correntecontinuaautomotiva.blogspot.com.br/2013/06/sistema-e...

Nesse outro link, veja que ele informa que o sensor de rotação é HALL.

Veja que o pino 3 é o terra, provavelmente o pino 1 é a alimentação e o pino2 (do meio) é o sinal de rotação.Meça a tensão no Pino1 ( deve ser 12V ou 5V).

Me informe essa medição.

O que pode estar acontecendo é que o sinal pode estar saturando a entrada do Arduino, ou então o sinal é muito baixo para o Arduino. Como disse, você mede aproximadamente 2 V no sensor .

http://www.preparados.com.br/topic/38485-esquema-eletrico-de-instal...

Veja esse teste do sensor : (é um sensor Hall e usa 12V) .

http://r19club.com/ignicao/testar-sensor-de-rotacao/

Veja esse circuito para capturar sensor Hall 12V:

http://openenergymonitor.blogspot.com.br/2009/09/hall-effect-sensor...

Não sei se esse circuito é seguro. Teste o circuito antes de conectar no Arduino.

Se injetar 12V nop Arduino poderá queimar a entrada.

Achei um circuito bacana!

http://www.bristolwatch.com/hall_effect/ratiometric_hall_effect.htm

Eu conheço esse LM311 - é um comparador que vai atender a sua necessidade.

Na saida do led poderia colocar um optoacoplador para isolar o circuito do sensor com o circuito do Arduino.

Isso ai que preciso ler..........

Tem ideia?

José Gustavo, primeiro gostaria de agradecer o empenho para me ajudar, esta sendo madrugadas procurando, compilando código e indo no carro dando partidas, 3, 4 horas da manha para fazer testes e nada.... porém ninguem falou que iria ser fácil né? rsrsrs
Então, o meu carro não usa essa central de injeção, ela esta usando a FUELTECH aquela que mandei o manual, por isso os dados tem que ser adquiridos dela, pois ela comanda tudo, ponto de ignição bicos e etc...
Mais o sinal do HALL é justamente de onde estou tentando tirar, está na página 26 no item 8.3 Ligação do Distribuidor HALL

Tem uma coisa que esta me intrigando, o carro na Lenta em 1000RPM dá 16 voltas por segundo, o arduino tem capacidade de fazer essas leituras? e se tiver em 8000RPM vai rodar em 133,3 x em 1 segundo, no log ele retorna 6 leituras em 1 segundo, não é por isso que não consigo ler será?

Conforme o LOG que enviei acima, na 6 coluna ele fica hora 0 e hora 1023 então ele esta lendo isso, porém não pega todos intervalos, ele é capaz?

RSS

© 2024   Criado por Marcelo Rodrigues.   Ativado por

Badges  |  Relatar um incidente  |  Termos de serviço