当前位置: 首页 > news >正文

WSN_1 介绍;部分应用介绍

学习自书籍:Fundamentals of Wireless Sensor Networks.

WSN 介绍

传感器

从基础角度说,传感器观测采集现实世界的一些数据。

另一个名称是 transducer 换能器,指传感器将一些形式的信号转换为其他形式的信号,如光敏传感器 光→电信号。

传感器还可以调整信号,如去除特定频率中的噪声,进行 AD 转换等。

有的传感器还包括执行器,可以控制物理世界,如检测水位过低时打开闸门注水。

WSN

无线传感器网络里众多传感器一同检测物理环境,彼此之间可以相互通信,与基站可以通信以便将数据发送到更远的地方,而且传感器节点自己有一定数据处理能力,可以分析、聚合多个传感器的数据。

WSN 的通信

IEEE 802.11 是早期 WSN 常用的通信方式。它让具体不同协议在不同的频段下工作。但是 WSN 要求低功耗,与 IEEE 802.11 不合,促进了其他更低功耗协议的发展。

image-20230223140614133

当所有传感器节点的传输范围足够大,且可以将数据直接传输到基站时,可以形成左图所示的星型拓扑。但是这样全部采用单挑,功耗2还是不太合适。

因此,离得比较近的传感器节点可以作为多跳的中继节点,诞生了这样的网状结构。而且当其承载的其他多跳节点数量多到一定程度时,可以考虑利用这个结点对收集到的数据进行分析处理,减轻控制中心的负担。

WSN 的挑战

energy

众多的传感器,其能源供给是个问题。电池可否充电 ?如何充电?一般根据具体应用例子来决定。比如要采集几年以上的冰川数据,这种传感器最好是可以充电而且在该环境中便于充电的;而临时测一次的数据,可能用一次性用完即丢的传感器更划算。

能源的管控不只限制于硬件的开发,也需要网络协议、操作系统的良好设计。

自我管理能力

在极端环境下运行的一些传感器,我们希望其抗压能力比较强,以及遇到故障等的处理能力强。这方面一般对自组织网络能力要求较高。如,飞机空投的传感器机器人,可能绝对位置要求不高,我们需要其落地后迅速查找周围存活的节点并构建起通信网络。

Wireless Networking

信号在传输过程中会逐渐衰减。特别是还可能遇到一些障碍物的情况。

我们要考虑结点与基站之间的距离的问题,要考虑结点与中继路由之间距离的问题。有些网络采用占空比来节约能量,即不是所有结点一直开着的,用的时候打开,这样的网络我们还要考虑需要传输数据时开启哪些结点路径等问题。

分散管理

由于能耗和容量等问题,我们知道信号都发到中心基站处理不太好。

我们可以让部分结点自己分而治之,自己做出自己的路由决策。

这样的决策不一定是全局来看最佳的决策,但是一定是最节能的。

设计约束

硬件、操作系统、网络协议、中间件等众多制约因素。

安全

结点可能遭受攻击、数据窃取,还要设计算法和一定的算力来尽可能保护结点。

总结

相较于一般网络,WSN 更多的是专门为某种特定目的而设计的网络。其也会因需求而微调自己的设计,如低延迟需求、高存储多硬件需求等。

应用

本章节主要讨论 WSN 的一些应用及其实现。

结构健康检测

如桥梁结构,我们知道桥梁一旦崩塌后果不堪设想。

以往人力如何监测桥梁健康?

道路维修员每天巡视,专家等会来进行仔细检查。道路维修员费人力,而且监测效果不一定好;专业检查员则需要耗费大量财力物力时间,比较繁琐。

检测技术一般分为两种:仔细些的局部监测,和全局监测。局部检测可以探测出一些难以察觉的裂缝,需要超声波、x光等技术,但是比较影响桥梁的正常运行;全局监测则是通过一些如骑车驶过桥面时桥面的形变量变化监测的,也可以强行施加一些外力,如拿锤子砸。

优势有以下几点:传感器结点可以到达一些大型测量设备无法到达的结构;多个节点之间可以汇总定位出出问题的结构的具体位置;传感器节点测试更少停止桥梁的正常通行。

