Teil 3: Software
Download.zip: Arduino-Codes & Processing-Codes.
Zusätzlich wird installiert: Arduino 1.8.5 & Processing 2.2.1
Ist der Drucker fertig aufgebaut, muss man erstmal auf dem Computer einige Einstellungen und Installationen ausführen damit man später die Platine ansteuern kann.
ACHTUNG: Je nach Betriebssystem gestaltet sich das etwas anders. Ich empfehle das ganze auf einem Windows-Rechner zu konfigurieren. Bei Macintosh hatte ich deutlich mehr Probleme und das Debuggen ist mühsamer, als bei Windows.
Konfiguration & Installation Arduino 1.8.5
Als erstes installiert man Arduino Version 1.8.5. Dazu lädt man die Datei auf der offiziellen Arduino-Seite herunter. Danach installiert Arduino auf eurem Rechner. Bei Macintosh muss man zuerst Arduino einmal starten, damit das Programm einen Libraries-Ordner erstellt. Bei Windows sollte automatisch einer bei der Installation erstellt werden. Für Linux-User muss ich das nicht erklären.
Hat die Installation geklappt braucht man jetzt die Dateien im Ardiuno-Codes-Ordner. Zuerst werden die 5 Ordner aus Libraries in /User/Dokumente/Arduino/Libaries kopiert. Anschliessend kopiert ihr den polarograph_server_a1 Ordner in /User/Dokumente/Arduino rein. Damit sind alle benötigten Dateien in der Arduino-Software vorhanden.
Jetzt muss man Arduino starten und die Platine wird mit dem Computer verbunden. TIPP: Es kommt manchmal vor, dass der Computer die Platine nicht richtig erkennt. Hier einfach mal alle USB-Anschlüsse durchprobieren. Jetzt müsst ihr die Arduino-Software erstmal richtig konfigurieren.
In Arduino wird erstmal die Platine ausgewählt. Bei "Serial-Port" die richtige "COM" wählen (je nach USB-Anschluss steht da dann z.B. COM-3). Anschliessend wählt ihr bei Projects den "polarograph_server_a1" aus. Am Code muss man nichts ändern, lediglich würde ich zuerst den Code überprüfen. Falls dieser ordentlich überprüft wurde kann man jetzt diesen auf die Platine laden.
TIPP: Falls man Probleme beim Upload hat: Serial-Port nochmals überprüfen, ev. USB-Anschluss wechseln. Falls man trotzdem Probleme hat, liegt dies wahrscheinlich an der Platine. Vielleicht ist irgendwo eine "kalte" Lötstelle, dann einfach nochmal sauber überprüfen und ev. nochmals löten.
Wenn der Upload geklappt hat geht man nochmals zum "Serial-Monitor" und schaut ob die Platine auch richtig läuft. Da sollte dann stehen "POLAROGRAPH ON!" und dann Ready.. Ready.. Ready...
Wichtig: Änder im "Serial-Monitor" noch die Frequenz-Rate auf "57600 Baud".
Konfiguration & Installation Processing 2.2.1
Als erstes installiert man Prozessing Version 2.2.1. Dazu lädt man die Datei auf der offiziellen Processing-Seite herunter. Danach installiert Processing auf eurem Rechner. Bei Macintosh muss man zuerst Processing einmal starten, damit das Programm einen Libraries-Ordner erstellt. Bei Windows sollte automatisch einer bei der Installation erstellt werden. Für Linux-User muss ich das nicht erklären.
Hat die Installation geklappt braucht man jetzt die Dateien im Processing-Codes-Ordner. Zuerst werden die 3 Ordner aus Libraries in /User/Dokumente/Processing/Libaries kopiert. Anschliessend kopiert ihr den "polarographcontroller" Ordner in /User/Dokumente/Processing rein. Damit sind alle benötigten Dateien in der Processing vorhanden.
Startet Processing und ladet den "polarographcontroller". Indem man auf den Play-Button drückt wird das Programm gestartet. Man sollte jetzt das Programm sehen. Hier gibt es einige Voreinstellungen bei "Setup":
- MM PER REV muss auf 64 gesetzt werden.
- STEPS PER REV muss auf 4076 gesetzt werden.
- MOTOR MAX SPEED sollte auf 1000 sein.
- MOTOR ACCELERATION auf 200.
Ausserdem muss man jetzt seine Druckflächen-Masse noch eingeben, plus die Papiergrösse welche man drucken möchte. Am besten probiert man hier bei den Einstellungen rum und wird ziemlich schnell verstehen welche Parameter was bewirken.
Gebt auch noch die Pen-Size ein (z.B. 0.4 für 0.4mm Stabilo-Fineliner). Im Setup kann man den Drehwinkel des Servo-Motors noch einstellen. Hier muss man ausprobieren. Man kann die Einstellungen auch gleich mit einem "Test-Button" testen. So dass am Ende der Stift richtig an- und abgesetzt wird.
WICHTIG: Sobald alles eingestellt ist muss man noch uploaden: "Upload Machine Specs". Damit der Plotter weiss wie gross die Druckfläche ist, etc.
Zeigt es oben im Programm, dass der Polarograph verbunden ist und alle Einstellungen stimmen, dann kann man jetzt den Plotter ansteuern. Dafür muss man aber zuerst die "QUEUE" starten. Das sollte dann auch grün aufleuchten. Das heisst Programm-Befehle werden jetzt direkt an den Plotter gesendet.
Erstmals kann man mit "Move direct" oder "Move Pen to Point" testen, ob der Drucker richtig funktioniert.
Jetzt benötigt man natürlich Dateien zum drucken. Es können SVG-Dateien gelesen werden. Man kann hier Bilder zu SVG-Dateien konvertieren: SVG-Konverter.
Falls man möchte, kann man auch das "Hello-World" als Test benutzten, dafür einfach auf das Bild klicken. Es gibt noch weitere Funktionen womit man zum Beispiel auch Fotos drucken kann, soweit bin ich zurzeit aber selber noch nicht gekommen. Hier ist noch viel Spielraum. Einfach ausprobieren!
Für mehr Informationen zum Polarograph gibt es auf dieser Seite.
Debugging
Ich hatte durchgehend vereinzelte Probleme. Deswegen werde ich hier kurz erläutern wie man am besten vorgeht, falls etwas nicht funktionieren sollte.
Dabei ist wichtig erstmal die Hardware zu überprüfen. Nur wenn man sich sicher ist, dass es nicht an der Hardware (Platine) liegt, kann man die Software durchgehen. Man geht am besten Schrittweise in der Reihenfolge unten durch:
Fehlerquellen Hardware:
-Kalte Lötstellen
Kalte Lötstellen bedeuten, dass beim Löten kein richtiger Kontakt zwischen der Leiterplatte und dem Bauteil besteht. Das kann auch beim benutzen durch Druck und Bewegung passieren. Es kann also erstmal funktionieren und dann kann sich durch Benutzung die Lötstelle lösen.
-USB-Kabel
Die gängigen USB-Kabel sind nicht sonderlich gut produziert. Es kann durchaus sein, dass das Kabel nicht richtig überträgt. Deshalb am besten ein mal ein anders Kabel ausprobieren. Das USB-Kabel von den gängigsten Druckern ist dasselbe. Also kann man da einfach schnell dieses benutzen um diesen Fehler auszuschliessen.
-USB-Anschlüsse
Nach meiner Erfahrung kann es auch an den USB-Ports liegen. Hier sollte man in den Einstellungen des Betriebssystem erstmal gucken, dass der Energiesparmodus bei USB-Ports ausgeschaltet ist. Falls nicht, kann es durchaus sein, dass die Platine zu wenig Spannung über den USB-Port erhält und dadurch auch nichts passiert. Die USB-Ports mal alle auszuprobieren kann auch nicht schaden.
-Brückenkabel
Die Brückenkabel (Jumper-Wires) sind nicht wirklich gute Qualität. Erfahrungsgemäss ist es öfters mal vorgekommen, dass die Brückenkabel nicht funktioniert haben. Deshalb bei Fehlern die "Jumpers" wechseln.
-ATMEGA-Bootloader
Der AT-MEGA-328P ist ein sehr billiges Bauteil. Falls ein Arduino-Set vorhanden ist, kann man darüber versuchen den Chip zu resetten oder anzusteuern. Einfachere Möglichkeit ist: Bestellt einen neuen.
Fehlerquellen Software:
-Arduino
Hier gibt es viele Möglichkeiten. Bevor man hier was ändert, erstmal über den "Serial-Monitor" überprüfen ob überhaupt ein Signal von der Platine empfangen wird. Falls nicht: Eine erste Option ist das wechseln von Arduino Nano zu Arduino Genuino Uno. Läuft über beides über den AT-Mega-328P. Ist eigentlich dasselbe. Hier soll auch nochmal erwähnt werden, dass die Arduino-Software "open-source" ist. Dadurch ist diese sehr anfällig für Bugs.
-Processing
Bei der Polarograph-Software gibts unglaublich viele Fehler. Wichtig ist erstmal, dass der Plotter "connected" ist. Falls dies nicht funktioniert, sollte man erstmal bei "Serial-Port" auf keinen Verbindung wechseln und dann nochmal zurück auf die Richtige.
Ist alles verbunden und sollte laufen, kann es trotzdem sein, dass sich das Programm aufhängt. "BUSY" zu sehen und nach max. 5 Minuten immer noch da: Neustart. Die Polaropgraph-Software ist ziemlich verbugt. Man sollte also da öfters einfach mal neustarten, Einstellungen ändern, ausprobieren.
Viel Spass beim drucken!