问题标签 [unetstack]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
74 浏览

unetstack - 使用 JSON 远程访问 Unet 调制解调器

我正在尝试在调制解调器中使用 JsonTypeAdapter 从远程源传输一些数据。适配器通过调制解调器启动脚本 (JsonAdapter.enable()) 启用,并在端口 1100 处与调制解调器建立 TCP 连接。我按照 Fjåge 文档中的“Hello world”示例,将以下 JSON 发送到调制解调器:

{"action":"send","message":{"clazz":"org.arl.unet.DatagramReq","data":{"data":{"clazz":"[B","data":"aGVsbG8gd29ybGQh"},"msgID":"8152310b-155d-4303-9621-c610e036b373","perf":"REQUEST","recipient":"phy","sender":"MyCustomInterface"}}}

我已将 logLevel 设置为“ALL”,并且可以看到我在日志中获得了传入的 TCP 连接,但调制解调器没有传输任何数据。我订阅了物理代理,但在 WebShell 中没有收到任何通知(尽管使用 UnetSocket 可以正常工作)。

我猜测要么 JsonAdapter 在这个 TCP 连接上没有激活,要么 JSON 字符串有问题,要么我的应用程序没有正确发送,或者我错过了其他东西。

0 投票
1 回答
51 浏览

unetstack - 有没有办法为自定义频道提供水深测量?

我正在使用UnetStack Simulator运行水下模拟。默认情况下,模拟使用ProtocolChannelModel或之一BasicAcousticChannel文档

假设我向节点提供 GPS 坐标。如何在模拟中提供水深测量以使其更合理?我打算使用GEBCO 2019

有没有办法做到这一点 ?

0 投票
1 回答
48 浏览

unetstack - 如何计算不在彼此直接范围内的两个节点之间的距离?

我想定位节点 C(参考下图)。这里我们知道 A 和 B 的坐标,并且 A 在 B 和 C 的范围内,因此我们可以使用测距功能计算距离 AC 和 AB。我需要计算不在彼此直接范围内的 B 和 C 之间的距离。我想使用余弦定律,有没有办法在 UnetStack 中计算下图中表示的角度“γ”?图像参考

0 投票
1 回答
36 浏览

unetstack - 模拟中的 RSSI

我即将为我们的调制解调器实施节能程序。在模拟中,RxFrameNtf 的 RSSI 字段是空的,我想知道如何最好地填充它。

我正在使用半双工调制解调器和 BasicAcousticChannel 信道模型运行模拟。SNR 由声道计算,RxFrameNtf 由半双工调制解调器调度,对吗?

0 投票
0 回答
27 浏览

unity3d-unet - Unetstack V 3.1.0 中的节点移动性

我正在尝试模拟一个以圆形轨迹移动的节点,该节点正在接收来自 4 个静止节点的数据。模拟在旧版本 (1.6) 上运行良好,但在 3.1.0 上不起作用。没有错误并且模拟正在完成,但是没有数据包被发送或接收。这两个版本在语法或模型方面是否有任何重大差异,因为没有发生数据包传输?这些代码是为旧版本编写的。

'''

'''

这是其中一个固定节点的代码片段。同样,我们有其他 3 个节点的代码。

'''

'''

我们用它来合并节点 B 收到的消息。

0 投票
1 回答
59 浏览

communication - 如何为非 subnero 调制解调器编写调制解调器驱动程序?

我如何使用现有的非 subnero 与 UnetStack 的调制解调器(基本上不支持 UnetStack)?我详细阅读了这篇文章,但不幸的是编译问题很糟糕。谁能指出我正确的方向?

以下是我遇到的详细错误:

这是我的代码:

0 投票
1 回答
36 浏览

unetstack - 从代理设置物理通道参数

在我的代理的启动方法中,我得到物理代理的代理 ID:
phy = agentForService(Services.PHYSICAL)

然后我尝试了不同的方法来设置 powerLevel 但通常是这样的:
phy.send(new ParameterReq().set(PhysicalChannelParam.powerLevel, -20))
phy.send(new ParameterReq().set(PhysicalChannelParam.powerLevel, [-20 -20 -20])) phy.set(PhysicalChannelParam.powerLevel, [-20 -20 -20]

它们都不起作用。
我猜这是因为有多个物理通道(控制,数据)。
如何指定要更改功率级别的通道类型?

编辑:
一个解决方案显然是直接更改参数:
control_channel = phy[1]
control_channel.powerLevel = -20
但是,这感觉就像违反了 Fjåge 背后的基本思想。

0 投票
2 回答
162 浏览

unetstack - 如何将 JANUS 信号录制为 wav 文件?

我正在测试调制解调器之间的互操作性。我的一个调制解调器确实支持 JANUS,我相信 UnetStack 基础 Subnero 调制解调器Phy[3]也支持 JANUS。如何发送和记录可用于其他调制解调器初步测试的 JANUS 信号?有人可以提供基本的片段吗?

0 投票
1 回答
38 浏览

unetstack - 在 macOS 中安装 Unet 音频时找不到本机库`yoda_phy_pa_x86_64`

macOS GateKeeper 在尝试运行 Unet 音频时给我以下错误消息:

终端显示:


0 投票
1 回答
47 浏览

unetstack - 我们可以在 UnetStack 中用 python 编写我们的代理吗?

我正在编写一个自定义phy代理UnetStack。我知道我们可以使用Groovy,或Java,我可以使用来写我的代理吗?如果是,我应该注意什么,是否有特定的骨架?JuliaCpython