|
|
|
|
|
|
Arduino Programmierung (LED) |
|
Ampel Steuerung (klicke auf Bild) |
|
Zubehör: |
Arduino Software 1.6.13 (Arduino Webseite im Downloadbereich) |
Arduino Mega 260 |
|
Grundeinstellungen: |
Werkzeuge: Bord auswählen |
Port: Port auswählen bei mir COM3 |
Für den Test: Der lange Anschluss der LED (plus) wird mit PIN 13, der kurze Anschluss der LED (Masse) wird mit PIN GND verbunden. Wie auf dem Bild. |
|
Empfohlene Eingangspannung 7-12V=> Ich nehme 9V |
Arduino Tutorial: hier der Link |
|
|
Programmcode: |
void setup()
{
pinMode(13, OUTPUT); //Wir wollen den PIN 13 für unsere Zwecke als Ausgangs-PIN definieren.
} |
|
Anschließend müssen wir dem Board beibringen,welcher PIN was tun soll.
Wir wollen den PIN 13 für unsere Zwecke als Ausgangs-PIN definieren.
Dazu setzen wir den folgenden Code: |
|
void loop()
{
digitalWrite(13, HIGH); // PIN 13 schaltet sich ein
delay(3000); //wartet 3 Sekunde (3000 Millisekunden)
digitalWrite(13, LOW); // PIN 13 schaltet sich aus
delay(1000); //wartet 1 Sekunde (1000 Millisekunden)
} |
Die loop Routine wird permanent durchlaufen. In diesem Fall schaltet sich die LED an PIN 13 ein, nach 3 Sekunde wieder aus, wieder ein und so weiter. Das ganze so lange, bis das Board ausgeschalten (vom Strom getrennt wird). Nach Fertigstellung des Codes kann dieser verifiziert und per Upload auf das Board geschrieben werden. Ist der Upload Vorgang beendet beginnt das Programm auf dem Board mit der Arbeit. Die LED an PIN 13 sollte nun im Sekundentakt blinken. |
|
Noch besser |
Ampel Steuerung ohne delay |
|
void setup() {
// PIN als Ausgang definieren:
pinMode(1,OUTPUT); pinMode(2,OUTPUT); pinMode(3,OUTPUT); pinMode(4,OUTPUT);
}
unsigned long zeit01=0; //Ampel
unsigned long interval01=30000; //Ampel
unsigned long zeit02=0; //Ampel
unsigned long interval02=30000; //Ampel
void loop() {
// put your main code here, to run repeatedly:
//Ampel
if (millis() - zeit01 > interval01){
zeit01 = millis();
digitalWrite(1,HIGH); //Pin (1 rot) schaltet sich ein
digitalWrite(3,HIGH); //Pin (3 gruen) schaltet sich ein
digitalWrite(2,LOW); //Pin (2 gruen) schaltet sich aus
digitalWrite(4,LOW); //Pin (4 rot) schaltet sich aus
}
if (millis() - zeit02 > interval02){
zeit02 = millis();
digitalWrite(1,LOW); //Pin (1 rot) schaltet sich aus
digitalWrite(3,LOW); //Pin (3 gruen) schaltet sich aus
digitalWrite(2,HIGH); //Pin (2 gruen) schaltet sich ein
digitalWrite(4,HIGH); //Pin (4 rot) schaltet sich ein
}
} |
|
Hinweis:
Auch die Input PIN's des Boards können als Ausgang definiert werden. Das heißt, neben dem digitalen und dem PWM Block, können auch die analogen Eingangsports als Ausgang gesetzt werden. Das erhöht die Anzahl der Ausgänge um 16 Stück! Die analogen PIN's werden mit Ax angesprochen, Beispiel: pinMode(A5, OUTPUT); |
|
Input/Output
Das Mega hat 54 digitale Pins, die als Input und Output genutzt werden können. Die Pins arbeiten mit einer Spannung von 5V - jeder Pin kann eine Spannung von 40 mA aufnehmen oder abgeben, aber die max. Gesamtstrom darf dabei nicht überschritten werden. |
|
|
IRF520 MOSFET Modul |
L298N Doppel H-Bridge Motortreiber |
5V 1 Kanal Relais Modul mit Optokoppler (High Low Pegel) |
|
Brauche ich für AC 12Volt Lampen |
|
für AC 12Volt Motoren
wie Faller Synchron-Bastelmotor (180629) |
|
|
|
|
|
- Spannung: 3.3 V, 5 V
- Anschlüsse:
VCC, GND, Signal / VIN, GND, V+, V-
- Ausgangslast Spannung: 0-24 V
- Ausgang Strom: kleiner als 5A (Bei Lasten grösser als 1A Kühlkörper verwenden)
- Plattform: Arduino
- IRF520 MOSFET-Treibermodul
- Abmessungen 34 x 31 x 24 mm
|
2 DC Motoren oder einen Schrittmotor ansteuern.
- Dual H-Bridge Treiber L298N
- Logikpegel 5 V
- Betriebsspannung 5 bis 35 V
- Strom Logik 0 bis 36 mA
- Last 2A (MAX pro Bridge)
- Grösse 43 x 43 x 27 mm (L x B x H)
|
- Nennlast: 10A 250 VAC / 10A 30 VDC
- Schaltpegel TTL
- Unterstützung für High und Low Pegel Trigger
- Maximale Schaltspannung: 250 VAC / 30 VDC
- Grösse 27 x 51 x 19 mm
NC = Normally Closed
COM = Common Pin
NO = Normally Open
|
|
|
|
|
|
|
|