1100|23

1494

帖子

0

资源

一粒金砂(高级)

MicroPython动手做(34)——通用传感器 [复制链接]

 
本帖最后由 eagler8 于 2020-6-25 07:43 编辑

1、什么是传感器?
传感器(英文名称:transducer/sensor)是一种检测装置,能感受到被测量的信息,并能将感受到的信息,按一定规律变换成为电信号或其他所需形式的信息输出,以满足信息的传输、处理、存储、显示、记录和控制等要求。

 

国家标准GB7665-87对传感器下的定义是:“能感受规定的被测量并按照一定的规律(数学函数法则)转换成可用信号的器件或装置,通常由敏感元件和转换元件组成”。


中国物联网校企联盟认为,传感器的存在和发展,让物体有了触觉、味觉和嗅觉等感官,让物体慢慢变得活了起来。”

 

“传感器”在新韦式大词典中定义为:“从一个系统接受功率,通常以另一种形式将功率送到第二个系统中的器件”。

 

物联网设备中那些常见的传感器见下图

 

0.jpg


回复

1494

帖子

0

资源

一粒金砂(高级)

本帖最后由 eagler8 于 2020-6-23 08:56 编辑

2、在物联网架构中——各种传感器组成了基础的感知层

感知层包括了与环境交互的传感器,执行器和边缘设备等。感知层是物联网的皮肤和五官,用于识别物体、感知物体、采集信息、自动控制,比如装在空调上的温度传感器识别到了室内温度高于30度,把这个信息收集后,自动打开了空调进行制冷;这个层面涉及到的是各种识别技术、信息采集技术、控制技术。而且这些技术是交叉使用的的,各种感知有些是单一的,有些则是综合的,比如机器人就是整合了各种感知系统。 这一层最常见的就是各种传感器,用于替代或者延展人类的感官完成对物理世界的感知,也包括企业信息化过程中用到的RFID以及二维码技术。

 

01.jpg


回复

1494

帖子

0

资源

一粒金砂(高级)

01-0.jpg

3、传感器的特点与作用

传感器的特点
微型化、数字化、智能化、多功能化、系统化、网络化。它是实现自动检测和自动控制的首要环节。传感器的存在和发展,让物体有了触觉、味觉和嗅觉等感官,让物体慢慢变得活了起来。通常根据其基本感知功能分为热敏元件、光敏元件、气敏元件、力敏元件、磁敏元件、湿敏元件、声敏元件、放射线敏感元件、色敏元件和味敏元件等十大类。微型化是建立在微电子机械系统(MEMS)技术基础上的,已成功应用在硅器件上做成硅压力传感器(芯片级应用)。传感器不仅促进了传统产业的改造和更新换代,而且还可能建立新型工业,从而成为21世纪新的经济增长点。

 

传感器的作用
人们为了从外界获取信息,必须借助于感觉器官。而单靠人们自身的感觉器官,在研究自然现象和规律以及生产活动中它们的功能就远远不够了。为适应这种情况,就需要传感器。因此可以说,传感器是人类五官的延长,又称之为电五官。新技术革命的到来,世界开始进入信息时代。在利用信息的过程中,首先要解决的就是要获取准确可靠的信息,而传感器是获取自然和生产领域中信息的主要途径与手段。

 

在现代工业生产尤其是自动化生产过程中,要用各种传感器来监视和控制生产过程中的各个参数,使设备工作在正常状态或最佳状态,并使产品达到最好的质量。因此可以说,没有众多的优良的传感器,现代化生产也就失去了基础。

 

在基础学科研究中,传感器更具有突出的地位。现代科学技术的发展,进入了许多新领域:例如在宏观上要观察上千光年的茫茫宇宙,微观上要观察小到fm的粒子世界,纵向上要观察长达数十万年的天体演化,短到 s的瞬间反应。此外,还出现了对深化物质认识、开拓新能源、新材料等具有重要作用的各种极端技术研究,如超高温、超低温、超高压、超高真空、超强磁场、超弱磁场等等。显然,要获取大量人类感官无法直接获取的信息,没有相适应的传感器是不可能的。许多基础科学研究的障碍,首先就在于对象信息的获取存在困难,而一些新机理和高灵敏度的检测传感器的出现,往往会导致该领域内的突破。一些传感器的发展,往往是一些边缘学科开发的先驱。

 

