Índice:

Otto DIY Class Final: 4 etapas
Otto DIY Class Final: 4 etapas

Vídeo: Otto DIY Class Final: 4 etapas

Vídeo: Otto DIY Class Final: 4 etapas
Vídeo: 15 PERSONAL TRANSPORTS THAT MAKE MOBILITY FUN 2024, Novembro
Anonim
Otto DIY Class final
Otto DIY Class final

Este projeto foi viabilizado pela Otto and Athens Technical College.

Para começar, você deve primeiro comprar o kit em:

Em seguida, siga as etapas em:

Etapa 1: Etapa um: montar o robô a partir das instruções

Etapa um: montar o robô a partir das instruções
Etapa um: montar o robô a partir das instruções
Etapa um: montar o robô a partir das instruções
Etapa um: montar o robô a partir das instruções

wikifactory.com/+OttoDIY/otto-diy

Este site é onde você encontrará instruções de montagem e código para o seu robô Otto.

Como você pode ver, misturei e combinei diferentes partes e cores e usei um bloco de carregamento portátil para alimentação em vez das 4 baterias AA recomendadas.

Meu alto-falante é montado na frente para facilitar a audição e uma espada é fixada no lado direito para decoração.

Etapa 2: Etapa dois: plugue e codifique

Etapa dois: plugue e codifique
Etapa dois: plugue e codifique

Depois que seu robô estiver montado, carregue o Arduino IDE em seu computador e conecte seu robô.

Neste ponto, você deve ter os arquivos Otto baixados. Exporte-os diretamente para a pasta de bibliotecas do Arduino.

Isso permitirá que você use o código fornecido por Otto.

Etapa 3: Etapa três: Concluir a codificação

Etapa três: terminar a codificação
Etapa três: terminar a codificação

Depois que suas bibliotecas forem extraídas, você precisará entrar no Arduino IDE e certificar-se de que seus gerenciadores de inicialização estão atualizados.

Configure sua placa para Arduino Nano, seu processador para ATmega328P (Old Bootloader) e seu COM para qualquer porta em que você conectou seu robô.

Depois que essa etapa for concluída e seu código estiver pronto, pressione o botão de upload no canto superior esquerdo do programa para fazer o upload do código para o seu robô.

Etapa 4: Etapa quatro: assistir

Observe os movimentos doentios do seu robô e sua voz de canto de droga.

Dependendo do código que você usou, você pode fazer seu robô cantar, dançar ou evitar obstáculos.

Este projeto foi escrito com o código evitado:

// ------------------------------------------------ -------------------------------------------------- -------------------------------------------------- ----------------- // Otto_avoid sample sketch // -------------------------- -------------------------------------------------- -------------------------------------------------- -------------------------------------- // - Otto DIY PLUS APP Firmware versão 9 (V9) // - Otto DIY investe tempo e recursos fornecendo código-fonte aberto e hardware, por favor, suporte comprando kits em (https://www.ottodiy.com) // ------------ -------------------------------------------------- --- // - Se você deseja usar este software sob Licença de Código Aberto, você deve contribuir com todo o seu código-fonte para a comunidade e todo o texto acima deve ser incluído em qualquer redistribuição // - de acordo com a GPL Versão 2 quando seu aplicativo é distribuído. Veja https://www.gnu.org/copyleft/gpl.html // -------------------------------- -------------------------------------------------- -------------------------------------------------- --------------------------------- #include // - Biblioteca Otto versão 9 Otto9 Otto; // Este é o Otto!

//---------------------------------------------------------

