FPGA Central - World's 1st FPGA / CPLD Portal

FPGA Central

World's 1st FPGA Portal

 

Go Back   FPGA Groups > NewsGroup > DSP

DSP comp.dsp newsgroup, mailing list

Reply
 
LinkBack Thread Tools Display Modes
  #1 (permalink)  
Old 11-07-2005, 02:30 PM
Bas
Guest
 
Posts: n/a
Default How to desaturate integrator of a fast loop with a slow loop?

Hi Groups,

I am trying to stabilize a laser which has one slow input with a huge
control range and a second input which is really fast, but has a
limited range only. I have an error signal which I feed with an analog
PID-type controller directly to the fast input. The problem is that the
integrator of the PID saturates after some time.

To desaturate the integrator (and to keep the fast input as close to
zero for another reason) I can use the slow input. This is controlled
by a DSP, so I do have some flexibility in how I handle that. Right now
I use the output of the fast analog PID as the input to the DSP, and
configured the DSP to be a pure integrator with a certain time
constant.

/---\ /----------\
/-->|DSP|-->|slow |
/---\ | \---/ | Laser|-----*----> optical frequency
/-->|PID|---*---------->|fast | |
| \---/ \----------/ |
| /-----\ |
\---------------------|error|<-----------/
\-----/

My question is if this is allowed by control theory. If I integrate the
output of the PID with the DSP I have roughtly a double integrator in
the slow branch. According to my (limited) understanding this gives a
delay of 180 degrees, which would mean trouble. Would this lead to
instabilities at low frequencies? And are there better solutions to
desaturate the PID?

Thanks in advance,
Bas

Experimental details:
The process is an external cavity laser diode, which has both a fast
(~1MHz) input to the laser diode current and a slow (~2kHz) input to a
piezo that drives a grating. I obtain an error signal from a resonance
of a Fabry-Perot cavity by using a fast modulation scheme (Pound
Drever). The error signal has a zero crossing with a really steep slope
at the point where we want to stabilize. The DSP is a DSpace 1104 which
runs at a sample rate of 40 kHz. It can be programmed via Simulink.

I do have a background in physics with only one introductory course in
control theory and some practical experience, so please be gentle...

Reply With Quote
  #2 (permalink)  
Old 11-07-2005, 03:35 PM
bruce varley
Guest
 
Posts: n/a
Default Re: How to desaturate integrator of a fast loop with a slow loop?


Bas <[email protected]> wrote in message
news:[email protected] ups.com...
> Hi Groups,
>
> I am trying to stabilize a laser which has one slow input with a huge
> control range and a second input which is really fast, but has a
> limited range only. I have an error signal which I feed with an analog
> PID-type controller directly to the fast input. The problem is that the
> integrator of the PID saturates after some time.
>
> To desaturate the integrator (and to keep the fast input as close to
> zero for another reason) I can use the slow input. This is controlled
> by a DSP, so I do have some flexibility in how I handle that. Right now
> I use the output of the fast analog PID as the input to the DSP, and
> configured the DSP to be a pure integrator with a certain time
> constant.
>
> /---\ /----------\
> /-->|DSP|-->|slow |
> /---\ | \---/ | Laser|-----*----> optical frequency
> /-->|PID|---*---------->|fast | |
> | \---/ \----------/ |
> | /-----\ |
> \---------------------|error|<-----------/
> \-----/
>
> My question is if this is allowed by control theory. If I integrate the
> output of the PID with the DSP I have roughtly a double integrator in
> the slow branch. According to my (limited) understanding this gives a
> delay of 180 degrees, which would mean trouble. Would this lead to
> instabilities at low frequencies? And are there better solutions to
> desaturate the PID?
>
> Thanks in advance,
> Bas
>
> Experimental details:
> The process is an external cavity laser diode, which has both a fast
> (~1MHz) input to the laser diode current and a slow (~2kHz) input to a
> piezo that drives a grating. I obtain an error signal from a resonance
> of a Fabry-Perot cavity by using a fast modulation scheme (Pound
> Drever). The error signal has a zero crossing with a really steep slope
> at the point where we want to stabilize. The DSP is a DSpace 1104 which
> runs at a sample rate of 40 kHz. It can be programmed via Simulink.
>
> I do have a background in physics with only one introductory course in
> control theory and some practical experience, so please be gentle...


