Projet de Diversity

Tous bricolages et astuces concernant de près ou de loin le domaine du multicoptère...
Avatar du membre
manolozen
Souscripteur
Souscripteur
Messages : 2107
Enregistré le : 05 nov. 2013, 21:41
Localisation : Région de Strasbourg

Re: Projet de Diversity

Message non lu par manolozen »

Louchoo avait le meme systeme, il en est revenu au trepied car le sac manquait de stabilité, a voir
Envoyé depuis la galaxie S2, ouais c'est loin ;)------------------------------La sagesse du quadiste------------------------------

Quad accro Crius aiop-Frame warthox 20cm-Moteur rctimer hp2212 1000kv outrunner-Esc rctimer 30A reflashés dernière version simonk-Hélices Gemfmann 8x45-Lipo Turnigy 2200 4s-Radio Turnigy 9x sous er9x

Multicoptère Drone Multirotor Quadricoptere voltige accro
Avatar du membre
Maxxhimum
Condor
Condor
Messages : 750
Enregistré le : 26 avr. 2014, 10:23
Localisation : Revel

Re: Projet de Diversity

Message non lu par Maxxhimum »

Ha ça ! un sac à dos qui tient pas debout tout seul c'est qu'il est mal fait. Pas vrai foxxy !!!
  • QX90c
    YetiXL
    Mavic
    Taranis plus
    Skyzone v3
Rester zen et boire frais/Responsum in Foro
Avatar du membre
Foxxy
Administrateur du site
Administrateur du site
Messages : 4819
Enregistré le : 07 déc. 2013, 21:54
Localisation : Cavaillon (84) Pays du vent
Contact :

Re: Projet de Diversity

Message non lu par Foxxy »

C'est marrant ça, mais quand j'étais en activité et qu'on partait en manoeuvres, avec un pack de Heineken au fond, mon sac à dos tenait debout tout seul. Mais au bout d'un temps, les Kens se faisaient de plus en plus rares, le sac n'était plus aussi bien lesté et ne tenait pas bien droit, le porteur du sac non plus d'ailleurs :rire: :rire:
L'expérience de chacun, c'est le trésor de tous
 
                   
leraver
Luciole
Luciole
Messages : 18
Enregistré le : 12 avr. 2015, 13:52

Re: Projet de Diversity

Message non lu par leraver »

Hello je crois que en gros l'idée c'est ca::

dsl deterage de poste, mais en faite je cherche a me faire une switch diversity


http://www.rcgroups.com/forums/showthread.php?t=1955631

un switch low cost: http://www.hobbyking.com/hobbyking/stor ... tcher.html

le code de arduino:

Code : Tout sélectionner

// Calibration data
const int rssi_best_A=200;
const int rssi_worst_A=860;
const int rssi_best_B=200;
const int rssi_worst_B=874;

const int ledA_PIN=4; //digital pin conncted to the led indicating selection of receiver A
const int ledB_PIN=12; //digital pin conncted to the led indicating selection of receiver B
const int ledM_PIN=2; //digital pin conncted to the led indicating AUTO mode
const int button_PIN=6;//digital pin connected to the button used for selecting the mode: A, B or AUTO. Pulled to Vcc by some resistor.


//Hysteresis factor to prevent from switching back and forth too fast if both RSSI are almost the same.
const float hys=1.01;

const int video_sw_PIN=3;//digital pin connected to the video switch (PWM)
const int swA=45;// value to send (in PWM) in order to select source A
const int swB=135;// value to send (in PWM) in order to select source B

const int rssi_bar1_PIN=7;//digital pin connected to the rssi output (PWM)
const int rssi_bar2_PIN=9;//digital pin connected to the rssi output (PWM)
const int rssi_bar3_PIN=10;//digital pin connected to the rssi output (PWM)
const int rssi_bar4_PIN=8;//digital pin connected to the rssi output (PWM)
const int rssi_bar5_PIN=11;//digital pin connected to the rssi output (PWM)

Servo video_sw;

const int A=1;
const int B=-1;
const int forceA=A;
const int forceB=B;
const int AUTO=0;

int mode;

int video_source;
int rssi_val_A=0;
int rssi_val_B=0;
int rssi=0;

void setup()
{
    pinMode(ledA_PIN, OUTPUT);
    pinMode(ledB_PIN, OUTPUT);
    pinMode(rssi_bar1_PIN, OUTPUT);
    pinMode(rssi_bar2_PIN, OUTPUT);
    pinMode(rssi_bar3_PIN, OUTPUT);
    pinMode(rssi_bar4_PIN, OUTPUT);
    pinMode(rssi_bar5_PIN, OUTPUT);
  
    pinMode(button_PIN, INPUT);
    video_sw.attach(video_sw_PIN);
    // Start in AUTO mode:
    mode=AUTO;
    switch_to(A);digitalWrite(ledM_PIN,HIGH);
   
   Serial.begin(9600); 
   
    
  }

void ShowRSSI(const int rssi) {
const int n=map(rssi,0,999,0,6);
if (n>0) digitalWrite(rssi_bar1_PIN,HIGH); else digitalWrite(rssi_bar1_PIN,LOW);
if (n>1) digitalWrite(rssi_bar2_PIN,HIGH); else digitalWrite(rssi_bar2_PIN,LOW);
if (n>2) digitalWrite(rssi_bar3_PIN,HIGH); else digitalWrite(rssi_bar3_PIN,LOW);
if (n>3) digitalWrite(rssi_bar4_PIN,HIGH); else digitalWrite(rssi_bar4_PIN,LOW);
if (n>4) digitalWrite(rssi_bar5_PIN,HIGH); else digitalWrite(rssi_bar5_PIN,LOW);

}