传感器早已渗透到诸如工业生产、宇宙开发、海洋探测、环境保护、资源调查、医学诊断、生物工程、甚至文物保护等等极其之泛的领域。可以毫不夸张地说,从茫茫的太空,到浩瀚的海洋,以至各种复杂的工程系统,几乎每一个现代化项目,都离不开各种各样的传感器。由此可见,传感器技术在发展经济、推动社会进步方面的重要作用,是十分明显的。世界各国都十分重视这一领域的发展。相信不久的将来,传感器技术将会出现一个飞跃,达到与其重要地位相称的新水平。


回复

1494

帖子

0

资源

一粒金砂(高级)

目录清单
MicroPython动手做(01)——春节后入手了一块K210芯片AI开发板 
http://bbs.eeworld.com.cn/thread-1115786-1-1.html

MicroPython动手做(02)——尝试搭建K210开发板的IDE环境
http://bbs.eeworld.com.cn/thread-1115831-1-1.html

MicroPython动手做(03)——零基础学MaixPy之开机运行
http://bbs.eeworld.com.cn/thread-1116184-1-1.html

MicroPython动手做(04)——零基础学MaixPy之基本示例
http://bbs.eeworld.com.cn/thread-1116438-1-1.html

MicroPython动手做(05)——零基础学MaixPy之LCD液晶屏
http://bbs.eeworld.com.cn/thread-1116577-1-1.html

MicroPython动手做(06)——零基础学MaixPy之单目摄像头
http://bbs.eeworld.com.cn/thread-1116591-1-1.html

MicroPython动手做(07)——零基础学MaixPy之机器视觉
http://bbs.eeworld.com.cn/thread-1116617-1-1.html

MicroPython动手做(08)——零基础学MaixPy之识别颜色 
http://bbs.eeworld.com.cn/thread-1116662-1-1.html

MicroPython动手做(09)——零基础学MaixPy之人脸识别
http://bbs.eeworld.com.cn/thread-1116720-1-1.html

MicroPython动手做(10)——零基础学MaixPy之神经网络KPU
http://bbs.eeworld.com.cn/thread-1116925-1-1.html

MicroPython动手做(11)——搭建掌控板IDE环境
http://bbs.eeworld.com.cn/thread-1117964-1-1.html

MicroPython动手做(12)——掌控板之Hello World
http://bbs.eeworld.com.cn/thread-1118180-1-1.html

MicroPython动手做(13)——掌控板之RGB三色灯 
http://bbs.eeworld.com.cn/thread-1118275-1-1.html

MicroPython动手做(14)——掌控板之OLED屏幕
http://bbs.eeworld.com.cn/thread-1118389-1-1.html

MicroPython动手做(15)——掌控板之AB按键
http://bbs.eeworld.com.cn/thread-1118496-1-1.html

MicroPython动手做(16)——掌控板之图片图像显示
http://bbs.eeworld.com.cn/thread-1118945-1-1.html

MicroPython动手做(17)——掌控板之触摸引脚
http://bbs.eeworld.com.cn/thread-1119462-1-1.html

MicroPython动手做(18)——掌控板之声光传感器
http://bbs.eeworld.com.cn/thread-1119583-1-1.html

MicroPython动手做(19)——掌控板之蜂鸣器与音乐
http://bbs.eeworld.com.cn/thread-1119668-1-1.html

MicroPython动手做(20)——掌控板之三轴加速度
http://bbs.eeworld.com.cn/thread-1119998-1-1.html

MicroPython动手做(21)——掌控板之磁场传感器
http://bbs.eeworld.com.cn/thread-1120188-1-1.html

MicroPython动手做(22)——掌控板之无线广播
http://bbs.eeworld.com.cn/thread-1120835-1-1.html

MicroPython动手做(23)——掌控板之WiFi与蓝牙
http://bbs.eeworld.com.cn/thread-1120934-1-1.html

MicroPython动手做(24)——掌控板之拓展掌控宝 
http://bbs.eeworld.com.cn/thread-1121208-1-1.html

MicroPython动手做(25)——语音合成与语音识别
http://bbs.eeworld.com.cn/thread-1123752-1-1.html

MicroPython动手做(26)——物联网之OneNET
http://bbs.eeworld.com.cn/thread-1125172-1-1.html

MicroPython动手做(27)——物联网之微信小程序
http://bbs.eeworld.com.cn/thread-1125520-1-1.html

MicroPython动手做(28)——物联网之Yeelight
http://bbs.eeworld.com.cn/thread-1125939-1-1.html

