• Welcome to LusoRobótica - Robótica em Português.
 

Arduino OBD II

Started by almamater, 06 de April de 2011, 12:33

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.

almamater

 ;D  Bom, mais uma ideia maravilha..

Gostava de fazer um projecto com o Arduino e um LCD para ligar ao Carro (Renault Clio III no meu caso), não sei se alguém está familiarizado com a opção que os carros (os mais antigos não, apenas os fabricados desde 1996) têm para se ligar um computador e fazer um diagnóstico (OBD), eu andei a ler umas coisas e fiquei entusiasmado  :P

A minha dúvida é se faça uma placa a partir do 0, como este projecto: http://arduino.anunturigr.ro/obduino-2/

ou adquirir uma placa já com tudo (usa o MCP2515): http://www.sparkfun.com/products/10039 / http://www.protogear.com.au/arduino-can-bus-shield.html / http://www.robotshop.com/sfe-can-bus-arduino-shield.html / http://www.skpang.co.uk/catalog/product_info.php?products_id=706

Para construir eu mesmo a placa tenho de arranjar componentes e um deles é o ELM327, o chip que integra os protocolos necessários para se comunicar por  ISO/VPW/PWM e fazer assim o OBD (On-Board Diagnostic)   

Não sei se compensa e se não será complicado fazer eu mesmo, o que acham? Já alguém por aqui fez algo parecido e o que aconselham?

A placa custa uns ~40 €

Há muita info sobre isto e vídeos no youtube: Arduino CAN-Bus OBDII demo


senso

O ELM327 é bastante antigo e é um PIC com um programa dentro, actualmente já tens chips dedicados para isso bem melhores.
Avr fanboy

almamater

Quote from: senso on 06 de April de 2011, 13:28
O ELM327 é bastante antigo e é um PIC com um programa dentro, actualmente já tens chips dedicados para isso bem melhores.

Pois na shield da Sparkfun eles usam outro, estou a ponderar adquirir  ::)  depois é só arranjar um LCD serial, os que tenho são todos normais..  fixe fixe era um 20x4 Serial  ;D


senso

Porque não usar um lcd normal?
Pois, mesmo que uses um ELM precisas dos transceivers, podes fazer em casa, mas o preço dos chips e tal deve ficar praticamente o mesmo que comprar isso já feito.
Avr fanboy

almamater

Quote from: senso on 06 de April de 2011, 13:35
Porque não usar um lcd normal?
Pois, mesmo que uses um ELM precisas dos transceivers, podes fazer em casa, mas o preço dos chips e tal deve ficar praticamente o mesmo que comprar isso já feito.

Pelo que vi a shield usa uma data de pinos do Arduino (http://shieldlist.org/sparkfun/can-bus), dá para usar um lcd normal?

senso

Precisas de 6 pinos para um lcd.
Avr fanboy

almamater

Quote from: senso on 06 de April de 2011, 15:40
Precisas de 6 pinos para um lcd.

sim, posso sempre usar o arduino mega e já fico com muitos pinos

ivitro

Boas.

Eu o ano passado fiz um. Mas foi a ler directamente os sinais dos injectores e sinal de velocidade e rpm. Vi recentemente que o membro iCar fez algo também parecido.

Quanto ao OBD, tenho aqui em casa um revista que tem o esquema completo de um mini simulador com um atmega8, não sei até que ponto dará para virar esse simulador num tradutor de OBD.


almamater

Será uma ideia parva:
Pelo que vi o Arduino recebe apenas os valores OBD nos pinos TX RX.. será que com uma coisa destas http://cgi.ebay.co.uk/OBDII-USB-V1-4-ELM327-CAN-BUS-Car-Diagnostic-Scanner-/110631738872?pt=UK_Diagnostic_Tools_Equipment&hash=item19c22a5df8#ht_3914wt_1139 não dava para ligar a saída USB (d- e d+) aos TX e RX do Arduino e receber dali a informação necessária... secalhar o problema seria o código no arduino..  ::)

senso

#9
Receber USB pela porta serial?...
Não me parece que vá funcionar, tens a biblioteca V-USB, mas nem sequer faz host.
Se querem OBD é um shield para can ou procurar por arduino OBD.
Mais completo que isto não deve haver:
http://code.google.com/p/opengauge/wiki/OBDuinoInterface
Avr fanboy

almamater

Ideia parva a minha realmente :)

Sim já andei a ler esse projecto, a nível preços o ELM327 é para aí uns $32..

A placa/shield SparkFun -CAN-BUS OBDII fica para aí nuns 45€, depois é mais o cabo obd e o lcd serial...  esta a tentar ver o que seria mais vantajoso mas fica tudo um bocado caro  :-\   

senso

Usa um lcd normal, ou com um simples shift register.
Avr fanboy

ivitro


E se usar um micro já com CAN?? não era mais facil e menos dispendioso

senso

Mas nenhum ou quase nenhum Atmega o tem, e mesmo que tenha can precisa sempre do transceiver, mas sim, muitos pics têm can assim como carradas de ARM's, aliás o Cortex M0 da NXP é o primeiro micro co mundo com transceiver incluido é só ligar dois fios ao OBD e está a bombar.
Avr fanboy

metRo_

Quote from: senso on 15 de April de 2011, 02:01
Mas nenhum ou quase nenhum Atmega o tem, e mesmo que tenha can precisa sempre do transceiver, mas sim, muitos pics têm can assim como carradas de ARM's, aliás o Cortex M0 da NXP é o primeiro micro co mundo com transceiver incluido é só ligar dois fios ao OBD e está a bombar.

Existe um, pelo menos, atmega com CAN e não necessita de transceiver externo.