
Galera, atendendo a pedidos, segue abaixo um tutorial para montar o computador de bordo através do TID.
Pra não ficar um negócio repetitivo eu optei por não entrar em detalhe em alguns pontos pois tem assuntos que já estão muito bem divulgados em outros tutoriais e até vídeos no youtube, como por exemplo o processo de desmontagem do TID.
Materiais necessários:
1x Arduino Nano (ou outra versão compatível)
1x Protoboard ou placa de circuito universal
6x resistores 100K
2x resistores 10K
2x diodo zener 5.1 V
1x regulador de tensão 7809 (não é obrigatório mas acho bom ter)
2x botões (ou uma chave de limpador de Astra/Agile pra quem quiser fazer a adaptação que eu fiz)
9x Fio de meio a 1 metro de tamanho (de preferência de cores diferentes pra facilitar a identificação)
2x Fio com uns 5 metros (opcional, para quem quiser puxar sinal do bico injetor e do sensor de velocidade)
1x conjunto de chave Torx
Antes de começar algumas recomendações...
- Vamos mexer em alguns fios elétricos do carro então é importante que façam tudo sempre com a ignição desligada.
- Não deixem soltos os fios desencapados, deixem pra desencapar somente no momento necessário. E ao unir um fio com outro, imediatamente passe a fita isolante logo em seguida para evitar esquecimentos e garantir ele não entre em contato com algo que não deva.
1º passo) Acessando o chicote do TID
Para ter acesso ao chicote é preciso desmontar alguns acabamentos. Como mencionei mais acima, não vou detalhar este passo pois já existem muitos tutoriais a respeito. Se procurarem por “desmontagem tid” no Youtube vão achar alguns.
Para quem tem o TID bloqueado esse passo também vai servir pra poder retirá-lo do carro e enviar para ser desbloqueado. No meu caso eu efetuei o desbloqueio do meu através desse anúncio do Mercado Livre:
http://produto.mercadolivre.com.br/MLB- ... nuncio-_JM
Se alguém está na dúvida se possui um TID bloqueado ou não, veja se ao ligar o rádio a data que aparece no TID some. Se não sumir, seu TID é bloqueado. Se sumir, é desbloqueado.
2º passo) Puxando derivação do chicote do TID
Abaixo segue um diagrama da pinagem do TID (clique na imagem caso ela apareça cortada):

Com um estilete ou ferramenta similar, desencape uma parte dos fios que saem dos pinos 1, 2, 6, 10, 11 e 12. Faça isso num ponto adequado do fio, não muito perto do conector e nem perto do acabamento do carro.
Esses fios correspondem a:
Pino 1 - 12V pós chave
Pino 2 - AA/DIS - Air Antenna/Display (faz a data do TID sumir quando recebe tensão)
Pino 6 - Terra
Pino 10 - SCL - Serial Clock
Pino 11 - SDA - Serial Data
Pino 12 - MRQ - Master Request
OBS: O fio do pino 2 deve ser obrigatoriamente cortado e não apenas desencapado. Nesse caso, una um dos fios de meio a 1 metro de tamanho com a ponta que sai do pino 2 do conector do TID. A outra ponta deixe-a presa junto aos outros fios caso um dia queira juntá-la novamente.
O motivo é que quando o rádio é ligado ele envia 12V para o TID por esse fio e isso queimaria o Arduino que trabalha com 5V, além de que o controle do TID deve ficar somente com o Arduino.
Em seguida, una o restante dos fios ao chicote do TID, identifique cada um, e jogue-os para dentro do painel do carro tentando pegá-los na parte de baixo do porta luvas (se puder retire o porta luvas pois facilita bastante nesse e em outros passos mais adiante, ele é preso através de 4 parafusos torx).
OBS 2: Estou partindo do princípio que ninguém aqui usa o rádio original da GM. Caso você tenha, não utilize esse guia e entre em contato comigo pois será necessário fazer modificações no circuito.
3º passo) Botões de controle
Para alternar as funções do computador de bordo é preciso se utilizar de alguns botões ligados ao Arduino. Aqui é possível implementar os botões da forma que quiser, o que recomendo é que utilize pelo menos dois botões, que aqui chamarei de botão 1 e botão 2.
Aqui também não vou detalhar muito pois existem muitos tutoriais de como ligar botões no Arduino.
Em contrapartida eu quis fazer um negócio que parecesse original e no meu caso eu usei uma chave de limpador de Astra/Agile que possui 2 botões de controle do computador de bordo.

No meu caso essa chave não foi plug’n play. No meu Corsa e até onde sei na Meriva também, é usado um conector menor igual a imagem da direita enquanto a haste do Astra usa o conector da esquerda:

