介绍如何使用java工具从PC端插入数据到传感器网络中,以及多跳传输协议的使用。
# 使用java工具BcastInject来插入控制数据包的实验步骤:
1, 编译apps/SimpleCmd程序到一个节点上(此程序可以识别插入的几个简单控制命令)
2, 编译apps/TOSBase程序到另一个节点上
3, 打开SerialForwarder程序:
java net.tinyos.sf.SerialForwarder -comm serial@COM1
4, 插入控制数据包:
java net.tinyos.tools.BcastInject <group_id> <command>
# 练习:给SimpleCmd程序增添控制命令,如发声器的开关
# 多跳网络实验:SimpleCmd程序所在节点会广播所接收到的新命令。
设置SimpleCmd程序的工作模式,修改apps/SimpleCmd/Makefile中的
COMPONENT=SimpleCmd 为 COMPONENT=Bcast,然后重新编译。
SimpleCmd程序的Bcast组件根据所接收数据包的序列号来判断是否是新数据包,BcastInject程序通过tools/java/bcast.properties文件来维护所发数据包的序列号,删除之,则再从1开始。
# 只要与当前节点维持的序列号的差距不超过127即判断为新包,这是考虑到信道不稳定会丢包而采取的简易措施。实际应用时,应当采取序列号增1判断等更为合理的策略。
# 练习一
SimpleCmdM 程序用节点上的红绿灯来表示数据包经过的跳数,