zoukankan      html  css  js  c++  java
  • 常用Raspberry Pi周边传感器的使用教程

    在Raspberry Pi 的使用和开发过程中,你可能时常需要一些硬件和传感器等来支持你的开发工作,例如,加入一个超声波测距的模块来让你的Raspberry Pi具备测距功能,加入一个测温模块以实现测温功能。今天我们为你准备了10款最常用的传感器与Raspberry Pi 结合使用的例程,你可以在你的开发工作中直接使用这些例程,也可以稍做更改以接入更多的传感器至你的Raspberry Pi项目当中。


            
      本文以SeeedStudio公司开发的Grove电子模块系列为例,当然,你也可以在更多的硬件公司如Sparkfun、dfrobot购买到类似的模块。



    1.距离监测

      超声波测距是一种常用的测距方法,其原理是将超声波脉冲发射到空气中,当遇到测量后反射至接收端,处理器通过测量返回时间计算出障碍物距离。Grove-Ultrasonic Ranger具有四个引脚,分别是电源、地、信号引脚,还有一个管脚悬空。




      将Raspberry Pi和模块按下列方式进行连接:




      从github上签出代码后,在Raspberry Pi终端LXTerminal里输入:
      cd “Grove – Ultrasonic Ranger”
      sudo python ultrasonic.py
      Raspberry Pi 即可驱动Ultrasonic Ranger模块进行工作:




    2. 红外人体检测

      红外人体传感器用以检测某个范围内是否有人体的运动,常用于楼道灯控制、防盗装置、自动门等设施中。本例中将该传感器和Raspberry Pi进行连接,当传感器检测到人体运动信号时,其输出信号至Raspberry Pi中。





      将Raspberry Pi与该模块按下列方式进行连接:




      进入到签出的代码目录中,执行:
      cd “Grove – PIR Motion Sensor”
      sudo python PIR_sensor.py
      当传感器监测到人体活动后,Raspberry Pi 输出结果:




    3. 温、湿度测量

      环境监测中最常用的是温、湿度的自动检测。常用的温湿度传感器使用单总线协议同处理器通信,将温湿度测量值输出至Raspberry Pi端。在本例程中,使用Grove - Temperature and Humidity Sensor Pro模块(DHT22) 进行温湿度的测量。




      连接示意图:



      Temperature and Humidity Sensor示例代码使用C语言开发,下载代码后需要进行编译,进入源码目录后,在终端输入:
      cd “Grove - Temperature and Humidity Sensor Pro”
      make
      进行编译,然后输入下面命令执行示例:
      sudo ./Seeed_DHT22
      Raspberry Pi工作效果:




    4.实时时钟

      Raspberry Pi 自身是没有RTC的,某些场景下,使用外部的RTC模块为Raspberry Pi提供实时时钟就显得非常有必要。本例中使用Grove-RTC为Raspberry Pi提供实时时钟,该模块使用I2C同Raspberry Pi进行通信。




      连接示意图:




      Grove RTC模块可以直接连接Raspberry Pi的5V引脚,不过在使用RTC之前需要先配置I2C。


      1.首先安装Linux I2C 驱动模块:
      sudo aptitude install i2c-tools libi2c-dev


      2. 装载i2c-bcm2708和rtc-ds1307:
      sudo modprode i2c-bcm2708
      sudo modprobe rtc-ds1307
      I2C 配置完成之后,如果是Raspberry Pi的Model B,这时在终端输入:
      sudo i2cdetect –y 1
      当然,如果是 Raspberry Pi的Model A,则输入:
      sudo i2cdetect –y 0
      这时候就可以看到下图的输出信息:





      接下来,将获的RTC硬件地址信息添加到I2C设备中,在终端输入:
      sudo -i
      echo ds1307 0x68 > /sys/class/i2c-adapter/i2c-1/new_device
      hwclock -r


      上述命令在系统中添加一个新的I2C设备,并读取RTC数据:




      当然,在首次使用RTC模块的时候你需要为你的RTC设置一个初始时间。我们使用Raspberry Pi系统的时间作为RTC模块的初始值,如下设置即可:
      date
      hwclock –w
      hwclock -r




    5.OLED 显示

      Grove - OLED Display是一个128x64的OLED显示屏,使用I2C协议,特别适合作为Raspberry Pi的第二显示屏。






      进入源码目录后,在终端输入:
      cd "Grove – OLED Display 128x64"
      sudo ./OLED
      Grove - OLED Display工作效果:







    6.气压检测

      Grove - Barometer Sensor是一款集成气压、温度检测的电子模块,使用I2C接口同Raspberry Pi进行通信。






      进入源码目录后,在终端输入:
      cd "Grove – Barometer_Sensor"
      sudo ./barometerDemo
      其工作效果图:




    7.光照检测

      如果你使用Rasbperry Pi做一个在强光强烈的时候自动为你关闭窗帘的设备,你就需要使用一个光照传感器用以监测光照情况。Grove - Digital Light Sensor来完成任务,其使用I2C协议,获取到当前光照的照度值。




      连接示意图:




      进入源码目录后,在终端输入:
      cd "Grove – Digital_light_Sensor"
      sudo ./DLS
      Grove – Digital Light Sensor 工作效果图:





    8.继电器控制

      继电器使用的范围广泛,你甚至可以直接使用继电器构建一个简单的智能家居系统,比如控制花园洒水装置和电饭煲等。因此,Raspberry Pi加上继电器可以充分的扩展它对外部设备的控制能力。


      Dry-Reed Relay 是指干簧继电器,相较与一般继电器,其切换速度和寿命都有很大提高。该继电器的使用非常简单,只需对其管脚进行电平控制即可完成对继电器的控制。







      进入源码目录后,在终端输入:
      cd "Grove - Relay"
      sudo python relay.py
      Rasbperry Pi将会控制继电器每0.5秒进行一次开、断切换。


    9.模数转换

      Raspberry Pi让人觉得比较遗憾的事情就是没有ADC,面对一大堆的模拟信号的外部设备却无能为力。不过,现在我们有Grove-ADC模块可以解决这个问题。




      ADC 的代码非常简单,使用readADC()的函数即可以得到外部电压值。接下来以一款模拟电平输出模块:Grove- Alcohol Sensor为例,说明如何使用该模块配合酒精传感器以测量酒精值。




      将Raspberry Pi、ADC模块和Alcohol Sensor按如下图连接:




      工作效果如下图所示, 试试将Alcohol sensor靠近酒精等液体,当其检测到空气中酒精浓度增加时,输出值将会发生明显变化。
      进入源码目录后,在终端输入:
      cd “Grove – ADC”
      sudo ./ ADC121_DEMO
      工作效果图如下:



      本文所有的源码都托管在 Github: https://github.com/yexiaobo-seeedstudio/Grove-RaspberryPi
  • 相关阅读:
    服务部署 RPC vs RESTful
    模拟浏览器之从 Selenium 到splinter
    windows程序设计 vs2012 新建win32项目
    ubuntu python 安装numpy,scipy.pandas.....
    vmvare 将主机的文件复制到虚拟机系统中 安装WMware tools
    ubuntu 修改root密码
    python 定义类 简单使用
    python 定义函数 两个文件调用函数
    python 定义函数 调用函数
    python windows 安装gensim
  • 原文地址:https://www.cnblogs.com/welhzh/p/4184774.html
Copyright © 2011-2022 走看看