Besoin d'une petite mise au point sur les radiocommandes

L’espace pour parler de tout ce qui concerne l’électronique embarquée
toytoy
Messages : 7
Inscription : 28 oct. 2014 21:24

Besoin d'une petite mise au point sur les radiocommandes

Message par toytoy »

Bonjour,

N'ayant jamais fait joujou avec les radiocommandes, et étant en plein tests de matériel, j'aurais besoin d'une petite mise au point, pour savoir ce qui est faisable ou non.

- Mon besoin :

Envoyer 3 informations tout ou rien sur des entrée de carte arduino via une radio commande

C'est pour cette partie que je bloque, j'ai remarqué que les voies des recepteur son équipés de 3 bornes : GND, VCC, Vinformation
Je pensais ruser en utilisant la tension entre GND et Vinformation, malheureusement cette tension est de l'ordre du 0.xx V ce qui n'est pas suffisant pour activer une entrée (je pourrais utiliser une analogique et bidouiller, mais je ne veux pas).

Y'a t il du matériel qui permet de faire ça ?

Autre question, certaines radio disposent d'interrupteurs à levier, c'est peut etre pour ce genre de fonction ?


Question supplémentaire :

Je souhaite alimenter mon récepteur radio en 5V. Je souhaite utiliser un moteur brushed 12V commandé par un variateur, lui même commandé par la radio. Je remarque que sur les recepteurs il n'y a pas de broche d'alimentation, c'est le variateur qui alimente le recepteur. Le souci est que je souhaite absolument alimenter le recepteur avec une source différente de celle du moteur. Est-ce faisable ?


Merci d'avance ;)
Avatar de l’utilisateur
papy94
Messages : 654
Inscription : 23 janv. 2010 14:31
Localisation : Champigny sur marne
Contact :

Re: Besoin d'une petite mise au point sur les radiocommandes

Message par papy94 »

salut

tu prend le signal de ton récepteur et tu le branches sur une entrée de l'arduino,tu branches le moins de ton recepteur sur le moins de l arduino et le + idem sur le 5volt de l arduino


Code : Tout sélectionner

/*================== MESURE du signal RECEPTEUR/EMETTEUR FUTABA  ======================
 Deplace le servo et affiche sur le moniteur serie
 les valeurs du signal recepteur  et l'angle du servo
avec une carte Arduino.
 =====================================================================================*/
#include <SoftwareServo.h>        // Appel de la librairie servo
SoftwareServo servo_1;            // Declare le servo N1
int Signal_Recepteur = 3;         // Declare la variable (Signal_Recepteur ) sur le pin 3. Le recepteur sera branche ici
int Val_Signal = 0;               // Declare la variable (Val_Signal)
int Angle_Servo = 0;              // Declare la variable (Angle_Servo)
int Old_Angle_Servo = 0;          // Declare la variable (Old_Angle_Servo)
//============================================================================================
void setup() 
{ 
  Serial.begin(9600);                 // Ouvre le port serie, à 9600 bps
  pinMode(Signal_Recepteur, INPUT);   // Déclare la variable signal Recepteur en entrée
  servo_1.attach(4);                  // Attache le servo (servo_1) au pin 4
} 
//===========================================================================================
void loop() 
{ 
  
  //noInterrupts();
  Val_Signal = pulseIn(Signal_Recepteur, HIGH, 30000);   // Donne a  la variable (Val_Signal) la valeur de (Signal_Recepteur) lue sur le pin 3
  Angle_Servo = map(Val_Signal, 1000, 2000, 45, 135);    // Calibre des valeurs de (val) pour le servo de 0 à 180°  
  Angle_Servo = constrain(Angle_Servo, 45, 135);         // Fixe les valeurs minimum et maximum en degre de monservo
  
//********deplace le servo de la valeur angulaire****************************
  servo_1.write(Angle_Servo);            // Positionne le servo n°1  
  delay(15);                             // Delai pour que le monservo atteigne sa position
  SoftwareServo::refresh();              // Rafraichissement bibliothèque servo
  //interrupts();

//***************************************************************************
  if (Angle_Servo  >= Old_Angle_Servo +5  || Angle_Servo <= Old_Angle_Servo -5)      //
  {
   Serial.print(Val_Signal);      // Ecrit sur lecran Val_Signal du recepteur
   Serial.print(" = ");           // Ecrit sur lâecran " = "
   Serial.println(Angle_Servo);   // Ecrit sur l ecran angle correspondant du servo
   delay (50);                   // Attente 1 seconde
  Old_Angle_Servo = Angle_Servo;
  }
} 
//==========================FIN DU PROGRAMME ===============================================

donc sachant que les impulsions de ton émetteur/récepteur vont de 1000 à 2000, le point neutre est donc a 1500 pour un interrupteur 3 postions, et pour un interrupteur 2 positions c'est au dessus de 1500 et en dessous de 1500

regardes sur le Web cela regorge d'exemples

Question supplémentaire :
tu retires le fil plus (rouge normalement) de la prise qui va au récepteur, tu ne laisses que le moins et le signal
Répondre