CNC-Controller mit ATMega 328 mit GRBL 1.1 Firmware flashen?

Kraftei

User
Hallo zusammen :)

Ich habe eine recht solide CNC-Fräse Minimill Kit2 des Österreichischen Herstellers Qbot.
Der einzige Wehmutstropfen ist, dass der verbaute CNC-Controller mit einer speziellen Firmware geflasht ist, welche nur mit der herstellereigenen CAD / CAM Software zusammenarbeitet.

Ich möchte jedoch die Fräse mit Estlcam steuern, welches bei der Programmierung eine auf einem "echten GRBL-Controller" vorhandene GRBL Flashware zunächst sichert, und dann ein "ESTLCAM-GRBL aufspielt.
Leider funktioniert dieser Schritt, Egal, ob ich Arduino Nano, Uno, Mega oder GRBL als Ziel auswähle, bei meinem Controller nicht. Er wird von ESTLCAM zwar angesprochen (die Stepper zucken), aber es kommt in Estlcam ständig ein Bootloader-Fehler.

Nun habe ich auf dem Contoller eine ISP-Schnittstelle (noch ohne Pins) entdeckt, und dachte, es müsste doch möglich sein, auf meinen ATMega 328P eine GRBL-Flashware zu flashen, die dann hoffentlich von ESTLCAM erfolgreich "überschrieben" werden kann.
Etwas anderes ist ja auf den gängigen Arduino CNC-Controller Boards auch nicht drauf oder?
Oder scheitert dieses Vorhaben, weil der Hersteller des Contollers (auf der Platine steht der Hersteller der Fräse, QBot!) die Software wahrscheinlich auf das Layout "seines" Boards angepasst hat?

Ich würde schon gerne bei diesem Controller Board bleiben, da es eingangsseitig auf 48 Volt läuft, ein solides 48V Netzteil dabei ist, und eine andere, als eine reine Software Lösung durch Flashen, also eine Hardware-Lösung mit neuem Board (die gängigen GRBL-China Controller haben alle max. 36Volt :-( ), zusätzlichem Spannungsregler etc. vergleichsweise aufwendiger wäre.

Kann mir jemand sagen, ob bzw. wie das geht, und was ich hierzu bräuchte?
Einen USB-AVR Programmer habe ich sogar noch (siehe Foto). Passt der für mein Vorhaben?

Merci

:) Holgi
 

Anhänge

  • ISP.jpg
    ISP.jpg
    315,4 KB · Aufrufe: 103
  • Board ISP.jpg
    Board ISP.jpg
    525,9 KB · Aufrufe: 99
Interessanter Ansatz der allerdings zum Scheitern verurteilt ist ! Evtl. bringst die SW drauf -wenn die fuses das erlauben - aber SW arbeitet nicht mit der HW zusammen.
 

Kraftei

User
Interessanter Ansatz der allerdings zum Scheitern verurteilt ist ! Evtl. bringst die SW drauf -wenn die fuses das erlauben - aber SW arbeitet nicht mit der HW zusammen.
Hallo Klaus,
stimmt!
Fuses und Lockbits gibt's ja auch :(
Obwohl es angeblich auch hier Mittel und Wege gibt: https://www.mikrocontroller.net/topic/120461

Bliebe dann aber wohl, wie gesagt, noch das Problem, dass die SW nicht zur HW passt :(
Ich habe mal den Hersteller Qbot (sehr netter Support!) angeschrieben, ob es da irgendwelche Standards gibt, an die sie sich gehalten haben, oder ob die SW auf die HW "hingebogen" wurde.
 

Bernd Langner

Moderator
Teammitglied
Morgen
Da könnten zwei Controller drauf sein deshalb zweimal ISP
Ich denke der ISP 2 ist für den Controller der die USB Schnittstelle verwaltet.
ISP 1 ist für den Controller der die Endstufen ansteuert.
Die Frage ist wie ist die USB Schnittstelle definiert und programmiert
hier könnte schon die erste Hürde sein.
Das zweite werden die Fusebits sein und da ganz speziell die Lockbits
wenn die gesetzt sind geht nichts mehr und ich denke das wird der
Hersteller gemacht haben. Die Anpassung der Hardware an die Software ist ein weiteres Problem.

Gruß Bernd
 

Kraftei

User
Morgen
Da könnten zwei Controller drauf sein deshalb zweimal ISP
Ich denke der ISP 2 ist für den Controller der die USB Schnittstelle verwaltet.
ISP 1 ist für den Controller der die Endstufen ansteuert.

Gruß Bernd

Fast richtig :)
Der Hersteller hat mir geschrieben, dass er davon abrät, da in dem 2. Controller einige Gimmicks enthalten sind, (Diagnosesoftware, Fernwartung etc.) mit denen eine normale GRBL SW wohl nix anfangen kann.

