le 01-07-2017 10:24 PM
Bonjour à tous,
j'ai besoin d'effectué 2 moyennes sur des données obtenues à l'aide d'un myDAQ ( plus précisément la fréquence d'une onde sonore, ), comme les microphones n'étant pas forcément très précis (la fréquence oscille, il a du bruit, etc.... ), le tout est mis dans une boucle while pour mesurer à l'infinis la fréquence à chaque instant quand j'éxécute le programme
j'ai donc besoin de faire : une première moyenne (noté : m1 , moyenne de la fréquence du son ) sur un intervalle de environ 0.2 seconde et de comparer la moyenne obtenues avec la deuxième moyenne (noté : m2) elle aussi sur 0.2 seconde, mais le calcul de m2 est effectué seulement après le calcul de m1 .
ensuite :
Si m2 appartient à [ m1-10 ; m1+10 ]
Alors : une LED s'allume ( et reste allumé ) , ou s'éteint si elle était déjà allumé ( et reste éteinte )
Sinon : ne rien faire
si certains possèdent des indications ou peuvent m'aider je suis prenant, j'espère avoir été clair car je n'ai pas de screen à fournir avant ce lundi qui arrive !
Merci de votre lecture 😄
le 01-09-2017 01:57 AM
Bonjour,
Je ne comprends pas vraiment où se trouve la difficulté.
Avec une machine à état, tu peux faire facilement ton programme.
L'idéal serait de nous fournir ce que tu as déjà réalisé afin de t'indiquer les erreurs potentielles de ton code, et les bonnes méthodes à appliquer.
Cdt,
Michael
01-09-2017 10:37 AM - modifié 01-09-2017 10:48 AM
voici le programme : je sais on ne voit pas très bien il y a une erreur au niveau de "numérique 6" ( normalement le numérique 6 n'est pas relié avec un fil au spérieur ou égal juste au dessus ), et normalement il y a une autre valeur "Numérique 7" , définit par "Numérique 7" = "Numérique" - 10, et normalement , si Numéique 7 < Numérique 5 ET Numérique 5 < Numérique 6, ALORS la LED a droite s'allume, j'espère que tu comprends ce que j'ai essayé de faire, sans succès quand je relis mon Numérique 6 et Numérique 5 au inf ou égal, il y a une erreur !
Mais sinon pas besoin de faire une moyenne sur un temps, le petit "ensemble" pour calculer la moyenne est assez astucieux je pense pour éviter ça, pour commencer je n'ai pris que 3 valeurs pour effectuer ma moyenne, mais une fois mon programme juste j'étenderai le nombre de valeur a une vingtainne ^^