# Cyberbox

Cyberbox é uma interface para robótica educacional, hobistas ou mesmo para pessoas que tem interesse em implementar experimentos que envolvem programação e eletrônica. É uma placa de circuito impresso (PCI) onde existe todo o hardware necessário para controlar dispositivos eletrônicos de baixa potência bem como ler sinais digitais e analógicos.
Internamente o Cyberbox é controlado por um PIC, esse controla diversas saídas de potência onde podem ser conectados dispositivos que funcionam com 12 Volts. Estas saídas de potência são constituídas por transistores que suportam correntes na faixa de 3 Amperés porém são limitados a 1 A por questões de segurança. Com isso pode-se controlar Motor de passo, motores DC, lâmpadas de baixa potência, leds, relês entre outros objetos eletrônicos que funcionam com a tensão de 12V e que consomem em média 1 ampére.
Além das 12 saídas de potência que oferecem um controle por PWM (Pulse Width Modulation) ou Modulação por largura de pulso o Cyberbox possui um conjunto de entradas digitais e analógicas sinal analógico bem numerosas. 16 entradas digitais 0-5V com sinalização síncrona e assíncrona à escolha e 8 entradas analógicas de 10 bits de resolução com sinalização síncrona com tempo programável e síncrona com disparo à escolha.
O Cyberbox não funciona de forma autônoma, isto é, ele precisa estar conectado a um computador para receber os comandos e então executar uma operação associada ao comando recebido. Por esta razão o aluno, professor ou hobista necessita de um programa para enviar os comandos para a interface. Alguns exemplos de programas educacionais que são compatíveis com o Cyberbox são o Imagine, Everest, Superlogo ou MicroMundos.
Um dado interessante a respeito do Cyberbox é a facilidade de conexão, aos bornes de entrada e saída podem ser conectados fios elétricos, só é preciso uma chave de fenda. Com isso a robótica educacional pode ser desenvolvida com sucata! Sim, a sucata é o motor de passo que foi tirado de uma impressora, o motor DC de um carrinho de controle remotos, o LED de um aparelho eletrônico estragado, o trilho de cortina que não é mais usado, os CDs que estão riscados, aquela hélice do secador que não funciona mais entre tantos outros objetos mecânicos, eltrônicos.

## O que faz?

A linguagem logo é usada por diversos professores no ensino de Matemática, Física, Química, História, Biologia, Lógica entre outras matérias. A programação nesta linguagem é simples e fácil pois os mnemônicos/comandos da lingagem foram traduzidos do inglês para o português.
São muitos os experimentos que podem ser feitos com o Cyberbox, por exemplo, usando o Superlogo alguém pode fazer um procedimento para controlar as luzes de um semáforo. Abaixo há um exemplo de um procedimento criado na linguagem logo e que pode ser usado para simular um semáforo de forma bem simples. Caso você tenha interesse em baixar o Superlogo, esse pode ser baixado do site da Unicamp mais precisamente do site da NIED, veja em links externos por Superlogo.
Aqui, os comandos "ligue" e "desligue" fazem com que as portas de saída sejam ligadas e desligadas. Exemplos mais elaborados podem ser criados, por exemplo, criar um simulador de elevador.

## Como faz?

O Cyberbox contém na sua PCI um micro controlador que se comunica diretamente com a porta serial do micro computador, assim, fica aguardando os comandos que o usuário envia. Esses comandos devem seguir o protocolo de comunicação Cybercontrol, que pode ser baixado nos links externos. Um protocolo de comunicação é um conjunto de regras bem definidas que define como será a troca de informação entre dois ou mais interlocutores.
Quando o usuário digita na interface de comandos do Superlogo: ligue 1 a biblioteca de controle do Cyebrbox para Superlogo converte automaticamente a palavra ligue e o parâmetro 1 para os comandos reconhecidos pelo Cyebrbox. Tudo é transparente para o usuário.

## Softwares compatíveis

O Cyberbox pode ser controlado utilizando diversos softwares e linguagens de programação. Alguns softwares educacionais como Imagine, Superlogo, Micromundos,Everest podem ser usados por alunos para realizar experimentos. Hobbistas e programadores mais experientes podem desenvolver softwares e aplicações mais avançadas em linguagens como Linguagem de programação C, C++, Visual Basic, Linguagem de programação Java, Python, na verdade qualquer linguagem de programação que permita acesso à porta serial pode ser utilizada para controlar o Cyberbox.

## Em ação

Existe um vídeo disponível no Youtube onde pode ser visto o Cyberbox em ação controlando um carrinho. Os movimentos dos motores, o acendimento das lâmpadas e da antena em cima do carrinho são todos controlados a partir do PC.