Manufaturação industrial
Internet das coisas industrial | Materiais industriais | Manutenção e reparo de equipamentos | Programação industrial |
home  MfgRobots >> Manufaturação industrial >  >> Manufacturing Technology >> Processo de manufatura

BLE Bot 9000

Componentes e suprimentos

Arduino 101
× 1
Adafruit Motor / Stepper / Servo Shield para Arduino v2 Kit - v2 .3
× 1
SparkFun Multi-Chassis - Kit 4WD (Básico)
[Embaixadores:A variedade Tank Kit deste da Sparkfun foi fornecida como uma alternativa a esta unidade. Foi determinado que eles têm problemas de energia associados ao 5x AA incluído. Consulte Problemas conhecidos para obter mais informações. ]
× 1
Suporte de bateria Adafruit 6 x AA com plugue de 5,5 mm / 2,1 mm
[Embaixadores:Esta peça é CONHECIDA QUE FALTA nos kits. O banco de baterias Intel USB pode ser complementado em seu lugar para alimentar o Arduino 101.]
× 1
Suporte de bateria 5x AA
Incluído no Robot Kit.
× 1
Pacote de componentes
Contém 4 elevadores distanciadores, parafusos plásticos / pretos, ~ 20 fios, uma tira de Velcro de 3 polegadas, possivelmente algumas pilhas AA.
× 1
Baterias AA
× 11

Ferramentas e máquinas necessárias

Ferro de soldar (genérico)
Solda (genérica)
Chave de fenda Philips
Incluído com Sparkfun Bot Kits

Aplicativos e serviços online

Arduino IDE
Johnny-Five
Arduino Firmata

Sobre este projeto





Avisos:


Atualizar 05/12/16 de Drew:Clique em Problemas conhecidos à direita e revise-os antes de concluir esta construção. Certas variedades do kit apresentam problemas conhecidos e peças faltantes. Tentamos delinear os problemas comuns. Alguns ainda estão sendo resolvidos. As correções serão incluídas nas instruções à medida que forem confirmadas. Relate qualquer um adicional para mim (@ReanimationXP) no #intel canal de slack.hacksterlive.com . Obrigada!

Não explodir o Arduino

Recebemos relatos de alguns montando seu bot e deixando o jumper VIN no lugar no Motor Shield. Por favor, tire um momento para removê-lo antes de começar. Por quê? Consulte Como ligar o Arduino e o escudo abaixo.





Introdução


Este projeto demonstra como usar o chip BLE integrado em um Arduino 101 para controlar um pequeno robô 4x4 de seu laptop. Ao fazer com que seu computador assuma o controle do próprio Arduino 101, você abre a possibilidade de incorporar métodos de controle intensivo do processador, como visão computacional, direção autônoma e loops de feedback avançados (PID).





Hardware


Vamos começar! O que vem com esse cachorrinho? A plataforma do robô usada foi o 4x4 multichassis da Sparkfun. É bastante durável com uma moldura de alumínio e tem muitos pontos de montagem para sensores adicionais.

Degraus:

1) O kit requer uma montagem simples, mas leva algum tempo. Siga as instruções que acompanham seu kit de montagem, com os seguintes desvios:

- Monte o Arduino 101 em espaçadores (parte do Kit de componentes separado) na placa superior (tampa) antes de prender a tampa no chassi do robô. Se você não tiver os espaçadores, simplesmente isole a parte inferior do 101 de alguma forma e fixe-o na tampa.

2) A blindagem do Motor Adafruit v2.3 também requer alguma montagem, e com isso queremos dizer solda. Os pinos do cabeçote precisarão ser soldados. Se você recebeu os conectores fêmeas com seu kit de componentes (como os do A101), use-os e descarte os machos normais. Caso contrário, use a variedade macho incluída com a blindagem do motor. Você pode encontrar instruções detalhadas para soldar os dois tipos aqui (role para baixo até a seção apropriada para o tipo de cabeçalho masculino / feminino):https://learn.adafruit.com/adafruit-motor-shield-v2-for-arduino/install-headers .

Se você nunca soldou antes, talvez queira praticar em algo que não se importa em queimar, pois os cabeçotes podem ser um pouco difíceis de soldar no lugar. Pedir a alguém que soldou muito para assistir você será a maneira mais rápida de aprender. Comece cada plataforma soldando um pino na borda, puxando firmemente as plataformas para que fiquem alinhadas com a placa e perfeitamente retas. Você pode usar essa técnica para alinhar as coisas antes de soldar todos os pinos, o que travará a plataforma no lugar de forma quase permanente.