void switch_to(int source) {
  switch(source) {
      case A:
        video_source=A;
        digitalWrite(ledA_PIN,HIGH);
        digitalWrite(ledB_PIN,LOW);
        video_sw.write(swA);
        break;
      case B:
        video_source=B;
        digitalWrite(ledB_PIN,HIGH);
        digitalWrite(ledA_PIN,LOW);
        video_sw.write(swB);
        break;
  }
}

void loop() {

 
 rssi_val_A=analogRead(rssi_PIN_A);
 rssi_val_B=analogRead(rssi_PIN_B);

 //Serial.print("Raw RSSI A=");Serial.print(rssi_val_A);Serial.print("\n");
 //Serial.print("Raw RSSI B=");Serial.print(rssi_val_B);Serial.print("\n");

    
 // Rescaling
  rssi_val_A=constrain(map(rssi_val_A,rssi_best_A,rssi_worst_A,999,0),0,999);
  rssi_val_B=constrain(map(rssi_val_B,rssi_best_B,rssi_worst_B,999,0),0,999);
       
 //Serial.print("Scaled RSSI A=");Serial.print(rssi_val_A);Serial.print("\n");
 //Serial.print("Scaled RSSI B=");Serial.print(rssi_val_B);Serial.print("\n");
 //delay(2000);
       
       
   if (mode==AUTO) {
     if (((float) rssi_val_A > rssi_val_B*hys) && video_source==B) switch_to(A);   
     if (((float) rssi_val_B > rssi_val_A*hys) && video_source==A) switch_to(B);   
   }

 if (video_source==A) {
    ShowRSSI(rssi_val_A);
  } else {
    ShowRSSI(rssi_val_B);
  }
  



 
       
//Check the push button for possible mode change
  int but=digitalRead(button_PIN);
  if (but==LOW) {
      switch(mode) {
          case forceA:
          mode=AUTO;switch_to(A);digitalWrite(ledM_PIN,HIGH);break;
          case AUTO:
            mode=forceB;switch_to(B),digitalWrite(ledM_PIN,LOW);break;
          case forceB:
            mode=forceA;switch_to(A);break;
      }
      delay(500);
    }

 
delay(10);

}
Modifié en dernier par leraver le 24 avr. 2015, 13:49, modifié 1 fois.
leraver
Luciole
Luciole
Messages : 18
Enregistré le : 12 avr. 2015, 13:52

Re: Projet de Diversity

Message non lu par leraver »

Image


Image

Image
leraver
Luciole
Luciole
Messages : 18
Enregistré le : 12 avr. 2015, 13:52

Re: Projet de Diversity

Message non lu par leraver »

Le rssi d'un recepteur 900/1.2

Image
leraver
Luciole
Luciole
Messages : 18
Enregistré le : 12 avr. 2015, 13:52

Re: Projet de Diversity

Message non lu par leraver »

Sachant que perso le code, pour moi c'est aussi du chinois....
Avatar du membre
manolozen
Souscripteur
Souscripteur
Messages : 2107
Enregistré le : 05 nov. 2013, 21:41
Localisation : Région de Strasbourg

Re: Projet de Diversity

Message non lu par manolozen »

Sympatoche tout ca.
C'est quoi l'antenne avec 4 brins vers le bas, jamais vu...
Envoyé depuis la galaxie S2, ouais c'est loin ;)------------------------------La sagesse du quadiste------------------------------

Quad accro Crius aiop-Frame warthox 20cm-Moteur rctimer hp2212 1000kv outrunner-Esc rctimer 30A reflashés dernière version simonk-Hélices Gemfmann 8x45-Lipo Turnigy 2200 4s-Radio Turnigy 9x sous er9x

Multicoptère Drone Multirotor Quadricoptere voltige accro
leraver
Luciole
Luciole
Messages : 18
Enregistré le : 12 avr. 2015, 13:52

Re: Projet de Diversity

Message non lu par leraver »

Cela n'est pas de moi, Ce sont des lien vers RCgroup, l'antenne est en effet plutôt chouette, il me semble en avoir déjà vu sur des trans radio de bateau...
Avatar du membre
Foxxy
Administrateur du site
Administrateur du site
Messages : 4819
Enregistré le : 07 déc. 2013, 21:54
Localisation : Cavaillon (84) Pays du vent
Contact :

Re: Projet de Diversity

Message non lu par Foxxy »

L'antenne c'est une ground plane. Un brin vertical qui assure l’émission ou la réception et 4 brins ou plus, orientés vers le bas pour faire un plan de sol ou plan de masse. C'est le même système que les antennes de radio-amateurs comme celle-ci :
Image

Pour le Diversity que tu montres leraver, j'ai bien peur qu'il y un un peu trop de latence lors des switchs d'un rx à l'autre. Un Arduino pour décoder, un switch pour basculer le signal vidéo, il risque d'y avoir un "certain temps" pour le traitement. D'autant que dans le code j'ai vu pas mal de digital write, et c'est une commande qui prend un peu de temps.
Perso j'ai laissé tomber le projet. Quand je vois ce que fait un FR632 eu égard à son prix, je me suis dit que le jeu n'en valait pas la chandelle.
L'expérience de chacun, c'est le trésor de tous
 
                   
Répondre

Retourner vers « TUTOS, Bricolages et Astuces »