Étape 10 : Les extraits de Code
L’application KinomaJS a deux missions essentielles : l’accéléromètre de surveillance et de traduire les données de télédétection accélération dans les correspondants des commandes de moteur. Une configuration de base et la lecture des données analogiques accéléromètre pourraient être accomplis dans un BLL comme ceci :
Toutefois, il serait mieux, d’ajouter quelques fonctionnalités à notre accéléromètre BLL. Le premier est le calibrage : la possibilité de dire la couche BLL lorsque l’appareil est de niveau. Le second est lissage : réduire le bruit de l’entrée pour empêcher la gigue du labyrinthe analogique. Dans la source complète du projet, il existe des implémentations de ces deux caractéristiques. Le lissage est réalisé à l’aide d’un simple filtre passe-bas.
Envoyer des commandes vers les moteurs s’effectue en deux parties. Le côté BLL écoute les commandes à partir de l’app et les convertit en série messages suivant le protocole de communication de le SSC32u (comme spécifié dans son guide de l’utilisateur). La couche BLL ressemble à ceci :
L’application communique avec le moteur BLL chaque fois qu’il récupère les données de l’accéléromètre BLL. Cela commence lorsque le gestionnaire de « données » de l’app est appelé comme rappel de l’accéléromètre. Ce gestionnaire met à jour l’affichage, calcule les angles correctes pour les deux servomoteurs et appelle ensuite la fonction doMotorControl. doMotorContorl appelle la fonction « sendDualCommand » du moteur BLL :
Félicitations !
Vous l’avez fait ! Ou si vous coincé ainsi que de la sorte, nous sommes là pour vous, venez nous rendre visite à notre forum et faites-nous savoir comment nous pouvons aider.