Estoy desarrollando sensores alimentados por batería para medir diferentes parámetros dentro de mi casa.
Las medidas las toman los controladores AVR simples (no Arduino) a intervalos más o menos regulares y se enviarán de forma inalámbrica a un Arduino central con un escudo Ethernet que los transmite a mi servidor, donde se almacenarán.
Para mantener bajo el consumo de energía y mantener los sensores simples, planeé usar transmisores de 433MHz en los sensores y un receptor en el Arduino: no se espera comunicación bidireccional. Los sensores enviarán el valor y una suma de comprobación y el receptor los verificará antes de realizar la transmisión.
Si se producen dos transmisiones al mismo tiempo, cualquiera de las dos
- el receptor no podrá entenderlos
- la suma de control será incorrecta
- uno de ellos será cubierto por el otro y se perderá.
Considero que estos tres casos son "colisiones".
Planeo introducir fluctuaciones "aleatorias" entre las mediciones (y las transmisiones, se realizan siempre juntas) agregando al intervalo predefinido un retardo pseudoaleatorio de 8 bits. Esto debería reducir el número de colisiones. Sin embargo, habrá algunos de todos modos dependiendo de la cantidad de sensores y de la duración de la comunicación. Además, los relojes de los sensores no están sintonizados, puede haber pequeñas variaciones (el 10% es la tolerancia para el oscilador integrado en los AVR).
Puedo aceptar algunas colisiones, pero me gustaría estimar cuántas son para poder reducir la tasa de bits de la transmisión (y, por lo tanto, la potencia de transmisión) y para poder estimar cuántos sensores y con qué frecuencia las lecturas. puede permitirse.
Entonces, ¿es posible estimar las colisiones esperadas de acuerdo con
- duración (en ms) de cada transmisión
- número total de transmisiones por segundo
¿Suponiendo que las transmisiones se realicen de forma más o menos homogénea?
Incluso si la energía por bit se puede suponer constante y, por lo tanto, debería apuntar a la tasa de bits más alta para ahorrar ciclos de CPU e ir más temprano en el modo de bajo consumo, la pregunta sigue siendo válida: saber cuántas colisiones debería ¿Espera dada la frecuencia de las mediciones y la cantidad de sensores?
Gracias
(¿quizás alguien debería agregar "colisión" como etiqueta? No puedo)