A primeira parte do projeto para vocês entenderem, o que eu demorei muito tempo, é a comunicação que o mouse faz com (no caso) o computador.
- O periférico mouse, utiliza do protocolo PS2 para comunicação. O que significa que é uma comunicação bidirecional, com uma frequência na casa de KHz. E é muito simples! Possui 4 fios para conexão: GND, VCC, DATA e CLOCK.
- Possui 2 acumuladores absolutos, um para o eixo X e o outro para o eixo Y. O que eles tem que fazer? Conforme movimentamos o mouse, para direita e esquerda, cima e baixo, vai se acumulando valores nestes acumuladores (que na mais são que variáveis contadoras) e assim o computador processa o valor do acumulador, setando o mouse na tela (posição).
Sendo assim, esses acumuladores possuem um range de valores de -255 à 255, e será esta informação que usaremos para controlar o servo. Imaginem só, x: -255 que seria a menor posição do acumulador x na tela do PC! E aonde ele se encontra? No último pixel a direita ou a esquerda do vídeo (depende do processamento da informação). O mesmo vale para o acumulador Y, porém ele estará acumulado (setado) no alto ou abaixo do vídeo.
Pense agora em um servo! ele pode estar em 0° ou 180°, dependendo do sinal injetado. Agora relacionamos esses dados, com os do mouse: 0° = x = -255 , 90° = x = 0 , 180° = x = 255 e assim por diante. Conseguimos então, de acordo com a posição do mouse estabelecer o angulo em que o servo deve se encontrar!
Bacana não!? Tem mais!
O mouse convencional ainda possui 3 botões: direita, esquerda e scroll! Os quais podem também ser utilizados na programação!!
1 - Dados
2 - Não conectado
3 - GND
4 - Vcc (+5V)
5 - Clock
6 - Não Conectado
disponível em arduino.cc
Circuito:
- Conecte o pino Dados (data) no pino digital 5.
- Conecte o pino Ground em qualquer GND do arduino.
- Conecte o pino Clock no pino digital 6.
- Conecte o pino Vcc (5V) no pino +5V na placa do arduino.
A biblioteca PS2, que serve para "interfacear" mouse e teclado conforme protocolo ps2, esta disponivel em biblioteca.ps2, no site arduino.cc.
Bom, antes de usarmos o arduino como host do mouse, e assim controlar o servo, iremos fazer o processamento do sinal do mouse para o arduino via serial (USB) e pelo computador. Utilizaremos o processing, para isto!
Mas agora essa parte fica para outro dia, pois já é fim de ano, e os exames na faculdade estão chegando! Ficar de DP, jamais!
Deixo aqui um vídeo para vocês compreenderem o projeto:
Nenhum comentário:
Postar um comentário