Divide et impera Board

#21
Also hab die Brücke wieder entfernt und diesmal mit akku und ins GUI nichts geht mehr deshalb werde ich die brücke wieder einsetzen.
Ich finde wenn man sowas vertreibt soll man mindestens einen Anschlussplan beilegen oder zumindest ein Foto
 

r0sewhite

Erfahrener Benutzer
#23
poindl01 hat gesagt.:
Also hab die Brücke wieder entfernt und diesmal mit akku und ins GUI nichts geht mehr deshalb werde ich die brücke wieder einsetzen.
Ich finde wenn man sowas vertreibt soll man mindestens einen Anschlussplan beilegen oder zumindest ein Foto
Ich finde, wenn man so etwas zusammen löten will, sollte man einfach eine gewisse Grundahnung haben. Es hätte auch fertige Boards gegeben. Mit der Brücke zwischen 5V und D12 kannst Du Dir bestenfalls das Arduino kaputt machen. Der Austausch ist selbst für geübte Löter nicht leicht.

Wenn Du ein ESC (respektive BEC) angeschlossen hast, liegt auf 5V Spannung. Wenn es dann mit dem FTDI immer noch nicht geht, hast Du etwas falsch gemacht. Vielleicht solltest Du einfach mal schauen, wo der Fehler liegt, bevor Du wider besseren Rat einen Fehler mit einem weiteren Fehler kompensieren willst.
 

Waldmensch

Erfahrener Benutzer
#24
Wer redet denn von einer Brücke zwischen 5V und P12? Die Sensoren sollen an P12 und nicht an 5V. Der P12 liefert 5V sowohl wenn der Arduino am USB hängt als auch im Betrieb.
So ein Gefrickel mit "Nur einen ESC (oder UBEC) dran der das Board versorgt und diesen Motor abklemmen/ Propeller ab" ist doch blöd. Und das jedes mal wenn man das GUI starten will ist noch blöder.
Was macht man denn wenn man die ESC's verlötet hat?
 
#25
habs jetzt extern mit 5V versorgt, und als fehler sehe ich das nicht sorry, auf einem Anschlussplan von Microcopters wird es auch so gemacht VCC an 12 von Arduino z.B.

Wie sollte ich eine Grundlage haben ohne Schaltplan vom Board. So viel mal zur freundlichkeit.

Und klar gibt es fertige Boards, wollte ich aber nicht, ist ja langweilig und wenn man nicht fragen darf dann ist das wohl auch kein forum.
 

r0sewhite

Erfahrener Benutzer
#26
Waldmensch hat gesagt.:
Wer redet denn von einer Brücke zwischen 5V und P12?
poindl01 ;)

Waldmensch hat gesagt.:
Die Sensoren sollen an P12 und nicht an 5V.
Ist eigentlich so nicht mehr korrekt. D12 war lediglich für einige schlechte WMP-Clones von nutzen, da das Arduino diese im Fall eines Reset mit zurückstellen konnte. Normalerweise werden die Sensoren an 5V oder 3,3V angeschlossen, zumal hier eine höhere Last möglich ist, als an D12.

Waldmensch hat gesagt.:
So ein Gefrickel mit "Nur einen ESC (oder UBEC) dran der das Board versorgt und diesen Motor abklemmen/ Propeller ab" ist doch blöd. Und das jedes mal wenn man das GUI starten will ist noch blöder.
Verstehe ich nicht. Es soll doch eh nur ein ESC das Board im Flugbetrieb versorgen. Die parallele Versorgung durch alle ESCs ist definitiv nicht empfehlenswert.

Waldmensch hat gesagt.:
Was macht man denn wenn man die ESC's verlötet hat?
Akku anschließen. Bestimmte Weisen im Aufbau bringen nunmal auch gewisse Nachteile mit sich. ;)


poindl01 hat gesagt.:
habs jetzt extern mit 5V versorgt, und als fehler sehe ich das nicht sorry, auf einem Anschlussplan von Microcopters wird es auch so gemacht VCC an 12 von Arduino z.B.
Wie nun? Du hast VCC mit D12 zusammengeschlossen? Wenn ich das richtig verstanden habe: Wo liegt der Sinn darin?