Faça o cabeçalho fêmea da grade de 6 pinos ao lado do logotipo do Bluetooth por último. Tem a seguinte aparência: [:::] Conecte o lado plástico do Arduino 101 para que fique totalmente nivelado, monte a blindagem do motor agora totalmente soldada na parte superior e deixe o lado macho da grade de 6 pinos passar por ele. Pressione a blindagem do motor para que esteja totalmente inserida no 101 e, em seguida, solde o lado macho do conector da grade de 6 pinos.

3) Conecte a blindagem do motor montada na parte superior do Arduino 101 usando os conectores nos quais você soldou.

4) Use os fios de jumper (macho para macho) para conectar os motores aos blocos de terminais de saída do motor na blindagem do motor, conforme mostrado abaixo. Certifique-se de combinar os pares corretos de fios negativos e positivos e siga o diagrama de fiação abaixo. Observação:os fios amarelos são positivos no diagrama e vermelho nos motores reais. Fios verdes são negativos no diagrama , preto nos motores reais.

5) Verifique se o jumper VIN NÃO está conectado antes de continuar. Use um par de fios de ligação para conectar ao AA de 5 contagens bateria incluída com o kit do robô para o bloco de terminais de entrada de tensão na blindagem do motor, considerando a orientação positiva (vermelha) e terra (preta) conforme mostrado no diagrama abaixo.

Nota: O suporte 2x AA mostrado abaixo é NÃO PRECISO para a vida real e você não terá um em seu kit - use o suporte 5x AA incluído no seu kit de robô. Alguns kits também não contêm 4 motores. Neste caso, simplesmente conecte os motores adequados a M1 e M2 conforme mostrado no lado direito da placa e os dois motores superiores.

6) Solde o conector do barril aos fios que saem da segunda bateria. Certifique-se de soldar o fio positivo vermelho na conexão central (mais curta) do conector cilíndrico.

Nota :O suporte de bateria AA 6x e o plugue do cilindro abaixo não foram incluídos na primeira remessa de kits embaixador. Estaremos complementando esta remessa com um titular AA adicional e possivelmente componentes adicionais em breve. Conclua a construção do bot e pule para Visão geral do software por agora.

7) Prenda o pacote de bateria 6x AA na parte traseira do robô com a tira de velcro:

Conecte o plugue cilíndrico ao Arduino 101 para ligá-lo. Mais uma vez, verifique se o jumper VIN não está conectado.

O robô agora deve estar totalmente construído! Certifique-se de que ambos os bancos de baterias estejam desconectados para que não esgotem a energia.





Visão geral do software


O sistema de controle do robô consiste em dois softwares principais. O primeiro é o esboço do servidor Firmata que é carregado no Arduino 101. O Firmata permite que seu computador acesse os pinos no Arduino - e por extensão se comunique com a blindagem do motor que controla os próprios motores. Firmata também permite a comunicação bidirecional de forma que se no futuro você conectar um sensor ao seu robô, você poderá enviar os dados do sensor de volta ao seu computador.

O segundo software é o cliente Firmata que roda em seu computador. Existem muitos clientes Firmata diferentes para uma variedade de linguagens, mas neste projeto usaremos o cliente Firmata que está integrado no Johnny-Five. Johnny-Five é uma plataforma de robótica e IoT para Arduino construída em Node.js. Mais informações podem ser encontradas aqui:http://johnny-five.io/. Johnny-five tem muitas bibliotecas úteis, incluindo Firmata e configurações para o Adafruit Motorshield que estamos usando.

Para que o cliente e o servidor Firmata se conectem, estamos usando uma biblioteca ble-serial a node.js escrita para abrir uma conexão serial sobre BLE para o Arduino 101. https://github.com/monteslu/ble-serial

Finalmente, para ler comandos de teclado, usaremos keypess, uma biblioteca node.js para leitura em pressionamentos de tecla. https://github.com/TooTallNate/keypress





Carregar Arduino Sketch


1) Para carregar o esboço do servidor Firmata no Arduino 101, você primeiro terá que baixar e instalar o IDE do Arduino:https://www.arduino.cc/en/Main/Software

