Étape 3: Le récepteur (client) :
Le récepteur est composé de :
-un atmega328p, programmée via USBasp et débogué avec mon débogueur externe spécial
-un NRF24L01 + PA + LNA pour bo jumelé avec émetteur
-H deux ponts du canal MOSFET N
-4 circuits au contrôle les MOSFET (mort times, bootstrap): IR2302, en raison de sa basse tension PWM entrée beetween 5V et 20V (environ 10V pour mon récepteur)
-2 fusibles : circuit électrique, circuit de commande
-3 ou 4 gros condensateurs de 4700μF chaque que vous établissez la liaison sur la broche + et - des piles. Si ce n’est pas le cas, il ne fonctionne pas correctement en raison de la forte augmentation du courant dans les moteurs à courant continu alors qu’ils commencent. Vous devez également connecter les petits condensateurs de 10nF et 47nF sur les moteurs à être empêchés de parasites HF (voir les photos ci-dessus).
Après plusieurs essais, la valeur des condensateurs (si élevée) pour telas dépend de vos pouvoirs de moteurs et de votre qualité de batteries, mais il est nécessaire.
Dans le programme, j’ai utilisé :
-la bibliothèque Firm pour envoyer et recevoir des données
-PWM sur broche D5 et D6 avec l’extraordinaire s’inscrire à TCCR0B d’avoir une fréquence élevée de 62500Hz. Ses effets le timer 0 et une fonction peuvent ne pas fonctionner correctement (servo, retard et millis un peu plus rapide maintenant)
-une méthode de recevoir des messages et d’analyser le cadre : octets enregistrés dans un tableau de char -> tableau de chaînes pour lire le message -> chaîne en entier à lire le point de réglage de la vitesse
-un truc de rejeter les mauvais codes et d’arrêter le bateau quand l’émetteur est hors tension ou sous fourni.
-certains paramètres pour ajuster l’État STOP à 110 (moyenne 0 sur les moteurs), max vitesse FW à 227 (+ VCC moyenne sur les moteurs), max vitesse RV à 3 (-moyenne de SCR sur les moteurs), vous aurez probablement à faire avec votre propre moteur de C.C de choses.