XY-Plotter mit dem Raspberry-Pi

Mein neuestes Projekt mit dem Raspberry Pi

Nach langer Hardware-Abstinenz wollte ich nun wieder einmal den Schraubendreher schwingen, und parallel dazu etwas mit einem Python Webframework “bottle.py” entwerfen. Nach etwas Überlegung und ein paar Anregungen aus dem Internet bin ich bei dem Vorhaben gelandet, einen XY-Plotter zu bauen, welcher sich über eine eigene Webseite steuern lässt, die der Pi selbst hostet.

Die Antriebe sind 2 alte Stepper-Motoren, die ich aus einem Epson Drucker ausgebaut habe. Ansteuern tue ich diese mittels 2 Doppel-H-Brücken die ich kostengünstig bei Ebay erworben habe. Spannung kommt aus einem alten PC-Netzteil, das ich vor ein paar Wochen in ein Festspannungs-Labornetzteil umgebaut habe.

Hier die ersten Bewegungen:


Das alternative Schienensystem!

Ich habe anfangs angefangen aus div. alten Druckern die horizontalen Gleiter aus zu bauen und leider auch schnell festgestellt, dass es hierbei keinen herstellerübergreifenden Standard zu geben scheint. Ich habe mir daher auf Ebay “Schubladenauszüge” bestellt! Mit diesem Geistesblitz habe ich schon mal angefangen die X-Y Schienen auf zu bauen und in Betrieb zu nehmen.

Die Software … ist erstmal geklaut 🙂

Da ich die Software größtenteils selbst machen will, habe ich erst einmal auf bereits bestehende Lösungen zurückgegriffen um nicht zu viel Zeit zu verlieren und das Rad neu erfinden zu müssen. Momentan reicht es mir noch, dass sich die Motoren drehen… sobald die Hardware steht, möchte ich mit der Software-Verfeinerung anfangen…

Hier der Link zum Download: engravR Projekt auf Github

Update(17.02.2016): Erste Erfolge im Stifte stemmen!

Hardware ist nicht gerade mein Steckenpferd. Allerdings bin ich auf meine selbstgebaute Hebevorrichtung für den Stift schon recht stolz 🙂

Er besteht aus zwei Slider-Schienen aus einem alten DVD-Laufwerk. Der Rest ist tatsächlich komplett aus Holz! (mehr “geschnitzt” als geschnitten möchte ich behaupten…)

Und hier mit etwas mehr “Motion”:


Update(27.02.2016): England liefert!

Endlich sind meine Kugellager aus England angekommen. Interessanter Weise, benötigt eine Lieferung aus England anscheinend doppelt so lange, als eine aus China…

Ich habe nun endlich die Transportriemen, Motoren und Umlenkrollen installiert und bin bereit um eine erste Testfahrt machen zu können. Sicherheitshalber habe ich den Schlitten gleich mal in die Mitte der Arbeitsfläche geschoben, um etwas “Spiel” zu haben um wenn notwendig noch ein zu greifen, ohne dass mir das Ding gleich um die Ohren fliegt 😉


Update(29.02.2016): It’s e Me, It’s e Mario

Nach einigen kleineren Einstellungen und Justierungen, habe ich mich mal ein ein größeres Druckprojekt gewagt um zu sehen wie “warm” die Elektronik so wird…. ich muss sagen, das ließ sie erstmal komplett kalt 🙂


Update(13.03.2016): Software ist mühsam…

Die Software ist wie immer etwas aufwändig zu erstellen. Ich wünsche mir, dass der Pi als Server fungiert und eine (aus dem Heimnetzwerk) erreichbare Home-Page hostet die als Web-Bedienoberfläche herhält. Sie soll neben typischen Funktionalitäten auch einen Editor, Einstellungen und natürlich alles mitbringen, was man so “bedienen” wollen könnte wie “Start”, “Stop”, “Pause”, “Schritt zurück”, “schritt vor”, “Löschen”, “Datei hochladen”, “Emergency-Stop” und natürlich Funktionalität für das sog. “jogging”… also das manuelle bewegen des Werkzeuges um sich einen “Nullpunkt” aus zu wählen. Hier mal ein erster Screenshot einer funktionierenden Verison:


Update(09.08.2016): Endlich Regenwetter!

