Repository navigation
Das Programm
Das Steuerungsprogramm der Waschimmo (die sogenannte Firmware) kann unter https://github.com/Nugman/Waschimmo/blob/master/Waschimmo/Waschimmo.ino heruntergeladen werden. Natürlich kann man auch das GIT-Repository clonen (git clone). Um das Programm der Waschimmo in den Arduino laden zu können, benötigt man die Ardunio-Software. Diese kann man unter https://www.arduino.cc/en/Main/Software herunterladen. Nach der Installation der Software und ggf. der USB-Treiber kann man das Programm öffnen.
Zum Kompilieren des Programms werden folgende externe Bibliotheken benötigt:
- Menusystem: https://github.com/jonblack/arduino-menusystem
- I2C LCD: https://github.com/fdebrabander/Arduino-LiquidCrystal-I2C-library
Die Libraries müssen als ZIP-File heruntergeladen und über die Arduino-Software installiert werden (Menüpunkt "Sketch" -> "Bibliothek einbinden" -> ".ZIP Bilbiothek hinzufügen").
Je nach Aufbau der Hardware muss die Firmware noch den Gegenbenheiten angepasst werden:
In Zeile 55 muss die Variable innerPos so gesetzt werden, dass der Absaugarm am äußeren Rand des Plattenlabels steht. In meinem Fall muss das Servo dazu auf 96° stehen (0° ist die Ruheposition über dem Tonarmhalter).
int innerPos = 96; // inner arm positon (right before the record label)
Lift: Zeile 522, 530, 531 (mein Wert: 40)
void liftArm() {
int pos = 0;
for(pos = 0; pos < 40; pos += 1)
{
liftServo.write(pos);
delay(25);
}
}
void lowerArm() {
int pos = 40;
for(pos = 40; pos>=0; pos-=1)
{
liftServo.write(pos);
delay(25);
}
}
Zeile 539 (mein Wert: 90)
void liftBrush() {
for(brushPos; brushPos < 90; brushPos += 1)
{
brushServo.write(brushPos);
delay(25);
}
}
Die korrekten Werte müssen experimentell ermittelt werden. Ich habe mir dazu ein kleines Hilfsprogramm geschrieben, das die Servos an die jeweilige Position fährt. Die so ermittelten Werte übernimmt man in das Waschimmo-Programm.
Das Programm kann über die Arduino-Software ganz einfach per USB an den Arduino übertragen werden. Detaillierte Anleitungen dazu gibt es z.B. auf https://www.arduino.cc/en/main/howto.
Waschimmo von Roland Behme ist lizenziert unter einer Creative Commons Namensnennung - Nicht-kommerziell - Weitergabe unter gleichen Bedingungen 4.0 International Lizenz.