2) Depois de instalar o IDE básico, você terá que instalar a placa Arduino 101. O tutorial a seguir cobre a instalação da placa, bem como a programação básica, se você não tem familiaridade com o Arduino, este é um bom lugar para começar:https://www.arduino.cc/en/Guide/Arduino101. A versão resumida é que você precisa instalar o pacote "Intel Curie Boards" através do Boards Manager no IDE. Depois de fazer isso, o Arduino / Genuino 101 aparecerá no submenu Placa.

3) Conecte o Arduino 101 em seu computador por meio do cabo USB.

4) No IDE do Arduino, vá para Ferramentas -> Placa e selecione Arduino / Genuino 101. Não está vendo? Volte para a etapa 2.

5) Vá para Ferramentas -> porta e certifique-se de ter selecionado a porta correta para sua placa. Se você não tiver certeza de qual porta usar, desconecte o Arduino e veja qual porta desaparece da lista.

6) Instale o pacote AdaFruit Motor Shield v2. Vá para Sketch -> Incluir Biblioteca -> Gerenciar Bibliotecas e, em seguida, pesquise "AdaFruit Motor Shield v2". Selecione-o e clique no botão Instalar.

6a) Se você gostaria de testar seu bot, atualize o seguinte arquivo .ino para testar seus motores. Por padrão, esse arquivo fará com que seu bot vá Avançar, Retroceder, Vire à Esquerda e depois Vire à Direita repetidamente. https://github.com/ReanimationXP/a101_motortest.

NOTA! Prepare-se para que suas rodas se movam!

Se você enviar o programa a101_motortest para o bot, as rodas começarão a se mover assim que o esboço começar a ser executado. Se quiser parar as rodas, você pode puxar o cabo USB (desligando o Arduino) ou puxar uma das baterias.

7) No IDE do Arduino, vá para Arquivo -> Exemplos -> Firmata -> StandardFirmataBLE para carregar o esboço do servidor Firmata BLE. Faça upload do esboço para o Arduino 101 clicando na seta de upload no canto superior esquerdo do editor.

Se o esboço for carregado com sucesso, a última mensagem na saída deve ser "Esboço iniciando em 5 segundos."





Instale o Python 2.7.13


1) Você precisará do Python 2.7.13 para instalar e compilar o pacote bluetooth-hci-socket Node.js.

2) Vá para https://www.python.org/downloads/. Baixe o Python 2.7.13 e instale-o.





Carregar Cliente Firmata


1) O cliente Firmata será executado em Node.js, se você não o tiver instalado, acesse o link a seguir e siga as instruções de instalação:https://nodejs.org/en/

2) Assim que o Node.js for instalado, crie uma nova pasta para conter o seu código de controle.

3) Abra um prompt de comando Node.js e navegue até a pasta do projeto. Se você for instalar as ferramentas do Windows na próxima etapa, execute o prompt de comando no modo Administrador.

4) Se você estiver usando o Windows 10, deverá instalar as ferramentas do Windows. Faça isso usando o seguinte comando:
  npm install --global --production windows-build-tools  

5) Instale os seguintes módulos NPM:
  npm install johnny-fivenpm install keypressnpm install ble-serial npm instale bluetooth-hci-socket  

