La radiocommande de modélisme

Portrait de sylvainmahe

Bonjour à vous,

Je profite de ce forum qui nous est mis à disposition afin de vous présenter plus ou moins succintement un projet de radiocommande, pour les personnes intéressées.

Ce projet de radiocommande est la suite logique de mon intérêt et de mes convictions pour un modélisme aérien tel qu'il devrait être pratiqué, c'est-à-dire la conception et la fabrication de systèmes radio-pilotés en partant réellement de zéro.

http://www.sylvainmahe.site/thumbnail/dsc08332.jpg

http://www.sylvainmahe.site/thumbnail/dsc08314.jpg
http://www.sylvainmahe.site/thumbnail/dsc08421.jpg

http://www.sylvainmahe.site/thumbnail/dsc08323.jpg
http://www.sylvainmahe.site/thumbnail/dsc06927.jpg

http://www.sylvainmahe.site/thumbnail/dsc08330.jpg

À partir des premières ébauches sur papier, études des possibilités et contraintes techniques, schémas des circuits électroniques, conception des programmes dans la radiocommande et les modèles associés, dessins du boîtier et définition des différentes pièces d'usinage (etc...), jusqu'à la finalisation du projet, il aura fallu plus d'une année de conception, fabrication, et tests de validation.

[b]Les caractéristiques de la radiocommande :[/b]
- Automate programmable MODULABLE 32 équipé du microcontrôleur ATmega1284P.
- Émetteur/récepteur (transceiver) radio 2.4GHz (composant nRF24L01+).
- Antenne Trèfle omnidirectionnelle 3 branches (7dBm).
- Communication multidirectionnelle vers (sol/air air/sol) et entre (air/air) plusieurs modèles.
- Communication vers périphériques relais pour applications longues distances basse puissance.
- Communication par trames de 32 bits.
- Affichage digital avec mini afficheur à digits.
- Buzzer de signalement.
- Système à tolérance de pannes (fail-safe) sur 5 bits (0 à 31).
- Surveillance de l'activité du modèle (watchdog) sur 5 bits (0 à 31).
- 1 menu principal + 1 menu des paramètres/réglages.
- Aucune mémoire de modèles (la mémoire est située dans les modèles).
- Possibilité de copier les réglages d'un modèle vers un autre très facilement.
- 15 paramètres/réglages par défaut envoyés par le modèle.
- Réglage des trims (autour des neutres) des manches de gaz/roulis et profondeur/lacet.
- Réglage d'une alarme (visuelle et sonore) tension de batterie faible du modèle (de 0V à 100V).
- Réglage d'une alarme (visuelle et sonore) temporisation/chronomètre (de 0s à 3600s).
- Réglage de l'inversion des manches de gaz/roulis et profondeur/lacet.
- Réglage de courbes des manches de gaz/roulis et profondeur/lacet.
- Jusqu'à 16 paramètres/réglages personnalisés supplémentaires envoyés par le modèle.
- 5 paramètres/réglages par défaut propres à la radiocommande.
- Calibration des potentiomètres des manches et auxiliaire (si remplacement/autre).
- Verrouillage des menus (plus de réglages possibles, ni d'extinction de la radiocommande).
- Affichage de la tension de la batterie de la radiocommande.
- Affichage de la tension de la batterie du modèle.
- Affichage d'une temporisation/chronomètre (temps d'utilisation du modèle/autre).
- Affichage des trims (verrouillage et remise à 0 possible par le bouton de sélection).
- Affichage d'une télémétrie personnalisée.
- Affichage des paramètres/réglages par défaut et personnalisés.
- Menu de mise à jour des paramètres/réglages du modèle.
- Menu de sauvegarde des réglages propres à la radiocommande.
- Allumage ou extinction de la radiocommande ou du modèle dans n'importe quel ordre.
- Accumulateur Nickel-hydrure métallique (NiMH) 8S (+9.6V) 600mAh.
- Alarme niveau de batterie faible (en dessous de +6V).
- Prise de charge de la batterie (XT30).
- Prise de programmation du microcontrôleur (mini XLR).
- Boîtier fermé en aluminium, acier inoxydable, bois (contreplaqué 5mm), et ertalon.
- Dimensions : 214mm x 205mm x 118mm.

   http://www.sylvainmahe.site/thumbnail/dsc08196.jpg

   http://www.sylvainmahe.site/thumbnail/dsc07970.jpg

