2017-10-21 9 views
0

La pratique habituelle dans Castalia est que le module d'application demande la lecture du capteur en utilisant la fonction requestsensorreading() qui est gérée par le gestionnaire de capteur. Le gestionnaire de capteurs transmet la requête au processus physique et le processus physique répond à sa valeur.comment régler le minuteur pour le processus physique dans Castalia?

Ce que je veux faire est, je veux que le processus physique diffuse sa valeur à des intervalles de temps définis. Le capteur aura une sensibilité> 0 et quelques noeuds recevront la valeur. Comment puis-je accomplir cela? est-il possible d'utiliser la fonction timerFiredCallback et BROADCAST_NETWORK_ADDRESS à l'intérieur du processus physique?

Répondre

0

Vous semblez être confus au sujet des modèles de base de Castalia. Le processus physique n'est pas un noeud de capteur pour envoyer des messages de diffusion réseau. C'est un module pour modéliser le processus physique que les capteurs de nos nœuds de capteurs échantillonnent. De plus, un processus physique n'a pas une valeur. Les valeurs changent en fonction de l'espace et du temps, et selon le modèle que vous avez défini (le manuel contient beaucoup d'informations sur la définition des processus physiques). Vous pouvez définir un processus physique qui ne renvoie qu'une seule valeur pour chaque point de l'espace. chaque moment, mais je ne sais pas pourquoi vous aimeriez utiliser un tel processus dans la simulation.

Un processus physique ne "transmet pas sa valeur". Les nœuds de capteurs échantillonnent le processus physique et, en fonction de l'espace, du temps et du modèle spécifique du processus, ils récupèrent une valeur. Différents nœuds de capteurs peuvent avoir des valeurs différentes. Pour réaliser ce que vous voulez, vous devez simplement faire en sorte que tous les nœuds de capteurs échantillonnent périodiquement le processus physique. Il y a quelques exemples d'applications qui font cela. Donc, pour récapituler: Vous définissez comment votre processus physique doit se comporter, puis vous faites échantillonner les nœuds de capteurs (à partir du module Application en utilisant la méthode requestSensorReading() comme vous le savez déjà).

+0

oui je le comprends maintenant. merci d'avoir éclairci mes doutes. –