poindl01 hat gesagt.:
Wie sollte ich eine Grundlage haben ohne Schaltplan vom Board. So viel mal zur freundlichkeit.
Es geht hier gar nicht um den Schaltplan vom Board, sondern um grundsätzliche Funktionsweisen von MWC-Boards. Bis auf das Paris V4.0 arbeiten alle nach dem gleichen Prinzip.

Was jedoch mich persönlich viel mehr verwundert, ist die Tatsache, dass Du nach eigener Angabe die Funktionsweise des Boards nicht richtig verstehst, dennoch aber willkürlich Brücken lötest, anstatt VORHER zu fragen, ob das richtig sein kann.

poindl01 hat gesagt.:
Und klar gibt es fertige Boards, wollte ich aber nicht, ist ja langweilig und wenn man nicht fragen darf dann ist das wohl auch kein forum.
Ich glaube nicht, dass hier irgendjemand ausgeschlossen hat, dass Du Fragen stellen darfst. Genau dafür ist ein Forum da. Doch bitte stelle ERST die Frage und berücksichtige DANN die Ratschläge, bevor Du einfach Brücken setzt. Es gibt für jedes Problem eine Lösung, doch es gibt auch viele Möglichkeiten, etwas falsch oder gar kaputt zu machen.
 

Waldmensch

