首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >基于emane的预测OLSR协议仿真

基于emane的预测OLSR协议仿真
EN

Stack Overflow用户
提问于 2016-04-27 16:03:15
回答 1查看 245关注 0票数 1

最近几周,我正在学习如何使用埃曼对使用预测OLSR路由协议的Ad网络进行仿真。

在计算P中ETX度量时,考虑了无人机的位置,使之不同于一般的OLSR。我很难将无人机的位置数据传送到P核心.我从上面提到的链接下载的补丁文件向协议中添加了一个gps接收器插件,该插件用于接收来自out P的位置数据,然后将其传输到P中。在olsrd.conf.example文件中,我应该为插件设置一个接口、一个多播IP地址和一个端口,我在使用EMANE仿真平台时不知道如何设置这些东西。我试图设置与事件服务组属性值相同的多播IP地址和端口。但这是不对的,因为数据格式不一致。

EMANE使用了一个名为eelgenerator的应用程序,它可以生成位置事件来传递无人机的位置数据,但这些数据是鳗鱼日志文件格式,而不是gps接收器所需要的NMEA格式。EMANE还有一个名为gpsd位置代理的应用程序,它可以处理位置事件,并将位置数据转换为NMEA格式,但是GPSd位置代理的输出只能直接连接到GPSd,或者连接到由gpsd连接的伪终端。GPSd可以从NMEA格式的位置数据中获取纬度、经度和高度信息,并通过本地主机的端口2947为其他应用程序服务。

那么,如何将位置数据传输到P核心呢?如果通过gps接收器,我应该如何设置olsrd.conf,是否需要自己编写程序?如果不使用gps接收器插件,我可以让P核心通过GPSd获取位置数据吗?如果可以,如何才能准确地认识到这一点?

PS:我的EMANE版本是emane-0.9.3。我的机器内核的版本是4.2.3-300.fc23.x86_64。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2016-05-14 03:05:54

我解决了问题。我编写了一个python脚本来读取pts中的数据并将其发送给gps接收器。下面是脚本:

代码语言:javascript
复制
import socket
fd = open("path of pts", "w+")
s = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
s.sendto(fd.readline(), (host, port))
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/36895118

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档