我有两个问题:
- 我们想在我们的水下传感器网络中考虑一个非常低的传输占空比,因为在实践中,监听和睡眠模式下的功耗将主导我们的网络生命周期。我注意到新版本的 UnetStack Simulator 3.2.0 中的调度程序命令,addsleep,showsleep 等,我下载了最新版本的模拟器,我尝试使用这些命令,但它不起作用,我试过了在 shell 和 groovy 脚本中工作,并尝试导入 org.arl.unet.scheduler,但调度程序命令都不起作用,并且不断收到错误。例如,我尝试使用:addsleep 20.s.later,但模拟器无法识别“later”,使用 import org.arl.unet.scheduler 也收到错误。
我想知道是否有人可以帮助我,例如如何使用addsleep 命令。
另一个问题:除了在传输和接收中消耗能量外,我们的调制解调器在侦听数据包开始时从 5V 电源汲取 2.5 mA 的电流,并且可以进入睡眠状态并从 5V 电源汲取约 0.24 mA 的电流,并能够唤醒并在可编程的时间段后返回收听模式。所以我的问题是,有没有办法在一个简单的能量模型中考虑空闲聆听和睡眠所消耗的能量?我们实现了一个非常简单的能量模型,如下所示(在 stackoverflow 中找到了这个示例):
类 MyHalfDuplexModem 扩展 HalfDuplexModem {
浮动能量 = 1000
@Override boolean send(Message m) { if (m instanceof TxFrameNtf) energy -= 10
if (m instanceof RxFrameNtf) energy -= 1
return super.send(m) }}
如何将空闲收听和睡眠消耗的能量添加到上述代码中?我们是否需要使用 WakeFromSleepNtf () 之类的东西
谢谢,非常感谢任何帮助。马尔瓦