Bas, A bit of clarification would help us control types to understand your
system better and maybe help you more effectively. For someone that
understands optics, these questions may seem dumb.

Are you only attempting to control one variable, and is the error (roughly)
linearly proportional to the weighted sum of the two handles, ie. error
responds as (A * delta fast input + B * delta slow input)? I guess that the
thing you're trying to control is wavelength.

The frequencies that you quote, are they roughly representative of the
response times of the device to changes in that input? Are sinewaves
actually involved, or are you just using frequency to indicate typical rates
of change?

Based on the limited understanding I've gleaned from the OP, yes, the double
integration could well cause problems, but the limited range of one of your
inputs could also be troublesome, causing limit cycling. It looks like at
least a Proportional + integral action in the slow path could give you a
better response.

There are standard techniques for handling this sort of thing, the
industrial analog would be the big valve/small valve situation for trimming
reagent addition. If you can post a bit more info, happy to take a closer
look, and I suspect a few others will as well. Regards


Reply With Quote
  #3 (permalink)  
Old 11-07-2005, 06:07 PM
Tim Wescott
Guest
 
Posts: n/a
Default Re: How to desaturate integrator of a fast loop with a slow loop?

Bas wrote:
> Hi Groups,
>
> I am trying to stabilize a laser which has one slow input with a huge
> control range and a second input which is really fast, but has a
> limited range only. I have an error signal which I feed with an analog
> PID-type controller directly to the fast input. The problem is that the
> integrator of the PID saturates after some time.
>
> To desaturate the integrator (and to keep the fast input as close to
> zero for another reason) I can use the slow input. This is controlled
> by a DSP, so I do have some flexibility in how I handle that. Right now
> I use the output of the fast analog PID as the input to the DSP, and
> configured the DSP to be a pure integrator with a certain time
> constant.
>
> /---\ /----------\
> /-->|DSP|-->|slow |
> /---\ | \---/ | Laser|-----*----> optical frequency
> /-->|PID|---*---------->|fast | |
> | \---/ \----------/ |
> | /-----\ |
> \---------------------|error|<-----------/
> \-----/
>
> My question is if this is allowed by control theory. If I integrate the
> output of the PID with the DSP I have roughtly a double integrator in
> the slow branch. According to my (limited) understanding this gives a
> delay of 180 degrees, which would mean trouble. Would this lead to
> instabilities at low frequencies? And are there better solutions to
> desaturate the PID?
>
> Thanks in advance,
> Bas
>
> Experimental details:
> The process is an external cavity laser diode, which has both a fast
> (~1MHz) input to the laser diode current and a slow (~2kHz) input to a
> piezo that drives a grating. I obtain an error signal from a resonance
> of a Fabry-Perot cavity by using a fast modulation scheme (Pound
> Drever). The error signal has a zero crossing with a really steep slope
> at the point where we want to stabilize. The DSP is a DSpace 1104 which
> runs at a sample rate of 40 kHz. It can be programmed via Simulink.
>
> I do have a background in physics with only one introductory course in
> control theory and some practical experience, so please be gentle...
>

You could do as Bruce suggests and use PD control from the fast
controller output. Assuming a good error signal you could avoid some
stability problems by using PID control from the error signal from both
outputs -- is your error wide-ranging enough to do this, or does it
level out fairly quickly?

--

Tim Wescott
Wescott Design Services
http://www.wescottdesign.com
Reply With Quote
  #4 (permalink)  
Old 11-07-2005, 07:47 PM
Jerry Avins
Guest
 
Posts: n/a
Default Re: How to desaturate integrator of a fast loop with a slow loop?

