Aller au contenu


Photo
- - - - -

Interpreter les pulsations d'un recepteur RC


23 réponses à ce sujet

#1 Donpi

Donpi

    Membre occasionnel

  • Membres
  • Pip
  • 154 messages

Posté 27 octobre 2015 - 07:37

Bonjour,

 

J'ai un recepteur RC 6 vois dont j'essai derecupéré les signaux.

Le but est de placer mon microcontroleur entre le recepteur et les servos.

 

J'ai trouver plusieurs schèmas quand je n'avais pas de temps et maintenant que j'en ai (du temps) je n'arrive plus a retrouver les schèmas.

 

Sur le principe il y a une histor de resistance et de condensateur pourtransformer les pulsations en voltage. Mais avec mes bases d'électronique je n'arrive pas a recréer le schèma.

C'est un peu comme quand on comprend une langue sans être foutu de la parler.

 

Bref, l'un de vous a-t-il quelque chose pour moi ?

 

A+



#2 Donpi

Donpi

    Membre occasionnel

  • Membres
  • Pip
  • 154 messages

Posté 14 décembre 2015 - 11:25

J'ai trouvé un schèma assez simple ou le signal est relié à une entrée analogique avec une resitance de 220 ohms et avec un condesateur 10uF entre a masse et l'entrée analogique.

 

J'ai fais le test, avec un condesateur céramique ça marche pas. Par contre avec un condensateur ... je sais pas cylindrique... noir... ça fonctionne mieux sans être parfait.

 

En faisant un peu de recherche sur les condo, je vois qu'il y en a toute une séries de type différent selon l'usage. MKC , MKP Ceramqiue etc..

 

Lequel dois-je choisir ? ou plutôt quel frequence ?



#3 JEF

JEF

    Membre passionné

  • Membres
  • PipPipPip
  • 819 messages
  • Gender:Male
  • Location:St Cannat (13)

Posté 15 décembre 2015 - 06:53

La technologie des condensateurs correspond aussi a certaines "valeurs" dans le sens où les céramiques, tentale, et film sont plutôt pour les petites valeurs, ne dépassant que rarement le uF Les electrochimique par contre (tel que le cylindrique noir) sont souvent là pour les grosses valeurs. Il est donc certainement plus proche de ta valeur de 10 uF que tu recherches. Ce doit être écrit dessus. 

Je n'ai jamais entendu parlé de cette technique pour interpréter les signaux de radio ?!? Pourquoi pas après tout. 

Perso, j'avais fais un petit programme qui lançait un compteur qui s’incrémente et qui s'arrête. La valeur récupéré correspond à la largeur du signal et donc de la position demandé au servo. 

Je ne me souviens plus trop comment j'avais fais, je sais que j'avais mis un bon moment à faire des essais pour trouver l'intervalle de nombre entre lesquels mon compteur me donnait des valeurs, et j'avais mi un coef' pour changer ce nombre un peu bizarre en une valeur comprise par exemple entre 0 et 255. Enfin, l'idée etait là, et je m'en étais rapproché, mais c'était il y a bien longtemps et j'en serais bien incapable maintenant. 

Par contre pour cette solution, pas de composants necessaire, pas de soudures....


Chaque jour est le premier du reste de ta vie.


#4 Microrupteurman

Microrupteurman

    Pilier du forum

  • Modérateur
  • PipPipPipPipPip
  • 2 210 messages
  • Gender:Male
  • Location:Aquitaine,Gironde
  • Interests:Tout

Posté 15 décembre 2015 - 11:53

Salut, la solution est quelque part sur le forum. Je l'avais déjà fait. Il faut un pulse in en branchant l un fil signal du rx sur une entrée, il me semble. Mais passé par une arduino pour récupérer le signal, pour avoir essayer, c'est pas ce qui a de plus efficace.


 
Page Facebook : https://www.facebook...appartelier2.0/
Page Twitter :  https://twitter.com/2Appartelier (bateau seulement)
Boutique Robot-Maker : https://www.robot-ma...er-20/produits/

