问题标签 [telemetry]

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 投票
2 回答
499 浏览

c# - 允许用户输入用于评估遥测数据的方程

我目前将传感器数据转储到数据库中。这是原始数据,需要对其应用一个等式才能使其对最终用户有意义。我遇到的问题是我还不知道大多数公式,并且还希望程序足够灵活,以便在系统中添加新传感器时,用户可以输入校准方程将能够将原始数据转换为有用的东西。

我从来没有让用户输入方程式来操作数据。我将不胜感激任何可能有帮助的意见。我应该看什么方向,我应该尝试 lambda 表达式树,评估方程并使用 CodeDom 编译它,还是看另一个方向? 我从来没有对 lambda 表达式树或 CodeDom 做过很多事情,并且像往常一样并且在相当紧凑的时间安排上,所以学习曲线确实很重要。我将有机会在以后返回并使其变得更好,他们现在只需要启动并运行它。

感谢您的任何意见。

0 投票
1 回答
1172 浏览

windows-phone-7 - 获取 WP7 电池遥测数据?

我正在寻找一种在 Windows Phone 7 下获取当前电池遥测的方法。框架最接近的部分看起来像Microsoft.Phone.Info.DeviceExtendedProperties.GetValue(),但似乎您只能查询设备信息(型号、序列号)和当前内存消耗。

在 WP7 SDK 的这次迭代下,电池数据是否无法访问,或者我只是遗漏了什么?

0 投票
1 回答
2755 浏览

performance - 遥测 / SCADA 系统设计和编程的最佳框架或系统架构

我问了一个关于这个主题的好书的问题

它没有得到很多回复,所以也许没有什么好书(虽然我觉得这很奇怪;我必须自己去亚马逊搜索)。

在没有书的情况下,也许有一个好的框架,一些好的 URL,或者只是一般的建议。

正如我在另一个问题中所问的:

我正在研究几个项目,它们都具有大致相同的功能。

一些仪器收集一些数据(或控制一些功能)。它们通过 Internet(以太网/wifi/GPRS/卫星)与数据库服务器进行通信,该数据库服务器存储测量结果并提供基于浏览器的查询数据、生成报告等方式(并且可能还允许控制远程设备)。

任何人都可以推荐一本好书,描述一种开发这种软件架构的方法,保持它的通用性,哪些工具,语言。测试方法等使用?

对于“书”,请替换为“框架、一些好的 URL 或只是一般性建议”。

这是一种非常常见的系统模式。谁能给点建议?

0 投票
1 回答
325 浏览

collections - 处理大量遥测数据

我有一个项目,我们在其中读取大量遥测数据。遥测由“通道”组成,通道通常是来自单个传感器的值。例如温度传感器。

每个读数包括:
A:测量值
B:通道 ID
C:测量时间

我们以相当高的速率接收遥测数据,最高可达 500 Hz(每秒 500 个样本),每个通道低至 1 Hz。同时通道的数量通常约为 150 个。

不能期望每个通道的速率是精确的,它可能会有所不同。

所以我正在寻找一个集合/算法来处理数据并稍后显示值,显示由图表和数字读数组成。

通常我们会按顺序接收数据,但可能会出现更长时间的中断。也可以稍后接收来自中断的丢失数据。

长话短说,我需要一个可以结构化数据的集合:
A:必须能够按时间访问单个读数,例如 Value(time)。
B:必须能够从时间 a 到 b 顺序读取值。
C:在末尾或中间插入新值。

