3D Printers - deel 2

Wat je moet doen is een 2D ding maken en dan draaien terwijl je hem lineair extrudeert. Het begin is:

code:


linear_extrude (height=50, convexity=10, twist=1080) square (30);
four NANDS do make a NOR . Kijk ook eens in onze shop: http://www.bitwizard.nl/shop/

Een kennis van me wil de elektronica van z'n 3D printer veranderen (*). En nu wil ik wel eens experimenteren op zijn kosten met een 32-bit-controller.
Is dit wat? http://aliexpress.com/item/32384368763.html

Ik heb ook de duurdere "smoothieboard" bekeken en volgens mij kwam ik dan A5894 stepper drivers tegen. Het datasheet heeft het dan over max current: 2A, RDSON: 800mOhm. Er valt en F*** 1.6V over de mosfet bij 2A! Dat is 3W, voor twee mosfet (1 top, 1 bottomfet) is dat 6W in dat stomme chipje. Ehhh, met een "infinite heatsink" gaat dat vast lukken, maar weet je wat? Liever niet als ik er bij ben. De DRV8825 heeft een RDSON van 0.2 Ohm, dat is al VEEEL schappelijker 4x minder warmte in de chip. Nog steeds veel en gaat niet zonder heatsink, maar "er is een kans dat je het zo werkend krijgt".

(*) De printer signaleerde een foutconditie: Het hotend ging "uit regulering" bij het switchen van laag 1 (250) naar laag 2 (245). Heeft niets met de elektronica te maken, maar goed. Na zoveel keer sla ik het "op zijn kosten" idee niet af.

[Bericht gewijzigd door rew op 12 november 2020 10:46:33 (13%)]

four NANDS do make a NOR . Kijk ook eens in onze shop: http://www.bitwizard.nl/shop/

Hoi 3Dprinters,
Ik wil mijn 3d printer ombouwen naar een dual extruder, het is een ultimaker 2, er zit een ultimainboard 211 in, welk de aaansluitingen heeft
voor dual funties, ik heb de spullen wat bij elkaar, maar met de firmware van dat board raak ik een beetje t spoor kwijt,
mijn vraag hier is, of er iemand zoiets al gedaan heeft?
of ergens een manual vinden hoe het zou moeten.

bijvoorbaat dank.

Martien.

Volgens mij is marlin de firmware die meestal al in dat soort bordjes zit. Als je dingen gaat veranderen kan het, zeker als het niet direct werkt, verstandig zijn om gewoon de laatste versie te installeren.

Om te beginnen moet je kijken of er een voorbeeldconfiguratie voor jou bord met marlin wordt meegeleverd, of eventueel dat je iemand kan vinden die het gemaakt heeft en gepubliceerd.

four NANDS do make a NOR . Kijk ook eens in onze shop: http://www.bitwizard.nl/shop/

Is er niet een "officiele route" voor bij Ultimaker? Zoiets als je printer instellen in Cura en dan "update firmware" doen met een printer die op 2 extruders is ingesteld?

Eluke.nl // Backwards Lightspeed Bus: i*i=-1, so iic=-c.

hoi,
dat van marlin wist ik niet, maar ga me erin verdiepen.
en met Cura updaten over USB heb ik ook ergens gelezen.
maar tips zijn nog welkom.
maar voor het fout gaat, wil ik misschien het board uitbouwen en er een ander inzetten, dan kan ik weer altijd terug naar AF.

Martien

Trouwens.... Overweeg om een raspberry pi met octoprint er naast te zetten en dan klipper te installeren. Dan draai je de planning van accelleratie, bochtenwerk etc etc op de pi en stuurt die naar de arduino dingen als: "om 9:46:03.123456 een pulsje op pootje vier" En dat dan veel en snel achter mekaar zodat er uiteindelijk wat uitkomt. Een groot voordeel vind ik dat alle config gewoon in een config file staat. Niet de ene helft er in gecompileerd, de andere helft in eeprom settings etc etc.

Er zijn tegenwoordig ook goede calibratie procedures voor allerlei dingen. Om bijvoorbeeld het druk-algorithme voor het hotend te calibreren kan je een object printen terwijl je instelt: laat die parameter afhankelijk zijn van de hoogte tussen X en Y. Dan kan je kijken op welke hoogte het resultaat je bevalt en dat vervolgens in de config file zetten.

