Tutoriais

Este é o seu guia de construção do robô “Jabuti”. Siga os tutoriais para construção de cada parte do projeto.

Iniciaremos com a instalação do sistema operacional na placa Raspberry Pi.

Tutorial 1 – Instalando a Raspberry Pi – neste tutorial iremos instalar o sistema operacional em um cartão de memória vazio.

Tutorial 2 – Instalando os pacotes adicionais – após a instalação do sistema operacional, iremos instalar todos os pacotes adicionais para o funcionamento do projeto.

Tutorial 3 – Configurando a interface wi-fi como ponto de acesso – realizaremos a configuração da interface de rede wi-fi USB para funcionar como ponto de acesso e permitir que as pessoas conectem no nosso Jabuti.

Tutorial 4 – Instalando o banco de dados – instalaremos o banco de dados mysql necessário para persistência dos dados do sistema.

Tutorial 5 – Instalando os arquivos do sistema – copiaremos os arquivos do sistema e realizaremos a configuração inicial.

Tutorial 6 – Construindo e instalando a ponte-H – neste tutorial construiremos e instalaremos a ponte-h para controle dos motores do Jabuti.

Tutorial 7 – Raspberry Pi GPIO – será realizada as ligações entre a porta geral de entrada e saída da raspberry pi e a ponte-H. Serão realizados testes também.

Tutorial 8 – Escolhendo a versão – aqui iremos escolher entre duas versões oficiais do projeto: Jabuti Edu em plástico e Jabuti Edu em MDF.

Tutorial 8.a – Montando a Jabuti Edu em plástico – esta versão utiliza uma impressora 3D para a confecção das peças.

Tutorial 8.b – Montando a Jabuti Edu em MDF – esta versão utiliza uma fresadora CNC, corte à laser, ou mesmo ferramentas manuais para a confecção das peças.

Tutorial 2 – Instalando os pacotes adicionais

Neste tutorial vamos instalar e pré-configurar os pacotes de software adicionais para o funcionamento do Jabuti.

Antes, vamos expandir o sistema de arquivos, pois a partição de dados não ocupa todo cartão de memória e possui somente 300Mbytes de espaço livre.

Para expandir o sistema de arquivos usaremos o comando abaixo:

#sudo raspi-config

#sudo raspi-config

#sudo raspi-config

Selecionamos a primeira opção (1-Expand Filesystem) e após a conclusão o sistema de arquivos ocupará todo cartão de memória.

raspberry-config-expand

Reinicie o sistema com o comando:

#sudo reboot

Após a reinicialização, teremos 1.2 Gigabytes disponíveis para uso. Usamos o comando “df” para visualizar o espaço no sistema de arquivos.

#df -h

raspberry-disksize

Atualizando o sistema

Vamos iniciar atualizando o repositório de pacotes através do comando:

#sudo apt-get update

Aguarde a execução do update.

sudo apt-get update

sudo apt-get update

Agora vamos realizar o upgrade de todos os pacotes. Isso significa atualizar todo o sistema com as ultimas versões de todos os pacotes que sofreram atualização desde que a imagem foi gerada. Use o comando abaixo:

#sudo apt-get upgrade

Você deve aceitar as atualizações e aguardar. Após a execução deste comando execute o próximo:

#sudo apt-get dist-upgrade

Aceite novamente a atualização e aguarde a execução. Esta segunda atualização costuma demorar mais. No nosso caso foram baixados 225 Mbytes de arquivos de atualização e demorou cerca de uma hora para terminar.

Agora estamos prontos para instalar os pacotes adicionais do sistema. Vamos começar pelo mysql.

#sudo apt-get install mysql-server

Você deve aceitar o download de 90Mb de arquivos. Depois de concluído o download, lhe será solicitada uma senha de administração do servidor. Nós utilizamos “r@spberry” (sem aspas). Digite duas vezes.

raspberry-install-mysql

Aguarde a instalação de todos os pacotes relacionados ao servidor mysql.

Agora vamos instalar o servidor web Apache e o interpretador PHP. Use o comando:

#sudo apt-get install php5

Aceite a instalação dos pacotes dependentes com o tamanho de aproximadamente 22 Mbytes e aguarde a instalação.

O próximo passo é instalar o gerenciador de banco de dados phpmyadmin.

#sudo apt-get install phpmyadmin