Erfahrener Benutzer
#27
@rOsewhite:
Also im "Normalfall" sind alle ESC Akkuseitig verlötet. Wer da Steckverbindungen macht baut sich beim Quad 8 potentielle Fehlerquellen ein. Das heißt, wenn ein ESC unter Spannung steht dann stehen alle unter Spannung und warten nur auf Signal am Eingang. Das ist beim Flydumini so und Du machst es genauso (s. Kabelbaum hier http://www.microcopters.de/artikel/der-r0sewhite-sport-quad )

Jetzt könnte man 3 Steuerleitungen abziehen hat aber immernoch einen potentiell "scharfen" Motor.

Mag sein das P12 deprecated ist - er funzt aber auch in der 1.9er noch

Auf Deinem Mini MultiWii Board nutzt Du auch Pin12 obwohl der BMA020 keine Resets braucht http://www.microcopters.de/artikel/ein-micro-multiwii-board-entsteht
 

Miss-Lynn

Erfahrener Benutzer
#29
Waldmensch hat gesagt.:
Gibt natürlich Leute denen das An-/Abschrauben Spaß macht. Ich zähl mich nicht dazu.
Es ist alles nur Technik egal wie das Board heisst. Und die kann versagen oder mal was unvorhergesehenes machen.
Props nicht abschrauben wenn am Gerät mit angestecktem Akku rumgefummelt wird, ist meiner Meinung nach keine gute Idee und hat nix damit zu tun ob das Spass macht oder nicht.

Soll natürlich Leute geben die nach dem Motto leben:
No Risk No Fun.

Zähl ich mich nicht dazu.

Gruss Stefan
 

Waldmensch

Erfahrener Benutzer
#30
OK, dann ist diese Chance dort verbaut. Du könntest gucken ob dann Pin12 des Arduinos wenigstens rausgeführt ist und dann dort drangehen.

Props nicht abschrauben wenn am Gerät mit angestecktem Akku rumgefummelt wird, ist meiner Meinung nach keine gute Idee und hat nix damit zu tun ob das Spass macht oder nicht.
Genau! Und deshalb ist es beim Paris sehr praktisch das die Sensoren auch funktionieren wenn kein Akku dran ist und beim Flyduino geht das halt nicht. Oder man muß halt rumbasteln nur weil man evtl. einen Sensor prüfen will.

Ich bin kein Elektroniker. Ich verlaß mich einfach mal drauf das der Macher des Paris Board das schon irgendwie abgesichert hat.
 

r0sewhite

Erfahrener Benutzer
#31
@Waldmensch:
Ja, ich habe das auch lange Zeit gemacht, doch Paul Bake hat mich eines Besseren belehrt. Am Flyduino ist D37 (= D12 am Pro Mini) sogar ersatzlos gestrichen.

Die ESCs können übrigens durchaus an Spannung hängen. Ein normales ESC geht nicht in Bereitschaft, wenn kein gültiges Signal anliegt. Das trifft lediglich auf ESCs zu, deren Gasweg nicht anlernbar ist.

Wem das trotzdem noch zu ungemütlich ist, der kann sich doch ganz einfach eine 5V-Leitung an den FTDI löten, wie ich es bereits einige Postings vorher erwähnt habe. Ein altes Servo- oder ESC-Kabel an +5V und GND des FTDI löten, die ESCs vom Board abklemmen und das Kabel statt dessen draufstecken. Fertig ist die 5V-Spannungsversorgung. Da die 3,3V Spannungsversorgung üblicherweise von 5V abgegriffen wird, steht sogar 3,3V zur Verfügung:

 

Waldmensch

Erfahrener Benutzer
#32
Die ESCs können übrigens durchaus an Spannung hängen. Ein normales ESC geht nicht in Bereitschaft, wenn kein gültiges Signal anliegt. Das trifft lediglich auf ESCs zu, deren Gasweg nicht anlernbar ist.
Das darfst Du meinem Zeigefinger erklären. Scheinbar sehen das die HK SS Series anders. Ich weiß nicht warum, aber ein Motor (hinten rechts) zuckte plötzlich mit voller Wucht. Boardspannung über UBEC und Funke aus. Also Steller unter (Akku)Spannung aber nicht an der Boardversorgung beteiligt. Nur die weiße Leitung der Steller am Board. Ich habe 4 schöne Schnitte im Finger und von der 10er Latte fehlen an jedem Ende 3cm. Soviel zu Versuchen mit Akku und Rechneranschluß.

Ein altes Servo- oder ESC-Kabel an +5V und GND des FTDI löten, die ESCs vom Board abklemmen und das Kabel statt dessen draufstecken.
Wie lange machen das die Lötpads vom z.B. Flydumini mit? AFAIK werden dort die Steller komplett aufgelötet. Ich weiß sowieso nicht wie man bei Dem den Gasweg einlernt wenn er einmal montiert ist und die ESC Servostecker in der Bastelkiste liegen. Wird ja spätestens bei Besitzer/Funksystemwechsel fällig.

Fakt ist, wir sind uns einig das Tests mit Akku gefährlich sind ;) Die Frage ist nun, bei der im hier im FPV Board versammelten Kompetenz, wie kann man die Sensoren über USB betreiben ohne die ESC zu schädigen oder irgendwelche Basteleien. Mir würde, als elektronischem Laien, eine Diode in der BEC Plusleitung zu den höherwertigen, empfindlichen Stellern einfallen. Sprich, es geht nichts in den BEC was vom Board kommt. Wär das nicht eine Lösung? Dann würde der USB Port den Arduino, Sensoren und RX versorgen und man könnte alles testen. Allerdings weiß ich nicht ob die 500mA reichen.
 

r0sewhite

Erfahrener Benutzer
#33
Waldmensch hat gesagt.:
Die ESCs können übrigens durchaus an Spannung hängen. Ein normales ESC geht nicht in Bereitschaft, wenn kein gültiges Signal anliegt. Das trifft lediglich auf ESCs zu, deren Gasweg nicht anlernbar ist.
Das darfst Du meinem Zeigefinger erklären. Scheinbar sehen das die HK SS Series anders. Ich weiß nicht warum, aber ein Motor (hinten rechts) zuckte plötzlich mit voller Wucht. Boardspannung über UBEC und Funke aus. Also Steller unter (Akku)Spannung aber nicht an der Boardversorgung beteiligt. Nur die weiße Leitung der Steller am Board. Ich habe 4 schöne Schnitte im Finger und von der 10er Latte fehlen an jedem Ende 3cm. Soviel zu Versuchen mit Akku und Rechneranschluß.
Wenn die weiße (oder auch gelbe) Signalleitung vom Board getrennt ist, sollte der ESC eigentlich tot bleiben. Ich zieh in diesem Fall einfach die Stecker vom Board.

