Capítulo 7

A Verdadeira Personalidade do Drone

Por que o drone quica como uma mola?

Capítulo 7: A Verdadeira Personalidade do Drone ↗

O controlador é uma mola

Mika: June perguntou onde nosso drone mora no mapa. Dica: lembra do drone quicante do Capítulo 2? Quanto mais a gente aumentava Kp\eff{K_p}, mais ele quicava. Parecia exatamente um peso numa mola.

Theo: "Parecia" não é prova. Vamos colocá-los lado a lado e escrever as duas equações.

À esquerda: uma massa de 0,5 kg pendurada numa mola com um amortecedor (um pequeno pistão cheio de óleo que resiste ao movimento). À direita: nosso drone, mesma massa, mesmo arrasto, sob controle proporcional.

Primeiro, vamos anotar cada força sobre a massa, uma de cada vez. Meça sua posição xx a partir do ponto de repouso, com para cima positivo.

  • A mola puxa de volta para o repouso, com mais força quanto mais esticada estiver: −k x-\eff{k}\,x. Estique o dobro e ela puxa com o dobro da força.
  • O amortecedor empurra contra o movimento, não contra a posição: −c x˙-c\,\dot{x}. Com a massa parada, ele não faz nada. Com ela rápida, ele empurra de volta com força. (x˙\dot{x} é a velocidade do Capítulo 3.)
  • A gravidade só desloca o ponto de repouso um pouquinho para baixo. Medir a partir do repouso já resolve isso.

Força = massa × aceleração, e aceleração é a inclinação da inclinação (Capítulo 3). Some as forças e passe tudo para um lado:

m x¨=−k x−c x˙⟹m x¨+c x˙+k x=0m\,\ddot{x} = -\eff{k}\,x - c\,\dot{x} \quad\Longrightarrow\quad m\,\ddot{x} + c\,\dot{x} + \eff{k}\,x = 0

Mika: Então o amortecedor é basicamente ar que odeia velocidade?

Theo: Mais ou menos. E no nosso drone, o amortecedor é o ar.

No widget, a seta laranja na massa é o puxão da mola e a cinza é o empurrão do amortecedor. Repare como a seta do amortecedor some sempre que a massa para por um instante no alto ou no fundo de uma oscilação.

Capítulo 7: A Verdadeira Personalidade do Drone ↗

June: As curvas estão uma em cima da outra. Não são parecidas. Idênticas.

Olhe as duas equações. A mola empurra de volta com força k x\eff{k}\,x: quanto mais esticada, com mais força puxa. Nosso controlador empurra com Kp(2−h)\eff{K_p}(\sp{2} - \out{h}): quanto mais longe do alvo, com mais força empurra. Mesma regra. O controlador é uma mola: uma invisível, puxando o drone em direção a 2 m.

Theo: Então um controlador P é uma mola virtual, e o arrasto do ar cc é um amortecedor virtual. Tudo o que aprendemos sobre molas, ganhamos de graça.

Dois botões de personalidade

Todo sistema massa-mola-amortecedor, e portanto todo drone com controle P, é descrito por apenas dois números. Vamos conquistá-los um de cada vez.

Quão rápido: a frequência natural

Tire o amortecedor e voltamos ao Capítulo 6: a mola oscila como cos⁡(ωt)\cos(\omega t) com ω=k/m\omega = \sqrt{k/m}. Chamamos essa velocidade de frequência natural ωn\omega_n: quão rápido o sistema quer oscilar quando nada o freia.

ωn=kmuma oscilac¸a˜o completa a cada 2πωn s\omega_n = \sqrt{\frac{\eff{k}}{m}} \qquad\qquad \text{uma oscilação completa a cada } \frac{2\pi}{\omega_n} \text{ s}

Capítulo 7: A Verdadeira Personalidade do Drone ↗

Mika: Mola mais dura, oscilação mais rápida. Então é só aumentar k\eff{k} no máximo e tudo melhora!

Uma mola mais rígida puxa com mais força, então oscila mais rápido. Uma massa mais pesada é mais difícil de empurrar, então oscila mais devagar. (Radianos por segundo é a velocidade de giro do Capítulo 5: uma volta completa é 2π radianos, um aro de 2π raios de comprimento.)

Theo: Calma. No capítulo 2, aumentar Kp\eff{K_p} deixou o drone mais rápido e mais saltitante. Vamos ouvir primeiro o que o amortecedor tem a dizer.

Quão saltitante: a razão de amortecimento

