theorb is now known as theorbtwo
hey, i'm building my own mill from scrap, i was wondering if i should put in switches to detect when each axis reaches its limit. make sense?
limit switches are good.
You need a home switch anyway, life gets tedious without them.
would I have a ton of trouble getting sim running on mavric?
Skunkworks have a few min?
I am here at the moment - whats up?
Tryuing to figure out a issue i have with my servo setup
what is your hardware and such?
Jogs fine and moves fine under manual and MDI no following errors and compares well with my accurite DRO
7143 with servos tourque control
motor is geared to screw with 3:1 timing belt and pulleys
problem is the motor may start to drift when standing still
icing on the cake is that EMC's DRO or mesa hal pins do not indicate that it's happening
sounds like noise is getting into the encoder signals.
if noise gets into the encoder lines - the dro will stay the same - but the axis will slowly move.
I know just cant figure out why it's not reading on the the AXIS DRO
Is there a filter i can adjust to highlight the issue
are you using a servo interface card - like the 7i33?
what are your encoders? are they differential or single ended? how long are the cables/ what cables?
what kinda cables are you using?
Cables are sheilded from the drive to the 7133
where are they grounded?
grounded in the enclosure that holds the 7133. and yes twisted
do you have the 7i33 setup for diff?
it's not bad now but if i grab onto the screw pully and twist it back and fourth the motor will start to drift in one direction
allways in the same direction
.0005" at a time
I can see the encoder counts change on the drive but not on the 7143
does the encoder signal go to the drive and the 7i33?
yes encoder connects to drive and then the drive has output terminals that i connected to the 7133
what kind of drive?
sounds like drive config issue or a grounding issue between the drive and emc? maybe?
Yeah i dont know what to think right now i have two drives to switch back and fourth from and they both behave the same way the only common thing is the wiring from the drive to the 7133
Does the drive encoder output exactly mimic the encoder or does it go through processing (for example: can you set different encoder output resolutions)
yes i can scale the encoder if i wish but i have set it for what it is (in the drive)
A scope or even a LED+resistor across the A,'A and B,'B lines from the encoder and the same lines to the 7I33 should help trace where the counts are lost
By scope you mean a real one and not HAL scope right?
I suspect the drive is not forwarding its encoder information correctly
I just dont understand why im not loosing counts durring motion or when im e-stopped
Deadzone bug in their encoder output?
emcrules: can you setup the drive without encoder input?
not sure will have to read the manual some more
Since its a slow creep, you could monitor the A.B encoder lines with HALScope (you need to find which GPIO bits they are on)
and see what they do (if you see no change in the DRO I expect they are doing nothing)
The one thing i did notive in hal meter was that the encoder velo did change when this happend but the counts did not
Well if the velocity changes there must be some counts
Thats what i was thinking at the time. I was wondering if ther was some deadband setting or filter that caused emc or the 7143 to ignore them
Theres a deadband for the PID but not the DRO
I have it set currently to .000002
Probably have to look at what the drive is supplying as quadrature, HALscope should help here at least at slow speeds
I've seen an encoder lose counts in just one direction before. it was a grounding problem on the encoder wires
if you messed with the screw you could feel it jump - if you looked at the raw encoder counts, it would jump 4 counts at once
if i leave it alone it bounces between -43619 to -43620 and the if i twits the screw it will jump to -43624 and the back to -43620 or -43619 if i keep doing this i can turn my screw constanly in one direction while the DRO always reads the same
I've seen noise generate false counts as well but in this situation the drive sees real counts that the 7I33/7I43 doesn't
thats what leads me to believe that the drive is not forwarding the encoder info correctly
what bounces, the display on your drive?
no 7i43 raw encoder counts in hal meter
ithe drive count operate as expected
I guess I would verify that the RS-422 connections are correct (2 LEDS will work here)
and then check the quadrature with HALScope
will do. God this is anoying!!!!
anyone made an MPG out of cheap rotary encoders? (like http://www.seeedstudio.com/depot/rotary-encoder-with-switch-p-667.html?cPath=119_121
I think it's been done
these are usually very low cycles per rev (like 16)
they are mechanical so they can have a noisy signal and probably wear out relatively fast
yeah, I hooked one up to a uC and it was incredibly noisy
you can work around it with RC filters etc (and quadrature is somewhat forgiving)
but -- real optical jogwheels don't cost that much, and how many will you really need?
more like completely unusable than just noisy. I don't think I ever got it anywhere near reliable with software debouncing
cost of crappy encoder + cost of two pizzas = cost of real jog wheel
just 1 that I can think of, but I have some already
cradek: my thoughts as well... the 'real' ones are not all that expensive. why bother with cheap stuff like that?
yeah, or jsut do the joypad
well - I've successfully used those for uC projects with no filtering
poll the inputs (don't generate interrupts for god's sake) and do correct quadrature decoding
it works fine
I'll try that... with interrupts, I could sometimes get 1 per detent, but sometimes -10 to 50
yeah don't do any edge sensing on those noisy edges
I tried stealing one of my son's xbox joypads, but they seem to only use the USB for charging
while andy is not here and won't be angry about discussion on user channel :)
yeah, he can always bitch when reading the log ;-)
as a workaround for 'on_pin_change' you may create togglebutton, set it not active and add handler to toggled singal
i was thinking about adding GObject wrappers to HAL
so it'll be possible to add signals to them
I see the workaround working; however, that implies any halpin of interest actually connects to a particular hal widget
now what the hell is a GObject ;-)
just joking; reading gobject doc..
goobject is base of Gtk
it's some type of pure-C classes
pretty verbose but working
every GLib based program more or less uses gobjects
psha: gobject docs.. holy cow, this isnt for the faint-hearted
for hal gobjects we don't need even 1/1000 of glib power :)
I guess what I'm going to start with is an HalObserver class which gets me a callback on pin change with new and old value; that could be replaced with your mechanism once done
hang for a while, i'll see if it's possible to add signals in pure python, not in bindings
yes, it's possible
psha: I'd love to understand what you just said ;-)
i'll push gladevcp-glib branch in a minute
mhaberler: branch gladevcp-glib
it's just scetch
code is quite dirty now but i think as first stage it's ok
Psha hello... Just one question. Why I can attach HAL_led on ubuntu 10.04 but doesn't work on hardy.
some errors in console?
I think yes. I just power up hardy to pass that to you.
and DRO works on 10.04 but not on hardy :( too
[08:43:18] <Bonn1> http://pastebin.com/afHw8hXK
... config file..
if I remove few lines of LED then works
issue is same as in camview-emc a while ago -- old gtk.gdk.Color object has no *_float values...
I hope :D
the next (DRO) seems to be more problematic.
Bonny: you have to set colors in glade
Bonn1: first, set ON color for Led
gtk from hard don't know how to translate color names to values
[09:11:03] <Bonn1> http://pastebin.com/Y6R5eUhV
[09:11:40] <Bonn1> http://pastebin.com/JybkM32U
error and config file.
and pull fixes from this branch
psha: fighting with git here...
I understand that gices me a value-changed handler on a widget
what I'm unclear: how do I monitor a pin which isnt connected to a widget? ok, invisible widget is a possibility
mhaberler: if you wrap pin into GPin it will be updated automaticaly
value-changed is not on the widget, it's on GPin
which is small wrapper around Pin object
I had phone so thiss took little longer
good, i'll merge it to main gladevcp branch
maybe you'll check Bar widget too?
hm, no, it won't :)
too many backporting...
psha: any idea why stock .gitignore has 'lib' ignored :-/ ?
yes, historicaly that was place like 'bin' where stuff was moved during compilation :)
but cmorley choose lib/ as place to start gladevcp
[09:41:59] <Bonn1> http://imagebin.ca/view/pUM04out.html
guess that needs to go..
Bonn1: nice :)
psha It works.. I just put some gadgets and check.
it'll be in master on next merge
not to many backorting?
not progressbar :) but HAL Bar
[09:44:24] <psha> http://www.linuxcnc.org/component/option,com_kunena/Itemid,20/func,view/catid,22/id,4656/limit,6/limitstart,12/lang,english/
there are not other bar at all
hmm seems that I need to update something on 10.04 too
it won't work on hardy :(
same issue as with Led but in larger scale
Ok I don't need it at this time :)
But what we can do with DRO?
I very like to have it one.
.. on hardy
i'll take a look on one now...
i have ~10-15 minutes for it so if i'll get what's wrong fast it'll be fixed :)
how I can help?
when I install camunits-plugins-emc on 10.04 the dro came up but not such package for hardy
hm there is no camunits-plugins-emc at all :)
i think i've forgot to build it :)
how to reforgot that ? :D
i'm asking build system to build it but with no success till
think no :)
nobody can help me with my own build system :) since i'm only author of it :)
Then just to send you good wish to you have success.
hopefully that helps :D
Bonn1: you have 2.3?
heh :) i don't believe that there is binary compatiblity between 2.3 and 2.5
so it's better to compile it by hand
instructions are simple
I need custom type of stepgen and I belive is it only on 2.5.0
[09:58:07] <psha> http://psha.org.ru/cgit/psha/emc-camunits
you need this repo
full list of build deps are here
[09:58:52] <psha> http://psha.org.ru/cgit/psha/emc-camunits/tree/debian/control#n4
libcamunits-gtk6-dev is not needed though
sorry psha but I don't know what to do with all that...
apt-get install debhelper cdbs libcamunits6-dev libglib2.0-dev libglut3-dev
theese libs are needed to compile halio plugin
then run 'make' and place halio.so in /usr/lib/camunits
ok that's more understandble for me.. Just need to add SUDO
i always strip it
hmm make doesn't work.. where to execute?
make: *** No targets specified and no makefile found. Stop.
[10:04:25] <Bonn1> http://pastebin.com/k0r3THQs
psha: I declare stupidity on value-changed.. how do I use it?
pin = GPin(comp.new_pin('pin-name', ...))
just like ordinar widget
you have to do it when you are creating pins
before hal_ready I guess
halcomp.ready() I mean
mhaberler: yes, before
after it is not possible to create pins
ok, get it.. almost there..
update thread will be fixed later
have it working thanks. I guess this will cover it.
so my idea would be to detect 'hal' function in foo.py and call it after widgets are setup (and their hal pins) and before halcomp.ready so user may add pin and handler. Makes sense?
not hal i think but somethink with 'init' in it's name
need to pass at least halcomp to it
halcom and builder/glade object
no need in passing it's type
if you want you awlays may deside with isinstance(obj, gtk.Builder)
be back later
cu, busy anyway in packaging your stuff...
for all. How to correct add oneshot module?!?
loadrt oneshot names=forOn
addf forOn base-thread that not work
does it give you an error?
psha: looks like it starts to become useful! - see my repo gladevcp-halpinhooks
mhaberler: spinbutton.connect('value-changed', spinbutton_changed)
this connects you to spinbutton signal
mhaberler: 50 comp['hal_led2'] = not comp['hal_led2']
this will stop working when checks for in/out pins will be enabled in hal module :)
hal_led2 is 'input' pin, you are not pertmitted to change its value
but now theese checks are skipped :)
trying to build toolchanger gldaevcp panel now, see if that works
'true' way is to connect this pin to some out pin
but for testing purposes it's ok :)
yep.. just trying my way around parameter land
also think besides value-changed some additional signals will be useful
i think that value-up/value-down will be nice
psha I didn't have succes with DRO. so here is my attempt. (not finished / good) http://imagebin.ca/view/FcJx3hsE.html
and hal file http://pastebin.com/5f1kCabH
Seems that I grab wrong pin as I got wrong coordinate reading. If G43 ia active then that difference should be substitudet from value in DRO tab. What pin DRO grab?!? ... And sadly label can handle just s32 so I got not fractions.
any idea for inprowment?
label may handle s32/float/u32
change 'pin type' property in glade
I saw that, will experiment
there is tooltip explaining what 1/2/3 means
i've left that untouched
for absolute/relative axis position - inspect halui.axis* pins
there is something useful
will do. This looks very promising!
btw what was wrong with halio.so?
I use halui.axis.0.pos-relative
i see nw
and it don't respect G5*?
wel no with G43!
G43 not G5*
*(halui_data->axis_pos_relative) = emcStatus->motion.traj.actualPosition.tran.x - emcStatus->task.g5x_offset.tran.x - emcStatus->task.g92_offset.tran.x;
i don't know what is G43 :)
with this question you'd better go to somebody more confident :)
btw what is on the screenshot? 'flower' like?
But probably you can help me when now I goot to many decimals... Probably text template (%s) should be changet
will limit it to 3 frac digits after
On picture is just cuttout of gear as I need to make new gear for my laminator.
%.03f will show zeres for missing digits
Can I insert X= in front of that?
its arbitrary string
only requirment that python expression 'template_string % value' have to be correct
you may run 'ipython' and try to give it different strings
curious - why would I use a HAL Table over a GtkTable? just to be able to activated/deactivate all widgets in it?
aha, that explains why so much of my attempts were greyed out ;-)
you are not first who was wondering about this :)
My reading seems to be out for halui.axis.0.pos-relative value..
can be that added directly within hal or I need to add ADD component?
i think add comp is needed
* psha[work] looks at own nick
it seem that i'm at work!
SteveStallings is now known as steves_logging
only to inform that on hardy the croshair works only in XOR mode.
... color pickup and rdawing with that color doesn't work.
heh, again _float values :)
i'll fix it in the evening
the poorMan DRO works now with correct offsets.
btw what was problems with halio.so?
it refuses to build?
and here (crosshair) I have idea to have different aperture (ie circle, square, track with angle)
I downloaded what you say but then can't do make as I get error
I probably use wrong commandline :(
that's all you need
in what dir?!
in cloned emc-camunits repository
psha I executed apt-get install debhelper cdbs libcamunits6-dev libglib2.0-dev libglut3-dev
and where now to do make?@?
git clone git://psha.org.ru/psha/emc-camunits
[13:17:57] <Bonn1> http://pastebin.com/5ijF5ZYp
-Ipath-to-emc-headers to CFLAGS
-Lpath-to-emc-libs to LDFLAGS
you are compiling against RIP environment
? is that commandline ?!?
so need theese paths
just edit Makefile
on line 4 add another -I flag with path to emc headers
on line 14 add -L flags with path to libs
something -I$(EMC2_HOME)/include on line 4
I feel so stupid... Where that libraries are? (what paths?)
and -L$(EMC2_HOME)/lib on 14
to dumb! Aborting....
heh, wait a bit, i'll add that to makefile
[13:33:50] <Bonn1> http://pastebin.com/8uiaZs5z
you have not sourced emc-environment
[13:37:05] <Bonn1> http://pastebin.com/UN3yBAp2
what's gcc version?
how to ask?
try replacing ULAPI with RTAPI in makefile
seems pretty same
i'll check this in the evening
i have no emc2 sources here
[13:41:53] <Bonn1> http://pastebin.com/ktXURmwg
do the job. LD
I had some work too.
emcrules: Is it possible that you have set HostMot2s quadrature counter into up/down mode? that would cause this kind of behavior
psha: toolchanger Axis tab in repo. Not using all capabilities yet, unelegant but working
mhaberler: i'll take a look when return home
sure. by then I gess I will have the restarting TC which permits jogging during tc - needs to talk to emc
ries_ is now known as ries
... it's related to you :-)
i'm getting email notifications :)
yes latest 3 posts
I realy want that slider somewhere outside.
for selecting aperture is okay to be burried.
Just compare image sizes on forum when slider are oppened and when not.
It's self explainable why I want slider outside :D
eating too much space
maybe it's better to raise window with extra controls, not in tabs?
But I think can't be done with HAL sliders...
i've tried ;)
it's too complicated to correctly connect pins
problem is same as in gladevcp
Maybe vertical sliders (left or right of image)
In most cases there ase some free space left.
But two slider's in space where (current) my DRO is the best I think. Maybe only lost one text line.
maybe i'll look again into pins 2 controls...
I have something like http://imagebin.org/125327
psha I must go now.
Is it wierd coding in the wrong alphabet?
yea, missed that russian layout was selected
It must be like using APL would be for me.
or perl :)
Perl at least uses latin characters
all greek for me!
andypugh: if perl program is using latin chars then it's either by mistake or this prog was not written by perl programmer
I might be confusing perl with python.
The perl examples I can see on Wikipedia seem to be written in the latin alphabet. What am I missing?
Whereas this is the Game of Life written in APL: http://upload.wikimedia.org/wikipedia/en/f/ff/LifeInApl.gif
andypugh: for me perl is using too many non-alphanumeric chars. it's not rare when line consists only of $_*~=... chars
any UK'ers around?
[20:18:12] <alex_joni> http://www.reghardware.com/2010/11/29/compo_ipad_cases_nov_2010/
Im an apple free zone :)
I'm in theUK and a dedicated Apple Fanboi :-)
jepler- is now known as jepler
There is a very interesting question on the forum. A chap is finding that his parallel port gives a lower voltage with Linux/EMC than with Win2k and Mach3. To the extent that his charge-pump circuit won't energise.
He is quite clear that it is all the same hardware throughout, only the software is different, and he doesn't sound like an idiot. Any ideas?
my first idea is that even non-idiots are mistaken sometimes
it seems pretty hard to believe
I'm no parport expert, but I don't think software can affect whether pullups are enabled, etc.
different charge pump rate
yes the rate could of course be different
He's measuring voltages, trying pull-ups, seems to have a scope and is checking waveforms (and the frequencies are the same on the scope)
different port setup - EPP may have different drive strength than SPP
and a different output type as well, since EPP is bidirectional (on the data lines)
andypugh, mark space different too it rate same
His quote is "with Windows2000 and Mach3 the Charge Pump on pin 14 is a rather gittery but functional 0.3 to 5V wave form at about 10kHz BUT with the same PC and same BIOS settings and interface hardware the parallel port wave form is a perfect 10kh (no noticeable jitter at all) but 0.5V to 3.6V and so the charge pump circuit does not quite run.
what swp said about drive strength and mode
So, he is impressed by the EMC2 signal quality and step smoothness, but having to frig his charge-pump
Glad to hear my suggestion of trying different modes in the BIOS wasn't entirely daft.
Linux or EMC may set the port to EPP mode (regardless of the BIOS settings)
Can the driver over-rule the BIOS?
basically anything might set it to anything
in addition, bioses can be buggy
is there a way in Linux to tell what the port is set to?
I'm thinking that emc sets EPP mode whenever possible, at least after the D510MO issues recently discussed
are those issues with the D510MO resolved?
I believe so, by always turning on EPP, regardless of whether Linux/BIOS report the port as capable of it :)
I'm building a backup for the Discovery with one... and dang they are small
yeah, mini-ITX is a nice little platform
I got a case just for it and it holds the motherboard, a 5 1/4 drive and a 3 1/2 drive and not much else...
dvd and harddrive
3 1/2 internal drive
from wikipedia about different parallel port modes "All modes use TTL voltage logic levels,"
They are all meant to, but feeble voltages are quite common. It is almost like manufacturers don't take the p-port seriously any more.
Sorry, that sounded pompous. "From what I have been reading on the internet recently, it appears that feeble voltages are quite common"
hello andypugh, you have a question?
Yes, why do you pose as a woman when one has never yet been sighted on this forum?
a giiiiirl here?!
Well, there was that Isreali a year or so ago, making a servo with a felt-tip en and card for the encoder. (and it worked)
JT thanks for the help yesterday I found my problem and fixed it