• Nenhum resultado encontrado

Tabela 5.1: Parâmetros calculados do controlador de posição vertical Parâmetro Valor Unidade Descrição

ezmax 1.5 m Saturação erro de profundidade

kpz 0.6933 Ganho proporcional de profundidade

kiz 0.3205 Ganho integral de profundidade

5.4

Controlador de posição horizontal

O controlador de posição horizontal será desenvolvido recorrendo ao controlador de veloci- dade horizontal desenvolvida na secção5.2. Na determinação do controlador de velocidade foram aplicadas técnicas de análise de controlo não linear, devido à não linearidade do sistema a ser con- trolado. O desenvolvimento do controlador de posição será baseado em técnicas lineares. A to- mada desta decisão baseia-se na aproximação linear realizada ao sistema pelo controlador vertical, controlando o sistema num ponto de equilíbrio. Como tal, será aplicado um controlador tradici- onal PI ( Proporcional Integral) com ganhos proporcionais e integrais sobre os erros, de forma a obter um erro nulo em regime permanente. As saídas deste controlador serão as velocidades de referência ure f,vre f e rre f que alimentarão o controlador de velocidade horizontal desenvolvido

anteriormente. A arquitetura proposta é ilustrada na figura seguinte5.1.

Figura 5.3: Arquitetura do controlador de posição horizontal

5.4.1 Determinação do controlador

Na figura observa-se a representação dos erros de posição segundo xB , yBe yaw , ex, eye eψ,

48 Controlo

Figura 5.4: Referência e erro horizontal do veículo

O primeiro passo para determinar o controlador é definir o erro de posição vertical. Este é definido a seguir, como:

ex= (x − xre f) (5.40)

ey= (y − yre f) (5.41)

eψ = (ψ − ψre f) (5.42)

Com as expressões5.40a5.42é possível definir o controlador PI de posição. A expressão de controlo é apresentada a seguir:

ure f = −kpxex− kix Z exdt (5.43) vre f = −kpyey− kiy Z eydt (5.44) rre f = −kpψeψ− kiψ Z eψdt (5.45)

em que kpx, kix, kpy, kiy, kpψ, kiψ∈ R+ são os ganhos proporcionais e integrais do movimento

5.4 Controlador de posição horizontal 49

Com este controlador, é esperado obter um comportamento invariável e independente do valor do erro. A ação integral é indiretamente dependente do erro. Esta ação satura caso o valor do erro mantenha-se no máximo durante algum tempo, levando a uma saturação da ação integral. A saturação desta ação origina um comportamento aberrante e indesejado, saturando os propulsores à fpamxdefinida anteriormente, que, mesmo limitada, leva a um erro de regime permanente elevado.

Para evitar tal comportamento, recorre-se apenas à ação integral quando o valor do erro é inferior ao seu limite máximo. É necessário também reiniciar o integral quando este atinge o valor de saturação:

Z

edt= 0 , |e| > emax (5.46)

5.4.2 Determinação dos ganhos

Controlador de posição xB

Identicamente à determinação dos ganhos no controlador de velocidade horizontal, começa-se por arbitrar um valor de erro de profundidade máximo:

|ex| ≤ exmax= 1, 5m (5.47)

No capítulo4analisaram-se os limites de movimento e determinaram-se as velocidades má- ximas sobre eixos de movimento. A velocidade máxima para o movimento segundo xBé umax=

1, 46m/s (expressão 4.16). Como se pretende um resposta rápida, o erro máximo (em módulo) deve corresponder à velocidade de referência máxima (em módulo). Como a ação integral é nula quando o erro é máximo, esta é desprezada no cálculo de kpx. O valor do ganho proporcional kpx

é então o seguinte:

umax= kpxexmax ⇒ kpx=

umax

exmax

= 0.9724 (5.48)

Para a determinação de kixé necessário recorrer a uma aproximação do sistema. Devido à sua

não linearidade , torna-se difícil prever a evolução da posição em xB ao longo do tempo, então

assume-se que o módulo do erro decresce linearmente. Para garantir a estabilidade do sistema, segue-se a seguinte condição:

|kix

Z

exdt| ≤ |

1

4kpxex| (5.49) Caso esta condição não seja cumprida, a resposta do sistema poderá apresentar uma sobree- longação elevada ou até tornar-se instável.

Assumindo que ex> 0 e que o veículo se desloca à velocidade u = umaxsegundo xB,

kix Z emax umax 0 exdt≤ kix Z emax umax 0 (exmax− umaxt)dt (5.50)

que permite obter kix= 0.4721.

50 Controlo

Seguindo a mesma lógica utilizada para o cálculo do controlador de posição xB, começa-se por

arbitrar o erro máximo de posição yB,

|ey| ≤ exmax= 1, 5m (5.51)

A velocidade máxima para o movimento segundo yB é vmax = 1, 36m/s (expressão 4.21).

Como se pretende um resposta rápida, o erro máximo (em módulo) deve corresponder à velo- cidade de referência máxima (em módulo). Como a ação integral é nula quando o erro é máximo, esta é desprezada no cálculo de kpy. O valor do ganho proporcional kpyé então o seguinte:

vmax= kpyeymax ⇒ kpy=

vmax

eymax

= 0.9059 (5.52)

Para a determinação de kiyrecorre-se à aproximação do sistema assumida no controlador an-

terior. Para garantir a estabilidade do sistema, segue-se a seguinte condição:

|kiy

Z

eydt| ≤ |

1

3kpyey| (5.53)

Caso esta condição não seja cumprida, a resposta do sistema pode vir a ter uma sobreelongação elevada ou até tornar-se instável.