Agora coloque o amortecedor de volta. Quanto amortecimento é "muito"? Depende da mola: um amortecedor que doma uma mola mole mal freia uma mola dura. Por isso comparamos com uma quantidade especial, o amortecimento crítico ccritc_{\text{crit}}: o menor amortecimento que acaba de vez com o sobressinal.

ccrit=2m kζ=cccrit=c2m kc_{\text{crit}} = 2\sqrt{m\,\eff{k}} \qquad\qquad \zeta = \frac{c}{c_{\text{crit}}} = \frac{c}{2\sqrt{m\,\eff{k}}}

A razão de amortecimento ζ (a letra grega zeta) é o nosso amortecimento como fração disso. É um número puro, sem unidades. ζ = 0 oscila para sempre, ζ = 1 é exatamente crítico, e ζ = 0,5 tem metade do amortecimento necessário para acabar com o sobressinal.

Capítulo 7: A Verdadeira Personalidade do Drone ↗

June: Peraí. 0,16? É exatamente o ζ do drone no primeiro widget!

Theo: Mesma massa, mesmo atrito, mesma rigidez, então o mesmo ζ. A mola e o drone são gêmeos mesmo.

Os dois pontos no mapa

Agora, de volta ao mapa de ss. Chutar x=estx = e^{st}, como nos Capítulos 4 e 6, transforma a equação em ms2+cs+k=0m s^2 + c s + k = 0. Divida por mm e escreva os dois coeficientes com os nossos botões:

s2+cm⏟2ζωn s+km⏟ωn2=0s^2 + \underbrace{\frac{c}{m}}_{2\zeta\omega_n}\, s + \underbrace{\frac{\eff{k}}{m}}_{\omega_n^2} = 0

Theo: Peraí. De onde saiu esse 2ζωn2\zeta\omega_n? Parece inventado.

June: Multiplique: 2ζωn=2⋅c2mk⋅km=cm2\zeta\omega_n = 2 \cdot \frac{c}{2\sqrt{mk}} \cdot \sqrt{\frac{k}{m}} = \frac{c}{m}. É o mesmo número, só com outro nome, para que os nossos dois botões apareçam na equação.

Resolva com a fórmula de Bhaskara e saem os dois valores de ss:

s2+2ζωn s+ωn2=0⟹s=−ζωn±ωnζ2−1\begin{aligned} & s^2 + 2\zeta\omega_n\, s + \omega_n^2 = 0 \\ \Longrightarrow\quad & s = -\zeta\omega_n \pm \omega_n\sqrt{\zeta^2 - 1} \end{aligned}

O sinal ± nos dá duas respostas, uma para cada ponto. A posição esquerda-direita de um ponto é σ (sigma): quão rápido aquela parte do movimento encolhe. Sua altura é ω: quão rápido ela gira. Quando o amortecimento é menor que 1, os pontos compartilham a posição esquerda-direita, mas ficam em alturas opostas. Em 1 eles se encontram; acima de 1 ambos ficam no eixo horizontal.

Palavras novas

Resposta ao degrau
Como um sistema responde a um salto repentino do seu alvo, aqui de 0 para 1 m. É o jeito padrão de mostrar uma personalidade.
Tempo de acomodação (2%)
Quanto tempo até a resposta ficar dentro de 2% do alvo de uma vez por todas.

Brinque com os dois botões. Observe os pontos azuis no mapa: eles são os dois valores de ss, e, além da altura em que ele se acomoda, o movimento é uma mistura de es1te^{s_1 t} e es2te^{s_2 t}. (Com ζ = 1 exato, os dois pontos viram um só, e o segundo ingrediente passa a ser t es1tt\,e^{s_1 t}.)

Capítulo 7: A Verdadeira Personalidade do Drone ↗

Palavras novas

Subamortecido (ζ<1\zeta < 1)
Os dois valores de ss são um par espelhado fora do eixo real, situados em um círculo de raio ωn\omega_n. A resposta ultrapassa o alvo e oscila enquanto se estabiliza.
Criticamente amortecido (ζ=1\zeta = 1)
O par se encontra no eixo real como um único ponto duplo, então o movimento é (A+B t) e−ωnt(A + B\,t)\,e^{-\omega_n t}. A resposta mais rápida que não ultrapassa o alvo.
Superamortecido (ζ>1\zeta > 1)
O par se separa ao longo do eixo real: um se move para a esquerda, o outro se aproxima lentamente do zero. Sem sobressinal, mas lento.

