Yaskawa usarem motors, Amc be25a20 making it work?

More
7 years 5 months ago - 7 years 5 months ago #132480 by PCW
The BLDC component is designed specifically to do this kind of control, you just use
two 120 degree separated phase outputs instead of all three that the component provides.
Only two phases are needed since the SX25A20A drive synthesizes the missing phase
( it's just the difference between the two supplied analog phase signals )

The BLDC component provides a variety of ways to establish rotor synchronization
including Hall signals, encoder index, magnetic align2ment, and absolute encpders
Last edit: 7 years 5 months ago by PCW. Reason: format a little better
The following user(s) said Thank You: JR1050

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

More
7 years 5 months ago #132481 by JR1050
Thank you PCW, now what hardware and how exactly would the two phase outputs be directed thru a 7i77 or 7133??

I can see a single drive signal from the output of either board, I can see physically wiring aout0 for ref A and aout1 for ref B, using two sets of drive signal per axis, but connecting the analog outs to the BLDC is gonna require some HAL voodoo in here some where along the line .

Standard analog is easy, step and direction is easy, this is bit more complicated..

Maybe a short hal example?

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

More
7 years 5 months ago - 7 years 5 months ago #132482 by PCW
Here's a very rough beginning of a quadrature/index setup...

loadrt bldc cfg=qi,qi,qi
loadrt pid num_chan=3

addf bldc.0 servo-thread
addf bldc.1 servo-thread
addf bldc.2 servo-thread
addf pid.0.do-pid-calcs servo-thread
addf pid.1.do-pid-calcs servo-thread
addf pid.2.do-pid-calcs servo-thread


net X_PhaseA bldc.0.A-value => hm2_5i25.0.7i77.0.1.analogout0
net X_PhaseB bldc.0.B-value => hm2_5i25.0.7i77.0.1.analogout1
net Y_PhaseA bldc.0.A-value => hm2_5i25.0.7i77.0.1.analogout2
net Y_PhaseB bldc.0.B-value => hm2_5i25.0.7i77.0.1.analogout3
net Z_PhaseA bldc.0.A-value => hm2_5i25.0.7i77.0.1.analogout4
net Z_PhaseB bldc.0.B-value => hm2_5i25.0.7i77.0.1.analogout5

net X_drive pid.0.out => bldc.0.value
net Y_drive pid.1.out => bldc.1.value
net Z_drive pid.2.out => bldc.2.value

net X_raw_count hm2_5i25.0.encoder.00.rawcounts => bldc.0.rawcounts
net Y_raw_count hm2_5i25.0.encoder.01.rawcounts => bldc.1.rawcounts
net Z_raw_count hm2_5i25.0.encoder.02.rawcounts => bldc.2.rawcounts
Last edit: 7 years 5 months ago by PCW.
The following user(s) said Thank You: JR1050

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

More
7 years 5 months ago - 7 years 5 months ago #132533 by Todd Zuercher

JR1050 wrote: Ok, when I think analog drive I think single +/- 10v signal. It seems this drive was brought up by Todd before in this thread.

forum.linuxcnc.org/27-driver-boards/2121...ions?limit=6&start=0


I ended up going a different direction with that machine and bought some Teknic SST-3100 servo drives, that had built in power supplies and took care of the sinusoidal commutation internally.
Last edit: 7 years 5 months ago by Todd Zuercher.

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

Moderators: PCW, jmelson
Time to create page: 0.182 seconds
Powered by Kunena Forum