• Tolles Projekt! Aber ein paar Kleinigkeiten würden mich stören. Die Maße sind in ordnung nur mir wäre er zu dick! Ich (jaja ich mal wieder) würde die Kondensatoren an die 5V Versorung hängen. Irgendwo außerhalb der Platine. Die Stift- und Buchsenleisten auslöten und dann übereinander zusammenlöten. Würde locker 6mm Höhe sparen.
    Da ich den luxus einer Steckbaren Sendeplatine habe stört mich die Kanalzuordnung eher weniger. Aber praktischer wäre es schon die frei definieren zu können.

    In etwa so wie im Bild. Spart Gewicht (da weniger Buchsen). + und - sind eh durchverbunden.

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

  • Also zu allererst, ich habe nicht vor einen Kreuzmischer einzubauen! Das ist mir bis dato noch viel zu schwierig! ;) Das wird (wieder mal) ein reiner Panzersteuerungs-Regler. Ein Kreuzmischer-Regler kommt vlt. später irgendwann mal, wenn ich etwas besser proggen kann!


    Die Akku-Anzeige geschieht nur rein optisch (einfach eben!) Sprich im normalen Betrieb leuchtet (oder blinkt ;) ) die blaue LED, wenn die Akkuspannung zu stark absink, geht die blaue LED aus und die rote an, mehr nicht! Wär blöd, wenn der Akku mitten im Fight zur neige geht und dein Bot einfach mitten im Gefecht stehen bleibt!! ;)

    Verpolschutz durch einfache Diode parallel zur "Einspeisung" Ist vlt. nicht schön für die Diode, aber die soll das ja nur so lange aushaltenn bis die (2A) Sicherung kommt. Ein Test, wie gut das funzt will ich noch machen. Aber mir ist eine defekte Diode und eine kaputte Sicherung lieber als eine komplette geschrottete Elektronik! Und normalerweise soll der ja auch richtig angeschlossen werden...

    Die Sicherung liegt direkt hinter der Einspeisung.

    Ist vlt. ein bisschen "knapp bemessen", aber ich meine für ein Ant reicht das sicher und mit den Maßen ist einfach nicht mehr drin! ;) Iwo. muss man halt Prioritäten setzen! ;)


    Meinen Fehler hab ich heute auch erstmal beseitigt... Hab einen Fehler bei der MOSFET-Ansteuerung gemacht (zu peinlich um näher darauf einzugehen...) Also musste ich die MOSFETS erstmal so verschalten, wie bei den Mini-Reglern. Ist nicht schön und eine Bremsfunktion gibt es dadurch zwar auch wieder nicht ;( aber ich werde nochmal eine Version 1.2 machen. Aber erst sollen die Teile klappen! Auch ohne Bremse! ;)

    Hab heute auch schonmal etwas programmieren können!! :D :D Anfangs dachte ich, ich hätte den uC per programmierung getötet, nach einen halben Tag stellte sich aber fest, das es nur ein dummer Programmier-Fehler war *seufz*
    Die Brücken schalten auch wohl sauber durch jetzt! :D Diese doppel-LEDs hinter der H-Brücke sind echt praktisch und fehlten mir einfach bei den Mini-Reglern! :D


    Die späteren Besitzer der Regler können sich an den Reglern gerne nach belieben auslassen, Mike! ;) Ich bin halt der Meinung, das die so am kompaktesten sind, da man eher einen Flächenmangel, als einen Höhenmangel hat. :P Zumindest geht es mir so... :) Kenne keinen Bot der unter 13mm hoch ist! :D

  • Hallo Andreas, dein Entwurf sieht gut aus. Der große Vorteil deines Fahrtreglers ist in meinen Augen die Reduktion des Kabelsalates. Viel Erfolg und Durchhaltevermögen beim Programmieren. Wenn sich irgendwelche (AVR-lastige) Fragen ergeben stehe ich natürlich gerne zur Verfügung.

    • Offizieller Beitrag
    Zitat

    Original von Replikator
    Nehme ich gerne in Anspruch! ;)
    Ja Verringerung der Verdrahtung ist auch eines der Haupt-Vorteile an dem Ding! ;)

    Wenn kein Draht-Salat im Bot ist, spart das eine Menge Platz.
    Allerdings gibt's tatsächlich Roboteers, die wollen definitiv keine Schraubklemmen oder Steckbuchsen an den Elektronik-Einheiten, sondern angelötete Drähte, die dann später mit externen Buchsen oder anderen Lötverbindungen zu den anderne Baugruppen gelegt werden. Für mich etwas unverständlich, aber es ist so. (Ok, wenn es, wie beim Ant-Fahrtregler, um jeden Millimeter in der Höhe darauf ankommt (siehe Giftzwerg), dann ist das verständlich. Aber aus "Grundprinzip" heraus, für mich nicht nachvollziehbar.

    Weiterer Vorteil von Kombinationen und "Steckverbindungen": Man kann die (eventuell defekte) Baugruppe kurzfristig mal austauschen und mit einer Ersatz-Baugruppe austesten. Geht ruckzuck. (Von den Roboteers selbst modifizierte Baugruppen liegen bei mir am Labortisch, weil ich meine Prüfadaptern nicht mehr anschließen kann und erst wieder "Zwischenadapter" löten muss... :rolleyes: )

    Andreas, lass Dich nicht beirren. Das wird schon. Mit AVR kann ich Dir nicht helfen, das wird ein Heimspiel zwischen Alex und Dir. Aber ich habe Dir ja mal meinen Quellcode von den Fahrtreglern geschickt. Vielleicht kannst Du da etwas "brauchen". Die Ansteuerung bzw. Impulsaufnahme ist ja kompatibel (ANSI-C), nur bei der Hardware-Ansteuerung und den Timern musst Du "umkonfigurieren".

    Zu den Vorschlägen von Mike: Ich bin mir sicher, dass Du nach dem Stapellauf von Deinen ersten 2Kanal-Versionen bestimmt eine Nachfolge-Baugruppe designest, die dann ein paar geänderte Leiterbahnenabstände hat, ein paar Bauteile "verlegt", um Platz zu sparen, ... ;)

  • Ich bin auch nicht so der Fan von Schraubklemmen. Alleine schon wegen den dünnen Anschlusspinns. Aber ist Geschmackssache.....
    Zum Kreutzmischer: Ich finde Sendeseitig einen zu programmieren ist einfacher als als Empfängerseitig. Aber welche Funke hat heut zu tage keinen Kreutzmischer drin?

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

    • Offizieller Beitrag
    Zitat

    Aber welche Funke hat heut zu tage keinen Kreutzmischer drin?


    Es kommt darauf an, "wie" das in der Funke realisiert bzw. programmiert wird. (Hatten wir in einem separaten Thread schon mal erörtert).

    Natürlich gibt es z.B. bei der DX5e einen Schiebeschalter wo draufsteht "Kreuzmischer". Aber bei Vollgas nach vorne haben beide Motoren nur 50%. Und wenn Du nach "Vollgas-Links" ziehst, geht der linke Motor auf 0% und der rechte Motor auf 100%. Der Bot schlägt einen Haken wie ein Hase. Heißt: Diese Kreuzmischerfunktion ist unbrauchbar.

    Darum predige ich hier eigentlich auch immer, dass die Intelligenz in den Bot (=Fahrtregler) gehört und nicht in die Funke. Nur damit kannst Du jeden Bot so einstellen, dass er optimal läuft und sich gut steuern lässt. Bei einer veränderten Parametrierung in der Funke musst Du für jeden Bot einen eigenen Speicherplatz tunen. Und das bei der kryptischen Einstellmöglichkeit. :rolleyes:
    (Wenn die Funke ausfällt oder Du im Turnier den Bot an jemand anders übergibt (=andere Funke), dann stehst Du im Wald... ;))

  • Es gibt neue Neuigkeiten! ;)

    Nach gerade einmal 3 Abenden habe ich glaub ich schon das Rätsel gelöst! ;)

    Seht her:

    Klick

    Zur kurzen Erläuterung:

    Die Empfänger-Signale lese ich ganz simpel aus:
    Ich warte am entsprechenden Eingang auf ein High-Signal.
    Wenn einer erkannt wird, gehts weiter und eine Variable wird solange hochgezählt, bis das Signal wieder auf Low ist.

    Dies geschieht mittels ISR meines als CTC-betriebenen Timers 1, dessen Interrupt ich auf alle 50us eingestellt habe. Je höher meine Variable gekommen ist, je länger ist die Impulsweite.
    Evt. möchte ich meine Abtastrate noch etwas erhöhen, auf 20us oder sogar 10us. Momentan hab ich ja nur ~10 Werte von Neutralstellung auf Vollanschlag (also Knüppel ganz vor oder zurück).


    Dann ging es ans Geheimnis der Software-PWM, mein Angstgegner!

    Und zwar nutze ich dafür meinen Timer0, den ich ganz einfach seinen Job machen lasse, er zählt hoch bis 255, und fängt anschließend wieder von vorne an. Kein Interrupt etc. Der Überlauf findet alle ~250us statt, sprich die PWM-Frequenz hab ich auf ~4kHz eingestellt!

    Nun schaue ich nur immermal in das TCNT0-Register und vergleiche den mit einem Wert, den ich aus meinem Empfängersignal generiert habe.

    Ist mein "PWM-Wert" = 10, so schalte ich die Halbbrücke ein, bis das TCNT0-Register über 10 ist. Ist der Wert 100, ist die Halbbrücke entsprechend eingeschaltet, bis der Timer über 100 ist. Das Oszilloskop zeigt mir ein schönes, wenn auch etwas wackelige PWM-Signal! :D :D :D

    thats all! 8o:D


    Als nächstes werde ich versuchen das PWM-Signal noch etwas hüpscher hinzukriegen und die Abtastrate des Empfängersignals zu erhöhen.
    Dann muss ich noch meine Akku-Anzeige intigrieren, sollte aber kein Prob sein! ADC-messen, und bei entsprechendem Spannungspegel die Status-LEDs von blau auf rot-blinkend wechseln lassen! :D

    Was ich auch noch gerne testen möchten: Trotz dieser "Halbbrücken-Schaltung" einen Versuch starten, eine Bremse zu realisieren, keine allzu gute, aber ich meine besser als nichts... Ist dann zwar sehr rabiat, aber ein Versuch ists wert! (natürlich ist das Hauptaugenmerk auf ein absolut zuverlässigen FR gerichtet!)

    • Offizieller Beitrag

    Super, funktioniert ja schon ganz für die Praxis!

    Darf ich Dich dann ein bißchen auf die Details hetzen? :D;) :

    Aktuell geht jeder empfangene Timerwert direkt auf die PWM? Wenn der Zyklus von einem Empfangs-Timer bei 20ms liegt, ist das somit "50Hz" und somit schneller als die 4kHz des PWM passt. Wenn allerdings mal ein Störsignal hereinbricht (also dass der Empfänger-Timer öfters getriggert wird), dann wird der PWM-Ausgang ziemlich oft "verstellt". Korrekt? Oder hast Du da schon eine Sicherung drin?

    => Warum ich da herumreite: Bei den 2.4GHz-Funken sind Störsignale relativ selten. Aber wenn den FR jemand mit einer 40MHz-Funke benutzt, können da Probleme entstehen. Heißt: Du solltest den FR auch mal mit einer 40MHz-Funke testen, wenn Du Deine Errungenschaft im Verein weitergeben willst.

    Das Patent mit dem Timer (10, 100,...) habe ich noch nicht ganz umrissen. Ist ja jetzt ein Failsafe mit dabei?

    Zu guter letzt muss ich Dich aber wirklich loben, dass in dem kleine kompakten Würfel alles drauf/dran ist. Sogar LEDs für die PWM-Signalisierung. *schulterklopf*

  • Hi,

    ein kleines Update, nur damit nicht der Verdacht aufkommt, das Thema sei etwas eingeschlafen (auch wenn ich diese Woche nichts daran gemacht habe... kleine kreative Pause! ;) )


    Also ich bin heute mit neuem Elan dabei gegangen und habe, so glaube ich, eine neue, im Moment sehr gut aussehende, Methode gefunden.

    Erklären will ich es erstmal nicht *müde ist*

    Was aber erwähnenswert ist: Nach vielerlei vergebener Überlegungen habe ich jetzt beide Kanäle drin, nur mit dem Unterschied, das ich nun KEINE! Interrups verwende! Das Ausgangssignal nun also viel besser aussieht, da dort keine Unterbrechungen mehr dazwischen funken!! :D
    Ich habe da noch (laut Oszi) ein 666,66Hz überlagertes Rechteck-Signal drauf, aber im Mom noch keine Idee, woher die kommen soll o_O Naja wenn die drin bleiben würde, so würde es mich auch nicht sonderlich stören. Die H-Brücken werden dennoch sauber angesteuert. ;)


    Nun Reiner zu deinen Fragen:

    Wegen den Störungen mit den 40MHz-Funken: Najaaa, also eigendlich ist der Regler ja speziell für die Orange-Empfänger entwickelt!
    Aber Recht hast du, ich will ja schließlich ein Produkt, mit deutscher Markenqualität entwickeln und kein China-Knall-Bumm-Zeug! ;) Somit werde ich mich darum noch bemühen, versprochen! :D


    Einen Failsafe habe ich auch noch nicht drin, auf den möchte ich aber auch nicht verzichten! ;) Ich hab zwar noch keine Idee wie ich den detektieren, und entsprechend darauf reagieren soll, aber darum werde ich mich kümmern! ;)


    So, das wars erstmal soweit, mal sehen wie es weiter geht...! ;)
    ( im Mom wieder viel mit Prüfungen und Lernen zu tun... ;( )

    • Offizieller Beitrag
    Zitat

    Ich hab zwar noch keine Idee wie ich den detektieren,


    Nachdem Deine Software soweit funktioniert, also keine großen Änderungen daran machen (müssen).

    Hast Du noch einen Timer frei? Dann bau doch einen Nebenkriegsschauplatz auf.

    Beispiel:
    Angenommen, der 8bit-Timer wird über einen Prescaler so parametriert, dass er automatisch vom Prozessor alle 1ms decrementiert wird. (Geht auch über increment). Bleiben wir beim Decrementieren.

    1)
    Immer, wenn Du einen gültigen Puls vom Empfänger erhalten hast, setzt Du den Timerwert auf 0xFF .
    Normalerweise wird er nie den Wert 0x00 erreichen.
    2)
    Wenn alles korrekt funktioniert, wird der Timer als alle 1ms seinen Wert um 1 vermindert. Nach der üblichen Wiederholungszykluszeit von 20ms bei den Empfängern wird der Wert also auf 235 abgesunken sein, bis er wieder durch ein neues gültiges Signal auf 255 hochgesetzt wird.
    3)
    Wenn das Signal ausbleibt, wird der Timer irgendwann den Wert 0 erreichen. Also spätestens nach 255ms werden die Alarmglocken klingeln. ;)
    4)
    In Deiner Arbeitsschleife prüfst Du vor dem Ansteuern der Endstufe, ob der Timer 0x00 ist.
    Wenn er 0x00 ist, dann wird der aktuelle Empfangswert vom Empfänger ignoriert und die Endstufe separat abgeschaltet.

    Besonderheiten: Es ist ein Zweikanal-Empfänger, also müßten beide Pulse gleichzeitig berücksichtigt werden. Entweder also zwei Timer verwenden (falls vorhanden), oder eine Verknüpfung der beiden Empfangskanäle herstellen. Nur wenn beide Kanäle ein gültiges Signal haben, wird der Timer zurückgesetzt.
    Praxis: Wenn Empfangskanal 1 ein Signal bekommen hat, ein Flag setzen. Wenn Empfangskanal 2 ein Signal bekommen hat und das Flag gesetzt ist, dann das Flag löschen (Vorbereitung für den nächsten Empfang von Kanal 1) und den Timer auf 255 hochsetzen.

    Zitat

    das ich nun KEINE! Interrups verwende!


    Das ist vom Programm her jetzt zwar aufwändiger und Du musst versuchen, die einzelnen Routinen möglichst klein und "kurz" zu halten, aber effektiv sparst Du Dir damit doch eine Menge Ärger. Vor allem bei 40MHz-Empfängern, die sporadisch ja lauter Blödsinn simmulieren und Dir über den Interrupt das ganze Programm lahmlegen können. (Ausser über Sicherheitsabfragen, aber das macht es schon wieder aufwändig...)

    Das mit den 666,66Hz verstehe ich noch nicht. Welche Taktfrequenz hat der Prozessor bzw. wie ist er parametriert? Hast Du einen Pre- oder Postscaler bei der PWM eingestellt bzw. "wie" ist er eingestellt?
    (Ich mag falsch liegen, aber vielleicht übersteuert ein zu häufiges Setzen der Endstufe den eigentlichen PWM. => "Nachtriggern" führt zum Reset des Signals.... => keine Ahnung, müßte man das Timing wissen.... )

  • Einen Timer hab ich leider nicht mehr frei. Timer0 läuft für die Empfänger-Puls-Messung.

    Also wird auf Null gesetzt, wenn der EmPu auf High geht, und wenn der EmPu wieder auf Low zurück geht, wird der Wert "abgelesen" Dementsprechend ist der Prescaler so gesetzt, das mit einem Timer-Durchlauf etwas mehr als die 20ms abgedeckt werden.

    Hmm,so könnte man ja dann evt. den Failsafe realisieren. Wenn ein Timer durchläuft und die Variable nicht hochgezählt wurde...


    Timer1 ist dann mein "quasi-PWM-Timer" der läuft einfach als Up-Counter und das Timerregister (TCNT1) wird mit einer Variablen verglichen und die FETs dementsprechend ein, oder ausgeschaltet! Halt so wie ich es schon beschrieben hatte! ;)


    CPU-Frequenz 8MHz interner Oszi, ohne aktiven Prescaler
    Timer 0: Up-Counter Prescaler clk/64 -> 125kHz
    Timer 1: Up-Counter Prescaler clk/8 -> 1MHz (somit habe ich eine ~4kHz-PWM-Frequenz!)

  • Nachdem ich mich heute um meinen Copter gekümmert habe und mich mit dem S.Bus vom OrangeRX rumgeschlagen habe, kahm mir eine Idee. Was wäre mit einem Fahrtenregler mit OrangeRX-Satteliten? Die sind klein und haben einen Bus. Mann müsste also nur den Bus auslesen und die Daten verarbeiten. Ich meine sogar es gibt ein extra Bit für eine Failsafe funktion. Also keine Zeiten messen und aufwändige Timer. Oder sehe ich das falsch?
    Ich meine beim NanoWii geht das ja auch. Einen Haken hat die sache aber. Entweder die BIND Funktion in den Regler packen oder den Satteliten an einem seperaten Empfänger binden.

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

  • Kleines Mini-Update:


    - FailSafe - Check!

    edit:
    - Stör-Impulse herausfiltern - check (glaube ich)
    :D :D :D


    Naja Aufwändig würde ich das jetzt nicht nennen, zumindest nicht bei meiner Programm-Lösung.
    Nun nutze ich zwar einen Interrupt, aber der zählt bei mir nur 2 (3 mit Status-LED blinken, kleine Spielerei meinerseits! :P ) Variablen hoch.

    So wie das aussieht hat der Interrupt auch keinerlei Auswirkungen auf mein Programm-Ablauf! ;)

    Dazu kommt der Interrupt nur ausserhalb meiner Puls-Mess-Schleife. ;)


    Edit: Stör-Impulse:
    Ich glaube Stör-Impulse unterdrücke ich jetzt auch ganz gut.

    Und zwar zählt mein Zähler ja die länge meines Empfänger-Signals. Wenn nun ein zu kurzer, oder zu langer Impuls auftritt, so springe ich direkt aus meiner Motor-Ansteuer-Funktion heraus und warte auf ein schöneres Signal.

    In der Theorie hört sich das ja ganz gut an, die Praxis kann ich jetzt leider nicht so testen... ;)

    Evt. auf der Arbeit mal einen Frequenzgenerator anschließen, der >2,5ms und <0,5ms ausspuckt... Die Motoren dürften ja dann eig. nicht angesteuert werden... :)

  • Hi,
    find ich cool mit dem Regler, leider nur zu dick für meinen Ant :/ Bauteilhöhe darf maximal 11mm sein :/ Lässt sich da noch was machen? Kennst ja vieleicht den Kabelsalat in meinem Ant X(

    Einen Sattelitenempfänger anschließen zu können wäre echt ziemlich geil, die sind sowas von winzig und man braucht nur 3 Kabel: 3,3V, GND und Bus.
    Die Bindefunktion könnte man dann so in den Fahrtregler programmieren, dass man einfach eine (Steck)Brücke schließt, um auf einen Bindemodus zu schalten. Reicht ja wenn einfach beim Einschalten, vor dem Start der Dauerschleife des eigentlichen Programms, geprüft wird, ob auf entsprechendem Eingang ein Highsignal vorliegt. Wenn ja, wird halt zum Bindepart gesprungen, wenn nein, wird die Reglerschleife gestartet.
    Das wäre derbe genial.

    Aber abgesehen von den Zukunftsgedanken, der Regler denn du jetzt Designt hast ist ziemlich nice.

    Zitat

    Ich habe da noch (laut Oszi) ein 666,66Hz überlagertes Rechteck-Signal drauf, aber im Mom noch keine Idee, woher die kommen soll o_O


    Da hilft wohl nurnoch Exorzismus :D
    Kann die Frequenz vieleicht irgendwo induktiv entstehen?


    Bremse halte ich für keine gute Idee, ich denke, dass bei einem Pusher wie ich ihn z.B hab, da nach kurzer Zeit die Bauteile glühen, zumal selbst meine schnellen Getriebe bei Vollgas durch Eigenreibung schnell stehen.
    Bzw. wäre die Bremse wohl entweder ineffektiv oder würde den Bot für wichtige Sekundenbruchteile beim Wechsel von Vorwärts auf Rückwärts und andersrum Lahmlegen, oder nicht?
    Bei den vielen Fahrtrichtungswechseln wird es doch eher die Mosfets überhitzen lassen, wenn man andauernd erst einen kleinen Kurzschluss erzeugt, als einfach die Richtung umzupolen(also wie es aktuell ist. Richtungwechsel wirken ja zwar auch wie ein Kurzschluss, aber kürzer, als wenn man immer einen geschwindigkeitsunabhängigen längeren Bremsimpuls erzeugt)
    Falls mein Gedankengang in die falsche Richtung geht, bitte erläutern :]

    Zitat

    Und zwar zählt mein Zähler ja die länge meines Empfänger-Signals. Wenn nun ein zu kurzer, oder zu langer Impuls auftritt, so springe ich direkt aus meiner Motor-Ansteuer-Funktion heraus und warte auf ein schöneres Signal.


    Nur zum Verständnis, unterbricht dann der Regler die PWM ausgabe?
    Wäre es nicht Sinnvoller, wenn dieser Wert einfach ignoriert wird, sodass die Vorherige PWM/Motorgeschwindigkeit beibehalten wird, und z.B erst nach 5 ignorierten Signalen die PWM ausgabe auf aus geht?
    Sry wegen den Fragen, aber Reglerprogrammierung interessiert mich ziemlich, hatte ja auch schonmal ein Reglerprojekt am start, nur da es deine 1Kanal Regler schon gab hatte ich es sein gelassen.
    Aber vieleicht wird auch von mir mal was kommen, jenachdem wie ich Lust bekomme :D

  • Hmm, da ist meiner wohl 2mm drüber :P hmmmmmm, da muss wohl mal ne Version 2 her! Mit 5mm oder so *hust* ;)


    Das mit dem Bus hört sich echt gut an, aber wie gesagt, davon hab ich kein Peil... Zukunftsmusik eben! :)
    Ich muss erstmal die altmodische Technik sicher hinkriegen! ;)


    Ich habe im Moment noch nichts, das iwi induktive Störungen fabrizieren könnte. :/


    Ich persöhnlich fände eine Bremse super, ich merke das bei meinen Dredgern, wie oft fall ich von der Arena weil ich zu spät vom Gas gehe und der Ant einfach weiter, in die Grube, rollt 8o;(


    Im Prinzip hast du recht, ist das Signal schlecht, gehe ich für "diese Runde" aus der Motor-Kontroll-Funktion raus... in wie fern das die PWM-Ausgabe beeinträchtigt, kann ich leider noch nicht abschätzen... Aber guter Punkt! Ich muss mir mal was überlegen, wie ich das besser testen kann!

    Hab aber schon eine Idee, wie ich in dem Fall einfach den alten EmPu-Wert behalte und weiter meine Funktion abarbeite!

  • Natürlich, bevor man über andere Empfängerarten nachdenkt oder eine kleinere Version, steht natürlich die Programmoptimierung im Vordergrund.

    Wegen der Störfrequenz, hast du mal testweise alle ungenutzen Eingänge manuell auf 0/aus gesetzt? Vieleicht ist da irgend ein voreingestelltet Port, der die Störung erzeug?

    Von der Arena fallen, weil ich zu spät vom Gas gegangen bin, ist mir noch nie passiert :D Aber ist natürlich mies, wenn der Ant einfach weiter rollt :D

    Wie wäre es, wenn du immer den aktuellen gültigen Signalwert entsprechend der Impulslänge als entsprechend große Zahl zwischen speicherst, bzw. einfach das ergebnis des Counters, mir dem du die Länge misst? Gibt es dann ein ungültiges Signal, wird der Wert aus dem Speicher aufgerufen und ersetzt sozusagen den ungültigen Wert mit dem letzten gültigen.

    Ich weiß ja nicht, wie dein aktueller Programmcode aussieht :D

    Einmal editiert, zuletzt von panzerbot (2. März 2014 um 15:15)

  • Genau sowas hab ich mir gedacht Kai! ;) Wert zwischenspeichern und wenn der neue EmPu-Wert ok ist, ersetzten! ;)


    Freie Ports?? Du beliebst zu scherzen... :P einzig meine ISP-Ein/Ausgänge sind noch frei, wobei ich den MISO schon für meine rote Status-LED nehmen musste... :P

    Werde ich jetzt aber immer so machen, echt praktisch, dann sieht man über die LED wenn der Empfänger geproggt wird. Hehe :D


    Irgendwelche undefinierten Prots hab ich aber nicht! ;)

  • - LiPo-Safer -> Check! (vorerst ;) )


    Na bitte, meine Akku-Warn-Anzeige ist auch soweit funktionstüchtig! :D

    Der Clou:
    Der Regler erkennt, ob an ihm ein 2 oder 3Zellen Lipo hängt! ;)

    Dementsprechend zeigt er, egal ob 2 oder 3 Zellen verwendet werden, jeweils an ob der Akku voll oder leer ist! ;) ;)

    Ich werde das allerdings die Tage noch etwas schöner machen. Denn im Mom. gibt es halt das Problem, das wenn ein 3Zellen-LiPo leer ist, dieser aber immer noch verwendet wird und die Spannung evt. auf 2Zellen-Niveu runter rutscht (<8,5V), der Regler wieder "Akku voll" anzeigt... nicht sooo gut! :)


    Demnächst möchte ich, direkt bei der Initialisierung des Reglers einmal die Spannung messen und anschließend über Morsecode verkünden "ich habe 2 Zellen" bzw. "ich habe 3 Zellen"!

    Anschließend wird dann nur noch darauf reagiert! Sprich, wenn ich den Regler mit 3 Zellen initialisiert habe, die Spannung im Eifer des Gefechts aber unter 8,5V rutscht, wird dennoch ein "Akku leer" ausgespuckt! :)


    Edit:
    Ganz vergessen: Sollte man an den Regler mal eine Spannungsquelle, mit mehr als 13V hängen, so signalisiert der Regler das natürlich auch. Ich denke ich werde den Regler dann in Zukunft sperren, sprich wenn bei der Initialisierung mal ein Wert über 13V gemessen wird, bleibt der Kasten stehen, damit man garnicht soweit kommt, den weiter zu verwenden.

    Klar, das sollte normalerweise nie vorkommen! Aber wer weiss, was die Leute später so alles mit den Dingern machen... Und das ist schließlich kein sooo großer Aufwand! :D