Besoin d'une impression 3D grand format ? Contactez moi !
 


#5 Donpi

Donpi

    Membre occasionnel

  • Membres
  • Pip
  • 154 messages

Posté 16 décembre 2015 - 07:17

@JEF : Les deux condensateur que j'ai essayé sont des 10uF les deux. C'est la lecture de cet URL qui me fait pensé à une histoir de frequence ( sans pour autant en être sur)

http://f5zv.pagesperso-orange.fr/RADIO/RM/RM24/RM24G/RM24G12.html

 

 

 

@Microrupteurman2 : Alors oui la lecture des "pulse" sur un arduino j'ai fait et ça marche assez bien pour mon projet.

 

Cependant je souhaite réaliser mon "interpreteur" sur une module Gadgeteer custom.

J'ai choisis ça principalement à cause du language C# que je maitrise parfaitement et de l'inerface visual studio bla bla bla.

 

Ma problèmatique est que sur un seul Module je n'ai pas assez d'entrée pour lire mes 6 canaux en revanche je peux facilement mesuré 6 voltages.

D'ou l'approche.

 

Si je n'arrive pas a convertir les pulse (c'est même pas du PWM) en voltage, j'utiliserai un arduino nano en I2C qui fera parfaitement le travaille.

 

C'est juste que si je peux payé 50centimes pour 2 resistance et 3 condo au lieux de 30€ pour un arduino ça me va aussi (surtout que j'ai éclaté mon budjet avec la CNC qui s'avère couté bien plus cher que prevu)



#6 Microrupteurman

Microrupteurman

    Pilier du forum

  • Modérateur
  • PipPipPipPipPip
  • 2 210 messages
  • Gender:Male
  • Location:Aquitaine,Gironde
  • Interests:Tout

Posté 16 décembre 2015 - 07:19

La nano, tu peut la trouver a 2€ !

 

Et sinon tu peut faire un commutateur a 6 voie avec un servo et un bout de pcb.


 
Page Facebook : https://www.facebook...appartelier2.0/
Page Twitter :  https://twitter.com/2Appartelier (bateau seulement)
Boutique Robot-Maker : https://www.robot-ma...er-20/produits/

Besoin d'une impression 3D grand format ? Contactez moi !
 


#7 Donpi

Donpi

    Membre occasionnel

  • Membres
  • Pip
  • 154 messages

Posté 16 décembre 2015 - 07:37

2€ ?!?!?

 

ou ça ? la moins cher que j'ai trouver est à 24$

 

tu parles bien de ça ?

https://www.arduino....rduinoBoardNano



#8 Microrupteurman

Microrupteurman

    Pilier du forum

  • Modérateur
  • PipPipPipPipPip
  • 2 210 messages
  • Gender:Male
  • Location:Aquitaine,Gironde
  • Interests:Tout

Posté 16 décembre 2015 - 07:58

http://www.banggood.com/ATmega328P-Nano-V3-Controller-Board-Compatible-Arduino-p-940937.html


 
Page Facebook : https://www.facebook...appartelier2.0/
Page Twitter :  https://twitter.com/2Appartelier (bateau seulement)
Boutique Robot-Maker : https://www.robot-ma...er-20/produits/

Besoin d'une impression 3D grand format ? Contactez moi !
 


#9 Donpi

Donpi

    Membre occasionnel

  • Membres
  • Pip
  • 154 messages

Posté 16 décembre 2015 - 08:19

 

?!?!? bon bas j'en ai pris 10



#10 Donpi

Donpi

    Membre occasionnel

  • Membres
  • Pip
  • 154 messages

Posté 04 janvier 2016 - 05:15

Bon en fouillant le net j'ai trouver qu'on peu bêtement interpréter les signaux d'un satellite DSM2 ce qui rend le truc beaucoup plus simple.



#11 Mike118

