2017-10-21 48 views
0

由于Castalia通常的做法是应用程序模块使用requestsensorreading()函数请求传感器读取,该函数由传感器管理器处理。传感器管理员将请求转发给物理过程,物理过程回复其值。如何在Castalia中设置物理过程的计时器?

我想要做的是,我希望物理过程以设定的时间间隔广播它的值。传感器设备将具有> 0的灵敏度,并且很少节点将接收该值。我怎样才能做到这一点?是否有可能在物理过程中使用timerFiredCallback函数和BROADCAST_NETWORK_ADDRESS?

回答

0

您似乎对Castalia的基本模型感到困惑。物理过程不是传送网络广播消息的传感器节点。它是模型 我们的传感器节点中的传感器进行采样的物理过程的模块。此外,一个物理过程没有一个值。值取决于空间和时间,并取决于您定义的特定模型(手册中有关于如何定义物理过程的大量信息)。您可以定义一个物理过程,只为空间中的每个点返回一个值每一个时间点,但我不知道为什么你想在模拟中使用这样一个过程。

物理过程不会“广播其价值”。传感器节点对物理过程进行抽样,并基于空间,时间以及他们获取值的过程的特定模型。不同的传感器节点可能会返回不同的值。为了达到您想要的效果,您只需使所有传感器节点定期对物理过程进行采样。有一些应用程序可以做到这一点。所以要回顾一下:你可以定义你的物理过程需要如何表现,然后你让传感器节点对它进行采样(从应用程序模块使用方法requestSensorReading(),正如你所知道的那样)。

+0

是的,我现在明白了。谢谢你清除我的疑惑。 –

相关问题