[SUN SPOT/WSN]基于AODV的SUN SPOT智能车网络设计(三)

Filename:[SUN SPOT/WSN]基于AODV的SUN SPOT智能车网络设计(三)

Version:V1.0

Date:1/30/2010

Author:S.C.Leon

=====================================================================

[SUN SPOT/WSN]基于AODV的SUN SPOT智能车网络设计(三)

软件部分

1.1、 Netbeans开发环境和SUN SPOT SDK

[SUN SPOT/WSN]基于AODV的SUN SPOT智能车网络设计(三)_第1张图片

图一、netbeans和sun spot sdk

1.2、 软件模块的构成

[SUN SPOT/WSN]基于AODV的SUN SPOT智能车网络设计(三)_第2张图片

图二、软件模块构成

1.3、 软件框架

系统按控制方式可分为红外避障模块(自动模式)和PC端控制模块(手动模式)。

系统实现的主要功能为:

1)感知周围光线的自动车灯

2)自动模式下借助红外的自动避障

3)手动模式下按指令进行运动控制

4)手动模式下反馈小车的传感器信号给PC端

5)多个小车之间进行同步的运动策略

系统的流程图如下:

图三、软件流程图

[SUN SPOT/WSN]基于AODV的SUN SPOT智能车网络设计(三)_第3张图片

图四、软件流程图

手动模式下电脑端的基站控制程序主要是图形界面下,对左转、右转、加速、减速以及停止等按钮的响应,每次按钮按下,都会发送给小车端相应的信号。小车端的程序,接收到信号并解析以后,对相应的命令做出运动响应。正如硬件部分提到的,运动的控制依赖于SUN SPOT的D2、D3以及H2、H3接口电平的输出。程序对SUN SPOT的这四个接口实例化以后,通过置高置低,控制电平的输出。D2置高时右轮转,置低时不转;H2置高时右轮反转,置低时右轮正转。D3和H3控制左轮,原理相同。转向控制主要利用两个轮子的差速,一个正转一个反转。加速和减速的实现用到了SUN SPOT API提供的setPWM()函数,速度分为慢、中、快3档。

手动模式下电脑端程序还可对属于本Ad-hoc网络的小车发出查询传感器相关信息的信号,收集到相应小车的温度和光强信息。

自动模式下SUN SPOT将会持续监听位于小车两侧的红外设备采集到的红外信号,从而分别判别在小车两侧的前方是否有障碍物,小车在前进途中,如果检测到左前方有障碍,则控制小车向右转;监听到右前方有障碍,则控制小车向左转。如果检测到正前方有障碍,控制小车向右转。

在两种运动模式下,小车均可实现车灯感知和多车之间运动同步。对于车灯感知部分,SUN SPOT通过自带的光强传感器监听周围光强信号,当光强小于一定阈值时车灯自动开启,当光强大于这一阈值的时候车灯自动熄灭。对于多车协同部分,多个小车按功能划分为主车和从车,主车可工作在手动模式或自动模式,同时将本车的运动控制信息发送给从车;从车的运动控制部分完全依靠监听主车的运动控制信息,从而实现多车之间的运动策略同步。

1.4、 电脑端界面展示

手动控制系统主要在电脑端部署基站控制程序,小车端部署信号接收程序。利用电脑端的图形界面对小车的运动进行控制,同时可以要求小车发送自身的运动参数,从而对车辆运动状态进行监控。

图形操作界面如下

[SUN SPOT/WSN]基于AODV的SUN SPOT智能车网络设计(三)_第4张图片

图五、界面展示

参考文献:

1、《基于Sun Spot无线传感器网络实验教程》电子工业出版社

2、Sun Spot 无线传感器网络 蒋清野

3、www.sunspotworld.com

4、《Thinking in Java》

你可能感兴趣的:(Date,网络,sun,Netbeans,出版,图形)