我已经使用跳过列表(http://en.wikipedia.org/wiki/Skiplist)进行了实现。它似乎满足了所有要求,但它吃掉了很多内存。我最初的计算显示在测量值的 5 到 10 倍之间。在实践中,它会更高。

我还考虑将值添加到数据库中,并从那里读取它们,但它似乎很慢 - 我没有看到 SQL 服务器快速插入那么多值。

那么,对可以做到这一点的集合/算法有什么想法吗?

0 投票
1 回答
1305 浏览

java - 如何使用 JProfiler 自定义探针遥测来监控 Guava 缓存统计信息

在 JPL,我们将模型转换技术用于我们的系统工程工作。我们使用 OMG 的 QVT 规范的 Eclipse QVTO 实现。

http://www.eclipse.org/modeling/m2m/downloads/index.php?project=qvtoml

但是,Eclipse QVTO 编译器速度慢得令人沮丧。通过明智地应用 Guava 的缓存,我成功地对 Eclispe QVTO 编译器进行了显着的性能改进。可以做更多的事情,但就我所拥有的,我想通过在运行时监控缓存统计信息来了解缓存优化的有效性;即,com.google.common.cache.CacheStats

有没有人建议如何定义 JProfiler 自定义遥测探针来执行此操作?

http://resources.ej-technologies.com/jprofiler/help/doc/indexRedirect.html?http&&&resources.ej-technologies.com/jprofiler/help/doc/helptopics/probes/custom.html

  • 尼古拉斯。
0 投票
2 回答
4059 浏览

mysql - 存储来自 10000 个节点的遥测数据

我需要存储每隔几分钟从超过 10000 个节点(可能会增加)生成的遥测数据,每个节点都通过 Internet 将数据提供给服务器进行日志记录。我还需要从 Web 应用程序中查询这些数据。

我在决定什么是最好的存储解决方案时遇到了一些麻烦。

每个节点都有一个唯一的ID,每个变量包都会有一个时间戳。(可能需要由服务器生成)。

遥测数据在同一个数据包中包含所有变量,因此从概念上讲,它可以很容易地存储在单个数据库表中,每个变量有一列。序列号 + 时间戳足以作为密钥。每个遥测数据包的大小为 64 字节,包括设备 ID 和时间戳。所以每年大约 100Gb+。

我希望能够查询数据以获取跨时间范围的变量,并存储这些数据的汇总报告,以便我可以绘制图表。

现在,如何最好地处理这个问题?我对使用 MySQL 非常熟悉,所以我倾向于这个。如果我要使用 MySQL,为每个设备 ID 设置一个单独的表是否有意义?- 这会使查询更快还是拥有 10000 个表会成为问题?

我认为不需要一次性从所有设备中查询变量,但可能需要。或者如果它变得非常大,我应该把它全部放在一个表中并使用 MySQL 集群吗?

还是有更好的解决方案?我一直在寻找一些非关系数据库,但看不到任何完全符合要求或看起来非常成熟的东西。例如,MongoDB 每行会有相当多的大小开销,与 MySQL 相比,我不知道在大时间范围内查询单个变量的值的效率如何。MySQL也已经存在了一段时间并且很健壮。

我还希望它能够轻松复制数据并进行备份。

任何想法或如果有人做过类似的事情,您将不胜感激!

0 投票
3 回答
1299 浏览

java - Blue Pelican Java 项目“屏蔽遥测数据”;编译但不运行?

我已经在 Blue Pelican Java 中尝试了这个项目一个多小时,但我不太确定它为什么不起作用。基本上我要做的就是把一个普通的数字变成一个二进制数,假设 1 表示开关打开,0 表示它关闭,遍历二进制数中的每个数字并打印它是打开还是关闭。他们说明了他们希望我如何做到这一点:

“假设我们希望查看左起第三位。使用如下所示的掩码与原始数字按位与,以便仅查看第三位。1 0 1 1 0 0 0 1bin = 177dec 0 0 1 0 0 0 0 0bin = 32dec(这是掩码)

0 0 1 0 0 0 0 0bin = 32dec = (177 & 32)

请注意,这种对掩码值 32 进行按位与运算的方案(25,因为左起第三位位置的位置值为 25)在第三位位置产生的值与原始数字的第三位位置完全相同. 所有其他位的位置都保证为 0。因此,可以测试这个按位与运算的结果,看它的整个值是否为 0。如果大于 0,这意味着测试位置的位是 1。

在这一点上,我只是在 Switches.in 文件夹中测试第一个数字 22,而不是为代码导入整个文件夹。我的代码编译后,它开始打印我想要的内容,但突然中断并转到如下所示的错误消息:

这是我的代码:

我不确定代码有什么问题。任何建议将不胜感激。谢谢,很抱歉这篇冗长的帖子!

0 投票
1 回答
975 浏览

architecture - 遥测设计模式 - 设备和服务器之间的互操作性(SMS、GPRS 等)

我现在正在从事与远程汽车管理相关的项目。

我们有一些设备能够启动/停止汽车引擎,提供 GPS 坐标,检查门锁状态等。此设备已安装 SIM 卡。

第二个方面是一个服务器,它应该与设备通信,并允许消费者通过 iPhone、Android 和 WM7 手机管理他们的汽车。

我现在的主要问题是应该为设备和服务器之间的通信定义哪些技术要求。

有人知道有没有关于这种数据传输的标准设计模式的书籍或文章?

下面是一个让我烦恼的问题的例子

我们需要向设备发送一些请求(例如“启动汽车”或“给我里程”)。为了提供它,服务器应该有一个地址,它应该发送这个请求。

如果我理解正确,有以下方法可以做到:

  • 组织 VPN(昂贵)
  • 使用 SMS 传输(昂贵)
  • 使用 TCP 套接字组织设备和服务器之间的持久会话(我不知道它是否适用于俄罗斯 GSM 网络现实)

也许这里有人有类似的专业知识,可以给我应该搬到哪里的建议?

0 投票
1 回答
1225 浏览

python - 使用电缆从 ArduPilot 的遥测端口读取数据

再会。

我需要使用 SERIAL-USB 转换器和 USB 电缆从 ArduPilotMega 的遥测端口读取遥测数据。

我该怎么做?

在此处输入图像描述

我尝试使用python:

结果如下所示:

连接到:/dev/ttyUSB0 ['\x1c', '\x01', '\x1e', 'V', '\x00', '\x8c', '=', '\xe2', '\xbc' , 'v', '\xc0', '\xf6', '8', ',', '\xba', 'E', '8', '%', '\x14', '\x01', 'J'、'\x00'、'\x00'、'\x00'、'\x00'、'Q'、'\xc0'、'c'、'>'、'\x00'、'\x00' , '\xc2', '\x1a', '\x01', '\x1b', '\x12', '"', '\x00', '\x00', '\xff', '\xff', '\xfc'、'\x00'、'\x00'、'\x00'、'\x00'、'\x00'、'\x00'、'\xa1'、'\x0e'、'\x01'、 '\x1d', 'V', '\x00','\xdb'、'D'、'f'、'>'、'\r'、'\xec'、'\x1f'、'\x01'、'\x01'、'\xfc'、'\x00 '、'\xfc'、'\x00'、'\xfc'、'\x00'、'\x01'、'\x00'、'\xff'、'\x00'、'\x00'、'\x00 ', '\x00', '\x00', '\x00', '\xed', '\xfe', '\xa4', '\x01', '\xf6', '.', ....\xed', '\xfe', '\xa4', '\x01', '\xf6', '.', ....\xed', '\xfe', '\xa4', '\x01', '\xf6', '.', ....

我怎样才能解码它?

是正确的方式吗?

谢谢!

0 投票
1 回答
189 浏览

android - Firefox for Android (Fennec) 中生成的遥测文件在哪里

在 Firefox for Android (Fennec) 中,每次迭代后,即从 Fennec 打开一个网站,它会在您的配置文件目录中自动生成一个遥测文件saved-telemetry-pings

此生成的文件使用随机文件名。

所以我想知道这个文件是在 Fennec 代码的哪里生成的?我需要知道导致此文件生成的代码路径。

任何帮助或代码指针都会有所帮助。