MicroPython动手做(29)——物联网之SIoT
http://bbs.eeworld.com.cn/thread-1126090-1-1.html

 MicroPython动手做(30)——物联网之Blynk

http://bbs.eeworld.com.cn/thread-1126427-1-1.html

MicroPython动手做(31)——物联网之Easy IoT 

http://bbs.eeworld.com.cn/thread-1126903-1-1.html

MicroPython动手做(32)——物联网之MQTT
http://bbs.eeworld.com.cn/thread-1128464-1-1.html

MicroPython动手做(33)——物联网之天气预报
http://bbs.eeworld.com.cn/thread-1128721-2-1.html

MicroPython动手做(34)——通用传感器的综合运用
http://bbs.eeworld.com.cn/thread-1129058-1-1.html


回复

1494

帖子

0

资源

一粒金砂(高级)

本帖最后由 eagler8 于 2020-6-23 10:41 编辑

02.jpg

 

4、DHT11温湿度传感器
DHT11是一款含有已校准数字信号输出的温湿度复合传感器。它应用专用的数字模块采集技术和温湿度传感技术,确保产品具有极高的可靠性与卓越的长期稳定性。传感器包括一个电阻式感湿元件和一个NTC测温元件,并与一个高性能8位单片机相连接。因此该产品具有品质卓越、超快响应、抗干扰能力强、性价比极高等优点。每个DHT11传感器都在极为精确的湿度校验室中进行校准。校准系数以程序的形式储存在OTP内存中,传感器内部在检测信号的处理过程中要调用这些校准系数。单线制串行接口,使系统集成变得简易快捷。超小的体积、极低的功耗,信号传输距离可达20米以上,使其成为各类应用甚至最为苛刻的应用场合的最佳选则。产品为4针单排引脚封装。连接方便,特殊封装形式可根据用户需求而提供。

 

DHT11模块描述
1、可以检测周围环境的湿度和温度
2、传感器采用DHT11
3、湿度测量范围:20%-95%(0度-50度范围)湿度测量误差:+-5%
4、温度测量范围:0度-50度 温度测量误差:+-2度
5、工作电压3.3V-5V
6、输出形式 数字输出         
7、设有固定螺栓孔,方便安装
8、小板PCB尺寸:3.2cm*1.4cm
9、电源指示灯(红色)
10、每套重量约为8g

 


回复

1494

帖子

0

资源

一粒金砂(高级)

DHT11数字温湿度传感器和掌控板连接需要借助掌控扩展版,在掌控扩展版中DHT11可使用的引脚有P0/1/8/9/13/14/15/16,在这里使用引脚P13。将掌控板插在掌控宝扩展板上,通过双母头杜邦线将DHT11和扩展板进行连接,DHT11上的“+”连接扩展板的电源口“V”,“-”连接扩展板的地线口“G”,“out”连接扩展板的引脚“13”。

 

使用前,导入mpython模块和DHT11类:
from mpython import *
from dht import DHT11

 

实例化DHT11类,并设置mPython引脚P0:
dht=DHT11(Pin(Pin.P0))

 

DHT11测量并返回温湿度数据:
dht.measure()
dht.temperature()
dht.humidity()

 

注解
dht.measure() 为DHT11测量温湿度数据指令,测量后使用 dht.temperature() 、 dht.humidity() 获取测量的温湿度值。

 

03.jpg


回复

1494

帖子

0

资源

一粒金砂(高级)

#MicroPython动手做(34)——通用传感器的综合运用
#DHT11温湿度传感器

from mpython import *
import network
import ntptime
import time
import music
from machine import Timer
import dht

my_wifi = wifi()

my_wifi.connectWiFi("zh", "zy1567")

dht11 = dht.DHT11(Pin(Pin.P15))

tim13 = Timer(13)

def timer13_tick(_):
    try: dht11.measure()
    except: pass

tim13.init(period=1000, mode=Timer.PERIODIC, callback=timer13_tick)


ntptime.settime(8, "time.windows.com")
rgb[1] = (int(0), int(102), int(0))
rgb.write()
time.sleep_ms(1)
music.play('E5:1')
while True:
    oled.fill(0)
    oled.DispChar("温湿度表", 0, 0, 1)
    oled.DispChar((''.join([str(x) for x in [time.localtime()[1], "月", time.localtime()[2], "日", time.localtime()[3], "时", time.localtime()[4], "分", time.localtime()[5], "秒 "]])), 0, 14, 1)
    oled.DispChar((str("温度:") + str(dht11.temperature())), 0, 30, 1)
    oled.DispChar((str("湿度:") + str(dht11.humidity())), 0, 44, 1)
    oled.show()

 


