Programmiere das Blinken hingegen event- oder zustandsgesteuert. Events gibts zwar hier keine, aber du kannst in jedem Loop den Zustand deiner Objekte abfragen (also z.B. Blinken ist grad auf High oder auf Low) und in jedem Loop den Zustand neu setzen, falls nötig.
Arduino im RC-Modellbau
Einklappen
X
-
AW: Arduino im RC-Modellbau
Du musst den delay-Befehl vermeiden, der blockiert den Prozessor, wie du weißt. Das kommt für die anderen Objekte, Funktionen, Lamperl etc. ähnlich ungünstig wie für den Verkehrsfluss das Pinkeln auf der ßberholspur bei stehendem Auto auf der Autobahn.Zitat von Bernhard Kerscher Beitrag anzeigen
Programmiere das Blinken hingegen event- oder zustandsgesteuert. Events gibts zwar hier keine, aber du kannst in jedem Loop den Zustand deiner Objekte abfragen (also z.B. Blinken ist grad auf High oder auf Low) und in jedem Loop den Zustand neu setzen, falls nötig.
- Top
-
AW: Arduino im RC-Modellbau
Hier wäre ein simpler Blinker ohne Delay.
Oder du befasst dich mit der etwas intelligenteren TimedAction-Klasse:
Arduino Playground - TimedAction Library
Code:// Wechselblinker mit zwei leicht unterschiedlichen Intervallen const int LED1 = 13; const int LED2 = 11; const int DAUER = 500; void setup() { pinMode(LED1, OUTPUT); pinMode(LED2, OUTPUT); } void loop() { int time = millis() % DAUER; if (time < DAUER * 0.5) MydigitalWrite(LED1, HIGH); else MydigitalWrite(LED1, LOW); int time2 = millis() % (int)(DAUER * 0.95); if (time2 < DAUER * 0.475) MydigitalWrite(LED2, HIGH); else MydigitalWrite(LED2, LOW); } void MydigitalWrite(int led, int mode) { digitalWrite(led, mode); }
- Top
Kommentar
-
-
AW: Arduino im RC-Modellbau
Das mit den TimedActions kannst dir ja später als Fortgeschrittener ansehen (ist im Link genau erklärt).
Aber der Code von meinem Blinker im letzten Posting ist einfach, oder? Bei Fragen dennoch bitte fragen!
- Top
Kommentar
-
-
AW: Arduino im RC-Modellbau
Der Tiny kann 8 MHz, du musst nur die Fuses dazu setzen.
Dieser Arduino Code sieht mir sehr umständlich aus, zu nahe an C ^^
Ich mache seit sehr kurzem nun in LUNA, welches sehr pascal.artig ist und auch besser strukturiert ist als Bascom.
http://www.myluna.de <-- Homepage
Gruß AnselmDevo 8s / DX6i
Blade 300x / MQX / NQX
Protos 500 / MiniProtos
- Top
Kommentar
-
AW: Arduino im RC-Modellbau
Guten Morgen,
habe Taumels Tipp mit dem Timer umgesetzt und es funktioniert.
Hier mal meine Erklärung dafür.
Habe mal die Fariablen aufgelöst und direkt die Zahlen ein getragen.
Der Timer beginnt ja zu laufen ab Loop
int time1 = millis() % 5000; // zieht einen Timer auf der bis 5s läuft
if (time1 > 0 && time1 < 100) // ist der Timer zwischen 0ms und 100ms
digitalWrite(led1, 1); // LED1 an
else
digitalWrite(led1, 0); // übrige Zeit LED1 aus
}
Das Thema Flackern hab ich noch nicht im Griff, bzw. das Einfügen der Hysterese hat nichts gebracht.
Werde mal den Tipp mit der For Schleife zum "Mitteln" aus probieren.
Grüße, BernhardSelber denken schadet nicht ! YouTube
- Top
Kommentar
-
AW: Arduino im RC-Modellbau
Das gibt es nicht. Hystere funktioniert immer, sonst hieße das Wort anders.Zitat von Bernhard Kerscher Beitrag anzeigendas Einfügen der Hysterese hat nichts gebracht
Zeig doch mal deinen Code dazu her eventuell!
- Top
Kommentar
-
AW: Arduino im RC-Modellbau
Ich hab die Schaltpunkte 10 Impulse auseinander gesetzt.
if(rc_signal >= 1000 && rc_signal <=1195) {
if(rc_signal >= 1205 && rc_signal <=1495) {
if(rc_signal >= 1505 && rc_signal <=1795) {
if(rc_signal >= 1805 && rc_signal <=2000) {Selber denken schadet nicht ! YouTube
- Top
Kommentar
-
AW: Arduino im RC-Modellbau
Lass dir mal die PWM ausgeben über Serial.println und schau was da in den Umkehrpunkten für Werte kommen für rc_signal.ViRA, Because Best Vibration Is No Vibration: http://www.pean-engineering.com
- Top
Kommentar
-
AW: Arduino im RC-Modellbau
Bernhard, du musst die Schaltpunkte in Abhängigkeit des vorherigen Schaltpunkts setzen.
Denke an die Campingbox:
Wenn Coladose über 9 Grad hat
- Kühle das Cola, bis 8 Grad erreicht sind
- Dann schalte die Kühlbox aus
Gehe zurück zum Start
Die Hysterese wäre hier also 1 Grad.
- Top
Kommentar
-
-
AW: Arduino im RC-Modellbau
Sehe ich nicht so, es ist ja keine wirkliche Hysterese denn die Schaltpunkte bleiben ständig gleich.Zitat von Taumel S. Beitrag anzeigenBernhard, du musst die Schaltpunkte in Abhängigkeit des vorherigen Schaltpunkts setzen.
Der Bereich der Kühlbox überschneidet sich:
- Kühlung an von z.B. 9°C bis 8°C temp >= 8
- Kühlung aus bis 9°C temp <=9
Er hat ja Lücken zwischen den Bereichen, weißt Du was ich meine?
Code und Ausgabe mal einstellen dann wird das schon
ViRA, Because Best Vibration Is No Vibration: http://www.pean-engineering.com
- Top
Kommentar
-
AW: Arduino im RC-Modellbau
Ich baue gerade an einer Telemetrie und Lichtblinklösung mit Arduino. Bin auch relativ weit.
Ein Arduino Uno (~10 Euro) und ein Arduino Pro Mini Klon (~3 Euro) dienen als Basis. Ein 128x64 ST9720 beleuchtetes Display mit u8glib dienen als Anzeige. Stupide 433 Mhz Module mit VirtualWire Library (Einfach zu benutzen, automatische Checksummen für ßbertragung) als Funkstrecke (werden später ersetzt durch Hope-RF Module).
Ardunio auf dem Quadrocopter misst über Spannungsteiler die Zellspannungen sowie demnächst Strom (75A Hallsensor) und funkt diese runter. Ebenfalls dient er als Blinkcomputer für RGB Leds.
Display und Arduino auf dem Boden bekommen wie jede andere Telemtrie auch ein Gehäuse, welches sich auf die Funke befestigen lässt aus einem 3D Drucker.
Ein paar Bilder anbei. Auf dem Display laufen bisher nur Randomgenerierte Werte, nicht wundern. Zum testen nutz ich Serielle Ausgabe.
Bei Interesse würde ich demnächst mal den Quellcode (extra einfach gehalten) sowie Schaltplan (ebenfalls sehr Basic) auf meiner Seite veröffentlichen.
Klar kann man das kaufen, aber ich hab fun dran und bin viel flexibler =)Dimitri aus Berlin
http://www.fly3rman.de/
- Top
Kommentar
-
stubb0rn
AW: Arduino im RC-Modellbau
Coole Sache. ßberlege auch schon länger mir eine personalisierte Telemetrie zusammenzubauen. Was für Datenraten kriegst du denn zusammen?
- Top
Kommentar

Kommentar