Olá robô - Introdução a programação Olá robô - escolhendo seu caminho Em quase toda a aula de programação, a primeira lição ensinada é alguma variação do código Olá Mundo. Olá Mundo, frequentemente um segmento de código de uma ou duas linhas, exibe a linha Olá Mundo quando o código é construído e executado. Embora este código possa parecer uma introdução muito simples à programação, ele apresenta vários conceitos cruciais na programação. Olá Mundo é a primeira lição que muitos estudantes têm na lógica de programação, bem como na sintaxe específica da linguagem. Mas, o mais importante, a simplicidade do Olá Mundo permite que ele seja um ponto de teste para o sistema usado para executar o código. Embora seja possível exibir Olá Mundo ou Olá Robô em um dispositivo Android no Sistema de Controle REV, isso não serve exatamente para o mesmo propósito. Para considerar adequadamente a sintaxe, lógica e teste no Sistema de Controle REV, é necessário prestar atenção a uma multiplicidade de elementos do sistema como atuadores e sensores. Por essa razão, a lição Olá Mundo foi adaptada para Olá Robô. Ao final deste guia, os usuários devem entender como configurar seu robô e testar seus mecanismos de robô. O esboço a seguir percorre o fluxo e os objetivos desta seção. Escolha o caminho que melhor se adequa às suas necessidades. Se você é novo na programação ou no Sistema de Controle REV, recomendamos que você siga todo o guia para aprender como utilizar adequadamente o sistema. Introdução Ferramentas de programação Existem três ferramentas de programação para o Sistema de Controle REV. Conheça os benefícios de cada opção e escolha aquela que melhor atenda às suas necessidades. A seção também inclui instruções sobre como acessar a opção que você escolher. Op Modes O que são Op Modes? Saiba mais sobre os diferentes tipos de Op Modes no Sistema de Controle REV. Configuração Importância da configuração O que é Configuração e por que você deve configurar antes de começar a programar? Configurando hardware comum Aprenda como configurar hardware comumente utilizado, como motores, servos e sensores. Erros comuns no mapeamento de hardware Entender e resolver os erros comuns que ocorrem ao configurar e mapear hardware banco de testes: introdução Banco de testes Por que criar um banco de testes com atuadores e sensores pode ajudar na programação. Este banco de testes, ou algo equivalente, será usado nas seções seguintes. Noções básicas de testes Entenda por que o aprendizado é um dos aspectos mais importantes do desenvolvimento de software e como ele difere da solução de problemas (troubleshooting). Banco de testes: blocos Criando um Op Mode Concentra-se em como navegar na interface de blocos e criar um modo operacional (op mode). Fundamentos da programação Quebra a estrutura e os elementos-chave necessários para um modo operacional (op mode), bem como alguns dos componentes essenciais dos Blocos e da lógica de programação. Programando Atuadores Como codificar servos e motores. Esta seção orienta a lógica básica de codificação de atuadores, controle de atuadores com um gamepad e uso de telemetria. Banco de dados: OnBot Java Criando um OpMode Concentre-se em como navegar na interface OnBot Java e criar um op mode. Fundamentos da programação Explique a estrutura e os elementos-chave necessários para um "op mode", bem como alguns dos componentes essenciais do Java. Programando Atuadores Como codificar servos e motores. Esta seção orienta sobre a lógica básica de programação de atuadores, controlar atuadores com um gamepad e usar telemetria. Programando Sensores Como programar um dispositivo digital. Esta seção foca na lógica básica de codificação de um dispositivo digital, como um Sensor de Toque REV. Controle de robô Crie um robô simples Apresenta um possível robô para trabalhar, assim como o arquivo de configuração usado nas seções seguintes. Noções básicas de transmissão Diferenças entre drivetrains diferenciais e omnidirecionais e seu impacto nos tipos de controle teleoperados. Movimentação do robô: blocos Noções básicas de programação de transmissão O que considerar ao programar os motores do drivetrain e como aplicar isso a um controle teleoperado no estilo arcade. Tempo decorrido Aprenda a usar o conceito de tempo decorrido para criar programas autônomos controlados por tempo. Movimentação por encoder Noções básicas de programação de transmissão O que considerar ao programar os motores do drivetrain e como aplicar isso a um controle teleoperado no estilo arcade. Tempo decorrido Aprenda a usar o conceito de tempo decorrido para criar programas autônomos controlados por tempo. Movimentação por encoder Aprenda a usar encoders para criar trajetórias autônomas mais consistentes. Controle de braço: blocos Controle de braço Noções básicas de progrmação de braço Introdução à codificação de um braço para controle teleoperado e trabalho com um interruptor de limite. Programando um braço para uma posição Utilizando encoders de motores para mover um braço para uma posição específica, como de 45 graus para 90 graus. Utilizando limites para controlar a amplitude de movimento Trabalhando com os conceitos básicos de controle de braço, encoder de motor e interruptores de limite para controlar a amplitude de movimento de um braço. Controle de braço: OnBot Noções básicas de progrmação de braço Introdução à codificação de um braço para controle teleoperado e trabalho com um interruptor de limite. Programando um braço para uma posição Utilizando encoders de motores para mover um braço para uma posição específica, como de 45 graus para 90 graus. Utilizando limites para controlar a amplitude de movimento Trabalhando com os conceitos básicos de controle de braço, encoder de motor e interruptores de limite para controlar a amplitude de movimento de um braço.