回复

1494

帖子

0

资源

一粒金砂(高级)

04.jpg


回复

1494

帖子

0

资源

一粒金砂(高级)

mPython X 实验图形编程

 

05.jpg


回复

1494

帖子

0

资源

一粒金砂(高级)

5、BMP280气压传感器
BMP280是博世最新推出的数字气压传感器,具有卓越的性能和低廉的价格,相对精度为±0.12 hPa(相当于±1米),传感器功耗仅有2.7μA。BMP280具有业界最小封装,采用极其紧凑的8引脚金属盖LGA封装,占位面积仅为2.0×2.5mm2,封装高度为0.95 mm。包括有压力和温度测量功能。该气压传感器支持SPI和IIC通信接口,相比上一代的BMP180,精度已有相当大的提升,非常适合应用于低成本的多旋翼飞行器飞行控制器上,价格仅有目前流行的MS5611的四分之一。传感器模块它的小尺寸和2.74μA@ 1Hz的低功耗允许在电池驱动的设备中实现。门内导航,医疗保健以及GPS改进的新兴应用需要高相对精度和低TCO。得益于小尺寸和低功耗特性,这种器件可用在如移动电话、GPS 模块或手表等电池供电型设备中。与上代产品相同,BMP180、BMP280 也基于Bosch 成熟的压阻式压力传感器技术,具有高确度和线性度,以及长期稳定性和很高的 EMC 稳健性。多种设备工作选择带来了最高灵活性,可以在功耗、分辨率和滤波性能方面对设备进行优化。

 

06.jpg


回复

1494

帖子

0

资源

一粒金砂(高级)

本帖最后由 eagler8 于 2020-6-23 15:26 编辑

07.jpg

 

BMP280技术规格
1、气压工作范围 300 hPa 至 1100 hPa(海拔9000米~-500米)
2、工作温度范围 -40°C 至 +85°C
3、相对的绝对精度 ±0.12 hPa(典型值)
4、平均测量时间 5.5 ms
5、工作电压 VDD 1.71 V 至 3.6 V
6、电源电压 VDDIO 1.2 V 至 3.6 V
7、I2C 和串行外设接口 (SPI)
8、平均电流消耗典型值(1Hz数据刷新率):2.74μA(超低功耗模式);睡眠模式下的平均电流消耗:0.1μA
9、封装规格 2.0 mm x 2.5 mm x 0.95 mm,8 引脚 LGA,全金属封装

 

BMP280硬件连接(掌控宝需要打开电源开关)
注意的是这块板子的额定电压是3.3v,且同时支持两种连接方式: I²C 和 SPI ,这里的连接方式是 I²C,模块接入掌控拓展板的P19(SCL)和P20(SDA)。

 


回复

1494

帖子

0

资源

一粒金砂(高级)

bme280环境传感器指令

bme280是一款集成温度、湿度、气压,三位一体的环境传感器,具有高精度,多功能,小尺寸等特点

温度检测范围:-40℃~+85℃,分辨率0.1℃,误差±0.5℃
湿度检测范围:0~100%RH,分辨率0.1%RH,误差±2%RH
压力检测范围:300~1100hPa
湿度测量响应时间:1s

 

bme280.temperature()
描述: 返回温度值,单位摄氏度

 

../_images/bme280.png
bme280.pressure()
描述: 返回大气压值,单位Pa

 

bme280.humidity()
描述: 返回环境湿度,单位%

08.jpg


回复

1494

帖子

0

资源

一粒金砂(高级)

#MicroPython动手做(34)——通用传感器的综合运用
#BMP280气压温度传感器

from mpython import *
import music
import time


music.play('D5:1')
rgb[1] = (int(0), int(102), int(0))
rgb.write()
time.sleep_ms(1)
while True:
    oled.fill(0)
    oled.DispChar("气压温度计", 0, 0, 1)
    oled.DispChar((''.join([str(x) for x in ["温度:", round(bme280.temperature(), 1), " 度"]])), 0, 15, 1)
    oled.DispChar((''.join([str(x) for x in ["湿度:", round(bme280.humidity(), 1), " %"]])), 0, 30, 1)
    oled.DispChar((''.join([str(x) for x in ["气压:", round(bme280.pressure(), 1), " 帕"]])), 0, 45, 1)
    oled.show()
    time.sleep(2)

 