Mike118

    Staff Robot Maker

  • Administrateur
  • PipPipPipPipPip
  • 10 188 messages
  • Gender:Male
  • Location:Anglet
  • Interests:Robotique, Entrepreneuriat, Innovation, Programmation, Résolution de problème, Recherche de solutions, Mécanique, Electronique, Créer, Concevoir

Posté 04 janvier 2016 - 08:13

J'avais pas pensé à en parler la première fois que j'avais lu ton sujet mais en effet : 
Tu peux lire tout tes signaux directement sur un seul fil . 
Si tu as une radiocommande Futaba tu as généralement directement les sorties SBUS. Sinon l'autre standard c'est le PPM, regarde si ton récepteur est directement compatible avec un de ces deux standard. Après d'autre choses sont aussi possible en fonction de ton récepteur si il n'est pas directement compatible avec l'un de ces deux standards : Un peu de hack et de bidouille en plus et ça marche pareil ;)
 

@+ 


Si mon commentaire vous a plus laissez nous un avis  !  :thank_you:

Nouveau sur Robot Maker ? 

Jetez un oeil aux blogs, aux tutoriels, aux ouvrages, au robotscope  aux articles,  à la boutique  et aux différents services disponible !
En attendant qu'une bibliothèque de fichiers 3D soit mise en place n'hésitez pas à demander si vous avez besoin du fichier 3D d'un des produits de la boutique... On l'a peut être ! 
Si vous souhaitez un robot pilotable par internet n'hésitez pas à visiter www.vigibot.com et à lire le sous forum dédié à vigibot!

 

Les réalisations de Mike118  

 

 

 


#12 Donpi

Donpi

    Membre occasionnel

  • Membres
  • Pip
  • 154 messages

Posté 07 janvier 2016 - 08:36

J'ai une Spektrum DX18i.

 

J'ai essayer un tutoriel pour lire les données depuis un satellite DSMX mais ça se fait pas tout seul.

Je vois les paquets passer et les données changer quand je bouge sur la télécommande.

 

Mais j'ai l'impression que le protocole n'est pas fait pour qu'on puisse facilement l’interpréter.

 

Je suis obliger d'utiliser un port série soft sur mon arduino ce qui rend les choses encore plus compliquées, j'ai l'impression que je perds des parquets...



#13 JEF

JEF

    Membre passionné

  • Membres
  • PipPipPip
  • 819 messages
  • Gender:Male
  • Location:St Cannat (13)

Posté 07 janvier 2016 - 07:00

Par curiosité, est ce que quelqu'un aurait déjà fait aboutir une carte  interpretant les signaux RC et les faisant ressortir sous forme d'une vitesse en PWM, et le sens definit par 2 pin, exactement comme pour utiliser un L298  ? Je vois le prix (abusé) des cartes Sabertooth et je me dis qu'avec la technique du filtre RC il y aurait peu être la possibilité de faire une équivalence.


Chaque jour est le premier du reste de ta vie.


#14 Mike118

Mike118

    Staff Robot Maker

  • Administrateur
  • PipPipPipPipPip
  • 10 188 messages
  • Gender:Male
  • Location:Anglet
  • Interests:Robotique, Entrepreneuriat, Innovation, Programmation, Résolution de problème, Recherche de solutions, Mécanique, Electronique, Créer, Concevoir

Posté 07 janvier 2016 - 11:01

Par curiosité, est ce que quelqu'un aurait déjà fait aboutir une carte  interpretant les signaux RC et les faisant ressortir sous forme d'une vitesse en PWM, et le sens definit par 2 pin, exactement comme pour utiliser un L298  ? Je vois le prix (abusé) des cartes Sabertooth et je me dis qu'avec la technique du filtre RC il y aurait peu être la possibilité de faire une équivalence.

 

Moi je le fait avec du SBUS et du PPM , ( enfin je fais même mieux que juste ça car je récupère toute les valeurs de la radio  et j'en fais ce que j'en veux ) ... je vais regarder le DSMX... mais comme je connais pas et que j'ai même pas de radiocommande avec ce protocole ... le mieux serait que tu donnes plus de détails sur ce que tu as suivi comme lien ce que tu as fait et qu'est ce qui te fait dire que tu perds des paquets ! 
 


