Índice:

Robô com Arduino controlado com o Tactigon: 5 etapas
Robô com Arduino controlado com o Tactigon: 5 etapas

Vídeo: Robô com Arduino controlado com o Tactigon: 5 etapas

Vídeo: Robô com Arduino controlado com o Tactigon: 5 etapas
Vídeo: Arduino Tracked Rover Robot Control with Gesture - Tactigon Skin 2024, Novembro
Anonim

Por The TactigonVeja nosso projetoSiga mais do autor:

Como fazer um teste de força do Arduino Faire
Como fazer um teste de força do Arduino Faire
Como fazer um teste de força do Arduino Faire
Como fazer um teste de força do Arduino Faire
Como conectar a impressora 3D aos óculos AR
Como conectar a impressora 3D aos óculos AR
Como conectar a impressora 3D aos óculos AR
Como conectar a impressora 3D aos óculos AR
Como controlar luzes por meio de gestos
Como controlar luzes por meio de gestos
Como controlar luzes por meio de gestos
Como controlar luzes por meio de gestos

Sobre: TACTIGON SKIN é um controlador de gestos com algoritmos de inteligência artificial e sensores a bordo, que resolve a ação não natural do dispositivo tradicional durante as interações com as máquinas. PONTOS-CHAVE:… Mais sobre o Tactigon »

Visão geral

Esta postagem mostrará como aproveitar as vantagens dos recursos do BLE Central do Tactigon. Queríamos controlar nosso robô usando o Tactigon como um “volante 3D” controlando a velocidade com inclinação e direção com rotação. Fizemos tão poucas alterações no código de exemplo Bluetooth original do Alphabot2 e escrevemos um esboço para o Tactigon para se conectar à característica BLE do robô e escrever nas velocidades das rodas.

Etapa 1: o que precisamos

O Tactigon com um Arduino IDE Robot configurado. Usamos um robô de 2 rodas com placa Arduino e rádio BLE com interface com UART. Outros tipos de robôs ou personalizados também podem funcionar. Endereço MAC Robot BLE e diversão característica

Etapa 2: Coleta de características e endereços MAC BLE

Coletando endereço MAC BLE e características
Coletando endereço MAC BLE e características
Coletando endereço MAC BLE e características
Coletando endereço MAC BLE e características
Coletando endereço MAC BLE e características
Coletando endereço MAC BLE e características

Depois que nosso ambiente for configurado e nossas placas estiverem LIGADAS, precisamos reunir o endereço MAC BLE e as características. Para fazer isso, usamos um aplicativo Android gratuito chamado BLE Scanner.

Poucos segundos após o aplicativo deve mostrar o BLE do robô:

Como podemos ver, todos os dispositivos BLE ao nosso redor são mostrados nesta seção. Precisamos anotar o endereço MAC Waveshare_BLE: neste caso é: 00: 0E: 0B: 0C: 4A: 00 Ao clicar no botão CONECTAR, acessamos as informações do dispositivo como atributo, serviço e característica personalizada.

Aqui precisamos anotar o UUID DE CARACTERÍSTICA PERSONALIZADA, neste caso: 0000ffe1-0000-1000-8000-00805f9b34fb. Com esses itens, podemos definir nosso Tactigon BLE para atuar como BLE Central na seção setup () do código.

Etapa 3: o esboço do Tactigon

O esboço do Tactigon
O esboço do Tactigon
O esboço do Tactigon
O esboço do Tactigon
O esboço do Tactigon
O esboço do Tactigon
O esboço do Tactigon
O esboço do Tactigon

ciclo()

Nesta seção, temos o núcleo do esboço. A uma frequência de 50 Hz, atualizamos quatérnions e ângulos de euler.

Analisando o ângulo de inclinação fornecido pela biblioteca Tactigon, podemos determinar o raio de direção diminuindo a roda interna e acelerando a roda externa.

Em vez disso, podemos determinar a velocidade de deslocamento do robô.

Com um sprintf, preparamos o buffer para escrever na característica.

Etapa 4: esboço do robô

Robot Sketch
Robot Sketch
Robot Sketch
Robot Sketch
Robot Sketch
Robot Sketch
Robot Sketch
Robot Sketch

Uma vez que nosso Bluetooth envia dados recebidos pelo UART, obtemos a velocidade das rodas diretamente no buffer serial. Definimos os pinos do robô da seguinte maneira, todos como saída:

Para analisar o comando, primeiro lemos todo o buffer serial e verificamos se ele é maior que 0:

Se o comando contém “Wh”, podemos analisar a string e reunir leftSpeed e rightSpeed.

A função direct_motor atribui a velocidade transmitida pelo Tactigon para cada roda do robô. Ao fazer isso, o Tactigon atuará como um volante virtual!

Etapa 5: Considerações Finais

Este esboço mostra uma aplicação potencial do Tactigon, com o modo BLE Central é possível conectar a dispositivos BLE existentes e coletar informações ou controlá-los. Fique ligado para mais código do Tactigon!

Recomendado: