Go Down

Topic: Marlin Firmware, Probleme beim hinzufügen einer Bewegung (Read 440 times) previous topic - next topic

Wolle93

Hallo Leute, ich habe bei meinem 3D Drucker ein für mich größeres Problem.
Umd zwar möchte ich in die marlin Firmware einen RC Servo einprogrammieren, der bei einer Retractbewegung der E-Achse, eine positive bewegung macht und beim exrudieren eine negative Bewegung macht.

Ich habe schon ca 30h verbracht das Ding zum laufen zu bringen.

Brauchen tue ich das für ein nadelventil am hotend.

Ich hoffe ihr könnt mir in diesem Dschungel an Code helfen.

Wie würdet ihr das lösen? Ich habe schon viele varianten ausprobiert bin aber bei der chaosprogrammierung an irgendwelchen #define etc. gescheitert. Ich benutze ein Ramps 1.4 und der Servo ist auf pin 11.
Hauptsächlich scheitert es eig nur an der Implementierung der ganzen Servobewegung. Wenn ich eine LED ansteuere dann funktioniert alles.


Ich weiß echt nicht mehr weiter....

Danke Jetzt schonmal!

MaHa76

Schau mal bitte in Zeile 376 - da scheint sich ein Vertipper eingeschlichen zu haben. Insgesamt ist der Code aber auch schwer lesbar...

HotSystems

Schau mal bitte in Zeile 376 - da scheint sich ein Vertipper eingeschlichen zu haben. Insgesamt ist der Code aber auch schwer lesbar...
Wieso "Vertipper" ?
Man sieht doch eindeutig, das 30 Std. hier nicht ausreichen.
I2C = weniger ist mehr: weniger Kabel, mehr Probleme. 8)

Wolle93

Ja ich habe wir wirklich die Zähne ausgebissen >:(  :smiley-confuse:

HotSystems

Ja ich habe wir wirklich die Zähne ausgebissen >:(  :smiley-confuse:
Aber die Finger sind noch dran ?
Dann Tippe (Copy&Paste) deinen Sketch hier in Code-Tags rein.
Wichtig Code-Tags verwenden, Schaltfläche </> oben links im Editorfenster.

Wie sollen wir sonst helfen ?
Per Telepathie ?
I2C = weniger ist mehr: weniger Kabel, mehr Probleme. 8)

Wolle93

Soll ich hier wirklich alle sketches reinkopieren?

Tommy56

"Wer den schnellen Erfolg sucht, sollte nicht programmieren, sondern Holz hacken." (Quelle unbekannt)

HotSystems

Soll ich hier wirklich alle sketches reinkopieren?
Nein brauchst du nicht.
Dann darfst du nicht mit Hilfe rechnen.
Aber sicher wird hier bestimmt jemand seine Kristallkugel befragen.
I2C = weniger ist mehr: weniger Kabel, mehr Probleme. 8)

postmaster-ino

Hi

Da anscheinend schon Arduino-Codes, Die einem Drucker beiliegen hoch geheim sind - vll. ein Schubs in die richtige Richtung:
Wenn Du das Servo einbindest, klappt GAR NICHTS mehr - Das riecht danach, daß sich irgend welche Timer (Innereien des Arduino) in die Quere kommen.
Dafür wäre Es 'hilfreich', wenn wir hier WISSEN, WAS Du ALLES in Deinem Code verwendest.

Wenn's wo Anders klemmt - wäre das obere 'Hilfreiche' auch hier ebenfalls 'hilfreich'.

Wenn Du Das aber Alles nicht willst: Lebe mit Deinem Problem - Das gehört Dir ganz Alleine :)

MfG

agmue

Soll ich hier wirklich alle sketches reinkopieren?
Natürlich nicht, das sind 265 Dateien!

Ich sehe zwei Lösungswege:
  • Du wartest, bis jemand, der sich sehr gut mit Marlin 3D Printer Firmware auskennt, Dir schreibt, was Du wo ändern kannst.
  • Du führst diejenigen, die sich allgemein mit Arduino auskennen, behutsam an die Problematik heran, in dem Du sie an Deinem in 30 Stunden erworbenen Wissen teilhaben läßt.

Wolle93

Sorry bin jetzt vor kurzem erst heimgekommen.
Also eigentlich habe ich alles da reinimplementiert....
villeicht könnt ihr damit was anfangen...


C:\Users\Dennis\AppData\Local\Temp\build5126984119891445213.tmp\stepper.cpp.o: In function `set_stepper_direction()':
C:\Users\Dennis\AppData\Local\Temp\build5126984119891445213.tmp/stepper.cpp:607: undefined reference to `Servo::attach(int)'
C:\Users\Dennis\AppData\Local\Temp\build5126984119891445213.tmp/stepper.cpp:616: undefined reference to `Servo::write(int)'
C:\Users\Dennis\AppData\Local\Temp\build5126984119891445213.tmp\stepper.cpp.o: In function `__static_initialization_and_destruction_0':
C:\Users\Dennis\AppData\Local\Temp\build5126984119891445213.tmp/stepper.cpp:57: undefined reference to `Servo::Servo()'
collect2.exe: error: ld returned 1 exit status
Fehler beim Kompilieren.

ElEspanol

Mit einer LED geht es, sagst du? Dann mach einfach einen weiteren Arduino dran und steuer damit dein Servo. Einfacher, schneller und besser zu verstehen

Wolle93

Das wäre der letzte Ausweg...
Besser wäre es die noch verfügbare Leistung des atmegas zu nutzen.

HotSystems

....
C:\Users\Dennis\AppData\Local\Temp\build5126984119891445213.tmp\stepper.cpp.o: In function `set_stepper_direction()':
....
Fehler beim Kompilieren.

Was hat die Stepper-Library mit einem Servo zu tun ?

Allerdings ist das ohne den Sketch sehr mühsam.
I2C = weniger ist mehr: weniger Kabel, mehr Probleme. 8)

Wolle93

Ich nutze das Signal der Richtung des Schrittmotors an der E-Achse. Somit wenn dieses positiv ist er Servo in position a und wenn es negativ ist bzw 0 ist in Position b

Was meinst du mit sehr mühsam?
Muss mn dazu den kompletten vorhandenen Code auseinanderpflücken?

Go Up