Anzeige 
Seite 1 von 2 12 LetzteLetzte
Ergebnis 1 bis 15 von 21

Thema: Fliegende Kugel

  1. #1
    User Avatar von Reinhard
    Registriert seit
    26.10.2003
    Ort
    TUT
    Beiträge
    630
    Daumen erhalten
    18
    Daumen vergeben
    1
    0 Nicht erlaubt!

    Standard Fliegende Kugel

    Hallo,

    http://www.spiegel.de/video/video-1138178.html

    wer baut das nach?
    Sollte in Hobbyausführung für weniger als 800 Teuronen möglich sein.
    Meiner Ansicht nach benötigt man 3 Piezokreisel für die "Eigenstabilität", oder?
    Grüße
    Reinhard
    ........... lieber analoge Realität, als digitale Virtualität ..........
    Like it!

  2. #2
    User
    Registriert seit
    22.03.2011
    Ort
    Duisburg
    Beiträge
    22
    Daumen erhalten
    0
    Daumen vergeben
    0
    0 Nicht erlaubt!

    Standard

    Auf jeden Fall nicht schlecht

    hätte ich auch gern

    Gruß Micha
    Like it!

  3. #3
    User
    Registriert seit
    20.06.2008
    Ort
    Freiburg im Breisgau
    Beiträge
    552
    Daumen erhalten
    0
    Daumen vergeben
    0
    0 Nicht erlaubt!

    Standard

    800€

    niemals. max 200€ komplett mit akku excl. sender/empfänger
    Like it!

  4. #4
    User
    Registriert seit
    24.01.2010
    Ort
    Haiger
    Beiträge
    4.131
    Daumen erhalten
    153
    Daumen vergeben
    18
    0 Nicht erlaubt!

    Standard

    seh ich auch so, mit nem Arduino und WMC sollte das kein Thema sein.
    Like it!

  5. #5
    User
    Registriert seit
    14.05.2010
    Ort
    Alsdorf
    Beiträge
    33
    Daumen erhalten
    0
    Daumen vergeben
    0
    0 Nicht erlaubt!

    Standard

    KKmulticopter kann das schon. VTOL oder SingleCopter firmware vorarausgesetzt.

    Gruß Christian
    Like it!

  6. #6
    User
    Registriert seit
    06.05.2011
    Ort
    Reinsdorf
    Beiträge
    11
    Daumen erhalten
    0
    Daumen vergeben
    0
    0 Nicht erlaubt!

    Standard

    Das Ding sieht ja wirklich nicht schlecht aus.
    Like it!

  7. #7
    User
    Registriert seit
    18.05.2010
    Ort
    Solingen
    Beiträge
    382
    Daumen erhalten
    0
    Daumen vergeben
    0
    0 Nicht erlaubt!

    Standard

    Hi,

    Zitat Zitat von Crizz Beitrag anzeigen
    seh ich auch so, mit nem Arduino und WMC sollte das kein Thema sein.
    soweit so gut :P nur wie macht mann das den jetzt damit ?
    habe so ein fertiges board hier liegen und hab auch schon mal in die MWC 1_8 software geguckt. ich kann aber bisher "nur" javascript und php leider noch kein c

    mein ansatz wäre den tricopter zu nehmen. da ist yaw ja schon auf einem servo... jetzt müsste man roll und pitch noch vom throttle lösen und auch jeweils auf ein servo legen.

    wenn mir hier jemand ungefähr sagen könnte wo ich da ansetzen müsste würde ich mich daran geben..


    gruß

    felix
    http://erkie.github.com/Flug und Schießübung ..
    Like it!

  8. #8
    User
    Registriert seit
    18.05.2010
    Ort
    Solingen
    Beiträge
    382
    Daumen erhalten
    0
    Daumen vergeben
    0
    0 Nicht erlaubt!

    Standard

    sorry für den doppelpost

    aber habe mal angefangen am code rum zu basteln ... breuchte aber hilfe .. throttle von allen axen entkoppeln hat schonmal gelappt hab auch für die anderen drei servos schon was kopiert .. aber die zeigen keine reaktion..

    was mir (denke ich) noch fehlt ist, wie ich die definirten servos mit dem atomicServo verbinde..

    hier meine änderungen

    config.h
    Code:
    /* For Flying Ball */
    #define FBALL
    
    
    /* The type of multicopter */
    //#define GIMBAL
    //#define BI
    //#define TRI
    //#define QUADP
    //#define QUADX
    //#define Y4
    //#define Y6
    //#define HEX6
    //#define HEX6X
    //#define OCTOX8 //beta
    //#define OCTOFLATP //beta
    //#define OCTOFLATX //beta
    //#define FLYING_WING //experimental
    
    ...
    ...
    #define YAW_DIRECTION 1 // if you want to reverse the yaw correction direction
    //#define YAW_DIRECTION -1
    
    #define PITCH_DIRECTION 1 // if you want to reverse the pitch correction direction <- neu von mir
    //#define YAW_DIRECTION -1
    
    #define ROLL_DIRECTION 1 // if you want to reverse the roll correction direction <- neu von mir
    //#define YAW_DIRECTION -1
    ...
    ...
    
    /* you can change the tricopter servo travel here */
    #define TRI_YAW_CONSTRAINT_MIN 1020
    #define TRI_YAW_CONSTRAINT_MAX 2000
    #define TRI_YAW_MIDDLE 1500
    
    /* you can change the Flying Ball servo travel here */
    #define FBALL_YAW_CONSTRAINT_MIN 1020
    #define FBALL_YAW_CONSTRAINT_MAX 2000
    #define FBALL_YAW_MIDDLE 1500
    
    #define FBALL_PITCH_CONSTRAINT_MIN 1020
    #define FBALL_PITCH_CONSTRAINT_MAX 2000
    #define FBALL_PITCH_MIDDLE 1500
    
    #define FBALL_ROLL_CONSTRAINT_MIN 1020
    #define FBALL_ROLL_CONSTRAINT_MAX 2000
    #define FBALL_ROLL_MIDDLE 1500
    in der def.h
    Code:
    ...
    #if defined(PROMINI)
      #define LEDPIN_PINMODE             pinMode (13, OUTPUT);
      #define LEDPIN_SWITCH              PINB |= 1<<5;     //switch LEDPIN state (digital PIN 13)
      #define LEDPIN_OFF                 PORTB &= ~(1<<5);
      #define LEDPIN_ON                  PORTB |= (1<<5);
      #define BUZZERPIN_PINMODE          pinMode (8, OUTPUT);
      #define BUZZERPIN_ON               PORTB |= 1;
      #define BUZZERPIN_OFF              PORTB &= ~1;
      #define POWERPIN_PINMODE           pinMode (12, OUTPUT);
      #define POWERPIN_ON                PORTB |= 1<<4;
      #define POWERPIN_OFF               PORTB &= ~(1<<4); //switch OFF WMP, digital PIN 12
      #define I2C_PULLUPS_ENABLE         PORTC |= 1<<4; PORTC |= 1<<5;   // PIN A4&A5 (SDA&SCL)
      #define I2C_PULLUPS_DISABLE        PORTC &= ~(1<<4); PORTC &= ~(1<<5);
      #define PINMODE_LCD                pinMode(0, OUTPUT);
      #define LCDPIN_OFF                 PORTD &= ~1;
      #define LCDPIN_ON                  PORTD |= 1;
      #define STABLEPIN_PINMODE          ;
      #define STABLEPIN_ON               ;
      #define STABLEPIN_OFF              ;
     
      #define DIGITAL_SERVO_FBALL_YAW_PINMODE  pinMode(3,OUTPUT);
      #define DIGITAL_SERVO_FBALL_YAW_HIGH     PORTD |= 1<<3;
      #define DIGITAL_SERVO_FBALL_YAW_LOW      PORTD &= ~(1<<3);
      #define DIGITAL_SERVO_FBALL_ROLL_PINMODE  pinMode(10,OUTPUT); 
      #define DIGITAL_SERVO_FBALL_ROLL_HIGH     PORTD |= 1<<3;
      #define DIGITAL_SERVO_FBALL_ROLL_LOW      PORTD &= ~(1<<3);
      #define DIGITAL_SERVO_FBALL_PITCH_PINMODE  pinMode(11,OUTPUT);
      #define DIGITAL_SERVO_FBALL_PITCH_HIGH     PORTD |= 1<<3;
      #define DIGITAL_SERVO_FBALL_PITCH_LOW      PORTD &= ~(1<<3);
    
    ...
    ...
    
      #define MULTITYPE 4
    #elif defined(FBALL)
      #define MULTITYPE 5 //wird zwar net klappen für die GUI aber denke gimbal kommt dem am nächsten
    #elif defined(GIMBAL)
    
    ...
    ...
    in Output

    Code:
    #if defined(BI) || defined(TRI) || defined(SERVO_TILT) || defined(GIMBAL) || defined(FLYING_WING) || defined(CAMTRIG) || defined(FBALL)
      #define SERVO
    #endif
    
    #if defined(GIMBAL) || defined(FLYING_WING)
      #define NUMBER_MOTOR 0
    #elif defined(FBALL)
      #define NUMBER_MOTOR 1 // nur ein motor
    #elif defined(BI)
      #define NUMBER_MOTOR 2
    #elif defined(TRI)
      #define NUMBER_MOTOR 3
    #elif defined(QUADP) || defined(QUADX) || defined(Y4)
      #define NUMBER_MOTOR 4
    #elif defined(Y6) || defined(HEX6) || defined(HEX6X)
      #define NUMBER_MOTOR 6
    #elif defined(OCTOX8) || defined(OCTOFLATP) || defined(OCTOFLATX)
      #define NUMBER_MOTOR 8
    #endif
    
    ...
    ...
    
    #if defined(SERVO)
    void initializeServo() {
      #if defined(TRI)
        DIGITAL_SERVO_TRI_PINMODE
      #endif
      
      #if defined(FBALL)
        DIGITAL_SERVO_FBALL_ROLL_PINMODE
        DIGITAL_SERVO_FBALL_PITCH_PINMODE
        DIGITAL_SERVO_FBALL_YAW_PINMODE
      #endif
      
      #if defined(SERVO_TILT) || defined(GIMBAL) || defined(FLYING_WING)
        DIGITAL_TILT_ROLL_PINMODE
        DIGITAL_TILT_PITCH_PINMODE
      #endif
      #if defined(CAMTRIG)
        DIGITAL_CAM_PINMODE
      #endif
      #if defined(BI)
        DIGITAL_SERVO_TRI_PINMODE
        DIGITAL_BI_LEFT_PINMODE
      #endif
      TCCR0A = 0; // normal counting mode
      TIMSK0 |= (1<<OCIE0A); // Enable CTC interrupt
    }
    ...
    ...
    void mixTable() {
      int16_t maxMotor,a;
      uint8_t i,axis;
    
      #define PIDMIX(X,Y,Z) rcCommand[THROTTLE] + axisPID[ROLL]*X + axisPID[PITCH]*Y + YAW_DIRECTION * axisPID[YAW]*Z
    
      #if NUMBER_MOTOR > 3
        //prevent "yaw jump" during yaw correction
        axisPID[YAW] = constrain(axisPID[YAW],-100-abs(rcCommand[YAW]),+100+abs(rcCommand[YAW]));
      #endif
      #ifdef FBALL
        motor[0] = PIDMIX(0, 0, 0);      
        servo[0]  = constrain(FBALL_YAW_MIDDLE + YAW_DIRECTION * axisPID[YAW], FBALL_YAW_CONSTRAINT_MIN, FBALL_YAW_CONSTRAINT_MAX); //YAW
        servo[1]  = constrain(FBALL_ROLL_MIDDLE + ROLL_DIRECTION * axisPID[ROLL], FBALL_ROLL_CONSTRAINT_MIN, FBALL_ROLL_CONSTRAINT_MAX); //ROLL
        servo[2]  = constrain(FBALL_PITCH_MIDDLE + PITCH_DIRECTION * axisPID[PITCH], FBALL_PITCH_CONSTRAINT_MIN, FBALL_PITCH_CONSTRAINT_MAX); //PITCH
      #endif

    ich hab nochnet ganz verstanden was diese ISR funktionen? so machen .. vllt. liegt auch da das problem

    hoffe hier weiss jemmand was ich falsch mache :P vllt. tappe ich ja auch total im dunkeln -.- ist mein erster versuch in C.

    gruß

    felix
    http://erkie.github.com/Flug und Schießübung ..
    Like it!

  9. #9
    User
    Registriert seit
    24.01.2010
    Ort
    Haiger
    Beiträge
    4.131
    Daumen erhalten
    153
    Daumen vergeben
    18
    0 Nicht erlaubt!

    Standard

    Gute Frage, ich bin mit Arduino leider nicht so fit, war nur so ein Gedankenblitz, muss man mal austüfteln
    Like it!

  10. #10
    User
    Registriert seit
    18.05.2010
    Ort
    Solingen
    Beiträge
    382
    Daumen erhalten
    0
    Daumen vergeben
    0
    0 Nicht erlaubt!

    Standard

    hmm schade

    bin aber ein bischen vorran gekommen...

    habe jetzt das yaw servo am leufen habe also auch rausgefunden wo ich die servos noch einragen muss nur leider giebts immer komische sachen wenn ich pitch und roll dazu tun will

    habe auch den namen von FBALL in SINGLE geändert ... also nicht wundern ;P

    in Output
    Code:
    ...
    ...
    
    ISR(TIMER0_COMPA_vect) {
      static uint8_t state = 0;
      static uint8_t count;
      if (state == 0) {
        //http://billgrundmann.wordpress.com/2009/03/03/to-use-or-not-use-writedigital/
        #if defined(TRI) || defined (BI)
          DIGITAL_SERVO_TRI_HIGH
        #endif
         /////////////////////////////////////////////////////////
        #if defined(SINGLE) //<- hier auf high
          DIGITAL_SERVO_SINGLE_YAW_HIGH
        #endif
        ///////////////////////////////////////////////////////////////////
        OCR0A+= 250; // 1000 us
        state++ ;
      } else if (state == 1) {
        OCR0A+= atomicServo[0]; // 1000 + [0-1020] us
        state++;
      } else if (state == 2) {
        #if defined(TRI) || defined (BI)
          DIGITAL_SERVO_TRI_LOW
        #endif
        ////////////////////////////////////////////////////////////////////
        #if defined(SINGLE) //<- hier auf low
          DIGITAL_SERVO_SINGLE_YAW_LOW
        #endif
        /////////////////////////////////////////////////////////////////////////////
        #if defined(BI)
          DIGITAL_BI_LEFT_HIGH
        #endif
        #if defined(SERVO_TILT) || defined(GIMBAL) || defined(FLYING_WING)
          DIGITAL_TILT_PITCH_HIGH
        #endif
        OCR0A+= 250; // 1000 us
        state++;
      } else if (state == 3) {
        OCR0A+= atomicServo[1]; // 1000 + [0-1020] us
        state++;
      } else if (state == 4) {
        #if defined(SERVO_TILT) || defined(GIMBAL) || defined(FLYING_WING)
          DIGITAL_TILT_PITCH_LOW
          DIGITAL_TILT_ROLL_HIGH      
        #endif
        #if defined(BI)
          DIGITAL_BI_LEFT_LOW
        #endif
        state++;
        OCR0A+= 250; // 1000 us
      } else if (state == 5) {
        OCR0A+= atomicServo[2]; // 1000 + [0-1020] us
        state++;
      } else if (state == 6) {
        #if defined(SERVO_TILT) || defined(GIMBAL) || defined(FLYING_WING)
          DIGITAL_TILT_ROLL_LOW
        #endif 
        #if defined(CAMTRIG)
          DIGITAL_CAM_HIGH
        #endif
        state++;
        OCR0A+= 250; // 1000 us
      } else if (state == 7) {
        OCR0A+= atomicServo[3]; // 1000 + [0-1020] us
        state++;
      } else if (state == 8) {
        #if defined(CAMTRIG)
          DIGITAL_CAM_LOW
        #endif
        count = 10; // 12 x 1000 us
        state++;
        OCR0A+= 250; // 1000 us
      } else if (state == 9) {
        if (count > 0) count--;
        else state = 0;
        OCR0A+= 250;
      }
    }
    #endif
    habe das yaw servo ja wie das vom tri eingeordnet ... nur wenn ich jetzt pitch und roll wie z.b. DIGITAL_TILT_PITCH und ROLL einordne bleiben die servos aus und das yaw servo spinnt

    naja werde mich da durch wursteln .. über hilfe würde ich mich dennoch freuen


    gruß

    felix
    http://erkie.github.com/Flug und Schießübung ..
    Like it!

  11. #11
    User
    Registriert seit
    18.05.2010
    Ort
    Solingen
    Beiträge
    382
    Daumen erhalten
    0
    Daumen vergeben
    0
    0 Nicht erlaubt!

    Standard

    wieder ein stück weiter..

    kann jetzt alle achsen auf ein servo tun :S

    Code:
     #define DIGITAL_SERVO_SINGLE_YAW_PINMODE  pinMode(3,OUTPUT);
      #define DIGITAL_SERVO_SINGLE_YAW_HIGH     PORTD |= 1<<11;
      #define DIGITAL_SERVO_SINGLE_YAW_LOW      PORTD &= ~(1<<11);
      #define DIGITAL_SERVO_SINGLE_ROLL_PINMODE  pinMode(10,OUTPUT); 
      #define DIGITAL_SERVO_SINGLE_ROLL_HIGH     PORTD |= 1<<10;
      #define DIGITAL_SERVO_SINGLE_ROLL_LOW      PORTD &= ~(1<<10);
      #define DIGITAL_SERVO_SINGLE_PITCH_PINMODE  pinMode(11,OUTPUT);
      #define DIGITAL_SERVO_SINGLE_PITCH_HIGH     PORTD |= 1<<3;
      #define DIGITAL_SERVO_SINGLE_PITCH_LOW      PORTD &= ~(1<<3);
    immer da wo ich für low und high PORTD ... 3 vergebe gehts .. halt auch auf pin 3 nur reagieren die anderen net .... hier muss ich warscheinlich irgentwas anderes einstellen

    vllt weiß ja wer was :P

    gruß

    felix
    http://erkie.github.com/Flug und Schießübung ..
    Like it!

  12. #12
    User
    Registriert seit
    18.05.2010
    Ort
    Solingen
    Beiträge
    382
    Daumen erhalten
    0
    Daumen vergeben
    0
    0 Nicht erlaubt!

    Standard

    So habs

    werde am WE mal sowas bauen und testen .. die GUI wurd wohl nicht dammit funktionieren .. aber mal sehn.. wenn noch jemmand testen will einfach ne PN mit der email an mich .. das ist leider zu groß ums hier hochzuladen.

    die lösung

    Code:
      #define DIGITAL_SERVO_SINGLE_YAW_PINMODE  pinMode(3,OUTPUT);
      #define DIGITAL_SERVO_SINGLE_YAW_HIGH     PORTD |= 1<<3;
      #define DIGITAL_SERVO_SINGLE_YAW_LOW      PORTD &= ~(1<<3);
      #define DIGITAL_SERVO_SINGLE_ROLL_PINMODE  pinMode(10,OUTPUT); 
      #define DIGITAL_SERVO_SINGLE_ROLL_HIGH     PORTB |= 1<<2;
      #define DIGITAL_SERVO_SINGLE_ROLL_LOW      PORTB &= ~(1<<2);
      #define DIGITAL_SERVO_SINGLE_PITCH_PINMODE  pinMode(11,OUTPUT);
      #define DIGITAL_SERVO_SINGLE_PITCH_HIGH     PORTB |= 1<<3;
      #define DIGITAL_SERVO_SINGLE_PITCH_LOW      PORTB &= ~(1<<3);
    gruß felix...
    http://erkie.github.com/Flug und Schießübung ..
    Like it!

  13. #13
    User
    Registriert seit
    18.10.2009
    Ort
    St. Johann
    Beiträge
    223
    Daumen erhalten
    1
    Daumen vergeben
    0
    0 Nicht erlaubt!

    Standard

    Bin sehr gespannt drauf, mach bitte ein Video von der "Kugel" wenn du die Möglichkeit dazu hast.
    Like it!

  14. #14
    Moderator
    Hangflug
    GPS-Modellfliegen
    Computer
    Avatar von Claus Eckert
    Registriert seit
    09.04.2002
    Ort
    Übersee am Chiemsee
    Beiträge
    13.410
    Blog-Einträge
    10
    Daumen erhalten
    533
    Daumen vergeben
    179
    0 Nicht erlaubt!

    Standard

    Hi

    Klasse Idee so etwas "Lowcost" nachzubauen.

    Was man mit Depron, Elektronik und Hirnschmalz alles anstellen kann.

    Lustig finde ich immer die Marketing-Ideen. Unter den Labeln "Terrorbekämpfung" und "Katastropheneinsatz" läßt sich Vieles verkaufen.
    Spätestens wenn es um Lautlosigkeit bei Terrorbekämpfung oder Wärmebildkameras, Messsonden etc. für Katastropheneinsätze geht, schlägt die Physik und die Gravitation grausam zu und solche Projekte verschwinden in der Aservatenkammer.

    Als spaßiges Flugmodell mit außergewöhnlichem Experimentier-Status, taugt es aber allemal.
    Viele Grüße
    Claus
    "Der Rand des Universums wird früher entdeckt werden, als die Grenzen menschlicher Dummheit."
    Like it!

  15. #15
    User Avatar von comicflyer
    Registriert seit
    13.07.2005
    Ort
    Hilgenroth
    Beiträge
    964
    Daumen erhalten
    52
    Daumen vergeben
    2
    0 Nicht erlaubt!

    Standard

    Da war doch mal was

    Michi hatte sowas ähnliches 2006 in Rödinghausen dabei. Aber ohne Bekreiselung oÄ...
    Flugphasenumschaltung der Mischer von gleich- auf gegensinnig über Knüppelschalter.
    Torquerei ab ~1:50



    CU Eddy
    Diese Signatur ist im RCN leider nicht verfügbar
    Like it!

Seite 1 von 2 12 LetzteLetzte

Ähnliche Themen

  1. Schleppkupplung mit Kugel
    Von Witty im Forum Segelflug
    Antworten: 7
    Letzter Beitrag: 15.09.2010, 09:39
  2. Kugelgelenk für 4,1mm Kugel ?
    Von Tobi Schwf im Forum Flugmodellbau allgemein
    Antworten: 2
    Letzter Beitrag: 28.10.2008, 10:00
  3. EasyGlider Electric RR und Kugel?
    Von B. de Keyser im Forum Elektroflug
    Antworten: 17
    Letzter Beitrag: 14.08.2006, 09:29

Lesezeichen

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •