Delta Tau GEO BRICK LV 用户手册
Turbo PMAC User Manual
102
Setting Up Turbo PMAC-Based Commutation and/or Current Loop
Purpose
The purpose of this set of tests is to confirm the basic operation of the hardware circuits on PMAC, in the
drive, and in the motor and to check the proper interrelationships. Specifically:
drive, and in the motor and to check the proper interrelationships. Specifically:
•
Confirm operation of encoder inputs and decode
•
Confirm operation of PWM outputs
•
Confirm operation of ADC inputs
•
Confirm correlation between PWM outputs and ADC inputs
•
Determine proper current loop polarity
•
Confirm commutation cycle size
•
Determine proper commutation polarity
Preparation
First define the M-variables for the encoder counter, the 3 PWM output registers, the amplifier-enable
output bit, and the two ADC input registers. Using the suggested definitions for Motor 1, utilizing Servo
IC 0, Channel 1, we have:
output bit, and the two ADC input registers. Using the suggested definitions for Motor 1, utilizing Servo
IC 0, Channel 1, we have:
M101->X:$078001,0,24,S
; Channel 1 Encoder position register
M102->Y:$078002,8,16,S
; Channel 1 PWM Phase A command value
M104->Y:$078003,8,16,S
; Channel 1 PWM Phase B command value
M107->Y:$078004,8,16,S
; Channel 1 PWM Phase C command value
M105->Y:$078005,8,16,S
; Channel 1 Phase A ADC input value
M106->Y:$078006,8,16,S
; Channel 1 Phase B ADC input value
M114->X:$078005,14
; Channel 1 Amp Enable command bit
Note that the ADC values are declared as 16-bit variables even though typically 12-bit ADCs are used;
this puts the scaling of the variable in the same units as Ixx69, Ixx57, Ixx29, and Ixx79.
this puts the scaling of the variable in the same units as Ixx69, Ixx57, Ixx29, and Ixx79.
It will be useful to monitor these values in the Watch window of the Executive program, so add the
variable names to the Watch window, causing the program to repeatedly query Turbo PMAC for the
values which it will display. The hardware can then be exercised with on-line commands issued through
the Terminal window.
To prepare Turbo PMAC for these tests:
variable names to the Watch window, causing the program to repeatedly query Turbo PMAC for the
values which it will display. The hardware can then be exercised with on-line commands issued through
the Terminal window.
To prepare Turbo PMAC for these tests:
•
Set I100 to 0 to deactivate the motor.
•
Set I101 to 0 to disable commutation (This allows for manual use of these registers.)
•
Make sure that I7000, I7004, I7016, and I7017 are set up properly to provide the PWM signals needed.
•
If the Amplifier Enable bit is 1, set it to zero with the command M114=0.
•
Set Ixx00 and Ixx01 for all other motors to zero.
Position Feedback and Polarity Test
If the PWM command values observed in the Watch window are not zero, set them to zero with the
command
command
M102=0 M104=0 M107=0
The motor should move freely by hand now. As the motor is turned, monitor the M101 value in the
Watch window. Look for the following:
Watch window. Look for the following:
•
It should change as the motor is moved.
•
It should count up in one direction and count down in the other direction.
•
It should provide the expected number of counts in one revolution or linear distance increment.
•
As the motor is returned repeatedly to a reference position, it should report (approximately) the same
position value each time.
position value each time.
If these things do not happen, check the encoder/resolver operation, its connection to Turbo PMAC, and
the Turbo PMAC decode variable I7mn0. Double-check that the sensor is powered. Look at the encoder
waveforms with an oscilloscope.
the Turbo PMAC decode variable I7mn0. Double-check that the sensor is powered. Look at the encoder
waveforms with an oscilloscope.