Mais um detalhe se esconde nos pontos subamortecidos: a altura deles é ωn1−ζ2\omega_n\sqrt{1-\zeta^2}, um pouco menor que ωn\omega_n. O amortecimento não só encolhe a oscilação, ele também a deixa um pouco mais lenta. Essa é a frequência amortecida ωd\omega_d, e o widget a mostra.

ωd=ωn1−ζ2\omega_d = \omega_n\sqrt{1 - \zeta^2}

Mika: Então as espirais do Capítulo 6 eram a personalidade do drone desde o início. Girar = oscilar, encolher = estabilizar!

Mais amortecimento é sempre melhor?

June: Fácil. Oscilações são ruins e o amortecimento mata as oscilações. Então vou definir ζ=5\zeta = 5 para ficar seguro. O drone mais seguro de todos.

Preveja primeiro! Mesma mola, mesmo ωn\omega_n. Aumentamos o amortecimento de ζ=1\zeta = 1 para ζ=3\zeta = 3. Ele atinge o alvo mais rápido ou mais devagar?

Capítulo 7: A Verdadeira Personalidade do Drone ↗

June: Meu drone "seguro" demora uma eternidade. É como se mover através de mel.

Mika: Olhe o mapa! Um ponto disparou para a esquerda, super rápido. Mas o outro está bem pertinho de zero.

Theo: E este^{st} com ss próximo de zero desaparece muito lentamente. O rápido some num piscar. O lento é quem manda.

Cada ingrediente este^{st} do movimento se chama modo. O movimento é uma mistura de modos e, quando os rápidos já sumiram, só sobra o mais lento. Então, para esta resposta ao degrau, o modo mais lento que realmente aparece determina a longa espera.

Amortecimento de menos significa oscilações; de mais significa arrasto. No meio existe um ponto ideal. Escolha ζ = 0,7 na corrida: ele ultrapassa o alvo em menos de 5%, mas chega a menos de 5% do alvo bem antes de ζ = 1. Muitos projetos miram ζ entre cerca de 0,7 e 1, trocando um pequeno sobressinal por velocidade. Outras tarefas podem preferir um equilíbrio diferente.

De volta ao drone

Agora o Capítulo 2 finalmente faz sentido. Para o nosso drone, a constante da mola é o ganho:

ωn=Kpm,ζ=c2m Kp\omega_n = \sqrt{\frac{\eff{K_p}}{m}}, \qquad \zeta = \frac{c}{2\sqrt{m\,\eff{K_p}}}

Kp\eff{K_p} fica na parte de baixo da fórmula do amortecimento. Aumentar o ganho deixa o drone mais rápido (ωn\omega_n maior), mas menos amortecido. Com Kp=20\eff{K_p} = 20 N/m: ζ=1/(20,5×20)≈0,16\zeta = 1/(2\sqrt{0{,}5 \times 20}) \approx 0{,}16. Bem saltitante, exatamente como vimos. No mapa, seus dois valores de ss ficam bem lá em cima e só um pouco à esquerda do eixo vertical. É aí que nosso drone vive.

Theo: E não conseguimos mais amortecimento sem baixar muito Kp\eff{K_p}, o que traz de volta o desvio residual. Precisamos de uma forma de adicionar amortecimento de propósito.

Arraste o ganho e veja o compromisso numa só frase:

Capítulo 7: A Verdadeira Personalidade do Drone ↗

Setas têm comprimento e ângulo

Mika: Peraí. Os pontos ficam num círculo de raio ωn\omega_n, e o ζ só desliza eles ao redor. Então um ponto é na verdade duas coisas: quão longe do 0 e para que lado.

Toda seta z=a+b iz = a + b\,i pode ser descrita do outro jeito: pelo seu comprimento ∣z∣|z| e pelo seu ângulo. Pitágoras dá o comprimento. Para uma seta que aponta para a direita (a>0a > 0), o ângulo é aquele cuja subida dividida pelo avanço (o "cateto oposto sobre cateto adjacente" da escola) é b/ab/a. O nome dele é arco tangente, arctan⁡\arctan: o botão de desfazer da tangente.

∣z∣=a2+b2,∠z=arctan⁡ba(a>0)|z| = \sqrt{a^2 + b^2}, \qquad \angle z = \arctan\frac{b}{a} \quad (a > 0)

Capítulo 7: A Verdadeira Personalidade do Drone ↗

