¿Discretización de retención de orden cero?

Tengo algunas dificultades para entender algo. Existen varios métodos de discretización, tales como retención de orden cero (ZOH), euler hacia adelante, euler hacia atrás, tustin, etcétera.

  1. Los métodos de discretización de euler hacia adelante, euler hacia atrás, etcétera, aproximan el cálculo de una integral (ver más abajo), pero ¿cuál es la aproximación integral cuando se usa un ZOH? ¿Qué hace un ZOH?
  2. ¿Por qué Matlab no admite euler hacia adelante, euler hacia atrás, la regla de Simpson o incluso aproximaciones integrales de orden superior como métodos de discretización? ¿Pero solo ZOH, tustin, coincidencia de polo cero? ¿Hay alguna razón para ello?
  3. ¿Es incluso útil usar, por ejemplo, la regla de Simpson como método de discretización o incluso usar aproximaciones de orden superior? Por lo que leí, de http://en.wikibooks.org/wiki/Control_Systems/Z_Transform_Mappings#Simpson.27s_Rule , ¿la regla de los Simpson tiene solo una desventaja?

Por ejemplo,

Considere la función de transferencia

F ( s ) mi ( s ) = 1 s

Esto corresponde a la ecuación diferencial

d F ( t ) d t = mi ( t )

Integrando ambos lados da

F ( t ) = F ( t 0 ) + t 0 t mi ( t ) d t

Ahora t está espaciado uniformemente, por ejemplo, t = kT, con k = 0,1,2,... Durante un muestreo t0 = kT y t = kT + T, la solución se convierte en

F ( k T + T ) = F ( k T ) + k T k T + T mi ( t ) d t

Ahora usando la regla trapeciodal (tustin) http://en.wikipedia.org/wiki/Trapezoidal_rule . La integral se aproxima por

a b F ( X ) d X ( b a ) [ F ( a ) + F ( b ) 2 ]

Como resultado, obtenemos

F ( k T + T ) = F ( k T ) + k T + T k T 2 ( mi ( k T ) + mi ( k T + T ) )

Usando la transformada z obtienes

( z 1 ) F ( z ) = T 2 ( z + 1 ) mi ( z ) F ( z ) mi ( z ) = T 2 z + 1 z 1

y como tal determinas comparando el resultado con la primera ecuación que

s = 2 T z 1 z + 1

Lo mismo puedes determinar usando euler hacia adelante, euler hacia atrás, etcétera. Ahora me pregunto cuál es el reemplazo de la variable de Laplace s cuando usará ZOH. ¿Y qué tipo de aproximación utiliza la ZOH? Según tengo entendido, discretizas el sistema usando ZOH aplicando

GRAMO ( z ) = ( 1 z 1 ) Z { GRAMO ( s ) s }

Eche un vistazo aquí, alguien cubre eso al responder mi pregunta sobre la transformación s de un promedio móvil: electronics.stackexchange.com/questions/154039/…
Estos videos deberían ser útiles para aquellos que todavía buscan una respuesta: youtu.be/rL_1oWrOplk youtu.be/yetLPW9sQaI También recomendaría los otros videos de la serie a cualquiera que esté interesado en los controles.

Respuestas (2)

En un sistema híbrido, el muestreador y ZOH realizan las operaciones: se muestrea una señal continua (conversión de analógico a digital, ADC) para producir una señal discreta, y la señal discreta se devuelve a su forma continua (conversión de digital a analógico, DAC). ). Por lo general, hay algún procesamiento digital entre estas dos operaciones, pero la operación DAC/ADC combinada normalmente se representa como un único TF de Laplace en el diagrama de bloques.

Para simplificar, considere el ZOH de forma aislada, es decir, sin procesamiento de datos entre la muestra y la retención. Sea la señal de entrada = x(t), la señal de salida = y(t) y el incremento de muestreo = T seg. En el instante de muestreo k'ésimo (es decir, en t=kT), la entrada al ADC puede indicarse x(k) y la salida del DAC se mantiene constante en x(k) hasta que llega la siguiente muestra.

