您的位置:首页 > 编程语言 > Python开发

Python学习二

2016-02-03 20:17 926 查看

1、OpenVisualiz**流程

a)仿真节点数据-->moteProbe.py-->moteConnector.py-->moteStatus.py

b)openvisualizerWeb.py 调用OpenVisualizerApp.py ,通过moteview.tmpl显示

OpenVisualizerApp.py中getMoteState函数通过调用moteStatus类获取状态数据

2、moteStatus.py中

class moteState 有许多状态属性(ST_ASN、ST_ISSYNC);析构函数表示状态属性获取;

registrations = [

{

'sender' : 'moteConnector@{0}'.format(self.moteConnector.serialport),

'signal' : 'fromMote.status',

'callback' : self._receivedStatus_notif,

},

]

3、moteConnector.py将数据发送给OpenParser.py( 其 继承了Parser )

a) # local variables

self.parser = OpenParser.OpenParser()

b) def _sendToParser(self,data):

input = data

(eventSubType,parsedNotif) =
self.parser.parseInput(input)

4、串口格式

7E 44 31 00 84 3C 00 00 005E 02 35 31 88 9C 5E DE C7 7E

节点之间的超声测距信息。7E:协议栈帧格式开始,44帧格式符 ;31 00 :31号节点通过串口向上位机发送的数据;

84 3C 00 00 00 :5个字节的asn(低位在前高位在后),相当于时间戳,asn变化一相当于15ms,精确度符合要求;

5E:串口的帧开始符;02: 表示测距数据;35 31:表示35和31号节点之间的测距,35号节点发超声,31号节点收超声; 5E:串口帧结束;

DE C7:CRC校验;7E:协议栈帧结束(只需解析黄色部分)

以上格式可能跟自己定义有关

参考1:https://openwsn.atlassian.net/wiki/display/OW/Serial+Format#SerialFormat-SERFRAME_MOTE2PC_DATAFrame

参考2:drivers/common/openserial.c 中:

openserial_printStatus()+openserial_printData(uint8_t* buffer, uint8_t length)
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: