我正在研究蓝牙协议,并在一些设备上实现了在dBm中读取RSSI的位置系统。系统将在3个已知纬度和经度的固定站和一个移动台上实施。定位将在移动台上进行,使用dBm从每个固定站接收到的功率和典型的定位算法。
为了提高系统的效率,需要改变蓝牙设备的一些参数。这个参数可以是:
根据已使用的技术(其中一些方案是有限的),可以使用一些场景来做到这一点:
似乎很难找到与此场景相关的有用信息。也许你们中的一些人可以帮助选择最好的场景,并描述应该如何实现。
(对不起,如果没有用更好的方式解释..我的英语糟透了
谢谢。
发布于 2012-04-15 19:47:46
对不起,我没有按照你写的每一件事去做,但是我认为第一步是进入固定站点上的HCI层。这是相当直截了当的完成,并给予您一个公平的控制。
正如您所提到的,hcitool非常有用,但是您使用什么工具或语言并不重要。您可以从任何语言访问HCI命令。
例如,我在ALIX上用航海Linux做了这样的事情。航次是基于debian的,所以现在加载BlueZ、PyBluez和Python存在问题。Python简化了快速原型解决方案的工作,如果需要的话,您可以稍后将其转换为C++。(更多这里.)
但这只是一个例子--只要你能得到HCI层,就可以使用任何你觉得舒服的堆栈。(要通过HCI层,需要使用特定的芯片组并将代码直接加载到蓝牙芯片组。)
在移动设备上,您可能受到严重限制:如果您正在尝试实现潜在的现实世界。如果这只是为了实验室,你应该得到有根Android设备,使用标准的Bluez堆栈,然后,就像固定的设备,你可以得到HCI接口。毕竟,Android只是Linux,所以如果你有根,你可以做你想做的事。
https://stackoverflow.com/questions/10163376
复制相似问题