Bas wrote:
> Hi Groups,
>
> I am trying to stabilize a laser which has one slow input with a huge
> control range and a second input which is really fast, but has a
> limited range only. I have an error signal which I feed with an analog
> PID-type controller directly to the fast input. The problem is that the
> integrator of the PID saturates after some time.
>
> To desaturate the integrator (and to keep the fast input as close to
> zero for another reason) I can use the slow input. This is controlled
> by a DSP, so I do have some flexibility in how I handle that. Right now
> I use the output of the fast analog PID as the input to the DSP, and
> configured the DSP to be a pure integrator with a certain time
> constant.
>
> /---\ /----------\
> /-->|DSP|-->|slow |
> /---\ | \---/ | Laser|-----*----> optical frequency
> /-->|PID|---*---------->|fast | |
> | \---/ \----------/ |
> | /-----\ |
> \---------------------|error|<-----------/
> \-----/
>
> My question is if this is allowed by control theory. If I integrate the
> output of the PID with the DSP I have roughtly a double integrator in
> the slow branch. According to my (limited) understanding this gives a
> delay of 180 degrees, which would mean trouble. Would this lead to
> instabilities at low frequencies? And are there better solutions to
> desaturate the PID?
>
> Thanks in advance,
> Bas
>
> Experimental details:
> The process is an external cavity laser diode, which has both a fast
> (~1MHz) input to the laser diode current and a slow (~2kHz) input to a
> piezo that drives a grating. I obtain an error signal from a resonance
> of a Fabry-Perot cavity by using a fast modulation scheme (Pound
> Drever). The error signal has a zero crossing with a really steep slope
> at the point where we want to stabilize. The DSP is a DSpace 1104 which
> runs at a sample rate of 40 kHz. It can be programmed via Simulink.
>
> I do have a background in physics with only one introductory course in
> control theory and some practical experience, so please be gentle...


I don't believe that a PID in the secondary loop offers any advantage
over a simple PI or even P. Since you want to control the inner loop's
integrator, monitor it, rather than than the whole PID's output.

Jerry
--
Engineering is the art of making what you want from things you can get.
ŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻ ŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻŻ
Reply With Quote
  #5 (permalink)  
Old 11-08-2005, 01:48 AM
Real_McCoy
Guest
 
Posts: n/a
Default Re: How to desaturate integrator of a fast loop with a slow loop?


"Bas" <[email protected]> wrote in message
news:[email protected] ups.com...
> Hi Groups,
>
> I am trying to stabilize a laser which has one slow input with a huge
> control range and a second input which is really fast, but has a
> limited range only. I have an error signal which I feed with an analog
> PID-type controller directly to the fast input. The problem is that the
> integrator of the PID saturates after some time.
>
> To desaturate the integrator (and to keep the fast input as close to
> zero for another reason) I can use the slow input. This is controlled
> by a DSP, so I do have some flexibility in how I handle that. Right now
> I use the output of the fast analog PID as the input to the DSP, and
> configured the DSP to be a pure integrator with a certain time
> constant.
>
> /---\ /----------\
> /-->|DSP|-->|slow |
> /---\ | \---/ | Laser|-----*----> optical frequency
> /-->|PID|---*---------->|fast | |
> | \---/ \----------/ |
> | /-----\ |
> \---------------------|error|<-----------/
> \-----/
>
> My question is if this is allowed by control theory. If I integrate the
> output of the PID with the DSP I have roughtly a double integrator in
> the slow branch. According to my (limited) understanding this gives a
> delay of 180 degrees, which would mean trouble. Would this lead to
> instabilities at low frequencies? And are there better solutions to
> desaturate the PID?
>
>

Yes, you would need a phase-advance to compensate - fairly easy to do so.

(1+sT1)/(1+sT2) where T1>T2 it's in all the control books. You will need a
Bode Plot of what's going on.

McC


Reply With Quote
Reply

Bookmarks

Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are On
Pingbacks are On
Refbacks are On


Similar Threads
Thread Thread Starter Forum Replies Last Post
while loop jiten VHDL 17 07-05-2005 07:43 PM
Passing a signal from slow to fast clock Divyang M VHDL 4 05-19-2005 05:39 PM
using the for-loop ! hanson j FPGA 0 03-24-2005 03:48 PM
`define within a for loop ric Verilog 0 02-02-2004 08:14 AM
Rayleigh Fading in Matlab (slow and fast) Ta DSP 0 01-15-2004 10:57 PM


All times are GMT +1. The time now is 03:28 AM.


Powered by vBulletin® Version 3.8.0
Copyright ©2000 - 2012, Jelsoft Enterprises Ltd.
Search Engine Friendly URLs by vBSEO 3.2.0
Copyright 2008 @ FPGA Central. All rights reserved