Não sei se é porque o meu carro tem BCM... então precisei fazer uma adaptação que deu um pouco de trabalho, precisei literalmente serrar a haste do Astra/Agile e colar na base de uma de Corsa (não faça isso na chave de original do seu carro, compre uma reserva e faça nela, assim se der bobagem você não fica sem nenhuma). Da haste do Astra/Agile saem 3 fios, o marrom é o “comum” ou "Terra" que é ligado no terra do circuito, o vermelho é o botão S e branco é o botão R.
Se for fazer dessa forma, desmonte a capa da coluna de direção onde estão as chaves de seta e do limpador (aqui mostra como fazer isso: http://corsaclube.com.br/viewtopic.php?t=13876&start=10) e verifique primeiro se o seu carro usa um conector compatível com a haste do Astra pra saber se precisa fazer adaptação ou não. Aproveite que já desmontou o acabamento e passe 3 fios bor baixo do som em direção a parte de baixo do porta luvas. Da pra fazer isso sem tirar o som, eu passei o fio pra dentro do painel e consegui pegar eles no buraco do conector OBD2, e a partir dali empurrei em direção ao porta luvas.
A chave depois de instalada no meu carro:

4º passo) Fiação para o computador de bordo
Pra quem quer montar um computador de bordo que meça consumo e velocidade, ainda será preciso puxar dois fios do cofre do motor.
Conforme mencionei em outros posts, preferi puxar os fios direto da saída dos sensores. No caso, peguei o sinal de um bico injetor e outro a partir do sensor de velocidade.
Isso foi uma opção minha por achar mais seguro do que pegar a partir do módulo.
O fio certo do bico no meu caso é um de cor marrom/vermelho. Note na imagem abaixo o bico injetor (peça amarela) e os dois fios saindo dele. Retirando esse corrugado é possível ver o fio com clareza:

Do mesmo jeito que no chicote do TID, use um estilete ou similar para desencapar uma parte do fio e puxe uma derivação.
Já o sensor de velocidade, para os carros que não tem ABS, ele fica atrás do câmbio lá embaixo perto da parede corta fogo e do protetor de cárter. Seguindo os 3 fios que saem dele, ele sobe, se junta em outro conector que destaquei em vermelho na foto abaixo, e sobe mais um pouco podendo ser encontrado neste local logo acima da caixa de câmbio:

O fio certo é o vermelho/azul fino:

Desencape-o também e puxe as derivações para dentro do carro (por falta de condição acabei puxando pelo lado de fora mesmo).
Pra quem não se localizou tirei uma foto mais aberta:

5º passo) Circuito
Com todos os fios puxados, agora é hora de montar o circuito. Abaixo está um diagrama.

Você pode montar tudo inicialmente numa protoboard e mais pra frente soldar numa placa. Recomendo que faça assim até pra testar e ver se montou tudo certo.
Eu mencionei em outros posts que eu estava querendo mandar fazer a placa do circuito mas eu desisti da ideia. O problema principal é o custo que fica por volta de R$ 50. Se pedir em quantidade o valor até cai mas pra mim continuaria sendo um valor alto já que o circuito é simples e uma placa universal de tamanho similar custa uns R$ 5… Se alguém quiser eu posso montar a placa com os componentes já soldados, entre em contato comigo que eu vejo quanto fica.
6º passo) Software
O primeiro passo é baixar a IDE do Arduino em https://www.arduino.cc/en/Main/Software
O segundo passo é baixar a biblioteca de comunicação do Arduino com o TID e o software do computador de bordo. Ambos estão disponíveis em:
https://corsaclube.com.br/download/comp ... rdo_corsa/
A biblioteca é o arquivo BibliotecaTID-2016-jun-09.zip e o software do computador de bordo é o ComputadorBordoTID-2017-out-03.zip. Para baixar, clique no nome do arquivo e depois salve na pasta em seu computador.
OBS: A biblioteca que estou disponibilizando é uma versão com modificações minhas (basicamente o que eu modifiquei foram as chamadas de alguns dos símbolos do TID pois parece que o TID europeu tem uns símbolos diferentes do brasileiro) enquanto o software é totalmente de minha autoria. Estou disponibilizando os arquivos dessa forma para que eu tenha condições de prover atualizações e corrigir os bugs que eu for encontrando.
Pra quem está em dúvida que símbolos são esses que estou falando, são os que aparecem embaixo da palavra “Texto!” na imagem abaixo:

Também estou disponibilizando um ZIP com os arquivos originais que baixei do fórum do Arduino e um segundo ZIP com um programa de exemplo para testar o Arduino com TID.
A biblioteca deve ser descompactada na pasta “<Usuário>\Documentos\Arduino\libraries” enquanto o software deve ser descompactado na pasta “<Usuário>\Documentos\Arduino”.
Depois, plugue o Arduino na porta USB do computador, abra a IDE do Arduino, abra o software do computador de bordo e clique em Upload.

