Tinyos tutorial learning tips -- lesson 6

原创 2007年10月10日 10:04:00
 
介绍了PC如何与传感器通讯,以及接收Sensor采集的数据并向Sensor发送数据。
1.       直接显示数据包内容:
先进入tools/java目录,输入make命令编译。
再设置环境变量:export MOTECOM=serial@COM1:tmote
                                       (端口) : (比特率,也可以采用数字)
然后开始监听:java net.tinyos.tools.Listen
完毕之后重置环境变量:unset MOTECOM
2.       图形显示数据包内容:
# SerialForwarder程序
java net.tinyos.sf.SerialForwarder -comm serial@COM1:tmote
注意:SerialForwarder监听时不使用MOTECOM变量,而需在命令行参数-comm处指定端口及比特率,这是因为:一般情况下使用SerialForwarder向串口发送包时会用到MOTECOM变量,如果它监听时也用MOTECOM的话,到时候SerialForwarder就只能自己跟自己说话了。把发送的端口和监听的端口分开确定,有助于提高灵活性。
----------------------------------------------------------------------------
# Oscilloscope GUI程序
java net.tinyos.oscope.oscilloscope
注意:保持SerialForwarder运行状态,然后重新打开一个cygwin窗口,然后进入tools/java目录输入命令,打开Oscilloscope程序,可以显示数据包数据的直观图像。
3.       MIG消息接口生成工具
MIG工具:可以为Mote应用程序所使用的消息类型自动生成相应的java类。
net.tinyos.message软件包:提供发送和接收MIG生成的数据包。
NCG:从nesC文件中抽取数据以供其他程序使用。
GraphPanel.java
        // OK, connect to the serial forwarder and start receiving data
mote = new MoteIF(PrintStreamMessenger.err, oscilloscope.group_id);
mote.registerListener(new OscopeMsg(), this);
GraphPanel程序的作用:连接到Serial Forwarder,向其注册自己的数据包及处理函数,然后再监听、接收及发送数据包。
 
# 示例:如何通过MIG生成自定义消息类型的java类?
查看tools/java/net/tinyos/oscope/Makefile里面有如下一条命令:
OscopeMsg.java:
        $(MIG) -java-classname=$(PACKAGE).OscopeMsg $(APP)/OscopeMsg.h OscopeMsg -o $@
其中PACKAGE=net.tinyos.oscope,APP= $(TOS)/../apps/Oscilloscope
这条命令指示MIG到APP路径下找到OscopeMsg.h文件,从中找到OscopeMsg的Struct定义,再以此生成相应的java类:net.tinyos.oscope.OscopeMsg
 

Tinyos tutorial learning tips -- lesson 4

介绍了组件图的层次化分解和无线通信。CntToLedsAndRfm:读取计数器的数值并输出到LED和无线收发模块的栈中。RfmToLeds:从无线收发模块中接收数据并显示到LED中。分别编译到两个节点...
  • mmpire
  • mmpire
  • 2007-10-09 10:28:00
  • 1139

Tinyos tutorial learning tips -- lesson 7

介绍如何使用java工具从PC端插入数据到传感器网络中,以及多跳传输协议的使用。 # 使用java工具BcastInject来插入控制数据包的实验步骤:1,  编译apps/SimpleCmd程序到一...
  • mmpire
  • mmpire
  • 2007-10-10 10:07:00
  • 1073

Tinyos tutorial learning tips -- lesson 1

 #编译Blink到tmote节点上去:首先把节点插到usb口,有无电池都可以,反正灯都会亮。电脑会给出新增硬件提示,驱动在"TinyOS 安装/tinyos 1.11/Windows/光盘/USB ...
  • mmpire
  • mmpire
  • 2007-10-09 10:22:00
  • 1263

Tinyos tutorial learning tips -- lesson 8

介绍了比较完整的一个数据采集程序SenseLightToLog,基础是SimpleCmd,增加了两条命令:一是让节点开始采集数据并存在EEPROM中,二是让节点将EEPROM中的数据通过无线发送器传到...
  • mmpire
  • mmpire
  • 2007-10-10 10:09:00
  • 1150

Tinyos tutorial learning tips -- lesson 2

 # return rcombine(call ADCControl.init(), call Leds.init());返回两个函数返回值的与值。 # 略写(Shorthand)SenseM.ADC...
  • mmpire
  • mmpire
  • 2007-10-09 10:25:00
  • 1128

Tinyos tutorial learning tips -- lesson 3

介绍了task编程,task被用于编写后台处理程序。tinyos具有两级调度机制:task和hardware event handler。Task的声明:task void taskname () {...
  • mmpire
  • mmpire
  • 2007-10-09 10:27:00
  • 1086

Tinyos tutorial learning tips -- lesson 5

如何使用TOSSIM?1,  进入/opt/tinyos-1.x/apps下面的任何一个应用程序目录,如Blink2,  输入make pc并回车,编译得到/build/pc/main.exe3,  ...
  • mmpire
  • mmpire
  • 2007-10-09 10:35:00
  • 2803

[机器学习入门] 李宏毅机器学习笔记-10 (Tips for Deep Learning;深度学习小贴士)

[机器学习入门] 李宏毅机器学习笔记-10 (Tips for Deep Learning;深度学习小贴士) PDF VIDEORecipe of Deep Learning 在 train...
  • soulmeetliang
  • soulmeetliang
  • 2017-06-06 23:00:49
  • 2593

VIM tutorial(中英文)

终端下输入vimtutor出现英文版,输入vimtutor zh出现中文版本(不过是繁体的) 英文版: ========================================...
  • Galaxy_Li
  • Galaxy_Li
  • 2012-07-07 00:11:44
  • 1923

deep learning tutorial 翻译 (theano 学习笔记)

theano学习指南,主要翻译官方文档 基础知识 本学习指南不是一份机器学习的教程,但是首先我们会对其中的概念做一个简单的回顾,以确保我们在相同的起跑线上。大家还需要下载几个数据库,以便于跑这个指南里...
  • han____shuai
  • han____shuai
  • 2016-01-31 14:45:56
  • 864
收藏助手
不良信息举报
您举报文章:Tinyos tutorial learning tips -- lesson 6
举报原因:
原因补充:

(最多只允许输入30个字)