Si mon commentaire vous a plus laissez nous un avis  !  :thank_you:

Nouveau sur Robot Maker ? 

Jetez un oeil aux blogs, aux tutoriels, aux ouvrages, au robotscope  aux articles,  à la boutique  et aux différents services disponible !
En attendant qu'une bibliothèque de fichiers 3D soit mise en place n'hésitez pas à demander si vous avez besoin du fichier 3D d'un des produits de la boutique... On l'a peut être ! 
Si vous souhaitez un robot pilotable par internet n'hésitez pas à visiter www.vigibot.com et à lire le sous forum dédié à vigibot!

 

Les réalisations de Mike118  

 

 

 


#15 JEF

JEF

    Membre passionné

  • Membres
  • PipPipPip
  • 819 messages
  • Gender:Male
  • Location:St Cannat (13)

Posté 08 janvier 2016 - 05:17

C'est a dire que je n'ai pas de futaba, et dans l'idée je souhaitais sortir d'un boitié avec un signal "complexe" (enfin, c'est loin d'être la mort non plus) pour en arriver a quelque chose d'exploitable par les cartes de commande de moteurs du commerce.

Dans ton cas, je récupère (il semblerait que sur certains récepteurs de radiocommande) un signal série, et de l'autre côté il me faudrait toujours une carte qui transforme ça en signal in1 / in2 / pwm / enable.


Chaque jour est le premier du reste de ta vie.


#16 Donpi

Donpi

    Membre occasionnel

  • Membres
  • Pip
  • 154 messages

Posté 11 janvier 2016 - 08:07

Pour info voilà comment j'ai fait.

 

J'utilise une télécommande Spektrum DX18 (paskeletrobel) avec un récepteur AR9020 et deux Satellites.

Je n'ai gardé qu'un des satellites qui fonctionne en 3.3v et qui envoi les données en série à 115200 ( et pas de récepteur ).

 

Le flux n'a pas de code de synchronisation, uniquement 2 mots de 16 bytes formatés comme suit :

 

2 bytes uniques défini à la connexion avec la télécommande ( surent pour filtrer le données de plusieurs télécommande ou je sais pas)

 

5 fois 2 bytes pour les canaux, chaque canal est composé de 4 bits pour son Id et 12 bit pour sa valeur ( attention les min et max ne sont pas identique pour tous les canaux)

 

2 bytes pour identifié le mot (dans mon cas il y en a 2)

 

