jmkasunich: managed to finish mowing?
just now in fact
[00:25:59] <alex_joni> http://22.214.171.124/~juve/iozsi/tuning1.png
[00:26:19] <alex_joni> http://126.96.36.199/~juve/iozsi/tuning2.png
on the last one, P=25, I=100, D=0, FF*=0
what was the commanded move?
looks like only 2mm or so
something like that
hmm.. I'll try steps, not continuous
you should offset your position command and fb traces, so the scaling doesn't have to be so huge
(200mm/div doesn't let you see much when you are making <5mm moves)
the offset button under the vertical sliders
note the level, (use the cursor)
now he tells me :)
then click that button and enter -thevalue
anyway, judging from the ferror trace, EMC actually completed the move before the motor even started
I think it's ok for pid to reduce output for the move to happen
I'm trying to understand the traces you posted
payload > friction
let me try to get some clearer ones
and we'll try to understand them together
right now I want to command a jog of 10mm
need to add jog steps to the ini
it looks like you jogged once (from 3 to 3.5 divs on the time axis) and never got enough error to make it break loose,
the I gain was starting to get somewhere, and at 4.2 divs it moved one count
then at 4.3 divs or so you started another jog
that one got enough error that the P term started the motor moving
might be so..
maybe a 10mm step shows it better
a 2mm step is only 6-7 counts
[00:39:21] <alex_joni> http://188.8.131.52/~juve/iozsi/jog-step1.png
I think you got it tuned
ok, so it won't work any better.. right?
I suspect you can inprove it some
it shaking all over the place..
even when stopped?
only when moving
I suspect friction
and coarse encoder counts
and PID jumping from +20% to -20%
because between -20 and +20 nothing happens (thanks to friction)
your max following error during that move seems to be 4-5 counts
it's about 1mm
so roughly under 5 counts
ferror in the ini is about 50 mm right now :P
ferror should be totally out of the picture during tuning
yeah, I thought so
I'd keep increasing I gain until bad things happen
not sure how much it will help
at around 300 bad things happen
from 100 to 300 not much of a change
anyways.. I call it a wonder
call it bedtime
that it's moving somehow semicoordinated
your friend owes you beers
encoders are homebuilt
he knows I don't drink any
I'm surprized the encoder resolution is so low
I thought they were based on mouse parts?
it's mouse wheels
mouses have a couple hundred counts per inch
duh, I guess thats only about 10 per mm
but the problem here is the drum the wire goes over
why a drum, it should go over the bare naked mouse encoder shaft
the shaft is not part of this
we only took the wheels
the 3rd version of this machine would actually be sane
but since it's the first attempt..
cradek: you around?
I have "index only homing" coded up
but no good way to test it
can you test?
no index pulses on the lathe?
no, I wish
should I just commit and hope it works?
was it pretty simple or did it touch a lot of the logic?
one new state, and some changes to the start state logic
I'd appreciate it if you could review the diff
its up to you whether you review it after I commit, or I can pastebin it
* alex_joni cries silently
alex_joni should be sleeping
* alex_joni agrees
oh no, still awake.
not a good sign
jmkasunich: go ahead and commit, that's easiest
alex_joni: anything we can do to help?
jmkasunich: did you review my doc changes to make sure we both had the same ideas?
yes, I read the doc before I started coding
ah good :-)
cradek: no, not really
I figured it was dangerous to do it separately
the only minor issue I had is that we no longer clearly say what happens if both search and latch vel are zero (the "home it right here" case)
this index only homing is very similar to the homing on my robots
good, you can test it ;-)
jmkasunich: on resolvers?
I said similar ..
you said VERY similar
yeah .. very
anyways.. the older control had a board which converted a resolver signal to quadrature + inde
the only difference to index homing in emc2, is that on the robot controls you don't usually do it (homing)
this 'non-zero SEARCH_VEL needs LATCH_VEL' was always an error but you added a better message?
when the control powers down it saves the position of all joints (position from last index pulse)
oh I see now that you just moved it
when it starts up it checks to see if the distance is the same
cradek: I see 2 new messages
yeah, instead of starting the process and then complaining midstream, I don't start
I can ask stuart to test this, or I will do it when I go back, probably in a few weeks
as long as it doesn't break things for people who don't use it, theres not much to worry about
and I'm pretty sure it doesn't
I don't see any obvious problems but I'm not confident about all the details
yeah I doubt anyone had that particular combination of stuff (although I think it was allowed)
with search_vel = 0, it would do the "home right here" thing
now, you need search AND latch = 0 to get that behavior
but latch defaults to zero anyway
I agree nobody will run into it accidentally
jmkasunich: thanks for writing that
good night all
* alex_joni heads home
* cradek grumbles about the fireworks
SWPadnos_ is now known as SWPadnos
SWPadnos_ is now known as SWPadnos
don't you ever sleep?
who said I know anything about mono?
eh? did I ask you about it?
just pulling your leg
do you think it's a bad idea?
* alex_joni doesn't think
I like controls that acts/looks like machine controls..
feel free to improve it then
axis is great though
and mono is very easy to develop with/in..
and it's cross-platform..
jeff & chris wrote AXIS because they felt the other GUIs were lacking..
I see no reason for you not to be able to do the same thing
that's the same thing I feel about axis..
im looking for jepler though
got some questions for him
maybe you can even run the ui on a windows box..
and run the cam program on the same system..(longshot)
I also will take a shot at moding tkemc to be closer to a FANUC 0 type display, but I allready see potential problems. (It will be a no priority project)
Skullworks-PGAB: mono is my bet because it's extendable..
Skullworks-PGAB: plugin style features and such,,
Skullworks-PGAB: and well, the fact that the gui stuff can be done with a editor for one..
Skullworks-PGAB: I've never used a fanuc
err any fanuc..
I would like someone (not me) to write a gui that's just for touch screens
it could (maybe should?) rely heavily on real buttons
maybe a touchscreen isn't even necessary
that's the idea I have..
cradek: both.. you end up with tabs for the softkeys..
on the screen nevertheless..
and you can have thoose pushable..
a screen with buttons next to it?
[19:00:44] <anonimasu> http://www.gefanuc.com/Downloads/en/series0i_brochure_gfa633.pdf
it would be nice if the screen didn't have to be a touchscreen - they get greasy fast
like on the fanucs.. or heidenhains..
they have the keys besides..
extend pyvcp to be able to issue NML commands?
awallin: I want a gui editor ;)(partial reason why I like the mono approach)
and that it's crossplatform..
awallin: and that I'd be able to do work on it..
heck maybe start with keystick and use only 80x25 text and all hard controls
keystick actually works pretty well
cradek: there comes the preview bit also..
cradek: though im only looking yet..
cradek: need to write/get more information on the nml/hal stuff first..
preview at the machine is a gimmick
cradek: it saves me from crashes ;)
I love the axis preview..
anonimasu: then use AXIS
maybe I don't understand your goals
cradek: I want a control that acts more like real cnc controls..(
but also has all the features of AXIS?
and dosent rely very heavily on mouse interaction..
that's maybe gonna be a tall order
AXIS can be used totally by keyboard
it has very good keyboard shortcuts
look at a fanuc or at a heidenhain, and we can discuss it more :
the only thing you can't do is pan or rotate the display
HURCOs run with touchscreens. seem to be pretty robust....
cradek: actually the thing with the preview is not nescessary..
cradek: it's kind of hard to explain.. :)
cradek: I want a cnc control to act like most cnc controls do I guess..
anonimasu: if you want to get the basics of emc "user interface" with NML, you could do worse than by starting with two simple python programs that use NML. mdi.py from the source distribution, and jdi.py from http://axis.unpy.net/01167419757
the "xemc" user interface is also very easy to follow, as it is not very complex (xemc.cc in the source distribution)
I've used nml/hal before with python..
im more interested in how hard it would be to write a mono library for use with them..
first you'd need someone who knows mono
I know mono..
but I dont know anything about how to interface nml..
you'd have to read the mono documentation about how to interface to new C++ libraries
except how to use the python modules.. ;)
oh.. then it's piece of cake :)
so read emcmodule.cc and see how the python->C++ interface is implemented
yeah I'm going to do that
mostly it's just tedious implementing each command (in emcmodule, methods of a 'command' object) and each status (in emcmodule, attributes of a 'status' object)
jepler: im kind of curious about the overhead if I would just wrap the python stuff.
if(!PyArg_ParseTuple(o, "i", &d.debug)) return NULL;
though that's f-ugly
you have a C++ object of some type, write some of the fields (d.debug in this case), then call the 'write' method
with python I've only strugged with efficiency in a few places, mostly related to loading the preview plot quickly
python libraries can be compiled to CIL.. too
[19:41:16] <anonimasu> http://pythonnet.sourceforge.net/readme.html#getting_started
atleast to depend on it for a start.
jepler: please have a look :)
I looked around a bit, have failed so far to find out how to write an interface to an existing C++ library to mono
jepler: "mono + c++ interop"
[19:49:58] <anonimasu> http://www.mono-project.com/Interop_with_Native_Libraries
still would like to go over this http://www.electronicsam.com/images/KandT/servostart/tune/
but I have been too busy goofing off this weekend.
mono will run on windows or linux.. with the same binaries..
good night all
I just made the first custom control of the mono ui..
it still needs work but it's a start
jmkasunich: I was able to test index only homing a bit in servo_sim, nothing jumps out at me as wrong