O Capítulo 5 descobriu que multiplicar setas multiplica os comprimentos e soma os ângulos. Dividir tem que desfazer isso, então divide os comprimentos e subtrai os ângulos.

Theo: Então 1/(1+i)1/(1+i): comprimento 1/21/\sqrt 2, e o ângulo é 45° mais 45°, então 90°? Hmm. Multiplique isso de volta por 1+i1+i e dá uma seta apontando para 135°, nada perto de 1.

June: Menos, então. Comprimento 1/21/\sqrt 2 a −45°. Vezes 2\sqrt 2 a +45°, e dá comprimento 1 a 0°: exatamente 1. Confere.

Capítulo 7: A Verdadeira Personalidade do Drone ↗

A seta tracejada clarinha é o gêmeo espelhado zˉ=a−b i\bar z = a - b\,i do Capítulo 6 (os matemáticos chamam de conjugado): mesmo comprimento, ângulo oposto. Multiplique uma seta pelo seu gêmeo e os ângulos se cancelam, sobrando um número positivo simples, o comprimento ao quadrado. A tabela do Capítulo 9 vai precisar exatamente disto:

z zˉ=∣z∣2=a2+b2,(s−iω)(s+iω)=s2+ω2z\,\bar z = |z|^2 = a^2 + b^2, \qquad (s - i\omega)(s + i\omega) = s^2 + \omega^2

E o círculo? Um polo em −ζωn+i ωn1−ζ2-\zeta\omega_n + i\,\omega_n\sqrt{1-\zeta^2} tem comprimento ωn\omega_n. Meça o ângulo θ dele a partir do eixo real negativo, e a parte para a esquerda é ωncos⁡θ\omega_n\cos\theta. Então ζ=cos⁡θ\zeta = \cos\theta: o amortecimento é o ângulo.

June: Experimente a segunda opção do widget: 1 + iωτ. É a regra do café do Capítulo 3 encontrando uma oscilação. Dividir por ela encolhe e gira para trás, cada vez mais conforme a oscilação acelera, mas nunca além de um quarto de volta. Aposto que o chuveiro liga para isso.

Palavras novas

Comprimento ∣z∣|z|
O tamanho de uma seta: a2+b2\sqrt{a^2+b^2} para z=a+b iz = a + b\,i. Multiplicar setas multiplica os comprimentos.
Ângulo ∠z\angle z
Para que lado uma seta aponta, medido a partir do eixo real positivo. arctan⁡(b/a)\arctan(b/a) para uma seta que aponta para a direita. Multiplicar soma os ângulos, dividir os subtrai.
Gêmeo espelhado zˉ\bar z
A seta refletida no eixo real, a−b ia - b\,i (o conjugado). z zˉ=∣z∣2z\,\bar z = |z|^2.

O que sabemos agora

O que descobrimos

  • Um drone controlado por P obedece exatamente à mesma equação que uma massa numa mola: o controlador é uma mola virtual.
  • Dois números capturam a personalidade dele: ωn\omega_n (quão rápido) e ζ\zeta (quão oscilante).
  • ωn=k/m\omega_n = \sqrt{k/m} é a velocidade de oscilação sem amortecedor. ζ=c/ccrit\zeta = c/c_{\text{crit}} compara o amortecimento com o amortecimento crítico 2mk2\sqrt{mk}, que acaba exatamente com o sobressinal.
  • O movimento é uma mistura de dois termos este^{st}. Os dois valores de ss ficam sobre um círculo de raio ωn\omega_n quando o sistema é subamortecido, e se separam ao longo do eixo real quando é superamortecido.
  • Uma seta tem comprimento e ângulo (arctan⁡\arctan). Multiplicar multiplica os comprimentos e soma os ângulos; dividir divide e subtrai. ζ=cos⁡θ\zeta = \cos\theta.
  • O amortecimento também deixa a oscilação um pouco mais lenta: ωd=ωn1−ζ2\omega_d = \omega_n\sqrt{1-\zeta^2}.
  • Mais amortecimento nem sempre é melhor: depois de ζ=1\zeta = 1, o valor lento de ss se aproxima devagar de zero e tudo fica mais lento.
  • Para o drone, mais KpK_p significa menos amortecimento. É por isso que ele ficou mais oscilante.

Theo: "Nós chutamos o caminho até esses valores de ss. Adicione gravidade, vento, pacotes e um controlador mais inteligente, e o chute fica feio. Existe uma máquina que transforma esse cálculo em álgebra simples?"

Capítulo 7: A Verdadeira Personalidade do Drone ↗