• No results found

Norsk instituttsektor i OECDs statistikk

2 Forskningsinstituttene i FoU-statistikken i Norge

2.2 Instituttsektoren i OECDs statistikk

2.2.2 Norsk instituttsektor i OECDs statistikk

É importante notar que, no caso de sistemas dinâmicos atuados, diferente de sistemas passivos, apenas a obediência às leis da física não garante a naturalidade do movimento. A naturalidade e o realismo na animação de tais sistemas estão associados ao que é visualmente esperado pelos espectadores da animação em vários aspectos, e a corretude física é apenas um dos critérios dessa avaliação visual. Por exemplo, no caso de personagens virtuais, se nenhum torque for gerado pelos atuadores do personagem, ele provavelmente desabará no chão e não será capaz de realizar os movimentos desejados. Portanto, mesmo obedecendo à física, o movimento não será considerado natural, pois, na maioria das situações, não é esperado que personagens ajam como estruturas passivas.

A animação de sistemas dinâmicos atuados requer portanto a solução de um problema de controle. O problema de controle consiste então em determinar as forças e os torques adequados a serem produzidos pelos atuadores do sistema, a fim de realizar o movimento desejado, e os controladores são as entidades responsáveis por fornecer esses comandos para os atuadores, funcionando como o cérebro do personagem. Essa analogia com organismos reais é discutida com mais detalhes em [Nunes 2006,Geijtenbeek et al. 2011]. Resumidamente, o controlador de movimento corresponde a partes do cérebro responsáveis por enviar os impulsos nervosos que transportam a informação de como contrair os músculos da maneira adequada para aplicar as forças corretas na estrutura esquelética e realizar o movimento desejado.

A Figura 2.3 ilustra a inserção do componente controlador agindo no laço da simulação física. Em cada instante da simulação, o controlador é responsável por enviar os torques internos, τττ, a serem produzidos pelos atuadores e considerados na simulação. Informações sensoriais podem possivelmente influenciar a ação do controlador, dependendo da técnica

τ Informações Sensoriais Forças e Torques Externos

Simulação

Física

Estado q(t+δ t) Estado q(t)

Controlador

Figura 2.3: O controlador é responsável por calcular os torques internos a serem aplicados pelos atuadores do sistema, durante a simulação física.

usada. Essas informações sensoriais são chamadas de feedback, e consistem de qualquer informação relacionada ao estado atual do sistema, que inclui tanto a estrutura articulada quanto o ambiente como um todo. Elas são geralmente usadas para corrigir o movimento de acordo com mudanças imprevistas no sistema, fornecendo um controle mais estável desse movimento. Controladores podem ser classificados de acordo com o uso de feedback. São chamados controladores de laço aberto aqueles que não são influenciados por informações sensorias durante a simulação física. Os torques são previamente especificados e não são corrigidos durante a execução da simulação. Quando os controladores se baseiam nas informações sensoriais para gerar os comandos de controle, são chamados controladores de laço fechado.

É importante ressaltar as dificuldades associadas ao problema de controle de personagens virtuais especificamente. A principal dificuldade é devido ao fato desses personagens serem representados por estruturas articuladas que não possuem atuadores associados a todos os seus graus de liberdade, sendo portanto chamadas underactuated. Os graus de liberdade globais devem ser então controlados através da interação da estrutura com o ambiente. Portanto, são as influências externas produzidas através do contato físico com o ambiente que conduzem esses graus de liberdade globais não-atuados da estrutura. Um exemplo bastante comum dessas influências externas são as forças de reação do chão.

Além disso, note que cada atuador possui influência direta na sua respectiva junta. Porém, essa influência não é exclusiva. Devido à dinâmica, a influência de um atuador localizado em uma junta também se propaga para as outras juntas da estrutura. Ou seja, os torques aplicados em uma junta também influenciam as demais devido ao fato de as equações de movimento do sistema serem acopladas, quando considerando as juntas individualmente como os graus de liberdade da estrutura. Portanto, os atuadores operam em conjunto, requerendo um controle coordenado do movimento. A Seção2.4 mostra como as equações de movimento do sistema

podem ser desacopladas.

Controladores PD

Uma possibilidade de se representar o controlador é definí-lo no domínio cinemático. Ao invés de os torques serem definidos diretamente, controladores de baixo nível ficam responsáveis por calcular esses torques a partir de informações de orientações desejadas a serem atingidas pelas juntas durante a simulação. Baseado nessas informações cinemáticas desejadas, essa parte de mais baixo nível do controle é realizada localmente. Assim, os torques são computados em cada junta individualmente. Então, um componente gerador de movimentos é necessário para definir essas trajetórias cinemáticas para as juntas da estrutura, em um nível mais alto de abstracão. A vantagem dessa representação é permitir que o movimento seja especificado num domínio mais intuitivo, quando comparando com a especificação direta de torques. Porém, como a dinâmica acopla o movimento da estrutura como um todo, controlar as juntas individualmente não é uma tarefa fácil, mesmo nesse domínio cinemático descrito.

Os controladores locais de baixo nível mais usados em animação de personagens virtuais são os chamados Proportional-Derivative controllers, ou controladores PD. O objetivo desses controladores de laço fechado é corrigir o erro entre o estado atual e o estado desejado da junta atuada, tentando fazer com que o estado desejado seja alcançado. A nomenclatura PD é usada porque a equação definida para o cálculo do torque possui um termo proporcional ao erro e um outro termo que depende da derivada do erro. O cálculo do torque assim definido é então dado pela seguinte equação:

τ = kp(θd− θ) + kd( ˙θd− ˙θ) , (2.1)

onde τ é o torque a ser aplicado na junta, θ representa a orientação atual da junta, θd a

orientação desejada da junta, ˙θ a velocidade atual da junta, e ˙θd a velocidade desejada da

junta. kp e kd são chamados de ganhos do controlador. Os valores desses ganhos podem estar

simplesmente relacionados à modelagem física do personagem simulado, e mais detalhes de como esses valores influenciam o controle são discutidos em [Allen et al. 2007,Nunes et al. 2008]. Nesse caso, em que controladores PD são usados localmente no nível mais baixo do controlador, especificar as trajetórias cinemáticas do personagem corresponde a atribuir valores aos parâmetros θd e ˙θd para cada junta, em cada instante da simulação.

Note que, ao especificar uma orientação desejada fixa e ao manter a velocidade desejada igual a zero ( ˙θd = 0), a ação do controlador PD corresponde à ação passiva de uma mola

angular com amortecimento localizada na junta. Nesse caso, θd define a orientação da junta

Figura 2.4: Mola com amortecimento agindo em uma junta.

amortecimento. A Figura2.4tenta ilustrar o comportamento de uma mola com amortecimento posicionada em uma junta. Uma mola angular funciona apenas levando a junta a assumir sua orientação de relaxamento, e isso não deve ser confundido com a ação de um atuador, como o funcionamento de um motor, por exemplo.