Multiwii by MIS AIRPLANE

FC oparte na Arduino

Moderatorzy: moderatorzy2014, moderatorzy

Awatar użytkownika
misiekkk
Posty: 2084
Rejestracja: środa 01 cze 2011, 21:24
Lokalizacja: Kędzierzyn-Koźle

Post autor: misiekkk »

kiepuri pisze:No i kicha.

Spróbowałem w obu minimach podłączyć na Video Out bezpośrednio do monitora (sygnał + masa) i oczywiście 0 reakcji. Niebieski ekran.

Minim OSD zasilane z Portu i2c (ponieważ tylko stamtąd mogłem podłączyć zasilanie)

Co do zasilenia MW -> zasilanie wzięte z odbiornika.
Napięcie ?
Sprawdziłeś napięcie ?
Max'y są bardzo wybredne pod tym kątem...
Świat z góry wygląda lepiej ;-)
kiepuri
Posty: 1235
Rejestracja: wtorek 10 sty 2012, 17:17
Lokalizacja: Kraków

Post autor: kiepuri »

Sprawdziłem napięcie po stronie TX RX 5V GND -> 4.4V
Awatar użytkownika
misiekkk
Posty: 2084
Rejestracja: środa 01 cze 2011, 21:24
Lokalizacja: Kędzierzyn-Koźle

Post autor: misiekkk »

To tutaj może leżeć problem.
Mój minim ( z witespyquad ) nie chce działać poprawnie poniżej 4.8V.

Znajdź jakieś lepsze źródło zasilania - bezpośrednio z jakiegoś beca ? Zasilacza regulowanego stabilizowanego i spróbuj wtedy.
Świat z góry wygląda lepiej ;-)
xDigYx
Posty: 804
Rejestracja: środa 02 paź 2013, 14:38
Lokalizacja: Wroc

Post autor: xDigYx »

czy ten SW to ten sam co http://rc-fpv.pl/viewtopic.php?t=8754
tylko z innymi ustawieniami w config.h ?
Awatar użytkownika
FlyHigh
Posty: 1091
Rejestracja: poniedziałek 09 sty 2012, 22:28
Lokalizacja: Poznań

Post autor: FlyHigh »

Mam zagwozdkę - w Prząśniczce MW AIO, podłączone wg schematu profesora i do tej pory nie było problemów z wgrywaniem softu oraz łączeniem się z GUI. Działał także BT.
Ale wczoraj chcąc podłączyć pod GUI via USB nie mogłem nic odczytać - port pokazywało na zielono w GUI, że się połączył ale żadnych odczytów. Sprawdziłem więc przez BT i tu jest ok.
Odpiąłem więc testowo BT i....przez USB ruszyło.
Z czego to może wynikać, że przy podpiętym BT (ale nie połączonym ze smartphonem) nie idzie via USB?
Awatar użytkownika
miś
Posty: 9242
Rejestracja: niedziela 07 lut 2010, 15:24
Lokalizacja: Bytom

Post autor: miś »

Jak BT podpiąłeś do SERIAL0 to się gryzie. Podepnij BT do innego wolnego seriala i problem zniknie.
Pzdr. -----MIŚ-----
Awatar użytkownika
FlyHigh
Posty: 1091
Rejestracja: poniedziałek 09 sty 2012, 22:28
Lokalizacja: Poznań

Post autor: FlyHigh »

No fakt, przegapiłem to :)
Dzięki.
Awatar użytkownika
pbrys
Posty: 1663
Rejestracja: czwartek 10 lis 2011, 18:52
Lokalizacja: Lubienia

Post autor: pbrys »

Panowie czy ktoś ma / lata na płytce kuki 0.6.3 skrzydełkiem
interesowała by mnie funkcjonalność RTH + Stabilizacja,
nie musi być komunikacji z żadnym OSD

udało się to komuś uruchomić na tym hardware-rze

zrobiłem to:
miś pisze:No to pierwszy soft do testów:
http://romek_by.republika.pl/MK/MultiWii_2_27b2_PLANE_328_TEST_MIS.zip

Dla pozostałych chcących przetestować ten soft na płytkach 328p.
Zapomniałem że trzeba by odkomentować "#define GPS_PROMINI_SERIAL", bo inaczej nie da się połączyć z płytką z poziomu MWC Config (po odłączeniu GPS od portu serial).
i lipa, brak komunikacji z MWC Config, miga tylko jedna czerwona dioda z 2 komunikacyjnych RX/TX

