TinyOS 2.x在Ubuntu 10.04环境下的安装和配置

 

 

http://www.allopopo.cn/?p=38

 

 

今年开始要学习研究无限传感器网络,一直打算找一个地方,把自己的学习经历记录下来。在网络上面搜索找寻了一番,最后稀里糊涂地掉进了博客园,所以就打算以这里为基地,把自己往后的学习经历记录下来,以便日后查阅。目前单位提供给我的只有一堆TelosB传感器,所以目前的学习笔记暂时是针对TelosB传感器的。今天上午刚到办公室,觉得无心工作,于是就开始我的第一篇随笔。


TelosB mote

TelosB mote

因为单位给的电脑默认安装的是Windows 7,但是我不喜欢,身边又找不到合适的系统盘,所以就给它装了Ubuntu 10.04版。正好在Ubuntu下,TinyOS的安装也相当的方便。不过需要注意的是,更方便,未必更省时间。因为默认的APT安装,会一起装进去一堆其他未必有用的东西,例如OpenJDK……

下面开始安装:

# 前往APT的目录,打开软件仓库列表。
cd /etc/apt/
sudo gedit sources.list
# 将下面这段地址添加到最后。
# 因为我用的是Ubuntu 10.04,所以发行版名称是Lucid。
# 斯坦福还提供了其他版本的仓库,可以自己复制链接去查看。
# 添加完毕,保存退出。刷新软件列表
sudo apt-get update
# 然后安装最新版的TinyOS
sudo apt-get install tinyos-2.1.1

这里开始就慢慢地等吧。斯坦福的服务器貌似也不是很快,速度慢的时候,会等上差不多大半个钟头,我通常是泡杯茶,然后下楼抽烟去了。

虽然TinyOS安装的时候会自动给你添加OpenJDK,但是既然有最新版的Java干嘛不用呢。自打Sun被收购以后,JDK就没再出现在Ubuntu的软件仓库里面,所以只能手动安装了。先去下载页面下载最新版的JDK包,然后就可以开始安装了:

# 将安装包移动至/opt目录下,并且赋以执行权。
sudo cp ~ /Downloads/jdk_6u24_linux_i586 .bin /opt/
sudo chmod +x jdk_6u24_linux_i586
# 然后开始安装。
sudo . /jdk_6u24_linux_i586
  
# 安装到最后会让你敲击回车结束,如果没反应的话就Ctrl+C强行结束,没关系的。
# 最后是一段配置Java的脚本
  
## java ##
sudo update-alternatives -- install /usr/bin/java java /opt/jdk1 .6.0_24 /jre/bin/java 1
## javaws ##
sudo update-alternatives -- install /usr/bin/javaws javaws /opt/jdk1 .6.0_24 /jre/bin/javaws 1
## Java的火狐插件##
sudo ln -fs /opt/jdk1 .6.0_24 /jre/plugin/i386/ns7/libjavaplugin_oji .so /usr/lib/mozilla/plugins/libjavaplugin_oji .so
## 最后是javac和jar ##
sudo update-alternatives -- install /usr/bin/jar jar /opt/jdk1 .6.0_24 /bin/jar 1
sudo update-alternatives -- install /usr/bin/javac javac /opt/jdk1 .6.0_24 /bin/javac 1

最后查看一下Java的版本是否正确:

java -version

正常情况下是显示:

java version "1.6.0_24"
Java(TM) SE Runtime Environment (build 1.6.0_24-b07)
Java HotSpot(TM) Server VM (build 19.1-b02, mixed mode)

到这里为止,Java和TinyOS都安装完毕了。

最后就剩下环境变量的配置了。打开文件/opt/tinyos-2.1.1/tinyos.sh:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
#! /usr/bin/env bash
# Here we setup the environment
# variables needed by the tinyos
# make system
  
echo "Setting up for TinyOS 2.1.1"
export TOSROOT=
export TOSDIR=
export MAKERULES=
  
TOSROOT= "/opt/tinyos-2.1.1"
TOSDIR= "$TOSROOT/tos"
CLASSPATH=$CLASSPATH:$TOSROOT /support/sdk/java/
MAKERULES= "$TOSROOT/support/make/Makerules"
  
export TOSROOT
export TOSDIR
export CLASSPATH
export MAKERULES

TinyOS自带的配置文件似乎有问题,不知道他们现在改正了没有,将第13行修改成:

CLASSPATH=$CLASSPATH:$TOSROOT /support/sdk/java/tinyos .jar:.

就可以了。接下去完成最后的工作:

# 安装TinyOS日后要用到的JNI。
tos- install -jni
# 检查一下TinyOS的安装情况。
tos-check- env

一般会出现两个警告Warning。一个是说你的Java版本不对,不是1.4或者1.5的,直接无视。另一个是说你的graphviz版本有问题。也无视。不记得在安装TinyOS的时候是否会自动安装graphviz,如果没安装就用APT自己装一下。到这里为止TinyOS安装基本结束了,很简单的几个步骤。打开你的终端,应当会出现Setting up for TinyOS 2.1.1的字样。

现在试着安装一个测试程序:

# 回到自己的目录,然后把TinyOS自带的Blink例子复制过来。
cd ~
cp -r /opt/tinyos-2 .1.1 /app/Blink .
cd Blink
# 把TelosB传感器连接到一个USB口,查看一下当前连接的传感器。
# 这里假设系统查看到TelosB连接到/dev/ttyUSB0。
motelist
# 将Blink例子编译,上传至传感器。
make telosb install /dev/ttyUSB0

如果看到TelosB传感器上面的LED发光了,就表示TinyOS已经安装测试完毕了。


TelosB running Blink App

TelosB running Blink app

 

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值