four NANDS do make a NOR . Kijk ook eens in onze shop: http://www.bitwizard.nl/shop/

Oei.. dat gaat wat snel voor mij,
maar een raspberry heb ik wel mee gestoeid en octoprint moet ik nog gaan zoeken met google wat het is.
en als ik veel in de software moet duiken, dan gaat mij toch wel boven mijn kunnen, of ik moet er HEEL veel tijd insteken.
maar ik ga het bekijken.

Martien.

Om te beginnen gewoon "octopi" downloaden en eens op een reserve SD kaartje zetten en kijken wat het is. Je wilt niet meer terug. :-)

four NANDS do make a NOR . Kijk ook eens in onze shop: http://www.bitwizard.nl/shop/

vanavond octopi gedownload, geinstalleerd, en kon via wifi octoprint bedienen. nog geen printer aangesloten. dus dit hoofdstuk zal wel werken.
nu wil ik wel met de netwerkkabel aan de pi op het netwerk, maar dhcp ziet geen pi, en die krijgt geen ip-adres, contole met ifconfig.
morgenavond ga ik verder.
Martien.

-=[ In het kort ]=-
Terugloop, richting home-position, werkt niet voor de Z-as van een zelfgemaakt Anet controllerboardje. Hieronder heb ik de details geschreven.

-=[ Intro ]=-
Momenteel ben ik bezig met het bouwen van een nieuwe 3D-printer. Ik heb daarvoor een PCB gemaakt, die identiek is aan een boardje van een Anet Ax (6 of 8). Een tijd geleden heb ik hier ook een foto van gepubliceerd.

Een gewone Anet A8 is normaliter voorzien van een stepstick-driver met een A4988. Mijn ontwerp gaat uit van een TB6600. Dit is een driver die beduidend meer stroom kan leveren.

[Controllerboard]
https://www.uploadarchief.net/files/download/3d-oompfh_a1s.jpg

[TB6600 StepStick]
https://www.uploadarchief.net/files/download/3d-oompfh_b1s.jpg

[Opgebouwd]
https://www.uploadarchief.net/files/download/3d-oompfh_a3s.jpg

-=[ Probleem ]=-
Voordat ik de printer in elkaar ging zetten, besloot ik om eerst het boardje te testen. Daarmee bedoel ik dat alle assen getest worden met een TB6600 "stepstick" en daarop een NEMA17 steppermotor aangesloten.
Deze stepstick werd in het controllerboardje gestoken om na opstarten de steppermotor te laten draaien. Als eerste heb ik de X-as getest. Naar en van de home-position verloopt probleemloos : een links-om en rechts-om draaiende motor. Nadat deze "stepstick en steppermotor"-combinatie ook succesvol was getest voor de Y-as, werd de Z-as getest.
En hier gebeurde iets merkwaardigs. Van de home-positie af, levert een draaiende motor op. Terug richting de home-position, nam in het scherm de afstand-teller terug, maar de motor draaide niet.

StepStick
Ik vermoedde dat de stepstick wellicht niet meer goed werkte. Echter, voor de X- en Y-as werkte het juist wel weer normaal. Vervolgens terug geplaatst voor de Z-as, en het probleem was er weer.
Ik heb hier 3 identieke stepsticks met een TB6600 liggen. Ik heb ze alle 3 voor de XY,- en Z-as getest. Alle 3 leveren ze exact hetzelfde resultaat op : Bij Z-as de ene kant wel draaien, de andere kant een stilstaande motor. En aangesloten voor de X/Y-as werken ze wel gewoon. Daar maak ik uit op dat de stepstick zelf geen probleem is.

Controller-board
Uit voorzorg heb ik de stepstick verwijderd om alle contacten en verbindingen door te meten op de controllerboard.
Dit heb ik uit op alle 3 assen gecontroleerd / door gemeten. Dus van contact-pin voor de stepstick tot aan de pinnen van de Atmega1284P.
Ik heb zelfs tot aan de pinnen van de TB6600 gemeten. Er waren geen bijzonderheden te meten, alles was rechtstreeks verbonden. Ook zijn de contactpunten met de soldeerbout nagelopen (en wederom nagelopen met de multimeter). Ook eventueele kortsluitingen tussen de aanstuurpinnen voor Enable, Dir en Step zijn gecontroleerd.
Brakke of vreemde verbindingen zijn daarmee uitgesloten.