EDIT:
ps. konfig pod latające skrzydło

pomału do przodu:
komunikacja jest z MWC jak i ServoMiscConf_v07, płytka się zazbraja

i na tym koniec
na wyjściach serw LEFTRIGHT nie ma PWMa (serwa martwe), działa jedynie wyjście MOT oczywiście po zazbrojeniu płytki,

MWC pokazuje zmiany na wyjściu dla serw tak prze jak i po uzbrojeniu, w ServoMiscConf_v07 pokazuje zmiany na S4 i S5

domysły zielonego
płytka kuki 0.6.3 ma nastepujące wyjścia
M1, S1, M2, S2, M3 i M4 czyli nie ma jak podpiąć się do S4 i S5

Gdzie można skonfigurować wyjścia i czy 'zielony' sobie poradzi

Proszę o pomoc :->
Awatar użytkownika
pbrys
Posty: 1663
Rejestracja: czwartek 10 lis 2011, 18:52
Lokalizacja: Lubienia

Post autor: pbrys »

Temat rozwiązany
testy niebawem, na postoju płytka kukiego 0.6.3 działa z softem testowym MISa
-tryb stabilizacji działa :-P
- GPS jeszcze nie podpinany, powalczymy jutro ;-)

ale wyniki obiecujące :-P
Awatar użytkownika
FlyHigh
Posty: 1091
Rejestracja: poniedziałek 09 sty 2012, 22:28
Lokalizacja: Poznań

Post autor: FlyHigh »

Ponieważ płytka AIO idzie z Prząśniczki do quadcoptera to w zamian daję Crius SE v2.5
Ale mam problem ponieważ nie chce z kodem Misia odpalić się komunikacja GPS po i2c.
Wgrałem więc na próbę oryginalny kod MW i tam GPS po i2c śmiga.
Co może być przyczyną?
Awatar użytkownika
pbrys
Posty: 1663
Rejestracja: czwartek 10 lis 2011, 18:52
Lokalizacja: Lubienia

Post autor: pbrys »

ale nie jesst do końca dobrze

w trybie stab samymi żyrami jest w miarę ale w angle wali nie na skrzydło i daje dziób do góry

walczymy dalej
Awatar użytkownika
miś
Posty: 9242
Rejestracja: niedziela 07 lut 2010, 15:24
Lokalizacja: Bytom

Post autor: miś »

pbrys pisze:w trybie stab samymi żyrami jest w miarę ale w angle wali nie na skrzydło i daje dziób do góry
A ACC skalibrowane ? Bo jak tak, to powodem są wibracje, jak nie to brak kalibracji.
Pzdr. -----MIŚ-----
Awatar użytkownika
pbrys
Posty: 1663
Rejestracja: czwartek 10 lis 2011, 18:52
Lokalizacja: Lubienia

Post autor: pbrys »

Kod: Zaznacz cały