6) Baixe o código de controle no github (https://github.com/martinkronberg/Firmata-BLE-Bot) e certifique-se de que control.js esteja na pasta do projeto. Você pode clonar o repo se quiser, mas as chances de atualizações são bastante pequenas ...





Execute o código


Agora estamos prontos para começar a dirigir o robô! Certifique-se de que os dois bancos de bateria estejam conectados e, a partir da pasta do projeto, execute:
  node control.js  

Se tudo funcionar, você receberá uma mensagem semelhante a:
  1476382259569 Conectado [objeto objeto]  

Agora, quando você clicar em "w", o robô irá se mover para frente, "s" para dar ré, "a" e "d" irão virar o robô para a esquerda e para a direita.

Você pode receber uma mensagem como "Nenhum dispositivo USB Bluetooth 4.0 compatível encontrado". Certifique-se de que seu computador suporte Bluetooth e que o Bluetooth esteja habilitado.

Observe que você pode verificar o Gerenciador de Dispositivos no Windows para ver se o seu PC oferece suporte a Bluetooth. Procure uma subárvore chamada "Rádios Bluetooth".





Versão Blynk


Se Node e Firmata não estiverem funcionando bem para você, você pode usar a Biblioteca Blynk.cc. É fácil de usar, plataforma cruzada, possui interfaces para dispositivos móveis.

1. Baixe a biblioteca Blynk.cc e instale-a no Arduino. Isso pode ser feito por meio do Arduino Library Manager. Versão 0.4.7 no momento da escrita.

2. Baixe e atualize o seguinte esboço para o seu Arduino 101:

https://github.com/ReanimationXP/a101_blynk_base

3. Baixe o aplicativo Blynk. Crie a seguinte interface dentro do aplicativo:





Problemas Conhecidos


Peças ausentes: Suporte de bateria 6x AA e seu kit 'Barrel Jack, Tank tem 2x motores apenas, não 4x.

Problemas de energia com o kit do tanque: Parece que o kit do tanque Sparkfun tem uma falha - o suporte da bateria incluído não é potente o suficiente para acionar as bandas do tanque. As soluções são remover as bandas, substituir o suporte de bateria 5x AA por uma bateria lipo 2S (7,4v) com mAh significativo (750mah, por exemplo) e / ou alimentar o 101 com um de seus bancos de bateria USB Intel.

Além disso, se o suporte da bateria que vem com o chassi Sparkfun não parece estar funcionando, as baterias podem não estar encaixadas corretamente. Puxe-os para trás enquanto empurra para baixo e você os sentirá encaixados no lugar.

Problemas de Bluetooth / BLE: O suporte BLE tem requisitos mínimos. Um computador deve oferecer suporte a Bluetooth 4.0 ou superior, com Windows 8.1 ou superior, para ter a garantia de oferecer suporte a BLE, a variedade de baixo consumo de energia do Bluetooth. Alguns computadores ainda podem ter problemas dependendo da pilha do driver e das diferenças de hardware. A maioria dos smartphones é mais compatível com BLE. Estamos estudando o uso da plataforma Blynk para controlar o 101, que agora inclui suporte BLE. Os detalhes serão postados aqui quando disponíveis.

Também fomos informados que a parte BLE do Arduino 101 é muito instável se não for alimentada corretamente. Certifique-se de conectar a alimentação adequada ao Arduino 101. Eu sugeriria uma fonte de alimentação USB 5v forte, 2 amperes ou mais para descartar problemas de queda de energia.

Compatibilidade de parafuso com Arduino 101: Os parafusos do kit de componentes têm cabeças muito grandes para caber no 101. O conserto é trocar alguns parafusos prateados do kit do robô no lugar deles e vice-versa, se possível. Você também pode usar quadrados de velcro, para que a placa seja presa com segurança e isolada, mas facilmente removível.

Bibliotecas: Você precisa atualizar a biblioteca Firmata para pelo menos 2.5.3 (versões abaixo de 2.5.3 não incluem esboço Firmate BLE)

Aqui estão alguns recursos para facilitar sua vida durante um encontro. Os dois últimos links requerem a instalação da biblioteca Adafruit Motor Shield v2.
  • Este tutorial do BLE Bot 9000:http://bit.ly/blebot1
  • Script de teste de motor DC de Pete Hoffswell:http://bit.ly/blebot2
  • Robótica controlada por telefone BLE com Blynk:http://bit.ly/blebot3

Código

Controles da tela sensível ao toque
Controle o seu 'bot a partir de uma tela sensível ao toque, usando um servidor Express! (Para hacksters mais avançados.) Https://github.com/monofuel/blebot9000
Código de controle do robô
Github com código para executar o robothttps://github.com/martinkronberg/Firmata-BLE-Bot

Esquemas

PDF para montagem de chassis

Processo de manufatura

  1. Kit de teste de glicômetro
  2. Kit de modelo de brinquedo
  3. O kit de código aberto suporta manutenção preditiva
  4. O kit fornece a plataforma de desenvolvimento mmWave
  5. O kit Dev simplifica a rede mesh BLE
  6. Guia de conexão do Raspberry Pi 3 Starter Kit
  7. Hologram Nova Starter Kit
  8. Construindo o Kit do Robô MonkMakes Raspberry Pi
  9. Intellisaurus - Kit Dinosaur Robot
  10. 8 coisas a saber sobre a ISO 9000