Depois de ter carregado o software, verifique o funcionamento do TID e do Arduino.
No Arduino eu coloquei pra um LED ficar piscando segundo sim segundo não para indicar que o código está rodando. Já no TID, a primeira coisa que deve acontecer é aparecer uma mensagem de boas vindas por alguns segundos que logo dá lugar a data novamente. Pressione o botão 1 para alternar as funções para que ele exiba os dados do computador de bordo.
-- Pós montagem - Manuseando e ajustando o computador de bordo --
O funcionamento do computador de bordo segue o diagrama abaixo:

Ao ligar o Arduino ou ao carregar um novo software nele, uma mensagem de boas vindas é exibida no TID por cerca de 3 segundos, voltando logo em seguida a exibir a data. O botão 1 está configurado para alternar entre as funções do computador de bordo enquanto o botão 2 exibe opções extras relacionadas com a função ativa no momento. A disponibilidade de opções é representada pelo símbolo [ ] no TID.
Calibrando o consumo, velocímetro e hodômetro
A calibração é um passo necessário para fazer com que o computador de bordo exiba valores o mais próximo possível da realidade.
- Consumo
Para calibrar o consumo encha o tanque do carro e rode com ele normalmente. Sempre que terminar uma viagem, acesse o consumo total em litros registrado pelo computador de bordo e anote o valor mostrado. Faça isso todas as vezes que sair com o carro até o próximo abastecimento. Na próxima vez que encher o tanque na bomba, veja quantos litros foram colocados no tanque e compare com os valores que você anotou no computador de bordo.
Em seguida, aumente ou diminua no código do software o valor da variável fatorCons. Caso o consumo do carro tenha sido maior que o registrado no computador de bordo, diminua o valor da variável. Caso o consumo do carro tenha sido menor, aumente o valor da variável.
Após o ajuste, carregue no Arduino a nova versão do software.
Repita todo esse processo algumas vezes para chegar a um valor que considere próximo do real.
- Velocímetro
Para calibrar o velocímetro digital, rode com o carro e mantenha uma velocidade constante. Em seguida compare o que o velocímetro do carro está marcando com o velocímetro digital.
Se o velocímetro digital estiver marcando mais que o velocímetro do carro, diminua o valor da variável fatorVel. Se o velocímetro digital estiver marcando menos, aumente o valor da variável fatorVel.
Após o ajuste, carregue no Arduino a nova versão do software.
Repita todo esse processo algumas vezes para chegar a um valor adequado.
- Hodômetro
Apesar do velocímetro e o hodômetro lerem o mesmo sensor, o que eu reparei no meu carro é que cada um exige uma calibragem diferente. Sendo assim, zere o hodômetro parcial do seu carro e dirija por alguns quilômetros. Compare o que o hodômetro do seu carro marcou com o que foi registrado pelo computador de bordo.
Se o hodômetro do computador de bordo estiver marcando mais que o hodômetro do carro, diminua o valor da variável fatorDist. Se o hodômetro do computador de bordo estiver marcando menos, aumente o valor da variável fatorDist.
Após o ajuste, carregue no Arduino a nova versão do software.
Repita todo esse processo algumas vezes para chegar a um valor adequado.
Observação importante: Não tente calibrar o hodômetro do computador de bordo para mostrar exatamente os mesmos valores que o hodômetro do seu carro mostra.
Por motivos que eu desconheço o hodômetro do computador de bordo sofre com algumas variações e alguns dos projetos na qual eu me inspirei sofrem do mesmo problema. A título de exemplo, nos meus testes em percurso de 18 km o erro variou de -300m a +300m.
Observações finais:
- Este projeto não está finalizado. Existem pontos que podem ser melhorados, códigos que podem ser otimizados e bugs que eu posso não ter pego ainda, além de novas funções que podem ser adicionadas. Essas coisas eu vou fazendo aos poucos no meu tempo livre e conforme forem acontecendo eu aviso aqui.
- O código do computador de bordo está disponível, sendo assim, melhorias e contribuições são bem vindas.
- No momento eu ainda não desenvolvi o salvamento de informações dos dados de viagem. Isso significa que quando carro é desligado todas as informações como consumo médio, velocidade média, distância e consumo total, são perdidas. Espero um dia fazer isso mas não tenho prazo pra tal.
Segue abaixo os vídeos que fiz do computador de bordo funcionando.
Demonstração:
Parte 2 - Teste em movimento:
É isso aí, espero ter lembrado de colocar tudo.