Waldmensch hat gesagt.:
Ein altes Servo- oder ESC-Kabel an +5V und GND des FTDI löten, die ESCs vom Board abklemmen und das Kabel statt dessen draufstecken.
Wie lange machen das die Lötpads vom z.B. Flydumini mit? AFAIK werden dort die Steller komplett aufgelötet. Ich weiß sowieso nicht wie man bei Dem den Gasweg einlernt wenn er einmal montiert ist und die ESC Servostecker in der Bastelkiste liegen. Wird ja spätestens bei Besitzer/Funksystemwechsel fällig.

Fakt ist, wir sind uns einig das Tests mit Akku gefährlich sind ;) Die Frage ist nun, bei der im hier im FPV Board versammelten Kompetenz, wie kann man die Sensoren über USB betreiben ohne die ESC zu schädigen oder irgendwelche Basteleien. Mir würde, als elektronischem Laien, eine Diode in der BEC Plusleitung zu den höherwertigen, empfindlichen Stellern einfallen. Sprich, es geht nichts in den BEC was vom Board kommt. Wär das nicht eine Lösung? Dann würde der USB Port den Arduino, Sensoren und RX versorgen und man könnte alles testen. Allerdings weiß ich nicht ob die 500mA reichen.
Jep, mit Akku mache ich es auch nur in Ausnahmefällen und dann stelle ich den Copter einfach auf den Kopf. Dann kann nichts passieren. Beim Mini gehen in der Tat die Sensoren nur, wenn der ganze Copter vom Lipo versorgt wird. Dann mach ich halt mal schnell die Props ab. Das sind max. 10 Sekunden pro Prop, also 40 Sekunden gesamt. So viel Arbeit ist das nun wirklich nicht. In vielen Situationen braucht man ja auch an der GUI drehende Motoren, da hilft eh nichts anderes, als die Props zu entfernen.

Gasweg lerne ich übrigens nie mit dem Empfänger direkt an. Ich habe meine MultiWii seit langem so gepatcht, dass sie vor der Initialisierung das Gassignal direkt an die ESCs durchschleift. So kann ich jederzeit die ESCs neu zusammen anlernen.

Was die Versorgung der Sensoren betrifft, habe ich doch schon eine Lösung in Form des 5V-Kabels am FTDI vorgeschlagen. Das funktioniert überall.

Ich habe mich eben nochmal mit Paul unterhalten: Sofern die 5V-Spannungsquelle verlässlich ist (was nicht bei allen ESCs gegeben ist), kann man RAW und VCC brücken. Die Versorgung des Pro Mini über RAW ist eine Sicherheitsmaßnahme, weil dahinter ein Spannungswandler sitzt. Man könnte auch locker einen 2S-Lipo anschließen, ohne dass das Pro Mini Schaden nimmt.

Anders ist das mit VCC: Hier darf die Spannung NICHT größer 5V sein. Die Ausgangsspannung der ESCs sollte also vorher mit einem Multimeter durchgemessen werden.

D12 hält übrigens nicht nur Paul, sondern auch Alex (MultiWii-Erfinder) für eine schlechte Lösung. Es gibt keinen vernünftigen Grund, den gesamten Strom zur Versorgung der Sensoren durch die arme CPU zu jagen. Einzig ein paar alte WMP-Clones profitieren noch von der Reset-Funktion.
 

Waldmensch

