Hardware

Essa seção documenta os aspectos técnicos da implementação do hardware.

Testes

CAN e microcontroladores

Teste para validação da comunicação CAN entre os microcontroladores e transceivers do projeto.

CAN e BMS

Teste para validação da comunicação CAN entre os microcontroladores e o BMS do carro.

 1/* Código fonte para teste de comunicação CAN - BMS
 2* Não esquecer de configurar os pinos no config.h
 3* Plataforma: ATmega2560
 4* Autor: Caio Tácito
 5* Data: 03/05/2021
 6* CHEETAHPORRA!
 7*/
 8#include "Cheetah.h"
 9
10//Instanciando objetos
11CheetahCAN can;
12CheetahSerial serial;
13
14void setup()
15{
16  //Incializa serial
17  Serial.begin(115200);
18  //Inicializa CAN
19  can.beginCAN();
20}
21
22void loop()
23{
24  //Verifica se há mensagem disponível
25  if(can.readMessage())
26  {
27    //Guarda a mensagem em um vetor
28    byte* dados = can.getMsg();
29    //Converte os valores para 8 bits shiftando e fazendo OR
30    //E depois os adiciona ao buffer serial
31    serial.addAnalogSensor(dados[0] | dados[1]<<8);
32    serial.addAnalogSensor(dados[2] | dados[3]<<8);
33    serial.addAnalogSensor(dados[4] | dados[5]<<8);
34    serial.addAnalogSensor(dados[6] | dados[7]<<8);
35    //Envia os dados para a serial
36    serial.sendPayload();
37  }
38}

Referências

NASCIMENTO, Lucas de Camargo. PROTOCOLO DE COMUNICAÇÃO CAN E SUAS APLICAÇÕES NA INDÚSTRIA AUTOMOBILÍSTICA. Orientador: André Luís Faustino da Silva. 2006. TCC (Engenharia Elétrica - Graduação) - Universidade São Francisco de Itatiba - SP, [S. l.], 2006.