无线通信具有一些天生优势:投入成本低,扩展灵活性大,跨越空间阻碍。我们推测以下将成为未来的趋势:
l市电供电的设备(电视机、音响等)采用诸如UWB之类的高速短距离无线,
l电池供电的设备(能耗表计,自行车等)将会采用微功率无线,
l手持设备(手机,平板电脑等)继续使用4G/5G的移动通信技术。
更大胆的推测是,随着生物识别技术、大容量储能和柔性屏幕材料突破,显示和通信将会无处不在,手机可以会消失,付款按指纹即可。
是时候,让我们一起揭开无线通信的神秘面纱,了解下原理,接触一个即将来临身边的微功率无线通信。

一 无线通信原理

在通信系统中,我们需要弄清模拟和数字的关系:一个模拟信号就是一个连续变化的电磁波,一个数字信号是一个电压脉冲序列。看一个实例,下图选自经典教材《无线通信与网络(第二版)》,电话通信是典型的模拟数据(声波)通过模拟信号传输;家庭宽带拔号上网是典型的数字数据(计算机只能处理数字信号)通过模拟信号(由“猫”完成调制)传输,同时模拟信号也可以转换成数字信号(由“猫”完成解调);计算机局域共享则是典型的数字数据通过数字信号传输。
通信信号的第一个“敌人”是噪声,如下图所示,噪声会影响数字位,足以将1变为0,或将0变为1。
无线传播主要有3种类型:地波传播、天波传播和直线传播,如下图所示。
无线信号除直线传播外,因为阻碍物的存在,还会发现如下图所示的3种传播机制:反射(R)、散射(S)和衍射(D),因为传输路径的不同而引起多径衰退是无线通信的一个挑战。
因为电磁波是连续的模拟信号,无线通信中数字数据都需要调制成模拟信号,常见的方法有:ASK(幅移键控)、FSK(频移键控)和PSK(相移键控),如下图所示。

二LoRa扩频通信

1944年,好莱坞26岁女影星HedyLamarr(号称世界上最美丽的女人)发明了扩频通信技术,这种跳频技术可以有效地抗击干扰和实现加密。
后来人们发现,扩频技术可以得到如下收益:从各种类型的噪声和多径失真中获得免疫性;得到信噪比的增益。换句话说,使用扩频通信抗干扰性更强,通信距离更远。CDMA和WiFi都使用了扩频技术。
扩频调制的示意图如下所示,用户数据的原始信号与扩展编码位流进行XOR(异或)运算,生成发送信号流,这种调制带来的影响是传输信号的带宽有显著增加(扩展了频谱)。
当然扩频技术也不是万能的,它至少有2个弊端:扩展编码调制生成更多片的数据流导致通信数据率下降;较复杂的调制和解调机制。
长期以来,要提高通信距离常用的办法是提高发射功率,同时也带来更多的能耗。电池供电的设备(如水表)一般只能使用微功率无线通信,这样一来就限制了其通信距离。现在,SemTech公司推出的LoRa射频,因为采用了扩频调制技术,从而在同等的功耗下取得更远的通信距离。
2013年SemTech公司推出SX1276/8系列的扩频调制射频芯片,它的实现方式非常巧妙,整个解调器引擎只需要50K个门。功耗低:休眠电流0.2uA,接收电流12mA,发射电流29mA@13dBm,和常见的GFSK芯片Si4438和CC1125接近,但是通信距离是GFSK芯片的3倍。附带说一句,我们国人在IT技术上最大的弱项是硬件呀,基本上IC(集中电路)芯片都靠进口。
SemTech公司官方宣称该芯片可以达到:可视距离15kM,城市环境中3kM的通信距离。根据我们的实测数据:SX1278在1kbps的速率下可以单跳覆盖一个5000多户的小区。这意味着,使用简单的星型组网就可以建立LoRa微功率网络,而GFSK调制的芯片常常需要树型或MESH等复杂的路由网络。
同时,根据我们的使用经验,发现LoRa射频芯片至少有2个弊端:首先,通信速率低,它真正与GFSK拉开通信距离差距的速率都低于1kbps,这意味着LoRa主要用于低速率通信,如传感器数据;另外,1.5~2美金的售价比GFSK芯片高出许多,给产品带来高成本。

三 构建 LoRa 物联网