交通控制

随着私家车越来越多,拥堵和事故也出现的越来越多。可以通过 WSN 输入街道状况,并计算向司机告知最佳道路的建议。

医疗健康

可以检测身体状态,应对很多人没有时间和钱财去医院检查治疗的问题,并及时提供救治。

管道检测

检测最好能持续的检测,但我们知道这不方便。WSN 也可以一定程度地解决这个问题。

精准农业

可以检测气候、虫害、土壤状况等,甚至包括一些农民伯伯自己仅凭人力很难检测的指标。

活火山检测

这个属于是比较危险,还挺需要检测的例子。可以用很多廉价些的 sensor 结点,对网络的需求也没那么高;等。

地下开采

旷工采矿,以及一些地下救援活动,不仅可以较精确定位,还可以探测气体泄漏等危险。

相关文章:

WSN_1 介绍;部分应用介绍

学习自书籍:Fundamentals of Wireless Sensor Networks. WSN 介绍 传感器 从基础角度说,传感器观测采集现实世界的一些数据。 另一个名称是 transducer 换能器,指传感器将一些形式的信号转换为其他形式的信号,如光敏传感器 光…...

linux常用命令介绍 05 篇——实际应用篇(用 cut、uniq等统计文档里每个关键词出现的次数)

linux常用命令介绍 05 篇——实际应用篇(用 cut、uniq等统计文档里每个关键词出现的次数)1. 先导文章——关于行过滤 和 列截取2. 关于单个统计单词个数2.1 grep2.2 wc3. 统计文档中每个关键词出现的次数3.1 先看文档内容 需求3.1.1 文档内容3.1.2 需求…...

大数据处理学习笔记1.7 Scala类与对象