Por lo tanto, la salida DAC entre x(k) y x(k+1) es un pulso rectangular de altura, x(k), y duración, T. Esto se puede modelar, para la representación de la transformada de Laplace, como un paso de altura x (k) en t=kT y un paso de altura -x(k) en el tiempo t=(k+1)T, y puede realizarse a través del operador de retardo LT, e^-skT, que retarda cualquier señal en kT seg.

Por lo tanto, la LT del pulso aislado es {e^(-skT)} x(k)/s - {e^[-s(k+1)T} x(k)/s, o:

e^(-skT) {1-e^-sT} x(k)/s

Para toda la señal, de t=0 a t=kT esta función se reduce a Y(s) = X(s) {1-e^-sT}/s donde X(s) e Y(s) son la transformada de Laplace Entrada y salida ZOH. Por lo tanto, Y(s)/X(s) = (1-e^-sT)/s

Si, ahora, deseamos proceder conectando un bloque G(s) a la salida ZOH, el TF general se convierte en (1 - e^-sT) G(s)/s. Pero hay un problema: si tenemos que cerrar el ciclo alrededor de este TF, el CLTF resultante no será analítico debido a que e^-sT aparece en el denominador CLTF. Entonces debemos volver a las transformadas z para hacerlo analítico.

La transformada z del bit exponencial es fácil; es (1 - z^-1), porque z^-1 es el operador de retardo en el dominio z (y por lo tanto es equivalente a e^-sT) y luego debemos encontrar la transformada z de G(s)/ s para completar la imagen.

esta respuesta no es correcta. el ZOH no es parte de la operación ADC en absoluto (ya sea que haya un S/H allí o no). el ZOH es parte de un DAC convencional que mantiene la salida a un voltaje constante entre instancias de muestras discretas.
@Robert bristow-Johnson; ZOH es la función combinada muestra+retención, donde 'muestra' es el ADC, que convierte una muestra en un número binario cada T segundos, y 'retención' es el DAC, que reconstruye una señal continua. Usualmente hay un sistema discreto (ecuación en diferencia) entre estas dos operaciones.
no entiendes esto. No hace ninguna diferencia con los datos de tiempo discreto. X [ norte ] si la señal analógica en el momento norte T se mantuvo por el valor de X ( norte T ) O no. si X ( t ) entra en el muestreador y X [ norte ] X ( norte T ) sale del muestreador al DSP o al procesador que sea, la presencia o ausencia del S/H es irrelevante para los valores de los datos. es lo mismo que un sampler ideal con impulsos dirac. pero por otro lado, si no son impulsos dirac que salen del DAC y pulsos constantes por partes, se necesita un modelo (el ZOH) para convertirlo.
@robert Bristow-Johnson, sí, sé qué son los datos muestreados y sé cómo reconstruir una señal de tiempo continuo a partir de una secuencia discreta usando un zoh. ¿Cual es tu punto?
Mi punto es que tu respuesta es incorrecta. no hay dos ZOH como dice su respuesta. si su sistema híbrido se modeló con un ZOH precediendo al A/D y otro ZOH después del D/A, la respuesta de frecuencia total sería incorrecta porque tendría dos ZOH en ella, en lugar del número correcto. Comencé una pregunta para nosotros, como grupo de Stack Exchange, para llegar al fondo de esto. y lo haremos.
Mi respuesta NO dice que hay dos ZOH, creo que lo entendiste mal.
"pero la operación combinada DAC/ADC normalmente se representa como un solo bloque ('ZOH') en el diagrama de bloques". De acuerdo, admitiré que esta afirmación es correcta (si se trata de un DAC convencional). el único ZOH es una consecuencia del DAC.
Tal vez sí 'entiendo esto'
la ZOH no "abarca... dos operaciones" .
solo para hacerle saber a @Chu, hice una pregunta para describir y comprender rigurosamente el papel de ZOH. Le ofrezco una recompensa para invitarlo a usted o a cualquier otra persona a responder con una respuesta matemática y de ingeniería correcta. alguien llamado Timo respondió y, dado que él era la única persona, además de mí, que respondió, esa persona obtendrá la recompensa. pero yo tambien respondi Quizás quieras revisarlo.

Para abordar las 3 preguntas específicas: 1. Se usa un elemento de retención de orden cero para tomar una señal discreta en el tiempo kT y mantiene el valor constante (orden 0, ¿recuerda?) hasta el tiempo kT+T. Ver Wikipedia (en los comentarios).

  1. Matlab hace lo que ellos quieren.

  2. El muestreo es muy rápido en estos días. La retención de orden cero es básicamente lo más fácil que puede hacer, y si muestrea mucho más rápido que las dinámicas relevantes, ¡está listo para comenzar! Tustin hace lo que describiste: tratar de interpolar la integral por la de una función lineal.

Hay ciertos beneficios de cualquier método. Claramente, los pedidos más altos serían buenos. Sin embargo, tienen un costo de cálculo y una complejidad. Algunos métodos conservan las posiciones polares del sistema (haciendo que la dinámica esté estrechamente relacionada), mientras que otros las distorsionan bastante. En términos generales, el orden superior no siempre es el camino a seguir. Digamos que toma una muestra de un cohete de Marte con 1 ms y aplica una aproximación integral de cuarto orden. Si tiene tal vez un cambio de grado en 10 segundos, eso hace 10000 muestras para descubrir y reaccionar. No es necesario obtener cosas de orden superior en el medio.

Como siempre, el orden depende de su aplicación. En este caso, más alto que lineal no es realmente un beneficio. Creo que preferiría aumentar la frecuencia de muestreo en su lugar.

Específicamente al ejemplo: la respuesta de Chu es correcta, sin embargo, para mí se detuvo exactamente, donde quería saber más: en

GRAMO ( z ) = ( 1 z 1 ) Z { GRAMO ( s ) s }
y exactamente como es GRAMO ( s = F ( z ) ) obtenido.

Desviándose de la notación del OP, sea y la salida de un integrador, yx su entrada. En el dominio de la frecuencia (Transformada de Laplace) esto es: G(s) = 1/s. Dejar T s Sea el tiempo de muestreo. Para el integrador en el dominio del tiempo tenemos:

y ( k T + T ) = y ( k T ) + k T s k T s + T s X ( τ ) d τ
ahora, al igual que en el ejemplo del OP, tratamos de aproximar este integrador aproximando
y ^ ( z ) X ^ ( z )
. Como lo hacemos manteniendo constante el valor (retención de orden cero) que se aplicó en el tiempo kT, obtenemos
y ( k T + T ) y ( k T ) + X ( k T ) T s
. Aplicando la transformada z esto es equivalente a
z y ^ ( z ) = y ^ ( z ) + X ^ ( z ) T s
. Reordenando obtenemos
y ^ ( z ) X ^ ( z ) = T s z 1
y recordando que modelamos un integrador, que es
Y ( s ) X ( s ) = 1 s
terminamos con:
s z 1 T s
y ahora puede escribir
F ( z ) = z 1 T s
.

No he visto esta pregunta antes. parece que la pregunta y las respuestas combinan un par de temas diferentes. Dirigiría a las personas al artículo de Wikipedia sobre la retención de orden cero . No todos los artículos de wikipedia son técnicamente precisos, pero este sí lo es. Una retención de orden cero es el modelo de lo que hace un DAC típico al convertir muestras de tiempo discreto (cuyo valor no tiene significado entre las muestras discretas) en una forma de onda de tiempo continuo que es una función constante por partes.
@Robert Bristow-Johnson; Tome un ejemplo simple, deje GRAMO ( s ) = 1 s . Esto lleva a: GRAMO ( z ) = ( 1 z 1 ) Z { GRAMO ( s ) s } = z 1 z Z { 1 s 2 } = z 1 z T z ( z 1 ) 2 = T z 1
ese ejemplo no significa nada hasta que definas qué GRAMO ( ) se supone que es y que GRAMO ( ) supuestamente es. y aparentemente no has examinado el punto principal que escribí.
y seguro que no entiendo cuál es la transformación Z de una función con s es.
F(z) es la transformada z de la secuencia muestreada, f(kT), donde f(t) es la transformada inversa de Laplace de F(s). Claramente, hay pérdida de información en la operación de muestreo.
usaría notación X ( t ) y X ( norte T ) y vete " F " y " k " como ordenanzas de frecuencia. Hay una pérdida de información en la operación de muestreo solo si X ( t ) tiene una banda limitada insuficiente. No haré esa suposición. Con el fin de hacer un buen uso del teorema de muestreo, solo trataré una entrada suficientemente limitada en la banda para la operación de muestreo.
No quiero llevar conmigo el incremento de muestreo, es constante. Por tanto, x(n) es más conveniente que x(nT). 'k' tiende a usarse en Control Eng; 'n' en el procesamiento de señales
luego use la notación común en la literatura moderna para funciones de tiempo discreto. con corchetes.
X [ norte ] X ( norte T )
pero cuando regrese al tiempo continuo, necesitará T de nuevo. a menos que defina su tiempo de unidad (incluso en la parte analógica) para que sea el mismo que el período de muestreo T .
Z { GRAMO ( s ) s }
no tiene sentido si s es el laplace s .
¿Por qué esto no tiene sentido?
@Chu, la transformación Z es una transformación de una función de tiempo discreto como X [ norte ] . no es la transformada inversa de Laplace la que podría tener un argumento GRAMO ( s ) .
@robertbristow-johnson, El uso anterior es un abuso de notación por parte de la comunidad de control.
Z { GRAMO ( s ) s }
realmente significa
Z { L 1 { GRAMO ( s ) s } t = k T }
dónde
T
es el período de muestreo. Créame, todas las matemáticas funcionan para la retención de orden cero, es solo una función rect() en el dominio del tiempo, llevada al dominio s , luego puede calcular directamente la fórmula anterior usando
z = mi T s
, que es la transformación del dominio *s* al dominio *z*. Además, cualquier función discretizada puede transformarse en Z simplemente definiendo
gramo [ k ] = F ( k T )
.
@daaxix, gracias por señalarlo. pero en realidad lo que usted señaló que
GRAMO ( z ) = Z { L 1 { GRAMO ( s ) s } t = norte T }
aún no es la retención de orden cero (ZOH) . no hay función rect() en el modelo. es solo el modelo de paso invariante que es un derivado del modelo de impulso invariante de mapear un filtro de plano s de tiempo continuo o analógico a un filtro de plano z de tiempo discreto o digital.
@robertbristow-johnson, Sí, su ecuación anterior es incorrecta y no es lo que escribí. Para obtener $G(z)$, debe multiplicar por $(1-z^{-1})$ , es decir
GRAMO ( z ) = ( 1 z 1 ) Z { L 1 { GRAMO ( s ) s } t = k T } .
El término $1/s$ y el término $(1-z^{-1})$ provienen directamente de la transformada de Laplace de un rect() de ancho $T$ centrado en $T/2$:
1 mi T s s
oh sí. con el integrador analógico allí, necesitaría un diferenciador digital.
Entonces, ¿es el modelo invariante de paso equivalente a una retención de orden cero ? hmmmmmm...
Por cierto, me guardaría la carta " k " para el DFT. es decir " X [ k ] ". usar " norte " para tiempo discreto. como " X [ norte ] ".