Current turning capabilities status

More
04 Sep 2013 23:34 - 04 Sep 2013 23:39 #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.
Last edit: 04 Sep 2013 23:39 by emcPT.

Please Log in or Create an account to join the conversation.

More
05 Sep 2013 03:48 #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 or Create an account to join the conversation.

More
05 Sep 2013 19:00 #38486 by andypugh

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 or Create an account to join the conversation.

More
05 Sep 2013 20:59 - 05 Sep 2013 21:00 #38490 by BigJohnT

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
Last edit: 05 Sep 2013 21:00 by BigJohnT.

Please Log in or Create an account to join the conversation.

More
17 Sep 2013 22:49 - 17 Sep 2013 23:02 #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:
#*******************
#  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.
#********************
# 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
Last edit: 17 Sep 2013 23:02 by jtc.

Please Log in or Create an account to join the conversation.

More
17 Sep 2013 23:20 #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 or Create an account to join the conversation.

More
18 Sep 2013 19:32 #38986 by jtc

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 or Create an account to join the conversation.

More
18 Sep 2013 20:00 #38987 by andypugh

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 or Create an account to join the conversation.

More
18 Oct 2013 19:44 #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:




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

Tnks,

João
Attachments:

Please Log in or Create an account to join the conversation.

More
18 Oct 2013 20:29 #40040 by andypugh

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 or Create an account to join the conversation.

Moderators: piasdom
Time to create page: 0.131 seconds
Powered by Kunena Forum