Preview only show first 10 pages with watermark. For full document please download

Ricciardi, J.v.s. - Dinâmica Multicorpos Computacional

Apostila de utilização do software MSC Adams aplicado à disciplinas como dinâmica das máquinas e robótica. Exemplos de criação de templates para veículo Baja.

   EMBED


Share

Transcript

Dinâmica Multicorpos Computacional João Vitor Ricciardi Maio – 2016 Sobre o Autor João Vitor Sartori Ricciardi é estudante de engenharia mecânica na Universidade Federal do Triângulo Mineiro – UFTM. Participou como membro, por aproximadamente quatro anos, na equipe Zebu Baja UFTM onde teve o primeiro contato com o software MSC Adams, apresentado nessa apostila. Participou do curso “Adams/Car para Equipes de Baja e Fórmula SAE (ADM 742)” promovido pela SAE Brasil e ministrado por colaboradores da Multicorpos Engenharia. Dedicou-se à competição “Virtual Formula” a fim de ter contato com especialistas no software para entender melhor o funcionamento deste, acumulando conhecimento a fim de transferi-lo para tantos outros que possuem a mesma dificuldade de entendê-lo. Agradecimentos Agradeço em primeiro lugar ao Thiago Sampaio Amaral, o qual se disponibilizou sempre que possível para sanar dúvidas durante a elaboração da apostila e foi peça fundamental para que o autor não desistisse da iniciativa. Agradeço meus amigos da engenharia mecânica que de alguma forma contribuíram para a revisão e otimização da apostila: Beraldo de Lima Neto, Nicholas Ootani, Matheus Teixeira Romagnoli e Alexandre Ribeiro. Agradeço à equipe Zebu Baja UFTM pela possibilidade de utilizar o software no desenvolvimento do projeto e autorizar a utilização de alguns parâmetros de um dos veículos já construídos para a elaboração da apostila. Agradeço também a minha namorada Laura Sewaybrick Furlani pela paciência com todas as horas gastas e o apoio para a elaboração deste material. Sumário 1. 2. 3. 4. 5. MSC Adams® ........................................................................................................................................1 1.1. Boas maneiras Utilizando o Adams ................................................................................................1 1.2. Comandos Básicos .........................................................................................................................2 Introdução ao Adams View .....................................................................................................................3 2.1. Seção de Abas ................................................................................................................................5 2.2. Seção de Topologia ........................................................................................................................7 2.3. Ferramentas Adicionais ..................................................................................................................7 Adams/View ...........................................................................................................................................9 3.1. Análise Cinemática – Biela Manivela ............................................................................................9 3.2. Análise Cinemática – Exercício – Mecanismo 4 Barras ..............................................................25 3.3. Análise Cinemática e Dinâmica - Caixa em um Plano.................................................................27 3.4. Análise Dinâmica – Robô RP.......................................................................................................33 3.5. Análise Dinâmica – Exercício – Robô RR ...................................................................................41 3.6. Importação do SolidWorks...........................................................................................................43 3.7. Importação do SolidWorks para o Adams – Robô RP .................................................................44 Introdução ao Adams Car .....................................................................................................................59 4.1. Teste de Simulação Inicial ...........................................................................................................60 4.2. Banco de Dados............................................................................................................................63 4.3. Hierarquia de Dados .....................................................................................................................65 4.4. Templates .....................................................................................................................................66 Template e Simulação de Suspensão Duplo A .....................................................................................68 5.1. Geometria .....................................................................................................................................70 5.2. Buchas ..........................................................................................................................................96 5.3. Juntas ..........................................................................................................................................104 6. 7. 8. 9. 5.4. Communicators ..........................................................................................................................109 5.5. Subsistema e Montagem de Suspensão ......................................................................................113 5.6. Simulação de Suspensão ............................................................................................................116 Template de Direção Pinhão-Cremalheira .........................................................................................121 6.1. Geometria ...................................................................................................................................121 6.2. Mounts........................................................................................................................................127 6.3. Buchas ........................................................................................................................................128 6.4. Juntas ..........................................................................................................................................131 6.5. Engrenagens de Redução ...........................................................................................................134 6.6. Communicators ..........................................................................................................................135 6.7. Requests .....................................................................................................................................140 6.8. Subsistema e Montagem de Direção+Suspensão .......................................................................141 6.9. Simulação de Direção e Suspensão ............................................................................................143 Montagem de Carro Completo ...........................................................................................................145 7.1. Step Steer ...................................................................................................................................146 7.2. Drift ............................................................................................................................................147 7.3. Ramp (Corkscrew) .....................................................................................................................147 7.4. Acceleration ...............................................................................................................................148 Road/Event Builder ............................................................................................................................149 8.1. Road Builder ..............................................................................................................................149 8.2. Event Builder .............................................................................................................................158 8.3. File Driven Events......................................................................................................................158 Soluções dos Exercícios Propostos ....................................................................................................160 10. Referências Bibliográficas .................................................................................................................174 11. Anexos................................................................................................................................................175 1. MSC ADAMS® O software Adams® (Automatic Dynamic Analysis of Mechanical Systems) é marca registrada da MSC Software Corporation. O software Adams é dividido em alguns “solvers”, sendo os mais comuns o Adams/View e o Adams/Car.[1] Estes dois possuem layouts parecidos, porém diferem em alguns aspectos como: criação da topologia, hierarquia de dados, planos de simulação, etc. Antes de iniciar o estudo de cada um separadamente, algumas dicas e atalhos básicos comum aos dois softwares são apresentados. 1.1. BOAS MANEIRAS UTILIZANDO O ADAMS Tanto o Adams/View como o /Car necessitam de um caminho especificado para o diretório de trabalho. Este é o local onde os modelos ficam salvos no View e todos as simulações são geradas no Car. Para que as simulações de determinado projeto não se misture com as simulações de um outro projeto, é interessante a criação de atalhos em pastas específicas para cada projeto. Por exemplo, para um curso, uma pasta com o nome “Curso” pode ser criada no desktop ou em algum outro lugar de preferência. Dentro dessa pasta, copie um atalho do software a ser utilizado. Com o botão direito do mouse clique no atalho e então em propriedades. Copie o caminho do diretório onde o atalho foi criado e cole no campo “Start in”. Ao abrir este atalho em específico, o diretório de trabalho é a pasta criada, e todos os modelos serão direcionados para este caminho. Além disso, evite criar pastas e/ou diretórios que contenham espaços ou caracteres especiais (*, ~, ‘, etc). 1 1.2. COMANDOS BÁSICOS SHIFT + S: Modifica como os objetos aparecem, em Wireframe (fios interligados) ou Shaded (sólido); SHIFT + F, T, R, L: Modifica o posicionamento de visão, onde F mostra a frontal, T a superior, R a direita, L a esquerda; SHIFT + I: Mostra a vista isométrica; V: Mostra ou esconde os hardpoints, construction frames e outros elementos juntamente com os nomes empregados; CTRL + F: Enquadra a vista somente do modelo na tela; F: Enquadra a vista de tudo que compõe o modelo e simulação na tela; Z: Zoom; 2 T: Translação; R: Rotação; F8: Janela de pós processamento. 2. INTRODUÇÃO AO ADAMS VIEW Abra o atalho criado na seção 1.1 de Adams/View. A seguinte janela será aberta. O botão New Model irá iniciar a criação de um novo modelo. Caso o usuário já tenha um modelo criado basta criar em Existing Model para abrí-lo. Ao clicar em New Model a seguinte janela aparece. 3 Em Model Name digite o nome desejado para o modelo (sem espaços ou caracteres especiais). Gravity define em qual direção a aceleração da gravidade atuará. Units define as unidades a serem utilizadas no modelo. Working Directory especifica o diretório onde o modelo será salvo. Caso o software tenha sido aberto pelo atalho, automaticamente este campo será aquele especificado na seção 1.1. Por ora, não modifique nada, apenas clique em OK. O software iniciará a construção do modelo especificado. OBS: Note a orientação dos eixos coordenados. Eles possuem a mesma orientação dos eixos coordenados do Solidworks, o que facilitará muito o trabalho de importação de peças nos próximos capítulos. 4 Algumas áreas, sugeridas pelo autor, são notadas na figura acima:  Seção de abas.  Seção de recursos.  Seção de topologia (árvore de projeto). 2.1. SEÇÃO DE ABAS Na seção de abas encontram-se os seguintes comandos: Bodies, Connectors, Motions, Forces, Elements, Design Exploration, Plugins, Machinery, Simulation e Results. Bodies: é a aba onde localizam-se os recursos de geometria do modelo. Solids constrói corpos rígidos, Flexible Bodies constrói corpos flexíveis, Construction constrói elementos de construção, Features cria recursos em corpos já construídos ou em esboços. Connectors: é a aba onde os recursos de condições de contorno são especificados. Nessa categoria, as juntas (Joints) são as mais utilizadas. Seguindo a ordem, a partir do cadeado, tem-se: junta fixa, junta de revolução, junta de translação, junta cilíndrica, junta esférica, junta de velocidade constante, junta universal, junta parafuso e junta planar. Caso uma junta tenha sido criada e nenhum movimento tenha sido atribuído a ela, o modelo irá ser simulado a partir da gravidade e com juntas idealizadas (sem atrito). Caso forças atuem nessas juntas, por exemplo através de motores atuadores, movimentos devem ser adicionados através da aba Motions. Motions: é a aba que cria recursos de movimentos translacionais ou de revolução. 5 Forces: É a aba que cria recursos de força, sejam estas forças localizadas, distribuídas, momentos e elementos como mola/amortecedor, buchas, etc. Design Exploration: É a aba onde recursos de medidas, bem como sensores ou requerimentos podem ser criados. Simulation: É a aba onde se realiza a simulação. Results: É a aba onde recursos dos resultados são encontrados, tais como animações ou pós processador. 6 2.2. SEÇÃO DE TOPOLOGIA A topologia de um modelo é basicamente a árvore de projeto do mesmo, nesta seção é possível encontrar todos os recursos que foram criados, divididos nas seções de abas apresentados acima. Nesta seção torna-se fácil encontrar tudo o que foi criado no modelo. 2.3. FERRAMENTAS ADICIONAIS No canto inferior direito alguns ícones podem ser vistos como na figura a seguir. Ao clicar com o botão direito em cada um destes, outros ícones ficam disponíveis. O primeiro ícone ( ) muda a cor do fundo da área de projeto. O segundo ( visibilidade de ícones e do modelo. O terceiro ( ) dá opções de ) divide a tela de trabalho em janelas para que outras vistas do modelo sejam apresentadas ao mesmo tempo. O quarto ( ) mostra ou esconde a grade (grid) de pontos para modelamento. Ao dar um duplo clique neste ícone, pode-se modificar o plano de construção, bem como o espaçamento entre os pontos da grade. O quinto ( tipo de vista entre ortográfica e perspectiva. O sexto ( ) troca o ) troca o tipo de vista do modelo entre wireframes ou solidas (mesmo comando que o atalho SHIFT+S). O sétimo ( ) mostra ou esconde os ícones criados no modelo (mesmo comando que o atalho V). O oitavo ( ) é o mais importante dessas ferramentas. Ao clicar com o botão direito nele a seguinte aba é aberta. 7 O primeiro ícone ( ) lista informações de objetos. Quando clicado sem nenhum objeto selecionado no modelo, abre a janela Database Navigator. Este mostra tudo que foi criado no modelo. Nele é possível saber tudo o que está ligado a cada parte construída, além de ser possível pesquisar sobre algum recurso que o usuário não se lembra onde foi criado, através do campo Filter. Ao selecionar a caixa Highlight o usuário verá o recurso selecionado em destaque caso seja possível. O segundo ícone ( ) lista todas as conexões criadas no modelo, e informa como elas são ligadas aos corpos. O terceiro ícone ( ) verifica o modelo, listando as juntas, os corpos e os graus de liberdade do mesmo. O quarto ícone ( )lista todas as partes criadas no modelo, e informa como estas partes são conectadas por juntas. O nono ícone ( ) para um comando ou simulação quando for possível. 8 OBS: Praticamente todas as ferramentas adicionais são encontradas nas abas Tools e Settings na parte superior do software. Além disso, na aba Settings as unidades do projeto podem ser modificadas a qualquer momento ao clicar em Units. 3. ADAMS/VIEW Após breve introdução sobre o layout e funcionalidades do software, é hora de começar a exemplificar a criação de modelos. Nesta seção o usuário verá exemplos completos de análise cinemática e dinâmica. Para iniciar a seção de exemplos, o usuário irá analisar um mecanismo biela manivela no plano. Antes de iniciar esse capítulo, torna-se interessante definir algumas informações topológicas importantes ao usuário. Part: Ao criar uma Part, o usuário especifica que a geometria a ser criada nessa Part não possui movimentos relativos, ou seja, é um corpo rígido. Muitas vezes um conjunto de peças pode ser tratado como corpo rígido, como é o caso de um guidão e o garfo de bicicleta. Estas são peças diferentes, porém, ao serem conectadas, se comportam como um único corpo (não existe movimento relativo entre as peças).[2] Marker: O Marker, como diz o nome, é um marcador. É criado automaticamente em alguns pontos específicos de uma geometria criada, porém, em alguns casos, é necessária a criação de um Marker para especificar uma localização específica, por exemplo, o centro de gravidade real da peça. É muito utilizado para marcar a localização do centro de gravidade de peças importadas do SolidWorks.[2] 3.1. ANÁLISE CINEMÁTICA – BIELA MANIVELA Supondo que o usuário não fechou o software, clique em File -> New Database para iniciar a construção de um novo modelo. Nomeie-o como Biela_Manivela e pressione OK. 9 O mecanismo a ser criado é mostrado na figura abaixo. Fonte: http://www.resumosetrabalhos.com.br/biela-manivela.html A partir das dimensões, e tendo conhecimento de que o valor de entrada para esse mecanismo encontra-se no ângulo θ2 (na manivela (a)), os ângulos θ3 e a distância “c” podem ser calculadas. Criação da geometria Para criar o Link “a”, na aba Bodies clique em Link e preencha como mostrado abaixo. Dessa forma o Link que a ser criado será uma nova parte, o comprimento será de 300mm, a largura será 40mm e a profundidade (espessura) será 20mm. OBS: Caso alguma das propriedades dimensionais não estejam checadas, elas ficam livres. Dessa forma o usuário pode arrastar o ponto final e espessura, agregando um valor qualquer durante a construção da geometria. OBS: Quando o usuário define a dimensão com a unidade, mesmo que mais tarde ele modifique as unidades do modelo, as dimensões se manterão as especificadas. Caso o usuário não tivesse especificado “mm”, ainda assim os valores entrados seriam considerados em mm, pois a unidade do modelo é mm, porém, se o usuário resolver modificar as unidades globais do modelo no futuro, a unidade será modificada, e isso afetará a dimensão das geometrias. 10 Ao passar o cursor do mouse sobre o espaço de trabalho, no canto inferior esquerdo as informações sobre o que deve ser feito para construir a geometria ou recurso são especificadas. Nesse caso, a seguinte instrução é dada. O usuário então pode simplesmente clicar no espaço de trabalho onde quer criar o ponto inicial do Link e então escolher o ponto final, porém, quando o usuário necessita de precisão e não pretende modificar a escala da grade (working grid), basta clicar com o botão direito do mouse no espaço de trabalho e inserir as coordenadas do ponto inicial e então fazer o mesmo procedimento para inserir as coordenadas do ponto final. No caso deste exemplo, a precisão não fará grande diferença, uma vez que a partir do ponto inicial, o segundo ponto ficará restrito a posições em uma circunferência com raio igual a aquele especificado como o comprimento do Link. Por isso, clique na origem para especificar o ponto inicial do Link. Alinhe então o segundo ponto na horizontal, formando o Link como mostrado na figura abaixo. OBS: A orientação do ângulo θ2 não importa pois este é o valor de entrada para o mecanismo. Porém criar as peças na orientação do ângulo 0º conhecido facilita a criação dos gráficos. Crie então o segundo Link com os valores mostrados abaixo. 11 Selecione o início no ponto final do primeiro Link e alinhe o ponto final com a horizontal (y = 0) como mostrado na figura a seguir. Crie por fim uma caixa ligada ao segundo Link. Selecione a opção Box na aba Bodies. Preencha as propriedades como mostrado abaixo. A inserção desta geometria está ligada à posição do vértice inferior esquerdo. Para centralizá-la com o final do Link “b”, clique com o botão direito no espaço de trabalho e insira as seguintes coordenadas. Pressione SHIFT+S e SHIFT+I e verifique se o modelo se parece com o da imagem abaixo. 12 Até aqui a geometria está completamente definida, resta agora criar as juntas e dar movimento ao mecanismo. Criação das Juntas Troque a aba de seções de Bodies para Connectors. Este modelo possuirá três juntas de revolução e uma junta de translação. Crie primeiramente a junta de revolução entre o Link “a” e o Ground. Clique em Revolute Joint , a seguinte caixa deverá ser preenchida com as informações de como a junta será adicionada ao modelo. A primeira caixa de escolha permite ao usuário escolher como a junta será criada. A segunda caixa define como a orientação da junta será criada. Não modifique nada. Clique primeiramente na PART_2 (Link vermelho) e então em qualquer ponto do espaço de trabalho que não contenha geometria para dizer que o segundo corpo que a junta irá unir é o Ground. Selecione então o local da junta como a origem (ponto inicial do Link “a”). 13 OBS: É extremamente importante a ordem com que os corpos são selecionados para a criação de uma junta. Na ordem com que foram selecionados (elemento posterior primeiro), os resultados como rotação serão considerados positivos no sentido anti-horário (assim como no círculo trigonométrico). Como a working grid está no plano do modelo e especificamos nas propriedades da junta que ela seria criada em uma orientação normal à working grid, ela já teve sua orientação definida. Caso o usuário tivesse selecionado Pick Geometry Feature, uma direção deveria ser especificada a partir de algum recurso previamente criado. Somente para exemplificar isso, a segunda junta será criada dessa forma. Clique novamente em Revolute Joint e modifique de Normal to Grid para Pick Geometry Feature. Selecione a PART_3 (Link “b”) e a PART_2 (Link “a”), selecione o local de posicionamento como a intersecção das duas partes (ponto final do Link “a” e ponto inicial do Link “b”). Sendo assim, restou somente definir a orientação da junta (lembre-se da regra da mão direita). Como a junta deve ser normal à grade, deve-se escolher algo na direção global z. Para isso, com o cursor em cima do ponto onde a junta será criada, selecione o eixo como mostrado na figura. Crie agora a junta de revolução entre o Link “b” e a caixa, pois como a caixa irá deslizar paralelamente ao solo, uma junta de revolução deve ser criada para que o Link “b” possa se deslocar. Clique em Revolute Joint, volte para a opção Normal to Grid e selecione a caixa e o Link “b”, com a localização no centro da caixa. 14 Crie agora a junta de translação entre o bloco e o Ground. Para isso, clique em Translational Joint e verifique as propriedades como mostrado abaixo. Selecione o Ground e a PART_4 (caixa), selecione o centro da caixa como a localização da junta e localize a orientação no eixo global x. Feito isso, a construção das juntas do modelo está completa e o mesmo deve ser parecido com o modelo da figura abaixo. Caso o usuário realize alguma simulação agora, como nenhum movimento foi adicionado, o mecanismo tenderá a permanecer em repouso, porém em certo momento o mesmo se movimenta devido à gravidade (uma vez que nenhuma junta possui atrito). 15 Criação dos Movimentos das Juntas O usuário deve adicionar o movimento à junta do Link “a”. Para isso, na seção de abas, clique em Motion e então clique em Rotational Joint Motion para criar um movimento de rotação. A seguinte caixa de propriedades aparecerá. O campo Rot. Speed especifica a velocidade angular. Sem modificar nada, selecione a junta na qual irá adicionar o movimento de rotação, que nesse caso é a JOINT_1. Na árvore de projeto, clique na pasta Motions, clique com o botão direito em MOTION_1 e então clique em Modify. Preencha como mostrado abaixo, modificando 30d*time para 36d e na caixa Type modifique para Velocity. Ao fazer isso, o usuário impõe uma velocidade angular de 36º/s ao Link “a”. 16 Simulação Feito isso, resta somente a simulação e análise de dados. Para realizar a simulação, clique na aba Simulation na seção de abas, e então clique na engrenagem. A janela Simulation Control irá aparecer. Modifique como mostrado abaixo e aperte play. Essa foi somente a simulação, por isso acontece de forma muito rápida. Quanto maior o número de steps, maior será o tempo computacional para realizar a simulação. Caso o usuário tiver interesse em somente ver a animação, sem muitos detalhes, basta clicar na aba Results e então em Displays the Animation Control dialog. Ao fazer isso, a seguinte janela será aberta. 17 Ao pressionar play o usuário verá a simulação de maneira mais lenta devido ao número de frames. Se for interessante acelerar a animação, o usuário deverá aumentar o Frame Increment e dar play novamente. Ainda nessa janela é possível adicionar um Trace Marker, ou seja, um Marker escolhido para gerar uma trajetória pelo caminho percorrido. Para fazer isso o usuário deve mudar a caixa No Trace para Trace Marker, um novo campo surgirá. Clique com o botão direito do mouse nesse novo campo e clique em Marker  Browse. Dê dois cliques em PART_4, selecione cm e pressione OK. Pressione play para verificar o que acontece. Até aqui, a análise foi somente visual, porém o mais interessante são os valores obtidos na simulação. Para analisá-los é necessário a utilização do post-processor. Para abri-lo, pressione F8. O usuário criará primeiro a animação, com mais controles disponíveis. Para isso, clique com o botão direito na tela e então Load Animation. 18 Os controladores continuam iguais, porém existe também o botão vermelho ( ), que grava a simulação. Na aba Animation, a velocidade da animação pode ser controlada tanto pelo Frame Increment como pela barra Speed Control. A propriedade Loop torna a animação repetitiva ou oscilatória. Trace Marker tem a mesma função que aquela mostrada nos controladores de animação. A propriedade Superimpose faz com que cada frame da simulação seja desenhado durante a animação. Na aba View, propriedades de iluminação podem ser modificadas, vistas, entre outros, porém o mais importante dessa aba é a caixa Display Triad, que mostra a orientação dos eixos coordenados na simulação. Na aba Camera o usuário pode escolher um objeto (Part, Marker, etc) para a câmera seguir. Na aba Record o usuário seleciona as propriedades do vídeo a ser gravado utilizando o botão vermelho dos comandos de animação. Existe uma aba na parte superior do espaço reservado para animações e gráficos como o da figura abaixo. O primeiro ícone ( segundo ( ) volta para a página anterior criada para gráficos ou simulações, o ) avança para a próxima página, o terceiro ( deleta a página selecionada, o quinto ( sexto ( ) cria uma nova página, o quarto ( ) ) mostra ou esconde as páginas e árvore de projeto, o ) mostra ou esconde os controles de animação, o sétimo ( ) divide uma página em janelas para que diferentes comparações entre simulações e gráficos possam ser feitas na mesma tela. 19 Tendo sido explicada a maior parte do pós-processador, é hora de criar alguns gráficos. Anteriormente foi indicado que velocidade angular da junta do Link “a” era de 36 graus/s. A simulação foi realizada para 10 segundos, com isso, uma volta completa deve ser percorrida pelo Link “a”. Clique com o botão direito no sétimo ícone (Page Layouts) e selecione a tela dividida em duas partes. Clique com o botão direito na tela que foi criada e selecione Load Plot. Uma nova aba inferior irá surgir como mostrado na figura abaixo. Essa é a aba de escolha de quais parâmetros serão plotados. Na caixa Source o usuário pode mudar entre Objects e Result Sets, onde o primeiro filtra os objetos criados, enquanto o segundo filtra componentes que possuem resultados de força e torque. Como neste exemplo o objetivo é a análise cinemática, Objects será mais utilizado. Clique em MOTION_1 e em Angular_Velocity, selecione Mag (magnitude) e clique em Add Curves. Nota-se que durante todo o tempo a velocidade angular da junta 1 foi de 36º/s. Mude Source para Result Sets, clique em MOTION_1, em ANG e Add Curves. Uma reta será criada mostrando que o ângulo θ2 se inicia em 0 e termina em 360º. OBS: Nota-se aqui que os valores para os ângulos são positivos, isso porque ao criar a JOINT_1 o usuário escolheu as Parts na ordem correta. 20 Clique na janela da animação e pressione play para ver o gráfico interagir juntamente com a simulação. Clique com o botão direito novamente em Page Layouts e selecione três janelas. Clique com o botão direito na nova janela e então em Load Plot. Selecione Objects e então a PART_4, clique em CM_Position, X e Add Curves. A posição do centro de massa da caixa (PART_4) será traçada no gráfico. Essa curva representa a distância entre a caixa e a origem (distância “c” do exemplo). Mais interessante que possuir a distância “c” dependente do tempo, é saber essa distância para cada ângulo θ2 do Link “a”. Com o gráfico da posição do centro de massa da PART_4 selecionado, clique em Clear Plot para limpar o gráfico. Na caixa Source selecione Result Sets. No lado direito, selecione Independent Axis para Data. Selecione MOTION_1, ANG e pressione OK. Modifique o Source para Objects e selecione PART_4, CM_Position e X. Clique em Add Curves. As posições da caixa foram plotadas para cada ângulo de θ2. Ainda resta saber como o ângulo θ3 se relaciona com θ2. Para isso, o Independent Axis continua como θ2, porém agora não existe um Motion do qual pode-se obter o ângulo θ3. Para medir esse ângulo, será necessário a criação de um Request. De volta a janela do Adams/View, clique na aba Design Exploration e clique em Create New Request. Antes de preencher a janela Create New Request, modifique de Define Using Type And Markers para Define Using Function Expression. Clique no ícone de três pontos em frente ao campo F2. Modifique a caixa ao lado do botão Assist... para Displacement. Dê dois cliques em Angle about Z para que a “forma” da função seja criada no campo cinza. 21 OBS: Angle about Z foi selecionado pois o ângulo que será medido é aquele formado no plano XY do Marker que será selecionado na figura abaixo. Se o eixo X do Marker apontasse na direção em que Z está apontando, Angle about X deveria ser selecionado. A criação de Resquests é em eixos locais, não no global. 22 Clique com o botão direito do mouse no campo cinza de Getting Object Data e clique em Marker  Browse. De dois cliques em PART_3. Clique em Highlight na parte inferior da janela e então clique nos elementos da PART_3 até encontrar um Marker na posição da foto acima. OBS: O nome dos Markers pode variar dependendo da ordem com que as Parts foram criadas. Pressione OK e o nome do Marker será preenchido no campo cinza. Apague o nome To_Marker da função, e então clique em Insert Object Name. Faça o mesmo procedimento para o From_Marker, inserindo um Marker do Ground que contenha o eixo Z apontando na mesma direção do eixo Z global. Pressione OK no canto inferior direito para criar a função. A função foi preenchida no campo F2. Preencha agora a janela Create a Request como mostrado abaixo e pressione OK. 23 OBS: Request Name é o nome dado ao Request somente para localização topológica. Caso nada seja preenchido em Results Name, o Request Name dará o nome aos resultados. Component Names é o nome que irá aparecer na lista de componentes do resultado. Component Units são as unidades de cada função especificada. Component Labels são os nomes que o eixo receberá para cada função. OBS: Note que em alguns campos foi utilizado “”. Isso ocorre, pois, cada função deve receber uma especificação, “” está referente à F1, cada vírgula separa uma função de outra. Simule novamente e abra o Post Processor. Em uma nova janela, plote um gráfico de Theta_3 x MOTION_1.ANG. Para encontrar o Theta_3 o usuário deverá selecionar Results Sets no campo Source. 24 Caso o usuário queira saber os valores máximos e mínimos do ângulo θ3, basta clicar no ícone Plot Tracking e utilizar o cursor no gráfico, as coordenadas X e Y irão aparecer próximas ao canto superior esquerdo. O usuário ainda pode traçar linhas importantes no gráfico, para por exemplo, indicar o valor mínimo. Para fazer isso, basta clicar no ícone Create a spec line. Crie uma linha Y com valor de -36,87 como mostrado na figura abaixo. Salve o projeto e saia. Até aqui o usuário foi capaz de criar um modelo do início, criando a geometria, juntas e movimentos. Aprendeu também como criar variáveis de saída (Requests) caso as variáveis do software não abranjam todos os resultados desejados, e como utilizar o pós processador. Propriedades de como ajustar escalas, linhas, nome dos eixos, entre outros, estão apresentadas no Anexo 1. 3.2. ANÁLISE CINEMÁTICA – EXERCÍCIO – MECANISMO 4 BARRAS Construa o mecanismo 4 barras mostrado abaixo e plote em um gráfico as posições X e Y do ponto K indicado para uma volta completa do Link que forma θ1, dependente do ângulo de rotação da junta de entrada θ1. 25 Note que independente da velocidade angular da junta, o gráfico será o mesmo para uma rotação de θ1 de 360º. Dica 1: Construa um esboço no SolidWorks utilizando θ1 igual a 60º e os comprimentos dos Links mostrados na figura acima para retirar as coordenadas dos pontos de início e fim de cada Link e insira-os clicando com o botão direito no Working Grid ao criar as partes. Dica 2: O mecanismo construído no Adams com θ1 igual a 60º apresentará θ1=0º nessa posição quando plotado, para resolver esse problema crie um Request de medida de ângulo entre um Marker da PART_2 (Link 1) e um do Ground. Dica 3: Após criar o Request da Dica 2, o gráfico gerado irá ter início em 60º (posição inicial do mecanismo). Caso o usuário deseje que o gráfico tenha início em 0º e fim em 360º, nas propriedades do MOTION_1, ao inserir a condição de velocidade angular, basta criar uma condição inicial de deslocamento (Displacement IC) de -60d (isso fará com que o Link que possui θ1 incline de 60º no sentido horário antes de começar a simulação). OBS: Caso o usuário tenha recebido a geometria (Four_Bar_mechanism.bin), para abrí-la clique em File  Open Database e então selecione o arquivo. RESPOSTA:  Sem condição inicial de deslocamento (Displacement IC) 26  Com condição inicial de deslocamento (Displacement IC = -60d) 3.3. ANÁLISE CINEMÁTICA E DINÂMICA - CAIXA EM UM PLANO Exemplo modificado a partir do “Example 2: Inclined Plane”. [3] Neste exemplo será criado um simples plano inclinado e analisadas as diferentes forças de atrito agindo. Abra o software e clique em Create a New Model. 27 Criação da Geometria Crie um Box com as seguintes especificações no ponto 0, 0, 0. Crie um novo Box com as seguintes especificações no ponto 450, 30, 20. Para fazer isso, após especificar as dimensões como na figura abaixo, clique com o botão direito no espaço de trabalho para inserir as coordenadas. Este será um novo conceito. Existem duas maneiras de rotacionar os objetos, rotacioná-los um a um ou criar um grupo e rotacionar tudo de uma só vez. Para rotacionar um único objeto, basta modificar a orientação de um dos Markers que o constitui. Clique na origem com o botão direito e em MARKER_1 clique em Modify. Na caixa Orientation, modifique para 15,0,0. Isso criará uma rotação em torno do eixo Z, criando um ângulo de 15º entre a horizontal e o eixo X. Aperte OK e veja que somente a rampa se inclinou. Para rotacionar a caixa para a posição em que esta toca a rampa, clique com o botão direito no ícone de posições no topo da tela. Selecione o ícone Rotate object(s). Preencha como mostrado abaixo. 28 Selecione a caixa para rotacionar e então selecione o MARKER_1.Z como eixo de rotação. Criação das Juntas Crie uma junta de translação entre a PART_3 e a PART_2 localizada na PART3.cm direcionada no MARKER_2.X. Crie uma junta fixa entre a PART_2 e o Ground localizada no Marker PART_2.MARKER_1 (origem). Modificação das Propriedades dos Objetos O usuário começará a modificar propriedades de massa das partes. Clique com o botão direito na caixa (PART_3) e clique em Part: PART_3  Modify. Modifique a caixa Define Mass By para User Input. Entre com o valor para a massa de 1 e pressione OK. 29 Simulação Simule com End Time de 1 segundo para ver o que acontece. Pode-se notar que o bloco desliza até sair da plataforma, isso acontece porque, por padrão, o coeficiente de atrito é nulo. Para adicionar atrito, clique com o botão direito na junta de translação (JOINT_1) e então em Modify. Clique no ícone Joint Friction. Modifique o Mu Static pra 0.268 e de OK. O atrito foi criado. Simule novamente sem modificar propriedades da simulação e verifique o que acontece. A caixa permaneceu em repouso, pois para o ângulo de inclinação de 15º, esse valor torna a força resultante na caixa igual a 0. Modifique o Mu Static e o Mu Dynamic para 0.2 e desmarque as check box Bending Moment e Torsional Moment para que a força de atrito seja calculada somente pelo peso do corpo e pela força de reação. Simule novamente para ver o que ocorre. OBS: Note que agora ao clicar com o botão direito na junta de translação a opção Friction: FRICTION_1 aparece. Selecione essa opção e então Modify para modificar os valores dos coeficientes de atrito. Abra o post-processor e com Result Sets selecionado no Source selecione FRICTION_1, FZ e clique em Add Curves. 30 OBS: Note que a componente Z escolhida deve-se ao fato de que o atrito criado possui o eixo Z apontado na direção em que a caixa deslizará, no sentido em que a força de atrito surgirá. O gráfico mostra que a força de atrito atinge o valor de 1.8945 N, que é muito próximo do valor calculado 1(9.80665)(0.2)cos(15) = 1.89449 N. O usuário irá inclinar mais o plano para verificar a influência do ângulo na força de atrito. Para evitar rotacionar parte por parte, será criado um grupo para rotacionar tudo de uma vez. Na árvore de projeto, clique na aba Groups. Clique com o botão direito em qualquer lugar da árvore de projeto e selecione New Group. 31 Na caixa Objects In Group clique com o botão direito e selecione All Browse. Dê dois cliques em Plano_Inclinado e selecione PART_2, PART_3, JOINT_1 e JOINT_2. Pressione OK. Modifique o Group Name para All e pressione OK. Clique com o botão direito no ícone de rotação e selecione Precision Move. Preencha como mostrado abaixo e clique no ícone Z. OBS: Não pressione OK ou Apply. Feche a janela após pressionar o ícone Z. Todo o modelo foi rotacionado de 5º em torno do eixo Z do MARKER_1. Faça uma nova simulação com o mesmo End Time. Perceba que a caixa desliza até sair da rampa. Abra o post-processor e, sem deletar a curva plotada da simulação anterior, adicione a mesma curva para essa simulação. Para fazer isso, verifique que Result Sets está selecionado em Source, selecione FRICTION_1 e FZ. Com o novo ângulo de inclinação da rampa de 20º, tem-se o valor esperado para a força de atrito como 1(9.80665)(0.2)cos(20) = 1.843 N. O valor traçado pelo gráfico é de 1.843 N. 32 3.4. ANÁLISE DINÂMICA – ROBÔ RP Até então foram vistos exemplos sem a utilização propriamente dita do tensor de inércia. No exemplo a seguir o tensor será modificado com a ajuda do software SolidWorks para obtenção do torque na junta de rotação e da força na junta prismática. O modelo a ser construído é o mesmo da figura abaixo. Fonte: CRAIG, J. Introduction to Robotics – Mechanics and Control – 3ed. pg 184 Este mecanismo, será representado com corpos cilíndricos, desenhados no SolidWorks como mostrado abaixo. 33 Crie um novo modelo no Adams/View e dê o nome RP_Robot. Criação da Geometria Crie o primeiro cilindro clicando no ícone Cylinder ,com início na origem, comprimento de 400 mm e raio de 50 mm na direção X. Crie o segundo cilindro com comprimento de 400mm e raio de 25mm, com início no centro de massa da PART_2, na direção X. A geometria está completa como mostrada na figura abaixo. 34 Criação das Juntas Crie agora a junta de revolução entre a PART_2 e o Ground e a junta de translação entre a PART_3 e a PART_2. A junta de translação deverá ser criada no centro de massa da PART_3 e orientada na direção cm.Z. Criação dos Movimentos das Juntas Primeiramente crie o Motion de revolução na JOINT_1. Clique com o botão direito e então em Modify. Preencha como mostrado abaixo. Crie o Motion de translação na JOINT_2. Clique com o botão direito e então em Modify. Preencha como mostrado abaixo. 35 O modelo geométrico está completamente definido, porém as propriedades de massa e inércia ainda não foram modificadas, portanto a análise dinâmica ainda não fornecerá dados corretos. Modificação das Propriedades dos Objetos O padrão do software é calcular as propriedades de massa e inércia a partir da geometria e material de cada objeto construído. Caso a geometria criada no Adams seja idêntica à criada no SolidWorks, as propriedades estarão corretas, porém geralmente as geometrias criadas no SolidWorks são muito complexas para serem criadas no Adams. Por isso, utiliza-se a geometria simplificada no Adams com as propriedades das geometrias complexas do SolidWorks. Veja o Anexo 2 para entender como os momentos de inércia são calculados e inseridos. Clique com o botão direito na PART_2 e em Modify. 36 Clique em Show calculated inertia. Caso o usuário tenha desenhado a montagem no SolidWorks, clique na geometria que representa a PART_2 e na aba Evaluate, clique em Mass Properties. Observe que os valores divergem um pouco. Para ter o modelo mais preciso, é interessante utilizar as propriedades do SolidWorks. Para isso, no Adams, com a aba Modify Body ainda aberta, modifique o Define Mass By para User Input. Ao modificar para Define Mass By User Input um Marker de referência deve ser especificado para o centro de massa e caso seja necessário, especificar a referência para obtenção do tensor de inércia. A orientação do Marker do centro de massa deve coincidir com a orientação do eixo global do SolidWorks para que o tensor seja inserido de forma correta. Para isso, antes de inserir os valores de inércia, clique com o botão direito do mouse em PART_2—Marker: cm e clique em Modify. Os valores definidos para a orientação são 90,90,0. Para que o Marker tenha a mesma orientação que a origem global os valores da orientação devem ser 0,0,0. Modifique e pressione OK. Tendo feito isso, as propriedades de inércia poderão ser inseridas diretamente do SolidWorks para o Adams/View. 37 Como a geometria foi criada igualmente, o centro de massa em ambas geometrias está localizado no mesmo ponto, portanto não há necessidade de modificar o Center of Mass Marker. Quando nada é inserido no campo Inertia Reference Marker o software utiliza os valores inseridos para o tensor com referência no centro de massa. Pressione OK e faça o mesmo procedimento para a PART_3, inclusive a modificação da orientação do PART_3—Marker: cm. 38 OBS: O Anexo 2 mostra como os tensores de inércia são calculados no SolidWorks e como devem ser utilizados no Adams. Simulação Com as propriedades definidas, basta simular e verificar os resultados. Preencha o Simulation Control como mostrado abaixo. A partir das propriedades dos Motions definidas, 12 segundos de simulação retornarão 60º na JOINT_1 e 120mm na JOINT_2. Para essa posição específica, o resultado teórico do torque na 39 JOINT_1 e da força na JOINT_2 são mostrados na figura abaixo, obtidos através de um código criado em Matlab como o do Anexo 3. Antes de realizar a simulação, é interessante modificar as unidades do modelo para obter o torque em N.m. Para isso, clique em Settings  Units. Modifique Length para Meter e pressione OK. OBS: Note que ao modificar a unidade para metros, caso o usuário não tenha especificado a unidade na criação da geometria (ex: invés de entrar com 400 mm, o usuário entrou somente com 400), esta receberá a unidade do modelo, sendo assim 400 metros, por exemplo. OBS: Como o Function Builder não aceita unidade, ao modificar para metros, o Motion de translação com valor 10, agora corresponde a 10 metros/s. Modifique este Motion para 0.01 metro/s. Pressione Play para simular. Abra o Post Processor apertando F8. Com Objects selecionado no campo Source, selecione MOTION_1, Element_Torque, Mag e adicione a curva. A curva adicionada representa o torque na JOINT_1 dependente do tempo. Note que no tempo igual a 12 segundos o valor do torque é de 40.1644 N.m. Faça o mesmo para o MOTION_2, selecionando Element_Force, Mag e adicione a curva. O valor da força no tempo igual a 12 segundos é de 52.6699 N. Os valores obtidos na simulação são muito próximos dos valores obtidos teoricamente, o que caracteriza um excelente resultado de simulação. 40 Exercício Extra Exercício: Trace o gráfico do torque dependente do ângulo da JOINT_1 e a força dependente do deslocamento da JOINT_2. Dica: Para o deslocamento basta utilizar o MOTION_2, Trasnlational_Displacement e Mag. 3.5. ANÁLISE DINÂMICA – EXERCÍCIO – ROBÔ RR Construa o modelo de um robô RR (rotação – rotação) como o mostrado na figura abaixo. Para o primeiro Motion de revolução utilize a velocidade angular de 5d e para o segundo 6d. Plote o gráfico da magnitude do torque requerido em cada junta dependente do ângulo correspondente de cada junta. Utilize o tempo de simulação igual a 10 segundos. Dica: O usuário deverá obrigatoriamente criar uma montagem no SolidWorks como a da figura, especificar o material das peças que compõem a montagem como Aço 1020, e obter as propriedades de massa, Lxx, Lyy e Lzz de cada peça para utilizar no mecanismo do Adams. Caso contrário, o usuário não obterá as mesmas respostas. 41 RESPOSTAS: Torque na Junta 1 x θ1 Torque na Junta 2 x θ2 42 3.6. IMPORTAÇÃO DO SOLIDWORKS O software Adams não é famoso pelo CAD, tendo interface complicada e poucos recursos para a criação de geometrias complexas. As propriedades importantes para a resolução dos problemas no software são aquelas de massa e inércias. Muitas vezes os engenheiros simplificam parte da geometria de forma brusca, por exemplo aproximar um motor para um cubo ou esfera. Apesar dessa característica do software, muitas vezes é interessante ter o modelo parecido com o caso real, principalmente em apresentações, uma vez que um modelo mais próximo do real tende a chamar mais a atenção. Por isso a união Adams-SolidWorks é importante (além da função de retirada de propriedades de inércia). Algumas propriedades da importação direta do SolidWorks para o Adams devem ser notadas, tais como: 1) Movimento relativo entre as partes Antes de importar qualquer peça, o usuário deve ter atenção para importar juntas somente peças que não possuem movimento relativo entre elas, pois cada importação de peça é tratada como uma geometria fixa, sendo assim, ela é associada com somente uma Part no Adams. 2) Ausência de Markers Ao importar uma peça ela será criada no Adams sem nenhuma informação associada, isso implica que o usuário deverá criar os Markers quando necessário. O Marker servirá para indicar o centro de massa da Part. 3) Localização da peça Talvez a pior das restrições é de que a peça a ser importada no Adams deve estar localizada no SolidWorks exatamente na mesma posição e orientação que o usuário deseja que esta seja construída no Adams. Por isso, será necessário isolar peças em posições específicas dentro de uma montagem e salvá-las naquela posição antes de prosseguir para a importação. 4) Propriedades do arquivo de importação A propriedade do arquivo a ser importado será o .IGS. Toda peça importada para o Adams é convertida em shell (casca). Para que a importação ocorra de forma correta, algumas propriedades 43 do arquivo .IGS devem ser modificadas na janela de salvamento do SolidWorks. Sendo assim, ao clicar em “Salvar Como” no SolidWorks, modifique o Tipo do arquivo para IGES (*.igs) e clique em Options como mostrado a seguir. Em Options, modifique IGES solid/surface entities para Manifold Solid (type 186) e preencha como mostrado a seguir. Pressione OK. A partir de agora as peças salvas em .IGS poderão ser importadas para o Adams. 3.7. IMPORTAÇÃO DO SOLIDWORKS PARA O ADAMS – ROBÔ RP Neste exemplo o usuário importará duas peças do SolidWorks para o Adams/View e criará todos os recursos necessários para criar a análise dinâmica como no exemplo 3.4. A montagem encontra-se na pasta do usuário e é a mesma mostrada abaixo. 44 Como dito anteriormente, as peças devem estar na exata posição com que o usuário queira que a peça seja criada. Note que a origem da montagem do SolidWorks fica no centro do cilindro que funciona como base para revolução. OBS: Lembre-se que a origem global do SolidWorks será a mesma que a do Adams. Exemplo: O usuário criou um cubo fora da origem. Ao importar a peça para o Adams, o cubo estará fora da origem, na exata posição que foi criado no SolidWorks. 45 Tem-se também que a peça 1 possui movimento relativo com a peça 2, portanto o usuário deverá importar uma de cada vez. Para que isso seja feito, a peça 1 deverá ser isolada da peça 2, na posição exata em que se encontra na montagem. Uma maneira fácil de isolar uma peça em uma montagem na posição em que ela se encontra na montagem é criando uma submontagem da peça. Para que isso seja feito o usuário deve clicar com o botão direito na peça que deseja isolar e selecionar Form New Subassembly. Clique na montagem criada para a peça 1 e clique no segundo ícone Open Subassembly in Position. Isso fará com que a montagem que engloba a peça desejada para importação seja aberta isoladamente na posição em que se encontra na montagem. 46 Clique em Save as e escolha o tipo como IGES. Salve com o nome RP_Import_1. De volta à montagem, clique com o botão direito na peça 2 e transforme ela em uma submontagem. Abra a submontagem na posição. Note que ao fazer isso, a origem da montagem permanece na posição original. Caso o usuário não tivesse criado uma nova submontagem, a origem seria aquela que foi adotada quando a peça estava sendo criada (eixo azul que está na peça). Salve como IGES com o nome RP_Import_2. Abra o Adams/View e crie um novo modelo com o nome RP_Import. Criação da Geometria Clique em File  Import. Modifique o File Type para IGES. Clique com o botão direito no campo File To Read e selecione Browse. Selecione o IGES RP_Import_1. Em Part Name clique com o botão direito e então clique em Part e Create. Preencha como mostrado abaixo e pressione OK. 47 Note que as coordenadas do campo Location são as coordenadas do centro de massa retiradas do SolidWorks. Ao preencher o campo Location, dois Markers serão criados nessa coordenada. Tendo feito isso, o usuário estará de volta na janela File Import que deverá estar preenchida como mostrado abaixo. Pressione OK e a Shell Part será criada como mostrado na figura abaixo. 48 Note também, que como especificou-se a localização da PART a ser criada como o centro de massa adquirido pelo SolidWorks, dois Markers foram criados nessa localização, eliminando a necessidade de criar um novo Marker para localizar o centro de massa. Para verificar esses Markers, na árvore de projeto, dê duplo clique em Bodies e em Import_1. Clique com o botão direito no Marker MAR12 e selecione Show. Caso ainda não aparecer, pressione a tecla “V” do teclado. Clique novamente com o botão direito no MAR12 e selecione Rename. Em New Name digite cm e pressione OK. Para importar a segunda peça clique novamente em File  Import. Selecione o File Type como IGES caso não esteja já selecionado. Em File To Read clique com o botão direito, clique em 49 Browse e selecione o arquivo RP_Import_2. Em Part Name clique com o botão direito e então clique em Create. Preencha como mostrado abaixo. Pressione OK para voltar para a janela File Import. Pressione OK. Novamente dê dois cliques em Bodies e clique no “mais” em frente ao Import_2. Clique com o botão direito em MAR19 e selecione Show. Clique novamente com o botão direito em MAR19 e selecione Rename. Entre com o New Name como cm e pressione OK. A geometria do modelo está completa. Resta agora modificar as propriedades de massa e inércia, bem como criar as juntas e os movimentos. 50 Criação das Juntas Crie a junta de rotação entre o Import_1 e o Ground. Para especificar o local onde essa junta será aplicada, clique com o botão direito no espaço de trabalho e entre com as coordenadas 0,0,0. Crie a junta de translação entre o Import_2 e o Import_1, aplicada no centro de massa do Import_2 e direcionada em cm.X. Criação dos Movimentos das Juntas Crie um Motion de revolução para a JOINT_1 e um Motion de translação para a JOINT_2. Antes de modificar os Motions, modifique a unidade de comprimento de milímetros para metros clicando em Settings  Units. Modifique o MOTION_1 para 8d e o Type para Velocity. 51 Modifique o MOTION_2 para 0.02 e o Type para Velocity. Modificação das Propriedades dos Objetos Clique com o botão direito na PART Import_1 e selecione Modify. OBS: Por padrão, peças importadas não possuem propriedades definidas pela geometria, isso porque o formato de importação no Adams é shell, não criando assim uma geometria sólida. Os valores a seguir foram retirados do SolidWorks como em exemplos anteriores. Preencha para o Import_1 como mostrado abaixo. 52 Faça o mesmo procedimento para o Import_2 e preencha como mostrado abaixo. Simulacão Simule com End Time 10s e Steps igual a 100. Aperte F8 para abrir o Post Processor. Clique com o botão direito na tela branca e selecione Load Animation. Pressione Play para observar o mecanismo funcionando. Clique com o botão direito no espaço de trabalho da animação e selecione Load Plot. Com Source definido para Result Sets, defina o Independet Axis como Data e selecione MOTION_1, ANG e pressione OK. Com Source definido para Objects, selecione MOTION_1, Element_Torque, Mag e clique em Add Curves. Sem fechar o Post Processor, volte para o View e clique com o botão direito no MOTION_2 e então Modify. Modifique o Function (time) para 0 e pressione OK. 53 Simule novamente e volte para o Post Processor. Na mesma janela com uma curva já plotada, plote a mesma variável (MOTION_1, Element_Torque, Mag) e verifique a diferença entre o torque quando o MOTION_2 não movimenta o Import_2. Modificação do mecânismo Para finalizar a utilização do Adams/View, o usuário criará uma junta cilíndrica. Delete a junta de translação criada entre o Import_2 e o Import_1. Ao fazer isso uma mensagem aparecerá como a mostrada abaixo, informando que existem outros objetos criados que dependem dessa junta (no caso, o MOTION_2). Clique em Delete All para deletar o Motion junto. 54 Crie uma junta cilíndrica, clicando no ícone Cylindrical Joint e modifique a opção Normal To Grid para Pick Geometry Feature caso esta não esteja selecionada. Selecione o Import_2 e o Import_1. A localização no Import_2.cm e a orientação cm.X. Crie um Motion de revolução nessa junta. Clique com o botão direito no Motion criado e em Modify. Na caixa Function (time) clique no botão com os três pontos. Desça a barra de rolagem até encontrar a função Step. De um duplo clique nela e a caixa Define a runtime function será preenchida com a forma dessa função. Apague o termo 30.0d*time. A função STEP nada mais é que um degrau. STEP( x , x0 , h0 , x1 , h1 ). x = variável a ser utilizada; x0 = valor inicial da variável; h0 = f(x0); x1 = valor final da variável; h1 = f(x1). 55 Preencha como mostrado abaixo. A função dessa forma representa que até o tempo 5s o Motion terá valor igual a 0. De 5s até 8s o Motion variará de 0 até 60º. Após 8s o valor 60º permanece constante. Caso o usuário tenha alguma dificuldade na visualização da função, esta pode ser representada em um gráfico através do ícone Plot, porém como a função ultrapassa 5s de tempo, o ícone Plot Limits deve ser alterado. Clique em Plot Limits e modifique o End Value para 10 e pressione OK. Clique agora no ícone Plot para visualizar a função construída. OBS: O valor 60º é representado em radianos. Feche a janela do gráfico e pressione OK para criar a função STEP. 56 Como o Type está definido para Displacement, esses valores serão representados em deslocamentos. Caso o usuário queira modificar para Velocity, ele terá a mesma função, porém variará a velocidade de rotação do MOTION_2 de 0 para 60º/s no intervalo de 5 a 8s. Por ora deixaremos como Displacement. Pressione OK. Crie um Motion de translação nessa mesma junta cilíndrica. 57 Modifique esse Motion de translação com o Function (time) igual a 0.02 e Type como Velocity. Pressione OK e então simule novamente com End Time igual a 10s e Steps igual a 100. Abra o Post Processor, clique com o botão direito no espaço de trabalho e selecione Load Animation. Pressione Play para verificar o movimento do mecanismo. 58 4. INTRODUÇÃO AO ADAMS CAR O software Adams/Car possui dois tipos de interfaces, o Template Builder e o Standard. O Template Builder é utilizado para construir modelos (Templates), enquanto o Standard é utilizado para criar subsistemas e montagens, além de realizar as simulações. Inicialmente o software é configurado no modo Standard, por isso, ao abrir o Adams/Car, não há possibilidade de escolha de modo. .acar.cfg Este arquivo é o arquivo raiz do software. Contém várias informações de inicialização do mesmo. Após iniciar ao menos uma vez o software, digite no search do seu computador o nome dele (com o ponto na frente, pois existe acar.cfg também) e abra o mesmo utilizando o bloco de notas. Em Desired user mode apague standard e escreva expert para que possa ser possível utilizar o modo Template Builder. Neste bloco de notas ainda é possível ver os bancos de dados que estão sendo utilizados. Salve o arquivo e feche. 59 4.1. TESTE DE SIMULAÇÃO INICIAL O Software Adams/Car possui diversos tipos de arquivos que são gerados como resultado de uma simulação, entre eles destacam-se graphic files, request files e results files. Estes arquivos possuem suas características únicas que variam tamanho do arquivo, velocidade de processamento, qualidade de processamento, quantidade de informações, entre outros. O usuário define como os resultados das simulações serão salvos. Algumas vezes o software encontra problemas para salvar arquivos quando existe um conflito ocorrendo entre os tipos de arquivos que serão salvos. Um dos erros observados pelo autor é a utilização de um usuário do Windows que possua o nome com caracteres especiais (~, ‘, ^, `, ´). Para verificar se o software possui conflito de arquivos, primeiramente o usuário deve realizar uma simulação de veículo completo seguindo os passos a seguir. 1) Abra o Adams/Car no modo Standard Interface 2) Na aba File, clique em Open e então Assembly... 3) Clique com o botão direito do mouse no campo Assembly Name 4) Search, /assemblies.tbl 5) Selecione o arquivo MDI_Demo_Vehicle.asy e pressione Open, e então OK 60 6) Com a Assembly carregada, vá na aba Simulate  Full Vehicle Analysis  Course Events  ISO Lane Change. 7) Preencha a janela aberta da seguinte forma. 8) Clique em OK. O Simulador irá começar a realizar as operações de iteração. Caso o Simulation não rode como mostrado na figura abaixo, o possível caso é o conflito entre arquivos de resultado. Caso a simulação tenha sido realizada, desconsidere os próximos passos. 61 9) Para resolver o problema, modifique o tipo dos arquivos resultado. Clique na aba Settings  Solver. Na janela que irá se abrir, selecione Output na opção Category, e marque a opção More no canto inferior esquerdo. 10) Clique em Yes para Save Files e modifique como na figura a seguir. 62 11) Feche a janela e refaça a simulação para verificar se ela funciona. Este tipo de problema ocorre quando o software não consegue ler o arquivo de resultados gerado. Muito provavelmente é decorrente do nome da pasta do usuário (username folder) estar definido com espaços ou acentos. Esta é uma solução temporária para este problema, uma vez que qualquer tipo de arquivos de resultado deveria estar disponível. 4.2. BANCO DE DADOS Originalmente o software vem configurado com dois bancos de dados (database), o acar_shared e o acar_private. Um database é uma pasta, configurada pelo programa como padrão aonde o software irá armazenar os templates, subsistemas, montagens e todos os outros elementos que irão compor uma montagem completa. É interessante o usuário criar o próprio database para que o acar_shared seja um database não modificável, ou seja, mesmo utilizando os elementos que este database possui, ao salvar a modificação feita em algum elemento, este elemento será salvo no seu database, deixando o acar_shared, que possui muitos elementos prontos, intacta. 63 EXEMPLO: Caso o usuário esteja trabalhando com outra pessoa em um mesmo projeto e essa pessoa desenvolveu novos elementos, estudos, ou qualquer outra coisa que o usuário precise utilizar para continuar o projeto, essa pessoa pode enviar o database dela com esses elementos, e o usuário somente adiciona este ao seu projeto, utilizando assim os arquivos de outra pessoa. Esse processo seria equivalente a receber uma pasta de desenhos no Solidworks e utilizar no seu computador. Para saber quais database estão configurados no software clique na aba Tools  Database Management  Database Info. O database que contém os dois asteriscos está definido como o padrão para a escrita de dados salvos, enquanto os outros que aparecerem na lista são os database que podem ser escolhidos como padrão, ou utilizados. 64 Para criar um novo database clique na aba Tools  Database Management  Create Database. Database Alias é o nome que o usuário quer dar ao database, e Database Path é o diretório onde o database será criado. Após criar o database, é necessário torná-lo o padrão para salvar os arquivos. Para isso clique em Tools  Database Management  Set Default Writable e então selecione o database aonde o usuário quer que os modelos, subsistemas e montagens sejam salvos. Para conferir se o database padrão é aquele que o usuário escolheu, vá novamente em Database Info e verifique se o database criado está com dois asteriscos. Para adicionar um database ao software basta clicar em Tools  Database Management  Add to Session e então escolher a pasta do database e o nome. OBS: Para deletar um Database é necessário, além de apagar a pasta no local criado, acessar o .acar.cfg e deletar o nome e diretório do mesmo. Caso isso não seja feito, o programa entrará em conflito toda vez que for iniciado. 4.3. HIERARQUIA DE DADOS Como mencionado anteriormente o software possui divisões modelo, subsistema e montagem.  Modelo (Template): Define a topologia de um subsistema. Equivalente a desenvolver um novo “modelo” (desenho) específico. Por exemplo, existem suspensões duplo A, macpherson, multilink. Criar um novo Template seria equivalente a criar um novo tipo de suspensão (suspensão “nova”). No Template são criados os corpos, as juntas e são definidas como as partes se conectam. 65  Subsistema (Subsystem): A partir de um Template o subsistema é criado. Ao criar um subsistema o usuário tem a possibilidade de variar parâmetros que foram definidos no Template sem afetar o arquivo Template. Equivale a ter um Template de suspensão duplo A, e vários subsistemas com variações de parâmetros. Exemplo: O usuário necessita avaliar o desempenho da suspensão para diferentes ângulos de cáster. O mesmo Template é utilizado, porém cada subsistema terá o ângulo de cáster diferente.  Montagem (Assembly): A união de subsistemas cria uma montagem. As análises são realizadas em cima de montagens. É crucial que na criação de Templates os Communicators sejam definidos de forma correta para que ao criar a montagem, os subsistemas transmitam informações corretamente. As montagens podem ser genéricas (quando necessita-se avaliar qualquer tipo de montagem), de suspensão (para análises de suspensões individuais) ou de carro completo (deve possuir no mínimo os subsistemas de direção, suspensão dianteira, suspensão traseira, chassi, roda dianteira e roda traseira). Para criar um Template o usuário deve selecionar a opção Template Builder ao iniciar o software. 4.4. TEMPLATES Como explicado anteriormente o modo Template Builder permite ao usuário a construção de novos modelos. Importante para quando os modelos do acar_shared não atendam ao que o usuário pretende simular. Antes de iniciar a construção de um Template alguns conceitos devem ser apresentados.[4]  Major Role: Especifica o tipo do modelo que será construído (suspensão, direção...).  Minor Role: Especifica aonde o modelo será utilizado (na frente, atrás).  Hardpoint: Ponto sem orientação ligado ao Ground que serve para criar geometrias ou servir de referência para outros elementos.  Construction Frame: Ponto no espaço com orientação baseado nas coordenadas x,y,z, ângulos ou até mesmo outros elementos. Utilizado quando uma entidade necessita não só a parte criada por Hardpoints, mas uma orientação também. Geralmente é o referencial para 66 orientação de juntas tipo Hooke ou Convel. Quando um novo Link for criado a partir de uma posição de um Link já existente que não possui Hardpoint, Construction Frame é utilizado.  General Part: Ao definir uma General Part, o usuário está informando que está criando um novo corpo. Ele utiliza esse ponto chamado General Part para criar geometrias que serão consideradas dessa General Part. Um General Part pode ser comparado com uma bandeja da suspensão. Pelo menos dois tubos precisam ser soldados para criar uma bandeja. No software dois Links (tubos) serão criados associados a esse General Part (bandeja). As geometrias criadas em um mesmo General Part não possuem deslocamento relativo entre elas. No geral, quando dois corpos possuem movimento relativo, eles são feitos a partir de dois General Part, um para cada parte que possui movimento relativo. Um amortecedor necessita dois General Part pois existe movimento de translação entre a estrutura superior e a inferior. O General Part funciona como as Part criadas no View, onde as propriedades de massa e inércia podem ser alteradas.  Left, Right, Single: Na criação de qualquer elemento no Adams, será necessário especificar se o elemento está localizado à esquerda, direita ou é único. Os items Left e Right criam Hardpoints duplos, espelhados a partir do plano XZ, porém se Left for selecionado, a localização do Hardpoint a ser criado, obrigatoriamente deve ser na esquerda para ter seu correspondente espelhado à direita. O mesmo ocorre ao selecionar Right. Ao selecionar Single, o Hardpoint não será espelhado, poderá ser criado tanto na esquerda como na direita.  Mount: Um Mount Part é uma parte que não possui massa e é ligada ao Ground (assim como os Hardpoints). Mounts estão diretamente ligados aos Communicators. A principal função de um Mount é ser substituído por uma outra parte de outro subsistema quando os Input Comunicators coincidem com os Outpus Comunicators. Ao criar um Mount, um Input Comunicator é automaticamente criado do tipo Mount. No geral, utiliza-se Mounts em extremos de subsistemas onde sabe-se que outro subsistema irá começar, por exemplo nas bandejas para a gaiola, ou do subsistema de direção para os axiais da direção localizados na suspensão. 67  Communicator: O Communicator é um dos principais elementos a ser criado. Ele informa ao programa qual geometria do Template será a manga de eixo (por exemplo), onde determinado subsistema deve ser ligado em outro subsistema, como subsistemas interagem, etc. Um Communicator Output é criado baseado em um Communicator Input em um outro subsistema. Por exemplo: O subsistema Testrig (plataforma de testes) possui diversos Communicators Input e Output. Quando o usuário fizer uma simulação de uma montagem de suspensão, o Template que foi a base para a montagem de suspensão deve obrigatoriamente possuir os Communicators Output necessários para combinar com os Input do Testrig (pelo menos aqueles necessários para o tipo de simulação).  Switch: Um Switch Part funciona como um Mount, porém possibilita flexibilidade na topologia do Template. A função do Switch é ter vários tipos de Mount associados a ele e utilizar o Mount mais adequado para cada situação.  Requests: Requests são criados para avaliar os resultados de uma análise. Todos os parâmetros analisados em uma simulação no pós processador são Requests pré definidos para o tipo de simulação sendo feita. Algumas vezes nem todos os resultados desejados pelo usuário são definidos para aquele tipo de simulação, por isso criam-se Requests. 5. TEMPLATE E SIMULAÇÃO DE SUSPENSÃO DUPLO A Após breve introdução sobre o layout e funcionalidades do software, é hora de começar a exemplificar a criação de modelos. A partir do desenho da suspensão e direção no Solidworks, os Hardpoints são extraídos. Duas maneiras simplificam a extração das coordenadas dos pontos. A primeira leva em consideração que a montagem no SolidWorks está no início, sendo assim, o usuário localiza a caixa de direção coincidente com a origem da montagem. A partir daí, cria-se pontos utilizando 3D sketch nos locais importantes para criação de Hardpoints. As coordenadas desses pontos serão as coordenadas dos Hardpoints. O segundo método, empregado quando a montagem em SolidWorks já está pronta, é a criação de pontos utilizando 3D sketch e avaliando as dimensões desses pontos a um ponto criado no centro da caixa de direção. A figura abaixo mostra o primeiro método, quando 68 as coordenadas são as mesmas do ponto criado, pois a origem da montagem se encontra na origem desejada para o projeto. Como dito anteriormente, os eixos coordenados do SolidWorks são diferentes do Adams/Car. O usuário deve estar atento a isso para fazer as modificações necessárias no momento de inserir as coordenadas dos Hardpoints no Car. OBS: O eixo X positivo é direcionado para a parte de trás do veículo, Y é direcionado para o lado direito do veículo e Z é direcionado para cima. Sendo assim, left será Y negativo e right será Y positivo. O quadro a seguir mostra a relação dos eixos no Adams/Car com os eixos no SolidWorks. Adams/Car X Y Z SolidWorks -Z -X Y Abra o Adams/Car e selecione o modo Template Builder. Caso já esteja com o Adams aberto no modo Standard, basta apertar F9 para mudar de interface. 69 Antes de começar a construir qualquer coisa, um novo Template deve ser criado. Clique em File  New. Digite o nome para o Template e especifique o Major Role. Automaticamente um Marker será construído indicando a posição 0,0,0 e definindo o vetor gravidade. 5.1. GEOMETRIA Para criar um Hardpoint basta clicar em Build  Hardpoint  New. 70 O Hardpoint Name será o nome do Hardpoint, e Location sua posição no espaço. Caso o usuário queira criar vários Hardpoints sem repetir o processo, basta clicar em Apply invés de OK. Caso algum Hardpoint seja criado errado, ou no futuro o usuário queira apenas modificar um Hardpoint, basta clicar na opção Table (logo acima de New na figura acima). Todos os Hardpoints do Template serão exibidos na tabela. Qualquer mudança nas coordenadas irá modificar o Template. Para a criação de uma geometria, obrigatoriamente Hardpoints e uma General Part devem ser especificados. Os Hardpoints extraídos da montagem no SolidWorks são listados abaixo, crie eles. OBS: Todos são do tipo left. Name damper_lower_fix damper_upper_fix lca_front lca_outer lca_outer_out lca_rear steer_arm tierod_inner tierod_outer uca_front uca_outer uca_outer_out uca_rear wheel_aux_lower wheel_aux_upper wheel_line Location 57.52, -495.8, -157.78 132.2, -237.04, 193.52 -59.67, -229.65, -48.44 47.46, -541.87, -205.14 47.46, -570.95, -205.14 208.88, -229.65, -105.52 56.16, -607.03, -181.23 0, -254.94, 0 13.65, - 613.27, -165.75 -77.06, -238.61, 72.63 91.83, -508.68, -83.24 91.83, -548.08, -83.24 310.75, -238.61, -9.8 47.78, -607.03, -204.26 64.43, -607.03, -158.53 55.81, -607.03, -182.2 As coordenadas aqui obtidas irão gerar uma geometria de suspensão com problemas de bumpsteer [5], porém serão utilizadas para efeito de aprendizado. Ao criar os Hardpoints, o usuário deverá ter algo parecido com a figura abaixo. 71 Antes de criar as geometrias, General Parts devem ser criadas para que as geometrias possam ser anexadas a cada General Part. O usuário criará primeiramente as bandejas inferiores. Clique em Build  Parts  General Part  New. O General Part deve ser criado no centro de massa da peça que ele representa para que o Marker chamado Inertia Frame, que localiza a referência para o cálculo dos tensores de inércia, esteja na mesma posição. Existem outras formas de localizar o centro de massa das General Part, porém esse é o indicado pelo autor. Da mesma maneira utilizada no Adams/View, as coordenadas do centro de massa da bandeja inferior são retiradas da montagem no SolidWorks. Para efeito desta apostila, a bandeja inferior terá as propriedades adquiridas corretamente. Para manter os dados de projetos da equipe, as outras General Part serão preenchidas com valores unitários. OBS: Normalmente os valores de massa e inércia são modificados somente no subsistema, tendo assim um Template “base” com informações unitárias, com a possibilidade de diversos subsistemas com geometria e propriedades diferentes. 72 Para facilitar a obtenção das propriedades como centro de massa e momentos de inércia é aconselhável que o usuário crie uma nova coordenada de referência no SolidWorks. Essa coordenada será orientada da mesma maneira que a origem global do Adams/Car, sendo então utilizada como referência para obtenção da localização do centro de massa e dos momentos de inércia. Com a montagem aberta no SolidWorks, clique na aba Assembly. Clique no ícone Reference Geometry e então em Coordinate System. Selecione o ponto para a criação do sistema de coordenadas como a origem global do veículo que será analisado. No caso do tutorial, foi definido que a origem se encontra no centro da cremalheira. 73 Perceba que os eixos coloridos possuem as mesmas orientações que aquelas do Adams/Car. Para a construção do General Part que representará a bandeja inferior, será levado em consideração as peças que não possuem movimento relativo à bandeja propriamente dita. Sendo assim, as propriedades de centro de massa e momentos de inércia serão calculadas utilizando as geometrias da bandeja inferior, porca e terminal rotular. Ao selecionar essas três peças, clique na aba Evaluate e então em Mass Properties. Modifique a caixa Report coordinate values relative to: para o novo sistema de coordenadas criado. Preencha a janela do General Part conforme indicado. OBS: Lembre-se que a orientação do General Part deve ser a mesma que as coordenadas globais do Adams/Car, por isso, preencha o campo Orientation Dependency com User-Entered Values e insira os valores 0,0,0 para os Euler Angles. 74 Clique em Apply. Faça os mesmos procedimentos para a criação do General Part relacionado a bandeja superior. OBS: Os valores inseridos daqui em diante serão unitários para manter os dados de projeto da equipe. 75 Com estes General Part criados, as geometrias das bandejas podem ser construídas. Para isso clique em Build  Geometry  Link  New. Preencha como mostrado nas próximas figuras, sempre clicando em Apply. Os três primeiros Links formam a bandeja inferior, enquanto os outros três formam a bandeja superior. BANDEJA INFERIOR 76 BANDEJA SUPERIOR 77 OBS: Caso o usuário marque a caixa Calculate Mass Properties of General Part, as propriedades de massa e inércia serão modificadas automaticamente baseado na Density escolhida através do material ou do valor entrado. Como o usuário estará especificando as propriedades de massa e inércia nos General Part, não é necessário especificar durante a criação das geometrias. Será criado agora o General Part para a manga de eixo e sua geometria. 78 79 Apesar de o steer arm ser uma peça separada no carro real, ela é fixada na manga de eixo, portanto não existe movimento relativo entre as partes. Sendo assim, o steer arm será construído no mesmo General Part da manga de eixo. Note que a geometria da manga de eixo possui alguns “vazios”. Estes serão preenchidos com Ellipsoids. 80 Clique em Build  Geometry  Ellipsoid  New. Preencha como mostrado nas figuras a seguir. 81 EIXO O eixo do veículo também é fixo na manga de eixo, portanto será criado no mesmo General Part. Este será representado pela geometria de um cilindro. A criação de cilindros depende de um Construction Frame como base. Para criar o Construction Frame clique em Build  Construction Frame  New. Para criar o cilindro que representará o eixo clique em Build  Geometry  Cylinder  New. Preencha como mostrado abaixo. 82 A figura abaixo mostra a aparência que o Template do usuário deve ter até o momento. É necessário criar os parâmetros de suspensão, pois é interessante que não seja preciso modificar a geometria para variar valores estáticos de toe e camber. Para isso, serão criados os parâmetros da suspensão. Clique em Build  Suspension Parameters  Toe/Camber values  Set. Estes ângulos iniciais de projeto possuem valores zero. Portanto clique em OK com todos os valores iguais a 0. Crie agora um novo Construction Frame que variará de orientação baseado nos valores de toe e camber definidos nos parâmetros. 83 TERMINANDO A BANDEJA INFERIOR O amortecedor (mola + amortecedor) é ligado no chassis e na bandeja inferior. O usuário criará a fixação do amortecedor na bandeja inferior agora. Para isso, serão necessários dois novos Construction Frames. 84 Esses Construction Frames foram construídos a fim de evitar grande número de Hardpoints. Agora os Links são criados. 85 AMORTECEDOR Um amortecedor possui duas partes principais, a superior e inferior. Estas partes possuem movimento relativo entre elas, portanto o amortecedor é um objeto do modelo que depende de dois General Part para ser criado. Antes de criar os General Part, deve-se criar um Construction Frame que servirá como limitante para a mola acoplada ao amortecedor. Agora os General Part do amortecedor serão criados. 86 87 Para criar o amortecedor clique em Build  Forces  Damper  New. Preencha como mostrado. 88 Antes de clicar em OK, perceba o campo Property File. O arquivo especificado nesse campo possui a curva Força X Velocidade do amortecedor. Para verificar a curva que esse Property File padrão carrega, basta clicar no ícone das curvas azul e vermelha no canto inferior esquerdo. Essa curva pode ser modificada de várias maneiras.  Através do deslocamento dos Key Points, clicando em um dos pontos com a circunferência e arrastando. 89  Através da inserção dos valores Slope e Limits, selecionando o número de pontos e apertando Apply.  Clicando em View  Table e inserir valores em tabela.  Criação de um novo Property File. A forma mais adotada pelo autor é a criação de um novo Property File, no qual a tabela é inserida. Para fazer isso o usuário necessitará acessar o Database que deseja criar o novo Property File. Dentro do Database abrir a pasta dampers.tbl e criar um novo documento de texto (bloco de notas). Modifique a extensão do documento de texto de .txt para .dpr (todos os Property Files possuem uma extensão própria). Para que as informações sejam inseridas corretamente, é interessante que o usuário copie o texto de um .dpr já existente. Para isso, acesse o Database chamado shared_car_database e na pasta dampers.tbl abra com um editor de textos o arquivo mdi_0001.dpr. Copie o texto para o novo Property File sendo criado no Database do usuário. Modifique então os valores de força e deslocamento de acordo com a curva do fabricante, ou da curva obtida através de ensaio. 90 Salve o Property File. OBS: O local onde cada Database se encontra pode ser obtido clicando em Tools  Database Management  Database Info... De volta ao modelo, clique com o botão direito no campo Property File e selecione o arquivo .dpr configurado. 91 Pressione OK. MOLA Antes de criar a mola, o usuário deve criar um Mount part, uma vez que a mola e amortecedor são conectados no chassi e suspensão. No Adams/Car, a criação do amortecedor se dá entre dois General Part que são o próprio amortecedor, não tendo a necessidade de conectá-lo ao Mount. A mola é uma parte única deformável, portanto necessita estar conectada no chassi e a um ponto específico, previamente criado como um Construction Frame chamado spring_seat. Para criar o Mount clique em Build  Part  Mount  New. Sempre que um modelo necessite ser conectado a outro modelo inexistente, um Mount deve ser criado. Quando um Mount é criado, automaticamente um Communicator Input do tipo Mount é criado no modelo atual. Um Communicator Output deverá ser criado no modelo no qual o modelo atual deve ser conectado, a fim de criar a ligação de transmissão de informações. Caso o usuário queira observar este Communicator basta clicar em Communicators e então Input, na árvore do projeto. 92 Com a criação do Mount, o usuário pode construir a mola. Para criar a mola clique em Build  Forces  Spring  New. Clique em DM(iCoord, jCoord) para que o software calcule a magnitude da distância entre as duas coordenadas especificadas. O Property File da mola segue o mesmo conceito do amortecedor, porém o arquivo deve ficar na pasta springs.tbl e o arquivo deve ter extensão .spr. Clique em OK. AXIAL DA DIREÇÃO Será criado agora o axial da direção, para isso um novo General Part deverá ser criado. 93 Crie agora um Link e duas Ellipsoid. 94 “CUBO DE RODA” O cubo de roda físico estará acoplado com o Template de pneu, porém, é necessário criar um General Part para que seja possível criar uma junta de revolução entre o eixo e a roda/pneu. Para isso, crie a seguinte General Part. 95 A geometria do Template está pronta. Resta agora criar as juntas, buchas e os Communicators. 5.2. BUCHAS Buchas (Bushings) são estruturas que possuem curva de rigidez, que expressam a força resultante em função do deslocamento relativo.[4] O objetivo da adição de buchas é a obtenção de resultados mais reais. Neste tutorial o usuário irá adicionar buchas, utilizando das curvas de rigidez disponíveis no acar_shared. As buchas e juntas (Joints) são elementos que definem como dois corpos se movimentam entre si. Para isso, duas General Part (ou Mount) são especificados. Antes de criar as buchas e juntas torna-se necessário a criação do Mount que representará o chassi (Body) na montagem, para ambas bandejas. Também é necessário criar o Mount que representará o subsistema de direção. Para criar um Mount Part clique em Build  Part  Mount  New. 96 Agora as buchas podem ser criadas. Para criar um bucha clique em Build  Attachments  Bushing  New. Preste atenção que ao criar as buchas a opção Kinematic Mode deve estar selecionada para todas as buchas. Caso contrário, estas estarão ativas em todos os modos. 97 OBS: Preste atenção que as buchas também possuem Property File. 98 99 100 101 Um Construction Frame ainda é necessário para especificar a localização do ponto onde a orelhinha do amortecedor se conecta no chassi. 102 103 5.3. JUNTAS Para criar uma junta clique em Build  Attachments  Joint  New. 104 Nas posições onde buchas foram adicionadas, as juntas criadas serão ativas somente no Kinematic Mode. 105 106 107 Ainda resta criar a junta entre a parte inferior do amortecedor e a bandeja inferior. Para isso será necessário criar um novo Construction Frame que servirá como referência para a orientação da junta a ser criada. 108 Crie agora a última junta, que rotacionará o “cubo de roda” no eixo. Até aqui o modelo está completo. Basta somente agora inserir os Communicators para indicar como cada parte se conecta com ou Testrig ou com outros sistemas. 5.4. COMMUNICATORS Após ter feito todos os passos até aqui, os Communicators que já devem estar criados devido aos Mounts e Parameters Variables são os mostrados na figura abaixo. 109 Como primeiramente será feita somente uma simulação de suspensão dianteira, o único subsistema que será ligado com o sistema de suspensão dianteira é o Testrig. Para saber quais Communicators devem ser criados, um teste será feito. Clique em Build  Communicator  Test. Preencha como na figura abaixo, clicando com o botão direito do mouse para selecionar os Model Names. Pressione OK. Os Comunicators que combinaram foram “camber_angle” e “toe_angle”. Todos aqueles que não dizem respeito ao tipo de conexão entre a suspensão e o Testrig não serão combinados neste ponto. Os Communicators que não são combinados se fixam ao Ground. Portanto Communicators como o criado entre o Tierod e o sistema de direção será fixado ao Ground no local onde foi criado. Observa-se no teste os Communicators Input “wheel_center”, “suspension mount”, “suspension_parameters_ARRAY” e “suspension_upright” como Inputs localizados no Testrig que não foram combinados. Por serem Inputs, Outputs devem ser criados com os mesmos nomes no Template de suspensão para que estes se liguem. O Communicator Output “suspension parameters ARRAY” é criado automaticamente quando esse parâmetro é criado. Para isso clique em Build  Suspension Parameters  Characteristics Array  Set. Neste passo o usuário está definindo quais pontos definem o KingPin (steering axis), além de informar se a suspensão é independente ou dependente. O cálculo a partir da geometria 110 (Geometric) leva em consideração o eixo formado por uma linha que passa pelas duas coordenadas especificadas.[4] O Communicator “suspension mount” informa qual é o General Part que se comportará como o “cubo de roda”, rotacionando juntamente com a roda, porém no Template de suspensão. Para criar o Communicator Output clique em Build  Communicator  Output  New. O Communicator “wheel_center” é um Communicator de localização que informa aonde as rodas serão fixadas. 111 O último Communicator necessário é o “suspension_upright” que informa para o software qual General Part é a manga de eixo. Faça novamente o teste entre Communicators para verificar se todos os Communicators criados estão combinados, uma vez que o usuário pode ter digitado os nomes errados. 112 Se os Communicators foram combinados como mostra a figura acima, o modelo da suspensão está completo para a simulação de suspensão. 5.5. SUBSISTEMA E MONTAGEM DE SUSPENSÃO Salve o Template e pressione F9 para mudar o modo do usuário para Standard. Como explicado na seção 4.3, a partir de um Template cria-se um Subsystem, e a partir de um Subsystem cria-se um Assembly. Ao construir o Subsystem utilizando o Template criado, todas as informações do Template serão convertidas em um Subsystem. No Subsystem é possível alterar a localização dos Hardpoints, localização e propriedades dos General Parts e Property Files de Bushings, Springs e Dampers. Sendo assim, com um único Template o usuário pode criar diversas suspensões duplo A sem modificar o Template. Para criar um Subsystem clique em File  New  Subsystem. Preencha como mostrado abaixo e pressione OK. Salve o Subsystem. Para realizar as simulações será necessário construir um Assembly a partir do Subsystem salvo. 113 Clique em File  New  Suspension Assembly. Preencha como mostrado abaixo e pressione OK. Verifique se após a montagem a Message Window mostra os mesmos Communicators não combinados. Verifique também se a montagem se formou como algo parecido com a figura abaixo. 114 Para fazer as simulações no software, basta clicar na aba Simulate. O usuário simulará somente a suspensão dianteira, por isso deverá selecionar a opção Suspension Analysis. As primeiras simulações são “estáticas”, ou seja, são feitas com velocidades muito baixas, retornando os esforços devido somente à localização (compressão de mola). A simulação Dynamic cria uma simulação dinâmica, com velocidades e acelerações determinadas pelo usuário. 115 Na opção Set Suspension Parameters o usuário entra com valores como o raio estático do pneu, rigidez e massa do conjunto roda+pneu, altura do centro de massa, massa suspensa, distância entre eixos, proporção de distribuição de força motriz nas rodas (100% = tração dianteira, 0% = tração traseira) e proporção da distribuição de frenagem (100% = frenagem completamente dianteira, 0% = frenagem completamente traseira). A simulação de Steering só pode ser feita caso no Assembly de suspensão criado exista um Subsystem de direção. 5.6. SIMULAÇÃO DE SUSPENSÃO O usuário simulará primeiro um caso de Parallel Wheel Travel. Nessa simulação estática tem-se que os dois pneus sobem e descem paralelamente. Clique em Simulate  Suspension Analysis  Parallel Wheel Travel... Preencha a janela como mostrado abaixo e pressione OK. Ao terminar a simulação note que na Message Window deve aparecer a frase “Finished” e “Simulation(s) are complete!”. 116 Caso essas frases não apareçam, ou caso as iterações não ocorram, algo está errado ou no Template ou nos inputs da simulação. A verificação de erros no Adams não é algo simples de ser feita. Caso algum erro ocorreu, verifique primeiro os Communicators no Template, abra novamente o Subsystem que utiliza do Template e utilize-o quando perguntado se deseja utilizar o Template aberto para abrir o Subsystem. Salve o Subsystem e abra ou crie a Assembly novamente. Se o erro persistir, revise todas as Joints e Bushings, sempre verificando quando estas estão ativas. Refaça o mesmo procedimento para atualizar o Subsystem e Assembly. Abra o Post Processor (F8). Note que vários Requests são mostrados, isso porque ao definir que o Template era de suspensão, e a análise era paralela, vários Requests automáticos são criados. Clique com o botão direito na tela e então clique em Load Animation. Escolha o nome da última simulação feita. Aperte play e observe se a animação corresponde com o que era esperado. Caso os vetores das forças e momentos estejam pequenos, o usuário pode modificar a escala dos vetores na opção Settings  Force Graphics. 117 Modifique as escalas conforme desejado e marque as caixas. Vários parâmetros podem ser retirados dessa simulação, porém será somente retirado parâmetros de camber e toe. Clique com o botão direito na tela e selecione Load Plot. Selecione na caixa Source a opção Requests. Clique na opção Data para o Independet Axis. De dois cliques no + testrig e selecione wheel_travel, vertical_left e pressione OK. Novamente no + testrig selecione camber_angle, left e pressione Add Curves. Selecione também o toe_angle, left e pressione Add Curves. Pode-se perceber no gráfico abaixo que o Toe da suspensão dianteira está variando muito. Essa é uma característica do fenômeno de Bump Steer. O Bump Steer é um erro geométrico que causa a convergência e divergência das rodas quando a suspensão do veículo sobe ou desce.[5] Crie uma nova página. 118 Mude o Source para Result Sets. De dois cliques em +susp_dianteira, de novamente dois cliques em dal_damper, selecione force, FX, FY e FZ e clique em Add Curves. Nota-se que todas as componentes de força do amortecedor são zero, isso deve-se ao fato de a força no amortecedor depender da velocidade com que o mesmo é comprimido ou tracionado. Como essa é uma análise “estática”, a velocidade é muito próxima de zero, fazendo com que o amortecedor não tenha efeito nenhum na simulação. Será simulado agora um caso dinâmico para observar a diferença nas forças do amortecedor. Clique em Simulate  Suspension Analysis  Dynamic. Preencha a janela como mostrado abaixo e pressione OK. 119 Abra o Post Processor e crie uma nova página. Carregue a animação curso_dynamic. Pressione SHIFT + F para ver a vista frontal e aperte play para ver a diferença. Clique com o botão direito na tela e selecione Load Plot. Selecione o mesmo dal_damper e plote as forças FX, FY e FZ. OBS: Como duas simulações estão na memória do software, o usuário deve selecionar a simulação para o qual deseja obter os resultados. 120 6. TEMPLATE DE DIREÇÃO PINHÃO-CREMALHEIRA O usuário criará o template de direção do tipo pinhão-cremalheira. Esse tipo de direção já possui um template, porém, devido à sua complexibilidade, um novo template será construído. Clique em File  New. Dê o nome direcao e selecione steering para o Major Role. 6.1. GEOMETRIA Crie os hardpoints mostrados na tabela abaixo. Para isso, clique em Build  Hardpoint  New. Name Location rack_housing_mount 0, -176.14, 0 tierod_inner 0, -254.94, 0 pinion_pivot 0, 0, 0 steering_wheel_center 543.04, 0, 336.73 Os dois primeiros são do tipo left e os dois últimos são do tipo single. Crie os General Part como mostrados abaixo. 121 122 123 Crie agora as geometrias associadas aos General Part criados. 124 A única geometria restante é a do volante. Esta pode ser feita através da utilização de um cilindro simplificado, porém, neste ponto o autor preferiu a utilização de uma geometria importada. Caso o usuário possua a geometria fornecida, utilize-a. Para importar a geometria do volante clique em File  Import... Preencha como mostrado abaixo e pressione OK. 125 OBS: Preencha o campo File To Read com o caminho para a geometria IGS fornecida. Caso o usuário tenha seguido todos os passos e utilizado a geometria para o volante, o template deve estar parecido com o da figura abaixo. 126 6.2. MOUNTS Antes de criar as buchas e juntas, é interessante construir os Mounts Part, pois estes serão necessários para a criação dos próximos elementos. Antes de iniciar a construção dos Mounts, crie os seguintes construction frame. 127 Crie agora os seguintes Mounts clicando em Build  Parts  Mount  New. 6.3. BUCHAS Crie as seguintes buchas clicando em Build  Attachments  Bushing  New. 128 Antes de criar a próxima bucha, torna-se necessário a criação de um Switch part. Crie o Switch part clicando em Build  Parts  Switch  New. 129 Crie então a próxima bucha. 130 6.4. JUNTAS Crie as seguintes juntas entre os General Parts clicando em Build  Attachments  Joints  New.  Junta de translação entre a cremalheira (rack) e acaixa de direção (rack_housing). 131  Junta de revolução entre o pinhão e a caixa de direção.  Junta de revolução entre a coluna de direção e a caixa de direção (rack_housing). 132  Junta cilíndrica entre a coluna de direção e o Mount que representa a fixação da coluna no chassi.  Junta entre o volante e a coluna da direção. 133 6.5. ENGRENAGENS DE REDUÇÃO Após criar as juntas, o usuário deverá criar as engrenagens redutoras (Reduction Gear). Para isso, clique em Build  Gears  Reduction Gear  New. Crie as engrenagens como mostradas nas próximas figuras. 134 Essa última engrenagem faz a transformação de movimento de rotação em movimento de translação no conjunto pinhão cremalheira. A equação para determinação do Reduction Ratio é a seguinte: "Input Motion" = "Reduction Ratio" * "Output Motion" "𝐼𝑛𝑝𝑢𝑡 𝑀𝑜𝑡𝑖𝑜𝑛" .: "Reduction Ratio" = "𝑂𝑢𝑡𝑝𝑢𝑡 𝑀𝑜𝑡𝑖𝑜𝑛" EXEMPLO: Caso o input seja 90º e o output seja 9mm, tem-se o resultado de 10º/mm. A unidade para o Reduction Ratio é rad/mm, portanto basta dividir o valor por 57.3, obtendo 0.1745 rad/mm. 6.6. COMMUNICATORS Antes de começar a criar os Communicators faça um teste para saber quais os Communicators precisam ser criados. Ao analisar os Communicators, nenhum foi conectado com o Testrig. Os Communicators obrigatórios que precisam ser criados com o Testrig são:  steering_wheel_joint: diz qual é a junta que se comportará como input para a direção.  steering_rack_joint: diz qual é a junta que se comporará como output para a cremalheira. O Communicator obrigatório que precisa ser criado com a suspensão é:  tierod_to_steering: diz para onde a cremalheira irá transmitir informação. 135 Caso a construção dos dois subsistemas não tenham sido feitas em conjunto (posições da direção não estão exatamente aonde a suspensão se encaixa) um Communicator adicional do tipo location torna-se interessante para que os sistemas estejam ligados (aparência). Crie então os seguintes Communicators Output. 136 Além dos Communicators Output criados até aqui, outros Communicators Outputs não informados no teste precisam ser criados. Esses Communicators podem ser localizados ao realizar um teste com o SDI_Testrig. Esses Communicators dependem dos valores de variáveis, por isso deve-se criar as variáveis antes de especificar os Communicators. Clique em Build  Parameter Variable  New. Preencha como nas figuras abaixo. 137 Com os parâmetros criados, crie os seguintes Communicators Output. 138 139 Crie também um General Spline para armazenar os dados de assistência do volante. Para isso, clique em Build  General Data Elements  Spline  New. Preencha como mostrado abaixo. 6.7. REQUESTS Até aqui o Template de direção está pronto, porém ainda deve-se criar um Request pois as simulações feitas com a direção não mostram resultados do deslocamento da cremalheira quando o input é o ângulo do volante. Para isso clique em Build  Requests  New. 140 Salve o Template. 6.8. SUBSISTEMA E MONTAGEM DE DIREÇÃO+SUSPENSÃO Mude a interface para o Standard apertando F9. Clique em File  New  Subsystem. Salve sem modificar nada. 141 Crie uma montagem de suspensão, porém dessa vez selecione a caixa Steering Subsystem. Clique em File  New  Suspension Assembly. Verifique se o Assembly está igual ao da figura abaixo. 142 Caso o usuário tenha feito todos os passos corretos, essa é a montagem que deve ser exibida. Lembrando que a direção está aparentemente conectada na suspensão somente porque na construção dos dois Templates a origem do Adams/Car foi a mesma para ambos. Se isso não ocorrer, basta criar um Communicator do tipo location entre os dois Templates no local onde ambos conectam. 6.9. SIMULAÇÃO DE DIREÇÃO E SUSPENSÃO Faça uma simulação simples de esterçamento. Para isso clique em Simulate  Suspension Analysis  Steering. Preencha como na figura acima e pressione OK. Abra o Post Processor e carregue a animação para verificar se o modelo se comporta como esperado. A primeira coisa a fazer é verificar o Request criado, para isso, clique na tela e em Load Plot. Com Requests selecionado na caixa Source, de um duplo clique em +direção, selecione rack, rack_travel_front e clique em Add Curves. De acordo com a relação informada na Reduction Gear entre o pinhão e a cremalheira, para os 80º especificados, o maior deslocamento é de aproximadamente 26mm. 143 O próximo passo é avaliar o esterçamento do volante com o deslocamento da cremalheira. Para isso, clique em Data para o Independet Axis, de um duplo clique em +testrig e selecione steering_wheel_input e selecione steering_wheel_input e pressione OK. De um duplo clique em +direção, selecione rack e rack_travel_front. Clique em Add Curves. Nas simulações de esterçamento é interessante observar a variação da cambagem devido ao caster aplicado. Plote o gráfico de cambagem nas rodas, dependente do ângulo de esterçamento no volante. Para isso, como o Independent Axis já está selecionado para o ângulo do volante, basta dar duplo clique em +testrig e selecionar camber_angle, selecione ambos left e right e clique em Add Curves. 144 Além disso, ainda é interessante saber os ângulos de esterçamento das rodas, dependentes do ângulo de esterçamento do volante. Para isso, ainda dentro do +testrig selecione steer_angle, selecione ambos left e right e clique em Add Curves. A partir desses resultados, pode-se avaliar o Ackerman, tendo informações dos ângulos de esterçamento da roda interna à curva e da roda externa à curva. 7. MONTAGEM DE CARRO COMPLETO Até aqui, foram vistas somente simulações praticamente estáticas, sem muita visualização do que realmente ocorrerá em um carro. Para fazer as simulações do carro completo, o usuário utilizará o MDI_Demo_Vehicle (Ferrari), que se encontra no database acar_shared. 145 Para abrir a montagem de carro completo clique em File  Open  Assembly. Selecione o database acar_shared e abra o Assembly chamado MDI_Demo_Vehicle. OBS: Caso o usuário possua todos os Subsystems necessários para a criação de um carro completo, ele pode criar uma nova Assembly clicando em File  New  Full-Vehicle Assembly e selecionando todos os Subsystems desejados. 7.1. STEP STEER Com a Ferrari aberta, a primeira simulação a ser feita é a Step Steer. Esta simulação gera um “degrau” (variação brusca) no ângulo de esterçamento do volante. Para isso clique em Simulate  Full-Vehicle Analysis  Open-Loop Steering Events  Step Steer. Pressione OK e abra o Post Processor para carregar a animação. Pressione SHIFT+I e depois CTRL+F para enquadrar o veículo na tela. Na aba Camera, clique com o botão direito no campo Follow Object, Part e Pick. Clique com o botão direito próximo ao amortecedor dianteiro do veículo. Selecione TR_Body.ges_chassis e pressione OK. Caso o usuário não faça isso, o veículo irá iniciar a simulação e a câmera ficará fixa no ponto em que está. 146 Aperte Play e verifique o que acontece. OBS: Nas simulações de veículo completo existem muitas variáveis para serem analisadas, porém somente o aspecto visual será mostrado para saber o que ocorre em cada simulação. 7.2. DRIFT A simulação Drift coloca o carro em um evento de curva, para verificar se o mesmo derrapa ou não. Nessa simulação também é possível saber se o carro é sub ou sobre esterçante, dependendo de como ele derrapa. Para criar essa simulação, clique em Simulate  Full-Vehicle Analysis  Open-Loop Steering Events  Drift. Preencha como mostrado e pressione OK. Carregue a animação e verifique o que ocorre. 7.3. RAMP (CORKSCREW) Esse tipo de simulação é feito para desestabilizar o veículo em torno do eixo de rolagem, ou seja, criar uma excitação para criar a tendência de capotamento lateral. A partir dessa simulação 147 é possível saber se a altura do centro de massa do carro está localizada em um local adequado para os tipos de obstáculos que o veículo irá enfrentar na vida real. Para criar essa simulação, clique em Simulate  Full-Vehicle Analysis  Roll Stability Events  Ramp (corkscrew). Preencha como mostrado e pressione OK. Carregue a animação e verifique o que ocorre. OBS: O usuário pode definir aqui as propriedades da rampa, porém, ela sempre ficará somente em um dos lados da pista. 7.4. ACCELERATION A simulação do tipo Acceleration simula um evento de aceleração do veículo, baseado nas propriedades definidas para o Subsystem de powertrain. Nele o usuário informa a porcentagem de pressionamento do pedal de aceleração (0% = não pressionado, 100% = totalmente pressionado) e verifica o comportamento do carro em uma linha reta. Para criar essa simulação, clique em Simulate  Full-Vehicle Analysis  Straight-Line Events  Acceleration. Preencha como mostrado e pressione OK. 148 Carregue a animação e verifique o que ocorre. 8. ROAD/EVENT BUILDER Muitas vezes o usuário não encontrará o tipo de pista que deseja simular ou então o comportamento do carro, como por exemplo, o momento em que ele vira para a esquerda, quando acelera, entre outros. Nesses casos existem duas ferramentas: o Road Builder e o Event Builder. O primeiro constrói pistas e o segundo eventos de dirigibilidade. 8.1. ROAD BUILDER Parte desse tutorial é baseado no Workshop 9 do livro ADM 740 Workbook.[6] Para criar uma nova pista de simulação clique em Simulate  Full-Vehicle Analysis  Road Builder. A seguinte janela aparecerá. 149 Para criar uma nova pista clique em File  New. Um novo arquivo de pista (.xml) será criado na pasta onde o software foi aberto. Clique na aba Global para definir parâmetros globais da pista. Verifique se Forward Direction está selecionado em Normal. Essa propriedade diz que o carro se movimentará na direção normal (direita para a esquerda no software). Search Algorithm deve estar selecionado como Fast. Closed Road deve estar selecionado como No, pois será construida uma pista aberta. Em Road Vertical deve ser especificado o vetor 0,0,1, uma vez que o sentido vertical estará direcionado na direção +Z. Marque as caixas Road Width, Road Banking, Road Friction Left, Road Friction Right e preencha como mostrado abaixo. 150 Clique na aba Road Generator. No campo Name preencha como Straight e clique em Add. Mude as propriedades desse Road Segment como mostrado abaixo. Clique em Export Points to Data Table. Clique na aba Road Points caso queira ver os pontos que foram criados. Caso queira ver o formato físico da pista, basta clicar em Show Road in PPT. 151 Clique em Save As e coloque o nome flat_road, escolhendo a pasta roads.tbl dentro do Database em uso. Crie agora obstáculos para essa pista. Caso o usuário tenha fechado a janela do Road Builder, abra novamente e em Road File clique na pasta que representa Open File. Selecione a flat_road. Clique na aba Obstacle. Preencha o campo Name com roof e clique em Add. Antes de modificar esse obstáculo, crie outro com o nome sine e clique em Add. De um duplo clique em “roof” para editar o obstáculo. Preencha como mostrado. Pressione a seta ao lado do Name para voltar para a tela anterior. De duplo clique em sine para editar o segundo obstáculo. Preencha como mostrado abaixo. 152 Clique na seta para voltar e então clique em Save As. Salve no mesmo local com o nome flat_road_obstacles. Clique em Road Points e então em Show Road in PPT. A pista criada deve ser igual à mostrada na figura abaixo. 153 Com a pista criada, pode-se simular um evento normal do software utilizando a pista. Para isso, basta selecionar o arquivo da pista no campo Road Data File na janela de qualquer simulação. Uma outra forma de criar pistas é através de coordenadas X, Y e Z. Abra o Road Builder novamente e clique em File  New. 154 Crie um segmento com o nome “pista”. Dê duplo clique no nome “pista” para editar as propriedades do segmento e preencha como mostrado abaixo. Pressione a seta do canto superior esquerdo para voltar a tela de segmentos. Clique em Export Points to Data Table. Clique na aba Road Points. 155 Note que o segmento criado foi construído com pontos a cada 0,1m, iniciando em 0 e terminando em -100. Caso o usuário salve a pista agora, este terá uma pista plana com 100 metros de comprimento. O usuário pode, porém, alterar as coordenadas Y e Z de forma a atender as especificações da pista desejada. Modifique as coordenadas Z, a partir do ponto 502, como mostrado abaixo. Clique em Save As e de o nome de “lombada”. Simule um evento Maintain com as informações mostradas abaixo. 156 Abra o pós-processador e carregue a animação. 157 8.2. EVENT BUILDER Apesar de a pista estar pronta e, muitas vezes podermos utilizar simulações prontas com a pista, o ideal é construir um evento para controlar o veículo da forma desejada durante um caso específico. Para isso, clique em Simulate  Full-Vehicle Analysis  Event Builder. Clique em File e selecione New. Dê o nome ao evento de straight_10ms. Preencha Speed com o valor 10 e modifique Gear para 3. Clique em Save As e coloque o nome straight_10ms, escolhendo a pasta driver_controls.tbl dentro do database sendo utilizado. OBS: Esse Event criado foi muito simples, especificando somente a velocidade do veículo mantida a 10m/s. Eventos mais complexos podem ser feitos. Vários tipos de eventos podem ser criados, com condições de fim de evento. 8.3. FILE DRIVEN EVENTS Para criar uma simulação com o Event criado, basta clicar em Simulate  Full-Vehicle Analysis  File Driven Events. Preencha como mostrado, modificando a pista para a criada na seção 8.1 e selecionando o evento criado na seção 8.2. Pressione OK para simular. 158 Carregue a animação no Post Processor e verifique o modelo. Note que os vetores de força e torque não estão aparecendo. Para que eles apareçam na simulação, clique em Review  Animation Controls. Clique na caixa Tire Forces in e feche a janela. Ao voltar para o Post Processor os vetores das forças e torques estarão sinalizados. 159 9. SOLUÇÕES DOS EXERCÍCIOS PROPOSTOS  Análise Cinemática – Mecanismo 4 barras Criação da Geometria Caso o usuário não possua a geometria fornecida, o mesmo deverá criar a geometria no SolidWorks. Para isso, crie um novo Sketch com as relações mostradas abaixo. O ponto inicial de construção está na origem (mesmo ponto em que a construção do mecanismo será feira no Adams). Para saber onde o Link “a” termina, basta clicar no ponto onde a dimensão 300 termina. 160 Sabe-se, a partir da figura, que as coordenadas do ponto final do Link “a” são (150, 259.8076). Ao criar o Link “a” no Adams, o usuário definirá o início do mesmo na coordenada (0,0) e clicando com o botão direito no espaço de trabalho, inserirá a coordenada (150, 259.8076) para o ponto final. O mesmo deverá ser feito para os outros pontos. Utilize a largura (width) dos Links de 40mm e a profundidade (depth) de 20mm. Criação das Juntas A partir da geometria fornecida (ou criada a partir dos pontos no SolidWorks), crie as quatro juntas de revolução respeitando a ordem de seleção das Parts. A primeira entre a PART_2 e o Ground. A segunda entre a PART_3 e a PART_2. A terceira entre a PART_4 e a PART_3. A quarta entre o Ground e a PART_4. Criação dos Movimentos das Juntas Crie o Motion na JOINT_1. Clique com o botão direito do mouse em MOTION_1 e clique em Modify. Adicione a condição de Velocity igual a 60d e pressione OK. 161 Simulação Realize a simulação com End Time igual a 6 segundos. Abra o Post Processor (F8), clique com o botão direito do mouse no espaço azul e selecione Load Plot. Modifique o Source para Results Set e selecione MOTION_1, ANG e clique em Add Curves. Observa-se que no instante igual a 0, o ângulo é 0º, porém ao lembrar como o mecanismo foi construído, no instante igual a 0 o ângulo formado entre a PART_2 e o Ground é 60º. Pode-se verificar isso ao carregar a animação em uma nova janela na mesma página. Clique com o botão direito no ícone Page Layouts na parte superior da tela e selecione o segundo ícone (2 Views, side by side). Na nova janela criada, clique com o botão direito e selecione Load Animation. Clique no ícone Play Animation para iniciar a animação e verificar ao mesmo tempo como o gráfico se comporta. Nota-se claramente que no instante 0 o ângulo formado entre a PART_2 e o Ground não é zero. Por isso, será criado um Request para medir o valor do ângulo, tomando como referência a linha horizontal, assim como no círculo trigonométrico. Na aba Design Exploration clique em Create a new Request. Selecione Define Using Function Expression e clique nos três pontos da linha de F2. Novamente será utilizada a função Displacement  Angle About Z, pois será escolhido um Marker do Ground (referência fixa) para o From_Marker (Marker de referência). Ao observar os 162 dois Markers que fazem parte do Ground, ambos possuem o eixo Z na direção pelo qual o ângulo será medido. Utilize novamente o campo Getting Object Data para localizar os Markers necessários. O To_Marker deve ser um Marker que faz parte da PART_2, enquanto o From_Marker deve ser um Marker fixo do Ground. To_Marker – PART_2.MARKER_1 From_Marker – GROUND.MARKER_8 OBS: O nome dos Markers pode variar dependendo da ordem com que foram construídas as Parts. A função, a partir dos Markers indicados será como a mostrada abaixo. Pressione OK para preencher a janela Create a Request como mostrado abaixo. 163 Simule novamente. Abra o Post Processor e utilize a janela com o gráfico anteriormente plotado. Mude o Source para Requests, selecione Angles na janela Request, Theta_1 na janela Component e então clique em Add Curves. Pressione play novamente na animação e verifique que agora o ângulo correto é medido. 164 Ainda assim, essa não é a resposta para o exercício proposto. Basta agora utilizar o Request criado no Independent Axis e as coordenadas de algum Marker que se localiza na posição “K” especificada no exercício. Crie uma nova página no Post Processor clicando no ícone Create a new page. Divida a página em três janelas clicando com o botão direito no ícone Page Layouts e então em 3 Views. Na janela maior carregue a animação (Load Animation). Na superior direita plote as coordenadas X e Y do ponto K em função do ângulo θ1. Para isso, com Requests selecionado no Source, clique em Data abaixo de Independent Axis. Selecione a componente Theta_1 e pressione OK. Antes de selecionar um Marker, é necessário saber qual está localizado na posição “K” do exercício. Para isso, volte a janela do Adams e sem nada selecionado na tela, clique no ícone List information about database objects no canto inferior direito da tela. Sabe-se que as Parts 3 e 4 possuem o ponto “K”, procure no Database Navigator que foi aberto algum Marker na posição desejada com a caixa Highlight marcada. 165 Sendo assim, o MARKER_4 será utilizado para obtenção das coordenadas X e Y. Volte para o Post Processor, modifique o Source para Objects, dê duplo clique em PART_3 e selecione o MARKER_4, selecione Translational_Displacement, selecione X e Y e clique em Add Curves. O primeiro gráfico está feito. Para obter o segundo gráfico, basta aplicar o Displacement IC igual a -60d no MOTION_1. Para isso, volte a janela do Adams e clique com o botão direito no MOTION_1 e em Modify. Preencha como mostrado abaixo. 166 Simule novamente. Note que a simulação termina com a PART_2 na horizontal (0 ou 360º). Volte ao Post Processor, carregue novamente a animação (pois esta mudou), selecione a janela inferior direita, dê duplo clique em PART_3, selecione novamente o MARKER_4, Translational_Displacement, X e Y e clique em Add Curves. As respostas obtidas são mostradas abaixo.  Análise Dinâmica – Robô RP Torque x Ângulo da JOINT_1 Ainda com o modelo do exemplo aberto, em Source, selecione Result Sets. Em Independent Axis, clique em Data e selecione MOTION_1, ANG e pressione OK. Modifique o Source para Objects, selecione MOTION_1, Element_Torque, Mag e clique em Add Curves. 167 Força x Deslocamento da JOINT_2 Com o campo Source selecionado para Objects, selecione Data para o Independent Axis. Selecione o MOTION_2, Translational_Displacement, Mag e pressione OK. Selecione então MOTION_2, Element_Force, Mag e pressione Add Curves.  Análise Dinâmica – Robô RR Crie um novo modelo ao abrir o software. Caso o mesmo já esteja aberto, clique em File  New Database. Dê o nome de RR_Robot. Criação da Geometria Para criar o primeiro Link do robô, clique em Link na aba Bodies. Preencha como mostrado e crie a extremidade inicial na origem e a outra na direção X. 168 OBS: É importante digitar a unidade de medida nessa etapa para que futuramente, ao modificar as unidades do modelo, a geometria não se altere. Crie o segundo Link com extremidade inicial no final do primeiro Link com as dimensões especificadas abaixo. A extremidade final deve ser criada na direção X. Criação das Juntas Crie as duas juntas de revolução. A primeira entre a PART_2 e o Ground e a segunda entre a PART_3 e a PART_2. 169 Criação dos Movimentos das Juntas Crie um Motion de revolução para cada junta. Modifique o MOTION_1 (que é referente à JOINT_1) como mostrado abaixo. Modifique o MOTION_2 (que é referente à JOINT_2) como mostrado abaixo. Modificação das Propriedades dos Objetos Antes de iniciar a modificação das propriedades de massa, modifique a orientação dos Markers dos centros de massa para 0,0,0. 170 Clique com o botão direito na PART_2 e clique em Modify. Selecione a opção User Input na caixa Define Mass By e preencha como mostrado abaixo. OBS: Os valores para os momentos de inércia são iguais ao do SolidWorks pois o usuário modificou a orientação dos Markers dos centros de massa para que estes possuíssem a mesma orientação da coordenada global do SolidWorks e Adams. Faça o mesmo procedimento para a PART_3 e preencha como mostrado abaixo. 171 Simule com End Time de 10 segundos e Steps igual a 100. Note que ao plotar algum gráfico nesse momento, as unidades para o torque serão N.mm. Para modificar para N.m, clique em Settings  Units e modifique Length para Meter. Torque na Junta 1 x θ1 Abra o Post Processor e modifique o campo Source para Result Sets. Clique em Data para o Independet Axis, selecione MOTION_1, ANG e pressione OK. Modifique o campo Source para Objects, selecione MOTION_1, Element_Torque, Mag e clique em Add Curves. 172 Torque na Junta 2 x θ2 Modifique novamente o campo Source para Result Sets. Clique em Data para o Independent Axis, selecione MOTION_2, ANG e pressione OK. Ainda com Result Sets selecionado para o campo Source, selecione MOTION_2, TZ e clique em Add Curves. OBS: Note que uma parte do torque é negativa. Isso ocorre, pois, o Link menor terá ultrapassado a vertical (90º) naquele ponto, e um torque tentando “segurar” o Link contra a gravidade está sendo gerado. 173 10.REFERÊNCIAS BIBLIOGRÁFICAS [1] MSC Software. Adams. Disponível em: . Acesso em: 02 mar. 2016. [2] Adams View Help. Disponível em: . Acesso em: 12 mar. 2016. [3] MSC Software. Adams Tutorial Kit for Mechanical Engineering Courses. 2 ed. Disponível em: . Download em: 03 mar. 2016. [4] Adams Car Help. Disponível em: . Acesso em: 06 mar. 2016. [5] Quadratec, the Jeep* Experts. Bump Steer Explained. Disponível em: . Acesso em: 07 mar. 2016. [6] Vehicle Modeling and Simulation using Adams/Car – ADM740 Workbook. [7] Info Escola, navegando e aprendendo. Momento de Inércia. Disponível em: . Acesso em: 25 mar. 2016. 174 11.ANEXOS 1 – Modificação da aparência de gráficos Abra novamente o arquivo Biela_Manivela.bin caso o mesmo não esteja aberto. Este é o primeiro exemplo realizado na apostila e os gráficos obtidos são mostrados na figura abaixo. Nota-se que ambos possuem títulos e eixos nomeados de forma aleatória, além de informações como quais análises estão sendo utilizadas para obtenção dos parâmetros e a data e hora da simulação. Para apresentar os resultados, o usuário necessitará nomear os eixos e dar títulos aos gráficos de forma apropriada, além de mostrar somente informações importantes. Para deletar a análise que está sendo utilizada para obtenção dos gráficos, basta clicar com o botão direito sobre Analysis: “” e deletar. OBS: este procedimento deve ser feito para todas as janelas em que o usuário pretende melhorar a aparência dos resultados. O mesmo pode ser feito para a data e hora. 175 Observe no lado esquerdo da tela as informações dos gráficos. No modelo Biela_Manivela somente uma página foi gerada para análise dos resultados, sendo que duas janelas foram criadas (plot_1 e plot_3). Para modificar o título de um dos gráficos, clique com o botão esquerdo do mouse em title. Uma nova janela surgirá abaixo da topografia. O primeiro campo é o título do gráfico, o segundo indica o tamanho da fonte para o título, se ele é escrito horizontalmente ou verticalmente, a localização do mesmo e a cor. 176 Modifique o nome do gráfico onde o ângulo Theta_3 é plotado em função do ângulo Theta_1 para “Angulação Relativa”. O gráfico ainda se encontra de forma não apresentável. Algumas coisas que ainda devem ser modificadas são: a legenda dos eixos, o espaçamento e limites dos eixos. Clique em haxis na topologia do gráfico em questão e note uma nova janela com várias abas. Na aba Format os limites e espaçamento do eixo podem ser especificados. Ao desmarcar a caixa Auto Scale os limites podem ser especificados. Para esse caso, entre com os limites 0 e 360. Na aba Labels o nome do eixo pode ser especificado. Digite “Theta 1 (graus)” no campo Label. Na aba Numbers a formatação dos números presentes no eixo pode ser modificada. Na aba Tics as divisões podem ser especificadas. Desmarque Auto Divisions e mude as divisões de 4 para 8 para que os valores apareçam de 45 em 45 graus. O campo Minor Divisions mostra quantas partes são divididas a partir das divisões com números. Entre com o valor 5. Dessa forma, a cada 9 graus uma divisão é criada, porém os valores da divisão não aparecem no eixo. 177 Clique em vaxis na topologia do gráfico para modificar o eixo vertical. As mesmas abas devem ser preenchidas, porém como as divisões já caracterizam um bom gráfico, modifique somente o nome do eixo para “Theta 3 (graus)”. Todos os gráficos podem ser modificados dessa forma, porém este anexo mostrou somente um exemplo das possibilidades da edição de gráficos. Para finalizar o anexo, quando mais de uma curva for plotada, é normal que as legendas sejam mostradas no gráfico. Na topologia do gráfico o ícone legend_object aparecerá. Ao clicar com o botão esquerdo do mouse uma nova janela aparecerá. Ao desmarcar a caixa On, a legenda não será mostrada no gráfico. Normalmente o usuário irá somente modificar a fonte da legenda e reposicioná-la para que a mesma não se encontre escondendo parte da curva obtida nos resultados. 2 – Métodos para o cálculo dos tensores de inércia utilizando o SolidWorks Os tensores de inércia são propriedades essenciais para os cálculos dinâmicos no Adams, portanto a obtenção correta desses valores é muito importante. Momento de inércia é definido como a resistência que um corpo possui à mudança do movimento rotacional. O tensor de inércia é a matriz dos momentos de inércia tomados em 178 determinado sistema de coordenadas. Depende da geometria do objeto (que define a localização do centro de massa), da massa e da coordenada tomada como referência.[7] Sendo assim, valores diferentes para o tensor de inércia podem representar a mesma configuração, porém sendo obtidos em referenciais diferentes. O SolidWorks calcula os valores do tensor de inércia em três referenciais diferentes. 1) Nos eixos principais de inércia. O primeiro método utiliza os eixos principais de inércia como referência no centro de massa. Nesse caso os termos fora da diagonal serão iguais a zero, resultando somente a diagonal principal do tensor de inércia. Os eixos principais de inércia são localizados no centro de massa, com as orientações necessárias para que os termos fora da diagonal principal sejam iguais a zero. A única forma de variar os valores de inércia tomados nos eixos principais é a partir da modificação 179 da geometria. Transladar ou rotacionar o objeto não influenciará nesses valores, porém a orientação dos eixos principais de inércia varia. Esse é o método utilizado pelo Adams quando o usuário define que a massa será calculada a partir da geometria e densidade do material do objeto ou a partir da geometria e material (densidade pré-definida do Adams). Para que os valores coincidam entre os softwares, a geometria e a densidade do material do objeto devem ser idênticas às do SolidWorks. Ao criar a geometria idêntica e modificar a densidade do material para 7900 kg/m3 (SAE 1020 do SolidWorks) os seguintes resultados foram obtidos. Observe que os valores são iguais entre os softwares, porém Ixx está trocado com o Izz. Como dito anteriormente, esse método calcula o tensor de inércia nos eixos principais de inércia (SolidWorks: eixos rosa, Adams: eixo colorido). Os valores estão trocados pois o eixo X do SolidWorks está na mesma direção que o eixo Z (azul) do Adams. 180 Novamente, a grande limitação desse método está na forma de orientar o eixo coordenado no centro de massa quando a geometria do Adams não é idêntica à do SolidWorks, gerando diferentes localizações para o centro de massa e orientação para os eixos principais de inércia. 2) No centro de massa com a mesma orientação da coordenada global da montagem. O segundo método utiliza a coordenada do centro de massa do objeto com eixos orientados igualmente ao sistema de referência global. Ao utilizar esse método, o usuário poderá transladar o objeto para qualquer direção sem modificar o tensor. Porém, quando o objeto é rotacionado, o Coordinate System 1 terá movimento relativo de rotação em relação ao objeto para se manter alinhado com a orientação do eixo global (origem colorida). Ao modificar a orientação relativa do Coordinate System 1 em relação ao objeto, modifica-se a dificuldade de variar um movimento de rotação em torno dos eixos X, Y e Z desse 181 sistema de coordenadas. Esse é o motivo pelo qual o tensor de inércia é modificado ao rotacionar o objeto. Quando a geometria do Adams é simplificada em relação à geometria do SolidWorks, o usuário deverá utilizar a opção Define Mass By User Input. Fazendo isso o usuário irá definir, independente da geometria inserida, a massa e o tensor de inércia para que os cálculos dinâmicos sejam realizados considerando o corpo real desenhado no SolidWorks. Por padrão, quando o usuário escolhe inserir os valores, o tensor de inércia inserido pelo usuário é considerado no centro de massa do objeto. Para que os valores inseridos representem o comportamento dinâmico do objeto, o usuário deverá ter certeza de que o Marker do centro de massa do objeto está localizado na exata posição do centro de massa do objeto adquirido no SolidWorks, além de estar também com os eixos orientados nas mesmas direções do eixo global. 182 OBS: O objeto pode estar transladado de qualquer distância, contanto que não possua rotações, o tensor de inércia não será afetado. O objeto construído no Adams tem a origem global em um de seus vértices, o que não ocorre no objeto do SolidWorks. OBS: É interessante observar também que os valores adquiridos pelos métodos 1 e 2 coincidiram em magnitude (Izz do método 1 é Ixx do método 2) porque as orientações dos eixos principais de inércia são as mesmas que a dos eixos globais do sistema (variando somente a direção para que X, Y e Z apontam). 3) Na coordenada global da montagem. O último método leva em consideração a distância que o objeto se encontra dos eixos globais da origem. Qualquer translação ou rotação afeta os valores desse método. Depende da geometria, massa e posição do objeto. Para utilizar esse método no Adams o usuário deverá especificar o Inertia Reference Marker como a origem global do Adams. Além disso, o usuário deverá garantir que a geometria desenhada 183 no Adams estará localizada exatamente na mesma posição e orientação que a geometria do SolidWorks. Esse método pode ser utilizado quando as geometrias forem definidas a partir de importações de peças. Do jeito em que o modelo do Adams se encontra, seria necessário localizar a geometria (juntamente com o centro de massa) na mesma posição e orientação do SolidWorks. O autor não modificou a posição e orientação do modelo, porém a figura abaixo mostra como as propriedades deveriam ser definidas caso a localização e orientação do objeto fossem as mesmas para os dois softwares. OBS: O Inertia Reference Marker chamado “Origem” foi criado pelo autor na posição 0,0,0 com a mesma orientação global do modelo. 4) Aggregate Mass Uma forma de verificar o tensor de inércia inserido é através da ferramenta Aggregate Mass. Essa ferramenta avalia a massa, centro de massa e tensor de inércia da parte selecionada. Para utilizá-lo clique em Tools  Aggregate Mass. 184 Selecione o corpo que deseja saber as propriedades no campo Bodies. Caso o usuário não preencha o campo Relative to, os momentos de inércia serão expressos utilizando a origem global do sistema como referência (método 3). OBS: A geometria do SolidWorks foi deslocada para a mesma localização da geometria do Adams para a obtenção desses valores. Para poder verificar as propriedades no centro de massa, basta que o usuário preencha o campo Relative to com o PART_2.cm. 185 Note que o valor de Ixx está trocado novamente com o valor de Izz. Isso ocorre por conta de a orientação dos eixos do centro de massa não estarem na mesma direção da origem global do SolidWorks. Isso ocorre porque ao utilizar a densidade e geometria do objeto para calcular a massa e tensor, o Adams automaticamente modifica a orientação dos eixos da forma que convém para a criação da geometria. O usuário poderia modificar a orientação do Marker do centro de massa, porém a única forma de mantê-lo na orientação definida seria entrar com as propriedades de massa e inércia através da opção User Input. Essa forma não seria uma maneira eficaz para a validação do tensor, pois retornará os valores inseridos pelo usuário. 5) Resumo Para todos os objetos criados, o autor irá orientar os eixos do centro de massa alinhados com a orientação das coordenadas globais e utilizará o segundo método de obtenção do tensor de inércia, utilizando assim o Define Mass By User Input para valores da massa e momentos de inércia. 3 – Código em Matlab para análise geométrica e dinâmica do mecanismo RP em uma única posição clear clc %RP - 2 graus de liberdade m1 = 24.8185819634; %kg Izz1 = 0.3464260399; %kg/m^2 186 L1 = 0.2; %m m2 = 6.2046454908; %kg Izz2 = 8.3698082402E-002; %kg/m^2 L2 = 0.4; %m g = 9.81; % %Modelo geométrico direto syms theta1 theta1linha d2 d2linha d2max; %Rotação theta1 em torno do eixo Z T01 = [cos(theta1) -sin(theta1) 0 0; sin(theta1) cos(theta1) 0 0; 0 0 1 0; 0 0 0 1]; %Translação d2 + L2 no eixo X T12 = [1 0 0 d2+L2; 0 1 0 0; 0 0 1 0; 0 0 0 1]; %Matriz transformação T02 = T01*T12; %Modelo Dinâmico %Posições dos CG r1 = [L1*cos(theta1) ; L1*sin(theta1); 0]; r2 = [(0.4 + d2)*cos(theta1); (0.4 + d2)*sin(theta1); 0]; 187 %Velocidades Lineares dos CG v1 = [-L1*sin(theta1)*theta1linha; L1*cos(theta1)*theta1linha; 0]; v2 = [-sin(theta1)*(d2 + L2)*theta1linha + d2linha*cos(theta1); cos(theta1)*(d2 + L2)*theta1linha + d2linha*sin(theta1); 0]; %Velocidades Angulares w1 = [0;0;theta1linha]; w2 = [0;0;theta1linha]; %Definir multiplicações vT.v (matriz velocidade transposta . matriz %velocidade) %V = vT.v V1 = [-L1*sin(theta1)*theta1linha L1*cos(theta1)*theta1linha 0] *v1; V2 = [-sin(theta1)*(d2 + L2)*theta1linha + d2linha*cos(theta1) cos(theta1)*(d2 + L2)*theta1linha + d2linha*sin(theta1) 0]*v2; %Definir multiplicações wT.I.w (matriz velocidade angular transposta . %momento de inércia . matriz velocidade angular) %W = wT.I.w W1 = [0 0 theta1linha]*Izz1*w1; W2 = [0 0 theta1linha]*Izz2*w2; %Energia cinética K1 = 0.5*m1*V1 + 0.5*W1; 188 K2 = 0.5*m2*V2 + 0.5*W2; K = K1 + K2; %K = 0.4964*theta1linha^2*cos(theta1)^2 + 0.4964*theta1linha^2*sin(theta1)^2 + 0.2151*theta1linha^2 + (3.1023*(d2linha*sin(theta1) + theta1linha*cos(theta1)*(d2 + 2/5))^2)+ (3.1023*(d2linha*cos(theta1) - theta1linha*sin(theta1)*(d2 + 2/5))^2); %Energia potencial U1 = m1*L1*g*sin(theta1); U2 = m2*(L2+d2)*g*sin(theta1) + m2*g*d2max; U = U1+U2; %Obtenção dos parâmetros dinâmicos D(1) = diff(K,theta1linha); d(1) = diff(K,theta1); Q(1) = diff(U,theta1); D(2) = diff(K,d2linha); d(2) = diff(K,d2); Q(2) = diff(U,d2); %Obtenção das forças e torques for i = 1:2 189 T(i) = D(i) - d(i) - Q(i); fprintf('T(%d)=',i) simplify(T(i)) end %theta1 = pi/3; %theta1linha = 5*pi/180; %d2 = 0.1; %d2linha = 0.01; %d2max = 0.2; t1 = (1087894335546490811*5*pi/180)/450359962737049600 - (20559238182895389687*cos(pi/3))/281474976710656000 + (6985809780083227*0.1*5*pi/180)/1407374883553280 + (6985809780083227*0.1^2*(5*pi/180))/1125899906842624 - (6853079394261645687*0.1*cos(pi/3))/112589990684262400; T1 = abs(t1) f2 = (6985809780083227*0.01)/1125899906842624 - (6853079394261645687*sin(pi/3))/112589990684262400 - (6985809780083227*0.1*(5*pi/180)^2)/1125899906842624 - (6985809780083227*(5*pi/180)^2)/2814749767106560; F2 = abs(f2) 190 3 – Código em Matlab para análise geométrica e dinâmica do mecanismo RR em uma única posição clear clc %RP - 2 graus de liberdade m1 = 3.3585; Ixx1 = 0.0795; L1 = 0.25; m2 = 1.7785; Ixx2 = 0.012; L2 = 0.625; g = 9.80665; %Modelo geométrico direto syms theta1 theta1linha theta2 theta2linha; %Rotação theta1 em torno do eixo Z T01 = [cos(theta1) -sin(theta1) 0 0; sin(theta1) cos(theta1) 0 0; 0 0 1 0; 0 0 0 1]; %Rotação theta 2 em torno do eixo Z + translação ao longo de X T12 = [cos(theta2) -sin(theta2) 0 L2; sin(theta1) cos(theta1) 0 0; 0 0 1 0; 0 0 0 1]; 191 %Matriz transformação T02 = T01*T12; %Modelo Dinâmico %Posições dos CG r1 = [L1*cos(theta1) ; L1*sin(theta1); 0]; r2 = [0.5*cos(theta1) + 0.125*cos(theta1 + theta2); 0.5*sin(theta1) + 0.125*sin(theta1 + theta2); 0]; %Velocidades Lineares dos CG v1 = [-L1*sin(theta1)*theta1linha; L1*cos(theta1)*theta1linha; 0]; v2 = [-0.5*sin(theta1)*theta1linha - 0.125*sin(theta1 + theta2)*(theta1linha + theta2linha); 0.5*cos(theta1)*theta1linha + 0.125*cos(theta1 + theta2)*(theta1linha + theta2linha); 0]; %Velocidades Angulares w1 = [0;0;theta1linha]; w2 = [0;0;theta1linha + theta2linha]; %Definir multiplicações vT.v (matriz velocidade transposta . matriz %velocidade) %V = vT.v V1 = [-L1*sin(theta1)*theta1linha L1*cos(theta1)*theta1linha 0] *v1; V2 = [-0.5*sin(theta1)*theta1linha - 0.125*sin(theta1 + theta2)*(theta1linha + theta2linha) 0.5*cos(theta1)*theta1linha + 0.125*cos(theta1 + theta2)*(theta1linha + theta2linha) 0]*v2; 192 %Definir multiplicações wT.I.w (matriz velocidade angular transposta . %momento de inércia . matriz velocidade angular) %W = wT.I.w W1 = [0 0 theta1linha]*Ixx1*w1; W2 = [0 0 theta1linha+theta2linha]*Ixx2*w2; %Energia cinética K1 = 0.5*m1*V1 + 0.5*W1; K2 = 0.5*m2*V2 + 0.5*W2; K = K1 + K2; %Energia potencial U1 = m1*L1*g*sin(theta1); U2 = m2*g*(0.5*sin(theta1)+0.125*sin(theta1 + theta2)); U = U1+U2; %Obtenção dos parâmetros dinâmicos D(1) = diff(K,theta1linha); d(1) = diff(K,theta1); Q(1) = diff(U,theta1); 193 D(2) = diff(K,theta2linha); d(2) = diff(K,theta2); Q(2) = diff(U,theta2); %Obtenção das forças e torques for i = 1:2 T(i) = D(i) - d(i) - Q(i); fprintf('T(%d)=',i) simplify(T(i)) end %theta1linha = 5 graus/s %theta2linha = 6 graus/s %theta1 = 50 graus %theta2 = 60 graus t1 = abs((99049*(5*pi/180))/128000 (1227729461010959*cos((50*pi/180) + + (5093*6*pi/180)/128000 pi/3))/562949953421312 - (9547779688075667*cos((50*pi/180)))/562949953421312 + (3557*(5*pi/180)*cos(pi/3))/16000 + (3557*(6*pi/180)*cos(pi/3))/32000) t2 = abs((5093*(5*pi/180))/128000 (1227729461010959*cos((50*pi/180) + + (5093*6*pi/180)/128000 pi/3))/562949953421312 + 194 (3557*(5*pi/180)^2*sin(pi/3))/32000 + (3557*(5*pi/180)*cos(pi/3))/32000 + (3557*(5*pi/180)*(6*pi/180)*sin(pi/3))/32000) 195