Instellingen Marlin
Voor de zekerheid heb ik de as-richting omgekeerd gezet voor de Z-as. ("INVERT_Z_DIR true" versus "INVERT_Z_DIR false")
Zou er iets defect zijn, dan zou hier iets te zien zijn.
Rechtsom (van home-position af) zorgde voor een draaiende motor, maar nu in omgekeerde richting. Linksom (naar heom-position) weigerde de motor te draaien. Vervolgens ben ik de instellingen voor de Z-as gelijk gaan stellen als voor de X/Y-as :

#define DEFAULT_AXIS_STEPS_PER_UNIT { 100, 100, 100, 23 }

en

#define DEFAULT_MAX_FEEDRATE { 300, 300, 300, 25}

Het gaat tenslotte om het laten draaien van een losse steppermotor aan de "stepstick". Het zou er voor moeten zorgen dat de motor identiek zou moeten reageren voor de X/Y,- en Z-as. Echter, het probleem blijft.

Signalen meten
* Mutimeter
Omdat ik verwachtte dat er iets mis zou zijn met de Z-Dir pin, ben ik daar gaan meten.
Linksom en rechtsom liet tot mijn verbazing zien dat het allemaal prima werkte (0 en 5V signalen kloppen). Uit voorzorg zijn van alle 3 assen ook de Enable-pinnen gemeten. Ook dat werkt netjes.

Dan maar met een multimeter (frequentie) meten op de step-pin. Hier was iets aparts te zien.
Bij afstandtoename werd er iets gemeten, bij afname niet (ook als ik de INVERT_Z-Dir omkeer).
* Scoop
Een goede reden om de scoop erbij te pakken. En hier schijnt iets aantoonbaar mis te gaan. Bij bewegen van het 0-punt af (afstand toename) zijn 5V-stuurpulsen zichtbaar. Terugkeren richting home-position (0-punt) zijn er helemaal geen stuurpulsen te zien. Wisselen van de instelling INVERT_Z-Dir (true naar false) leverde hetzelfde probleem op.
Met andere woorden, bij terugkeren richting home-position worden geen pulsen verzonden (ongeacht de ingestelde draairichting van de motor).

-=[ Vraag ]=-
Dankzij bovenstaande stappen en controles krijg ik steeds meer het idee dat er "iets" niet goed staat ingesteld in de broncode van Marlin.
Maar wat ?
Kennelijk gaat er iets mis bij het bewegen richting de home-position. Op het scherm is de toe/afname te zien..
Het geeft mij het idee dat er een variable is, die toe kan nemen, maar niet meer kan afnemen. Of beter gezegd, er wordt in dat geval vergeten om de motor ook nog even aan te sturen met step-pulsen. Of misschien is er een probleem in de Atmega1284P.

Vandaar mijn vraag of iemand dit probleem herkend of meegemaakt heeft en kan aangeven wat de oorzaak is. Ik ben op een dood punt aangekomen en loop vast op een merkwaardig raadsel.

P.S.1. Met het 0-punt bedoel ik de "home-position" van een as.
P.S.2. Ik maak gebruik van Arduino 1.8.5 en Marlin 1.1.9.
P.S.3. Ik weet het, bovenstaande is een heel epistel. De bedoeling is om te laten zien waar ik allemaal aan gedacht / gecontroleerd heb om dingen uit te sluiten.

Van elk bezoek aan CO leer ik weer meer...

Ik voor mij zou het anders gedaan hebben. Zou een standaard 32-bits board gekocht hebben en TB6600/TB6650 controllers ( Aliexpress ). Deze controllers zou ik dan aangesloten hebben op dat 32-bits board zonder die stepsticks.
De besturing van mijn cnc machine heb ik op die manier geregeld. Je gaat dan uit van bestaande bewezen technieken.

bprosman

Golden Member

Op 5 maart 2021 11:25:53 schreef vincent1971:
Ik voor mij zou het anders gedaan hebben. Zou een standaard 32-bits board gekocht hebben en TB6600/TB6650 controllers ( Aliexpress ). Deze controllers zou ik dan aangesloten hebben op dat 32-bits board zonder die stepsticks.
De besturing van mijn cnc machine heb ik op die manier geregeld. Je gaat dan uit van bestaande bewezen technieken.