回复

1494

帖子

0

资源

一粒金砂(高级)

出错信息如下:          

                                                                          
Traceback (most recent call last):                                                         
  File "main.py", line 13, in <module>                                                     
NameError: name 'bme280' isn't defined                                                     
MicroPython v2.0.1-3-g312406c-dirty on 2020-01-16; mpython with ESP32                      
Type "help()" for more information.                                                        
>>>   

 

好像是未定义bme280,在多个平台试了二天,未解决

 

09.jpg


回复

1494

帖子

0

资源

一粒金砂(高级)

mPython X 实验图形编程

 

10.jpg


回复

1494

帖子

0

资源

一粒金砂(高级)

11.jpg

6、 HC-SR04超声波测距传感器模块

 

HC-SR04

超声波测距模块是用来测量距离的一种产品,通过发送和收超声波,利用时间差和声音传播速度,计算出模块到前方障碍物的距离。超声波测距模块具有测距距离精确,能和SRF05,SRF02等超声波测距相媲美,测量距离 ** 2cm~450cm (实测:10cm~300cm)。

 

超声波测距模块有好多种类型,比较常用的有URM37超声波传感器默认是232接口,可以调为TTL接口,URM05大功率超声波传感器测试距离能到10米,算是测试距离比较远的一款了,另外还有比较常用的国外的几款SRF系列的超声波模块,超声波模块精度能到1cm。


回复

1494

帖子

0

资源

一粒金砂(高级)

12 (1).jpg

超声波模块工作原理——
1)采用IO触发测距,给至少10us的高电平信号。
2)模块自动发送8个40KHz的方波,自动检测是否有信号返回。
3)有信号返回,通过IO输出一高电平,高电平持续时间就是超声波从发射到返回的时间。只需要提供一个10uS以上脉冲触发信号,该模块内部将发出8个40kHz周期电平并检测回波。一旦检测到有回波信号则输出回响信号。回响信号的脉冲宽度与所测的距离成正比。由此通过发射信号到收到的回响信号时间间隔可以计算得到距离。

 

公式: uS/58=厘米或者uS/148=英寸;或是:距离=高电平时间*声速(340M/S) /2;建议测量周期为60ms以上,以防止发射信号对回响信号的影响。

 

12 (2).jpg


回复

1494

帖子

0

资源

一粒金砂(高级)

13.jpg

 

超声波模块主要技术参数
1:使用电压:DC---5V   
2:静态电流:小于2mA       
3:电平输出:高5V     
4:电平输出:底0V         
5:感应角度:不大于15度    
6:探测距离:2cm-450cm 
7:   高精度 可达0.2cm    
8:   接线方式:VCC、trig(控制端)、 
echo(接收端)、 GND

使用说明:
1、此模块不宜带电连接,若要带电连接,则先让模块的GND端先连接,否则会影响模块的正常工作。
2、测距时,被测物体的面积不少于05平方米且平面尽量要求平整,否则影响测量的结果。


回复

1494

帖子

0

资源

一粒金砂(高级)

HC-SR04超声波传感器测距实验

 

#MicroPython动手做(34)——通用传感器的综合运用
#HC-SR04超声波传感器测距实验

from hcsr04 import HCSR04
from mpython import *
import music
import time

hcsr04 = HCSR04(trigger_pin=Pin.P13, echo_pin=Pin.P14)



music.play('D5:1')
rgb[1] = (int(0), int(102), int(0))
rgb.write()
time.sleep_ms(1)
while True:
    oled.fill(0)
    oled.DispChar("超声波测距仪", 25, 10, 1)
    oled.DispChar((''.join([str(x) for x in ["测量距离:", str(hcsr04.distance_mm()), "mm"]])), 10, 28, 1)
    oled.show()
    time.sleep_ms(1000)

 

 


回复

1494

帖子

0

资源

一粒金砂(高级)

HC-SR04超声波传感器测距实验

 

19.gif


回复
您需要登录后才可以回帖 登录 | 注册

最新文章 更多>>
    关闭
    站长推荐上一条 1/6 下一条

    About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

    站点相关: 安防电子 汽车电子 手机便携 工业控制 家用电子 医疗电子 测试测量 网络通信 物联网

    北京市海淀区知春路23号集成电路设计园量子银座1305 电话:(010)82350740 邮编:100191

    电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2021 EEWORLD.com.cn, Inc. All rights reserved
    快速回复 返回顶部 返回列表