微波传感器 - 从零开始认识各种传感器【第二十期】

微波传感器|从零开始认识各种传感器

1、什么是微波传感器 

微波传感器是一种利用微波技术进行探测和测量的传感器。

一般来说,微波是波长为1到1000毫米的电磁波。使用微波传感器,在不接触目标物体的情况下,通过检测和分析微波信号的反射、散射等特性,获取目标物体的信息和状态,并实现自动控制、检测、安防、通讯等多种应用。

2、微波传感器是如何工作的 

我们通常使用到的微波传感器大多是微波运动传感器,它是基于多普勒雷达原理设计的微波移动物体探测器。根据多普勒效应,传感器发射的电磁波频率和接收到的由被测对象反射回来的电磁波频率不同,即产生频移,对其进行放大和信号处理就可以实现对移动物体的检测。

不同于红外探测器,微波传感器检测的对象将并不局限于人体,还可检测很多其他的事物。微波传感器不容易受环境温度,湿度,气流,尘埃的影响,具有穿透能力强,灵敏度高的特点,被广泛应用于工业、交通及民用装置中,如车辆测速、自动门、感应灯、倒车雷达等。

微波传感器用于工业和汽车雷达应用,并不是如相机一样产生图像。它们是形成一种点云,可以粗略地指示物体的轮廓和周围环境的基础设施。相对于图像,点云有其不可替代的优势——深度,也就是说它直接提供了三维空间的数据。

3、常见的微波传感器的种类 

微波传感器按照工作频段分类:主要有C波段、X波段、Ku波段、Ka波段等。频率越高,波长就越短,带来更高分辨率的同时大气衰减也就越严重。

微波传感器依据工作方式来分类:分为连续波微波传感器(即前面提到的感应运动的多普勒效应传感器)、调制微波传感器、常用于检测物体位置以及液体的液面位置。还有一种脉冲式发射微波的传感器,由于需要应用比较昂贵的磁体控制脉冲开关,相对应用较少。

4、微波、红外、超声、激光传感器对比

这是常用的几种传感器的特性比较,包括了微波,红外线,超声,激光四种传感器的各自特点。可以看到微波在多项比较中都有较好的表现,但是在成本方面是红外线和超声传感器比较有优势。

5、微波传感器实验演示 

我们来演示使用 MCU 读取显示微波传感器的数据,实验中使用的是一款连续型微波传感器。当周围没有运动物体时,屏幕显示safe,表示安全状态。当检测到物体运动时,屏幕显示warning,表示警告状态。当手在传感器周围移动,可以看到微波传感器可以在很大角度范围内检测到运动物体。

完成代码:

from breakout_colourlcd240x240 import BreakoutColourLCD240x240
from machine import ADC, Pin, Timer, PWM,I2C
from utime import sleep
import time, math,array
#------------------------------------------------------------------############################################################################################################################################    
#初始化#显示屏
width = BreakoutColourLCD240x240.WIDTH
height = BreakoutColourLCD240x240.HEIGHT
display_buffer = bytearray(width * height*2)
display = BreakoutColourLCD240x240(display_buffer)alarm_pin = Pin(20,Pin.IN)
global current_temp                
current_temp = 0        
#-------------------------------------------------------------------#屏幕基本图形绘制def display_init():  display.set_pen(0,255,0)display.rectangle(58,30,13,160)display.circle(64,190,6)display.set_pen(255,0,0)display.text("current", 150, 20, 194, 2)display.text("status", 150, 35, 194, 2)display.update()for i in range(6):display.set_pen(0,200,0)display.pixel_span(80,27 + i*30,10)display.text(str(100 - i *20), 100, 20+i*30, 194, 2)display.set_pen(0,0,220)if i < 5:for j in range(4):display.pixel_span(80,33 + j*6 + i * 30,5)display.update()display.update()
#---------------------------------------------------------------------def display_change(temp, color):global current_tempcurrent_temp = temp#print(temp)if temp ==1 :display.set_pen(color[0], color[1], color[2])display.rectangle(58,30,13,160)display.circle(64,190,6)display.set_pen(0,0,150)display.rectangle(58,20,13,7+int((50-(0*100)/2)/2)*6)display.set_pen(0,0,0)display.rectangle(140,50,100,40)display.set_pen(0,255,0)display.text('safe', 140, 50, 5, 5)display.update()else  :display.set_pen(255,0,0)display.rectangle(58,30,13,160)display.circle(64,190,6)display.set_pen(0,0,150)display.rectangle(58,20,13,7+int((50-(1*100)/2)/2)*6)display.set_pen(0,0,0)display.rectangle(140,50,100,40)display.set_pen(255,0,0)display.text('war', 140, 50, 5, 5)display.update()sleep(1)#----------------------------------------------------------------------def get_temp():Analogvalue=stemp.read_u16()voltage=(81-100*float(Analogvalue)/65535)return voltagedef main():global current_tempcolor = [0,255,0]  timer1 = Timer()#基本图形绘制display_init()#timer1初始化timer1.init(freq=100,mode=Timer.PERIODIC, callback=lambda t:display_change(alarm_pin.value(), color))while True:
#         print(alarm_pin.value())sleep(0.01) 
main()

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/387480.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Matplotlib柱形图大揭秘:让数据‘站’起来,比增高鞋垫还管用!