In mijn Proxxon MF70 CNC gebruik ik ook TB6600/6650 controllers maar wel met enige aanpassingen. Deze controllers zijn vrij gevoelig voor de volgorde van aanbieden van de voedingsspanning, alsook de wazige schakeling die de stroom zou moeten begrenzen , met de LS123, en de opto's. Met de originele schakeling miste ik stappen.

TB6560 Board original.pdf

TB6560 Board MODIFIED.pdf

TB6560 Datasheet.pdf

Voor het aanbieden van de voedingsspanning heb ik een PIC timertje gebruikt wat eerst de +5V inschakelt, dan de +24V en bij uitschakelen net andersom.

De jongere generatie loopt veel te vaak zijn PIC achterna.

Op 5 maart 2021 11:25:53 schreef vincent1971:
De besturing van mijn cnc machine heb ik op die manier geregeld. Je gaat dan uit van bestaande bewezen technieken.

Ik zou voor een CNC-machine helemaal niet gaan voor een samengestelde zelfbouw. Je moet dan eerst kijken wat je allemaal nodig hebt en wat er allemaal beschikbaar is. Vaak kom je dan al terecht op sites als AliExpress, met soms onbetrouwbare leveranciers of onderdelen die boven hun specs worden aangeboden. Heb je bijvoorbeeld een te lichte motor besteld, beweegt je machine weer niet lekker. En dan vergeet ik nog te melden dat je met die onzekere levertijden zit. Hier op CO zijn diverse ervaringen gedeeld over de levertijden vanuit China enzo. Voordat je uiteindelijk alle onderdelen in huis hebt, ben je al weer weken verder. Heb je iets verkeerds besteld, begint de hele riedel weer opnieuw. Nee, het is veel beter om dan al meteen een kant-en-klare oplossing te kopen. Zo zijn er mooie CNC-machientjes die je a la IKEA kunt bouwen. Alles is op elkaar afgestemd en je krijgt het als een compleet pakket geleverd.

Ik zou dan gaan voor een machine als een :

- Mcwdoit CNC 3018 Pro Router, of
- SainSmart Genmitsu CNC Router Machine 3018, of
- CNC Carve King MillRight

Informatie over de bovenstaande 3 machines kwam ik tegen op de site van the edgecutter. En er zijn tot mijn verrassing nog best wel veel CNC-machines die interessant zijn. Je kunt dit soort machines beter kant-en-klaar kopen. Dan zit je niet met allerlei geregel achteraf.

Op 5 maart 2021 11:58:06 schreef bprosman:
Deze controllers zijn vrij gevoelig voor de volgorde van aanbieden van de voedingsspanning, alsook de wazige schakeling die de stroom zou moeten begrenzen, met de LS123, en de opto's.

Ik gebruik de TB6600 al jaren zonder problemen. In het verleden heb ik een driver-board ontwikkeld voor de KT40 lasercutter, die ik nu ook nog steeds gebruik. Ik ben nog nooit tegen problemen aangelopen met de TB6600. Sterker nog, de "stepstick TB6600" die ik voor deze 3D-printer heb ontworpen, kan ik zo vanuit de socket trekken en in een andere socket terugduwen, terwijl er spanning staat op de controllerboard. En het blijft probleemloos werken (alleen getest als er geen stuursignalen worden verzonden). Het is ook de reden waarom ik zo graag met de TB6600 werk.

Wat ik met bovenstaande wil aangeven is dat CO'ers hier elk op hun eigen wijze plezier beleven aan het repareren of bouwen van een apparaat. De een voelt er meer voor om losse onderdelen te bestellen en samen te stellen / knopen tot een geheel. De ander gaat een stapje dieper en ontwikkelt iets van de bottom-up. Ieder beleefd zo zijn plezier aan deze hobby.

Terugkerend,.. ik zoek naar ervaringen / adviezen / tips over wat de reden kan zijn van het probleem waar ik tegen aan loop. Ik heb steeds meer het idee dat er in Marlin een bepaalde instelling verantwoordelijk is voor het gemelde probleem. Op de achtergrond ben ik nog steeds druk bezig om het zelf op te sporen. En ik zou het enorm kunnen waarderen, indien iemand me zo 1,2,3 kan aanwijzen wat het probleem veroorzaakt en waar ik het moet zoeken.

