![]() | |
| Home Page | Mark Forums Read | Today's Posts | My Replies | Classifieds | Reviews | Photo Gallery | Web Links | Share Files | Advertise With Us | Ad List |
| |||||||
| Gecko Drives Discuss all Gecko drives here and get direct support! |
| This forum is sponsored by: |
![]() |
| | LinkBack | Thread Tools | Search this Thread | Display Modes |
|
#1
| |||
| |||
Please see PID_servo.gif and G320_PID_servo.gif for the results. This is it. A step motor running as a PID servo and doing a darn good job of it too. The PID_servo.gif yellow trace is the position error summing node. That is the difference between the command location and the motor's actual location. The scale is 14 degrees per volt, center line equals zero position error. The motor is commanded to turn 600RPM and the direction is reversed every 100mS. The stepper servomotor develops a peak 15 degree following error on the direction change, overshoots by 2 degrees before settling to zero error in 28 mS. All this before I've even tried adjusting the PID coefficients. For comparison, I added a G320_PID_servo.gif to contrast a DC servomotor under the identical conditions. The scale 9.2 degrees per volt, centerline equals zero position error. The DC servo develops a peak following error of 23 degrees, overshoots by 1.8 degrees before settling to a 1 degree following error in 45 mS. The following error is eventually taken up by the integral term but not in the 100 mS before direction changes again. The step motor servo trace looks much better (even before PID optimization) by comparison. As a servomotor, the stepper accelerated more quickly and settled far more rapidly to zero error than the DC servomotor. This is exciting. The servo control algorithms were developed in assembly language on a Rabbit RCM3720 and it is what's running the step servo in real time. These algorithms will be translated in VHDL and will go into a CPLD. This will bring a large increase in performance because execution will not be limited by the constraints imposed by a sequential machine like a microprocessor. The final PID step motor servo control algorithm is unlike anything I had ever imagined at the beginning of this project. It is also unlike any other servo control algorithm I've ever dealt with before. I simply followed what the motor needed and this is the result. The step motor is an MCG IH23014 3A/phase NEMA-23 run at 24VDC, the DC servomotor is an DGM D860-30B7 NEMA-34 24VDC rated 60W servomotor. Both motors are roughly comparable in power output at 24VDC. Mariss Last edited by Mariss Freimanis; 09-10-2007 at 11:35 PM. |
|
#2
| |||
| |||
| Mariss, I won’t pretend to understand most of that but note your excitement and satisfaction. I would just like to wish you luck with further developments and hope they aren’t too expensive so I can buy some. Regards, John |
|
#4
| ||||
| ||||
| Mariss, will this just be a standalone stepper drive, or will the G100 be required?
__________________ Gerry Mach3 2010 Screenset http://home.comcast.net/~cncwoodworker/2010.html (Note: The opinions expressed in this post are my own and are not necessarily those of CNCzone and its management) |
|
#5
| |||
| |||
And silly me thought this hobby would be cheaper than my other ones...HAHAHAHAHAHA. |
| Sponsored Links |
|
#6
| |||
| |||
| It will be stand-alone servodrive. It will make your motors two to three times as powerful compared to open-loop step motor drives. It also will have a % of available torque being used signal. This will go back to the G100 to signal it to decrease the command velocity when torque load nears 100%. That combination will make up the "unstallable step motor" project. Mariss |
|
#7
| |||
| |||
| Congratulations!! I have been thinking for a while about doing something similar with an inner PI torque loop (error signal = phase difference between rotor position and coil current) acting upon the peak current reference voltage, and an outer velocity PID loop (error signal = desired position vs current position), using a high ppr quadrature encoder. As usual, you are almost finished while I am still sitting on the starting line... Regards, Kreutz. |
|
#8
| |||
| |||
Estimated time of release? Mike
__________________ No greater love can a man have than this, that he give his life for a friend. |
|
#9
| |||
| |||
| Kreutz, Your comment is especially appreciated since it comes from a peer. I have been at this for 3 years, 2 of which were wasted chasing a method I ultimately concluded could never work. I cannot go into how it works because we are applying for a patent. The method is an unusual mix of analog and digital circuitry. Release of a commercial product is at least 6 months away, governed by refining the method and securing legal protections for it. Mariss |
|
#10
| |||
| |||
| Kreuz, I have been thinking about using a field oriented (vector)control method which I believe should do the job. That however requires a DSC, but that is not a problem nowadays. For example dsPIC30/33F, TI TMS320F28xx or Freescale 5683xx-series MSC would be a good choice. The basic idea (at least how I understand it, and I'm not a motor drive expert) is to measure the motor phase currents using a simultaneous sampling ADC of the MSC and then do a a,b->d,q-transformation (we'll rotate the current phasor so that PID controllers see DC-values) to control q (quadrature, torque producing) and d (direct, field producing) components (which is set to zero). The angle required to do this transformation comes from the encoder attached to the rotor. PID-controller outputs (voltage phasor) is then inversely transformed to a rotating a,b-frame and so on. This regulation loop is best performed at each PWM period. The torque reference comes from the velocity error loop output, which in turn is controlled by the position error loop. This way, since the voltage phasor always tracks the rotor angle, we should not loose any steps, since the voltage phasor never looses sync with the rotor as long the encoder keeps track of the actual position. Regards, Janne |
| Sponsored Links |
|
#11
| ||||
| ||||
| @jahonen Yes, Field oriented control best method for electric machine. 8 wire stepper may good choice for sensorless closed loop applications. 2 half phase coil for excitier, other 2 half coil for positions feadback. This is only idea. |
|
#12
| |||
| |||
Regards, Kreutz. |
![]() |
| Currently Active Users Viewing This Thread: 1 (0 members and 1 guests) | |
| Thread Tools | Search this Thread |
| Display Modes | |
| |
Similar Threads | ||||
| Thread | Thread Starter | Forum | Replies | Last Post |
| Equivalent servo system of step motor | bunalmis | Servo Motors and Drives | 4 | 11-22-2006 05:33 PM |
| Gecko 6202 Wont step Please help | foocat | Gecko Drives | 7 | 05-26-2006 11:07 PM |
| Servo motor, step/dir driver and Mach. | Darc | Mach Mill | 0 | 04-11-2006 12:23 AM |
| Units Per Step For Servo | bgolash | Mach Software (ArtSoft software) | 1 | 02-14-2006 01:46 PM |
| Xylotex or Gecko step driver for my Mill/Drill? | pfeist | General Electronics Discussion | 10 | 07-20-2004 01:42 AM |