Erfahrener Benutzer
#34
Gasweg lerne ich übrigens nie mit dem Empfänger direkt an. Ich habe meine MultiWii seit langem so gepatcht, dass sie vor der Initialisierung das Gassignal direkt an die ESCs durchschleift. So kann ich jederzeit die ESCs neu zusammen anlernen.
Ist zwar ein bisschen OT, aber kannst Du den Patch bzw. Anleitung mal posten? Ich suche schon seit Tagen danach. Irgendwo gab es mal eine Diskussion dies mit einem separaten Sketch zu machen. Ich finde das aber nicht mehr. Ich habe bei meinem kleinen Copter die ESC Steuerleitungen auch direkt angelötet. Nach Wechsel auf die er9x muß ich neu anlernen da die Knüppelwege anders sind.
Geht das auch mit Summensignal? Dort dürfte dann ja nur der Throttle Kanal ausgefiltert zu den ESC's geleitet werden. Das Problem war doch das der Arduino zu lange zum Initialisieren/booten braucht und die Regler dann schon initialisiert sind.

Falls der Flydumini mal re-designed wird könnte man ja einen 4fach Jumper zwischen die Steuerleitungen bauen. Wenn die Jumper stecken = Normalbetrieb, Wenn die Jumper runter sind = Steuerleitungen 1) getrennt 2) Zugriff über einen Stecker zum anlernen der Regler.


D12 hält übrigens nicht nur Paul, sondern auch Alex (MultiWii-Erfinder) für eine schlechte Lösung. Es gibt keinen vernünftigen Grund, den gesamten Strom zur Versorgung der Sensoren durch die arme CPU zu jagen. Einzig ein paar alte WMP-Clones profitieren noch von der Reset-Funktion.
Das ist ja beim Paris auch nicht nötig und nur ein dirty Workaround den ich beim Flyduino Board nutze um die Sensoren im GUI ohne Akku zu haben. Wie gesagt, von Elektronik habe ich nur so viel Ahnung wie vor 25 Jahren in der Schule gelehrt wurde. Ich weiß wohl die Eigenschaften und Funktion einzelner Bauelemente aber nicht deren Wirkungsweise im Verbund mit anderen.
Ich rede also von der "Enduser Expierience" die letztlich aber kaufentscheidend ist.
 

Waldmensch

Erfahrener Benutzer
#36
ich habe mit google einen Ansatz gefunden. Vielleicht klappt es so (immer noch besser als löten)
http://www.rc-heli-fan.org/viewtopic.php?f=255&t=82896

Ich habe das aber selbst nicht getestet

IN JEDEM FALL BEI SOWAS PROPELLER AB! Wenn die Regler schneller über die Initialisierung sind als der Arduino Vollgas sendet machen die wirklich Vollgas!!!
 

r0sewhite

Erfahrener Benutzer
#37
Waldmensch hat gesagt.:
IN JEDEM FALL BEI SOWAS PROPELLER AB! Wenn die Regler schneller über die Initialisierung sind als der Arduino Vollgas sendet machen die wirklich Vollgas!!!
Wie soll das denn gehen? Vorher kriegen sie doch gar kein gültiges rlaufsignal und initialisieren daher nicht. Sie warten auf das erstbeste gültige Signal, mit dem sie irgendwas anfangen können (rlauf zur Initialisierung oder Vollgas für den Progmode) und das erste, was sie kriegen, ist das Vollgassignal.

EDIT: Und wenn Du Deinen ESCs gar nicht traust, leg den Copter doch einfach auf den Kopf. Aus dem Stand in den Boden ist noch kein Copter geflogen.
 

Waldmensch

Erfahrener Benutzer
#38
Ich habe die verlinkte Anleitung nicht getestet und Du hast Deinen Code noch nicht gezeigt. Ich weiß also nicht was passiert. Ist es verkehrt eine Warnung auszusprechen? Wenn beim Arduino Bootvorgang irgendwas schiefläuft kann jederzeit ein "gültiges" Signal am Regler erzeugt werden. Aber wenn Du sagst das man das pauschal gefahrlos mit Propellern und allen unterschiedlichen Reglern wie in dem Link beschrieben machen kann ist es ja auch OK.
Wäre Dir immer noch sehr verbunden wenn Du den Patch posten würdest den Du oben erwähnt hast. Das wäre dann ja wenigstens erprobt.