Eigentlich bin ich schon eine gehörige Weile fertig mit diesem Projekt, aber wollte es in ähnlicher Weise dokumentiert bekommen wie mein Webradio-Projekt. Aufgrund des schönen Wetters und einem “Webradio V2” das momentan entsteht, habe ich dieses Projekt leider nicht fertig gemacht. Aber: Gott sei Dank haben wir jetzt für die nächsten 3 Tage Regen vorausgesagt bekommen und ich bin im Sommerurlaub. Nun habe ich also mal Zeit um das Projekt fertig zu dokumentieren und ein kleines Video an zu fertigen. Hier schon mal die Fakten und Eindrücke der GUI und einen Überblick über das benötigte Material:


Bill of Material:


Video-Präsentation:

16 Kommentare

    1. Hi Qassim, just start the script with “python pypipeplo” and connect with the browser of another computer to port :8080… (raspberrypy:8080) or with a browser localy on the pi to “localhost:8080” to see the web-interface for configuring and controlling the plotter.

      Regards,
      Matthias

      P.S.: Last time I have tried it with Firefox, I was unable to establish a connection to it… using Chrome there was no problem thought. So I recommend using chrome for this interface 😉

  1. Hi
    Thanks for answering my question but I still can not run the program and I have tried many times. Is there another way to help me to run the program Thank you

    1. Hi Qassim, I really want to help you, but without a failure-description it is really hard 🙂 What problem are you facing? any error-messages at the terminal? Regards, Matthias

  2. Hi I’m thanking you for trying to help me to find a solution to the problem, when I show “python pypipeplo” in the browser show choices like
    (Did you mean: python pypi deploy
    Searches related to python pypipeplo
    PyPiPePlo YouTube)
    Is there a program that can be downloaded on the raspberry pi and work on it
    Thanks

    1. Hi Qassim,
      you have extracted the zip-File which I have sent to you into a folder on the Pi right? at first you must navigate in that folder (e.g. cd /home/pi/myFolderName) and than execute “sudo python pypipeplo.py” (including the .py extention)….
      Otherwise you have made another misstake anywhere…

      Regards,
      Matthias

  3. Hi
    Maybe i upload another zip file because there is not pypipeplo.py file so I would be grateful if you could send the zip file to my email
    thanks with my regards

  4. Hi
    It works thanks, but in German, the change has not been made to English but I will learn some German words
    thank you my dear with my regards

  5. Hi
    Inkscape was used to convert images to Gcode and nc convertor to convert images to * .nc and upload the image to pypipeplo but did not work where I see the message (Es gab leider ein Problem! Prüfen Sie die Log-Einträge)
    what is the reason
    Thanks

    1. Hi Qassim, nice to hear that you have the program up and running (even if you are facing some problems…). Are you able to jogg arround? Does the program drive your steppers in the right way?
      The error message which you have mentioned, tell you, that you should review the Logs for more information… There should be a “Log”-Tab (in betreen of Controll and Settings). You can scroll through the log there. If the program got a bigger problem, you can also search the directory, where you have installed pypipeplo for a file called “pypipeplo.log”. The content should basically the same as in the log-tab, but may contain more specific information.
      I guess you have not installed any required lib or have a setting which is not correct or so.

      And dont forget to start the program with the additional argument “–debug” to get really ALL information. This is very usefull, especially during initial startup-phase until everything is working.

      Regards,
      Matthias

  6. Hi
    Thank you for communicating with me
    Yes Stepper motors work fine, I have re-installed the program again and the results are as follows
    1. For the attached examples its work well I can zoom in and zoom out the image and the plotting is excellent
    2 – When uploading images that i have made in the programs described above there are two problems first the image does not display in the preview the second problem when the plotting started the Servo does not work knowing that it works well with examples
    If possible, help me to solve these problems

    thanks
    with my regards

  7. Hi Matthias,

    danke für die tolle Arbeit! Ich müsste mich in den nächsten Wochen auch an ein ähnliches Projekt wagen, könntest du mir dazu die Software zukommen lassen?

    Vielen Dank

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.

Diese Website verwendet Akismet, um Spam zu reduzieren. Erfahre mehr darüber, wie deine Kommentardaten verarbeitet werden.