#linuxcnc Logs
Mar 13 2023
#linuxcnc Calendar
03:57 PM CaptHindsight[m]: I like the mobile mill cart
04:23 PM roguish[m]1: roycroft: if you get PM machine. be sure it's a taiwan made, not chinese made... very important. chinese are junk.
04:28 PM roguish[m]1: I have a chinese made PM mill. and i can swear that I would never buy one again.....
04:28 PM roguish[m]1: I speak from experience
04:30 PM roycroft: a chinese made pm mill would be pretty much equivalent to a grizzly
04:30 PM roycroft: which means one pays a lot more to get robins-egg blue instead of grizzly green
04:31 PM roguish[m]1: well, I can't speak in regard to the grizzly.
04:33 PM roguish[m]1: roycroft: hey, for kitchen cabinets, what thickness plywood? 1/2 or 3/4
04:33 PM travis_farmer[m]: 3/4
04:37 PM roycroft: 23/32
04:37 PM roguish[m]1: isn't that sorta the real thickness for 3/4?
04:37 PM roycroft: yes
04:38 PM roycroft: you can get 3/4" plywood, but it will cost you 3-5x as much as 23/32
04:38 PM Loetmichel: over here in germany they are usually 18mm thick particle board
04:39 PM travis_farmer[m]: i like cabinet-grade birch ply, but if they are being painted shop-grade birch will work.
04:39 PM roycroft: i used melamine for those hardware cabinets in my shop
04:40 PM roycroft: and that will be fine
04:40 PM roycroft: but i would not use it in a kitchen
04:40 PM roycroft: it would be a disaster there
04:40 PM roycroft: it would swell up like our former president's ego as soon as it got wet
04:41 PM roguish[m]1: i'm thinking good prefinished ply. it's about $150 a sheet nowdays.
04:41 PM roycroft: find out how it's finished
04:42 PM roycroft: if it's a catalyzed laquer or polyurethane you won't be able to repair the finish
04:42 PM roguish[m]1: ok, good point
04:42 PM roycroft: it will be very durable starting out, but if you scratch it or put a ding in it you won't be able to repair it
04:43 PM travis_farmer[m]: a lot of people are going solid-color paint now. i prefer the look of the wood :-)
04:44 PM roycroft: it all depends on the rest of the decor
04:44 PM travis_farmer[m]: true...
04:45 PM roguish[m]1: depends on the WAF
04:48 PM roycroft: i like milk paint on a lot of things
04:48 PM roguish[m]1: roycroft: here ya go. this is the end of my PM mill table where the lead screw bearing fastens to. does it look symetric to you???
04:49 PM * roguish[m]1 uploaded an image: (3535KiB) < https://libera.ems.host/_matrix/media/v3/download/matrix.org/rypnQRqNUVtIbjFexdqfSUpu/20210124_115430.jpg >
04:49 PM roycroft: it looks like edibles have arrived in mainland china
04:50 PM roguish[m]1: it's repleat with stuff like that
05:14 PM roycroft: provisioning phones can be tiresome
05:15 PM roycroft: i wish the user interface were better
05:23 PM skunkworks[m]: I do my best work on edibles..
05:24 PM roycroft: and now that i'm complaining about provisioning phones, i'm going to get custom ringtones working on my phone system
05:24 PM roycroft: something i've tried a few times over the years to do, but never spent the time totally debugging the proces
05:24 PM roycroft: i've spent the entire day today working on the phone system, so what's a few more hours? :)
05:45 PM * JT[m] uploaded an image: (300KiB) < https://libera.ems.host/_matrix/media/v3/download/matrix.org/GkmXEjyphfxRtOKrCfLOvDYy/20230313_174405.jpg >
05:54 PM Tom_L: getting there
05:56 PM JT[m]: Had to remake the thing above the tape, didn't make it long enough
05:57 PM Tom_L: is that all the rings cut now?
06:01 PM Tom_L: will that ring fit on the lathe? i assume you took that into account
06:03 PM JT[m]: Biggest ring is 11", lathe is 14"
06:03 PM boostedcabbage[m: that's going to be a cool piece
06:03 PM Tom_L: can't always tell from a pic
06:04 PM * JT[m] uploaded an image: (232KiB) < https://libera.ems.host/_matrix/media/v3/download/matrix.org/UiTpYAJvDwAFEignlUMwWhTm/20230313_180312_3514682676707383166.jpg >
06:04 PM JT[m]: Thanks
06:05 PM * JT[m] uploaded an image: (276KiB) < https://libera.ems.host/_matrix/media/v3/download/matrix.org/URCTogsowZgZLbWOcEhxnILc/20230313_180431_7929362945093727011.jpg >
06:06 PM JT[m]: I'm hoping it looks like a bowl before I leave for the wedding
06:07 PM * JT[m] uploaded an image: (386KiB) < https://libera.ems.host/_matrix/media/v3/download/matrix.org/WBXsTnkDJJwkeTTjHlhCvHte/20230313_180616_7327722768907848313.jpg >
06:08 PM XXCoder: I bet it'll be dizzying when spinning
06:09 PM JT[m]: Tom_L finally got the LAN to work, going to reinstall Debian 11 in the morning on the Dev pc
06:09 PM JT[m]: Actually it's a blur
06:10 PM XXCoder: lol yea high speed I meant lower
06:10 PM JT[m]: I like the colors better on this one, wife arranged them
06:10 PM JT[m]: Only 22 rings to glue together lol
06:14 PM roycroft: i haven't had a chance to try my new lathe tools yet
06:14 PM roycroft: that is something i should do soon
06:21 PM -!- #linuxcnc mode set to +v by ChanServ
06:52 PM roycroft: i have one more phone to provision, and i think i'll do that tomorrow
06:53 PM roycroft: maybe this is a good time to pull out the wood lathe and make some squarish things roundish
06:54 PM JT-Shop: a favorite mash episode the koren artist shows frank a 2x4 and frank says it looks like a 2x4 the artist said "used to be round"
06:57 PM roycroft: frank burns eats worms
07:33 PM funkenjaeger[m]: hopefully a silly question, but can anyone confirm that external offsets apply to work coordinates and NOT to machine coordinates?
07:33 PM funkenjaeger[m]: My impression is that machine coordinates are independent of all "offsets" of any kind, but figured I'd check.
07:36 PM skunkworks[m]: as far as I know from playing with it.. they apply to the current work coordinates
07:36 PM funkenjaeger[m]: basically, I'm looking at using external offsets to map engraving toolpaths onto non-flat surfaces and I'm hoping I don't need to tamper with my M6 ATC routine (which operates in machine coordinates) to avoid unintended influence of external offsets that could result in a crash during ATC moves
07:36 PM skunkworks[m]: oh.. Uh.. good question
07:37 PM skunkworks[m]: I don't know the answer to that.
07:37 PM skunkworks[m]: umm - I would turn off external offsets while tool changing..
07:43 PM funkenjaeger[m]: in fairness, I already store and re-baseline the modal state at the start of the tool change routine so it's probably sensible to disable external offsets there also (if I haven't already)
07:46 PM funkenjaeger[m]: the one thing that had me worried is that the docs for eoffsets mention them getting reset to zero under certain conditions, which creates a risk of introducing a big error if the eoffset-counts value your component provides doesn't reset to zero concurrently. looking a little more closely, that reset seems to only apply when toggling machine off->on, and NOT when you disable and then re-enable external offsets
07:48 PM funkenjaeger[m]: which is to say, it should be perfectly safe to temporarily disable external offsets during tool changing without any special treatment to avoid things going haywire when re-enabling external offsets afterward
07:52 PM * boostedcabbage[m uploaded an image: (23KiB) < https://libera.ems.host/_matrix/media/v3/download/jauriarts.org/MUKPcUUteRNyglnDfTEPKLpo/image.png >
07:52 PM boostedcabbage[m: what would be a good way to scale the output to "delayshot" here?
07:53 PM boostedcabbage[m: delayshot is oneshot, with a delay before the pulse
07:53 PM boostedcabbage[m: for firing a triac
07:55 PM boostedcabbage[m: also, is the right net idea so far?
07:57 PM funkenjaeger[m]: http://www.linuxcnc.org/docs/html/man/man9/scale.9.html
08:21 PM boostedcabbage[m: scale will be helpful. i guess it needs to be clamped and essentially reversed too. if just speaking about the pid output compared to actual control timing
08:22 PM boostedcabbage[m: large pid output, small/zero delay
08:23 PM funkenjaeger[m]: the scale parameters are floats, I would assume you can pass in negative values
08:24 PM funkenjaeger[m]: and there's the limit1 component for clamping values to within a range: http://www.linuxcnc.org/docs/html/man/man9/limit1.9.html
08:25 PM boostedcabbage[m: nice. that'll work
08:25 PM boostedcabbage[m: still not sure about the scale yet
08:30 PM funkenjaeger[m]: offset=-0.006, gain=0.006*<max anticipated PID output> (where the max anticipated PID output would depend on how you've configured your PID component)
08:32 PM funkenjaeger[m]: s/*<//</
08:34 PM funkenjaeger[m]: that's just a SWAG and assumes your PID swings between 0 (min output) and some known max value (max output), slightly more algebra may be required for other cases
08:34 PM boostedcabbage[m: i don't have a lot of pid experience. i'll be happy to get sane inputs and outputs connected together
08:37 PM boostedcabbage[m: or linuxcnc hal experience for that matter. but we're slowing hacking away it seems
08:38 PM bjorkintosh: that's the spirit boostedcabbage[m
08:38 PM pcw-home: boostedcabbage: I would get the spindle control working well open loop before closing the loop
08:38 PM boostedcabbage[m: yeah. wrote a component yesterday. it's fun
08:38 PM bjorkintosh: in what?
08:40 PM boostedcabbage[m: pcw-home: i can fire the triac at this point by setting the delay
08:40 PM boostedcabbage[m: speed control doesn't really work open loop
08:40 PM pcw-home: It should
08:40 PM boostedcabbage[m: too much or too little power
08:41 PM boostedcabbage[m: because it's very non-linear
08:41 PM pcw-home: with PWM or phase control (voltage control) you should get decent open loop response
08:42 PM boostedcabbage[m: just by firing angle?
08:42 PM pcw-home: With phase control you might need to linearize the control (even in a loop)
08:43 PM boostedcabbage[m: maybe if i had really good resolution. but there is zero torque when barely conducting for low speed
08:43 PM pcw-home: lincurve could help here
08:44 PM pcw-home: Normally a PID loop would have FF0 as an important term
08:50 PM boostedcabbage[m: bjorkintosh: https://github.com/boostedcabbage/linuxcnc/blob/delayshot/src/hal/components/delayshot.comp
08:50 PM boostedcabbage[m: hmm
08:50 PM boostedcabbage[m: reading about lincurve
08:54 PM bjorkintosh: fun!
08:55 PM boostedcabbage[m: it's heavily derived from oneshot, but yeah
08:58 PM boostedcabbage[m: pcw-home: does this sort of map strength to time? i'm not sure i understand the application here
09:00 PM pcw-home: You could use it to compensate for the inherent non-linearity of phase control
09:01 PM boostedcabbage[m: does it still makes sense considering i have no way to turn the triac off before zc occurs?
09:02 PM pcw-home: Yes
09:02 PM boostedcabbage[m: ok. i must not be visualizing it properly
09:04 PM pcw-home: Imagine a small output (the voltage is near zero crossing so very low) a count change in the PWM is much less than a count change near the peak
09:05 PM pcw-home: = huge nonlinearity ((I meant change in delay not PWM)
09:07 PM boostedcabbage[m: so just that it'll linearize(at least make more linear) my delay with respect to power when it's deciding the delay?
09:08 PM pcw-home: so at full scale and near zero you have low gain and high gain in the middle (4.16 ms)
09:09 PM pcw-home: This is something lincurve can fix
09:09 PM boostedcabbage[m: that part makes sense now. thanks. although it did just make more questions 🙂
09:09 PM Tom_L: pcw is good at that
09:10 PM boostedcabbage[m: if it'll make pid tuning later easier, it's probably a good idea
09:10 PM pcw-home: Leave 'em confused and make your escape...
09:12 PM Tom_L: pcw-home, not many would probably use it but adding that user led thing to mesaflash sounded like a good idea
09:12 PM boostedcabbage[m: so i should map x, y = (time, gain) based on the sine?
09:12 PM boostedcabbage[m: or rather whatever makes it a straight line
09:13 PM pcw-home: Tom_L: it should be pretty easy, all the functions are there
09:13 PM Tom_L: would they map like a regular io pin then?
09:14 PM Tom_L: 7i96s.0.led1 or such
09:14 PM pcw-home: Yes, those already exist
09:14 PM Tom_L: cool
09:14 PM Tom_L: obviously i've never used it either :)
09:15 PM pcw-home: its just that the default EEPROM contents select the RXPacketCount option
09:17 PM pcw-home: I'm making a bit of progress in identifying the network latency source in newer kernels
09:19 PM Tom_L: is that LEDMode? 0014
09:20 PM pcw-home: yes
09:23 PM Tom_L: what would the syntax be to access them from hal? 7i96s.0.cr11?
09:23 PM Tom_L: or 7i96s.0.LED0 etc
09:25 PM Tom_L: ...certainly not a priority
09:28 PM boostedcabbage[m: y = sin(volts) for 16 points. that makes sense to be
09:28 PM boostedcabbage[m: me even
09:29 PM pcw-home: hm2_card.N.led.CR01 etc
09:39 PM boostedcabbage[m: pcw-home: but even with accounting for the voltage, pulse width is still not going to be linear for even no-load speed control. are you just suggesting this as a precursor to pid, or are you saying i'd actually have a usuable spindle open loop?
09:40 PM boostedcabbage[m: is the idea to have approximate speed control with no load?
09:40 PM boostedcabbage[m: (and no feedback)
09:40 PM boostedcabbage[m: but nonetheless, not enough to turn
09:42 PM boostedcabbage[m: i have attached a router speed control(triac) to a rectifier and did have bad control under load with this lathe/motor. it was partially useful, so i guess that does speak to it in some way
09:43 PM boostedcabbage[m: it would dip down easily when coming in for a cut, but it did "work"
09:44 PM pcw-home: I would think it should work OK for open loop but probably not at low speeds
09:45 PM pcw-home: and the better and more linear it is, the better the PID will work
09:45 PM boostedcabbage[m: makes sense
09:46 PM pcw-home: (especially considering you don't have much loop bandwidth with phase control)
09:49 PM boostedcabbage[m: we're not working with a lot of inertia either. it's an old 7x10 hf mini 🙂
10:17 PM boostedcabbage[m: am i crazy, or does a single data point not matter as we're not turning it off in the half-cycle? does the entire rms power need to be accounted for?
10:18 PM boostedcabbage[m: that might not be articulated well
10:18 PM boostedcabbage[m: *entire rms power for the half-cycle we are going to be in
10:21 PM boostedcabbage[m: because when we commit to a turn on point, we are there for the entire ride. i think the answer is yes
10:26 PM boostedcabbage[m: my current thinking is to find 16 points in time that represent equal increments in rms power over the sine wave
10:43 PM boostedcabbage[m: (half cycle)