-=[ EDIT ]=-
Uit voorzorg heb ik nu 2 bestanden toegevoegd, waarin diverse instellingen staan voor Marlin, die ik gebruik. Daar waar ik waarden heb veranderd, is commentaar bij geplaatst.

Van elk bezoek aan CO leer ik weer meer...
Lambiek

Special Member

Op 5 maart 2021 16:13:21 schreef oxurane:
En ik zou het enorm kunnen waarderen, indien iemand me zo 1,2,3 kan aanwijzen wat het probleem veroorzaakt en waar ik het moet zoeken.

Je zegt dat de Z-as wel één kant goed op loopt, maar naar de andere kant niet. Heb je het DIR signaal al gecontroleerd met de scoop?

Als je haar maar goed zit, GROETEN LAMBIEK.

Op 5 maart 2021 17:34:26 schreef Lambiek:
[...]
Je zegt dat de Z-as wel één kant goed op loopt, maar naar de andere kant niet. Heb je het DIR signaal al gecontroleerd met de scoop?

Jazeker, dat is wat ik met de multimeter ook heb gecontroleerd. Bij verder meten kwam ik er achter dat het bij het genereren van de step-pulsen juist fout gaat, maar alleen voor bewegingen over de Z-as.

Situatie A)
- Van de home-position af : pulsen zichtbaar en motor draait (rechtsom)
- Terug richting home-position : geen pulsen en motor draait niet

Vervolgens dus de draairichting van de motor veranderd in de broncode.

Situatie B)
Exact hetzelfde gedrag zichtbaar. Ik zie dat de DIR-signaal precies omgekeerd is van situatie A) en de resultaten zijn het volgende.
- Van de home-position af : pulsen zichtbaar en motor draait (linksom)
- Terug richting home-position : geen pulsen en motor draait niet.

Dus, alleen een beweging richting de home-position gaat fout. Van de home-position af, werkt wel. Het gekke is dat in het scherm keurig netjes de positie wordt bijgehouden. Het is alleen dat de motor niet draait, richting de home-position.

Van elk bezoek aan CO leer ik weer meer...
Lambiek

Special Member

Op 5 maart 2021 18:02:31 schreef oxurane:
Situatie A)
- Van de home-position af : pulsen zichtbaar en motor draait (rechtsom)
- Terug richting home-position : geen pulsen en motor draait niet........

Dan zou je toch haast zeggen dat er in de software iets fout gaat.

Als je haar maar goed zit, GROETEN LAMBIEK.

Op 5 maart 2021 18:16:23 schreef Lambiek:
[...]
Dan zou je toch haast zeggen dat er in de software iets fout gaat.

Na veel testen en meten heb ik ook sterk die indruk gekregen. Alleen, ik weet niet waar in de broncode een of meerdere variaben staan die dit kunnen veroorzaken.

-=[ EDIT ]=-
Zoals gemeld, ik vermoed een probleem in de broncode van Marlin. Vandaar dat ik nu ook een oproep heb geplaatst op reprap.org. Leek me wel zo netjes om het hier te melden.

Van elk bezoek aan CO leer ik weer meer...

Maar het is niet zomaar "een probleem in de broncode van Marlin". Er zijn letterlijk miljoenen 3D printers die deze code draaien en een Z-as hebben die op die manier aangestuurd wordt.

Als je WEL pulsjes ziet bij "UP" en geen bij "DOWN" maar dat het DIR signaal wel veranderd is het enige wat ik kan bedenken dat er opstellingen zijn waarbij puljes op signaal XX gegeven moeten worden worden voor "UP" terwijl de pulsjes voor "DOWN" op een ander pootje YY moeten. Kijk eens in je marlin config of je zoiets kan vinden bij de configuratie van de Z as?

four NANDS do make a NOR . Kijk ook eens in onze shop: http://www.bitwizard.nl/shop/

Op 6 maart 2021 08:37:27 schreef rew:
Er zijn letterlijk miljoenen 3D printers...

Je hebt inderdaad gelijk dat het door heel veel mensen wordt gebruikt en robuust zou moeten werken. Van de andere kant, ik heb het idee dat het gros gebruik maakt van stepsticks met daarop een A4988 of Trinamic-drivers. Een TB6600 zal volgens mij beduidend minder vaak ingezet worden.

