|
Sistemas de Controle
0.5
Biblioteca matematica de Controle
|
Classe concreta de modelos para representar equações diferenciais em espaço de estados. Mais...
#include <statespace.h>


Métodos Públicos | |
| StateSpace (Matrix< UsedType > A, Matrix< UsedType > B, Matrix< UsedType > C, Matrix< UsedType > D) | |
| Construtor padrão da biblioteca de Equações diferenciais em espaço de estados. Mais... | |
| void | print () |
| Método que imprime no prompt de comando o conteúdo de cada matriz (A,B,C,D). Mais... | |
| void | c2d (UsedType SampleTime) |
| Método cujo objetivo é converter as equações em espaço de estados da forma contínua para a forma discreta. Mais... | |
| void | setInitialState (Matrix< UsedType > X0) |
| Método cuja responsabilidade é receber uma matriz que representará o estado inicial para simulação do sistema em espaço de estados. Mais... | |
| Matrix< UsedType > | getA () |
| Método cuja responsabilidade é retornar uma matriz contendo os valores da matriz A do espaço de estados. Mais... | |
| Matrix< UsedType > | getB () |
| Método cuja responsabilidade é retornar uma matriz contendo os valores da matriz B do espaço de estados. Mais... | |
| Matrix< UsedType > | getC () |
| Método cuja responsabilidade é retornar uma matriz contendo os valores da matriz C do espaço de estados. Mais... | |
| Matrix< UsedType > | getActualState () |
| Método cuja responsabilidade é retornar uma matriz com os valores atuais do estado calculados na função sim. Mais... | |
| Matrix< UsedType > | getD () |
| Método cuja responsabilidade é retornar uma matriz contendo os valores da matriz D do espaço de estados. Mais... | |
| UsedType | sim (UsedType u) |
| Método cuja responsabilidade é simular os valores futuros da saída da equação diferencial. Mais... | |
| UsedType | sim (UsedType u, UsedType y) |
| Método não implementado. Mais... | |
| Matrix< UsedType > | sim (Matrix< UsedType > u) |
| Método cuja responsabilidade é simular os valores futuros da saída da equação diferencial. Mais... | |
| Matrix< UsedType > | sim (Matrix< UsedType > u, Matrix< UsedType > y) |
| Método não implementado. Mais... | |
| Matrix< UsedType > | sim (UsedType lmim, UsedType lmax, UsedType step) |
| Método cuja responsabilidade é simular os valores futuros da saída da equação diferencial. Mais... | |
Métodos Públicos herdados de Model< UsedType > | |
| Model () | |
| Construtor padrão da biblioteca modelos matemáticos. Mais... | |
| UsedType | diff (UsedType x) |
| Método que realiza a derivada de uma função de maneira numérica. Mais... | |
| void | setStep (UsedType step) |
| Método que insere na variável step um valor determinado. Mais... | |
| void | setInstance (Model< UsedType > *m) |
| Método que insere na variável instance uma instância do objeto do tipo model. Mais... | |
| void | setModelCoef (Matrix< UsedType > coef) |
| Método que insere na variável ModelCoef os coeficientes do modelo que será simulado. Mais... | |
| void | setIO (Matrix< UsedType > in, Matrix< UsedType > out) |
| Método que insere nas variáveis Input e Output os valores de entrada e saída de um modelo, ou função. Mais... | |
| Matrix< UsedType > | getModelCoef () |
| Método que retorna a variável ModelCoef, os coeficientes do modelo. Mais... | |
| Matrix< UsedType > | getInputMatrix () |
| Método que retorna as variável Input os valores de entrada do um modelo, ou função. Mais... | |
| UsedType | getOutput () |
| Método que retorna a variável output, o valore de saída do modelo, ou função. Mais... | |
| Matrix< UsedType > | getOutputMatrix () |
| Método que retorna a variável Output, os valores de saída do um modelo, ou função. Mais... | |
| Matrix< UsedType > | getLinearMatrixA () |
| Método cuja responsabilidade é retornar a Matrix A do sistema linear AX = b. Mais... | |
| Matrix< UsedType > | getLinearEqualityB () |
| Método cuja responsabilidade é retornar a Matrix b do sistema linear AX = b. Mais... | |
| Matrix< UsedType > | getLinearVectorPhi () |
| Método cuja responsabilidade é retornar uma linha da Matrix A do sistema linear AX = b. Mais... | |
Métodos Privados | |
| UsedType | factorial (unsigned n) |
| Método para calcular o fatorial de um número. Mais... | |
| void | c2dConversion () |
| Método para realizar a conversão de um sistema em espaço de estados na forma contínua para a forma discreta. Mais... | |
| void | d2cConversion () |
| Método para realizar a conversão de um sistema em espaço de estados na forma discreta para a forma contínua. Mais... | |
Atributos Privados | |
| bool | Continuous |
| unsigned | nDiscretization |
| UsedType | SampleTime |
| UsedType | TimeSimulation |
| Matrix< UsedType > | A |
| Matrix< UsedType > | B |
| Matrix< UsedType > | C |
| Matrix< UsedType > | D |
| Matrix< UsedType > | Ad |
| Matrix< UsedType > | Bd |
| Matrix< UsedType > | X |
| Matrix< UsedType > | initialState |
Outros membros herdados | |
Atributos Protegidos herdados de Model< UsedType > | |
| Model< UsedType > * | instance |
| UsedType | input |
| UsedType | output |
| UsedType | lmin |
| UsedType | lmax |
| UsedType | step |
| Matrix< UsedType > | Input |
| Matrix< UsedType > | Output |
| Matrix< UsedType > | EstOutput |
| Matrix< UsedType > | ModelCoef |
| Matrix< UsedType > | LinearVectorPhi |
| Matrix< UsedType > | LinearMatrixA |
| Matrix< UsedType > | LinearEqualityB |
Classe concreta de modelos para representar equações diferenciais em espaço de estados.
O objetivo principal dessa classe é ser uma equação diferencial em espaço de estados, permitindo a sua simulação.
| Continuous | Variável que quando setada em true permitirá que a equação diferencial esteja no domínio contínuo e quando setada em false, no domínio discreto. |
| nDiscretization | Variável que representa a precisão com a qual o sistema em espaço de estados será discretizado. A discretização do sistema é realizada utilizando série de Taylor e o nDiscretization representa quantos termos da série de taylor serão utilizados para transformar o sistema em espaço de estados de contínuo para discreto. |
| SampleTime | Variável que representa o período de amostragem que será utilizado para a discretização do sistema. |
| TimeSimulation | Essa variável representa a quantidade de tempo de simulação será utilizada na função sim. |
| A | Variável que representa a dinâmica dos polos do sistema. Ela está diretamente relacionada a estabilidade da equação. |
| B | Variável que representa o ganho do sinal de controle. |
| C | Variável que seleciona qual estado ou combinação de estados será apresentada na saída da equação diferencial. |
| D | Variável que está associada à transmissão direta de energia da entrada para a saída. |
| Ad | Variável que representa a dinâmica dos polos do sistema. Ela está diretamente relacionada a estabilidade da equação. Neste caso a variável está no domínio discreto. |
| Bd | Variável que representa o ganho do sinal de controle. Neste caso a variável está no domínio discreto. |
| X | Variável que representa o estado atual da equação em espaço de estados. |
| initialState | Variável que representa o estado inicial do sistema em espaço de estados. |
Definição na linha 27 do arquivo statespace.h.
| StateSpace< UsedType >::StateSpace | ( | Matrix< UsedType > | A, |
| Matrix< UsedType > | B, | ||
| Matrix< UsedType > | C, | ||
| Matrix< UsedType > | D | ||
| ) |
Construtor padrão da biblioteca de Equações diferenciais em espaço de estados.
O construtor padrão da biblioteca de simulação inicializa o objeto StateSpace com um período de amostragem padrão de 0,1 e com os valores de A, B, C, e D dados pelo usuário. Inicializa também Contínuos como true, nDiscretization = 4, e TimeSimulation = 10.
Ex1:
Resultado:
Ex2:
Resultado:
Ex3:
Resultado:
Ver também:
| void StateSpace< UsedType >::c2d | ( | UsedType | SampleTime | ) |
Método cujo objetivo é converter as equações em espaço de estados da forma contínua para a forma discreta.
A responsabilidade deste método utilizar os métodos privados de conversão contínuo para discreto e converter as matrizes A e B para a forma discreta.
Ex:
Resultado:
Ver também:
|
private |
Método para realizar a conversão de um sistema em espaço de estados na forma contínua para a forma discreta.
Este método utiliza a expansão em série de taylor para encontrar e^At que é Ad e para encontrar Bd (Bd = (A^-1)*(Ad - (I))*B).
Ver também:
|
private |
Método para realizar a conversão de um sistema em espaço de estados na forma discreta para a forma contínua.
Este método utiliza uma transformação obtendo a matriz A, sabendo que ela foi obtida de Ad utilizando uma certa quantidade de termos da série de taylor. B = (((A^-1)*(Ad - I))^-1)*Bd;
Ver também:
|
private |
Método para calcular o fatorial de um número.
Este método auxilia a função de discretização (que usa a expansão em série de taylor).
Ver também:
| Matrix<UsedType> StateSpace< UsedType >::getA | ( | ) |
Método cuja responsabilidade é retornar uma matriz contendo os valores da matriz A do espaço de estados.
A responsabilidade deste método é retornar uma Matrix contendo os valores de A. Caso o sistema esteja no domínio discreto a matriz apresentada será Ad.
Ex1:
Resultado:
Ex2:
Resultado:
Ver também:
| Matrix<UsedType> StateSpace< UsedType >::getActualState | ( | ) |
Método cuja responsabilidade é retornar uma matriz com os valores atuais do estado calculados na função sim.
A responsabilidade deste método é retornar a Matrix X. A cada iteração uma matriz X de estados é calculada, e, a partir dela são obtidas as saídas da equação.
Ex:
Resultado:
Ver também:
| Matrix<UsedType> StateSpace< UsedType >::getB | ( | ) |
Método cuja responsabilidade é retornar uma matriz contendo os valores da matriz B do espaço de estados.
A responsabilidade deste método é retornar uma Matrix contendo os valores de B. Caso o sistema esteja no domínio discreto será apresentado Bd.
Ex1:
Resultado:
Ex2:
Resultado:
Ver também:
| Matrix<UsedType> StateSpace< UsedType >::getC | ( | ) |
Método cuja responsabilidade é retornar uma matriz contendo os valores da matriz C do espaço de estados.
A responsabilidade deste método é retornar uma Matrix contendo os valores de C. Este método independe do sistema estar no domínio contínuo ou discreto.
Ex:
Resultado:
Ver também:
| Matrix<UsedType> StateSpace< UsedType >::getD | ( | ) |
Método cuja responsabilidade é retornar uma matriz contendo os valores da matriz D do espaço de estados.
A responsabilidade deste método é retornar uma Matrix contendo os valores de D. Este método independe do sistema estar no domínio contínuo ou discreto.
Ex:
Resultado:
Ver também:
| void StateSpace< UsedType >::print | ( | ) |
Método que imprime no prompt de comando o conteúdo de cada matriz (A,B,C,D).
A responsabilidade deste método é apresentar os valores das matrizes da equação.
Ex:
Resultado:
Ver também: sim(UsedType u);
| void StateSpace< UsedType >::setInitialState | ( | Matrix< UsedType > | X0 | ) |
Método cuja responsabilidade é receber uma matriz que representará o estado inicial para simulação do sistema em espaço de estados.
A responsabilidade deste método é preparar o sistema para realizar a simulação, caso os estado iniciais não sejam nulos.
Ex:
Resultado:
Ver também:
|
virtual |
Método cuja responsabilidade é simular os valores futuros da saída da equação diferencial.
A responsabilidade deste método é retornar um escalar com o valor correspondente a simulação da equação diferencial.
Ex:
Resultado:
Ver também:
Implementa Model< UsedType >.
|
virtual |
Método não implementado.
Implementa Model< UsedType >.
|
virtual |
Método cuja responsabilidade é simular os valores futuros da saída da equação diferencial.
A responsabilidade deste método é receber uma matriz (como sinal de entrada da equação diferncial) e retornar uma matriz com a resposta do sistema para aquele conjunto de entradas determinadas.
Ex:
Resultado:
Ver também:
Implementa Model< UsedType >.
|
virtual |
Método não implementado.
Implementa Model< UsedType >.
|
virtual |
Método cuja responsabilidade é simular os valores futuros da saída da equação diferencial.
A responsabilidade deste método é simular a equação diferencial a partir de um sinal de entrada contido em um dado intervalo. Em que:
| lmin | é o limite mínimo da entrada da equação diferencial |
| lmax | é o limite máximo da entrada da equação diferencial |
| step | é o valor incremental da entrada da equação diferencial |
Ex:
Resultado:
Ver também:
Implementa Model< UsedType >.
|
private |
Definição na linha 33 do arquivo statespace.h.
|
private |
Definição na linha 33 do arquivo statespace.h.
|
private |
Definição na linha 33 do arquivo statespace.h.
|
private |
Definição na linha 33 do arquivo statespace.h.
|
private |
Definição na linha 33 do arquivo statespace.h.
|
private |
Definição na linha 30 do arquivo statespace.h.
|
private |
Definição na linha 33 do arquivo statespace.h.
|
private |
Definição na linha 33 do arquivo statespace.h.
|
private |
Definição na linha 31 do arquivo statespace.h.
|
private |
Definição na linha 32 do arquivo statespace.h.
|
private |
Definição na linha 32 do arquivo statespace.h.
|
private |
Definição na linha 33 do arquivo statespace.h.
1.8.9