Current turning capabilities status
19 Feb 2013 20:21 #30317
by emcPT
Replied by emcPT on topic Current turning capabilities status
My hardware is arriving. I got the VFD today and I installed it.
The motor runs only for a brief period (also with noise) of time and the inverter gets in error mode. For sure a tuning issue that I will try to work out. All this controlled manually = no linuxcnc yet.
I also got a touchscreen that in Windows works great, lets see if I can use it in Linux.
I will keep updating my progress.
The motor runs only for a brief period (also with noise) of time and the inverter gets in error mode. For sure a tuning issue that I will try to work out. All this controlled manually = no linuxcnc yet.
I also got a touchscreen that in Windows works great, lets see if I can use it in Linux.
I will keep updating my progress.
Please Log in or Create an account to join the conversation.
19 Feb 2013 23:30 #30323
by BigJohnT
Replied by BigJohnT on topic Current turning capabilities status
You might want to start a new topic about your touch screen adventures...
John
John
Please Log in or Create an account to join the conversation.
20 Feb 2013 03:26 #30331
by emcPT
Replied by emcPT on topic Current turning capabilities status
Today was a very bad day as I ended up in a non usable motor. This motor could not be used with the VFD.
I tested a lot of settings (vector control, real sensor less control) and no stable control was possible. In the best configuration possible instantly 34A were used by the motor, exceeding the VFD rated current, so the VFD tripped very fast.
I also used the auto tuning capability of the inverter (and the drive was able to finish the auto tuning), but the end configuration was useless.
Motor is probably constructed in a special proprietary way.
My only path is now to use a standard induction motor as I first planned. It will be more safe/straight forward to use. Also I can skip the large transformer as everything will be 400V.
Anyone wants a good new (well, as new as I tested it) Mitsubishi A720 inverter? This series is the best in the Mitsubishi class.
I tested a lot of settings (vector control, real sensor less control) and no stable control was possible. In the best configuration possible instantly 34A were used by the motor, exceeding the VFD rated current, so the VFD tripped very fast.
I also used the auto tuning capability of the inverter (and the drive was able to finish the auto tuning), but the end configuration was useless.
Motor is probably constructed in a special proprietary way.
My only path is now to use a standard induction motor as I first planned. It will be more safe/straight forward to use. Also I can skip the large transformer as everything will be 400V.
Anyone wants a good new (well, as new as I tested it) Mitsubishi A720 inverter? This series is the best in the Mitsubishi class.
Please Log in or Create an account to join the conversation.
20 Feb 2013 15:30 #30351
by emcPT
Replied by emcPT on topic Current turning capabilities status
After a very long night I am able to run the motor
Not fully tunned, but I can go to high speeds at will with a nice motor noise. As I am writing this the motor is at 90Hz, 9A and the speed looks to me quite high.
At lower speeds, the amps rise a lot, but still under the capacity of the inverter (that still is not aproprieted for this motor).
It needs tuning for lower speeds as the noise is high.
I will continue to try so that after I can connect to the mesa boards, were I probably need help from the forum.
Not fully tunned, but I can go to high speeds at will with a nice motor noise. As I am writing this the motor is at 90Hz, 9A and the speed looks to me quite high.
At lower speeds, the amps rise a lot, but still under the capacity of the inverter (that still is not aproprieted for this motor).
It needs tuning for lower speeds as the noise is high.
I will continue to try so that after I can connect to the mesa boards, were I probably need help from the forum.
The following user(s) said Thank You: spesmek
Please Log in or Create an account to join the conversation.
20 Feb 2013 21:22 - 20 Feb 2013 21:31 #30366
by emcPT
Replied by emcPT on topic Current turning capabilities status
I have tuned the motor as best I could. I can run it from 1Hz up to 100Hz (maybe more but I did not tested).
Now comes the hard part for me as all linuxcnc is new to me. I don't want to damage the mesa hardware so it is better for me to test.
I want to control the spindle using the 7i33 and 7i37 that I have. I read a lot, but I am afraid of doing some mess here, so I need to confirm a few things.
The part in the hal file that have the spindle connected:
*********************************************************************************************************
#*******************
# SPINDLE S
#*******************
# ---PWM Generator signals/setup---
setp hm2_5i20.0.pwmgen.02.output-type 1
setp hm2_5i20.0.pwmgen.02.scale [SPINDLE_9]OUTPUT_SCALE
net spindle-vel-cmd => hm2_5i20.0.pwmgen.02.value
net machine-is-enabled => hm2_5i20.0.pwmgen.02.enable
# ---Encoder feedback signals/setup---
setp hm2_5i20.0.encoder.02.counter-mode 0
setp hm2_5i20.0.encoder.02.filter 1
setp hm2_5i20.0.encoder.02.index-invert 0
setp hm2_5i20.0.encoder.02.index-mask 0
setp hm2_5i20.0.encoder.02.index-mask-invert 0
setp hm2_5i20.0.encoder.02.scale [SPINDLE_9]ENCODER_SCALE
net spindle-revs <= hm2_5i20.0.encoder.02.position
net spindle-vel-fb <= hm2_5i20.0.encoder.02.velocity
net spindle-index-enable <=> hm2_5i20.0.encoder.02.index-enable
# ---setup spindle control signals---
net spindle-vel-cmd-rps <= motion.spindle-speed-out-rps
net spindle-vel-cmd <= motion.spindle-speed-out
net spindle-on <= motion.spindle-on
net spindle-cw <= motion.spindle-forward
net spindle-ccw <= motion.spindle-reverse
net spindle-brake <= motion.spindle-brake
net spindle-revs => motion.spindle-revs
net spindle-at-speed => motion.spindle-at-speed
net spindle-vel-fb => motion.spindle-speed-in
net spindle-index-enable <=> motion.spindle-index-enable
# ---Setup spindle at speed signals---
sets spindle-at-speed true
*********************************************************************************************************
So the spindle generator is located in 2 and the spindle encoder should also be connected to nº2 of the 7i33. I think I got this right.
Now the output signals to start the spindle. From the file it seams that motion.spindle-on will start net spindle-on (or the reverse?!), so were this is related with the hardware part? In my case I need that spindle on is ON when spindle reverse or spindle forward gets on. Lets say that I want to the forward signal be the output nº1 in my 7i37 and spindle reverse output nº2.
I am very sorry if this was asked or covered before.
I also added images from the machine, with the inverter installed and also the full hal file.
Thank you
Now comes the hard part for me as all linuxcnc is new to me. I don't want to damage the mesa hardware so it is better for me to test.
I want to control the spindle using the 7i33 and 7i37 that I have. I read a lot, but I am afraid of doing some mess here, so I need to confirm a few things.
The part in the hal file that have the spindle connected:
*********************************************************************************************************
#*******************
# SPINDLE S
#*******************
# ---PWM Generator signals/setup---
setp hm2_5i20.0.pwmgen.02.output-type 1
setp hm2_5i20.0.pwmgen.02.scale [SPINDLE_9]OUTPUT_SCALE
net spindle-vel-cmd => hm2_5i20.0.pwmgen.02.value
net machine-is-enabled => hm2_5i20.0.pwmgen.02.enable
# ---Encoder feedback signals/setup---
setp hm2_5i20.0.encoder.02.counter-mode 0
setp hm2_5i20.0.encoder.02.filter 1
setp hm2_5i20.0.encoder.02.index-invert 0
setp hm2_5i20.0.encoder.02.index-mask 0
setp hm2_5i20.0.encoder.02.index-mask-invert 0
setp hm2_5i20.0.encoder.02.scale [SPINDLE_9]ENCODER_SCALE
net spindle-revs <= hm2_5i20.0.encoder.02.position
net spindle-vel-fb <= hm2_5i20.0.encoder.02.velocity
net spindle-index-enable <=> hm2_5i20.0.encoder.02.index-enable
# ---setup spindle control signals---
net spindle-vel-cmd-rps <= motion.spindle-speed-out-rps
net spindle-vel-cmd <= motion.spindle-speed-out
net spindle-on <= motion.spindle-on
net spindle-cw <= motion.spindle-forward
net spindle-ccw <= motion.spindle-reverse
net spindle-brake <= motion.spindle-brake
net spindle-revs => motion.spindle-revs
net spindle-at-speed => motion.spindle-at-speed
net spindle-vel-fb => motion.spindle-speed-in
net spindle-index-enable <=> motion.spindle-index-enable
# ---Setup spindle at speed signals---
sets spindle-at-speed true
*********************************************************************************************************
So the spindle generator is located in 2 and the spindle encoder should also be connected to nº2 of the 7i33. I think I got this right.
Now the output signals to start the spindle. From the file it seams that motion.spindle-on will start net spindle-on (or the reverse?!), so were this is related with the hardware part? In my case I need that spindle on is ON when spindle reverse or spindle forward gets on. Lets say that I want to the forward signal be the output nº1 in my 7i37 and spindle reverse output nº2.
I am very sorry if this was asked or covered before.
I also added images from the machine, with the inverter installed and also the full hal file.
Thank you
Last edit: 20 Feb 2013 21:31 by emcPT.
Please Log in or Create an account to join the conversation.
21 Feb 2013 15:32 #30398
by cmorley
Replied by cmorley on topic Current turning capabilities status
spindle-on is true when the spindle is to rotate (either forward or backward)
spindle-forward is true when the spindle is to turn forward
spindle-reverse is true when the spindle is to turn in reverese
so when the spindle is turning forward, spindle on and spindle fwd are true.
You can use either or both if you need to.
I see that you have not actually selected output pins for these signals.
You need to select the output pins on the mesa page in PNCconf.
depending on which connector you have the 7i37 plugged into, you will select either tab 3 or 4 in pncconf.
if tab 3 looks like output pins number 40 and 41 (in pncconf) correspond to 33/34 (OBIT 0) and 35/36 (OBIT 1) on the 7i37.
select spindle > spindle on and spindle > spindle forward
Then I would confirm these pins in an open loop test if you can.
Chris M
spindle-forward is true when the spindle is to turn forward
spindle-reverse is true when the spindle is to turn in reverese
so when the spindle is turning forward, spindle on and spindle fwd are true.
You can use either or both if you need to.
I see that you have not actually selected output pins for these signals.
You need to select the output pins on the mesa page in PNCconf.
depending on which connector you have the 7i37 plugged into, you will select either tab 3 or 4 in pncconf.
if tab 3 looks like output pins number 40 and 41 (in pncconf) correspond to 33/34 (OBIT 0) and 35/36 (OBIT 1) on the 7i37.
select spindle > spindle on and spindle > spindle forward
Then I would confirm these pins in an open loop test if you can.
Chris M
The following user(s) said Thank You: emcPT
Please Log in or Create an account to join the conversation.
21 Feb 2013 16:18 #30400
by emcPT
Replied by emcPT on topic Current turning capabilities status
Thank you,
Can't I/should not I configure manually the output pins rather than use the Pncconfig?
There will be a situation that PNCconfig will not be able to help me, and when I reach there I should be able to deal myself with the configuration, or in your opinion this is too complicated for now and not advisable?
Can't I/should not I configure manually the output pins rather than use the Pncconfig?
There will be a situation that PNCconfig will not be able to help me, and when I reach there I should be able to deal myself with the configuration, or in your opinion this is too complicated for now and not advisable?
Please Log in or Create an account to join the conversation.
21 Feb 2013 20:32 #30409
by BigJohnT
Replied by BigJohnT on topic Current turning capabilities status
It is normal once you get a working configuration with a wizard to have to hand edit the files to get custom things done. Usually you just add to the custom.hal file if you have one.
John
John
Please Log in or Create an account to join the conversation.
22 Feb 2013 11:36 #30438
by cmorley
Replied by cmorley on topic Current turning capabilities status
In the beginning it's common to make little changes often.
Invert this input, move that output, adjust this encoder scale...
This is where PNCconf is really good. You don't need to know every file to look at or the complete syntax of HAL, INI and gladeVCP .
I often leave PNCconf running after saving (just because it takes a long time to load), and run linuxcnc to test then change something in PNCconf, save....
If you use the open loop test you can check for obvious problems like servo run-away do to the encoder and analog not not agreeing on direction.
You can add gladevcp options and get an idea how that's done.
When you get to toolchangers, gear changes, odd optional equipment, you need to learn more about linuxcnc and edit by hand.
So keep things easy until you get the basic machine running then go ahead and add things bit by bit to add capability.
Somewhere along the way PNCconf will be holding you back and you will know enough to start making changes without it.
With care, Pncconf can be used with complicated custom HAL files, it just takes a little planning.
If it were me I would use PNCconf to connect as many as the output and inputs as I could.
You can even make custom signal names to connect to a custom HAl file.
Chris M
Invert this input, move that output, adjust this encoder scale...
This is where PNCconf is really good. You don't need to know every file to look at or the complete syntax of HAL, INI and gladeVCP .
I often leave PNCconf running after saving (just because it takes a long time to load), and run linuxcnc to test then change something in PNCconf, save....
If you use the open loop test you can check for obvious problems like servo run-away do to the encoder and analog not not agreeing on direction.
You can add gladevcp options and get an idea how that's done.
When you get to toolchangers, gear changes, odd optional equipment, you need to learn more about linuxcnc and edit by hand.
So keep things easy until you get the basic machine running then go ahead and add things bit by bit to add capability.
Somewhere along the way PNCconf will be holding you back and you will know enough to start making changes without it.
With care, Pncconf can be used with complicated custom HAL files, it just takes a little planning.
If it were me I would use PNCconf to connect as many as the output and inputs as I could.
You can even make custom signal names to connect to a custom HAl file.
Chris M
Please Log in or Create an account to join the conversation.
26 Feb 2013 03:55 #30579
by emcPT
Replied by emcPT on topic Current turning capabilities status
Things are getting to make sense and I can have the spindle working, set the speed and get the speed back from the encoder that I installed on the spindle.
At this point I correctly have spindle feedback, but I am running a open loop, as the spindle feedback is not being used for control the analog signal, but only for observe the speed at a determined instant.
Now I would like to control the output of my pwmgen.03 output based on the current spindle speed.
My .hal that have the spindle current control is below.
The example that I saw was: wiki.linuxcnc.org/cgi-bin/wiki.pl?Closed...pindle_Speed_Control but it is for the parallel port, and I will probably not get it right for my current set up.
Can some one give me a help here? Maybe an example using a 5i20 + 3i33 would be enough for me to start.
Thank you
#*******************
# SPINDLE S
#*******************
# ---PWM Generator signals/setup---
setp hm2_5i20.0.pwmgen.03.output-type 1
setp hm2_5i20.0.pwmgen.03.scale [SPINDLE_9]OUTPUT_SCALE
# ---I added this to make the output 0-10V
loadrt abs count=2
addf abs.0 servo-thread # analog output
addf abs.1 servo-thread # spindle speed display
net spindle-vel-cmd => abs.0.in
net absolute-spindle-vel-cmd <= abs.0.out
net absolute-spindle-vel-cmd => hm2_5i20.0.pwmgen.03.value
net machine-is-enabled => hm2_5i20.0.pwmgen.03.enable
# ---Encoder feedback signals/setup---
setp hm2_5i20.0.encoder.03.counter-mode 0
setp hm2_5i20.0.encoder.03.filter 1
setp hm2_5i20.0.encoder.03.index-invert 0
setp hm2_5i20.0.encoder.03.index-mask 0
setp hm2_5i20.0.encoder.03.index-mask-invert 0
setp hm2_5i20.0.encoder.03.scale [SPINDLE_9]ENCODER_SCALE
net spindle-revs <= hm2_5i20.0.encoder.03.position
net spindle-vel-fb <= hm2_5i20.0.encoder.03.velocity
net spindle-index-enable <=> hm2_5i20.0.encoder.03.index-enable
# ---setup spindle control signals---
net spindle-vel-cmd-rps <= motion.spindle-speed-out-rps
net spindle-vel-cmd <= motion.spindle-speed-out
net spindle-on <= motion.spindle-on
net spindle-cw <= motion.spindle-forward
net spindle-ccw <= motion.spindle-reverse
net spindle-brake <= motion.spindle-brake
net spindle-revs => motion.spindle-revs
net spindle-at-speed => motion.spindle-at-speed
net spindle-vel-fb => motion.spindle-speed-in
net spindle-index-enable <=> motion.spindle-index-enable
net spindle-vel-fb => abs.1.in
loadrt scale count=1
addf scale.0 servo-thread
setp scale.0.gain 60 # spindle fb*60 (rpm)
net absolute-spindle-vel-measured-per_second <= abs.1.out
net absolute-spindle-vel-measured-per_second => scale.0.in
net absolute-spindle-vel-measured <= scale.0.out
# ---Setup spindle at speed signals---
loadrt near
addf near.0 servo-thread
net spindle-vel-cmd-rps => near.0.in1 # commanded
net spindle-vel-fb => near.0.in2 # real
net spindle-at-speed motion.spindle-at-speed <= near.0.out
setp near.0.scale 1.2
At this point I correctly have spindle feedback, but I am running a open loop, as the spindle feedback is not being used for control the analog signal, but only for observe the speed at a determined instant.
Now I would like to control the output of my pwmgen.03 output based on the current spindle speed.
My .hal that have the spindle current control is below.
The example that I saw was: wiki.linuxcnc.org/cgi-bin/wiki.pl?Closed...pindle_Speed_Control but it is for the parallel port, and I will probably not get it right for my current set up.
Can some one give me a help here? Maybe an example using a 5i20 + 3i33 would be enough for me to start.
Thank you
#*******************
# SPINDLE S
#*******************
# ---PWM Generator signals/setup---
setp hm2_5i20.0.pwmgen.03.output-type 1
setp hm2_5i20.0.pwmgen.03.scale [SPINDLE_9]OUTPUT_SCALE
# ---I added this to make the output 0-10V
loadrt abs count=2
addf abs.0 servo-thread # analog output
addf abs.1 servo-thread # spindle speed display
net spindle-vel-cmd => abs.0.in
net absolute-spindle-vel-cmd <= abs.0.out
net absolute-spindle-vel-cmd => hm2_5i20.0.pwmgen.03.value
net machine-is-enabled => hm2_5i20.0.pwmgen.03.enable
# ---Encoder feedback signals/setup---
setp hm2_5i20.0.encoder.03.counter-mode 0
setp hm2_5i20.0.encoder.03.filter 1
setp hm2_5i20.0.encoder.03.index-invert 0
setp hm2_5i20.0.encoder.03.index-mask 0
setp hm2_5i20.0.encoder.03.index-mask-invert 0
setp hm2_5i20.0.encoder.03.scale [SPINDLE_9]ENCODER_SCALE
net spindle-revs <= hm2_5i20.0.encoder.03.position
net spindle-vel-fb <= hm2_5i20.0.encoder.03.velocity
net spindle-index-enable <=> hm2_5i20.0.encoder.03.index-enable
# ---setup spindle control signals---
net spindle-vel-cmd-rps <= motion.spindle-speed-out-rps
net spindle-vel-cmd <= motion.spindle-speed-out
net spindle-on <= motion.spindle-on
net spindle-cw <= motion.spindle-forward
net spindle-ccw <= motion.spindle-reverse
net spindle-brake <= motion.spindle-brake
net spindle-revs => motion.spindle-revs
net spindle-at-speed => motion.spindle-at-speed
net spindle-vel-fb => motion.spindle-speed-in
net spindle-index-enable <=> motion.spindle-index-enable
net spindle-vel-fb => abs.1.in
loadrt scale count=1
addf scale.0 servo-thread
setp scale.0.gain 60 # spindle fb*60 (rpm)
net absolute-spindle-vel-measured-per_second <= abs.1.out
net absolute-spindle-vel-measured-per_second => scale.0.in
net absolute-spindle-vel-measured <= scale.0.out
# ---Setup spindle at speed signals---
loadrt near
addf near.0 servo-thread
net spindle-vel-cmd-rps => near.0.in1 # commanded
net spindle-vel-fb => near.0.in2 # real
net spindle-at-speed motion.spindle-at-speed <= near.0.out
setp near.0.scale 1.2
Please Log in or Create an account to join the conversation.
Moderators: piasdom
Time to create page: 0.189 seconds