Étape 4: Capteurs sonores
Implémentation du code :
La fonction findSoundMax (int t, int inc) est utilisé pour le capteur de sons. Lorsque vous implémentez le capteur de sons, nous avons constaté que le capteur est trop sensible. Quand la musique était sur, le capteur aurait radicalement différentes valeurs pour quand la musique était fort ou doux. En conséquence, nous avons dû trouver le niveau sonore maximal dans un certain laps de temps et qui permet de dire si la musique jouait. La fonction findSoundMax doit sensorSound, soundMax et variables entières. La fonction rend le capteur écouter de la musique, alors le délai pour un certain laps de temps, t. Puis il écoute de la musique à nouveau, et si c’est plus fort cette fois-ci que par le passé, la valeur du plus forte est stockée comme soundMax. Pour cela, cette quantité inc de fois. Par exemple, nous avons utilisé t = 50 ms et inc = 20. Cela signifie que le capteur répète le processus ci-dessus 20Fois, retardant 50 ms entre chaque Ecoute. La valeur maximale capteur passe ensuite dans le son variable.
Si son plus grand que soundThresh, puis on change la valeur d’un entier, x, à partir de -1 à 0. soundThresh est une valeur définie par l’utilisateur qui se trouve expérimentalement. Son niveaux situés au-dessus de que cette valeur signifie que la musique joue. Au-dessous de cette valeur est le bruit ambiant juste. En affectant à x = 0, nous savons que nous ne devons plus écouter de la musique : la fonction findSoundMax est exécuté seulement lorsque x < 0. Le code peut maintenant poursuivent-elles de ligne suivi, prévention des collisions et plus encore.