L’idée principale est assez simple : obtenir un module de reconnaissance vocale, liez-le à un microcontrôleur, générer le signal PPM approprié, envoyez-le à un module HF. Recevoir le signal avec un récepteur standard et d’obtenir que les servos se déplacent, plusieurs kilomètres de distance.
De cette façon, il faut porter un casque et vidéo googles uniquement en FPV conduite avec les deux mains libres.
Je ne sais pas quoi faire avec les deux mains libres, alors j’ai tout le monde laisse deviner ce qu’il faut s’en servir pour:-)
Remarque : cette solution est trop lente pour contrôler tout ce qui bouge vite, mais peut être appropriée pour petits rovers et autres.
Projets similaires plus utilisent le module de la parole d’une voiture directement, c'est-à-dire les servos sont accrochés à droite à l’Arduino.
Plus : facile à faire
Moins : l’utilisateur doit se situer dans la plage sonore de l’appareil, très faible portée
Puis, il y a quelques projets qui utilisent les modules Xbee de 2,4 GHZ pour étendre la portée.
Plus : large (100m, peut-être?)
Moins : limite plus difficile à complet, encore ne convient pas pour le FPV en raison de la gamme
Ma solution.
Plus : gamme limitée uniquement par le récepteur et l’émetteur utilisé modules, peut être adapté à n’importe quel équipement RC
Moins : besoin od un peu de compréhension de la technologie de signal PPM, interruptions de l’Arduino et minuteries
À des fins de FPV, je suppose au moins 1km de la plage pour avoir de réelle liberté. L’élu TX/RX est de Frsky (avec télémétrie), qui est une solution vraiment cheapo mais fiable. De plus, la télémétrie signaliser (par bip) quand au bord de la plage.
Le matériel choisi :
Veear EasyVR module (bouclier) avec micro (60$)
Arduino Uno (20$)
haut-parleur de 8 ohms 3W
Module transmetteur bricolage FrSky DHT (20$)
Récepteur de télémétrie FrSky D8R-II (20$)
Le train FPV (facultatif) :
Système de 5,8 GHz 200mw/400mW TX/RX (environ 80$)
vidéo googles (250$)
Paire d’antenne RHCP CL (40$)
Pour le code, j’ai emprunté le générateur de code PPM rédigés par Hasi et l’exemple de script fourni pour le module EasyVR.
Pour tester la sortie PPM, j’ai fait un simple câble audio mono.
Un côté de celui-ci va le microphone de PC et l’autre sur la broche de sortie numérique arduino où le signal PPM sort.
Le comportement de sortie et le canal PPM est testé le programme PPM Audio, soit par programme, appelé Zelscope.
L’Audio de PPM est vraiment approprié pour vérifier la présence du signal PPM, pour les vrais tests ayant la Zelscope est un must.
Cette portée virtuelle montre ainsi la qualité du signal ainsi toute misshapes qui peut se produire.
EasyVR
Le module peuvent être achetés auprès de concessionnaires, tels nous Robotshop, Sparkfun, Tigal, ou même sur Ebay. Il est disponible soit
« nu » ou comme un bouclier. Est livré avec un microphone. J’ai acheté la version de bouclier.
Ce que nous avons besoin pour le projet :
Documentation : http://www.robotshop.com/content/PDF/easyvr-user-manual-vrb-001.pdf
Bibliothèque de l’Arduino :
Commandant EasyVR : http://download.tigal.com/veear/EasyVR-Commander-3.4.10-QS-5.2.1.zip
La bibliothèque contient des exemples de scripts qui peuvent être utilisés. Le module EasyVR est tout simplement pressé dans l’Arduino Uno.
Le module possède 4 broches pour jumpering, UP, SW, HW et PC. Pour la communication avec l’Arduino ou PC la goupille est recommandée pour obtenir cavalier SW ou PC.
Commandant EasyVR
Le module utilise des logiciels un peu pont (initialisé dans Arduino code) pour la communication avec le commandant de EasyVR, quand le pont n’est pas prêt la communication ne peut être faite.
Le commandant est utilisé pour configurer les différents groupes pour les commandes vocales, créer, modifier et supprimer des commandes et leur enseignant au module. La configuration est très simple, plus d’infos sur c’est écrit dans le manuel de EasyVR.
Récepteur et module Frsky HF
Ceux-ci peuvent être achetés dans beaucoup d’endroits, préférable de l’acheter chez Hobbyking, où il est bon marché.
La DHT (DJT peut être utilisé aussi bien) module bricolage a seulement plus, moins et PPM d’entrée. Sachez que le motif de l’Arduino et le module DHT doit être communes pour le fonctionnement correct. Pour ce faire, le plus simple consiste à alimenter l’Arduino depuis l’entrée Jack (tout 2 s lipo va faire le travail), puis mettez le module DHT de Arduino broches de Vin et de la terre. Entrée PPM du module est reliée à la broche de l’Arduino numérique 9 ou 10, selon le code du générateur PPM utilisé.
N’importe quel récepteur compatible avec le module DHT peut être utilisé.
Remarque : On peut utiliser n’importe quel module HF et le récepteur qui comprend le protocole standard de PPM avec MAJ soit positive ou négative.
Le codeur PPM
N’importe quel code de génération de PPM (codeur PPM) peut faire le travail, qui utilise des interruptions de minuterie pour la génération de signaux. L’essentiel est, en utilisant le code de l’encodeur interrompt alors le PPM s’exécute en arrière-plan. On a suffit modifier la valeur des variables, représentant les différents canaux.
Ces valeurs varient de 900 à 2100 (valeurs en microsecondes) et selon les commandes vocales du module EasyVR. À dire des phrases différentes, ces valeurs est modifiée dans le code, entraînant la modification du signal.
Le problème est que le code de EasyVR utilise SoftwareSerial par défaut, ce qui interfère avec la minuterie de l’encodeur PPM. Si le code a dû être modifié pour utiliser HardwareSerial à la place.
Notez que cette modification désactive la communication entre le PC et l’Arduino comme la broche du cavalier EasyVR doit être réglé à HW. Donc à tout moment lorsque le nouveau code a besoin d’entrer uloaded dans Arduino, la broche de cavalier EasyVR doit être réglé retour à SW ou PC et pour le bon fonctionnement il doit être réglé sur HW.
Avec le module Frsky DHT testé, les valeurs suivantes fonctionnent bien :
-22500us de longueur de trame du signal
-signal pulse largeur 300us
-canal signal largeur 900-2100us
-8 canaux
-signal changement positif
Code EasyVR
L’exemple de code fourni par le fabricant est suffisante pour la personnalisation.
Il est utile d’allume la LED sur le module de EasyVR tout en écoutant ou en envoyant un signal sonore est clair lorsque le module est à l’écoute et quand l’écoute est fini.
Application
J’utilise cette solution sur ma rover. Comme c’est entraînée 4 roues motrices et 2 servos de direction j’ai dû écrire un code pour le mixage des canaux pour la commande des gaz et de la direction.
Le contrôle est très sensible, que la seule question semble être la sensibilité du microphone de bruits à proximité.
Malheureusement, ce qui est de 100 % dans une pièce silencieuse qui n’est pas aussi bonne dans la zone Ouvrir.
Solution possible sera l’utilisation du casque un peu avec microphone anti-bruit.
Vidéo sur le test du signal PPM est ici : https://www.youtube.com/watch?v=wy--dcPDkxs
Mouvement de servo testé ici : https://www.youtube.com/watch?v=7wMpf1I6KZM
La vidéo du premier essai routier est disponible ici : http://www.youtube.com/watch?v=PdtaiYcidfs
Remarque : les vidéos peuvent contenir des langues étrangères (hongrois)
Plans futurs
Pour l’instant, gear FPV n’est pas présent encore. Un système de 5,8 GHz 200mW est prévu pour être utilisé avec une caméra Gopro et antennes RHCP CL.
Il sera le même système éprouvé dont je me sers sur mon mulTIROTor récemment.
Le code sera prolongé de commande 3 plus de canaux, pour la tourelle, où la caméra FPV sera montée, ainsi que
le système de tourelle qui permet un tir automatique de balles BB.
Mise à jour (20/07/2013)
Enfin trouvé le temps pour achever le projet (avant-projet, au moins).
Le pistolet :
Aliments pour animaux et capacité :
La D93 bien a été modifié un peu et placé à l’envers. La chambre pour les balles BB a été infirmée aussi bien.
Pour l’instant, un simple tube a été ajouté à l’alimentation de la chambre. La capacité du tube est de ~ 30 BBs.
Alimentation d’énergie :
Tout d’abord, j’ai tenté le pistolet avec 6V provenant d’un convertisseur DC / DC de puissance mais le taux de feu était plus élevé qu’il a causé un dysfonctionnement tout en se nourrissant, alors j’ai décidé de 5V.
Grâce à cette tension, l’alimentation est correcte et le taux de feu est encore abordable.
Le seul problème était que le convertisseur de DC chinois cheapo prévue courant insuffisant le pistolet donc il ne pouvait pas travailler.
J’ai dû commander une autre, avec un débit de 5 a courant. Il a été livré quelques jours auparavant et bâtis sur le véhicule.
Facteur de déclenchement :
Le déclencheur a été souscrit et remplacé par une électronique RC chaîne contrôlée. Il déclenche lorsque le taux PWM canal dépasse 50 %.
Le code de l’Arduino a été modifié en conséquence. Durée de l’incendie a été fixée à 500 ms.
La fpv gear :
Pour l’instant, le véhicule a eu mon vieux 200mW 5,8 G transmetteur avec une caméra de 5V 520TVL très légères et de petit. Seul banc d’essai ont été réalisé jusqu'à présent.
Vidéo tournée dans le domaine suivront bientôt.
TODOs :
Comme le servo de tilt détient tout le poids de la plate-forme de pistolet, il peut être facilement endommagée tandis que rasing dans le domaine.
L’arme est initialement mises dans une position d’arrêt et déclenchée uniquement lorsque l’armée.
Pour ce faire, quelques modifications dans le code de l’Arduino sont nécessaire.
La gamme de fpv peut s’avérer insuffisante, premiers tests de terrain montrera ho beaucoup. Envisagez d’utiliser une vitesse de 900MHZ.
Le banc d’essai de toutes les fonctions (y compris les tirs de l’arme) :
(attention, commandes et description en langue hongroise seulement - encore)
http://www.youtube.com/watch?v=BtKFoPYSMZw