构建 LoRa 物联网系统,具备一些评估和开发工作量。一般而言,一种无线网络只适应某些通信需求,因此,我们建议用户按“三步走”方法规划物联网。
第一步:提取项目需求
应用场景:家庭 医院 学校 户外 野外
设备规模:10,000
通信距离:5000米
数据量:设备多长时间上报一次?每次上报数据有多少字节?
通信延迟:是否需要 App 下行控制?如需要,最大允许多少秒的延迟?
电池寿命:安装 充电/非充电 电池?一次性工作时间多长?
成本预算:平摊到每个设备上多少钱?
第二步:使用锐米 web 工具,计算:距离,规模,带宽,功耗,拓扑,成本。
第三步:构建如下的 LoRa 物联网系统。
欢迎加入“LoRaWAN论坛”http://lora.timeddd.com/forum.php
TCP/IP最适合在两台电脑间进行大量的资料传输,但是如何使用labview进行tcp通信设计呢? 有一个基本的观念必需要先厘清,那就是LabVIEW中所使用的TCP/IP所能传送的资料格式只有String,所以任何型态的资料在被...
前言:本文参考了网上的一些资料和论述,在此表示感谢!
TCP/IP最适合在两台电脑间进行大量的资料传输,但是如何使用labview进行tcp通信设计呢?
有一个基本的观念必需要先厘清,那就是LabVIEW中所使用的TCP/IP所能传送的资料格式只有String,所以任何型态的资料在被传输前,都要先转成String,今天我们所使用的范例程式,如下图所示。
程式分别有TCP_Server.vi及TCP_Client.vi两只,Server端会开启2055 Port等待Client端来连结,功能就是当Server端已成功和Client端建立连结,会将人机界面上Cluster中所有的Controller资料传到Client上,其中最重要的是资料转换,你必需要先将Cluster资料使用Type Cast.vi来转成String的型态,然后再计算该String的长度,因为Client如果不知道对方所传的资料长度,就无法完整的将资料接收,以下是Server端的程式码。
由上图可得知,Server端使用了I32来传送整个String的长度资讯,而下图是Client的程式,可以明显的发现程式会先收4个byte的资料来转成String的长度资讯,然后再完整的将String资料接收,而address的脚位是用来指定Server的IP位置资讯。
以上所提供的是一个标准的TCP/IP架构,你只需要稍作修改,就可以让现有的程式具有网路资料传输功能。
http://www.loraapp.com/lora-university-case/201508221600/ LoRa无线通信设计(一)原理 噪音会影响无线电波的传输
噪音会影响无线电波的传输
--模块与模块之间的设计,除了大范围的设计模式,更多不属于模式的多种方法调用都可以通信。 --如何设计低耦合的,高内聚的模块之间通信?原则: --1.用管理器用接口,尽量关联接口(管理器),在其它模块...
--模块与模块之间的设计,除了大范围的设计模式,更多不属于模式的多种方法调用都可以通信。
--如何设计低耦合的,高内聚的模块之间通信?原则:
--1.用管理器用接口,尽量关联接口(管理器),在其它模块中用管理器设置和调用,而不是关联具体的类(会导致太错综复杂)。
--2.高内聚控制变量,关于本模块相关的控制尽量写在自身模块中,其它模块调用本模块设置,而不是依赖于其它模块的控制变量。
--这样一个程序员负责自己的模块,赋值其它模块的程序员不需要为本模块维护控制变量。
组件的设计思想也是一个组件做一个单一职责,然后组装作为一个独立管理器或接口(GameObject)。
--内部的通信是通过注册了RegisterMessage到父类数据结构,SendMessage时候父类会分发调用(中介者统一管理)。
--GameObject外部通信,也是要大的对象管理器(map或hashMap)管理,大多数时候是管理器Update,GameObject各自OnUpdate完成自己的逻辑。
--GameObject之间通信,确是要自己创建关联对方对象或节点(transform),通过GameObject.Find("/CamPosCtrl/mainCamera")查找到。
--也是要在大的管理器中进行查找通信。
也是要在大的管理器中进行查找通信,通过数据结构进行大场景管理,游戏框架中调用大管理器模块的接口实现对象的创建,更新,替换,删除逻辑。
--数据结构细节算法->对象实例->数据结构对象管理器=》程序=算法+数据结构
--一个功能要单一又不能随便交给其它类负责(内聚),一类功能的逻辑接口化,模块逻辑需要管理器统一管理(或者客户管理)。
--3.中介者集中管理控制变量,逻辑的耦合度比较高,传递参数过多,需要两个模块制定直接通信的结构体。或者集中到一个中介者数据容器中统一管理控制多个变量。
--4.直接传递控制变量,只对耦合关系很强的。
使用51单片机实现双机通信,T1作为波特率发生器,使用工作模式1,(p197)中断实现,在PROTEUS上仿真实现。要求如下: 1、单片机1发送一个周期的正弦波采样值至单片机2,通过按键选择频率,该按键使用定时器T0计数...
无线通信的健壮性来自2方面的挑战:外部干扰和多径衰退。 外部干扰 在ISM公用频段,频率是十分宝贵的资源。如下图所示,2.4GHz的频段有WiFi、Bluetooth和ZigBee,还有无绳电话、微波炉等,这样一来需要避免同频...
描述:开发实现VC++的计算机端口通信的功能。 具体要求:使用VC++进行数据传输通信,通信可以利用计算机的任何一个接口,能够实现收据的收发功能。 拜托大佬不要把网站上的代码直接复制只过来,哪怕是改一改也好。...
关于网狐框架我使用和了解大致有5年多了,也深知里面的一些坑坑洼洼,其他人写的一些关于网狐框架分析的文章,大多都是贴上大量的代码,模块流程大致的解说,都是一些皮毛解说,并没有点出为什么这么做,还有通信机制...
VC++6.0环境下的OPC通信设计及其在控制系统中的应用 1 引言 随着计算机技术和控制技术的不断发展,现代工业过程控制系统逐渐发展成为现场设备管理,过程管理和商业管理三个层次组成的系统,然而它们之间却存在...
本博文针对LoRa无线通信,在一个5000多户的小区进行测试,当通信速率低于1kbps时,LoRa单跳可以覆盖整个小区。
讨论了几种已有的“无线唤醒”算法,介绍了锐米通信公司LoRa网关唤醒LoRa终端算法的实现。
结合LoRa长距离和低功耗的特性,基于iDC10和iNode组成微功率无线网络,利用时分复用算法将通信带宽最大化利用,利用CAD特性减少侦听达到节能目的。