rleoni
-
Posts
11 -
Joined
-
Last visited
Content Type
Profiles
Forums
Events
Downloads
Posts posted by rleoni
-
-
Hello,
I am working with Rafael on this issue and we solved the edge detection problem by setting Gate3[0].EncClockDiv. -
18 hours ago, Eric Hotchkiss said:
Take a look at the "Step and Direction, PFM Output" section of the Power Brick LV ARM manual. It has a PLC which can temporarily be used to select a frequency divider, as well as instructions to manually output a frequency and motor settings. I believe you should also be able to issue something like #1out50 for 50% of Fmax.
Thank you Eric for the information.
I've read the section and I think I'm limited by the servo's frequency for very small movements.
Is it possible to configure gate3 to disable PFM after predefined counting of pulse counts or time?
I thought of using the "Capture/Compare Interrupt Service Routine", but by my measurements I got the same 20kHz as the phase interruption.
-
23 hours ago, DaveBarnett said:
'Sounds like perhaps what you are seeing may be some distortion in the PFM loop itself.
Once your clock dividers are set for your application, you may want to tune the PID loop that controls these “pulse and direction” outputs.
All the following terms will have an effect. The manual suggests the following:
Motor[x].Servo.Kp = 40
Motor[x].Servo.Kvfb = 0
Motor[x].Servo.Kvff = 40
Motor[x].Servo.Ki = 0.001
It’s particularly sensitive to the *.Servo.Kvff setting.
Your *.pmh file has very different gain settings...(?)
Thanks Dave for the feedback.
I lowered gains because they caused overshoot or oscillation.
-
There is no CS configured and the AbortTa/AbortTs are also at 0.
I think the problem is the servo frequency is too low. I tried to use the Sys.PosCtrl, but I understood that it is only used to pass a target positing to another control loop (eg macro ring). -
I'm working on the integration of SmarAct SDC2 (driver for piezo actuators) to the Power Pmac controller.
The piezo stage has a coupled sinusoidal encoder that is used to close the position loop in the SDC2 driver. The position setpoint is performed using pulses and direction signals up to 5 MHz.I configured the Power Pmac according to the "Setting Up Power PMAC for Pulse-and-Direction Control" section of the user manual and use "Gate3[0].Chan[0].TimerMode = 3 and Gate3[0]. Chan[0].TimerA" as feedback (I intend to use SDC2's quadrature output to confirm the position). I also set JogTA and JogTs to 0 to eliminate S-curve generation in Pmac (SDC2 performs this procedure). However, when I perform movements of a few counts, I observe that the output frequency is lower and there is an active deceleration function as shown in the images below:
jog^10.
jog^100
How should I configure Pmac to generate a specific amount of pulses by the "jog=" command at a constant frequency?
SCD2.pmh -
I found a workaround by disabling the Windows firewall.
-
-
-
Hi Dave,
Thank you for your help. I'm implementing cascading servo loops as you mentioned. As soon as I have progress I will post the result.
-
Hello everyone.
I'm working on a system (mirror bender) that is composed of two motors, each one with an encoder. The focus of this mirror is given by the relationship between these two motors. Then I created a kinematic to control angle between the motors and the offset from zero position. However is not linear because the mechanics and hysteresis.
To compensate this, there is a capacitive sensor (+/- 10 V) monitoring the gap to the mirror.
I would like to create an external control to observe the position of the capacitive sensor at the end of eacth the movement and send a new set point to the motors, repeating this process until the final position is within an acceptable error (trial and check the error).
Is it possible to implement this type of solution? How can I do?
Edge detection fail in Capture/Compare Interrupt Service Routine
in Power PMAC
Posted · Edited by rleoni
@steve.milici
did some tests to validate the maximum input frequency in the "user flag" that I can trigger the ISR and it is significantly lower than when I use the encoder index. You know why?
Is there any difference in the detector circuit?
User flag/home flag: ~12,5kHz
Index encoder: ~50kHz
PS: I' using Power Brick LV-IMS.