Neste tutorial, vamos aprender de, forma muito fácil, como usar o acelerómetro de 3 eixos ADXL335 com Arduino. O acelerómetro ADXL335 é um sensor de alta qualidade que inclui uns condensadores de separação na placa para o seu ótimo funcionamento e já que vem preparado para usar em qualquer tipo de projeto com microcontroladores incluindo projetos de robótica.
Este acelerómetro devolve uma tensão proporcional à aceleração detetada pelo sensor, a partir disso podemos intrepretar os sinais facilmente com Arduino ou com um microcontrolador através dos pinos analógicos.
Montagem e ligações
Alimenta-se o módulo a partir do pino de 3.3V do Arduino e liga-se o pino GND do sensor a qualquer pino GND do Arduino. Os pinos X,Y e Z do sensor são ligados aos pinos A1, A1 e A3 do Arduino respetivamente, e com isto, já o temos todo preparado para começar o sketch de ensaio.
Sketch de ensaio
É um sketch de ensaio muito fácil para testar o acelerómetro ADXL335, está comentado linha a linha para que seja mais fácil de entender:
//Definimos em 3 constantes os pinos do Arduino que vamos usar para obter as leituras const int xpino = A1; // eixo X do acelerometro const int ypino = A2; // eixo Y do acelerometro const int zpino = A3; // eixo Z do acelerometro int Pausa = 500; //Pausa em milisegundos entre leituras void setup() { //Iniciamos a comunicação serie Serial.begin(9600); //Nos asseguramos que o conversor analogico-digital tenha a voltagem de referencia a partir do pino AREF analogReference(EXTERNAL); //Definimos os pinos que vamos usar para obter os valores do acelerometro como entrada (input) pinMode(xpin, INPUT); pinMode(ypin, INPUT); pinMode(zpin, INPUT); } void loop() { //Mostramos no monitor serie o valor que obtemos do eixo X Serial.print(analogRead(xpin)); Serial.print("\t"); //Espaçado entre caracteres //Pequena pausa delay(1); //Mostramos no monitor serie o valor que obtemos do eixo Y Serial.print(analogRead(ypin)); Serial.print("\t"); //Espaçado entre caracteres //Pequena pausa delay(1); Serial.print(analogRead(zpin)); Serial.print("\n"); //Troca de linha //Pequena pausa entre leituras definida pela variável "Pausa" delay(Pausa); }
Gostaram deste artigo ? Deixem o vosso comentário no formulário a baixo.
Não se esqueçam de fazer like na nossa página no facebook.
Todos os produtos utilizados neste artigo podem ser encontrados na loja de componentes eletrónicos ElectroFun.