我正在尝试使用 Cooja 为无线传感器网络实现唤醒无线电功能。因为,我是 Cooja 的新手,有没有人以前做过这个,或者知道如何在 Cooja 中将其作为插件实现。
唤醒无线电 (WuR) 基本上是连接到主节点的辅助无线电,可以是带内或带外无线电。该 WuR 是一款功耗极低 (nA) 的设备,可以一直保持开启状态并监控通道。在传输有效数据后,它将向另一个唤醒接收器发送唤醒呼叫,然后该接收器将通过中断引脚唤醒主节点。
如果任何人都可以提供一些关于如何实现此辅助无线电的指南,那将非常有帮助。
Cooja 旨在支持 802.15.4 无线电。如果您只需要带内唤醒,则可以通过监视信号强度的变化来扩展现有无线电之一。这可能比编写第二个收音机更容易。
如果您想要带外功能(即不是 802.15.4),您将需要添加一些并行无线电 - 或扩展现有型号之一 - 和无线电。有一些关于 Cooja 和 PLC 的东西。这可能是一个很好的起点。
基本上,您必须决定是否可以扩展现有内容或需要并行实现某些内容 - 特别是针对哪个平台。幸运的是,Cooja 是结构更好的项目之一(尽管一些实际代码非常丑陋)。因此,花一两天阅读源代码可能是个好主意。
我刚刚花了一些时间深入研究 Cooja 的无线电代码:您可以使用 CustomDataRadio 接口。理论上它应该允许您使用无线电介质发送特殊对象。但我并没有深入研究它到底是如何工作的。