Current turning capabilities status

More
13 years 1 month ago #38473 by emcPT
An update,

Most hardware now arrived.
We were able to move the large AC motors in both X and Z axis - that was quite a long work - and we started to work on the A axis for the tool change. We can also use the hydraulic pump to clamp and unclamp the turret. Also most limit switches are working.
Max speed is conservative as the servo drives are underrated to the servos, but we can still use the lathe at 6 m/min (236 inches/min).
We must now figure out to home the axis using the index, but we will use the available documentation.

Thank you all that helped reaching here.

Please Log in to join the conversation.

More
13 years 1 month ago #38477 by BigJohnT

HOME_USE_INDEX = NO - If the encoder used for this axis has an index pulse, and the motion card has provision for this signal you may set it to yes. When it is yes, it will affect the kind of home pattern used.


www.linuxcnc.org/docs/html/config/ini_co...d_sub_axis_section_a

www.linuxcnc.org/docs/html/config/ini_homing.html

JT

Please Log in to join the conversation.

More
13 years 1 month ago #38486 by andypugh

BigJohnT wrote:

HOME_USE_INDEX = NO - If the encoder used for this axis has an index pulse, and the motion card has provision for this signal you may set it to yes. When it is yes, it will affect the kind of home pattern used.

www.linuxcnc.org/docs/html/config/ini_co...d_sub_axis_section_a
www.linuxcnc.org/docs/html/config/ini_homing.htmlT


I got a bit confused by index-homing on my milling machine.

The behaviour was that after the initial search move the Z was moving up to index, then a rapid back down onto the limit switch, and tripping an error.

