Hello Viesturs, I think that your "b)" approach is the more suitable, or may be, the one that is more alike to what I always think to do.
In my plans there's always the idea to use the C axis, as a rotary axis commanded by a servo motor for example, through a worm and gear reduction to always have the maximum torque with zero speed on the axis without using a very large motor that would be expensive. Since worm and gear wears because of mechanical friction, I would like to keep track of my C axis in the last rotary part, so that would be the spindle of the lathe. Here is when the problem comes in my imaginary machine, because with a worm and gear reduction I can get from the spindle 300 rpm more or less depending on my reduction, and more rpm's would need a high rpm servo motor wich is obviously more expensive. Then the idea is to change from one motor, to another with less reduction to achieve speeds that could reach 2500 or 3000 rpm suitable for variety of turning situations. But as I always end up thinking, it's a little tricky to do this using the feedback on the spindle to always keep track of it's position. May be with some experience in the field, and a little patience this could be done in hal, or changing something in the source code of emc, but I'm not an expert on programming so, this is far from my plans right now. By now, the plan is to make the machine work only with the worm and gear reduction and reach low turning velocity, since this idea of machine is for turning and milling cast crankshafts, and I wish this could be done sometime next year. But It would be awesome if it's not very tricky, to make emc do this. Thanks again! Leonardo. 2011/8/31 Viesturs Lācis <[email protected]> > 2011/8/31 Leonardo Marsaglia <[email protected]>: > > > > I would like to ask about this, because in my head I always think about > the > > complication with the tracking of the C axis when this one behaves like a > > spindle. What I don't picture very well, is, what would happen If I use > the > > spindle of a regular lathe (with the encoder mounted on it to track the > > position and velocity) between spindle mode and C axis mode. > > > > I mean, if I'm using it as a regular spindle in velocity mode, but then I > > want to change the process and do some milling using for example a clutch > or > > something to change between the two motors, I can't imagine how to avoid > the > > following error, since the encoder on the spindle would be my position > and > > velocity feedback. > > With 2 separate motors: if You put encoder on motor shaft or anywhere > else _before_ clutch or any other mechanism to engage one of the > motors with spindle, You will avoid the situation You mentioned about > generating following error. But I also think that this solution is > complicated on the hardware side. > > I think that using one motor for both - spindle and C axis - is _a > lot_ simplier on hardware side - You do not need clutches or something > similar. Maybe only some gearbox to reduce speed and increase torque. > 2 things would be necessary: > 1) some HAL or ClassicLadder logic to switch the motor from pins of a > certain joint to pins of spindle and vice versa. > 2) custom HAL component / kinematics module to deal the C position, > when in spindle mode. I see several possibilities: > a) disconnect A and B signals, when in spindle mode, use only index > pulse to determine spindle velocity; > disconnect index, when C axis mode and use only A and B signals to > determine position; > > This way, when A and B are disconnected, they would not change > calculated encoder position and thus no following error would be > triggered. > The thing is that precise homing without index should be done and some > kind of rehoming with a probing move, when switching from spindle to C > axis. > > b) introduce some kind of offset, which is calculated, when in spindle > mode, between actual spindle position and required C axis position. > Basically it would accumulate all the changes in spindle position, > when not in C axis mode. I think this will require also customizing > kinematics module to add/subtract the offset value. > I think that this solution is better, because EMC would _always_ know > the actual spindle position and can any time switch to C axis mode. > Even when not in the same place, where switched to spindle mode - the > difference can be routed through limit3 component to avoid instant > following error and let EMC to move C to that new position. > > > Note: this is just my view on a possible solution after 10 minutes of > thinking and zero experience with lathes :)) > > Viesturs > > > ------------------------------------------------------------------------------ > Special Offer -- Download ArcSight Logger for FREE! > Finally, a world-class log management solution at an even better > price-free! And you'll get a free "Love Thy Logs" t-shirt when you > download Logger. Secure your free ArcSight Logger TODAY! > http://p.sf.net/sfu/arcsisghtdev2dev > _______________________________________________ > Emc-users mailing list > [email protected] > https://lists.sourceforge.net/lists/listinfo/emc-users > ------------------------------------------------------------------------------ Special Offer -- Download ArcSight Logger for FREE! Finally, a world-class log management solution at an even better price-free! And you'll get a free "Love Thy Logs" t-shirt when you download Logger. Secure your free ArcSight Logger TODAY! http://p.sf.net/sfu/arcsisghtdev2dev _______________________________________________ Emc-users mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/emc-users
