从Aaronia RTSA Suite PRO到您的自定义C ++应用程序中获取实时数据流的最简单方法是运行RTSA Suite PRO,并仅使用HTTP Server块请求数据。
所有配置或设备参数均通过RTSA Suite PRO任务中的预配置完成。远程询问状态,获取和设置RTSA Suite PRO任务的配置将发布在单独的主题中。
在“ RTSA Suite PRO HTTP流服务器”主题中,是HTTP Server块的接口文档,该文件已经包含一个名为“ RESTStreamer.zip”的C ++示例。
现在,让我们仔细看看该示例。
如果RTSA Suite PRO任务包含连接到HTTP Server块的数据源块,则流HTTP REST端点将提供JSON对象的连续数据流。数据块由换行符(ASCII 10)和记录分隔符(ASCII 30)字符分隔。
为了获得更高的数据速率,应使用二进制数据值。如HTTP接口文档中所述,此示例中的格式通过HTTP参数“ format = raw16”设置为二进制整数值(每个16位)。
为了获得更高的动态范围和更高的精度,应通过参数“ format = raw32”选择每个32位浮点值。
例如,在以下地址请求完整的HTTP流:本地主机,端口54664。
HTTP get请求中的结果是:http:// localhost:54664 / stream?format = raw16
这将要求由交替的JSON标头和数据块组成的无尽数据流。
只要有数据,它就会一直重复。流中的JSON对象是一个数据包的报头,其后是二进制IQ数据的有效负载
(I和Q值交错)。
{
"startTime":1614338274.734474,
"endTime":1614338274.734695,
"startFrequency":197609375,
"endFrequency":202390625,
"minPower":-2,
"maxPower":2,
"sampleSize":2,
"sampleDepth":1,
"payload":"iq",
"unit":"volt",
"antenna":{"name":""},
"scale":16384,
"samples":1448
}