04.04.2012: die pcb-Version mit variabler Motordrehzahl, GOduino II, ist auf meinem Blog http://techbitar.blogspot.com/2012/04/goduino-ii-motor-driver-arduino-uno.html und hier
29.03.2012: Korrekturen an Motorlast Berechnungen Abschnitt.
14.03.2012: Ich habe einen 100 uF elektrolytische Kondensator zwischen motor Stromversorgung (Pin 8 auf dem L293D) und GND Das Fritzing-Diagramm zeigt die Zugabe von diesem Kondensator aber die Fotos immer noch nicht. Ich habe auch ein paar Tippfehler behoben.
EINFÜHRUNG
Ich habe ein paar Roboter mit der Arduino Uno und das Adafruit Motor Schild entworfen. Beide sind toll für das Prototyping. Aber ich fand mich mein Roboter auseinander zu nehmen, jedes Mal, wenn ich brauchte, um einen anderen Roboter zu bauen. Es ist nicht kosteneffektiv, mehr Arduino-Mikrocontroller und motor Schilde bei jedem neuen Roboter-Projekt zu kaufen.
Also entschied ich mich zur Gestaltung einer low-cost "Run-Time" GOduino Robotersteuerung, die die Arduino Uno-Funktionalität vereint und in gewissem Maße, den motor Schild. Für diese Anleitung ich habe ein Steckbrett aber könnte habe sowie die GOduino auf eine Platine gelötet.
Ich habe ein paar ATmega328p (DIP) ICs gekauft, mit der Arduino Bootloader bereits verbrannt, aber können Sie die leere ATmega328 kaufen dann brennen die Arduino Bootloader selbst. Die Arduino-Leute haben vorgeschlagen, ein paar Möglichkeiten, dies zu tun: http://arduino.cc/en/Hacking/Bootloader
Ab jetzt werde bald wie ich fertig bin, erstellen und Testen eines neuen Roboters, ich den Arduino Uno und motor Schild Combo mit der GOduino ersetzen. Natürlich sollte die Arduino-Skizze in Betracht ziehen, die ich nicht mehr die Programmbibliothek verwende kommt mit dem motor Shield angepasst werden.
Überprüfen Sie werden der einfachen Test-Code zur Verfügung gestellt von Guilherme Martins (siehe unten) und Sie sehen, dass es nicht so schwer, Ihr motor Schild Skizze in der GOduino Umgebung zu portieren.
Um die GOduino zu bauen, kombiniert habe ich diese beiden Projekte:
I) aufbauend einen Arduino auf ein Steckbrett durch David A. Mellis
http://Arduino.CC/en/Main/Standalone
(II) Steuern Sie Ihre Motoren mit L293D und Arduino von Guilherme Martins
Die oben genannten Anleitungen werde ich nicht wiederholen, wie die Autoren einen guten Job mit Dokumentation und Illustrationen. Ich bieten visuelle Anweisungen, um zu verstehen, wie die beiden Projekte in der GOduino kombiniert werden.
Für die Programmierung der ATmega328, habe ich das Arduino IDE 1.0 Mikrocontrollers während noch in den Arduino Uno DIP Sockel eingefügt zu programmieren. Nachdem die IDE meine Roboter Skizze hochladen, ich habe einfach den ATmega328 aus den Arduino Uno entfernt dann in dem Steckbrett eingefügt.
So ist meine nächste Aufgabe, mein Faz3a II-Zeile-nach-Roboter mit der GOduino nachrüsten, während ich einen anderen Roboter mit dem Arduino Uno und motor Schild zu bauen.
MOTORLAST BERECHNUNGEN
Die maximale Gesamtbelastung (Stall/Spitzenlast) für jeden Motor sollte 600mA für maximal 1.2A für zwei Motoren nicht überschreiten. Finden Sie die aktuelle Max/Peak/Stall Ihres Motors aus dem Datenblatt oder indem Sie mit einem Multimeter testen. Dies ist, was die L293D unterstützt. Die Motoren auf meiner Linie folgende Roboter sind gut innerhalb dieser Bereiche (360mA Max/Peak/Stall). Aber es gibt eine Möglichkeit, die Stärke der L293D fast doppelt so hoch.
Es ist möglich, zwei L293D-Chips für fast eine Verdoppelung der aktuellen Huckepack. Ein einzelnes L293D können 1.2A für beide Motoren liefern. Das ist ungefähr 600mA pro Motor. Huckepack übernehmen eine zweite L293D und die Combo 1.2A pro Motor und 2.4A für beide Motoren kombiniert.
Der SN754410 ist Pin-kompatibel mit dem L293D und bieten für jeden Motor für eine Gesamtmenge von 2A für 2 Motoren 1A. Es ist auch möglich die SN754410 für 2A pro Motor und 4A für 2 Motoren Huckepack.
Die L293D seit Kickback-Schutzdioden wenn die Motoren Richtung umzukehren, damit die D suffix aber nicht der SN754410. Es ist ein Trade-off.
TEILELISTE
HARDWARE-KOMPONENTEN
-ATmega328p (DIP) mit der Arduino Bootloader gebrannt für Bequemlichkeit
-L293D H-Brücke (DIP)
-7805 Spannungsregler
-16 MHz Uhrenquarz
-LED
-220 Ohm Widerstand
-10K Ohm Widerstand
-Kondensatoren: elektrolytische 100 uF, 2 x 10 uF elektrolytische, 2 x 0,1 uF Keramik, 2 x 22 pF Keramik
-Arduino Uno w/DIP ATmega328p (für die Programmierung nur)
-Breadboards und Drähte
-2 x DC-Motoren (jede < 600mA laufen und < 1.2A Peak/Stall)
SOFTWARE
-Arduino IDE 1.0
Wie bei meiner anderen Guides, sind Feedback und Korrekturen das meiste Willkommen.