所有栏目 | 云社区 美国云服务器[国内云主机商]
你的位置:首页 > 云社区 » 正文

传感器网络一定要时间同步吗?为什么?

发布时间:2020-04-15 16:46:12

资讯分类:传感器网络  同步  时间  误差  精度
传感器网络一定要时间同步吗?为什么?

既然是传感器网络,在整个网络中应该是使用了很多传感器。

传感器的用量大,在考虑整个系统成本时,单个传感器的成本对整个系统的成本影响比较大。

设备实现RTC功能,主要考虑RTC的两个性能,

1)是否断电记忆,如果需要断电记录,在传感器上应该有给RTC模块供电的电池。

否则,断电重启之后,RTC时间被清零,需要重新设置。

2)RTC时间的精度,MCU内置的振荡器为RC振荡器,RC振荡器精度在5%左右,而且受温度等环境影响大,如果用RC振荡器作为RTC的时钟源,一天的时间误差在4320s,即1个多小时,这显然是不能接受的。

RTC一般会采用32.768kHz的外接晶振,该晶振的振荡频率精度也易受温度,湿度,匹配电容,寄生电容等的影响,综合考虑各种影响因素,一般可以达到50ppm的精度.

一天的时间误差为:

3600*24*50/1000000=4.32s.

一年的时间误差达到1576s,差不多半个小时.

因为32.768KHz晶振本身的电容一般为12.5PF,都没有极性之分,两边的电容具体参数要根据电路设计来匹配的.

采用普通32.768kHz的晶振实现RTC功能,所需的关键器件为具有RTC功能的MCU,(MCU断电时,RTC功能模块需要在外接电池的供电下继续计时),外接可充电电池,32.768kHz的晶振,总体成本大概在2元左右.

而且会占用大概几个平方厘米的PCB板面积.

如果选用具有温度补偿功能的高精度的晶振,其精度一般可以做到小于5ppm,一天的时间误差小于0.5s,一年的时间误差小于150s.

而这样高精度的晶振,价格比较高,可能会高达10元/pcs.

所以综合成本,体积等方面的考虑,传感器可能都不会实现RTC时间的功能.

通常的做法可能是用纯软件编写日历算法,采用MCU工作频率进行计时.

这种方法,在控制器断电之后 ,时间会归零,而且误差比较大,所以需要有一个中控设备进传感器进行定时同步时钟,同步的时间间隔可以根据实际应用场景的时间精度要求,以及传感 器的计时误差来确认.

比如传感器计时精度为1%,而应用场景的时间精度要求需要控制在10s以内,则需要在1000s内同步一次时间.


传感器网络一定要时间同步吗?为什么?

基本上,不过也看需求。

传感器网络一般用作决策引擎的感知部分,所以事件最好是时间相关的,这样会方便执行定时操作。当然传感器本身也可以选择不加时间戳,只产生事件,具体时间由达到的处理单元进行分发,但是这样在大量事件并发条件下其实会有问题,决策引擎也会错误8算事件之间的关系,所以最方便的自然是传感器网络本身进行时间同步,上传携带时间戳的事件,这样也方便决策引擎方面的设计和功能实现。

留言与评论(共有 0 条评论)
   
验证码:
Top