IR-Fernbedienung zur Auswahl verschiedener Aufgaben

(deleted)

Hi

Drück Mal STRG+T in der IDE - Das formatiert den Sketch (rückt die Zeilen der Klammerebene entsprechend ein). Leerzeilen sind keine Rudeltiere - wenn mehr als zwei Leerzeilen 'am Stück' sind - bis auf Eine Alles raus. Mehrere Klammern 'am Stück' sollte mit STRG+T ebenfalls verschwunden sein.

Was mir auffällt: Du benutzt delay() - in der Zeit macht der Arduino Nichts Anderes. Somit wird nur auf einen Tastendruck reagiert, wenn der Arduino gerade kein Licht-Programm 'wartet'.

Trotzdem müssten im Sketch 3 die Zeiten passen - wenn die LEDs an/aus gehen, muß sich der Sketch gerade in diesem Bereich befinden.

Wie immer, wenn was nicht funktioniert: Pflastere Deinen Sketch mit Serial.print zu - in jeder IF steht ein Serial.println(1); (oder sonst eine eindeutige Kennung). Dabei ist delay() sogar fast nötig, da Du sonst von seriellen Ausgaben überrrant wirst :)

MfG

Taserface2: ich, Anfänger, benötige Hilfe bei meinem Code.

Wie postmaster-ino schon bemerkt, ist die Formatierung Deines Sketches „verbesserungsfähig“. Mag ja sein, dass Du da problemlos den Durchblick hast, aber das ist nur so, weil Du grad im Thema steckst. „Hübscher“ Code ist gerade bei der Fehlersuche Gold wert.

Gruß

Gregor

Ich beziehe mich auf Deine dritte Variante.

byte Programm;

Diese Variable wird mit 0 initialisiert, was aber bei switch nicht vorkommt, also ungültig ist. Zur Fehlersuche könntest Du

byte Programm = 1;

versuchen. Blinkt es nun bei Bewegung für zwei Sekunden? Wenn nicht, stimmt was mit dem Bewegungsmelder nicht.

Wenn es blinkt, kannst Du mittels IR-Fernbedienung umschalten auf fünf Sekunden? Wenn nein, stimmt was mit der IR-Fernbedienung nicht.

Auf diese Art kannst Du Dich an ein funktionierendes Programm heranrobben.

wollte ich eine zweite Funktion einfügen, die genau das gleiche macht, jedoch in kürzerer Zeit,

Warum da nicht einfach die Zeit ändern....?

Mir scheint, du möchtest eine Ablaufsteuerung basteln. Und nebenläufig dazu eine IR Auswertung.

Ablaufsteuerung Meine Standardantwort zu Ablaufsteuerungen:

Eine Stichworte Sammlung für Google Suchen: Endlicher Automat, State Machine, Multitasking, Coroutinen, Ablaufsteuerung, Schrittkette,

BlinkWithoutDelay,

Blink Without Delay

Der Wachmann

Multitasking Macros Intervall Macro

(deleted)

Hi

Dann benutze doch einen der freien Pins, stelle Diesen auf INPUT_PULLUP und frage im Code Diesen ab - wenn Der LOW ist, dann werden alle Zeiten 10x schneller ablaufen gelassen (bzw. 10x schneller gezählt, nur 1/10tel als Endzeit addiert, ... gibt Da mehrere Möglichkeiten).

Der Pin wird dann für den Test-Modus auf GND gezogen.

MfG

(deleted)

(deleted)

Hi

Definiere 'direkt am 5V-Pin'. Der Motor wird 'unendlich viel mehr' Strom brauchen, als die LED (Welche Du natürlich mit Vorwiderstand betrieben hast - den Motor zähle ich NICHT als Vorwiderstand).

Sollte der '5V-Pin' ein irgendwie gearteter Pin am Arduino sein - Bete, daß Der noch ganz ist.

Denke, Deine Transistor-Schaltung tut nicht Das, was Du willst. Es gibt auch Schaltungen, Die nahezu keine Verstärkung aufweisen, aber dafür andere Vorteile liefern (mir aber ein Buch mit sieben Siegeln - also 'normale' Transen)

MfG

(deleted)

Klingt für mich nach zu viel Verlust am Transistor. Der schaltet in dem Fall nicht ganz durch. Was ist das denn für einer?

Was ist ein Nerf? Was für Transistoren? Pnp oder npn? Schaltplan? Foto vom Aufbau?

(deleted)

Taserface2:

Nach mehreren Tests scheint sich das Problem auf den Pushermotor zu reduzieren. Dieser wird, sofern an eine 5V-Quelle gehalten, immer langsamer, bis er ganz ausgeht. Die Flywheels jedoch drehen ohne Probleme.

Dann miss mal den Strom, den der Nerf benötigt.
Und beschreibe nochmal wie genau du den Nerf und den Transistor versorgst.
Die 5Volt aus dem Arduino können schon zu knapp sein.
Auch wie du den Transistor angeschlossen hast. Ein NPN braucht +0,7 Volt an der Basis zum durchsteuern, ein PNP braucht GND. Und du brauchst eine Freilaufdiode am Nerf.

Alles wäre leichter, wenn du ein Schaltbild postest.

(deleted)

Auf dem Schaltbild kann man nicht erkennen, wie du den Nerf tatsächlich am Arduino angeschlossen hast. So kommen wir nicht weiter.

Nimm die 5V bzw. 6V für die Nerf aus einem Netzteil (ggf. mit Step Down Spannnung verringern) und nicht aus dem Arduino selbst. Zwei Elektromotoren, die wirklich was bewegen, würde ich nie aus dem Arduino speisen. Die ziehen vermutlich zu viel Strom und dann bricht die Spannung ein.

Weiterhin kann man in deinem Schaltplan nicht sehen, welche Transistoren da jetzt drin sind. Bei einem NPN muss der Strom erst durch den Verbraucher, dann an an den Kollektor und der Emitter muss direkt an GND. An die Basis kommt dann ein Digital Out mit ca. 300 Ohm. So funktioniert es jedenfalls bei mir.

Dann gilt auch für die Transistoren: Ist der Strom zu groß, dann werden sie heiß und es geht viel verloren. Das kann dazu führen, dass die Leistung nicht mehr ausreicht, die die Nerf-Motoren abbekommen.

Das Projekt klingt lustig, mach gern mal ein Video wenn es funktioniert.

(deleted)

Wenn da ne Powerbank ist, wieso gehst du überhaupt noch an die 5V? Woher soll denn nun der Strom für die Motoren kommen?

Mach halt nochmal einen korregierten Schaltplan und schreib dazu welche Art Transistor. Warum NPN ausscheidet versteh ich nicht, ich hab gute Erfahrung damit und die sind glaub ich leichter zu verstehen.