// - Primeiro passo: Configurar os pinos onde os servos estão conectados / * --------------- | O O | | --------------- | YR 3 ==> | | ----- ------ <== RL 4 | ----- ------ | * / // SERVO PINs ////////////////////////////////////////////// ////////////////////////////////////// #define PIN_YL 2 // servo [0] perna esquerda #define PIN_YR 3 // servo [1] perna direita #define PIN_RL 4 // servo [2] pé esquerdo #define PIN_RR 5 // servo [3] pé direito // PINs ULTRASÔNICOS ////////////// //////////////////////////////////////////////////////// ///////// #define PIN_Trigger 8 // TRIGGER pin (8) #define PIN_Echo 9 // ECHO pin (9) // BUZZER PIN /////////////// //////////////////////////////////////////////////////// ///////////// #define PIN_Buzzer 13 // BUZZER pin (13) // SERVO ASSEMBLY PIN /////////////////////// ////////////////////////////////////////////////////// // para ajudar a montar os pés e pernas de Otto - elo de ligação entre o pino 7 e GND #define PIN_ASSEMBLY 7 // MONTAGEM pino (7) LOW = assembly HIGH = operação normal ///////////////////////////////// Mais //////////////////////////////////////////////////////// //-- Variáveis globais -------------------------------------------/ / /////////////////////////////////////////////////////// //////////////////// distância interna; // variável para armazenar a distância lida do módulo telêmetro ultrassônico bool obstacleDetected = false; // estado lógico para quando o objeto detectado está na distância que definimos ////////////////////////////////////// /////////////////////////////// //-- Configurar -------------- ---------------------------------------- // //////// //////////////////////////////////////////////////////// ///////// void setup () {Otto.init (PIN_YL, PIN_YR, PIN_RL, PIN_RR, true, A6, PIN_Buzzer, PIN_Trigger, PIN_Echo); // Define os pinos servo e ultra-sônicos e pinMode do pino Buzzer (PIN_ASSEMBLY, INPUT_PULLUP); // - Pino de montagem fácil - LOW é o modo de montagem // Otto desperta! Otto.sing (S_connection); // Otto emite um som Otto.home (); // Otto se move para sua posição pronta delay (500); // aguarde 500 milissegundos para permitir que o Otto pare // se o pino 7 estiver BAIXO, coloque os servos do OTTO no modo inicial para permitir uma montagem fácil, // quando terminar de montar o Otto, remova o link entre o pino 7 e o GND enquanto (digitalRead (PIN_ASSEMBLY) == LOW) {Otto.home (); // Otto se move para sua posição pronta Otto.sing (S_happy_short); // cante a cada 5 segundos para sabermos que OTTO ainda está funcionando delay (5000); // aguarde 5 segundos}

}

//////////////////////////////////////////////////////// ///////////////// // - Principal Loop --------------------------- ------------------ // //////////////////////////////// ///////////////////////////////////////// void loop () {if (obstacleDetected) {// if existe um objeto mais próximo do que 15cm então fazemos o seguinte Otto.sing (S_surprise); // soa uma surpresa Otto.jump (5, 500); // Otto salta Otto.sing (S_cuddly); // soar um // Otto dá três passos para trás para (int i = 0; i <3; i ++) Otto.walk (1, 1300, -1); // repetir três vezes o atraso do comando de retrocesso (500); // pequeno atraso de 1/2 segundo para permitir que Otto se acomode // Otto vira à esquerda 3 etapas para (int i = 0; i <3; i ++) {// repetir três vezes Otto.turn (1, 1000, 1); // o comando andar para a esquerda delay (500); // pequeno atraso de 1/2 segundo para permitir que Otto se acomode}} else {// se nada na frente, então, caminhe para frente Otto.walk (1, 1000, 1); // Otto anda em linha reta obstacleDetector (); // chama a função para verificar o localizador de faixa ultrassônica para um objeto mais próximo do que 15cm}} ///////////////////////////////////// //////////////////////////////////// //-- Funções --------- ----------------------------------------- // /////// //////////////////////////////////////////////////////// /////////

/ - Função para ler o sensor de distância e atualizar a variável detectada de obstáculo

void obstacleDetector () {int distance = Otto.getDistance (); // obtém a distância do telêmetro ultrassônico if (distance <15) obstacleDetected = true; // verifique se a distância é menor do que 15 cm, verdadeiro se for mais obstacleDetected = false; // falso se não for}

Recomendado: