ok, pin 1 goes to 4.4V with the G540 disconnected
EMC: 03bigjohnt 07TRUNK * 10emc2/docs/src/Master_Integrator.lyx: add AXIS special comments
EMC: 03bigjohnt 07TRUNK * 10emc2/docs/src/gui/axis.lyx: add AXIS special comments
only subdirectory I didn't look in :/
userspace components ;)
SWPadnos: is there a default rate for gs2
default update rate?
for the baud rate
I should add docs on the pins and parameters, shouldn't I? :)
yes, I think it defaults to 38400
it's in the comment I think
I'm working on the docs from your comments
it is there in parentheses
hmm missed it
if you can stick in sections with the pins and params, I'll fill in the description of what they do
EMC: 03bigjohnt 07TRUNK * 10emc2/docs/src/drivers/GS2.lyx: add gs2 driver to manual... thanks for the work SWP
EMC: 03bigjohnt 07TRUNK * 10emc2/docs/src/Master_Integrator.lyx: add gs2 driver
EMC: 03swpadnos 07TRUNK * 10emc2/src/hal/user_comps/gs2_vfd.c: add usage print for --help or -h option, or on unrecognized option
oh, that's in the manual
here I was looking for a manpage ;)
EMC: 03bigjohnt 07TRUNK * 10emc2/docs/src/drivers/GS2.lyx: add pins and parameters to gs2 I think...
* BigJohnT is going upstairs to kick back
hmmm. now if only I could edit that lyx on 8.04 :/
you have to use a text editor if you have 8.04
or email me the info
I'd try to edit on the 6.06 machine, but it's painfully slow
takes like 30 seconds for a terminal to open
just email me the text file or something
ok. I'll make something up and send/pastebin it
ok thanks for the driver
then again, I'm not sure I remember exactly what all the status pins mean
so did I guess the pins correctly?
do you have my email address
I think the names are right - lemme check (my laptop development system is on 8.04, so I may have build-docs disabled)
I'm sure I can find it :)
huh. so which .pdf do things in Master_Integrator.lyx end up?
the Integrator Manual
and that should be in docs/ after a build with docs?
ok. well I don't have that
I do have the other 4 though
did you get an error while building?
the build didn't end with an error, though there were a couple of "interesting" messages
they were in relation to Master_User.lyx though
(looks like a failed CVS merge actually)
sometimes you have to do a make clean...
I'm not sure why, but Master_User.lyx had a CVS conflict - I got no errors once I fixed that
I just did make clean and it's doing the make now, so we'll see if I get an integrator manual
did you get a good cvs update
yes, I'm sure I did
hmmm I'm short on ideas then...
I also have no Getting Started doc
I've gone as far as a fresh download to cure weird things
I could do that, just in the docs dir
EMC: 03swpadnos 07TRUNK * 10emc2/debian/changelog: note addition of gs2 MODBUS driver
hey BigJohnT, could you check in docs/src/hal/basic_hal.lyx?
I'm upstairs right now... on the wifes laptop
are you seeing a problem with it?
I finally looked into the "failed to remake makefile" mesasge, and using make --debug=b,m tells me that that file is missing
I thought I checked it in...
but it's needed for Master_Integrator
I don't see anything with the word "basic" on the cvs commit list
carp wait a moment or three I'll run downstairs and commit it
EMC: 03bigjohnt 07TRUNK * 10emc2/docs/src/hal/basic_hal.lyx: add file
that seems to have allowed a whole lot of stuff to get built, including master_integrator, getting started, all the french .pdfs, and html docs
that should fix it :)
when it dies I think it just gives up
yes, but sadly it doesn't seem to give you an error
at least, not all the time
yea, that has caused me to pull out some hair... good thing I have plenty
well, now I have to guess at what all those pins and params are. hmmm
give it your best shot
I now remember that the VFD is programmed by telling it the nameplate frequency and RPM, and you give it a frequency in 0.1Hz increments to set the speed
from the motor?
I'm pretty sure most of the other stuff is just feedback - actual voltage (when it's in constant torque mode), actual output frequency (which can be converted to speed)
well, from the VFD, not the motor
it's not encoder-like by any means
in theory, with 3-phase induction motors, the motor should be moving at a known speed if the VFD is putputting a known frequency
I'm not positive that's true in practice
I'll let you know in a few days...
I'm sure some of this is in the manual
I just checked, and I do have a nice 1/2 HP motor sitting in the garage
it may even work
the gs2 manual?
it will be on line too
yep. I'm sure I have it on my laptop also, or I wouldn't have been able to figure it out in the first place
other than the power ranges (and higher voltage options on the GS2), I wonder what the difference is between a GS2 and a GS1
SWPadnos: nitpick, but the frequency/speed relationship for an induction motor isn't very exact
slip varies as a function of load
the G1 does have MODBUS also
jmkasunich, right - that's why I wasn't so sure the freq:speed ratio is actually a constant
[02:17:27] <BigJohnT> http://web3.automationdirect.com/static/manuals/gs2m/gs2m.html
now I guess I'm sure it isn't ;)
I'm looking at the GS1 version right now :)
synchronous speed is exactly frequency divided by some integer
(substitute a 1 for the two 2s)
but the motor doesn't run at sync speed unless truly zero torque ( including bearing friction and windage)
file a couple flats on the sides of the rotor and it probably will drop into sync at light loads
I guess my idea there was that an encoder or tach is more reliable speed feedback
the drive doesn't have "speed feedback"
at least not the way I'd define the term
no, it has "output Hz"
which may or may not be identical to what's commanded, based on accel parameters in the drive
some drives will do slip compensation, increase the output Hz by their estimate of the slip, so you get roughtly the speed you ask for
ok, based on current output?
(as a measure of load torque)
it is based on motor data
if nameplate amps is 7.5, and nameplate RPM is 1780, they assume there is 20 RPM slip at 7.5A
these VFDs get the nameplate speed and nameplate frequency from the motor, so it's possible they do some of that estimation
usually it can be enabled/disabled
if not, the drive probably doesn't have comp at all
I don't remember really - I'll make a note if I see it in the manual
it is never really that accurate anyway
slip vs. torque varies with rotor temperature, among other things
huh. the GS2 says it has PID
the GS2 has: "All of the features of our GS1 AC drives plus dynamic braking, PID and a removable keypad "
yikes - I should go to bed
EMC: 03cmorley 07TRUNK * 10emc2/src/hal/classicladder/ (protocol_modbus_master.h config_gtk.c): Fix display of S32 in/out pin count. Switch back to one MODBUS i/o page. I made the two page deal too complicated/hacky to debug problems -16 requests should be plenty anyways...
EMC: 03cmorley 07TRUNK * 10emc2/src/hal/classicladder/files.c: Cleanup file a bit..
hi there. please direct me how to enter the gui under 8.04 LiveCD if it didn't logged in automatically? :(
what username and pass should be?
EMC: 03bigjohnt 07TRUNK * 10emc2/docs/src/hal/basic_hal.lyx: add more info
EMC: 03bigjohnt 07TRUNK * 10emc2/docs/src/ (Submakefile docs.xml index.tmpl): add basic hal to the html
EMC: 03bigjohnt 07v2_2_branch * 10emc2/docs/src/hal/basic_hal.lyx: add file
EMC: 03bigjohnt 07v2_2_branch * 10emc2/docs/src/ (Master_Integrator.lyx Submakefile docs.xml index.tmpl): add basic hal
Is there any ideas to include perpendicularity correction into emc? (it is very simmilar to screw compensation)
can you explain it a bit more?
if X and Y aren't perpendicular, then you can correct for it by commanding motor position Y' = Y + m*X, where m is a number that represents the skewness between X and Y.
I'd be happy to see someone add it to emc
jepler: there is one problem
we have to enable and disable it in homing
that is not a problem since kinematics are not used during homing
whe is it enabled then ? after final_move ?
when you enter teleop mode
when the $ comes into play :)
micges: you can easily correct this in kinematics
if Z isn't perpendicular on the XY plane, and you want to drill holes, then you have a problem
don't think you can correct that :)
I want to correct XY plane only
ok, you can do that probably easy using kinematics
you'd think so
can someone take a gander at this to see if I got it all correct http://www.linuxcnc.org/docview/html//hal_basic_hal.html
This section is under construction at the moment ...
BigJohnT: "he command "net" creates a "connection" between a signal and a pin."
it's actually a signal and one or more than one pins.
other than that it looks ok?
"The command "setp" sets a pin or parameter. Some components have parameters that need to be set before use." -> "The command "setp" sets the implicit value of a pin or parameter. Parameters can be altered before use or during running of a system (for example PID setup parameters that might be changed during tuning procedures)."
I think 'loadusr or2' is a bad example because that's a realtime component
'loadusr halui' might be a better example
hal_input, hal_joystick, halscope, ...
yeah.. halmeter is even better
BigJohnT: I think these things have a slighlty better explanation in the HAL tutorial
I like the original description of setp better than alex's
(even if few people actually read that)
cradek: I somehow agree, but I don't think it's correct
you might add "you can only use setp on a pin if it's not connected to a signal"
but it is hard to find anything in the HAL tutorial
BigJohnT: the point of the tutorial is to read it not find stuff in it ;) </joke>
hmm, I forgot about the tutorial. I wonder if it needs improvement, instead of starting a new document
what would be a good example of loadusr?
[15:07:57] <alex_joni> http://www.linuxcnc.org/docview/html//hal_tutorial.html#sec:Tutorial%20-%20Simple%20Example
the HAL tutorial might cover things outside of emc2 at first glance
32769 float OUT 1.00000e+00 siggen.0.square
this is really old - I'm sure it says "1" now
but they might be usefull to the reader to understand how it works
and halscope looks a bit better than: http://www.linuxcnc.org/docs/html//halscope-demo-6.png
my target with this is the many who don't want to know how HAL works but want to add a line or two to a HAL file
I agree that is probably a big group
jmk's approach in the hal tut was right for someone who is learning how to use a standalone hal, where you have to make threads etc. almost no emc user has to make threads.
they DO need to know that they probably have two, and one is fast and one is slow, and you cover that
* alex_joni runs home
see you later
in a bit ;)
thanks for all the feed back guys
err.. maybe not, I remembered I wanted to work some more :)
so you can't load a real time component into user space?
unless you compiled for sim
but even then it's not really user space..
ok, I don't want to confuse them
it still runs when attached to a thread
loadrt is for RT components
loadusr for user space
HAL modules should not use underscores or “MixedCase”.
(float) bit_weight -- The value of one least significant bit (LSB). This is effectively the granularity of the input reading.
(float) hw_offset -- The value present on the input when 0 volts is applied to the input pin(s).
pins are allowed to
but hal_parport & co ... should also be valid
these are params specified
I think pins and params are supposed to have "_" in them
I think that is incorrect
Dots (“.”) separate levels of the heirarchy. This is analogous to the slash (“/”) in a filename.
Hypens (“-”) separate words or fields in the same level of the heirarchy.
HAL modules should not use underscores or “MixedCase”. 1
and the encoder spec is missing x4-mode
footnote 1: Underscores have all been removed, but there are still a few instances of mixed case, for example .pid.0.Pgain. instead of .pid.0.p-gain.
I thought we added that
alex_joni: I probably wasn't clear. I'm proposing that the hal reference is self-contradictory because it requires some param names which are "spelled wrong"
this is not about existing stuff, it's the recommendations in the spec for new stuff
cradek: right, I understood that
so it's probably only a forgotten fix for the recommendations
* BigJohnT goes off to hold a customers hand :/
what kind of customers do you have?
so, I finally figured out what I was doing wrong with the G540
it's really really important to invert the step outputs
SWPadnos: the g540 is active low?
the G540 has optoisolators which invert the signal, and the G251 is active high
err, rising edge triggered
I'll test again, but I think I was able to use 1000 for all 4 timing parameters (steplen, stepspace, dirsetup, dirhold)
test from a 5i20 then
yeah. on that GOAL3+ board, I can do ~75ksteps/second easily
not bad for a $60 motherboard/CPU/memory combination :)
(except for the video disturbances :) )
what's BASE_PERIOD ?
throw a 20$ GPU in there :)
I'll have to look at it
this is using double step?
e.g. stepconf config?
heh, yeah - NewEgg has the Geforce 9500GT 1GB on sale for $40 afterrebate :)
I need to experiment with "moving" the file - maybe make some changes to stepconf if necessary
agp or pci-x ?
[17:04:29] <alex_joni> http://www.newegg.com/Product/Product.aspx?Item=N82E16814187048
PCie 2.0 x16
[17:05:00] <SWPadnos> http://www.newegg.com/Product/Product.aspx?Item=N82E16814130395
a bit pricier then the 20$ card I pasted
I'd probably go for a lower power fanless one anyway
and around emc2 using the vesa driver, probably not at all better :D
not much, considering there's a $35 rebate ;)
there are a couple but expensive
[17:06:21] <alex_joni> http://www.newegg.com/Product/Product.aspx?Item=N82E16814139024
I searched a bit over the last couple of days, they're in the $25-50 range
I was pretty amazed - I priced out a quad-core machine yesterday, and it came to $800 with shipping (no keyboard, mouse, or monitor though)
ouch.. sounds a bit much
that was with a 1.5TB hard drive, DVD recorder, low power (45W) quad core CPU, a high end motherboard, and a 9600GT video card
and not counting the $45 in rebates
Intel has no quad-cores with that low power consumption
hmm.. I think they do
not at NewEgg
they start at 89W or 95W
45nm though :P
oops, this one is 65W
I can easily see how to reduce that price tag by $200 or so
(500GB drive instead of 1500, slower video card, lesser motherboard, etc)
cut a piece out of the mobo?
"now with less!"
could you please cut me 100$ out of this mobo?
yes, we've removed all the connectors
all of them
and sata controllers
nah - the controller is part of the chipset
[17:12:35] <SWPadnos> http://www.newegg.com/Product/Product.aspx?Item=N82E16813131339
this is a very nice motherboard - I have it in my quad-core workstation
but you can save $100 by getting one that doesn't have FireWre, no PCI slots, not the top of the line chipset, etc.
no PCI slots?
this one has PCI
you can save $$ by not getting PCI slots
what slots does it have, then? Just PCIe?
yes, I think so
(I mean, on these no-PCI boards)
hmmm - let me check that again
I was checking the high-end chipsets, and some have quad PCIex16 slots but no PCI
or maybe 1 PCI slot
oh ok - there are $79 motherboards with PCI slots too
[17:16:10] <SWPadnos> http://www.newegg.com/Product/Product.aspx?Item=N82E16813157139
out of all the AMD motherboards, it appears that maybe 2 have no PCI slots
I haven't found one specifically yet, but there are 158 results for AMD motherboards, and the sum of all the choices for "PCI slots" is 156
yeah - I was restricting my search to the top couple of chipsets, with firewire, and with 2 or more PCI slots
so I may have been confused there :)
nonetheless, a few percent performance hit yields a $100 or so reduction in price
one of the two that newegg doesn't think has PCI slots does have them (2): http://www.powercolor.com/eng/products_mb_detail.asp?ProductID=5019 http://www.newegg.com/Product/Product.aspx?Item=N82E16813158001
aha, there is one without PCI: http://www.newegg.com/Product/Product.aspx?Item=N82E16813130206
ok, PCI was a red herring then
I don't remember why most of the boards got eliminated - it could have been my chipset selections
man, steppers are whiny beasts
when standing still
these are silent when stopped
but far from that when moving
but this enables them to play daisy
it is a feature
hmmm. I should have bought that fourth motor :)
remove the A-axis moves and you can play it for 3 motors
it's not as good, though
I totally spaced when buying the motors. should have gotten 4
for all I know it sounds terrible due to the step shaping whatever mumble feature on the g251
but since I don't really need them for anything, 3 is probably enough
I'll see what 3-part harmony sounds like later - I'm planning on hooking up more motors today or tomorrow
it is working nicely though, with stepconf timings of 1000 for all 4 parameters
it's just veeeeeery sensitive to step polarity
ack. gotta leave the room. bbiab
you can route the 4th to hal_speaker
BigJohnT: maybe it's usefull to talk to awallin for including something like this in the integrators manual: http://www.anderswallin.net/wp-content/uploads/2008/09/dc_servo_schematic_2008jan19.pdf
alex_joni: that is cool
it pays rereading older stuff :)
* alex_joni runs towards bed
good night all
SWPadnos: you get the 540 going?
step output polarity
what was it?
that was the culprit
yes and no :)
I don't see why that should matter much, but it's good that I finally figured it out
if I recall it mattered on the 203v too
the G540 inverts
so that may make it the same as the 203V - not sure
now to see what happens to the analog spindle output, which may need to be inverted too :)
it has analog spindle output?
it's supposed to, but it doesn't seem to be working
it's an analog 0-10V isolated output for a VFD
yes, if I can get it to work :)
the only designed-in "problem" I see is that there's no way to access the step/dir pins for unused channels
so if you don't have 4 motors, too bad for you
ah - interesting
* skunkworks hugs his mesa card
gah. is there a keyboard shortcut for the function the "touch off" button does?
the rtai packages in intrepid and jaunty dont build out of the box
did you look in Help > Quick Reference ?
jepler, I did actually
is that shift-home?
Hm, maybe it's a bug that none of those say "touch off"
hint: it's not spelled "touch off"
second hint: it's End
(in the description for shift-end, "zero" is a bit suspect too, since it doesn't set the offset to zero)
there is no shift-end
actually, it's the opposite of what I'm looking for
hm, I see what you mean
I want to set the current location to something (usually 0)
that removes offsets
(that = shift-home)
no, the documentation is fuzzy; it does not remove the offset
when I hit shift-home, the current position becomes whatever the stepgen feedback is, not some number I can enter
that is the opposite of what touch-off does
no, the current position becomes 0
not on 2.2.7
at least, not this 2.2.7 install
(from liveCD, updated)
maybe it's removing other offsets like G92
works for me
can you start at the beginning and say what you're doing, and what you see
ok. I start up a stepper system, and jog to where I want X=0 to be
this represents a non-zero position according to stepgen
I can hit the touch-off button and enter 0, which does what I want
I'm looking for a keyboard command to accomplish that
right, the keyboard equivalent is shift-home
I can move to X=0 (after touch-off), which represents a non-zero feedback position from stepgen
I don't understand what stepgen has to do with anything
and when I press shift-home, the position display changes to the stepgen position
the Touch Off button's keyboard equivalent is End. You can see this in the tooltip that is shown when you mouse over the Touch Off button
it's providing position feedback to EMCV
Shift-Home is intended to be equivalent to using Touch Off and entering 0
actually, I can't see tooltips - they look like greeked hebrew text :)
position feedback is not relevant to offsets in the interpreter
ok - it's useful to show that machine position is not the same as interpreter position
oh the problem is you don't have following?
hmmm. maybe there's a G92 offset somewhere
ok. my (very) bad
I'll post a screenshot of the greek/hebrew text in a minute
there's another curiosity I saw
pretend you're a user who's probably doing something wrong, and pretend I'm a brittle developer who wants a very precise bug report or he'll get bitchy ... :-)
I'm anewbie when it comes to actually *running* one of these things ;)
ok so pretending that will come easy!
yes, terribly so
I configured stepconf with 1000 for steplen, stepspace, dirsetup, adn dirhold (those are good enough for the G540, assuming that you don't have >200k interrupts/second)
strangely, there was never a direction change within ~2ms of a step
even from keyboard jogging, where I'd expect the direction to reverse and the step to be output "immediately"
not a big deal, but I thought it a little odd
it wasn't symmetric either, steps were never closer than 2.04 ms before a dir change, and never came closer than 1.84 ms after
(or close to that - I have a screenshot from the scope that I'll post too)
heh. tort.ngc sure does sound odd with only one motor connected :)
something like this? http://emergent.unpy.net/files/sandbox/dir-hold-setup.png
something like that, except noisier because it was done with a physical scope :)
and it had infinite persistence, so it was showing several thousand direction changes
huh. ctrl-K doesn't work when in MDI
works for me
(but C-u doesn't)
I had the MDI tab up, loaded tort.ngc and ran it from the toolbar button, waited for it to finish (figuring that if I hit F3 or clicked the manual tab, it would stop the program), and when I hit ctrl-K afterwards, nothing happened
a,e,f,b,k all work right
when I switched to the manual tab, it worked again
cradek: SWPadnos has a different expectation for ctrl-k
uh - clear backplot
C-k = 'delete from here to end of line'
(like in the help/Quick Reference ;) )
ok, that would be a problem then :)
wordstar keystrokes will never die
this is why 'what you did (hit C-k), what you expected to happen (clear backplot), what happened instead (nothing)' is so useful
emacs actually - I think wordstar was multiple keypresses (C-k XXX) which would be nasty
true, ctrl-K was the block command prefiz
huh, I don't think I ever really used wordstar
ctrl-k b for beginning, C-k e for end, c for cut, p for paste ..
oh, maybe it was the Borland editor
same keys I bet
which I thought was based on WS, but might not have been
cradek: (ctrl-k doesn't actually work right, because subsequently ctrl-y pastes something else)
cradek: (all this shitty half-implemented maybe-emacs-or-maybe-something-else is in herited from Tk)
I had some problems with just hitting up-arrow then enter also
without C-space I would have never tried to use C-y I guess
I'd have g1x9.8f1000 in the history
(and a corresponding g1x-9.8 move)
hmm - no wait, it was on circles
from x=y=0, have g2x0y0i2f1000 in the history
up-arrow/enter sometimes ended up with F0.1 or F1
C-space (motion) C-w [cut] C-y [paste]
SWPadnos: what do you mean ended up with? when you hit up/down, the mdi box gets filled in, you hit enter and it executes that
that's the theory anyway
I'm saying that the feed rate as displayed in the modal G-codes box, and the movement of the stepper and preview, didn't reflect what had been in the edit box
I'm trying to reproduce it now
I only did a few things, but it seems fine so far
here too, so it may be a while :)
I wonder how fast this motor can actually accelerate (with almost zero load)
I have it set to 30 IPS^2
max vel set to 10 IPS, but it's actually limited by the base period of 15924
SWPadnos: "base period"... how quaint ;-)
why is that quaint?
mesa systems don't need one ;)
man. I need to bolt the thing down harder with the new settings :)
13410 base period (from stepconf)
gah. I absolutely hate the flash crap they've saddled the geckodrive site with
yea, me too
here's hoping for a Digital Americans with Disabilities act banning all flash-only websites
yeah, and useless URLs like this: https://www.geckodrive.com/support.aspx?q=10003&n=718216
https, for manuals and documentation?
not that you can tell from the URL, mind you
wouldnt want evil hackers reading your documentation
right, and they use Linux, so they can't get past the front page anyway
you should use https whenever possible, even if http is available
the more traffic is encrypted the better
oops, this isn't #political-conspiracy-rants, sorry
I don't mind the https, it's the inscrutability of "support.aspx?q=10003&n=718216" that bothers me most
seb_kuzminsky: now i'm wondering if that comment was sarcastic or not
i was serious - more encrypted traffic is better for everyone's privacy
and the fact that they don't have a page title, so if I try to look through my history, I won't be able to tell which ?q=froodle&n=blarg I need
sure, I'm happy with ssh everywhere - not a problem :)
isn't it great when you get something to work but your not sure which thing you did made it work :/
yes and no :)
I know what you mean
SWPadnos: the gs2 driver is that intended to be used with spindle control?
well, it's a non-realtime speed controller for a VFD, so the most likely use is for a spindle
but it could be used with a variable coolant pump or air hose or something too
that's what I thought
or a chip convayer
it doesn't care - it just gets a speed and tells the GS2 to go there
or a mash tun stirrer
the loop rate could be pretty fast if you want - it's implemented as a nanosleep after the work is done, and the minimum time is 1 ms
so if you can use 115200 baud on a GS2, the whole exchange could be done maybe 100 times a second
cool, I can't wait to try it
* BigJohnT kicks CIA-42
* seb_kuzminsky smacks CIA-42
I think the total exchange is maybe 50-60 bytes (two commands, two responses)
oh and do you use a std serial cable?
not quite. the jack on the GS2 is an RJ connector
I think the schematic is in the manual, and they also sell a cable (you did buy that, didn't you? :) )
do you have an RD45 crimp tool?
but I may have one for the AD plc's in my cable case... but it is mostly full of AB cables as they have one for everything
yes we have a crimp tool
or rather many different crimp tools
hmm the dog is telling me someone is here
err, RJ45 that was supposed to be
oh cool. they have an ethernet interface too
well that was the UPS guy...
* BigJohnT opens a package from AD
hmmm. 38400 baud max
time to go. bbl
see you later
page 5-12 (116 in the PDF) has the pinout
I have the paper manual that just came with the drive
little bitty guy