Aceite o download e aguarde. Uma tela de escolha será apresentada. Selecione a opção “apache2” e avance.

raspberry-install-phpmyadmin

Após a execução do script de instalação, será apresentada uma tela onde a escolha sobre a configuração do phpmyadmin deve ser a opção “yes”.

raspberry-install-phpmyadmin-configure

Depois informe a senha do banco de dados para que a aplicação phpmyadmin possa conectar no mysql. Utilizamos a senha “r@spberry” que usamos para instalar o banco de dados.

raspberry-install-phpmyadmin-pass

Depois informe uma senha para o usuario da aplicação. Utilizamos “1qaz” informando essa senha nas duas próximas telas.

Pronto, o banco de dados, o servidor PHP e a ferramenta de administração do banco de dados estão instaladas com sucesso! Para testar aponte o navegador da sua máquina para o endereço ip da placa. Nosso caso o endereço é http://192.168.1.11.

Se tudo correu bem, teremos o servidor web respondendo bem

Se tudo correu bem, teremos o servidor web respondendo bem

Vamos agora instalar mais alguns pacotes necessários. Execute os comandos:

#sudo apt-get install hostapd udhcpd

Estamos pronto para o tutorial número 3 onde vamos criar um banco de dados e depois alimentar este banco de dados com as tabelas e dados necessários.

Acesse o link abaixo para continuar:

tutorial 3 – Configurando o banco de dados mysql

Requisitos do sistema

Para que o seu Jabuti possa ser implementado, apresentamos um guia de requisitos, onde demonstraremos os materiais, hardware e software, que serão utilizados no projeto. O objetivo desta página é apresentar um checklist de itens que são necessários para que o projeto possa ser implementado.

Vamos precisar dos seguintes itens:

  1. Placa Raspberry Pi – modelo B;
  2. Interface de rede wi-fi USB – Precisamos de um modelo específico, que permita modo AP;
  3. Cartão SD de 4 Giga bytes, preferencialmente classe 4 ou 10.
  4. Imagem do sistema operacional – Baixamos e gravamos no SD card o sistema operacional Debian Wheezy;
  5. Instalação dos pacotes adicionais – Banco de dados Mysql, Apache, PHP e algumas ferramentas para configurar a nossa Rasp como Access Point;
  6. Arquivos de instalação do sistema de gerenciamento;
  7. Eletrônica adicional para construção do robô Jabuti Edu.

Abaixo descrevemos cada item dos requisitos e depois apresentamos um tutorial completo de configuração do sistema.

1 – Placa Raspberry PI modelo B.

A grande diferença entre o modelo A e B é que o Modelo B possui um controlador Ethernet e duas portas USB, enquanto que o Modelo A possui apenas uma porta USB e nenhuma porta de Ethernet.

Vamos utilizar uma interface de rede wi-fi USB, mas precisamos da porta ethernet para realizar as configurações, baixar pacotes e atualizações, portanto o modelo B é nossa melhor escolha.

Nosso projeto, utiliza apenas 5 pinos da GPIO, dois para o controle de cada motor e um pino adicional para o controle da caneta.

Os pinos utilizados para conexão com a placa da ponte-H é apresentado abaixo:

(incluir foto da ligação na GPIO aqui)

2 – Interface de rede wi-fi USB

A interface de rede wi-fi configurada como Access Point serve para facilitar as conexões das pessoas ao sistema. Essa facilidade acontece porque ao ligar o Jabuti  ele cria a própria a rede sem fio e permite que todos se conectem no dispositivo diretamente sem a necessidade de configuração de uma infraestrutura de rede adicional.

Para que essa funcionalidade seja possível, precisamos de uma interface de rede USB compatível com o modo AP, além de uma configuração especial para que essa interface de rede permita conexões dos usuários.

Utilizamos os tutoriais representados nos links abaixo para configurar nossa Rasp. Apresentamos nossa própria versão do tutorial de configuração, porém a leitura dos artigos abaixo ajudará a entender as limitações dos diversos modelos de interfaces Wi-Fi USB existentes.

RPI Wireless HotSpot

Raspberry Pi Into a WiFi Hotspot with Edimax Nano USB EW-7811Un (RTL8188CUS chipset)

3 – Cartão SD de 4Gbytes

