Ombouw naar LinuxCNC

LinuxCNC kan hier besproken worden

Moderator: Moderators

Gebruikersavatar
andrefc101
Donateur
Berichten: 2672
Lid geworden op: 26 dec 2007 08:39
Locatie: Bergen op Zoom
Contacteer:

Re: Ombouw naar LinuxCNC

Bericht door andrefc101 » 26 jul 2020 20:41

serum schreef:
26 jul 2020 20:32
EMC klinkt bekend. Zo heette LinuxCNC in de tijd dat de vissen nog over het land liepen.
😂

Tolp2
Donateur
Berichten: 209
Lid geworden op: 28 nov 2015 10:06
Locatie: Rotterdam
Contacteer:

Re: Ombouw naar LinuxCNC

Bericht door Tolp2 » 28 jul 2020 09:09

Gisteren gelukt om beweging in de machine te krijgen. Had wel wat voeten in de aarde:
  • 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 :roll: . 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.
Jammer genoeg heeft bovenstaande bijna 3 uur gekost om allemaal uit te vinden, dus nog geen tijd gehad om de home-switches uit te proberen.

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.
serum schreef:
26 jul 2020 20:32
EMC klinkt bekend. Zo heette LinuxCNC in de tijd dat de vissen nog over het land liepen. (post Raider tijdperk)
Doe mij maar een Twix :mrgreen: . 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...

Kjelt
Donateur
Berichten: 3141
Lid geworden op: 14 jun 2007 21:51
Locatie: Eindhoven

Re: Ombouw naar LinuxCNC

Bericht door Kjelt » 28 jul 2020 09:48

Tolp2 schreef:
28 jul 2020 09:09
de BOB heeft een externe 5V voeding nodig om de signalen vanuit de LPT poort goed te verwerken.
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/
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 +?
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).

Gebruikersavatar
Sven
Berichten: 4701
Lid geworden op: 24 sep 2008 09:13
Locatie: Arnhem
Contacteer:

Re: Ombouw naar LinuxCNC

Bericht door Sven » 28 jul 2020 10:50

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! :)
350 kilo aluminium, wat boutjes en moertjes en een beetje plaksel:
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

Tolp2
Donateur
Berichten: 209
Lid geworden op: 28 nov 2015 10:06
Locatie: Rotterdam
Contacteer:

Re: Ombouw naar LinuxCNC

Bericht door Tolp2 » 28 jul 2020 12:14

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).
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.
Sven schreef:
28 jul 2020 10:50
Mijn pc zit ook in de kast, dus de 5 volt ook.
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...

Gebruikersavatar
hugo stoutjesdijk
Donateur
Berichten: 8402
Lid geworden op: 02 mar 2011 17:04
Locatie: elst (u)
Contacteer:

Re: Ombouw naar LinuxCNC

Bericht door hugo stoutjesdijk » 28 jul 2020 12:22

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.

Kjelt
Donateur
Berichten: 3141
Lid geworden op: 14 jun 2007 21:51
Locatie: Eindhoven

Re: Ombouw naar LinuxCNC

Bericht door Kjelt » 28 jul 2020 12:32

Tolp2 schreef:
28 jul 2020 12:14
Voorlopig even met een 7805 oplossen.
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%.

Gebruikersavatar
DaBit
Donateur
Berichten: 9201
Lid geworden op: 05 dec 2012 13:48
Locatie: Oss

Re: Ombouw naar LinuxCNC

Bericht door DaBit » 28 jul 2020 16:41

serum schreef:
26 jul 2020 20:32
EMC klinkt bekend. Zo heette LinuxCNC in de tijd dat de vissen nog over het land liepen. (post Raider tijdperk)
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.

Gebruikersavatar
Sven
Berichten: 4701
Lid geworden op: 24 sep 2008 09:13
Locatie: Arnhem
Contacteer:

Re: Ombouw naar LinuxCNC

Bericht door Sven » 28 jul 2020 18:20

DaBit schreef:
28 jul 2020 16:41
patentrechten
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 aluminium, wat boutjes en moertjes en een beetje plaksel:
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

Tolp2
Donateur
Berichten: 209
Lid geworden op: 28 nov 2015 10:06
Locatie: Rotterdam
Contacteer:

Re: Ombouw naar LinuxCNC

Bericht door Tolp2 » 28 jul 2020 22:43

Kjelt schreef:
28 jul 2020 09:48
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 +?
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).
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!)

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...

Tolp2
Donateur
Berichten: 209
Lid geworden op: 28 nov 2015 10:06
Locatie: Rotterdam
Contacteer:

Re: Ombouw naar LinuxCNC

Bericht door Tolp2 » 29 jul 2020 22:38

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 :mrgreen: .
Assumptions are the mother of all $%^& ups.
Twee keer meten is zeker weten, als je weet wat je meet...

Tolp2
Donateur
Berichten: 209
Lid geworden op: 28 nov 2015 10:06
Locatie: Rotterdam
Contacteer:

Re: Ombouw naar LinuxCNC - assen werken

Bericht door Tolp2 » 02 aug 2020 22:37

Alle assen draaien en kunnen worden gehomed 8) .

De drivers zijn aan de BOB verbonden met een oud stukje modem en UTP-kabels.

Gallerij Link

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.

Gallerij Link

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...

diepchess
Berichten: 1157
Lid geworden op: 02 jul 2013 11:02
Locatie: Veenendaal
Contacteer:

Re: Ombouw naar LinuxCNC

Bericht door diepchess » 03 aug 2020 14:24

DaBit schreef:
25 jul 2020 23:08
Tolp2 schreef:
25 jul 2020 22:39
Volgens mij gaat het goed met de kernel die draait hierbij het resultaat (alhoewel ik wel een hele oude versie van Linux draai als ik het zo zie:
Ja, 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.
Oud is goed bij linux. De 3.x kernels lijken zelfs voor de consultants makkelijk te hacken als ik kijk wat er hier gebeurt.
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!

Gebruikersavatar
DaBit
Donateur
Berichten: 9201
Lid geworden op: 05 dec 2012 13:48
Locatie: Oss

Re: Ombouw naar LinuxCNC

Bericht door DaBit » 03 aug 2020 15:26

diepchess schreef:
03 aug 2020 14:24
Ouder is gewoon beter!
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 :roll:

Plaats reactie