Índice:

Visualizando o movimento do giroscópio L3G4200D com o Blender: 5 etapas
Visualizando o movimento do giroscópio L3G4200D com o Blender: 5 etapas

Vídeo: Visualizando o movimento do giroscópio L3G4200D com o Blender: 5 etapas

Vídeo: Visualizando o movimento do giroscópio L3G4200D com o Blender: 5 etapas
Vídeo: Arduino - Usando o módulo giroscópio/acelerômetro 2024, Julho
Anonim
Image
Image

Eu comprei um sensor giroscópio L3G4200D bastante barato no eBay que pode detectar a rotação de 3 eixos e entregá-lo através de uma interface I2C ou SPI. Tentei usá-lo para detectar a rotação horizontal e vertical em tempo real. Isso acabou sendo muito difícil porque eu não conseguia visualizar o que o Gyro estava produzindo. Eu precisava de uma visualização. Acabei usando o Blender para visualizar o giroscópio que está conectado a um Arduino Uno. Com essa combinação, obtive um relatório em tempo real que resultou muito bom e provou que o sensor é bastante preciso no que faz.

Etapa 1: O Hardware

O software
O software

Sensor L3G4200D

Arduino Uno (quase qualquer Arduino fará isso)

O sensor se conecta ao Arduino dessa forma.

E o Arduino se conecta ao PC.

Etapa 2: o software

Para a visualização, usei blender e python.

É aqui que começam os problemas. Precisamos configurar o Blender e o python de maneira correta. Precisamos que o Blender compartilhe a mesma versão do Python que o sistema usa. A melhor maneira de fazer é baixar o mais novo Blender, instalá-lo. Abra o python interno do Blenders. No meu computador, ele está localizado em: C: / Arquivos de programas / Blender Foundation / Blender / 2.78 / python / bin / python.exe Ele revela a versão do Python que o Blender está usando.

Vá para a página Python e baixe EXATAMENTE o mesmo bin python. https://www.python.org/downloads/Install python, mas verifique [Adicionar Python ao PATH] no início do assistente de instalação.

Renomeie a pasta onde o python está localizado e que o blender usa para que não seja mais reconhecido pelo blender.rename

C: / Arquivos de programas / Blender Foundation / Blender / 2.78 / python

para

C: / Arquivos de programas / Blender Foundation / Blender / 2.78 / python_old

Se começarmos o liquidificador agora, ele deve ser capaz de iniciar sem nenhum problema. Se o programa travar, isso significa que a versão do python não é exatamente a mesma que o blender usado antes ou que o PATH não foi atualizado.

As únicas coisas que faltam agora são as bibliotecas que usaremos com o python. Abra o python e faremos o download da biblioteca serial deste comando que pode ser executado pela linha de comando:

pip install serial

Essa biblioteca é necessária porque permite que o python receba conexões seriais do Arduino.

Etapa 3: os scripts

Os Scripts
Os Scripts

No Arduino, teremos que fazer upload deste script:

gist.github.com/BoKKeR/ac4b5e14e5dfe0476df7eb5065e98e98#file-l3g4200d-ino

Este script eu encontrei e modifiquei a partir deste tópico no fórum do Arduino.

A tarefa deste script é obter os dados do sensor L3G4200D e enviá-los por uma porta COM definida com taxa de bauds de 115200.

Exemplo de saída:

X: 38,72 Y: 8,61 Z: -17,66

X: 39,30 Y: 8,37 Z: -18,17

X: 40,07 Y: 8,24 Z: -18,81

X: 40,89 Y: 8,30 Z: -19,46

X: 41,69 Y: 8,41 Z: -20,05

X: 42,42 Y: 8,41 Z: -20,44

No blender, precisaremos alterar o layout para Scripting.

No lado esquerdo, precisamos inserir nosso script python que irá receber os dados e processá-los do sensor e mudar a porta COM para a porta onde nosso Arduino está localizado.

gist.github.com/BoKKeR/edb7cc967938d57c979d856607eaa658#file-blender-py

Etapa 4: execute o script

Execute o script
Execute o script

Depois de clicar em Executar Script, tudo deve estar funcionando e o cubo deve girar da mesma forma que o sensor giroscópio é girado.

Etapa 5: solução de problemas

Solução de problemas
Solução de problemas

Se você tiver qualquer problema com a execução do script, precisará abrir o console do sistema. Clique em Janela -> Alternar console do sistema para revelar o console onde o erro é mostrado.

O erro mais comum é a permissão negada para abrir a porta. Para corrigir isso, desconecte rapidamente o Arduino e reconecte-o.

Se precisar de mais ajuda, acesse meu site para obter um suporte melhor.

tnorbert.com/visualizing-l3g4200d-gyro-movement-with-blender/

Recomendado: