Raspberry Pi 上没有模拟输入的模拟传感器
Raspberry Pi 没有任何模拟输入,但这并不意味着您不能使用某些类型的模拟传感器。使用几个电阻器和一个电容器,您可以使用“阶跃响应”方法来测量电阻。如果您使用的是电位器、光敏电阻或热敏电阻,那就太棒了。
下面的食谱取自我的新书“树莓派食谱”。这种使用传感器的方式的灵感来自 Adafruit 的这项工作。要制作此食谱,您需要:
• 面包板和跳线• 10kΩ 微调电位器• 两个1kΩ 电阻• 220 nF 电容器打开编辑器(nano 或IDLE)并粘贴以下代码。与本书中的所有程序示例一样,您也可以从 Raspberry Pi Cookbook 网站的代码部分下载该程序,该程序名为 pot_step.py。将 RPi.GPIO 导入为 GPIOimport timeGPIO.setmode(GPIO.BCM)a_pin =18b_pin =23 定义放电 ():GPIO.setup(a_pin, GPIO.IN) GPIO.setup(b_pin, GPIO.OUT) GPIO.output(b_pin, False) time.sleep(0.005)def charge_time():GPIO.setup(b_pin, GPIO.IN) GPIO.setup(a_pin, GPIO.OUT) count =0 GPIO.output(a_pin, True) 而不是 GPIO.input( b_pin):count =count + 1 return countdefanalog_read():charge() return charge_time() while True:print(analog_read()) time.sleep(1)当你运行程序时,你应该看到一些像这样的输出: $ sudo python pot_step.py1012101016234353677286105123143170当您旋转三角电位器的旋钮时,读数会在大约 10 到大约 170 之间变化。讨论 为了解释这个程序是如何工作的,我首先需要解释如何使用阶跃响应技术来测量可变电阻器的电阻。这种工作方式称为阶跃响应,因为它通过查看电路如何响应阶跃变化来工作当输出从低电平切换到高电平时。您可以将电容器视为储电罐,当它充满电荷时,其两端的电压就会增加。您不能直接测量该电压,因为 Raspberry Pidoesn 没有 ADC 转换器。但是,您可以计算电容器充满电荷所需的时间,以达到高于 1.65V 左右的程度,从而构成高数字输入。电容器充满电荷的速度取决于可变电阻器 (Rt) 的值。电阻越低,电容器充满电荷和电压上升的速度就越快。有关更多详细信息:Raspberry Pi 上没有模拟输入的模拟传感器制造工艺
- Raspberry Pi 上的温度监控
- 树莓派的 DHT Tiny Breakout
- Raspberry Pi 上的 1 线温度传感器 DS1820(直接 GPIO)
- 传感器数据与 Raspberry Pi 微处理器的集成
- 超声波传感器 (HC-SR04) + Raspberry Pi
- 使用一个 GPIO 引脚读取模拟传感器
- Raspberry Pi Photocell 日志和警报系统
- Java ME 8 + Raspberry Pi + 传感器 =物联网世界(第 1 部分)
- JAVA 中的树莓派数字霍尔传感器
- 使用 Raspberry pi 通过 GPIO 检测按钮按下
- 使用 Raspberry Pi 和 Zabbix Supervisor 读取模拟传感器
- 带有数字接口的简单模拟接近传感器(用于 Raspberry Pi)[最后更新:2014 年 2 月 7 日]