[b]L'interface électromécanique entre l'homme et la machine :[/b]
- 2 manches analogiques (1 gaz/roulis + 1 tangage/lacet) sur 10 bits chacun (0 à 1023).
- 4 interrupteurs de trims (3 positions) sur 2 bits chacun (0 à 2).
- 1 interrupteur de coupure moteur/autre (2 positions) sur 1 bit (0 à 1).
- 3 interrupteurs auxiliaires (3 positions) sur 2 bits chacun (0 à 2).
- 1 bouton rotatif auxiliaire sur 10 bits (0 à 1023).
- 1 bouton rotatif de sélection/menus sur 10 bits (0 à 1023).
- 1 bouton poussoir de sélection/menus (2 positions, dont 1 momentanée) sur 1 bit (0 à 1).
- 1 interrupteur d'alimentation maintenue on/off (2 positions). 

 http://www.sylvainmahe.site/thumbnail/dsc08302.jpg

 http://www.sylvainmahe.site/thumbnail/dsc08301.jpg

[b]Programmation de l'automate programmable MODULABLE 32 avec MODULE :[/b]
Le programme en langage C++ fonctionnant avec MODULE est téléchargeable ici : http://www.sylvainmahe.site/download/cpp/radio_control.zip

http://www.sylvainmahe.site/thumbnail/dsc08312.jpg

http://www.sylvainmahe.site/thumbnail/dsc08313.jpg

[b]Connexions (automate programmable MODULABLE 32 sur les différents systèmes embarqués) :[/b]
- Port GPIO 1 (PB0) sur broche STATE (état) interrupteur d'alimentation maintenue.
- Port GPIO 2 (PB1) sur broche HOLD (auto-maintien) interrupteur d'alimentation maintenue.
- Port GPIO 3 (PB2) sur broche SS (slave select) mini afficheur à digits.
- Port GPIO 4 (PB3) sur broche WAVE (onde) buzzer de signalement.
- Port GPIO 5 (PB4) sur broche CSN (slave select) composant nRF24L01+.
- Port GPIO 6 (PB5) sur broche MOSI (master output slave input) mini afficheur à digits et composant nRF24L01+.
- Port GPIO 7 (PB6) sur broche MISO (master input slave output) composant nRF24L01+.
- Port GPIO 8 (PB7) sur broche SCK (serial clock) mini afficheur à digits et composant nRF24L01+.
- Port GPIO 9 (PD0) sur bouton poussoir de sélection/menus.
- Port GPIO 10 (PD1) sur interrupteur de coupure moteur/autre.
- Port GPIO 11 (PD2) sur interrupteur auxiliaire A (position 1).
- Port GPIO 12 (PD3) sur interrupteur auxiliaire A (position 3).
- Port GPIO 13 (PD4) sur interrupteur auxiliaire B (position 1).
- Port GPIO 14 (PD5) sur interrupteur auxiliaire B (position 3).
- Port GPIO 15 (PD6) sur interrupteur auxiliaire C (position 1).
- Port GPIO 16 (PD7) sur interrupteur auxiliaire C (position 3).
- Port GPIO 17 (PC0) sur interrupteur trim de gaz (position 1).
- Port GPIO 18 (PC1) sur interrupteur trim de gaz (position 3).
- Port GPIO 19 (PC2) sur interrupteur trim de tangage (position 1).
- Port GPIO 20 (PC3) sur interrupteur trim de tangage (position 3).
- Port GPIO 21 (PC4) sur interrupteur trim de roulis (position 1).
- Port GPIO 22 (PC5) sur interrupteur trim de roulis (position 3).
- Port GPIO 23 (PC6) sur interrupteur trim de lacet (position 1).
- Port GPIO 24 (PC7) sur interrupteur trim de lacet (position 3).
- Port GPIO 25 (PA7) sur curseur bouton rotatif de sélection/menus.
- Port GPIO 26 (PA6) sur curseur manche analogique des gaz.
- Port GPIO 27 (PA5) sur curseur manche analogique de tangage.
- Port GPIO 28 (PA4) sur curseur manche analogique de roulis.
- Port GPIO 29 (PA3) sur curseur manche analogique de lacet.
- Port GPIO 30 (PA2) sur curseur bouton rotatif auxiliaire.
- Port GPIO 31 (PA1) sur broche VOLT (tension) interrupteur d'alimentation maintenue. 

[b]Le concept de cette radiocommande : [/b]

Depuis les premiers temps ou je pilote des modèles radiocommandés dans des associations d'aéromodélisme jusqu'à aujourd'hui, je me suis souvent demandé et au vu de l'avancée précédente et actuelle en matière d'électronique embarquée :
Mais pourquoi donc les radiocommandes du commerce ont-elles des mémoires de modèles ? Les mémoires de modèles permettent en effet de retenir les réglages relatifs à un modèle, dans la mémoire de la radiocommande.

À ce propos je ne citerais que l'exemple d'un ami au terrain de modélisme sans le nommer, qui par mégarde se trompe assez régulièrement de mémoire de modèles (il vole avec beaucoup de choses). En conséquence cela lui arrive souvent d'écraser ses réglages, ou d'écraser son modèle tout simplement au sens physique du terme !

En fait, cette "lacune" des mémoires de modèles dans les radiocommandes modernes trouve historiquement ses racines dans la conception même des premiers radio-émetteurs/récepteurs de modélisme. En effet, les premières radiocommandes se contentaient uniquement d'être émetteur d'information, et le modèle étant lui simplement un récepteur. Dans cette situation (unidirectionnelle), il est facile de comprendre que le modèle reste toujours muet. Plus tard, les concepteurs et divers industriels se sont décidés (au vue de la demande qui augmentait) à ajouter une communication du modèle vers la radiocommande, sur un circuit électronique bien distinct et avec une antenne radio supplémentaire sur le modèle et la radiocommande. C'est un retour air/sol qui a été appelé télémétrie (en rapport avec la télémétrie à l'époque des débuts de la conquête spatiale jusqu'à nos jours).

L'avancée en matière de miniaturisation des composants permet aujourd'hui d'avoir dans une même puce un émetteur et un récepteur, qui se sert de la même antenne radio pour communiquer, ces systèmes sont appelés transceivers (émetteurs/récepteurs).

http://www.sylvainmahe.site/thumbnail/dsc08299.jpg

http://www.sylvainmahe.site/thumbnail/dsc08077.jpg

Le concept que je développe ici permet de vous expliquer l'idée même de ma radiocommande, celle-ci n'a en effet aucune mémoire de modèles, ayant souhaité aller au bout de ma logique, c'est le modèle qui contient la mémoire .

Cette idée simple permet beaucoup de choses, notamment le fait que c'est le modèle qui envoi des paramètres et réglages personnalisés à la radiocommande, qui à l'origine dispose d'un menu des paramètres et réglages vide. La radiocommande se voit alors garnie de paramètres personnalisés relatifs au modèle qui est actuellement en communication avec elle. Ces paramètres peuvent être de n'importe quel type et agir sur n'importe quelle fonction du modèle. Ce retour radio air/sol permet également à la radiocommande de disposer de l'affichage de la tension de la batterie du modèle en temps réel, et d'une télémétrie personnalisée en fonction du modèle. Une fois cette notion comprise, tout est alors possible. Pour régler votre modèle, ma radiocommande dispose alors de 15 paramètres par défaut qui en général sont assez communs aux modèles réduits (trims, alarmes, inversion des voies, courbes de gaz, etc...), et d'un maximum de 16 paramètres personnalisés par le modèle (dont le type de paramètre n'est pas défini par défaut). Ceci est largement suffisant parce que par définition même, ces paramètres sont spécifiques au modèle considéré. Terminé les réglages et menus à n'en plus finir (souvent la plupart du temps inutilisés) dans les radiocommandes du commerce !

http://www.sylvainmahe.site/thumbnail/dsc08303.jpg

Dans ce que je propose ici, vous disposez des réglages uniquement nécessaires au modèle mis en œuvre, ce qui facilite grandement son utilisation sur le terrain de modélisme.

[b]Liens utiles si vous êtes intéressés par mon projet :
[/b]
Descriptif complet de la radiocommande : http://www.sylvainmahe.site/projectRadioControl.html
L'automate programmable MODULABLE 32 : http://www.sylvainmahe.site/projectModulable32.html

Un projet associé, le quadri-hélicoptère : http://www.sylvainmahe.site/projectQuadcopter.html

Le programme MODULE avec lequel je programme tous mes projets : http://www.sylvainmahe.site/understandWhatIsModule.html
 

Je vais essayer d'agrémenter ce sujet si besoin et de fournir des explications si des personnes sont intéressés. Je suis ouvert aux suggestions, commentaires, et interrogations :)

Portrait de hercule124

Bonjour,

j'ai modifié les liens , il y avait un problème.

intéressant je regarde ca de plus près ce soir

Portrait de hercule124

Bonsoir,

quel projet, je reste sans voix.

jeune homme l'avenir est devant toi, bravo ton site est une richesse d'information.

il me faut plus de temps pour approfondir tout ça, mais je vais le prendre.

merci sylvain