2 bytes pour la séquence (surement pour certifié que le mot reçu n'est pas reçu a double)

 

Le récepteur à une sortie numérique qui semble être la même que celle du satellite ce qui devrait permettre d'avoir jusqu'3 satellites pour renforcer le signal, mais à tester.

 

Mes tests ont été fait avec un PC directement depuis un port série.

La problématique qui se pose maintenant est celle du port du Arduino, le port sériel software n'est pas assez fiable, et on ne peu pas utiliser le port sériel hardware et débuter en même temps.

 

A suivre...



#17 JEF

JEF

    Membre passionné

  • Membres
  • PipPipPip
  • 819 messages
  • Gender:Male
  • Location:St Cannat (13)

Posté 11 janvier 2016 - 11:02

Hello

Juste pour confirmer, je n'arrive pas à retrouver l'info.

Pour recupérer un signal analogique de mon servo, j'utilise un filtre passe bas, et je coupe dès la première fréquence pour récupérer la tension continue, on est d'accord ?

Avec une période de 20 ms si j'en crois google, ça nous donne 50 hz. Si je fais la formule, j'obtiens 100 nF pour le condo et 33 kohm pour ma resistance, on est d'accord ?

Est ce que quelqu'un l'a essayé ? La tension de sortie est de quel ordre environ ?

A bientôt j'espère


Chaque jour est le premier du reste de ta vie.


#18 Mike118

Mike118

    Staff Robot Maker

  • Administrateur
  • PipPipPipPipPip
  • 10 188 messages
  • Gender:Male
  • Location:Anglet
  • Interests:Robotique, Entrepreneuriat, Innovation, Programmation, Résolution de problème, Recherche de solutions, Mécanique, Electronique, Créer, Concevoir

Posté 12 janvier 2016 - 12:21

franchement le filtre RC c'est pas une bonne idée ... sauf si tu as pas du tout besoin de précision . 

Période de 20 ms,   temps haut compris entre 0,7 et 2,5ms pour un signal de 5V si tu filtre ça bien ça te fait ans le meilleur des cas un signal qui varie entre 0,175 V et  0,625 V environ. 

Ton Analogread est sur 10 bits => valeur lue entre 35 et 125 soit 90 valeurs ...qui en plus risquent de pas mal fluctuer ...sans compter que de si faible tension se font facilement parasiter ...  grosso modo si tu arrive à avoir 10 valeurs sûr avec ce système c'est bien ... mais peut être que ça te suffit...

Après tu peux plutôt ajouter un filtre actif ( genre un AOP ) pour remettre le signal sur 5V etc ... 
Mais dans ces cas là autant faire un compteur ...

Sinon pour en revenir sur le problème de débuger et d'utiliser le port série ... en fonction du matériel que tu as tu peux : Utiliser un second arduino, l'un qui sert de débug l'autre qui prend les info et les trasfert via I2C par exemple. 

Sinon si tu as une méga le problème est facilement réglé. 

Sinon tu peux éventuellement utiliser un écran lcd si tu en as un ... voir même une carte SD pour enregistrer tous tes tests...


Si mon commentaire vous a plus laissez nous un avis  !  :thank_you:

Nouveau sur Robot Maker ? 

Jetez un oeil aux blogs, aux tutoriels, aux ouvrages, au robotscope  aux articles,  à la boutique  et aux différents services disponible !
En attendant qu'une bibliothèque de fichiers 3D soit mise en place n'hésitez pas à demander si vous avez besoin du fichier 3D d'un des produits de la boutique... On l'a peut être ! 
Si vous souhaitez un robot pilotable par internet n'hésitez pas à visiter www.vigibot.com et à lire le sous forum dédié à vigibot!

 

Les réalisations de Mike118  

 

 

 


#19 Donpi

Donpi

    Membre occasionnel

  • Membres
  • Pip
  • 154 messages

Posté 12 janvier 2016 - 07:44

Les deux approches/sujets s’enchevêtrent :

 

Pour interpréter les pulsations, j'ai d'abord bêtement compté les micros secondes que durent le signale haut en utilisant des interruptions custom.

ça fonctionne bien jusqu’à 4 ou 5 vois. au delà ça fonctionne toujours mais il faut utiliser des formula mathématique pour limité la fluctuation.

Mais peut importe l'approche, comme dit Mike, c'est sans intérêt et peut précis surtout quand on voit le prix des télécommandes numériques aujourd'hui.

 

Sinon pour la lecture, j'ai effectivement essayer avec deux arduino en i2c, mais j'ai l^'impression que même la lecture ne marche pas.

Car j'ai fait un petit bout de programme qui allume une LED si Serial.available() > 0. Mais elle ne s'allume jamais, alors que la led RX du arduino clignote a mort.

Je suis un peu perdu.



#20 JEF

JEF

    Membre passionné

  • Membres
  • PipPipPip
  • 819 messages
  • Gender:Male
  • Location:St Cannat (13)

Posté 12 janvier 2016 - 08:58

Merci mike, en fait je rentre le signal dans un TL082 (que ca sous la main) en comparateur, pour tenter d'en sortir un signal logique en fait. Je vais tenter l'expérience du coup, mais je ne pensais pas qu'il reste si peu.

Chaque jour est le premier du reste de ta vie.




Répondre à ce sujet



  


1 utilisateur(s) li(sen)t ce sujet

0 members, 1 guests, 0 anonymous users