Ich werde es also lassen, und mir einen der gängigen China-GRBL Controller zulegen.
Schade, dass es hier anscheinend keinen 48V Controller gibt.
Somit muss ich mir noch zusätzlich ein 36V Netzteil besorgen, oder die 48V meines Netzteils, für das Board selbst nochmal auf 36V runterholen, und nur die Stepper-Treiber mit 48V anfahren.
Das wollte ich mir eigentlich ersparen...😢

Auf jeden Fall vielen Dank

:) Holgi
 

onki

User
Hallo Holgi,

das mit den 48V liegt mußmaßlich an der Schutzklasse.
Den höheren Aufwand möchte man sich ohne Not vermutlich hier nicht antun und in China juckt es keinen.

Gruß und ein schönes WE

Onki
 
der erste Controller ist ein Atmel Usb warscheidlich 16U2
der hat seine eigene ISP wie auf den etwas besseren Arduino Uno
der andere ist der 328 er
den bringst du auf jeden fall dazu GRBL zu Spielen
dazu musst du aber erst das Pinning herausfinden
also mit welchen ausgängen er die Endstufen CLK DIR und ENABLE
ansteuert
danach kannst du in der Software die Pinns dementsprechend zuweisen
nur Estl wird er dir nicht machen weil du in Estl keine Pinzuweisungen machen kannst
Grüße Biwi
 

charly_a

User
Auch wenns der richtige Prozessor ist, ist es doch unwahrscheinlich, dass das Pinning auf deiner Hardware mit Estlcam zusammenpasst. Estlcam erwartet keine spezielle Software auf dem Zielsystem, ich habs schon auf etlichen China-Arduinos verwendet. Du kannst schon was über ISP auf den Controller flashen, aber dann ist auch dein Bootloader futsch. Den musst du nachher wieder draufspielen mit richtig gesetzten Fuses. Estlcam funktioniert nur mit Bootloader über den UART. Und bei jeder Parameteränderung am PC wird neu geflasht. Das mindeste, was du brauchst sind die Takt und Richtungssignale der 3 Motoren und einen Schaltplan. Dann musst bestimmt ein paar Leiterbahnen aufkratzen und neu verbinden. Ich hatte ein ähnliches Projekt vor mit einer uralten ISEL-Steuerung und hab da einen Arduino mit Estlcam engepflanzt. Letztendlich hab ich dann das Zeug entsorgt und 3 Endstufen von Stepper-online gekauft, den Arduino-uno drangestöpselt und das lief sofort. Ich kann die da empfehlen: DM542 mit 20..50V, max. 4,2A, Microstepping bis 25000clk/U für 23€. oder je nach Motorgröße andere Baugröße. Das alte Netzteil kannst ja verwenden.
 

Kraftei

User
Hallo Charly,
das Umflashen habe ich in zwischen verworfen, da das, wie du ebenfalls beschreibst, ziemlich sicher in die Hose gehen würde.

So in der Art; wie du es vorschlägst, werde ich's wohl machen, da ich mit der Minimill Software irgendwie nicht so richtig warm werde.
Bin aber noch nicht damit durch, ob ich fertige Treiber (wie den DM542), oder die Low Budget Lösung (GRBL Board + CNC Shield) wähle.
Liegt, selbst mit den guten TMC2209 Treibern preislich etwa bei der Hälfte, ist dabei, was noch viel wichtiger ist, außerdem sehr kompakt und man spart sich die ganze Verdrahtung.
Als Aufrüstung für die Nema 17 Stepper hatte ich diese 65 Ncm Variante im Sinn.
Damit sollte ich dann genug Reserven haben, so dass man auch mal über eine etwas schwerere HF-Spindel nachdenken kann.
Aluminium kann sie zwar eigentlich jetzt schon, aber "Haben" ist bekanntlich besser, als "Brauchen" :)
 

charly_a

