第七章 TinyOS典型应用

第一节 传感

    1.运行Oscilloscope应用

    进入tinyos-2.x/apps/Oscilloscope目录,根据具体的平台,输入“make micaz install.1”,将Oscilloscope应用下载到节点。需要说明一点的是,“install”之后的“.1”是指定节点的ID号,分配不同的节点ID号有助于在图形用户界面中分辨不同节点。所以,应当确保给所有的Oscilloscope节点分配了不同的ID号(例如,下载Oscilloscope应用到第2个节点可以输入“make micaz install.2”命令,以此类推)。Oscilloscope节点会在每次发送信息时切换LED2的显示状态,接收消息时切换LED3的状态,而在无线电连接出现问题时,就会切换LED1的状态。Oscilloscope节点能够接收到包含有控制信号的消息,从而实现不同节点的采样同步,还可以改变采样速率。

    下载BaseStation应用程序到另一个节点,并将其插到计算机的串口,每当有信息从无线网络桥接到串口时,LED2就会闪烁。

    2.运行Java图形界面

    在“/apps/Oscilloscope/java”目录输入“make”命令,然后启动SerialForwarder工具,确认其连接到基站节点串口;接着就可以运行GUI工具,在“/apps/ Oscilloscope/java”目录输入“./run”命令,得到如图7-1所示的图形窗口。

    每一个节点用不同颜色的线条表示,横轴表示接收到数据包的序号,而纵轴表示数据包里包含的传感器采样值。为了改变采样速率,可修改“sample period(ms)”栏。当修改采样周期并确认后,包含采样数率的消息将被发送到BaseStation节点,由其广播到网络中的所有节点。

    Oscilloscope(或Sense)应用程序显示的都是在Read.readDone事件中获得的原始数据,从图形界面的纵轴可以大概了解到数据的波动范围。

 Oscilloscope图形界面

图7-1  Oscilloscope图形界面