Assumindo que ey> 0 e que o veículo se desloca à velocidade v = vmaxsegundo yB,

kiy Z emax vmax 0 eydt≤ kiy Z emax vmax 0 (eymax− vmaxt)dt (5.54)

que permite obter kiy= 0.4104.

Controlador de posição angular yaw

Na determinação do controlador de posição angular é, mais uma vez, aplicado o raciocínio dos controladores anteriores. Arbitra-se inicialmente um valor do erro máximo

|eψ| ≤ eψ max

3rad (5.55)

A velocidade máxima para o movimento segundo ψB é rmax= 1, 58rad/s (expressão 4.31).

Novamente, pretende-se uma resposta rápida e o erro máximo (em módulo) deve corresponder à velocidade de referência máxima (em módulo). Como a ação integral é nula quando o erro é máximo, esta é desprezada no cálculo de kpψ. O valor do ganho proporcional kpψ é então o

seguinte:

rmax= kpψeψ max ⇒ kpψ =

rmax

eψ max

= 0.5363 (5.56)

Para a determinação de kiψ recorre-se à aproximação do sistema assumida nos controladores

anteriores. Para garantir a estabilidade do sistema, segue-se a seguinte condição:

|k

Z

eψdt| ≤ |

1

5.4 Controlador de posição horizontal 51

Caso esta condição não seja cumprida, a resposta do sistema pode vir a ter uma sobreelongação elevada ou até tornar-se instável.

Assumindo que eψ> 0 e que o veículo se desloca à velocidade r = rmaxsegundoyaw,

k Z emax rmax 0 eψdt≤ k Z emax rmax 0 (eψ max− rmaxt)dt (5.58)

que permite obter kiψ= 0.1438.

5.4.3 Análise do controlador

Os valores dos ganhos calculados serão ajustados durante simulações e testes de modo a que haja de melhoria da rapidez de resposta, uma menor sobreelongação, um erro de regime perma- nente nulo e elevada tolerância ao ruído. Os valores obtidos são representados na seguinte tabela

5.2,

Tabela 5.2: Parâmetros calculados do controlador de posição horizontal Parâmetro Valor Unidade Descrição

exmax 1.5 m Saturação erro de xB

eymax 1.5 m Saturação erro de yB

eψ max π /3 rad Saturação erro de yaw

kpx 0.9724 Ganho proporcional de xB

kix 0.4727 Ganho integral de xB

kpy 0.9059 Ganho proporcional de yB

kiy 0.4104 Ganho integral de yB

kpψ 0.5363 Ganho proporcional de yaw

Capítulo 6

Simulação Controladores

Para testar o comportamento e dinâmica do veículo quando aplicado o controlo desenvolvido no capítulo anterior, implementou-se uma simulação. Com a simulação pretende-se analisar as trajetórias seguidas ao longo do tempo quando aplicados os controladores. As simulações são rea- lizadas com a implementação dos controladores na mesma plataforma que a simulação do veículo. Serão realizadas diferentes análises, para testar o sistema em diversas condições.

6.1

Simulação de controladores de velocidade

Para a simulação do veículo e controladores, utilizou-se o Matlab como ferramenta. O Matlab é um programa poderoso, capaz de simular sistemas complexos e não lineares. Permite também uma visualização de diferentes sinais e emprega ferramentas de ajuda à análise dos resultados. Nesta secção serão simulados os controladores de velocidade separadamente, de acordo com o apresentado no capítulo anterior.

6.1.1 Controlador de velocidade vertical

Neste subsecção considera-se o controlador de velocidade vertical desenvolvido. Nestas simu- lações, o efeito da força das correntes é desprezado. As simulações serão feitas com a aplicação da velocidade vertical de referência wre f. Serão realizadas duas simulações para verificar o compor-

tamento com uma frequência elevada e uma menos elevada. Os propulsores P1 a P4 não exercem

qualquer força sobre o veículo.

Nas figuras 6.1 e6.2 pode-se observar que a velocidade vertical w segue a referência como pretendido, embora apresente um atraso esperado na resposta. Este atraso deve-se ao ganho do controlador, embora não seja prejudicial, visto o veículo apenas funcionar com uma fração da força dos seus propulsores.

Os dois propulsores, sendo simétricos, apresentam a mesma resposta temporal. 53

54 Simulação Controladores

Figura 6.1: Velocidade linear vertical w em função do tempo com T=90s

6.1 Simulação de controladores de velocidade 55

Figura 6.3: Força exercida pelos propulsores em função do tempo para T=90s

6.1.2 Controlador de velocidade horizontal

Na simulação do controlador de velocidade horizontal desenvolvido no capítulo anterior, o efeito da corrente é mais uma vez desprezado. Serão criadas três referências para entradas do controlador, velocidade de referência segundo xB ure f, velocidade segundo yBvre f e a velocidade

angular de yaw rre f. Para observar o comportamento desacoplado das velocidades, as três terão

frequências diferentes. A amplitude máxima dos sinais obedece aos valores máximos obtidos no capítulo4. Os resultados são mostrados nas figuras6.4,6.5,6.6e6.7.

Como pode ser observado nas figuras 6.4,6.5 e 6.6, as velocidades máximas são inferiores aos limites calculados no capítulo4. Estas foram ajustadas devido ao movimento de aproximação desejado e para se aproximarem do movimento real pretendido.

56 Simulação Controladores

Figura 6.5: Velocidade linear v em função do tempo

Figura 6.6: Velocidade angular r em função do tempo

Documentos relacionados