Als je WEL pulsjes ziet bij "UP" en geen bij "DOWN"....

Bedankt voor deze opmerking voor wat betreft een dubbele pin-aansturing. Aan deze optie had ik nooit gedacht en misschien zit zoiets ingebakken voor een TB6600. Dat dit niet wordt toegepast voor de X en Y-as en juist wel voor een Z-as. Ik ga nog een keer door beide configuratie-bestanden speuren of iets dergelijks te ontdekken is.

Van elk bezoek aan CO leer ik weer meer...

Op 6 maart 2021 16:44:40 schreef oxurane:
Een TB6600 zal volgens mij beduidend minder vaak ingezet worden.

Een TB6600 wordt gewoon identiek aangestuurd als de A4988 of DRV8825 stepsticks.

four NANDS do make a NOR . Kijk ook eens in onze shop: http://www.bitwizard.nl/shop/

Op 6 maart 2021 18:42:57 schreef rew:
[...]Een TB6600 wordt gewoon identiek aangestuurd als de A4988 of DRV8825 stepsticks.

Bijna identiek : de enable pin werkt precies andersom.
Ik heb als extra test het ook laten aansturen als een A4988 (waarbij ik de pinnen inverteer voor de Enable-pin). Lijkt ook gewoon te werken,... met uitzondering van de Z-as. Hetzelfde probleem blijft.

Uit voorzorg heb ik nu ook een stukje broncode in Bascom geschreven om de Z-as motor te kunnen testen. Even de enable pinnen testen (door aan de motor te draaien).
Vervolgens de motor een hele slag linksom en rechtsom laten draaien met de LED als begeleidende indicator. En het werkt prima want de motor voert alles netjes uit

Het is voor mij een extra bevestiging dat het in de Marlin-code zit.

[Bericht gewijzigd door oxurane op 6 maart 2021 20:11:57 (14%)]

Van elk bezoek aan CO leer ik weer meer...

Als hij DENKT dat ie op de minimale positie zit, dan weigert ie verder naar de "min" positie te gaan. Blijft je eindschakelaar soms hangen? Zit die op de juiste pin geconfigureerd?

four NANDS do make a NOR . Kijk ook eens in onze shop: http://www.bitwizard.nl/shop/

Rew, zo ver ben ik nog niet eens, dat er limit-sensoren op aangesloten zijn. Dit is puur de controller-board + displayboard en dan 1 stepperdriver + 1 motor erop aangesloten.

https://www.uploadarchief.net/files/download/te_001.jpg

Vervolgens 12 V erop aansluiten en dan in het menu :
Voorbereiden -> As verplaatsen -> Verplaats Z -> Verplaats 1mm.
Daarna stel ik de nieuwe positie in op bijv. 14 mm : motor draait
Daarna stel ik de nieuwe positie in op bijv. 7 mm : niets

Stel ik de positie vervolgens weer op een hogere waarde in, bijv. 10 mm : motor draait.
Daarna weer naar een lagere waarde : motor draait niet.

Opm : Het display is aangesloten met een speciaal gemaakt "converter-kabeltje". Dat werkt prima.

-=[ Edit ]=-
Na zo vaak te hebben gestoeid, merk ik dat er een verschil is in het main-menu tijdens de start, en nadat ik de mislukte positiewisselingen heb uitgevoerd.

[Scherm tijdens opstarten]
https://www.uploadarchief.net/files/download/main_001.jpg

[Scherm na mislukt spelen met X-posities]
https://www.uploadarchief.net/files/download/main_002.jpg

Zou dit een hint kunnen zijn ?

Van elk bezoek aan CO leer ik weer meer...

De melding op het scherm was inderdaad een goede hint. Er is voor de start domweg een sensor nodig / vereist. Ik heb een drukknopje als "sensor" gebruikt. Bij start domweg indrukken, en zodra de motor begint te draaien (van home-position), meteen losgelaten. Vervolgens kon ik daarna vrij een nieuwe positie instellen en de motor liep vanaf dat moment ook weer terug richting home-position.

Dit probleem is opgelost (wellicht dat er nog andere boven komen drijven) Man, wat een opluchting, en rew en Lambiek : bedankt voor het meedenken

Van elk bezoek aan CO leer ik weer meer...