1. Matplotlib绘制柱形图/柱状图/条形图 柱状图是一种用矩形柱来表示数据分类的图表&#xff0c;柱状图可以垂直绘制&#xff0c;也可以水平绘制&#xff0c;它的高度与其表示的数据成正比关系 # 导包 import numpy as np import pandas as pd import matplotlib.pyplot as p…

机械学习—零基础学习日志(高数16——函数极限性质)

零基础为了学人工智能&#xff0c;真的开始复习高数 这里我们继续学习函数极限的性质。 局部有界性 充分条件与必要条件 极限存在是函数局部有界的充分条件。什么是充分条件&#xff0c;什么是必要条件呢&#xff1f;我这里做了一点小思考&#xff0c;和大家分享&#xff0c…

Windows11下 Visual Studio 2022 + Qt6 的 WebSocket 线程池异步 客户端

Windows11下 Visual Studio 2022 + Qt6 的 WebSocket 线程池异步 客户端 1 开发 WebSocket 客户端1.1 开发环境1.1.1 为Qt 6安装 websockets1.2 .基于Qt6的 QWebSocket 客户端示例1.2.1 实现 WebSocket 客户端1.2.2 创建 QtQWesocketClient1.2.3 创建QWebsocket对象1.2.3.1 添加…

iOS object-C 解答算法:找到所有数组中消失的数字(leetCode-448)

找到所有数组中消失的数字(leetCode-448) 题目如下图:(也可以到leetCode上看完整题目,题号448) 光看题看可能有点难以理解,我们结合示例1来理解一下这道题. 有8个整数的数组 nums [4,3,2,7,8,2,3,1], 求在闭区间[1,8]范围内(即1,2,3,4,5,6,7,8)的数字,哪几个没有出现在数组 …

新装centos7虚拟机如何配置网络,NAT配置固定IP

首先声明&#xff0c;我想使用的是NAT连接模式&#xff0c;并且设置完IP之后&#xff0c;使得这个IP固定住&#xff0c;以后不会再变了。 文章目录 1&#xff0c;打开Vmware软件的【编辑】-【虚拟网络编辑器】2&#xff0c;先选择VMnet8&#xff08;画1处&#xff09;&#xf…

解析capl文件生成XML Test Module对应的xml工具

之前一直用的CAPL Test Module来写代码&#xff0c;所有的控制都是在MainTest()函数来实现的&#xff0c;但是有一次&#xff0c;代码都写完了&#xff0c;突然需要用xml的这种方式来实现&#xff0c;很突然&#xff0c;之前也没研究过&#xff0c;整理这个xml整的一身汗&#…

Hive3:库操作常用语句

1、创建库 create database if not exists myhive;2、选择库 use myhive;3、查看当前选择的库 SELECT current_database();4、查看库详细信息 desc database myhive;可以查看数据文件在hdfs集群中的存储位置 5、创建库时制定hdfs的存储位置 create database myhive2 …

安全防护软件的必要性:从微软蓝屏事件谈起

最近微软遭遇了的大规模蓝屏事件&#xff0c;让全球很多用户措手不及。这次事件告诉我们&#xff0c;保护我们的电脑和数据&#xff0c;安全防护软件是多么重要。 微软蓝屏事件源于网络安全公司CrowdStrike的技术更新错误&#xff0c;导致全球范围内大量Windows用户系统崩溃&a…

什么是五力分析?5分钟带你了解它在企业财务经营中的应用与价值!

如今&#xff0c;随着全球化进程的不断加速&#xff0c;市场环境复杂多变&#xff0c;市场竞争日益激烈&#xff0c;财务经营已经成为了企业应对复杂市场环境、保持自身竞争力的关键。体系化的五力分析平台能够为企业提供一套全面的解决方案&#xff0c;帮助企业在盈利能力、偿…

