• Hehe Nein :D

    Ich probiere mal das Layout um die die Multiplexer zu erweitern. Wenns klappt mache ich das so, wenn nicht, dann mit der Soft-PWM.

    Eleganter finde ich das mit der Hardware-PWM. Bei der Soft-PWM sehe ich schon den Frust auf mich zukommen! ;)

    Die Soft-PWM ist anscheinend sehr CPU-Lastig wenn ich das richtig verstehe.

    Denn das + die beiden Empfängersignale auswerten. Dann möchte ich gerne einen Überstrom und Unterspannungs-Schutz implementieren. Owe... ;)

    • Offizieller Beitrag
    Zitat

    einen Überstrom und Unterspannungs-Schutz implementieren

    Unterspannungsschutz für den Akku ist kein Problem. Sind nur zwei Widerstände und eine Z-Diode. (Ausser natürlich noch das Stückchen Software, mit der die vier verschiedenen Akku-Konfigurationen entsprechend eingestellt und abgefangen werden müssen.) Aber die Strombegrenzung dürfte etwas Platzprobleme bereiten, wenn die Halbbrücke da nicht schon irgendwas "vorbereitet" zur Verfügung stellt.

  • Ich habe mich jetzt hingesetzt und eine Software-PWM in einer halben Stunde unter Zuhilfenahme des Datenblatts heruntergeschrieben. Replikator baut richtig gute Bots, bei soviel Detailliebe und Engagement traue ich ihm die Softwareentwicklung auch zu. Hier im Thread wird ja agiert als ob das eine Lebensaufgabe wäre ...


    Bei Auftreten des Compare Match A Interrupt wird der der Richtung entsprechende High-Side P-FET sowie der auf der anderen Halfbrücke platzierte Low-Side-N-FET eingeschalten. Je kleiner der Wert in OCR1A desto früher im Timerzyklus wird die Brücke eingeschalten (desto länger ist der Motor in einem Zyklus eingeschalten und desto schneller dreht er). Beim Timerüberlauf (d.h. nach 255 Schritten) werden wieder alle FETs abgeschalten. Optimierungen wie delay zwischen den FET-Umschaltungen einzubauen, um temporäre Kurzschlüsse zu vermeiden sind in der Demo nicht implementiert.

  • Oha... Du bist verrückt !! 8o *beeindruckt ist*

    Wow, ok das sieht Simpel aus...
    In dem Link, den Giz gepostet hat sieht das ganz anders aus... Schwer halt... :D

    Danke für diesen Denkanstoß!!

    Ich hab schon wieder viel zu Kompliziert gedacht (und wollte so daraus eine Lebensaufgabe machen...)


    Ja, die Strommessung... Da bin ich vlt. schon wieder zu optimistisch:

    Ich hab einen Shunt-Widerstand eingebaut und gehe dann an einen ADC-Input.
    Die Frage ist hier wieder: Welche Spannungen kann der uC messen??
    Ich sehe das so: Ich habe einen 10bit ADC und eine interne Referenzspannung von 2,56V.
    Ist das dann nicht so, das der uC eine Auflösung von 2,56V / 2^10 --> 2,5mV hat??
    Dann sollte die geringe Spannung (an meinem voraussichtlich 0R05 Shunt) doch kein Problem sein oder??


    Dann bleibt noch das Problem, das der Strom nicht Kontinuierlich anliegt, sondern auch mit entsprechendem PWM-Signal. Also ganz dumm gesagt: 500mA_0A_500mA_0A_500mA
    So habe ich vor, nur in der Zeit die Messung zu machen, in der die Brücke auch tatsächlich eingeschaltet ist.

    Gut / schlecht / geht so

    ??


    Die Akkuspannung möchte ich genau so messen, wie du schon sagtest Reiner, da sehe ich auch keine Probleme! ;)

  • Mit der ADC-Auflösung gebe ich dir vollkommen recht. Zu beachten ist jedoch, dass die unteren 1 bis 2 Bits eventuell durch Rauscheffekte nicht mit der Wirklichkeit übereinstimmen. 500 mA * 0.05 Ohm ergeben in meinem Taschenrechner 25 mV ... eventuell solltest du den Shunt da etwas größer wählen. Dafür verlierst du Spannung für den Motor ... Tradeoff zwischen Strommessgenauigkeit und Leistung. Bzgl dem Strommessen, dass nur dann stattfinden soll, wenn der Kanal aktiv ist, habe ich mir ein paar Gedanken gemacht. Auf die Schnelle kann ich jedoch keine Lösung anbieten, welche einfach, elegant und fehlerfrei ist. Das Hauptproblem ist, dass wir nur einen ADC im µC haben, aber 2 Kanäle messen müssen...

    • Offizieller Beitrag
    Zitat

    Hört auf einen Dinosaurier und macht die Schaltung bzw. das Softwaredesign "wasserdicht". Sonst geht's euch wie vielen Fahrtregler-Entwicklern hier im Forum... => nie mehr wieder etwas gehört von den Projekten. Augenzwinkern

    Zitat

    Lies einfach mal die "uralt-Beiträge" von den Roboteers, die sich leider hier im Forum nicht mehr sehen lassen. X-Anläufe mit den Fahrtreglern gemacht, aber leider so "genial" ausgedacht, dass der erste Fehlschlag schon zum Frust und Abbruch geführt hat.

    => Ich will hier niemanden angreifen! Aber anders als in der Politik kann man bei uns ja aus der Vergangenheit lernen. Augenzwinkern


    Boah IBF... War das eine Herausforderung...? :D

    Anonsten muss es fpr die SoftwarePWM natürlich NICHT so komplex wie in meinem Link sein. Es geht glaub ich auch noch einfacher als das was Alex da kurz runterprogrammiert hat, aber das hat so schon Hand und Fuß...

    • Offizieller Beitrag
    Zitat

    Boah IBF... War das eine Herausforderung...? großes Grinsen


    Nein. :D;)
    Erstens habe ich oben von den Roboteers geschrieben, die sich nicht mehr sehen lassen und zweitens bist Du mit der Programmierung fitter als ich. (Hab's mir ja weitgehend selbst beigebracht ...) => Ich mach's nicht stilecht, aber ich finde mich zurecht und es funktioniert. ;) Beim Wettprogrammieren würde ich keinen Blumentopf gewinnen, aber ich bau ja lieber ein paar Sicherungen mit ein, als dass ein "optimierter Code" ständig ein Eigenleben hat. ;)
    Bei dem o.g. Angezwicke ist mir nur spontan die ganze Ahnengalerie eingefallen, die sich schon an Fahrtreglern versucht hatte und jetzt als Karteileichen in der Forumsdatenbank herummodern.

    O.o.t.:
    Aber weil Du's (Giz) ansprichst: War da nicht mal was mit einem Ant zum Fertigbauen? ;) => Woran scheiterts? Kann man helfen?

    • Offizieller Beitrag

    @Andreas:
    Freundschaftlicher Rat zur Bauform des gewählten Multiplexers:
    "Finger weg von LFCSP-Gehäusen" :D
    Aus Erfahrung sage ich Dir: Das kriegst Du von Hand nicht sauber gelötet!

    Das IC hat ausserdem ein "Exposed Pad" auf der Unterseite, welches mit GND verbunden werden muss!
    Einzige Möglichkeit sowas von Hand (ohne Reflow-Ofen) zu löten: riesige Via unter den Chip und HOFFEN, dass man da von der Unterseite der Platine Lötzinn reinlaufen lassen kann.

    Ich habe hier einige defekte Platinen, bei denen von der Bauform her ähnliche IC's mit einem Halbautomaten gesetzt und vor dem Löten (Reflow, professioneller Bestücker) unter dem Mikroskop kontrolliert wurden.
    Resultat: Kurzschlüsse unter dem IC und nicht verlötete Pins!

    Von "Aussen" Nachlöten geht auch nicht, da "meinem" Baustein das Stückchen Kupfer an der Aussenseite der Pads fehlt.

    Meine persönliche Meinung:
    Das Handlöten dieser Bausteine ist eine deutlich grössere Herausforderung für Dich, als die Erstellung der Software
    8)8)8)

  • Jo, weiss ich Heiko! ;)

    Von den Bauteilen lass ich auch die Hände!
    SMDs können noch so klein sein (0402 o.ä.) ich löte das, :D aber wenn die Pins auf der Unterseite sind, bzw. dieses "Exposed Pad" besitzen, ist das die Grenze und ich lass die Finger davon. :D

    Ich hatte einen 1x 2:1 Multiplexer in einer Art SOT23-Gehäuse mit 6Pins gefunden. Aber ich mach das ja jetzt eh per Soft-PWM. Das erleichtert das Layout ungemein! ;)

    • Offizieller Beitrag

    ich würde die Frage stellen, ob eine Strombegrenzung wirklich von Nöten ist. Wir sprechen von Ant´s mit motoren die kaum ein nenneswerten Stallstrom ziehen. Ich habe mal auf der Pololu Seite gekuckt, dort wird für unsere typischem Motoren ein Stallstrom von knapp 0,4 Ampere angegeben. Für die high power Motoren get er auf 1,6 Ampere. Wieso also der Aufwand? Macht nur die Platine größer und sorgt für probleme........

  • Find ich nicht. ;) Das ist je ein kleiner Wiederstand und ein uC-Eingang. Das macht wirklich keine Probleme! :)
    Da hab ich jetzt mehr Probleme gehabt, einen geeigneten Eingangs-Kondi zu plazieren. :P

    Und wenn man die Möglichkeit hat... :D Meine alten Regler fliegen einem um die Ohren, wenn man was falsch macht. (z.B. die Ausgänge Kurzschließt). Diese hier sollen schon was robuster werden und einem einen Fehler verzeihen können! ;)

    • Offizieller Beitrag
    Zitat

    Das ist je ein kleiner Wiederstand


    Ich weis nicht, welches Konzept Du bei der Strombegrenzung anwenden willst. Wahrscheinlich einen Widerstand zwischen GND und Source der N-FETs? Der muss vom Wert her klein sein, sonst fällt Dir zuviel Spannung ab. Dann würde Verlustleistung am Widerstand produziert. Also muss er von der Verlustleistung (und somit den Dimensionen) größer ausgewählt sein. ;)
    Wenn der Widerstandswert kleiner gemacht wird, ist weniger Verlustleistung dahinter. Also tut's auch ein von den Dimensionen her kleiner Widerstand. Aber der Spannungsabfall ist dann so gering, dass Du vor dem Analogeingang des Prozessors noch einen OpAmp brauchst.
    Vergiss nicht die Z-Diode (mit einem Vorwiderstand) vor dem Analogeingang, sonst knallt Dir bei einem Kurzschluss die volle Betriebsspannung (7.x Volt) auf den Prozessoreingang. ;)

    Bei einem Kurzschluss müßte Deine Software-Routine schon flott unterwegs sein, damit das Notprogramm startet und die Endstufe abgeschaltet wird. Dagegen sollten auch kräftigere Motoren (oder zwei Motoren parallel) nicht unbedingt bei einem Kavalierstart schon vorzeitig abgeschaltet werden. Du brauchst also sowohl eine Glättungsfunktion als auch eine "Extrem-Schnell-Abschaltung-Bei-Extrem-Hohen-Peakströmen".

    Bei den Fahrtreglern für Raptoren (2er und 3er Serie) hatte ich auch eine Strombegrenzung integriert. Soweit ich das beobachtet habe, wurde die nie benutzt. Sobald mal die Strombegrenzung angesprochen hat, wurde das Trimpoti wieder nach oben gedreht, damit der Motor beim Anfahren nicht stottert. ;)
    Ich hab' die Strombegrenzung dann bei der 3er-Serie softwaremäßig ausgeblendet. Die aufwändig Hardware (Shunts, OpAmps, Trimmpotis, Optokoppler,...) ist auf der Hardware noch vorhanden und hat, im Nachhinein betrachtet, nur die Materialkosten und die benötigte Platinenfläche nach oben getrieben.

    Zitat

    Diese hier sollen schon was robuster werden und einem einen Fehler verzeihen können!


    Das wird nur schwerlich möglich sein. Von verpolt angeschlossenen Akkus bis zu Kurzschlüssen bei den Motoren (kalte Lötstellen) musst Du einfach rechnen.
    Wenn Du Dir was Gutes tun willst, dann platziere die Endstufen so geschickt, dass Du sie im Falle eines Defekts schnell und ohne hohen Adrenalinspiegel auswechseln kannst. (... => meine Erfahrung ;) )

  • Also meine Servos hatten bei 5V schon 1A Stall. Meine Getriebemotoren haben im Pushbetrieb schon 1-1,3A. Stall wird wohl bei 3-4A liegen. Selbst diese kleinen Motoren haben große Kurzschlussströme. Eine Strombegrenzung halte ich nicht für so wichtig. Eine kleine Sicherung wäre besser. Die schaltet auch bei kaputtem MosFet noch ab.

    Erfahrungen sind was sehr nützliches, leider macht man sie erst kurz nachdem man sie gebraucht hätte...

  • Owee, ihr macht mich fertig X(

    Also die Strommessung hab ich so gemacht wie du Reiner.
    Shunt zwischen GND und Source. Nur eine Z-Diode hab ich nicht drin. Über welche Art von Kurzschluss redest du, der den ADC grillt?
    Mit dem Signal kann ich doch direkt auf den Analog-Eingang, da dieser eine Auflösung von 2,56 / 2^10 hat.

    Aber ich überlege grad ob ich die Strommessung raus werfe *snüff* und dafür eine Sicherung und eine Z-Diode investiere. Somit wären Überspannungen, Verpolungen und ein Kurzschluss abgedeckt. ;)


    Wird Zeit das ich große Regler baue. Dann kann ich ein bisschen Aufwand treiben für solche Spielereien...! ;)

    • Offizieller Beitrag
    Zitat

    Original von Replikator
    Owee, ihr macht mich fertig X(


    Och neeeeeeee..... So war das doch nicht gemeint *MiezMiez*.

    Zitat

    Original von Replikator
    Also die Strommessung hab ich so gemacht wie du Reiner.
    Shunt zwischen GND und Source. Nur eine Z-Diode hab ich nicht drin. Über welche Art von Kurzschluss redest du, der den ADC grillt?
    Mit dem Signal kann ich doch direkt auf den Analog-Eingang, da dieser eine Auflösung von 2,56 / 2^10 hat.

    Ja, den Shunt im GND-Zweig integrieren ist die beste Lösung. Damit hast Du (weitgehend) ein gemeinsames Bezugspotenzial für die Referenzspannung des Wandlers und dem "Abgriff" über den Shunt.

    Ich befürchte, dass Du aber auch mit 10bit Auflösung die paar Millivolts nicht eindeutig unterscheiden kannst.
    Gedankenmodell:
    Shunt = 0.05 Ohm.
    VDD = 7.2V
    Imotor = 1 A
    => Ushunt = 50mV.

    Auflösung ADC: 5V / 1024 = 4.8mV.

    Der Messwert pendelt also bei den LSB zwischen 0x00 und 0x0B . Na ja....

    Bei einem satten Kurzschluss nehme ich mal den Widerstand an den Motorklemmen mit 0Ohm an. (Ok,... nur als Gedankenmodel... :rolleyes: ). Im Prinzip fällt dann die ganze "durchgesteuerte" Versorgungsspannung am Shunt ab. Der bekommt somit theoretisch die 7.2V zum Knabbern. Bei einer direkten Ankopplung würde also der Analogeingang mit 7.2V beaufschlagt, was in der Regel die Prozessoren mit 5V-Versorgung etwas unangenehm empfinden.
    Darum der Vorschlag von einem Widerstand zwischen Shunt und ADC, damit die Spannungsdifferenz zwischen dem Shunt (=7.2V) und der Z-Diode (4.7V) vor dem Analogeingang abfallen kann.

    Wenn der Widerstand leistungsmäßig zu klein ausgeführt ist, wird er bei einem Kurzschluss durchbrennen. => hochohmig. Es fließt dann zwar kein Strom mehr, aber Du hast dann ständig die 7.2V-Versorgungsspannung am Analogeingang anliegen.

    Zitat

    Original von Replikator
    Aber ich überlege grad ob ich die Strommessung raus werfe *snüff* und dafür eine Sicherung und eine Z-Diode investiere. Somit wären Überspannungen, Verpolungen und ein Kurzschluss abgedeckt. ;)


    Ich will Dich da jetzt nicht auf meine Schiene locken, Innovationen sind ja immer was tolles. Vor allem, wenn man sich im Verein dann mit unterschiedlichen Lösungen ergänzt. Aber in diesem Fall hätte ich eher gesagt, dass Du Dir den Aufwand mit der Strombegrenzung/-überwachung sparen solltest.

    Fällt mir gerade dazu ein: Wir beide verwenden bei unseren Ant-Fahrtreglern bisher die gleichen MOSFET-Transistoren. Da gibt es bei den P-FETs einen Nachfolger, der hat ein höheres UGS! Den Typ suche ich noch für Dich raus. Ich glaube, der heißt ...<hurdlbrunft>6502, kann mich jetzt aber täuschen.


    Zitat

    Original von Replikator
    Wird Zeit das ich große Regler baue. Dann kann ich ein bisschen Aufwand treiben für solche Spielereien...! ;)

    Herrje 8o , da fällt mir ein, dass in dem Stapel von "ToDo-Arbeiten" an meinem Labortisch noch Dein Eigenbau-Raptorregler zur Reparatur liegt. Sorry, der ist in den letzten Monaten sehr gut unter den anderen Jobs vergraben worden.... Ich kümmere mich mit der Reparatur bis Weihnachten drum, dann hast Du wieder was zum Basteln... ;) Kannst hier dann ja mal ein paar Shunts einbauen und mit Freiluftverdrahtung einen Analogeingang versorgen.

  • Hi Leute!

    Heute ist es soweit! Eine laaaange Planungszeit, die ihr zum Teil ja schon hier mitbekommen habt, liegt hinter mir.
    Es hat viel Gehirnschmalz gekostet und vieles über-den-Haufen-werfen, aber dann habe ich denke ich mal eine vernünftige Lösung gefunden!
    Vor ~zwei Wochen konnte ich dann mein "Top-Secret-Projekt" endlich zum Leiterplattenhersteller geben.

    Und heute konnte ich dann meinen "Prototypen" zusammen bauen.

    Bitte:


    Und nun kommt das besondere an den Reglern:
    Wahrscheinlich fallen euch die drei Buchsenleisten auf der Platine auf...
    Wofür die wohl gut sein könnten... ?( ?( ?(


    ;) Btw. ganz Rechts ist mein Orange-Empfänger aus Dredger. Ich denke man erkennt mein Vorhaben...


    Ich möchte euch heute mein neues Projekt, den "Orange_Ant_FR" vorstellen:


    Es ist ein 2-Kanal-Fahrtregler für Ants, mit integrierter Unterspannungsanzeige, Verpolschutz und Sicherung!
    Das besondere ist wie man sieht, das dieser direkt auf einen Orange-Empfänger gesteckt werden kann. Somit entfällt praktisch der Platzbedarf eines seperaten Reglers!
    Die Fläche für den Empfänger wird eh benötigt, die Empfängereinheit wird lediglich, wenn man den Kondi des Empfängers mitzählt, ~5mm höher! Das ist meiner Meinung ein riesiger Platz-Vorteil beim Bau eines Ants! Dazu entfällt ein Großteil der Leitungen! Nimmt man mal ein Pusher, so müssen nur je zwei Leitungen an die Motoren- und der Akku an den Regler angeschlossen werden, thats all!! ;)8)
    Die stabilisierten 5V gehen direkt auf den Empfänger, die Signale direkt in den Regler. Wird noch ein elek. Verbraucher eingebaut, so kann man diesen direkt an die Pins der Buchsenleisten anlöten.

    Die Größe beläuft sich so auf gerademal 30x19x13mm. Der Regler für sich wiegt 5g, die ganze Elektronik also insgesamt 8g!


    Nun kommt aber noch massig Arbeit auf mich zu... Das Teil proggen! 8o;(
    Ich denke das wird noch so einige Stunde in Anspruch nehmen... Das wird sicher nicht leicht, aber wenn das Teil erstmal einsatzbereit ist, vereinfacht das Ding den Ant-Bau wohl erheblich!

    Die Idee kam mir beim Zusammenbau von Dredger MKII, als ich iwi meinen LiPo-Safer in das Gehäuse kriegen musste, was aber aufgrund der ganzen Kabelage gaaaaarnicht so leicht war...

    Ohne Worte... ;)


    Also drückt mir ja fest die Daumen!! :D

  • Klasse Sache, auch wenn ich mich mit sowas nicht auskenne :]. Ich beneide die Leute die das drauf haben (Mikrokontroller programmieren etc., ganz zu schweigen vom Entwerfen des eigenen Schaltkreises!)
    Hast du hier wieder Lichtfunktionen mit eingebaut?

  • Naja, das"drauf haben" ist sone Sache, den ersten (dummen) Fehler hab ich glaub ich schon wieder drin. *seufz* ;( ;(

    Edit:
    Eine Lichtfunktion hab ich nicht drin. Bei dem Ding ist bereits jeder Port belegt.

    • Offizieller Beitrag

    Super Arbeit Andreas ! *schulterklopf*

    Zitat

    Es ist ein 2-Kanal-Fahrtregler für Ants, mit integrierter Unterspannungsanzeige, Verpolschutz und Sicherung!


    Da musst Du jetzt schon ein paar Details herausrücken, wenn Du uns schon die Zähne lang machst!;) Wie signalisierst Du die "Anzeige" (denn eine Abschaltung der Motoren scheint ja nicht vorgesehen zu sein)?
    Verpolschutz durch Leistungsdiode? 0.2V oder 0.6V Verlust? :D
    Sicherung im Leistungsteil oder "nur" im 5V-Teil? Wie groß hast Du die denn dimensioniert?

    Fragen über Fragen,.... aber Du hast es so gewollt. :D ;)

    Die feste Kombination von Fahrtregler und Empfänger ist mir auch schon mal durch den Kopf gegangen. Hatte Markus (Entwickler der Fahrtregler für Mikromodellbau) auch schon mal gemacht. Er kombinierte damals ein Bluetooth-Modul mit seinen Mikro-Fahrtreglern.
    Was damals und jetzt bei Dir auch die Frage ist: Wie machst Du dann die Zuteilung der Kanäle auf die Endstufen? Wenn Du eine Standard-DX5e-Funke nimmst und den Orange-Empfänger dazusteckst: => Panzersteuerung, linker und rechter Kreuzknüppel in "vorwärts"/"rückwärts" auf die Motorenkanäle. Ok
    Nachdem der Orange-Empfänger bei der linken Kreuzknüppel-Funktion beim Failsafe auf "Vollgas-Rückwärts" schaltet, habe ich bei meinen DX5e den linken Kreuzknüppel um 90° gedreht. Wenn jetzt vorwärts/rückwärts bewegt wird, dann wird das Signal bei "links"/"rechts" versendet. Problem-Failsafe umgangen. Aber bei Deinem Fahrtregler wäre jetzt der Empfängerkanal für den linken Motor nicht angeschlossen, der Pin müßte versetzt werden.

    Dann die Krönung: Du programmierst einen Kreuzmischer in Deinen Fahrtregler. Damit sind dann die Empfängerkanäle nur vom rechten Kreuzmischer interessant. Oder (bei Linkshändern) nur der linke Kreuzmischer.

    Tja,... ich vermute, Du kommst in Deinem Programm nicht daran herum, die Zuordnung über Schalterchen am FR oder über eine Softwarelösung (parametrierbarer Fahrtregler ;D) zu lösen. ;)

    Kleiner Tipp: Bau Dir ein Adapterkabel, bei dem zwischen Fahrtregler und Empfänger alle Pole durchverbunden sind . Du wirst es beim Programmieren zum Überprüfen von Signalen auf der Flachbaugruppe brauchen. Und diesen Adapter unbedingt zu den Turnieren mitbringen, denn irgendwas ist ja immer....