رزبری پای - Raspberry PIمطالب علمی

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

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

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

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

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

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

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

نحوه اتصال ماژول اثر هال UGN3144 به رزبری پای

7

 

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

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

#include <stdio.h>
#include <wiringPi.h>
#include <pcf8591.h>

#define PCF 120

int main (void)
{
int res, tmp, status;
wiringPiSetup ();
// Setup pcf8591 on base pin 120, and address 0x48
pcf8591Setup (PCF, 0x48);
status = 0;
while(1) // loop forever
{
res = analogRead(PCF + 0);
printf("Current intensity of magnetic field : %d\n", res);
if (res - 133 < 5 || res - 133 > -5)
tmp = 0;
if (res < 128) tmp = -1;
if (res > 138) tmp = 1;
if (tmp != status)
{
switch(tmp)
{
case 0:
printf("\n*****************\n" );
printf( "* Magnet: None. *\n" );
printf( "*****************\n\n");
break;
case -1:
printf("\n******************\n" );
printf( "* Magnet: North. *\n" );
printf( "******************\n\n");
break;
case 1:
printf("\n******************\n" );
printf( "* Magnet: South. *\n" );
printf( "******************\n\n");
break;
}
status = tmp;
}
delay (200);
}
return 0 ;
}

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

#/usr/bin/env python
import RPi.GPIO as GPIO
import PCF8591 as ADC
import time

def setup():
ADC.setup(0x48)

def Print(x):
if x == 0:
print ''
print '*************'
print '* No Magnet *'
print '*************'
print ''
if x == 1:
print ''
print '****************'
print '* Magnet North *'
print '****************'
print ''
if x == -1:
print ''
print '****************'
print '* Magnet South *'
print '****************'
print ''

def loop():
status = 0
while True:
res = ADC.read(0)
print 'Current intensity of magnetic field : ', res
if res - 133 < 5 and res - 133 > -5:
tmp = 0
if res < 128:
tmp = -1
if res > 138:
tmp = 1
if tmp != status:
Print(tmp)
status = tmp
time.sleep(0.2)

if __name__ == '__main__':
setup()
loop()

اجرای برنامه C

برنامه را در فایلی با نام analog_hall_switch.c ذخیره کنید به محل ذخیره شدن فایل بروید و دستور زیر را برای کامپایل شدن اجرا کنید.

gcc analog_hall_switch.c –lwiringPi

برای اجرای برنامه دستور زیر را وارد کنید.

sudo ./a.out

اجرای برنامه پایتون

برای اجرای پایتون کافی است برنامه را در فایلی به نام python 17_analog_hall_switch.py ذخیره کنید برای اجرا به محل ذخیره سازی فایل بروید و دستور زیر را اجرا کنید.

sudo python 17_analog_hall_switch.py

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

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

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

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