HamonyOS性能优化工具和方法

性能优化&#xff0c;如何做到更快的启动、更流畅的使用&#xff0c;概括图如下 ArkTS高性能编程&#xff1a; 1. ArkTS规则&#xff1a;有利于方舟编译运行时进行编译优化 2. 使用AOT(Ahead Of Time)模式对应用进行编译优化&#xff1a;方舟编译运行时通过采用PGO(Profile-Gui…

React 学习——组件内通信(兄弟之间)

A组件 > B组件 核心思路&#xff1a; 1、A组件先通过子传父的方式把数据传给父组件App 2、App拿到数据后通过父传子的方式再传递给B组件 import { useState } from "react" function A({onGetMsg}){const AMsg 我是A组件的消息return (<div><button…

ESP-ADF适配到自定义开发板中

ESP-ADF适配到自定义开发板中 前言:项目开发完了,来记录一下开发过程。 安装: 这里采用vscode+ESP-IDF+ESP-ADF的开发方式。 安装esp-idf的方法很简单,网上都是,这里不说了。想用esp-adf那么你idf的环境肯定是已经搭建好了。 安装adf也很简单,一步完成。 按下F1,选…

鸿蒙对接极光推送时候报错1000900010,厂商token获取失败

在AppGallery Connect上配置项目的调试证书&#xff0c;然后手动导入&#xff0c;不要用IDE的自动构建证书&#xff1a; https://developer.huawei.com/consumer/cn/service/josp/agc/index.html#/

web前端开发一、VScode环境搭建

1、VScode安装live server插件&#xff0c;写完代码后&#xff0c;保存就会在浏览器自动更新&#xff0c;不需要再去浏览器点击刷新了 2、创建html文件 3、在文件中输入感叹号 &#xff01; 4、选择第一个&#xff0c;然后回车&#xff0c;就会自动输入html的标准程序 5、…

js_拳皇(下)

文章目录 架构设计视频演示碰撞检测碰撞检测函数 构想血条和计时器全屏后续工作 架构设计 一图胜千言 #mermaid-svg-erOUDyAO5t0XgYyU {font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}#mermaid-svg-erOUDyAO5t0XgYyU .error-icon{…

微信聊天记录丢失怎么办?3款数据恢复大师免费版,你选对了吗?

在这个网络时代&#xff0c;微信可不只是用来聊天的&#xff0c;它还帮我们处理工作、记录生活、保存美好回忆。但是&#xff0c;如果微信里的东西突然没了&#xff0c;那感觉就像是回到了没有网络的黑暗时期&#xff0c;让人焦虑又无助。别怕&#xff0c;今天咱们就来说说大家…

整箱排柜不返工?用易境通散拼系统就OK

想必困扰散货拼柜小伙伴们一大难题就是&#xff0c;怎么把错乱纷繁的货物有序地整箱排柜&#xff0c;并且要保证集装箱高效利用&#xff0c;运输成本尽量降低。这不仅要求操作者具备卓越的统筹规划能力&#xff0c;更需长期积累的实践经验和敏锐的应变能力。易境通散拼系统可以…

HarmonyOS NEXT星河版零基础入门到实战

文章目录 一、HarmonyOS NEXT介绍学习内容1、鸿蒙APP开发2、能力套件开发3、全场景开发适合人群 持续更新中✒️总结 一、HarmonyOS NEXT介绍 放弃安卓框架之后&#xff0c;HarmonyOS NEXT成为真正独立于安卓、iOS的操作系统&#xff0c;堪称是一场史无前例的脱胎换骨。在其众多…

NC 缺失的第一个正整数

系列文章目录 文章目录 系列文章目录前言 前言 前些天发现了一个巨牛的人工智能学习网站&#xff0c;通俗易懂&#xff0c;风趣幽默&#xff0c;忍不住分享一下给大家。点击跳转到网站&#xff0c;这篇文章男女通用&#xff0c;看懂了就去分享给你的码吧。 描述 给定一个无重…

Python | Leetcode Python题解之第300题最长递增子序列

题目&#xff1a; 题解&#xff1a; class Solution:def lengthOfLIS(self, nums: List[int]) -> int:d []for n in nums:if not d or n > d[-1]:d.append(n)else:l, r 0, len(d) - 1loc rwhile l < r:mid (l r) // 2if d[mid] > n:loc midr mid - 1else:l…