Sensor magnético A3144 – Sensor Hall

09 FEV
2016

Autor: Leonardo Dalla Porta

 Sensor Magnético de efeito Hall

Mais conhecido como Sensor Hall, tem como principio transformar um campo magnético, em um sinal elétrico, assim podendo aplicar em diversos equipamentos de automação e desenvolvimento de sistemas.

 

Um Semicondutor?

Ele é um semicondutor, semelhante a um Transistor a imagem a seguir mostra de forma ilustrada como é o esquema interior do Sensor Hall A3144:

A3144_Hall-Effect-Sensor_Pin-Out_Symbol-Diagram

 

 

Você precisa apenas de:

  • Um Sensor Magnético A3144 (Sensor Hall)
  • Um Resistor de 10K (Para Pull UP)
  • Arduino Uno ou Equivalente
  • Protoboard
  • Jumpers

 

 

Ligações:

 

Na Imagem a seguir você pode ver a ligação do sensor junto ao resistor, onde o pino OUT é conectado ao A0 do arduino e simplesmente conectamos o arduino ao computador:

images

 

Código

Este Código está disponível também no site do Arduino (Arduino.cc), ele simplesmente mostra qual a polaridade do Imã o qual aproximado do sensor, para isso basta fazer Upload do código e abrir o monitor serial:

/*

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
 *    FILE: MM01
 *  AUTHOR: Rob van den Tillaart; modified Ralph Martin
 *    DATE: 2012 06 10 
 *     ORIGINAL URL: http://playground.arduino.cc/Code/HallEffect
 *
 * PURPOSE: use an A1301 or A1302 as magnetometer   
 *
 * Pin Layout LH Package
 * =====================
 *  1     VCC 5V
 *  2     signal    connected to Analog 0    
 *  3     GND
 *
 * Pin Layout UA Package
 * =====================
 *  1     VCC 5V
 *  2     GND
 *  3     signal    connected to Analog 0    
 *
 */
 
#define NOFIELD 505L    // Analog output with no applied field, calibrate this
 
// Uncomment one of the lines below according to device in use A1301 or A1302
// This is used to convert the analog voltage reading to milliGauss
#define TOMILLIGAUSS 1953L  // For A1301: 2.5mV = 1Gauss, and 1024 analog steps = 5V, so 1 step = 1953mG
// #define TOMILLIGAUSS 3756L  // For A1302: 1.3mV = 1Gauss, and 1024 analog steps = 5V, so 1 step = 3756mG
 
void setup() 
{
  Serial.begin(9600);
}
 
void DoMeasurement()
{
// measure magnetic field
  int raw = analogRead(0);   // Range : 0..1024
 
//  Uncomment this to get a raw reading for calibration of no-field point
//  Serial.print("Raw reading: ");
//  Serial.println(raw);
 
  long compensated = raw - NOFIELD;                 // adjust relative to no applied field 
  long gauss = compensated * TOMILLIGAUSS / 1000;   // adjust scale to Gauss
 
  Serial.print(gauss);
  Serial.print(" Gauss ");
 
  if (gauss > 0)     Serial.println("(South pole)");
  else if(gauss < 0) Serial.println("(North pole)");
  else               Serial.println();
}
 
void loop() 
{
    delay(1000);
    DoMeasurement();
}

Qualquer dúvida deixe seu comentário abaixo, espero ter sido esclarecedor, um abraço e até a próxima!

Faça um bom uso! Att. Equipe Nadiel Comércio.

Deixe um comentário

mugen 2d fighting games

*

 
Free WordPress Theme
WordPress Themes