#linuxcnc-devel | Logs for 2015-05-02

[02:16:08] <KGB-linuxcnc> 03Sebastian Kuzminsky 05hy-vfd 9bbeebb 06linuxcnc 10src/hal/user_comps/huanyang-vfd/hy_vfd.c hy-vfd: disable debug by default (enable with --debug) * 14http://git.linuxcnc.org/?p=linuxcnc.git;a=commitdiff;h=9bbeebb
[02:16:08] <KGB-linuxcnc> 03Sebastian Kuzminsky 05hy-vfd 5158142 06linuxcnc 10src/hal/user_comps/huanyang-vfd/hy_vfd.c hy-vfd: remove some dead code * 14http://git.linuxcnc.org/?p=linuxcnc.git;a=commitdiff;h=5158142
[02:16:08] <KGB-linuxcnc> 03Sebastian Kuzminsky 05hy-vfd 3e467a9 06linuxcnc 10docs/man/man1/hy_vfd.1 10src/hal/user_comps/huanyang-vfd/hy_vfd.c hy-vfd: remove --verbose (it was unused) * 14http://git.linuxcnc.org/?p=linuxcnc.git;a=commitdiff;h=3e467a9
[02:16:11] <KGB-linuxcnc> 03Sebastian Kuzminsky 05hy-vfd 2007d2c 06linuxcnc 10src/hal/user_comps/huanyang-vfd/hy_vfd.c hy-vfd: it's enough to include signal.h once * 14http://git.linuxcnc.org/?p=linuxcnc.git;a=commitdiff;h=2007d2c
[02:16:14] <KGB-linuxcnc> 03Sebastian Kuzminsky 05hy-vfd 42e7d9a 06linuxcnc 10src/hal/user_comps/huanyang-vfd/hy_vfd.c hy-vfd: shut down cleanly on ^C or 'halcmd unload' * 14http://git.linuxcnc.org/?p=linuxcnc.git;a=commitdiff;h=42e7d9a
[02:16:18] <KGB-linuxcnc> 03Sebastian Kuzminsky 05hy-vfd 82b170c 06linuxcnc 10src/hal/user_comps/huanyang-vfd/hy_vfd.c hy-vfd: don't busy-wait so hard at startup * 14http://git.linuxcnc.org/?p=linuxcnc.git;a=commitdiff;h=82b170c
[11:32:43] <jepler> hmm we have a license problem linking with readline6, which is gpl3
[11:32:44] <jepler> $ ldd bin/halcmd | grep readline
[11:32:44] <jepler> libreadline.so.6 => /lib/x86_64-linux-gnu/libreadline.so.6 (0x00007f6c1a94d000)
[11:57:51] <KGB-linuxcnc> 03Jeff Epler 05jepler/libreadline-gplv2-v2.6 79c1921 06linuxcnc 10debian/configure 10debian/control.in debian: depend on a GPLv2 version of readline * 14http://git.linuxcnc.org/?p=linuxcnc.git;a=commitdiff;h=79c1921
[11:58:31] <jepler> seb_kuzminsky: please consider for 2.6 and up ^^ assming buildbot doesn't spit it out
[11:58:46] <jepler> some conflicts merging to 2.7 but easy to resolve
[13:19:39] <Tom_itx> who was working on that pause resume code with some examples?
[13:48:30] <pcw_home> dgarrett?
[13:58:03] <skunksleep> There are some configs in 2.7 and later
[17:37:49] <seb_kuzminsky> jepler: looks good, & thanks for keeping a watchful eye on that lawyerly stuff
[17:38:47] <seb_kuzminsky> hey folks, question about vfds... i'm trying to make this wonky huanyang work at the hackspace
[17:40:08] <seb_kuzminsky> if i'm a vfd, the core of my job is to accept a frequency as input, and produce AC power at that frequency (with voltage and current caps), is that right?
[17:41:13] <seb_kuzminsky> then the AC motor that's getting that power has some rated voltage, current, frequency, and rotational speed, and it will turn at a speed that's roughly linearly related to the input frequency
[17:41:26] <seb_kuzminsky> with 0 rpm at 0 Hz and $MAX rpm at $MAX Hz
[17:41:31] <seb_kuzminsky> am i understanding that right?
[18:01:56] <cradek> seb_kuzminsky: they get input power somehow, and it doesn't matter how really, since they just make DC out of it anyway. you can often even run them on DC.
[18:03:28] <cradek> for the output, say your motor expects 60Hz 240v. That's no problem, and you can vary its run speed a bit by changing the output frequency. but beware, you can't do this forever: consider the case where you want to stop - surely 0Hz at 240V wouldn't be what the motor likes
[18:04:32] <cradek> so they deal with that in various ways, for instance having intermediate settings for nice combinations of V vs Hz (and an implicit 0V/0Hz for 0 rpm) and then doing some kind of interpolation
[18:05:17] <cradek> sometimes you can get these setpoints right from the motor plate
[18:07:10] <cradek> fwiw, here's the spindle motor plate on jr: http://timeguy.com/cradek-files/emc/spindle-motor.jpg
[18:07:47] <cradek> you can see some recommended V vs Hz points
[18:08:56] <cradek> if your motor manufacturer didn't have VFDs in mind, and meant it to plug into the line and run at a fixed speed, you will have to do more guessing
[18:15:31] <cradek> notice on this motor that the V/Hz curve is absolutely not linear
[18:17:37] <seb_kuzminsky> hmm
[18:18:28] <seb_kuzminsky> the motor i'm driving is a 24krpm air-cooled spindle, but the motor plate only has one data point on it
[18:18:37] <seb_kuzminsky> 300 Hz, 220V, 24000 rpm
[18:18:48] <seb_kuzminsky> err, and 13A
[18:19:11] <cradek> perhaps it's only meant to run at that one speed
[18:19:15] <cradek> do you need other speeds?
[18:19:26] <cradek> is this for wood?
[18:19:26] <seb_kuzminsky> i think so
[18:19:47] <seb_kuzminsky> it's 95% for wood, but with different tools, including drills and endmills
[18:20:27] <cradek> I suppose you can always guess and see if it gets hot
[18:21:10] <cradek> some fancier VFDs use methods other than V/Hz setpoints, up to stuff like resolver feedback
[18:21:21] <seb_kuzminsky> but it's safe to assume if i feed it 300 Hz 220V, it'll turn (unloaded) at 24krpm?
[18:21:38] <seb_kuzminsky> and less Hz = less rpm?
[18:21:39] <cradek> yep bet so
[18:22:02] <seb_kuzminsky> ok cool, thanks
[18:22:22] <cradek> yes but with just reducing Hz the current will go up, and power dissipation will go up and make it melty, so you have to also reduce V when you slow down
[18:22:59] <cradek> and be aware I'm about at the "if you need to know more, call jmk" point here
[18:23:14] <seb_kuzminsky> doesn't the vfd do that by itself usually? i think you just tell the huanyang the freq, and it picks a voltage... somehow
[18:23:21] <seb_kuzminsky> heh yeah
[18:23:37] <cradek> it might have sensible defaults for V/Hz but I wouldn't bet on it
[18:23:57] <cradek> and for a motor like that I don't know what sensible defaults would be
[18:24:12] <cradek> can you ask the motor manufacturer?
[18:24:18] <seb_kuzminsky> the huanyang manual is terrible, and its serial protocol is not documented at all (it's not modbus)
[18:24:32] <cradek> yick
[18:24:57] <seb_kuzminsky> ah well
[18:24:58] <cradek> IME you always do this setup at the front panel of the vfd somehow
[18:25:16] <seb_kuzminsky> you mean input the V/F points?
[18:25:19] <cradek> yes
[18:25:40] <cradek> you program it for the motor once and forget about all this
[18:25:49] <seb_kuzminsky> but! the front panel has icky little membrane keys, and my computer has a nice keyboard & screen
[18:25:51] <cradek> then just give a speed command over analog or whatever
[18:26:29] <cradek> and then you write down the settings in the vfd manual and stick it in the machine somewhere :-)
[18:26:58] <seb_kuzminsky> and type it into the README and commit it next to the .ini & .hal files ;-)
[18:27:28] <cradek> yeah, be sure you record it in several places so some can become out of date over time
[18:28:07] <seb_kuzminsky> http://www.c-n-c.cz/download/file.php?id=42252
[18:28:09] <seb_kuzminsky> page 20
[18:29:00] <seb_kuzminsky> looks like you can set three V/F points, and it does linear interpolation between them
[18:29:08] <cradek> aha
[18:29:35] <cradek> notice none go to 0/0, there is a minimum speed
[18:30:11] <seb_kuzminsky> right
[18:30:23] <cradek> Do not be quick to increase it by large amplitude. Otherwise it might cause the tripping of the
[18:30:26] <cradek> inverter or the damage of the machines.
[18:30:50] <seb_kuzminsky> time to grill hamburgers for like 10 kids
[18:30:53] <seb_kuzminsky> http://rs2img.memecdn.com/i-must-go-my-people-need-me_c_166543.jpg
[18:31:05] <cradek> haha
[18:31:09] <cradek> have fun
[19:02:56] <KGB-linuxcnc> 03Jeff Epler 052.7 bc4a0df 06linuxcnc 10debian/configure 10debian/control.in Merge branch '2.6' into 2.7 * 14http://git.linuxcnc.org/?p=linuxcnc.git;a=commitdiff;h=bc4a0df
[19:02:56] <KGB-linuxcnc> 03Jeff Epler 05master f699c1c 06linuxcnc 10debian/changelog 03docs/src/man/man9/streamer.9.txt 10scripts/linuxcnc.in Merge branch '2.7' * 14http://git.linuxcnc.org/?p=linuxcnc.git;a=commitdiff;h=f699c1c
[19:02:56] <KGB-linuxcnc> 03Jeff Epler 052.6 79c1921 06linuxcnc fast forward * 14http://git.linuxcnc.org/?p=linuxcnc.git;a=commitdiff;h=79c1921
[19:30:01] <jepler> yet another reason to carefully put copyright information in each source file https://lists.debian.org/debian-legal/2015/05/msg00001.html
[19:31:24] <Tom_itx> heh
[19:35:30] <jepler> debian people, bless their hearts, are sticklers
[19:39:43] <Tom_itx> i wonder if i can figure out spindle sync tonight
[19:39:51] <Tom_itx> the pieces are all in place
[19:39:59] <Tom_itx> the code needs some work
[20:15:29] <Tom_itx> http://linuxcnc.org/docs/2.7/html/examples/spindle.html#_spindle_synchronized_motion_a_id_sec_spindle_synchronized_motion_a
[20:16:01] <Tom_itx> in the spindle at speed example, where do the spindle-cmd and spindle-velocity signals come from?
[20:16:34] <Tom_itx> those appear to be output to the near function so must contain values
[20:17:16] <Tom_itx> and i don't see them in motion.spindle.xxx
[20:32:43] <seb_kuzminsky> it's motion.spindle-at-speed
[20:32:49] <seb_kuzminsky> Tom_itx: http://linuxcnc.org/docs/2.7/html/man/man9/motion.9.html
[20:32:58] <seb_kuzminsky> motion.spindle-at-speed IN BIT
[20:32:58] <seb_kuzminsky> Motion will pause until this pin is TRUE, under the following conditions: before the first feed move after each spindle start or speed change; before the start of every chain of spindle-synchronized moves; and if in CSS mode, at every rapid->feed transition.
[20:33:37] <Tom_itx> i'm looking at the motion page too
[20:34:04] <Tom_itx> i'm wondering where those input signals come from
[20:34:53] <Tom_itx> i started this about a month ago and had to let it sit :(
[20:37:56] <Tom_itx> i temporarily had that pin hardcoded true
[20:38:11] <Tom_itx> i'm trying to get it from the spindle now
[20:39:26] <seb_kuzminsky> it comes from your spindle feedback mumble, vfd or encoder or whatever
[20:40:15] <Tom_itx> so that's a sudo example
[20:40:22] <Tom_itx> not actual working code
[20:41:11] <seb_kuzminsky> it's meant to be working
[20:41:24] <seb_kuzminsky> in 6.1 we see the spindle feedback coming from an encoder comp
[20:41:45] <seb_kuzminsky> in 6.2 we add a near comp to tell motion when the spindle is "at" speed (really: near speed)
[20:42:18] <Tom_itx> ok i wasn't following from the top, i started at 6.2
[20:42:25] <Tom_itx> i'll review it again
[20:42:33] <seb_kuzminsky> yeah, 6.2 isn't a complete example, but 6 is ;-)
[20:42:58] <Tom_itx> do i need the sync example for rigid tapping?
[20:43:00] <Tom_itx> i suppose so
[20:44:23] <seb_kuzminsky> i dont understand the question
[20:44:57] <Tom_itx> i need the signals for synchronized motion for rigid tapping to work properly
[20:44:58] <seb_kuzminsky> spindle synced motion like rigid tapping requires spindle feedback
[20:45:04] <Tom_itx> ok
[20:45:34] <seb_kuzminsky> rigid tapping works on the spindle index, i think (like in the example in 6.1)
[20:45:51] <Tom_itx> for some reason andy's gear cutting youtube keeps sticking in my head
[20:46:05] <seb_kuzminsky> so you need a one-pulse-per-rev signal from your spindle feedback circuitry to trigid tap
[20:46:13] <seb_kuzminsky> well andy's a wizard
[20:46:16] <Tom_itx> where do you reset the index signal or is that part of the rigid tap cycle?
[20:46:31] <Tom_itx> i realize you need to reset it once it's triggered
[20:46:50] <Tom_itx> i think that's one of the few bidirectional pins
[20:48:03] <Tom_itx> i should be asking in the regular channel... it's kinda gone to crap lately
[20:58:49] <Tom_itx> i did get 2.7 loaded
[21:00:14] <seb_kuzminsky> bbl
[21:39:40] <Tom_itx> crap. motion.spindle-speed-in is in rps and motion-spindle-speed-out is in rpm
[21:39:49] <Tom_itx> one would think they would be in the same units
[21:39:59] <cradek> there's like 11 outs in different formats
[21:40:05] <cradek> pick the appropriate one
[21:40:24] <Tom_itx> ty
[21:40:26] <Tom_itx> :)
[21:40:42] <Tom_itx> -out-rps
[21:40:58] <Tom_itx> and probably abs
[21:41:08] <Tom_itx> since it will be reading reverse as well
[21:51:48] <Tom_itx> nope, abs not needed
[21:51:56] <Tom_itx> thanks cradek it's working
[21:52:14] <cradek> yay!
[21:52:19] <Tom_itx> now on to the sync part...
[22:04:10] <Tom_itx> ok i mdi the G33.1 command and it moved z with the spindle however it never stopped and reversed out
[22:04:25] <Tom_itx> (nothing hooked up, just watching the screen)
[22:14:23] <Tom_itx> mmm watching it, the scale somewhere seems way off. it's moving in -z but the distance to go is taking forever to count down using the .750" thread from the example
[22:14:47] <Tom_itx> it probably would have cut about 6-8" worth by now
[22:22:06] <Tom_itx> i think i need to find the component that scales the spindle rpm with the stepper pwm