Multiplex Combi 80

    Diese Seite verwendet Cookies. Durch die Nutzung unserer Seite erklären Sie sich damit einverstanden, dass wir Cookies setzen. Weitere Informationen

    • Hehe nice! Bringst du den zum MMM mit? :D *Interessiert*

      bissl oot:

      Mein Bruder und ich bauen uns gerade auch einen Quadro.
      Als zentrale Steuereinheit dient ein Raspberry Pi mit Linux Betriebssystem!
      Er proggt den Compi und ich bin für die Peripherie (Elektronik) und dem mechanischen Aufbau zuständig! :D

      Können bislang über WLAN auf den Raspi zugreifen und so die Motoren (über I²C des Raspis) ansteuern! :D

      XYZ-Lagesensoren, GPS und so folgen... :D

      Wenn wir was "Handfestes" haben, nehmen wir den im Sept. auch mit! :D Nur erst muss meine Werkstatt fertig werden, damit ich den eigendlichen Quadro bauen kann... :D


      oot- Ende (sry, denke aber dich könnte es interessieren... :D )
    • Nimm als Sensorboard das 10DOF da ist alles drauf was du brauchst zzgl Barometer und Kompas. Alles über I2C.

      Ich bau mir gerade ein Adaperkabel für die GOPRO und ein neuer bzw Wechselakku kommt auch noch in die Funke. Klar kann ich den mitbringen. Aber das sind vollbeladen fast 3kg die fliegen.

      Mitlerweile wiegt die Funke 1,4kg. Wird Zeit für einen breiteren Nackengurt.
      Erfahrungen sind was sehr nützliches, leider macht man sie erst kurz nachdem man sie gebraucht hätte...
    • So weiter gehts mit dem Aufwerten. Jetzt wird eine neue SumPPM Encoderplatine entwickelt und verbaut.
      Besonderheiten 6 Analoge Kanäle und 2 Digitale 3 Stufen Kanäle + zuschaltbarer X-Mischer auf Kanal 3 und 4.


      Hier der vorläufige Programmcode:

      Edit: Programmcode entfernt. Neuer ist weiter unten.
      Erfahrungen sind was sehr nützliches, leider macht man sie erst kurz nachdem man sie gebraucht hätte...

      Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von Krümmel ()

    • So meine Software für die 9 Kanal Funke ist bis auf den noch nicht funktionierenden Kreutzmischer fertig.

      Es funktioniert soweit alles und wenn alle Kanäle auf 100% laufen habe ich einen Frame von 18,5ms. Müsste also passen.

      Wenn jemand interesse an dem Layout hat einfach melden. Die Platine ist etwa 55X48mm groß.

      So und hier der Programmcode zum rumbasteln.

      //----------------------// 440µS Peak
      //9 Kanal SumPPM Encoder//
      //by Kruemmel //
      //----------------------//

      const int Sum_PPM = 4; //Pin 13 ist der Anschluss für das Sendemodul
      const int trig = 5; //Synkpin für Oszilloskop

      //Analog-------------------------------------------------------
      int Kanal_1 = A0; //Analoge Kanäle den Pins zuordnen
      int Kanal_2 = A1;
      int Kanal_3 = A2;
      int Kanal_4 = A3;
      int Kanal_5 = A4;
      int Kanal_6 = A5;

      //Digital-------------------------------------------------------
      int X_Mischer = 11; //Digitaler Pin für Mischer EIN/AUS
      int x = 0; //Speicher für X-Mischer
      int y = 0;

      int Kanal_7 = 0; //Kanal 7 Wert
      int Kanal_7_high = 13;
      int Kanal_7_low = 12;

      int Kanal_8 = 0; //Kanal 8 Wert
      int Kanal_8_high = 11;
      int Kanal_8_low = 10;

      int Kanal_9 = 0; //Kanal 9 Wert
      int Kanal_9_high = 9;
      int Kanal_9_low = 8;

      //Zwischenspeicher-------------------------------------------------------
      int Val0 = 0; //Wertespeicher für die analogen Kanäle
      int Val1 = 0;
      int Val2 = 0;
      int Val3 = 0;
      int Val4 = 0;
      int Val5 = 0;

      int Sum_PPM_State = LOW; //PPMPin ist zu Beginn 0
      long previousMicros = 0; //Mikrosekundenzähler

      long interval = 22000; //Alle 22mS wird die PPM generierung gestartet



      void setup()
      {
      pinMode(Kanal_7_high, INPUT);
      pinMode(Kanal_7_low, INPUT);
      pinMode(Kanal_8_high, INPUT);
      pinMode(Kanal_8_low, INPUT);
      pinMode(Kanal_9_high, INPUT);
      pinMode(Kanal_9_low, INPUT);
      pinMode(Sum_PPM, OUTPUT); //Pin wird als Ausgang gesetzt
      }

      void loop()
      {
      unsigned long currentMicros = micros(); //Zeitwert = Zeitzähler des AVR

      //-------------------------------------------------------
      Val0=map(analogRead(Kanal_1), 0, 1023, 560, 1560); //Umrechnen von analogen Wert auf 1-2mS (440µS Peak + Pause)
      Val1=map(analogRead(Kanal_2), 0, 1023, 560, 1560);
      Val2=map(analogRead(Kanal_3), 0, 1023, 560, 1560);
      Val3=map(analogRead(Kanal_4), 0, 1023, 560, 1560);
      Val4=map(analogRead(Kanal_5), 0, 1023, 560, 1560);
      Val5=map(analogRead(Kanal_6), 0, 1023, 560, 1560);

      //-------------------------------------------------------
      /* if (X_Mischer = HIGH) // X-Mischer für Kanal 3 und 4
      {
      x = (Val2/2) + (Val3/2);
      y = Val2 - Val3 + 560;
      Val2 = x;
      Val3 = y;
      }
      */
      //-------------------------------------------------------
      if (digitalRead(Kanal_7_high) == HIGH) //Kanal 7 high, low, mid
      {
      Kanal_7 = 1560;
      }

      else if (digitalRead(Kanal_7_low) == HIGH)
      {
      Kanal_7 = 560;
      }

      else
      {
      Kanal_7 = 1060;
      }

      //-------------------------------------------------------
      if (digitalRead(Kanal_8_high) == HIGH) //Kanal 8 high, low, mid
      {
      Kanal_8 = 1560;
      }

      else if (digitalRead(Kanal_8_low) == HIGH)
      {
      Kanal_8 = 560;
      }

      else
      {
      Kanal_8 = 1060;
      }

      //-------------------------------------------------------
      if (digitalRead(Kanal_9_high) == HIGH) //Kanal 9 high, low, mid
      {
      Kanal_9 = 1560;
      }

      else if (digitalRead(Kanal_9_low) == HIGH)
      {
      Kanal_9 = 560;
      }

      else
      {
      Kanal_9 = 1060;
      }

      //-------------------------------------------------------
      if(currentMicros - previousMicros > interval) //Wenn 22mS erreicht sind starte SumPPM generierung
      {
      previousMicros = currentMicros;
      digitalWrite(trig, HIGH); //Triggerpin für Oszilloskop
      digitalWrite(Sum_PPM, HIGH); //Pin 13 auf 1
      delayMicroseconds(440); //440µ warten
      digitalWrite(Sum_PPM, LOW); //Pin 13 auf 0
      delayMicroseconds(Val0); //warte 560-1560µS
      digitalWrite(Sum_PPM, HIGH); //alles von vorne
      delayMicroseconds(440);
      digitalWrite(Sum_PPM, LOW);
      delayMicroseconds(Val1);
      digitalWrite(Sum_PPM, HIGH);
      delayMicroseconds(440);
      digitalWrite(Sum_PPM, LOW);
      delayMicroseconds(Val2);
      digitalWrite(Sum_PPM, HIGH);
      delayMicroseconds(440);
      digitalWrite(Sum_PPM, LOW);
      delayMicroseconds(Val3);
      digitalWrite(Sum_PPM, HIGH);
      delayMicroseconds(440);
      digitalWrite(Sum_PPM, LOW);
      delayMicroseconds(Val4);
      digitalWrite(Sum_PPM, HIGH);
      delayMicroseconds(440);
      digitalWrite(Sum_PPM, LOW);
      delayMicroseconds(Val5);
      digitalWrite(Sum_PPM, HIGH);
      delayMicroseconds(440);
      digitalWrite(Sum_PPM, LOW);
      delayMicroseconds(Kanal_7);
      digitalWrite(Sum_PPM, HIGH);
      delayMicroseconds(440);
      digitalWrite(Sum_PPM, LOW);
      delayMicroseconds(Kanal_8);
      digitalWrite(Sum_PPM, HIGH);
      delayMicroseconds(440);
      digitalWrite(Sum_PPM, LOW);
      delayMicroseconds(Kanal_9);
      digitalWrite(Sum_PPM, HIGH);
      delayMicroseconds(440);
      digitalWrite(Sum_PPM, LOW);
      digitalWrite(trig, LOW);
      }
      }
      Erfahrungen sind was sehr nützliches, leider macht man sie erst kurz nachdem man sie gebraucht hätte...
    • So jetzt kann ich mal wieder etwas vorzeigen. Auf dem Bild ist die neue PPM Platine zu sehen. Die Abmaße sind identisch mit der der originalen Platine. Er fehlt halt der Steckkontackt für die Zusatzmodule und die Buchse vorne ist halt auch nicht angeschlossen. D.h. Der Stecker ist nur für Plus und Minus da. Die Platine erzeugt ein 6 + 3 Signal. Heißt: 6 Propotionale Kanäle und 3 3-Stufen Kanäle. Soweit läuft das auch alles (Sogar der Level shifter für das 40MHz Modul). Nur die Kanäle gehen von 1,3-1,7mS weil die Potis nicht von 0-5V gehen. Kann ich aber leicht in der Software ändern. Testen kann ich aber nur 6 Kanäle bei 2,4GHz und 4 bei 40MHz da mir die passenden Empfänger fehlen. Aber am 40MHz Empänger am Summensignal sieht alles super aus. Denke dann dürfte der Rest auch passen. Fehlt nur noch das Testen der Kreutzmischers :evil: .
      Zweitaccount von Krümmel

      Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von Exotoxin ()

    • So ein weiterer Umbau wurde getätigt. Diesmal musste eine Multiplex Combi 90 herhalten.
      Bei Ebay als defeckt gekauft, getestet und festgestellt es geht nur ein Kanal nicht. Der zweite. Keine Lust auf Fehlersuche gehabt (Poti umstecken half nichts) und eine neue Platine entworfen. Herausgekommen ist wieder eine 9 Kanal Funke mit 35MHz und 2,4GHz. Mehr Schalter als Kanäle, weil es war einfach zu viel Platz da :)
      Erfahrungen sind was sehr nützliches, leider macht man sie erst kurz nachdem man sie gebraucht hätte...