Ombouw naar LinuxCNC
Moderator: Moderators
- andrefc101
- Donateur
- Berichten: 3724
- Lid geworden op: 26 dec 2007 08:39
- Locatie: Bergen op Zoom
- Contacteer:
Re: Ombouw naar LinuxCNC
Gisteren gelukt om beweging in de machine te krijgen. Had wel wat voeten in de aarde:
De maximale snelheid die ik nu haal met de combinatie van latency en de timing van de drivers is ongeveer 70 mm/s (stepconf) of wel 4200 mm/min (LinuxCNC). Volgens mij is dat snel zat voor deze machine; mijn ervaring is met een 6 mm frees op volle diepte door aluminium dat 720 mm/min een goed resultaat geeft.
- de BOB heeft een externe 5V voeding nodig om de signalen vanuit de LPT poort goed te verwerken. Ik had gedacht dat deze ergens uit de printerpoort zelf vandaan zou komen, maar dat is dus blijkbaar niet het geval. Wel weer jammer dat er dan nog weer een extra voltage / voeding in de kast noodzakelijk is (heb namelijk al 12 Volt - logica en 36 Volt - aandrijving).
- de outputs van de BOB worden geschakeld naar aarde (NPN). Had gehoopt dezelfde pinout te kunnen gebruiken als voor de Pokeys, waarmee de driver direct aangestuurd kan worden. Doordat in de BOB een pullup van 1 kOhm wordt toegepast is de voltage op de pin niet hoog genoeg om als positief te worden gezien. Dit heb ik opgelost door de geïsoleerde zijde van de BOB op 12 Volt te laten werken (geen idee of hij hier heel lang tegen kan, het wordt wat handwarm), waardoor met de waarde van 1 kOhm precies de juiste voltage krijg volgens de manual. Vraag: moet ik hier overwegen om de bedrading aan te passen zodat ik de aarde ga schakelen in plaats van de +?
- timing, timing, timing . Blijkbaar hebben mijn drives (Leadshine DM556) last van Chinese milliseconden. Moest uiteindelijke de timing zoals in de manual staat verdubbeld worden voordat er beweging in kwam.
De maximale snelheid die ik nu haal met de combinatie van latency en de timing van de drivers is ongeveer 70 mm/s (stepconf) of wel 4200 mm/min (LinuxCNC). Volgens mij is dat snel zat voor deze machine; mijn ervaring is met een 6 mm frees op volle diepte door aluminium dat 720 mm/min een goed resultaat geeft.
Doe mij maar een Twix . Het is interessant om de geschiedenis te lezen van deze software.
Assumptions are the mother of all $%^& ups.
Twee keer meten is zeker weten, als je weet wat je meet...
Twee keer meten is zeker weten, als je weet wat je meet...
Re: Ombouw naar LinuxCNC
Ik weet niet hoeveel stroom de BOB nodig heeft maar je zou er een DC-DC converter op kunnen zetten die je met de 12V voedt.
Zoiets bv
https://www.tme.eu/nl/details/oki78sr-5 ... 1-5-w36-c/
Ja. Dat stelt toch niet veel voor, de Leadshines werken met 5V. Dus gewoon 5V op de de + ingangen van de driver zetten (die hebben dan geen extra weerstand meer nodig bij 5V) en de - naar de NPN uitgang van de BOB.Tolp2 schreef: ↑28 jul 2020 09:09 [*] de outputs van de BOB worden geschakeld naar aarde (NPN). Had gehoopt dezelfde pinout te kunnen gebruiken als voor de Pokeys, waarmee de driver direct aangestuurd kan worden. Doordat in de BOB een pullup van 1 kOhm wordt toegepast is de voltage op de pin niet hoog genoeg om als positief te worden gezien. Dit heb ik opgelost door de geïsoleerde zijde van de BOB op 12 Volt te laten werken (geen idee of hij hier heel lang tegen kan,
Vraag: moet ik hier overwegen om de bedrading aan te passen zodat ik de aarde ga schakelen in plaats van de +?
Dan zou als bij-effect je timing probleem ook wel eens meteen opgelost kunnen zijn (niet zeker maar zou wel kunnen).
Re: Ombouw naar LinuxCNC
Mijn pc zit ook in de kast, dus de 5 volt ook.
Mmmm, moest een tweede keer lezen voor ik de twix door had oude man! :)
Mmmm, moest een tweede keer lezen voor ik de twix door had oude man! :)
350 kilo 1250x1250 aluminium portaalfrees:
http://cnczone.nl/viewtopic.php?f=8&t=13039
Beginnen met CNC? Ontwerpen, bouwen, of toch kopen?
http://cnczone.nl/viewtopic.php?f=8&t=15481
http://cnczone.nl/viewtopic.php?f=8&t=13039
Beginnen met CNC? Ontwerpen, bouwen, of toch kopen?
http://cnczone.nl/viewtopic.php?f=8&t=15481
Re: Ombouw naar LinuxCNC
Fouten maken we allemaal: de drives zijn niet heel goed bereikbaar in de kast. Maar interessante kanttekening ten aanzien van timing dat dat ook door de BOB kan komen. Ik ga vanavond een drive uitbouwen en de bedrading aanpassen.Kjelt schreef: ↑28 jul 2020 09:48 Ja. Dat stelt toch niet veel voor, de Leadshines werken met 5V. Dus gewoon 5V op de de + ingangen van de driver zetten (die hebben dan geen extra weerstand meer nodig bij 5V) en de - naar de NPN uitgang van de BOB. Dan zou als bij-effect je timing probleem ook wel eens meteen opgelost kunnen zijn (niet zeker maar zou wel kunnen).
Op dit moment zit de PC nog niet in de kast. Ben een beetje huiverig er voor om deze er in te bouwen in verband met temperatuur. De PC loopt erg warm en de kast is ook niet de coolste plaats. Voorlopig even met een 7805 oplossen.
Bedankt voor de tips!
Assumptions are the mother of all $%^& ups.
Twee keer meten is zeker weten, als je weet wat je meet...
Twee keer meten is zeker weten, als je weet wat je meet...
- hugo stoutjesdijk
- Donateur
- Berichten: 12045
- Lid geworden op: 02 mar 2011 17:04
- Locatie: elst (u)
- Contacteer:
Re: Ombouw naar LinuxCNC
Heeft die BOB geen usb ingang voor de 5v (vanuit de PC)?
Ik ben voor meer techniek op school, maar dan wel vanaf groep 1 basischool.
Re: Ombouw naar LinuxCNC
Neem dan zo'n switchmode geval, net zo goed , net zo klein en door zijn efficientie van 80% of hoger wordt die ook niet warm.
Als je BOB bv 400mA slurpt en je zet de 7805 op 12V in dan verstook je 7*.4=2.8W in warmte terwijl je 2W gebruikt, efficientie van 42%.
Re: Ombouw naar LinuxCNC
Na EMC (Enhanced MAchine Controller) kwam EMC2. Totdat iemand begon te klagen dat ze patentrechten hadden op die naam en er een blik advocaten opengetrokken werd. Toen is de boel omgedoopt naar LinuxCNC om dat te voorkomen.
Enhanced Machine Controller vind ik nog steeds een naam die de lading beter dekt.
De belangrijkste wet in de wetenschap: 'hoe minder efficient en hoe meer herrie, hoe leuker het is'
Re: Ombouw naar LinuxCNC
Ze claimden merkrecht maar voorzover ik weet was emc linuxcnc er een stuk eerder dan de storage provider. Maar die laatste had zo veel advocaten ter beschikking... En een groepje linux enthousiastelingen niet.
350 kilo 1250x1250 aluminium portaalfrees:
http://cnczone.nl/viewtopic.php?f=8&t=13039
Beginnen met CNC? Ontwerpen, bouwen, of toch kopen?
http://cnczone.nl/viewtopic.php?f=8&t=15481
http://cnczone.nl/viewtopic.php?f=8&t=13039
Beginnen met CNC? Ontwerpen, bouwen, of toch kopen?
http://cnczone.nl/viewtopic.php?f=8&t=15481
Re: Ombouw naar LinuxCNC
Ik heb de bekabeling aangepast en direct gestuurd. Het werkte wel direct, maar helaas geen verbetering in de timing. In de machine zitten verschillende drivers, maar allemaal vertonen ze hetzelfde gedrag. Bij 5000 ns pulse-timing nokken ze er mee, bij 6000 gaat het goed. Ik begin er bijna het BOB van te verdenken dat deze niet sneller kan schakelen. De maximale snelheid is 1.700 mm/min. Nog eens overwegen of een hogere snelheid het halveren van de micro-stepping waard is... (advies welkom!)Kjelt schreef: ↑28 jul 2020 09:48Ja. Dat stelt toch niet veel voor, de Leadshines werken met 5V. Dus gewoon 5V op de de + ingangen van de driver zetten (die hebben dan geen extra weerstand meer nodig bij 5V) en de - naar de NPN uitgang van de BOB.Tolp2 schreef: ↑28 jul 2020 09:09 [*] de outputs van de BOB worden geschakeld naar aarde (NPN). Had gehoopt dezelfde pinout te kunnen gebruiken als voor de Pokeys, waarmee de driver direct aangestuurd kan worden. Doordat in de BOB een pullup van 1 kOhm wordt toegepast is de voltage op de pin niet hoog genoeg om als positief te worden gezien. Dit heb ik opgelost door de geïsoleerde zijde van de BOB op 12 Volt te laten werken (geen idee of hij hier heel lang tegen kan,
Vraag: moet ik hier overwegen om de bedrading aan te passen zodat ik de aarde ga schakelen in plaats van de +?
Dan zou als bij-effect je timing probleem ook wel eens meteen opgelost kunnen zijn (niet zeker maar zou wel kunnen).
Om de bedrading makkelijk te kunnen maken, is de oude router gesneuveld. Daar zat een mooi blokje van vier RJ48-connectoren op. Met een metaalzaag deze bevrijdt van het overleden deel en vervolgens met wat draadjes voorzien van stroom en signaal. Kwestie van een oude netwerk-kabel doorknippen en aan de drives knopen. De ander kant is dan plug-and-play. Straks nog voor de BOB een mooi 3D geprint kastje maken voor de mooi.
Morgen de homing switch er aan knopen om te kijken wat dat brengt...
Assumptions are the mother of all $%^& ups.
Twee keer meten is zeker weten, als je weet wat je meet...
Twee keer meten is zeker weten, als je weet wat je meet...
Re: Ombouw naar LinuxCNC
Aansluiten home sensor was een fluitje van een cent. De sensor zit aan de 'hoge' kant (y=400) dus homede de verkeerde kant op initieel. Even de HOME_SEARCH_VEL en HOME_LATCH_VEL aangepast naar een negatieve waarde en het werkte als een zonnetje. Volgende uitdaging: de X-as aan de praat krijgen met dubbele motor er op.
Ik ga Mach alleen nog in de badkamer gebruiken. Heeft ook een mooie integratie met Fusion daar .
Ik ga Mach alleen nog in de badkamer gebruiken. Heeft ook een mooie integratie met Fusion daar .
Assumptions are the mother of all $%^& ups.
Twee keer meten is zeker weten, als je weet wat je meet...
Twee keer meten is zeker weten, als je weet wat je meet...
Re: Ombouw naar LinuxCNC - assen werken
Alle assen draaien en kunnen worden gehomed .
De drivers zijn aan de BOB verbonden met een oud stukje modem en UTP-kabels.
De home-switches zijn verbonden met afgeschermde kabels met een DB9 connector er aan. Ze werken op 12 Volt of hoger (hoe hoger hoe beter ze de boel detecteren heb ik het gevoel). Nadeel van deze switches is dat er op de uitgang dus 12 Volt komt te staan vanwege een interne pull-up weerstand. Voor de PoKeys betekent dit rook er uit, voor dit boord niet vanwege de opto-couplers die er op zitten. Voorlopig laat ik de boordjes er gewoon tussen zitten, hoef ik de connectoren niet opnieuw te bedraden.
Drie home-switches zijn parallel geschakeld. De vierde home switch is apart geschakeld en wordt gebruikt om het portaal recht te zetten. Dit is alleen mogelijk in LinuxCNC 2.8 en later!
Ik zal later de .ini en .hal files toevoegen. Hierin heb ik voor de X-as twee joints aangemaakt. Helaas betekent dit wel dat ik stepconf vaarwel heb moeten zeggen, want die kan deze setup niet aan.
De drivers zijn aan de BOB verbonden met een oud stukje modem en UTP-kabels.
De home-switches zijn verbonden met afgeschermde kabels met een DB9 connector er aan. Ze werken op 12 Volt of hoger (hoe hoger hoe beter ze de boel detecteren heb ik het gevoel). Nadeel van deze switches is dat er op de uitgang dus 12 Volt komt te staan vanwege een interne pull-up weerstand. Voor de PoKeys betekent dit rook er uit, voor dit boord niet vanwege de opto-couplers die er op zitten. Voorlopig laat ik de boordjes er gewoon tussen zitten, hoef ik de connectoren niet opnieuw te bedraden.
Drie home-switches zijn parallel geschakeld. De vierde home switch is apart geschakeld en wordt gebruikt om het portaal recht te zetten. Dit is alleen mogelijk in LinuxCNC 2.8 en later!
Ik zal later de .ini en .hal files toevoegen. Hierin heb ik voor de X-as twee joints aangemaakt. Helaas betekent dit wel dat ik stepconf vaarwel heb moeten zeggen, want die kan deze setup niet aan.
Assumptions are the mother of all $%^& ups.
Twee keer meten is zeker weten, als je weet wat je meet...
Twee keer meten is zeker weten, als je weet wat je meet...
Re: Ombouw naar LinuxCNC
Oud is goed bij linux. De 3.x kernels lijken zelfs voor de consultants makkelijk te hacken als ik kijk wat er hier gebeurt.DaBit schreef: ↑25 jul 2020 23:08Ja, klopt. Zo mondjesmaat komen er nog RTAI-kernels beschikbaar, maar het houd allemaal niet over. Vandaar die vreselijk oude Debian.
Pak je Mesa hardware (of wat anders) dan voldoet PREEMPT-RT, en dan kun je wel recenter spul draaien.
Voor de verdere rest: als je een beetje doorhebt hoe het in elkaar steekt valt dat LinuxCNC met z'n HAL best mee.
Van virtualisatie is helaas geen sprake bij linux noch windows. Dus dat betekent dat elke driver je kan vernaggelen in linux.
Tegenwoordig zitten er ook veel Zuid-Amerikanen en zelfs Cubanen die hun neus steken in 'ontwikkeling' van drivers en linux kernel software. Naast de gebruikelijke universiteit Moskou die overal opduikt waar wat te halen valt (die vooral actief is op filesystems en verder zijn ze alleen actief waar geld te halen valt dus dat zegt iets over de file systems).
Standaard is het zo dat threads/processes (in theorie geen verschil in praktijk wel) die in de runqueue staan in de kernel, dat die dus realtime access hebben tot alles onder de voorwaarde dat het proces of the thread maar actief gescheduled blijft worden. In zo'n geval biedt de realtime kernel weinig voordelen. Elke vorm van i/o wordt hard gelocked in de kernel als ware het linux systeem een enkel core systeem. In principe zou het mogelijk moeten zijn om dat om te pennen, met papieren bewijs dat het goed werkt naar iets waarvan je dus hard kunt bewijzen dat er geen parallelle bugs optreden. Tenslotte is dat het grote verschil tussen de realtime kernel en de normale kernel. De statistische kans is bij de realtime kernel kleiner dat iets langer gelocked wordt dan nodig. Maar in principe is het helemaal niet nodig om de i/o (systeembreed) te locken. Waarbij i/o feitelijk gesproken elke output en input via een port is. Dus elke port wordt hard ge spin_lock() - ed. Met de blik op de toekomst en de zwik nietsnutten die is toegevoegd aan allerlei vormen van linux kernel ontwikkeling, wat maar opgenomen wordt in de nieuwere kernels en de keiharde weigering van Linus om iets aan het securityprobleem te doen (dus dat elke driver die op 1 of andere manier actief wordt alle informatie uit je systeem kan roven, al is het maar een USB stick die zichzelf meldt) maakt de spaghetti steeds groter. Dan kun je verder nog via de shared memory makkelijk root informatie vinden in linux (lezen is dus simpel, schrijven wel lastig). Daar heb ik in die SMP kernel list al rond 1999 over zitten posten dat me dat lukte - wat bobo's waren er niet happy mee dat het kon - maar zeiden allemaal : "ich habe es nicht gewusst en het ligt boven mijn macht om er iets aan te doen" - maar in de afgelopen 21 jaar is er gewoon hard niks veranderd daar terwijl er wel hele leien volgepend zijn sindsdien aan allerlei device drivers die zogenaamd maar geladen moeten worden in de nieuwere kernels want dat komt weer 1 of ander consultant in een 3e wereldland goed uit, die daar kennelijk aan verdient.
Ouder is gewoon beter!
Re: Ombouw naar LinuxCNC
Voor een normale gebruiker is oud gewoon r*k.
Da's leuk tot je een enigzins moderne touchscreenmonitor koopt, een niet vreselijk bejaarde Wifi-adapter gebruikt, op je reguliere Linux werkstation een GladeVCP paneeltje wil bouwen voor je toolchanger, etcetera. Dan kom je erachter dat niks enigzins moderns meer wil werken.
Ben je erg into Linux dan lukt het allemaal wel om de juiste zaken vanaf source te compileren en uit backport-repositories te trekken. Ben je gewoon een gebruiker dan heb je pech.
Geen idee hoe 'moderne-distro-bestendig' LinuxCNC tegenwoordig is; op mijn apparatuur draait het eigenlijk ook al eeuwen zonder updates. Maar ik vrees met grote vrezen dat die situatie niet verbeterd is; zelfs de Debian 9.0 (Stretch)-gebaseerde distro is nog steeds 'testing' terwijl Stretch afgelopen 6 juli end-of-life gegaan is
De belangrijkste wet in de wetenschap: 'hoe minder efficient en hoe meer herrie, hoe leuker het is'