这个问题与微控制器编程有关,但任何人都可以提出一个很好的算法来处理这种情况。
我有一个中央控制台和一组远程传感器。中央控制台有一个接收器,每个传感器都有一个发射器以相同的频率工作。所以我们只能实现Simplex通信。
由于发射器以相同的频率工作,我们不能让 2 个传感器同时向中央控制台发送数据。
现在我想对传感器进行编程以执行一些“轮询”。中央控制台应该对传感器的存在有所了解(每个传感器是否响应)
我可以想象几种方法。
在每个传感器的轮询消息之间使用相同的间隔并随机启动传感器。所以它们不会同时传输。
使用一些圆形机制。传感器 1 在 5 秒开始轮询,然后在 10 秒开始轮询,以此类推。方法 1 的更正式版本。
最大数据传输速率约为 4800 bps,因此我们也需要考虑这一点。
有人能想象一种用更少的通信链接来解决这个问题的好方法吗?请注意,如有必要,我们可以为每个传感器使用不同的轮询间隔。