/**************************   atmega328P (Promini)  ************************************/
#if defined(PROMINI)
  #if !defined(MONGOOSE1_0)
    #define LEDPIN_PINMODE             pinMode (13, OUTPUT);
    #define LEDPIN_TOGGLE              PINB |= 1<<5;     //switch LEDPIN state (digital PIN 13)
    #define LEDPIN_OFF                 PORTB &= ~(1<<5);
    #define LEDPIN_ON                  PORTB |= (1<<5);
  #endif
  #if !defined(RCAUXPIN8) 
    #if !defined(MONGOOSE1_0)
      #define BUZZERPIN_PINMODE          pinMode (8, OUTPUT);
      #if NUMBER_MOTOR >4
        #undef PILOTLAMP
      #endif
      #if defined PILOTLAMP && NUMBER_MOTOR <5
        #define    PL_PIN_ON            PORTB |= 1;
        #define    PL_PIN_OFF           PORTB &= ~1;
      #else
        #define BUZZERPIN_ON            PORTB |= 1;
        #define BUZZERPIN_OFF           PORTB &= ~1;
      #endif 
    #endif
  #else
    #define BUZZERPIN_PINMODE          ;
    #define BUZZERPIN_ON               ;
    #define BUZZERPIN_OFF              ;
    #define RCAUXPIN
  #endif
  #if !defined(RCAUXPIN12) && !defined(DISABLE_POWER_PIN)
    #define POWERPIN_PINMODE           pinMode (12, OUTPUT);
    #define POWERPIN_ON                PORTB |= 1<<4;
    #define POWERPIN_OFF               PORTB &= ~(1<<4); //switch OFF WMP, digital PIN 12
  #else
    #define POWERPIN_PINMODE           ;
    #define POWERPIN_ON                ;
    #define POWERPIN_OFF               ;
  #endif
  #if defined(RCAUXPIN12)
    #define RCAUXPIN
  #endif
  #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);
  #if !defined(MONGOOSE1_0)
    #define PINMODE_LCD                pinMode(0, OUTPUT);
    #define LCDPIN_OFF                 PORTD &= ~1; //switch OFF digital PIN 0
    #define LCDPIN_ON                  PORTD |= 1;
    #define STABLEPIN_PINMODE          ;
    #define STABLEPIN_ON               ;
    #define STABLEPIN_OFF              ;
  #endif 
  #define PPM_PIN_INTERRUPT          attachInterrupt(0, rxInt, RISING); //PIN 0
  #define SPEK_SERIAL_PORT           0
  //RX PIN assignment inside the port //for PORTD
  #define THROTTLEPIN                2
  #define ROLLPIN                    4
  #define PITCHPIN                   5
  #define YAWPIN                     6
  #define AUX1PIN                    7
  #define AUX2PIN                    0 // optional PIN 8 or PIN 12
  #define AUX3PIN                    1 // unused 
  #define AUX4PIN                    3 // unused 
    
  #define PCINT_PIN_COUNT            5
  #define PCINT_RX_BITS              (1<<2),(1<<4),(1<<5),(1<<6),(1<<7)
  #define PCINT_RX_PORT              PORTD
  #define PCINT_RX_MASK              PCMSK2
  #define PCIR_PORT_BIT              (1<<2)
  #define RX_PC_INTERRUPT            PCINT2_vect
  #define RX_PCINT_PIN_PORT          PIND
  #define V_BATPIN                   A3    // Analog PIN 3
  #define PSENSORPIN                 A2    // Analog PIN 2

  #if defined(A0_A1_PIN_HEX) || (NUMBER_MOTOR > 6)
    #define SOFT_PWM_1_PIN_HIGH        PORTC |= 1<<0;
    #define SOFT_PWM_1_PIN_LOW         PORTC &= ~(1<<0);
    #define SOFT_PWM_2_PIN_HIGH        PORTC |= 1<<1;
    #define SOFT_PWM_2_PIN_LOW         PORTC &= ~(1<<1);  
  #else
    #define SOFT_PWM_1_PIN_HIGH        PORTD |= 1<<5;
    #define SOFT_PWM_1_PIN_LOW         PORTD &= ~(1<<5);
    #define SOFT_PWM_2_PIN_HIGH        PORTD |= 1<<6;
    #define SOFT_PWM_2_PIN_LOW         PORTD &= ~(1<<6);
  #endif
  #define SOFT_PWM_3_PIN_HIGH        PORTC |= 1<<2;
  #define SOFT_PWM_3_PIN_LOW         PORTC &= ~(1<<2);
  #define SOFT_PWM_4_PIN_HIGH        PORTB |= 1<<4;
  #define SOFT_PWM_4_PIN_LOW         PORTB &= ~(1<<4);
  
  #define SERVO_1_PINMODE            pinMode(A0,OUTPUT); // TILT_PITCH - WING left
  #define SERVO_1_PIN_HIGH           PORTC |= 1<<0;
  #define SERVO_1_PIN_LOW            PORTC &= ~(1<<0);
  #define SERVO_2_PINMODE            pinMode(A1,OUTPUT); // TILT_ROLL  - WING right
  #define SERVO_2_PIN_HIGH           PORTC |= 1<<1;
  #define SERVO_2_PIN_LOW            PORTC &= ~(1<<1);
  #define SERVO_3_PINMODE            pinMode(A2,OUTPUT); // CAM TRIG  - alt TILT_PITCH
  #define SERVO_3_PIN_HIGH           PORTC |= 1<<2;
  #define SERVO_3_PIN_LOW            PORTC &= ~(1<<2);
  
 
  #if !defined(MONGOOSE1_0)
    #define SERVO_4_PINMODE            pinMode(12,OUTPUT); // new       - alt TILT_ROLL
    #define SERVO_4_PIN_HIGH           PORTD |= 1<<3;
    #define SERVO_4_PIN_LOW            PORTD &= ~(1<<3);
  #endif
  #define SERVO_5_PINMODE            pinMode(11,OUTPUT); // BI LEFT
  #define SERVO_5_PIN_HIGH           PORTB |= 1<<3;
  #define SERVO_5_PIN_LOW            PORTB &= ~(1<<3);

 
  #define SERVO_6_PINMODE            pinMode(3,OUTPUT);  // TRI REAR - BI RIGHT
  #define SERVO_6_PIN_HIGH           PORTB|= 1<<4;
  #define SERVO_6_PIN_LOW            PORTB &= ~(1<<4);
  #define SERVO_7_PINMODE            pinMode(10,OUTPUT); // new
  #define SERVO_7_PIN_HIGH           PORTB |= 1<<2;
  #define SERVO_7_PIN_LOW            PORTB &= ~(1<<2);
  #define SERVO_8_PINMODE            pinMode(9,OUTPUT); // new
  #define SERVO_8_PIN_HIGH           PORTB |= 1<<1;
  #define SERVO_8_PIN_LOW            PORTB &= ~(1<<1);
