06-18-2010 01:41 AM
Hello,
I have a PXI-7354 Motion Controller in a PXI-1033 rack and I'm trying to prototype a product which has a digital motor controller IC, A3906 by Allegro. The IC is controlled with PWM signals by varying the duty cycle. Now, in the NI 7350 User Manual on page 5-17, it says that "These signals (PWM) are configured in software and are in no way associated with the PID servo control loop." My question is, can I programmatically associate the output of the control loop with a PWM output duty cycle?
I'm new to Motion Assistant and PXI motion controllers and I appreciate any input.
06-18-2010 01:57 AM
Miika,
as you have already found in the manual, the PWM output of the 7354 is just a static output, that can't be used for motion control, but maybe there are alternative solutions. Could you please provide some more detailed information about your application?
Thanks and kind regards,
Jochen Klier
National Instruments
06-18-2010 02:38 AM
Jochen,
1. The motor is a brushed DC motor with a supply voltage of 3,7 V.
2. For now, position and velocity control.
3. The A3906 is just the drive stage for the motor, it does not participate in the motor control. Feedback is provided by a quadrature encoder without an index pulse.
4. Yes, the quadrature encoder provides the speed and location information.
5. The motor controller chip is controlled by two PWM lines called IN1/3, active low and IN2/4, active low. When IN1/3 is held high and IN2/4 is fed a PWM signal, the motor runs forward. When IN2/4 is held high and IN1/3 is fed a PWM signal, the direction is reversed. The duty cycle of the PWM determines the amount of current in the motor windings. Hopefully we can use this motion controller to find out what the optimal PID constants are.
I hope this helps, thank you for your reply.
06-18-2010 04:18 AM
Miika,
thank you for the information, but there is no way for the 7354 to drive control signals directly in this fashion. So here are some alternative approaches that could help:
Both approaches add some complexity to your current setup. While the first approach is hardware centric, the second approach adds some complexity on the software side. My personal preference is option two, as this provides the highest level of flexibility, which is typically very desirable for a prototyping system.
In any case I recommend to contact your local NI contact for a more detailed consulting.
Kind regards,
Jochen