User
Also bei dem NEMA17 mit 65Ncm und 2,1A wird dir der TMC2209 ziemlich schnell abrauchen. Selbst mit Kühlkörper bringst die Hitze nicht raus. Amazon meint 2,8A, das Datenblatt meint eher 1,2A mit Lüfter. Trotzdem erstaunlich, was in dem kleinen Ding drinsteckt. Hab mir die Minimill grade angeschaut. Die Schrittmotoren schauen schon recht klein aus im Vergleich zu der 1000W Mafell-Spindel.🤔
 

Kraftei

User
Hi Charly,
die aktuell verbaute Steuerung hat überhaupt keine Kühlkörper auf den Treibern, und trotzdem kann die Minimill Kit2 mehr, als nur Löcher in Käse fräsen :D


Ich denke, die TMC 2209 sind zu den verbauten Treiben wahre Leistungsmonster :D
Außerdem nehmen sich die 65 Ncm Motoren die 2.1A ja nur an der Belastungsgrenze.
Ich denke mal, im Normalbetrieb sollte sich das ausgehen, oder?

Minimill Controller_kl.jpg
 

Kraftei

User
Hi Leutz,
Ich bin noch ein kleines Update schuldig,wie die Sache weiterging...

Der Umbau ist zwar noch nicht zu 100% abgeschlossen, steht aber kurz davor.
Ich drücke mich gerade noch ein wenig davor, die ganze Kabelage umzurüsten (habe Schleppketten-taugliches, geschirmtes Lapp-Kabel besorgt), und in Schleppketten zu legen.
Aber die Steuerung ist fertig. Zunächst GRBL 1.1 (mit Laser-GRBL) und danach Estcam geflasht - läuft (zumindest "trocken").
Glücklicherweise sind an der MiniKit2 4mm KGUS verbaut (d.h. 4 = Teiler von 360, perfekt!) so dass ich bei Halbschrit (400 Schritte à 1,8°) 0,01mm / Schritt erreiche, und nicht einen krummen Wert, wie bspsw. mit einer 5mm Spindel. (Schrittverluste jetzt mal nicht eingerechnet).
Ich habe mich entschlossen, diesen Microstepping-Wahn nicht mitzumachen, und stattdessen auf erhöhte Haltekraft (soweit ich gelesen habe, nur bei Voll- und Halbschritt?) zu setzen.
Ich hoffe mal, das ist am Ende effektiver, als irgendwelche theoretischen Mikrometer-Schritte, welche die Hardware eh' nicht umsetzen kann.
Habe mich ebenso für 24V Eingangsspannung entschieden, da ich günstig an ein solides Mean-Well Netzteil gekommen bin (siehe Foto).
In den beiden verblebenden GX12 Steckern habe ich nun noch Optionen für Stromversorgung einer Beleuchtung, Endschalter u. Not-AUS etc.

Der "Bau" hat Spaß gemacht, und ich bin nun maximal flexibel!
Daher nicht wundern, vielleicht mache ich dazu mal ebenso einen eigenen Thread auf, damit die Infos für den Nachbau-Interessierten leichter einfacher zu finden sind.

Hier also die Quellen der verwendeten Komponenten:

Arduino UNO + CNC-V3 Shield (incl. 8825 Treibern 11,95€ :) )
Gehäuse 3D-Druck f. Arduino m. CNC-Shield
Lüfter 24V 60 x 60 x 10mm
Stecker GX12 4 pol
Kabel mit Dupont Steckern
Lapp-Kabel 4x 0,25 schleppkettentauglich
JST PH Leergehäuse 6 polig f. Schrittmotor
JST PH Crimpkontakt 28-32 AWG f. Schrittmotor
Stecker + Buchse XT-60


:) Holgi
 

Anhänge

  • IMG_8129.jpg
    IMG_8129.jpg
    342,6 KB · Aufrufe: 82
  • IMG_8130.jpg
    IMG_8130.jpg
    322,2 KB · Aufrufe: 86
  • IMG_8131.jpg
    IMG_8131.jpg
    299,6 KB · Aufrufe: 80
  • IMG_8132.jpg
    IMG_8132.jpg
    390,6 KB · Aufrufe: 89
  • IMG_8133.jpg
    IMG_8133.jpg
    305,5 KB · Aufrufe: 80
Zuletzt bearbeitet:
Ansicht hell / dunkel umschalten
Oben Unten