加载中…
个人资料
  • 博客等级:
  • 博客积分:
  • 博客访问:
  • 关注人气:
  • 获赠金笔:0支
  • 赠出金笔:0支
  • 荣誉徽章:
正文 字体大小:

霍尔传感器如何使用?

(2018-06-26 22:15:13)
标签:

电子diy

树莓派

分类: 树莓派专区
EDITORIntroduction霍尔传感器通常用于近距离切换、定位、速度检测和电流传感应用。在霍尔效应的基础上,一个霍尔传感器是根据磁场对其输出电压的不同而变化的。霍尔传感器可以分为线性(模拟)霍尔传感器和开关霍尔传感器。开关霍尔传感器由电压调整器、霍尔元件、差动放大器、施密特触发器和输出终端组成,并输出数字值线性霍尔传感器由一个霍尔元件、线性放大器和发射极输出器组成,输出模拟值。线性霍尔传感器,输出模拟信号(以两种形式),以及开关霍尔传感器,输出数字信号。如果你将一个比较器添加到线性霍尔传感器,它将能够输出模拟信号和数字信号。
霍尔效应霍尔效应是一种电磁效应。这是埃德温霍尔在1879年发现的,当时他正在研究金属的导电机理。当导体通过一个均匀的磁场时,就会产生这种效应。电荷载体的自然电子漂移导致磁场作用于Lorentz的力量(在电磁场中对带电粒子施加的力),这些电荷载体。结果是电荷分离,底部或顶部的正电荷或负电荷聚集在一起。
霍尔传感器霍尔传感器是一种基于它的磁场传感器。通过导体产生的电流会产生一个与电流不同的磁场,而一个霍尔传感器可以用来测量电流,而不会打断电路。通常,传感器被集成在环绕导体周围的缠绕核心或永久磁铁上。EDITORWhat you will need
树莓派
网线
线性霍尔传感器模块
双彩色共阴极二极管组件
开关模块
EDITORWhat you will do对于开关霍尔的传感器:
1:构建电路
将树莓派的GPIO0连接到交换机模块的模块将树莓派的GPIO1连接到双色LED模块上将树莓派的GND连接到开关大厅模块的GND和双色LED模块的GND。连接pin 3.3 V的树莓派到pin+的开关大厅模块和双颜色LED模块的pin+
2:编辑并测试代码将一块磁铁靠近传感器。
#!/usr/bin/env pythonimport RPi.GPIO as GPIO
#Hall sensor is connected to pin 11 (BOARD-Layout!)HALL = 11
#LED is connected to pin 12 (BOARD-Layout!)LED  = 12
#Set pin-layout to BOARDGPIO.setmode(GPIO.BOARD)
#Avoid error messages if GPIO was not shut down correctly beforeGPIO.setwarnings(False)
#Set HALL-pin to input, use internal pull-up-resistorGPIO.setup(HALL,GPIO.IN, pull_up_down=GPIO.PUD_UP)
#Set LED-pin to output. A resistor should be used here!GPIO.setup(LED, GPIO.OUT)
#Turn LED offGPIO.output(LED, GPIO.LOW)
#This function will be called if a change is detecteddef change_detected(channel):    if GPIO.input(HALL) == GPIO.LOW:        print 'Magnetic material detected: LED on'        GPIO.output(LED, GPIO.HIGH) #LED on    else:        print 'No magnetic material: LED off'    GPIO.output(LED, GPIO.LOW) # LED off
# Register event-listener on falling and raising# edge on HALL-sensor input. Call "change_detected" as# callbackGPIO.add_event_detect(HALL, GPIO.BOTH, change_detected, bouncetime=25)
# The main-loop does nothing. All is done by the event-listenertry:    while True:        pass
# Quit on Ctrl-cexcept KeyboardInterrupt:    print "Ctrl-C - quit"
# Cleanup GPIOfinally:    GPIO.cleanup() 
对于线性大厅传感器,采取以下步骤。1:构建电路
线性大厅传感器的连接针连接到ADC0832的CH0上2:编辑并测试代码将一块磁铁靠近传感器。
#!/usr/bin/env pythonimport ADC0832import time
def init():    ADC0832.setup()
def loop():    while True:        res = ADC0832.getResult()        print 'res = %d' % res        time.sleep(0.2)
if __name__ == '__main__':    init()    try:        loop()    except KeyboardInterrupt:        ADC0832.destroy()        print 'The end !'

0

阅读 收藏 喜欢 打印举报/Report
  

新浪BLOG意见反馈留言板 欢迎批评指正

新浪简介 | About Sina | 广告服务 | 联系我们 | 招聘信息 | 网站律师 | SINA English | 产品答疑

新浪公司 版权所有