文章目录零、本节学习目标一、类(一)类的定义(二)类的实例化二、单例对象(一)单例对象概念(二)案例演示三、伴生对象(一)伴生对象概念(二&#xf…...

Feign踩坑源码分析 -- 请求参数分号变逗号

一.案例 1.1.Post请求: http://localhost:8250/xx/task/test json格式参数: {"string": "a;b;c;d" } 1.2.controller代码: AutowiredDataSourceClientService dataSourceClientService;RequestMapping("/test"…...

nginx通用history模式刷新

注:1.通用配置只支持二段路由,二段及以上依然需要单独进行配置 2.所有location后面的路径,都需要使用通配符进行配置 location ^~ /phdp/ {try_files $uri $uri/ /phdp/index.html;index ruoyi.html index.html index.htm;}location ^~ /phdp-api/ {client_max_body_size 20m;p…...

Linux系统安装:Zookeeper

目录 Zookeeper的安装 1、环境准备 2、上传 3、解压文件到opt/zookeeper目下 4、安装完后进入zookeeper,找到conf目录 5、复制zoo_sample.cfg 6、编辑zoo.cfg 7、复制一份会话,进入zookeeper安装目录,创建一个文件夹zkdata&#xff0…...

cocos2dx+lua学习笔记:UIPageView的使用

前言 本篇在讲什么 本篇简单介绍Lua篇cocos2dx中UIPageView的相关内容 仅介绍简单的应用,仅供参考 本篇适合什么 适合初学Cocos2dX的小白 适合想要在Cocos2dx-lua中使用UIPageView的人 本篇需要什么 对Lua语法有简单认知 对Cocos2dx-Lua有简单认知 Cocos2…...

MyBatis常见面试题汇总(超详细回答)

目录 1.什么是Mybatis? 2.Mybatis的优缺点? 3.#{} 和 ${} 的区别是什么? 4.xml 映射文件中有哪些标签? 5.模糊查询 like 语句该怎么写? 6.Mapper 接口的工作原理是什么?Mapper 接口里的方法,参数不同…...

Jvm调优实战笔记

一、基础命令jps 查看所有java进程jinfo 进程号 查看该线程相关信息3、jstat 统计信息(数据跟踪信息)jstat -gc 进程号 查看该线程在内存中每一块占用的大小jstat -gc 进程号 时间(毫秒) 更新频率4、jstack 跟踪线程jstack 进程号…...

JVM 全面了解

JVM包含两个子系统和两个组件,两个子系统为Class loader(类装载器)、Execution engine(执行引擎);两个组件为Runtime data area(运行时数据区)、Native Interface(本地接口)。 方法区:存储已被虚拟机加载的类元数据信息(元空间) 堆&#xf…...

阿里开源自研高性能核心搜索引擎 Havenask

去年12月,阿里开源了自研的大规模分布式搜索引擎 Havenask(内部代号 HA3)。  Havenask 是阿里巴巴内部广泛使用的大规模分布式检索系统,支持了淘宝、天猫、菜鸟、优酷、高德、饿了么等在内整个阿里的搜索业务&#…...

nginx日志服务之敏感信息脱敏

1. 创建实验资源 开始实验之前,您需要先创建实验相关资源。 日志服务之敏感信息脱敏与审计 2. 创建原始数据 本步骤将指导您如何创建NGINX模拟数据。 双击打开虚拟桌面的Firefox ESR浏览器。 在RAM用户登录框中单击下一步,并复制粘贴页面左上角的子…...

【uni-app教程】一、UniAPP 介绍

一、UniAPP 介绍 (1) 什么是 UniAPP? uni-app 是一个使用 Vue.js 开发所有前端应用的框架,开发者编写一套代码,可发布到 iOS,Android,HS,以及各种小程序(微信/支付宝/百度/头条/QQ/钉钉》等多个平台&#…...

Splunk Real-time Search 的研究

最近客户想搞清Splunk real-time search 和related search 有啥区别,想两个都试试,看看效果。 为了更好的说明什么是real-time search, 先看一下: With real-time searches and reports, you can search events before they are indexed and preview reports as the event…...

SWM181 串口功能使用介绍

SWM181 串口功能使用介绍📌SDK固件包:https://www.synwit.cn/kuhanshu_amp_licheng/✨注意新手谨慎选择作为入门单片机学习。🌼开发板如下图: 📋SWM181描述上写了有4个串口,在数据手册上,将引脚…...

Stochastic Approximation 随机近似方法的详解之(三)Dvoretzky’s convergence theorem

定理内容 Theorem 6.2 (Dvoretzky’s Theorem). Consider a stochastic process wk1(1−αk)wkβkηkw_{k1}\left(1-\alpha_k\right) w_k\beta_k \eta_kwk1​(1−αk​)wk​βk​ηk​, 其中{αk}k1∞,{βk}k1∞,{ηk}k1∞\{\alpha_k\}^\infty_{k1},\{\beta_k\}^\infty_{k1},\…...

7个ES6解构技巧让代码更简洁

您是否厌倦了编写臃肿且难以阅读的代码?想要提升您的编码技能并使您的代码更具可读性和简洁性? 从解构对象和数组到使用默认值和展开运算符,我们将涵盖所有内容,现在,我们将准备好掌握干净简洁的编码艺术。 1.解构对…...

曾经被人们看成是异想天开的产业互联网,或许终将会实现

一波还未平息,一波又起。元宇宙的热度还未彻底散去,ChatGPT已经成为了名符其实的新风口。如果用一个概念来定义现在这样一个热点和风口频出的时代的话,我想,用产业互联网或许是再合适不过的了。对此,可能有人并不认同。…...

log4j控制台不打印日志的故障解决方案

前言 接管了别的项目组的一个代码,在IDAE调试程序的过程中,发现log4j日志居然没有打印在控制台上,日志相关代码也没有问题。 在网上搜索了一圈,总结了一下个人解决这个问题的流程。 流程 1. 判断用了什么配置文件 不知道是出…...

C# 序列化时“检测到循环引用”错误的彻底解决方案

目录 一&#xff0c;问题表现 二、没有技术含量的解决方案 三、本人彻底的解决方案 简要说明 贴代码 思路解析 思路 一&#xff0c;问题表现 示例代码如下&#xff1a; [Serializable] public class NodeTest {public NodeTest (){new List<NodeTest> ();}p…...

Vue记事本应用实现教程

文章目录 1. 项目介绍2. 开发环境准备3. 设计应用界面4. 创建Vue实例和数据模型5. 实现记事本功能5.1 添加新记事项5.2 删除记事项5.3 清空所有记事 6. 添加样式7. 功能扩展&#xff1a;显示创建时间8. 功能扩展&#xff1a;记事项搜索9. 完整代码10. Vue知识点解析10.1 数据绑…...

多模态2025:技术路线“神仙打架”,视频生成冲上云霄

文&#xff5c;魏琳华 编&#xff5c;王一粟 一场大会&#xff0c;聚集了中国多模态大模型的“半壁江山”。 智源大会2025为期两天的论坛中&#xff0c;汇集了学界、创业公司和大厂等三方的热门选手&#xff0c;关于多模态的集中讨论达到了前所未有的热度。其中&#xff0c;…...

Mac软件卸载指南,简单易懂!

刚和Adobe分手&#xff0c;它却总在Library里给你写"回忆录"&#xff1f;卸载的Final Cut Pro像电子幽灵般阴魂不散&#xff1f;总是会有残留文件&#xff0c;别慌&#xff01;这份Mac软件卸载指南&#xff0c;将用最硬核的方式教你"数字分手术"&#xff0…...

用docker来安装部署freeswitch记录

今天刚才测试一个callcenter的项目&#xff0c;所以尝试安装freeswitch 1、使用轩辕镜像 - 中国开发者首选的专业 Docker 镜像加速服务平台 编辑下面/etc/docker/daemon.json文件为 {"registry-mirrors": ["https://docker.xuanyuan.me"] }同时可以进入轩…...

项目部署到Linux上时遇到的错误(Redis,MySQL,无法正确连接,地址占用问题)

Redis无法正确连接 在运行jar包时出现了这样的错误 查询得知问题核心在于Redis连接失败&#xff0c;具体原因是客户端发送了密码认证请求&#xff0c;但Redis服务器未设置密码 1.为Redis设置密码&#xff08;匹配客户端配置&#xff09; 步骤&#xff1a; 1&#xff09;.修…...

在web-view 加载的本地及远程HTML中调用uniapp的API及网页和vue页面是如何通讯的?

uni-app 中 Web-view 与 Vue 页面的通讯机制详解 一、Web-view 简介 Web-view 是 uni-app 提供的一个重要组件&#xff0c;用于在原生应用中加载 HTML 页面&#xff1a; 支持加载本地 HTML 文件支持加载远程 HTML 页面实现 Web 与原生的双向通讯可用于嵌入第三方网页或 H5 应…...

VM虚拟机网络配置(ubuntu24桥接模式):配置静态IP

编辑-虚拟网络编辑器-更改设置 选择桥接模式&#xff0c;然后找到相应的网卡&#xff08;可以查看自己本机的网络连接&#xff09; windows连接的网络点击查看属性 编辑虚拟机设置更改网络配置&#xff0c;选择刚才配置的桥接模式 静态ip设置&#xff1a; 我用的ubuntu24桌…...

Python Ovito统计金刚石结构数量

大家好,我是小马老师。 本文介绍python ovito方法统计金刚石结构的方法。 Ovito Identify diamond structure命令可以识别和统计金刚石结构,但是无法直接输出结构的变化情况。 本文使用python调用ovito包的方法,可以持续统计各步的金刚石结构,具体代码如下: from ovito…...

并发编程 - go版

1.并发编程基础概念 进程和线程 A. 进程是程序在操作系统中的一次执行过程&#xff0c;系统进行资源分配和调度的一个独立单位。B. 线程是进程的一个执行实体,是CPU调度和分派的基本单位,它是比进程更小的能独立运行的基本单位。C.一个进程可以创建和撤销多个线程;同一个进程中…...

4. TypeScript 类型推断与类型组合

一、类型推断 (一) 什么是类型推断 TypeScript 的类型推断会根据变量、函数返回值、对象和数组的赋值和使用方式&#xff0c;自动确定它们的类型。 这一特性减少了显式类型注解的需要&#xff0c;在保持类型安全的同时简化了代码。通过分析上下文和初始值&#xff0c;TypeSc…...