salvarane: You may need to "touch-off" your system so that the working coordinate system matches your workpiece the axis limits
motor 3 Amps , 4 leads | step angle 1.8 | phase resistance 0.9 | phase inductance = 2.5 | holding torque (Oz-in) = 175
When you send G0 X10 what does the emc2 screen say the X position is?
If you go to X20 is that 25 or 3o in actual real-world space? ie is the scale wrong, or is there a 5mm offset?
theorb is now known as theorbtwo
when I run G0 X10 into grafica window emc2 , the axis X it is moved from 0 to 254
G0 X20 is that ~25 !
in the real-world space
In the gcode I not inserting 5mm offset
that's the ratio of inches to mm
G21 X10 should move to 10 mm, G20X10 should move to 254mm (10 inches)
the ratio is mm
G21 X10 and G20X10 moved to 254mm
that makes no sense
sorry G21 X10 moved 10mm into grafical window emc2
ok, that makes more sense
when I load the gcode into emc2 the graphica window it makes to see me the metric system , but the execution execed of some millimeter
on piece of iron
If it is a fixed offset it might just not be touched-off. You can set you coordinate system zero anywher you want.
yes I fixed the home XYZ and set O machine , Ha have moreover set into steper_mm file conf "SCALE = -200 ", it is the pssible problem
for the X and Z axis
-200 might be correct, that is one way to make the axes move in the correct directions
Fixing home XYZ is not the same as setting the G54 origin to the correct place on your workpiece. The G-code probably assumes that X0 Y0 Z0 is the top left front corner of the material.
salvarane, can you post your ini file on http://pastebin.ca
yes, wait please
But, anyway, it is far too late here for me to be any help. Goodnight all.
[00:30:44] <salvarane> http://pastebin.ca/1952275
salvarane: can you go a G1 X10 then a G1 X20 and see how far it moves in the real world in between those two points?
sorry but I not connect the machine in this moment but when I proved this options the movment exceed of the 5 mm
for the X = 140 the X to result is 155 mm and the Y = 65 to result 72 mm
in this moment the G1 X10 and G1 X20 to move the axis X 10mm and 20mm to positive moviment
on grafical indow emc2
of course. if you program a move to some point, the display had better match that value when the machine stops moving
there is no scale problem internally (unless you're programming in mm and viewing inches, or the other way around)
when the on-screen motion doesn't match the actual machine movement, the problem is that either the scale is set wrong, or the machine is losing steps, or both
in order to resolve the problem I must increase the "SCALE = -200"
it sounds like you need to decrease it
the controller SCALE= -100
is possible, a function for calculate this value
figure out what the scale should be from your motors, drive settings, gear ratio, and screw pitch ...
screw pitch is 4mm and grear ratio is 1:2
if you don't know some of that information, then you can move the machine to some position, then command a move of say 100mm and measure the real motion
from that, you can calculate the necessary scale
for example I send the G0 X100 to emc and I measure in real-world the effective movement of the axis ?
if received 115mm from G0 X100 whath value I set the Variable SCALE
I think new scale = old scale * expected movement / actual movement
SCALE = (200 * 100 / 115)
this mode to set the SCALE coordinate , it must make for all the axis
do the test on every axis. the numbers may not be the same
I thank you
make sure you move to the "starting position" and then measure another move in the same direction - that eliminates backlash from the measurements
I must measure more than, the same axis in this instance to calculate the average
domani provo a introdurre alcuni parametri dalla equazione che mi ha dato
tomorrow I try to introduce some parameters from the equation that it has given to me, gazie of its attendance
thanks <SWPadnos> of its attendance, good night, tomorrow the beacon to know
good luck with it
would I need to find the servos that suit this controller? http://qurl.org/251
I don't know if it is for AC or DC motors.
at $180 I think I will just buy it and slowly find motors that work on it :P Sounds cheap to me. They claim it to be in good shape, 8 out of 10.
wow , lots of analog on those boards
elmo40: did you find a data sheet for those?
web search gave me links looping back to that eBay page
and Servo Dynamics is WAY to broad of a term ;)
you'd at least need a wiring diagram and a pin-out for the connectors
might be by http://www.servodynamics.com/
but no longer a current part number
that ebay seller has lots of crap without any part numbers or product details
they have a brushless servo motor from Parker http://dnsmp.com/itemphotos/ebay/optiplex/091610_0878.jpg
but seems like Everything is an 8 out of 10 :P
Hello All... I currently own a pluto-p card and wish to link this to a 3-4 axis mill with stepper drives so as to improve step. Can one also use the PWM out from EMC to control spindle motor speed via an additional Paraport card as I do not beleive the Pluto-p card has enough output functionality to drive 3-4 axis + spindle control? Please correct me if I am wrong.
if you don't get an answer here for the pluto-p you might try the mailing list
there also is some topics on the forum about pluto
If I recall the developer of the pluto is on the mailing list
It's more an EMC thing really. As I need to know if EMC can control the Pluto-P on say one para port while also generating a PWM for the spindle speed on another para port... if you get my drift ;-)
ah, yes I'm almost sure you can generate a PWM on the second parallel port, but I know nothing of how the pluto works
Thats great news... Im ok with the pluto-P (Got to find those notes) have been playing with it for a couple years on and off but only just now thinking of using it in anger.
you should be able to use a "dumb" parallel port and a pluto at the same time
it is insane to mix servo and steppers? a friend of mine has a servo driven mill and wants to build a rotary with steppers. I don't know how he will drive it, though :P
don't rotary's have a steering wheel :P
elmo42: I plan on doing the exact same thing
I cant see any issues
I'm using mesa hardware
I bounded this idea about around back... I have part built a rotary table (still in progress) using a stepper and a planetary gear drive (http://www.motioncontrolproducts.com/gearbox/planetary-gearbox.php?cat=6)
if one was to put an encoder on the output of the planetary drive could this be used to negate backlash?
the problem is the motor will build up speed as it moves through the backlash
then it will overshoot out the other side
just because there is an encoder doesn't mean it is now accurate ;)
plus, the encoder would be very difficult to put on the output. I don't see how it would work.
I see where your both comming from.... just an idea... thanks for the advice :-)
How does a backlash of <20 arcmin standup for a homebrew rotary table?
well, an arcminute is 1/60 of a degree.
so, that would be less then a 1/3 of a degree backlash
can you live with that?
Is that adequate for cutting gears or do I need a higher resolution?
all depends on what else you have in the system.
it's about 1/1000 of a turn, if that helps
that is plenty. as for backlash it shouldn't be much of an issue if you move properly.
put another way, it limits your accuracy to about 0.1%
I think I can live with that :-)
I currently soldering a ribbon cable to a 25way D for the pluto-p.... Dam awkward...
you can get million point encoders for ~$100-200 on ebay
that is a lot of points
here is an inexpensive one http://qurl.org/451
Incremental, mind you.
I like this! 42V Fanuc servo http://cgi.ebay.com/ws/eBayISAPI.dll?ViewItem&item=120624984398
only 1Nm, though, but Fanuc. Great name.
Is there any plans for EMC to use USB comms to cards such as the 7i43 in the future?
Is there a technical reason behind it?
if someone can make it work well enough, without losing too much functionality, then a patch would certainly be reviewed for inclusion
[14:09:52] <SWPadnos> http://wiki.linuxcnc.org/cgi-bin/emcinfo.pl?Emc2HardwareDesign
SWPadnos: Thanks for the link... It just seem that more and more system are produced without the para port these days. USB / Ethernet support would secure compatibility going forward. Just my opinion of course!
it's true. if only it would work
SWPadnos: if ethernet so bad? it seem that it have very high troughput so it may satisfy timings
What issues have been seen with usb to this point?
throughput and latency aren't the same thing
USB can work for a subset of the features of emc2, but since we prefer to have all features available regardless of your hardware choice, we haven't pursued any (realtime) USB hardware yet
SWPadnos: i know... i mean that gigabit ethernet works with pretty low latency
sure, only a few microseconds for a minimum size packet, but then there's the protocol stack and other software in the way
RTNet could work, but there hasn't been a concerted effort to make a HAL driver yet
or hardware for that matter
i thought that ip is not that havy in term of 'protocol stack'?
at least in one segment
when microseconds count, everything matters
unfortunately, we can't run HAL threads off interrupts (other than the timer)
so there are (potential) issues regarding when a command packet is created vs. when it's sent, when the reply comes back, when HAL sees that data, and then when a new command gets sent
RTNet should eliminate a lot of that, but of course then you need a network card that's supported by RTNet drivers (DEC tulip, Realtek, some Intel I think)
I can see the issues now that you put it like that ...
oh, I haven't even started with the real issues yet :)
:-) ... Finally just finished soldering the Ribon and 25way for the Pluto-P ...
but since you're already convinced, I can just save the time and stop now ;)
:) thanks for the explanation :)
:-) ... I'm off to the workshop to test the pluto-p card .... Yes thanks SWPadnos :-)
still i think it's a matter of time when ethernet will be used more widely in such environment
at least now it has very strong position in HPC (high perfomance computing)
I don't mean to make it sound impossible. it's just a lot of work to support something that doesn't really help much, and actually limits things in other ways
(like limiting features like rigid tapping or other spindle-synchronized motion)
and already killed such interconnects as sci and partially mirinet
is it friday finally?
SWPadnos: rtusb seem to be pretty dead?
seems to be
SWPadnos: btw is it possible to send hal pin changes over network?
I think someone made a program to do that, but I don't remember for sure
or only nml commands
it's non-realtime though, like userspace HAL components
i understand, but using control pc for camera processing is not good too
it shouldn't matter. emc isn't much of a resource hog, and the camera system shouldn't affect RT latency (if it does, you probably have other problems too)
camera creates large data stream through boards i/o
if it has a crappy driver that screws up RT latency, then a separate PC is a good idea :)
you shouldn't need a multi-megapixel camera, something in the 1024x768 or 1280x1024 range should be good enough
i'm not confident in camera drivers so i'll better suspect worse cases :)
sure, test it out and see what happens
hm... uvc over uspip is not rock solid solution...
is there something inherent in emc that puts a lower limit servo cycle frequency?
I can get movement at 200 Hz but it locks up at 100 Hz
no response from gui
200 may be a resonance because it growls ... but then again it may just that ragged.
have you also slowed the task cycle and/or GUI refresh cycles?
no ..they are at 0.01 IIRC
same as servo - coincidence? :)
could be ..
I'll try slower gui and see what happens
that may be the more important one
probably a good idea.
I don't see why it should lock up, but I can see it performing strangely
the strangely happened at 8KHz ... would work for a while but then parts of the gui just quit working
pretty solid at 4KHz with a 1200 MHz Duron
I'll play and get back to you .... thanks.
I read that twice and don't know what you guys are talking about
apparently, dave had trouble when he made the servo cycle 100 Hz or slower
man please may you describe me in brief how is servo controlled?
if it's not hard to explain to dummy :)
even our k&t had a 250hz servo loop. ;)
how stepper is controlled i understand
[16:05:43] <SWPadnos> http://en.wikipedia.org/wiki/PID_controller
i'll have to correct my question
I thought that servo control is performed via PWM signal which sets servos position in some range (e.g 0-180 degrees)
those are RC servos, not servo motors
(Radio Control - often used in airplanes or that kind of thing)
May you throw a link to servo motors?
Yea, only kind of 'servo' things i seen :)
you can google for one, like I would :)
so i'll do
servo motor control ...
It seem that servo motor is 'motor + encoder' pair and even type of motor is not that important?
actuator and feedback, yes
Sorry for dumb questions but I realy have no background in this :)
could be a resolver or tachometer
or in a rc servo - potentiometer(sp)
or atleast that is what they used to be.
so for example actuator may be stepper motor so we have to send standard pulses to it?
steppers suck as servos, for the most part
if you look at PID control, it relies on the motor actually having extra torque available when needed, which steppers don't
steppers have decreasing torque as they spin faster, so you can never use any "reserve" to catch up if the motor falls behind
once the motor has fallen behind, it's already lost
SWPadnos: "steppers have decreasing torque as they spin faster" Is the inverse true for servos?
and cards like mesa just implement this pid control in fpga so emc don't need to bother with it?
Jymmm, no, servos have constant torque regardless of speed
psha, no, emc does the PID
Isn't the mes and the like to be able to get the commands out of the computer in a timely manner?
Isn't the mesa and the like to be able to get the commands out of the computer in a timely manner?
they relieve the CPU from the task of generating a PWM or other analog control signal, and also from counting fast encoder feedback
I thought it was to bypass the speed limitation of Paraport (for one)
yeah, by relieving the CPU of the burden of generating PWM and counting encoders ...
SWPadnos: I thought that ALL paraport had some 2ms limitation
SWPadnos: thanks a lot for explanation :)
(0.5-1 microseconds per output)
SWPadnos: something about 2 cycle
Ok, other than limited I/O, what other limitation does paraport have?
(it was something todo with timing iirc)
About parport, what mode I need to set in bios for onboard parport?
Btw who is responsible for ubuntu packages of EMC2?
Jymmm: the mesa hardware counts the encoders and generates the pwm. With the printer port - emc is doing it.
Jymmm: i meat emc2 packages for ubuntu :)
skunkworks: No, no, I was speaking of the "limitation" of paraport... something todo with timing of cycle counts (can't send faster that x in two cycles or something like that)
so - in effect emc has to bit-bang the printer port to genterate pwm - while with the mesa hardware - emc just sends it the value it wants the pwm to be at. emc says 50% and the mesa outputs a 50%dc pwm signal
it is more of a limit of emc and computer latency
if your latency is 10us - you will never output a signal faster than twice that. (I may be winging it here)
Jymmm, there are (at least) two limitations: first is absolute speed (not much of a limitation) - the CPU has to do two OUT instructions to make one step pulse (set high, set low), and those OUT instructions take between 0.5 and 1.2 microseconds each, during which time the CPU is halted (losing millions of cycles, at the GHz speeds of today)
At least i've got clean build of emc2 for control pc...
the second limitation is latency. the CPU can't control the timing of any step better than the latency measurement. so if you want a step at time t=11.5 uS, and your latency is 15 uS, you'll either get one at t=0 or t=15, but not at t=11.5
psha, standard or EPP. EPP if you want to use the data pins as inputs instead of outptus
SWPadnos: That was it the 2 cycle (hi/lo) of <2ms limitation I couldn't recall the details. See, I'm not crazy (much)
microseconds, not milliseconds
and yes, you are much crazy :)
back to work for me. have fun
Ok fine, uS. and no more than you on the crazy part =)
hey swp ....?
Thanks <SWPadnos> I have resolved the problem's SCALE on my cnc router
Hello All... I am seeing an issue with pluto step... when I make an x and y (up arrow) move everything is ok but if I make a y down arrow move I get an joint2 following error. Additionaly I notice that the cone int the graphic display in axis moves slightly up it also move the Z axis up by a tiny amount before the joint2 following error!
The release I am using is dev 2.5.0~pre
seems like they are still alive. Latest release was April 2010. http://sourceforge.net/projects/rtnet/
but my question is... what do I connect on the other side of the cable? sure, I have a NIC that is supported but where do I go from there?
to connect with more then one device I would need a switch or router... that would add latency issues.
I wonder who uses this.
elmo42: ist quite standart in industrial automation
many SPS-Systems use ethernet
You use a HUB, not a switch or router.
there was even a post on the mailinglist about such a setup..
[18:09:41] <cpresser> http://wiki.linuxcnc.org/cgi-bin/emcinfo.pl?Etherlab
sure they use ethernet, but RTNet?
a switch would be OK wouldn't it? there's no delay in those?
switches do store-and-forward, they have internal buffers.
so they do have a slight delay.
a switch looks into the packet, looks up the MAC adress and forwards the packet to the targetport
hubs also have a delay of 92 bit times
for 10/100 anyway (I don't know if there are gigabit hubs)
Hello All.... I posted this recently but have just moved back to my comfy warm office and am not sure if there was any replies... Hello All... I am seeing an issue with pluto step... when I make an x and y (up arrow) move everything is ok but if I make a y down arrow move I get an joint2 following error. Additionaly I notice that the cone int the graphic display in axis moves slightly up it...
...also move the Z axis up by a tiny amount before the joint2 following error!
Paragon39: what version of emc are you running?
I downloaded the latest branch 2.5.0-pre and run it inplace . I have older trunks on the system also.
cpresser ah I thought your description of a switch was a router, and a switch was like a managed crossbar
so - x is the only axis that works?
I saw this same issue in back in 2007 but for the life of me I cant remenber how I fixed it. The problem appears that axis1 down interferes with axis2
Sorry no .... X and Z work as they should.... Y works in one direction (up key) the Y down key makes an up move on the Z axis. Both physicaly and is also displayed in the backplot as an Z up move. The the axis2 following error occurs.
oh - that sounds like a config issue
Yes from memory it was... I think I had to change a c file and recompile but jeez my memory. The only other possibility is that 2.5.x is taking configs from the previous branches but I used the ". scripts/emc-enviroment" ... ?
paste your ini-file into a pastebin
we take a look at t, and see if we can help :)
EtherCAT has nice approach to switch/hub problem :)
psha: its a chain?
not strict chain but looks like
cpresser: Thanks for the offer... This happens on the default pluto_step_inch.ini
it may be tree if device has several outputs
they state that datagram is processed 'online' while retransmitting further
so all data is seen by all devices
like a DMX-bus or similar
Since the communication utilizes a logical (and thanks to full-duplex Fast Ethernet also physical) ring structure
The communication with 100 servo axes is also extremely fast: every 100µs, all axes are provided with command values and control data and report their actual position and status.
thats like 10kHz, thats quite fast, yes :)
Paragon39: I don't see anything wrong with the pluto_pinout.hal in git
cpresser: it's from ethercat cite so they took only best results :)
they want to sell their stuff.. its quite expensive
but its intended for industrial automation, so its okay :)
Me neither the pinouts appear to be ok I think it's in the driver c code... I maybe getting interference from the older trees so I will try it with a live cd and see how that looks.
maybe sometimes retransmission chips for ethercat will be cheep so it would be usefull in hobby...
Paragon39: jepler would be the one to ask - I am sure he is the one that helped you last time. (if there was a bug - but I would thing that would have been fixed in trunk atleast)
skunkworks: Jepler did help last time. Ive just moved all the old versions of EMC out so I am only left with 2.5.0-pre but am still geting the same problem. Is there away to debug?
that is above my knowledge base :)
NP thanks for help skunkworks :-)
Paragon39: perhaps hal-scope? at least it shows you what happens inside emc :)
cpresser: Good point I forgot about that :-)
Paragon39: do you have some negative scale values for any of the axis's?
I dont think its that skunkworks as the Y down move actually shows as an Z move in backplot... It changes the Z value number in the backplot, as well as actually making a physical move on the Z axis of the mil.
Hal Scope also shows a trigger on the "axis.2.motor-pos-cmd" when the Y down key is pressed it should be triggeringthe "axis.1.motor-pos-cmd"
can you post your hal files? that doesn't make sense
skunkworks: there the default ones from the 2.5.0-pre release
OK where shall I post them?
skunkworks: A frog walks into a bar...
[19:40:08] <Jymmm> http://codepad.org
[19:46:21] <Paragon39> http://pastebin.ca/1952814
[19:47:38] <Paragon39> http://pastebin.ca/1952815
the hal file
can you command a move in y with mdi
OK same issue... Home all axis's... g0 y1 worked fine then y0 moved the z up by .400 then joint 2 following error.
odd. I do not know
As I said I had this issue around 2007 when I first started playing with the pluto-p. Im sure I made some code chage and then recompiled but for the life of me I cant remeber. I just found a very old post that I posted on the matter back in 2007 http://www.cnczone.com/forums/emc_linux_enhanced_machine_control/45250-emc_pluto-step_z_y_axis_interference_bug.html
I was looking though the irc history for something also - and found none.
Really... can you search on username posts?
I thinking it could be the pluto-step.write
I would assume it was the pluto_step.comp
hehehe ... looking at it now
[20:03:28] <skunkworks> http://www.google.com/#sclient=psy&hl=en&q=%22pluto_step%22+site:http%3A%2F%2Fwww.linuxcnc.org%2Firc%2Firc.freenode.net%3A6667%2F&aq=f&aqi=&aql=&oq=&gs_rfai=&pbx=1&fp=6b964bcc94c5a63
I don't think the search works perfectly
Thanks for that link skunkworks ... I cant find anything relating to my username and pluto. I must have used a different username back then 2007
I have found it to be hit or miss
Oh I did a search for paragon but only got results for around 2008
Found something ... http://www.linuxcnc.org/irc/irc.freenode.net:6667/emc/2007-10-15.txt
then searched for paragon time 11:28:49
hey there :-)
Still no Joy :-(
seb_kuzminsky: does hostmot2 supported mesa cards listed somewhere?
[22:48] <bootnecklad> Some misspellings are quite fun
[22:48] <bootnecklad> they add unique...
[22:48] <bootnecklad> ...character
micges: first paragraph of the hostmot2 manpage ;-)
I could certinlee do with spill chicker in me irc client ....
or do you mean daughter cards?
I mean 3x20 with motherboard card
and so on
ah oops, the 3x20 is missing from the list
a list of supported daughter cards is a good idea
sorry , I proved to configure jpypad for emc2 2.4.0 version , I insert into at end of the file standard_pinout.hal this string
loadusr hal_input -KRAL /dev/input/js0 Vendor=0x0079 Product=0x0011
when I rung emc on the terminal appear this message
No input device matching '/dev/input/js0' was found (1 devices checked)
I read this wiki http://wiki.linuxcnc.org/emcinfo.pl?Using_A_Joypad_To_Jog_And_Control_Spindle_Speeds
But this wiki contain much of the option that for me not is necessary
somebody can indicate to me a guide doc minimal for configure the joypad for emc 2.4 version please
[22:32:27] <Connor> http://wiki.linuxcnc.org/cgi-bin/emcinfo.pl?Simple_Remote_Pendant
That's what I use. Works just fine.
this configure mode it is ok with emc 2.4 version ?
That's what I'm running.
sorry you have patience ; I have this joypad " idVendor 0x0079 DragonRise Inc."
in place of " Dual " on this string "loadusr -W hal_input -KRAL Dual" what I must put please
What's it's name?
and find the Name= line for the pad.
use just one word from that.
the name is "USB Gamepad " on line name = I can set with one of the two USB or Gamepad it is correctly
jepler: Are you available at the moment?
I followed the guide Simple_Remote_Pendant but the joypad not move the axis
the emc run without errors
hold one of the buttons (A,B,C) while using the joystick.
in the graphical windows on emc2 in it not looked to move no axis
machine has to be on, you press a button on the gamepad, and move the stick.. you may have to redefine your axis or somrthing.
sorry but in this moment I have the machine in an other place
is possible understand , if the joypad work withouth with the machine is connect on pc
sorry, is possible understand , if the joypad work withouth that the machine is connect on pc
I'm not sure I understand.. but.. you have to have the power button in the EMC software toggled to on and set the screen to manual (as If you were going to JOG using the GUI), other than that.. I think you might need to go in and make sure you have your buttons and axis defined correctly.
ok the emc is ready to work all the button are ok I have fixed the home for axis
okay, so, push the 1,2, or 3 button on the game pad, and while pushing it.. move the left joystick.
I don't see any movement
okay, so, follow the debug info in that wiki to see the inputs for you joystick...
this is the location just http://wiki.linuxcnc.org/cgi-bin/emcinfo.pl?HereIsHowToCheck
into the window halcmd: loadusr halmeter not appear the Gamepad.axis and other options
ok I have understand use the halmeter for configure all pin into configure file .hal