I set the home offset to 0 and that worked a lot better. I suspect that you always want the HOME_OFFSET to be zero if you are index homing and the latch is in the opposite direction to search. (and having search and latch in the same direction when homing to index doesn't really seem to make mush sense)

Please Log in to join the conversation.

More
13 years 1 month ago #38490 by BigJohnT

andypugh wrote: I got a bit confused by index-homing on my milling machine.

The behavior was that after the initial search move the Z was moving up to index, then a rapid back down onto the limit switch, and tripping an error.

I set the home offset to 0 and that worked a lot better. I suspect that you always want the HOME_OFFSET to be zero if you are index homing and the latch is in the opposite direction to search. (and having search and latch in the same direction when homing to index doesn't really seem to make much sense)


I have latch and search in the same direction on my Hardinge with no ill effects. Home offset is 0 and home use index is yes.

JT

Please Log in to join the conversation.

More
13 years 1 month ago #38941 by jtc
Hi. this is the current status of the machine:







the tool change component is almost done, but I have a problem. sometimes when I start linuxcnc the a-pos-feedback starts with the value of -89.9 and the turret goes 1/4 turn. what can cause this problem? this value is an input on the toolchange component so I suppose that is nothing on the programming side. this is the code how it is connected:
Code:
#******************* # AXIS A #******************* setp pid.a.Pgain [AXIS_3]P setp pid.a.Igain [AXIS_3]I setp pid.a.Dgain [AXIS_3]D setp pid.a.bias [AXIS_3]BIAS setp pid.a.FF0 [AXIS_3]FF0 setp pid.a.FF1 [AXIS_3]FF1 setp pid.a.FF2 [AXIS_3]FF2 setp pid.a.deadband [AXIS_3]DEADBAND setp pid.a.maxoutput [AXIS_3]MAX_OUTPUT net a-index-enable <=> pid.a.index-enable net x-enable => pid.a.enable net a-output => pid.a.output net a-vel-fb => pid.a.command-deriv net a-pos-fb => pid.a.feedback # ---PWM Generator signals/setup--- setp hm2_5i20.0.pwmgen.00.output-type 3 setp hm2_5i20.0.pwmgen.00.scale [AXIS_3]OUTPUT_SCALE net a-output => hm2_5i20.0.pwmgen.00.value #net a-pos-cmd axis.1.motor-pos-cmd setp hm2_5i20.0.pwmgen.00.enable true # ---Encoder feedback signals/setup--- setp hm2_5i20.0.encoder.00.counter-mode 0 setp hm2_5i20.0.encoder.00.filter 1 setp hm2_5i20.0.encoder.00.index-invert 0 setp hm2_5i20.0.encoder.00.index-mask 0 setp hm2_5i20.0.encoder.00.index-mask-invert 0 setp hm2_5i20.0.encoder.00.scale [AXIS_3]ENCODER_SCALE net a-pos-fb <= hm2_5i20.0.encoder.00.position net a-vel-fb <= hm2_5i20.0.encoder.00.velocity ########net a-pos-fb => axis.1.motor-pos-fb ########net a-index-enable axis.1.index-enable <=> hm2_5i20.0.encoder.00.index-enable net a-pos-rawcounts <= hm2_5i20.0.encoder.00.rawcounts ################################################################################################## ################################################################################################## ##################### TOOL CHANGE ########################### loadrt tc addf tc servo-thread net tool-change iocontrol.0.tool-change => tc.toolchange net tool-changed iocontrol.0.tool-changed <= tc.toolchanged net tool-number iocontrol.0.tool-prep-number => tc.toolnumber #net tool-oldnumber iocontrol.0.tool-number => tc.currenttoolnumber net a-pos-fb => tc.position-fb net a-pos-cmd tc.position-cmd => pid.a.command net tool-prepare-loopback iocontrol.0.tool-prepare => iocontrol.0.tool-prepared net ToolSensor1 hm2_5i20.0.gpio.033.in => tc.sensor1 net ToolSensor2 hm2_5i20.0.gpio.035.in => tc.sensor2 net ToolSensor3 hm2_5i20.0.gpio.037.in => tc.sensor3 net ToolSensor4 hm2_5i20.0.gpio.039.in => tc.sensor4 ############################################################

other problem that I have is that I cant reduce the speed of the A axis. I tried change parameters on the ini file but has no effect on the speed.
Code:
#******************** # Axis A #******************** [AXIS_3] TYPE = angular HOME = 0.0 FERROR = 30 MIN_FERROR = 30 #MAX_VELOCITY = 104.167 MAX_VELOCITY =0 #MAX_ACCELERATION = 1562.5 MAX_ACCELERATION =0 P = 1 I = 0 D = 0.0 FF0 = 0.0 FF1 = 0.0 FF2 = 0.0 BIAS = 0.0 DEADBAND = 0.0 MAX_OUTPUT = 10.0 ENCODER_SCALE = 728.177777778 OUTPUT_SCALE = 10.0 MIN_LIMIT = -1500 MAX_LIMIT = 300 HOME_OFFSET = 0.0

velocity and acceleration are 0, but it don't change the speed.

tnks,
João

Please Log in to join the conversation.

More
13 years 1 month ago #38943 by PCW
Does the -89.9 degree initial offset happen with initial linuxcnc launch or when switching machine-off/machine-on?


There do seem to be cases where the initial encoder count is not cleared prior to homing the axis

I would try removing this (unused) line:

net a-pos-rawcounts <= hm2_5i20.0.encoder.00.rawcounts

to see if the problems is resolved

Please Log in to join the conversation.

More
13 years 1 month ago #38986 by jtc

PCW wrote: Does the -89.9 degree initial offset happen with initial linuxcnc launch or when switching machine-off/machine-on?


There do seem to be cases where the initial encoder count is not cleared prior to homing the axis

I would try removing this (unused) line:

net a-pos-rawcounts <= hm2_5i20.0.encoder.00.rawcounts

to see if the problems is resolved


It happens when launch linuxcnc. I did what you told it looks fine now. initial value is 0 like it should to be.

now only have the velocity problem on the A axis. I don't have any idea how to resolve this.

tnks

João

Please Log in to join the conversation.

More
13 years 1 month ago #38987 by andypugh

jtc wrote: now only have the velocity problem on the A axis. I don't have any idea how to resolve this.


The axis velocity settings are used by the motion planner for G-code moves etc. What you are calling an A-axis isn't really an Axis at all, it is a separate motor controlled by your toolchanger component.

The A-position commands come direct from the tc component. You either need to add some rate-limiting inside the component or pass the output of the component through the limit3 HAL component:

www.linuxcnc.org/docs/html/man/man9/limit3.9.html

Please Log in to join the conversation.

More
13 years 1 week ago #40039 by jtc
Thanks andypugh, we just limit the speed and acelaration on the drive. for now just works fine.

So, the current status of the machine is: we have almost the hardware needed to complete the machine and at this point we have to start testing seriously linuxcnc capabilities.

for now there are 2 problems. in the axis gui, the plans is to invert the X axis, not inverted by geometry (already make this in Z axis), but on the screen itself. now the X axis is below then the centrer line(Z axis), but we want that in the upper part, just above Z axis.

the second problem, for example, we have a holder that use more than one tip, like this:

Attachment not found




is this possible? how can it be defined in the tool table? can have more that one tip per pocket?

Tnks,

João

Please Log in to join the conversation.

More
13 years 1 week ago #40040 by andypugh

jtc wrote: for now there are 2 problems. in the axis gui, the plans is to invert the X axis, not inverted by geometry (already make this in Z axis), but on the screen itself. now the X axis is below then the centrer line(Z axis), but we want that in the upper part, just above Z axis.

In this thread: www.linuxcnc.org/emc2/index.php/english/...tools?start=10#24959 it was discovered that using coordinate-system rotation works well.

can have more that one tip per pocket?

Unfortunately not. Which is rather irritating. The next version of the tool table will support this. (If my changes are accepted). But this is likely to take quite a long time.

A workaround may be to configure your toolchanger in such a way that pockets (or tools) 001, 101, 201, 301 etc are all interpreted as being in the same place on the tool carousel.

I have a feeling that, contrary to what the docs say, the "Pocket number" in the current tool table can not be > 56. However I _think_ that it is possible to configure a tool-changer to act on the value on the tool-number request rather than the pocket number request.

Please Log in to join the conversation.

Time to create page: 0.075 seconds
Powered by Kunena Forum