#endif
to mój def.h , po zmianach w ciemno żeby działały 2 serwa :-?
jak rozumiem servo 4 i 5 działąą w trybie latającego skrzydła :?:

ale coś mam skopane, po podniesieniu modelu np dziobem do gury horyzont w MWC działa ale przechyla się też w bok, płytka prawidłowo umieszczona

w config.h

Kod: Zaznacz cały

#define FLYING_WING       // use for V-Tail too (with servo reverses change)
tu pytanie czy kierunek montażu serw ma znaczenie, czy załatwiają to reversy :?:

Kod: Zaznacz cały

#define YAW_DIRECTION 1
      //#define YAW_DIRECTION -1 // if you want to reverse the yaw correction direction

      //#define SENSORS_TILT_45DEG_RIGHT        // rotate the FRONT 45 degres clockwise
      #define SENSORS_TILT_45DEG_LEFT         // rotate the FRONT 45 degres counterclockwise
działa programowe przekręcanie płytki :?:

wszystko sterowane ppm

Kod: Zaznacz cały

#define SERIAL_SUM_PPM         PITCH,ROLL,THROTTLE,YAW,AUX1,AUX2,AUX3,AUX4,8,9,10,11 //For some Hitec/Sanwa/Others
Awatar użytkownika
miś
Posty: 9242
Rejestracja: niedziela 07 lut 2010, 15:24
Lokalizacja: Bytom

Post autor: miś »

pbrys pisze:ale coś mam skopane, po podniesieniu modelu np dziobem do gury horyzont w MWC działa ale przechyla się też w bok, płytka prawidłowo umieszczona
A nie masz w config.h załączonego SENSORSP_TILT_LEFT albo right ? Bo to da właśnie taki efekt. Ok, widze że masz, więc tu leży ów problem, bo przekręcanie działa również przy samolotach.

A kierunki pracy serw załatwiasz reversami ustawianymi z GUI albo z ServoMiscConf.
Pzdr. -----MIŚ-----
Awatar użytkownika
pbrys
Posty: 1663
Rejestracja: czwartek 10 lis 2011, 18:52
Lokalizacja: Lubienia

Post autor: pbrys »

dzieki MIS za podpowiedz ale to nie to ;-) ,

już doszedłem, teraz zanim coś napisze będę sprawdzał wszystko po 10 razy,

problem leżał w tym że, definiowałem sensory ręcznie (nie wybierałem płytki) i trzeba tam jeszcze definiować położenie sensorów (a tego nie zrobiłem) - teraz na sucho jest OK, wieczorem sprawdzę na samolocie jak działają stery w ANGLE

i jeszcze pytanie: zamierzam "ukraść" sygnał z GPS podłączonego do OSD REMZIBI, rozumiem że mogę tylko prze rezystor (2,2 k - będzie dobry), czy mam w config.g zachaszować inicjalizacje GPSa - zrobi to OSD, stawię prędkość na taką jak się komunikuje z OSD - wystarczy :?:
ODPOWIEDZ