Modélisme, Électronique

codeur PPM : ça marche ...

.... mais je n’ai pas le temps d’aller plus loin !
dimanche 20 juin 2010 par YannickF

Voici les sources et quelques informations à propos de mon codeur PPM.
Je suis donc parti d’un boitier de F14, pour lequel je n’ai conservé que les manche et la douille de charge de la batterie.
Un écran LCD 240x64 pixels a été intégré, et un module Alvidi.de (basé sur un processeur Atmel ATMEGA128 à 16 MHz) gère tout ça :
— afficheur LCD et gestion des menus (trop lent)
— rotation de l’encodeur rotatif (pas fiable d’ailleurs)
— positions des différents potentiomètres (après une phase de calibrage), des trims etc... (les données de calibrages sont stockées dans l’EEPROM)
— codage PPM ou codage O24RCP (selon le code source utilisé, voir les fichiers joints)

Un appui sur l’encodeur lors du démarrage permet d’accèder à la phase de calibrage, du choix du type de PPM (positive ou négative) etc.

J’ai testé cet ensemble sur une aile volante BEE, il m’a fallu donc coder "en dur" un mixage de type aile delta... et ça fonctionne !

Je vous laisse vous débrouiller avec le code source commenté, les techniques de programmation ne sont sans doute pas les meilleures.

Grosso modo, à part la gestion des menus qui n’est pas au point, le codage PPM fonctionne selon un principe simple :
— lecteur des positions des manches par les convertisseurs analogique-numériques (ADC)
— calcul des positions vis à vis de l’étalonnage effectué. C’est à dire par rapport à la valeur renvoyée par l’ADC lorsque les manches sont au neutre, au mini et au maxi)
— calcul de la durée de l’impulsion PPM à réaliser
— stockage des ces durées dans un tableau
— un timer (contrôlé par des interruptions) va gérer et créer un signal PPM à partir des données dans le tableau, toutes les 20 ms

Il faut bien avoir en tête le fonctionnement des timers sur un ATmega pour comprendre cette gestion !

Les photos montrent un peu le prototype. Mais je n’avais alors pas de module XBee disponible. Il est donc impossible de prendre des photos de l’afficheur LCD et des menus (le programme teste si le XBee fonctionne avant d’afficher quoi que ce soit)


Portfolio

Module Alvidi sur son circuit imprimé Les manches et l'afficheur LCD Base F14 Robbe/Futaba

titre documents joints

Code source version O24RCP

20 juin 2010
info document : Zip
239.3 ko

Dossier de travail AVRstudio


Code source version PPM

20 juin 2010
info document : Zip
237.1 ko

Dossier de travail pour AVRstudio


Codeur : Fichiers Eagle, schéma, PCB

20 juin 2010
info document : Zip
127.2 ko

Emeteur XBee : fichiers Eagle

20 juin 2010
info document : Zip
64 ko

Accueil | Contact | Plan du site | | Statistiques du site | Visiteurs : 1865 / 87087

Suivre la vie du site fr  Suivre la vie du site Codeur PPM & O24RCP   ?

Site réalisé avec SPIP 3.0.13 + AHUNTSIC

Creative Commons License