Em uma placa Raspberry Pi o sistema de arquivos principal e o sistema operacional são instalados em um cartão SD conectado na placa. Não é possível instalar o sistema operacional em um outro dispositivo (HD externo por exemplo).

No Projeto Jabuti Edu utilizamos um cartão de memória com capacidade de 4 Giga bytes de armazenamento.

Outro detalhe à ser observado é a velocidade do cartão SD, visto que todo sistema operacional e seu sistema de arquivo será armazenado neste cartão, quanto mais rápido ele conseguir trocar informações, melhor para o desempenho geral do sistema.

Utilizamos um cartão classe 4 pois este é o melhor custo-benefício entre velocidade de capacidade. Confira uma tabela de velocidade de cartões. Observe que quanto mais rápido o cartão for, mais caro também será.

Marks Operable Under Applications SD Memory Card
Speed Class 10 High Speed Bus I/F Full HD video recording
HD still consecutive recording
SD, miniSD, microSD
SDHC, miniSDHC, microSDHC
SDXC, microSDXC
6 4 Normal Bus I/F HD ~ Full HD video recording
2 SD video recording
UHS Speed Class 1 UHS-I Bus I/F
UHS-II Bus I/F
Full higher potential of recording real-time broadcasts and capturing large-size HD videos
(UHS Speed Class1 denotes a 10 MB/s minimum write speed)
SDHC UHS-I and UHS-II, SDXC UHS-I and UHS-II
3 Capable of recording 4K2K video
(UHS Speed Class 3 denotes 30 MB/s minimum write speed)

4 – Imagem do sistema operacional

Preferimos iniciar a instalação utilizando uma imagem pronta com o sistema Debian Wheezy (Raspbian) , que poderá ser baixada no link abaixo:

Downloads Raspberry Pi – Baixar a imagem atual do sistema Raspbian

Realizamos diversas customizações no sistema operacional que comentaremos nos tutoriais. Na sessão de Downloads será disponibilizada uma imagem do cartão SD do nosso protótipo.

 

5 – Instalação dos pacotes adicionais

Além do sistema operacional, utilizaremos diversos pacotes adicionais. A lista de pacotes adicionais será abordada em um tutorial específico.

Observe que uma conexão à internet via cabo será necessária para a instalação dos pacotes manualmente.

Caso você utilize a imagem do cartão SD que disponibilizamos, a conexão com a internet não é necessária.

 

6 – Arquivos de instalação do sistema de gerenciamento

Por fim, depois de instalar o sistema operacional, instalar e configurar os pacotes adicionais, chegou a hora de instalar o sistema de controle no jabuti.

Na sessão de Downloads está disponível um pacote com os arquivos do sistema para instalação manual.

Se você optou por baixar a imagem do cartão SD que disponibilizamos, o sistema já está incluso e funcionando!

 

7 – Eletrônica adicional

Para construir a base robótica que carinhosamente chamamos de Jabuti, você precisará dos seguintes componentes:

  • Bateria de ions de lítio (li-po) de duas células e 2400mAh de capacidade;
  • Placa Ponte-H para controle de 2 motores (nossa versão aqui)
  • Dois motores com redução (usamos 2 servos modificados);
  • Base de apoio (chassis);
  • Cabos de ligação e chave liga-desliga.

Disponibilizaremos um tutorial para instalação desta eletrônica.

 

Próximos passos

Agora que você já sabe de tudo que precisa para iniciar o projeto, aguarde nossos tutoriais com a explicação completa de como construir seu Jabuti.

 

 

 

Hardware Para montar o Seu Jabutí

Diagrama de Hardware

A

O projeto Jabuti Edu é baseado em uma placa de processamento chamada Raspberry Pi montada em um “carrinho” em formato de tartaruga. O “Jaboti”possui além da Raspberry Pi, uma placa wi-fi USB, uma eletrônica de controle para os dois motores, uma bateria li-po de duas células e um circuito que fornece energia regulada em 5V para todo sistema.

Diagrama de Software

Diagrama de SoftwareA

Essa placa carinhosamente chamada de “Rasp”, roda um servidor linux (Debian Wheezy) e executa um sistema de gerenciamento de aulas construído em PHP.

O sistema de gerenciamento de aula permite que o professor proponha problemas e os alunos construam programas de comandos de movimentação do robô.

Quando executado, cada programa é interpretado pelo sistema que comanda a eletrônica embarcada para mover o robô de acordo com o programa.