آردوینو Arduinoدانستنی هامطالب علمی

راه اندازی ماژول اثر هال UGN3144 با آردوینو

سنسور اثر هال مبدلی است که خروجی آن بصورت ولتاژی است که در پاسخ به میدان مغناطیسی تغییر می کند. سنسورهای اثر هال در مجاورت دستگاه های سوئیچینگ ، تشخیص سرعت و سنجش جریان بکار می روند. ولتاژ هال متناسب است با جریان الکتریکی (I) و میدان مغناطیسی (B).اندازه این ولتاژ در محدودهٔ میکرو ولت می باشد. به همین خاطر در کاربردهای عملی حضور تقویت کننده ها ضروری می باشد.با اعمال میدان های مغناطیسی نسبتا بزرگ ولتاژ خروجی در محدودهٔ چند میکروولت می باشد. در این ماژول برای ارتقا حساسیت سنسور و گرفتن خروجی مطلوب با بیشترین دقت و با حداقل خطای هیسترزیس از تقویت کننده، رگولاتور ولتاژ و مدارهای سوییچینگ منطقی استفاده شده است که راه اندازی آسان آن را توسط آردوینو میسر می سازد.

سنسورهای اثر هال به دو نوع عمده تقسیم می شوند:
۱.سنسورهای خطی یا آنالوگ
۲.سنسورهای اثر هال با خروجی دیجیتال

کاربردهای حسگر با خروجی دیجیتال:

  • کنترل موتور(تشخیص سرعت )
  • تجهیزات عکاسی (اندازه گیری زمان)
  • زمان احتراق
  • حسگر مکان
  • شمارنده پالس (چاپگر و درایو موتور)
  • Joy stick
  • قفل شدن در
  • مشاهده جریان (سیستم موتور)
  • اندازه گیری سرعت چرخش
  • اندازه گیری فلو
  • رله
  • امنیتی (کارت های مغناطیسی )
  • ارتباطات راه دور
  • فشارسنج ها
  • سوییچ های محدود کننده
  • سنسور تعیین مکان لنز
  • تست تجهیزات
  • سنسور تعیین مکان شفت
  • دستگاه های سکه ای

کاربردهای سنسور با خروجی خطی :

  • مشاهده جریان
  • درایو دیسک
  • درایو فرکانس متغیر
  • کنترل حفاظت موتور
  • حفاظت منبع تغذیه
  • اندازه گیری مکان
  • دیافراگم فشار
  • پتانسیومترهای غیر تماسی
  • سوییچ های انکودر
  • انکودرهای چرخشی
  • تنظیم کننده ولتاژ
  • ردیاب فلزات آهن دار

نحوه اتصال ماژول اثر هال UGN3144 به آردوینو

fir

تجهیزات مورد نیاز :

کد راه اندازی ماژول اثر هال UGN3144 با آردوینو

//Analog Hall Sensor
//using an LM393 Low Power Low Offset Voltage Dual Comparator
/*******************************
* Analog Hall Sensor     Uno R3
* A0                      A0
* D0                      7
* VCC                     5V
* GND                     GND
*******************************/

const int ledPin = 13;//the led attach to pin13
int sensorPin = A0; // select the input pin for the potentiometer
int digitalPin=7; //D0 attach to pin7

int sensorValue = 0;// variable to store the value coming from A0
boolean digitalValue=0;// variable to store the value coming from pin7

void setup()
{
  pinMode(digitalPin,INPUT);//set the state of D0 as INPUT
  pinMode(ledPin,OUTPUT);//set the state of pin13 as OUTPUT
  Serial.begin(9600); // initialize serial communications at 9600 bps

}

void loop()
{
  sensorValue = analogRead(sensorPin); //read the value of A0
  digitalValue=digitalRead(digitalPin); //read the value of D0
  Serial.print("Sensor Value "); // print label to serial monitor
  Serial.println(sensorValue); //print the value of A0
  Serial.print("Digital Value "); // print label to serial monitor
  Serial.println(digitalValue); //print the value of D0 in the serial
  if( digitalValue==HIGH )//if the value of D0 is HIGH
  {
    digitalWrite(ledPin,LOW);//turn off the led
  }
  if( digitalValue==LOW)//else
  {
    digitalWrite(ledPin,HIGH);//turn on the led
  }
  delay(1000);//delay 200ms
}

 

نوشته های مشابه

2 دیدگاه

  1. با سلام
    در کاربرد ها نوشتید تشخیص سرعت موتور
    میشه بگید چطور این کار را انجام بدم؟ در کئام قسمت موتور باید قرار بدهم؟

    1. یک آهنربا به شفت خروجی موتور متصل کنید تا در هر یک رور چرخش موتور یکبا. سنسور را تحریک کند و سپس یک حلقه بنویسید و با هر سیگنال سنسور متغیر داخل حلقه را با یک جمع کنید حال میتوانید با اضافه کردن فاکتور زمان تعداد دور موتور در یک دقیقه را بدست آورید

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

دکمه بازگشت به بالا