EDIT: Und wenn Du Deinen ESCs gar nicht traust, leg den Copter doch einfach auf den Kopf. Aus dem Stand in den Boden ist noch kein Copter geflogen.
Wenn ich den Flokati rasiere killt mich meine Frau :rot:
 

r0sewhite

Erfahrener Benutzer
#39
Sorry, gab heute ziemlich viel Wirbel wegen der neuen FreeIMU. Da ich neben warthox und Paul wohl der einzige bin, der hier ein Sample bekommen hat, habe ich mich natürlich auch verpflichtet gefühlt, das Ding zum Laufen zu kriegen um Fabio ein Feedback zu geben.

Ich hab Dir mal den Code rausgesucht. Je nach MultiWii Version (V1.8_patch2 oder V1.9) kann unter void setup() oder void initOutput() noch mehr stehen. Es ist jeweils der Teil bis zu der benannten Zeile zu ersetzen, unabhängig, ob danach noch anderes folgt.


Teil 1) In MultiWii_1_8_patch2 die drei untenstehenden Zeilen nach oben holen, so dass sie unter #define CAMROLL stehen:

Code:
/*********** RC alias *****************/
#define ROLL       0
#define PITCH      1
#define YAW        2
#define THROTTLE   3
#define AUX1       4
#define AUX2       5
#define CAMPITCH   6
#define CAMROLL    7

static int16_t rcData[8];    // interval [1000;2000]
#define MINCHECK 1100
#define MAXCHECK 1900

Teil 2) In MultiWii_1_8_patch2 im Bereich void setup() den oberen Teil bis initSensors(); ersetzen:

Code:
void setup() {
  LEDPIN_PINMODE
  POWERPIN_PINMODE
  BUZZERPIN_PINMODE
  STABLEPIN_PINMODE
  POWERPIN_OFF  
  configureReceiver();
  delay(200);
  initOutput();
  Serial.begin(SERIAL_COM_SPEED);
  readEEPROM();
  checkFirstTime();
  initSensors();
  previousTime = micros();
  #if defined(GIMBAL) || defined(FLYING_WING)
   calibratingA = 400;
  #endif
  calibratingG = 400;
  #if defined(POWERMETER)
    for(uint8_t i=0;i<=PMOTOR_SUM;i++)
      pMeter[i]=0;
  #endif
}

Teil 3) In Output den kompletten Bereich von void initOutput() bis zu #if defined(SERVO) ersetzen:

Code:
void initOutput() {
  for(uint8_t i=0;i<NUMBER_MOTOR;i++)
    pinMode(PWM_PIN[i],OUTPUT);
  for(int i=0;i<4;i++)    //computeRC will take the average of last four readings, initial value is set to 1500
    computeRC();
  if (MCUSR & 0x01) //Only if "Power On Reset"
  {
    if(rcData[THROTTLE] > MAXCHECK)
    {
      writeAllMotors(2000);
      delay(300);
      while(rcData[THROTTLE] > MAXCHECK)
        computeRC();
      writeAllMotors(MINCOMMAND);
      delay(300);
    }
  }
  else
  {
    writeAllMotors(MINCOMMAND);
    delay(300);
  } 
  MCUSR &= ~(0x01);
  #if defined(SERVO)
    initializeServo();
  #elif (NUMBER_MOTOR == 6) && defined(PROMINI)
    initializeSoftPWM();
  #endif
}
Anschließend kannst Du alle ESCs zusammen wie gewohnt anlernen.

Deine Frau braucht übrigens keine Angst vor einer Kurzhaarfrisur Eures Flokati haben: Ein Motor hätte niemals die Kraft, auf Drehzahl zu kommen, wenn der Prop im Teppich hängt. Er würde einfach stehen bleiben und das ESC "sollte" abschalten. In Klammern steht das Wort deshalb, weil manche ESCs so schlecht sind, dass die Abschaltung erst begreift, was sie tun soll, wenn der ESC schon durchgebrannt ist. Du hast also im schlimmsten Fall 4 Brandlöcher im Flokati. :D
 
FPV1

Banggood

Oben Unten