_______________________________________________________________________________________________________________
Introdução Ao longo das próximas linhas tentaremos mostrar o funcionamento geral de um Joystick, acompanhando a sua evolução ao longo dos tempos. Para o fazer, usaremos o exemplo de um Joystick normal composto por uma base, uma haste e botões de acção, sendo, no entanto, o seu princípio de funcionamento semelhante aos outros tipos de Joysticks.
________________________________________________________________________________________________________________
O Joystick
Um Joystick é um dispositivo apontador, composto geralmente por uma base, por comandos direccionais, e por comandos de acção. Estes periféricos podem ser apresentados em três grandes grupos: Joysticks básicos, Gamepads e Volantes. Estes três grupos distinguem-se pela sua forma geral; assim, o primeiro representa o conceito original de Joystick, uma base para apoiar numa superfície plana e uma haste por cima dessa base que funciona como comando direccional. O segundo (que surgiu com o lançamento das consolas de jogos), permite que o utilizador segure directamente a base nas mãos e controle o movimento de um objecto no ecrã através de um botão multidireccional ou de uma pequena haste. O terceiro, vocacionado para jogos simuladores de corridas automóveis, simula um volante de um carro e, como tal, apresenta uma base para fixar a uma mesa, um guiador por cima desta e os pedais necessários à condução. Em comum nestes três grupos está o facto de apresentarem botões que permitem realizar determinadas acções. ________________________________________________________________________________________________________________ Funcionamento Básico Como já foi referido, para demonstrar o funcionamento de um Joystick, focar-nos-emos no modelo original e mais simples deste periférico, ou seja, uma base para apoiar numa superfície plana que contém os elementos necessários à transformação dos movimentos físicos do utilizador (através da haste e dos botões) em acções que o computador interpreta e executa. O elemento contido na base que de momento nos interessa para entendermos o funcionamento básico de um Joystick é uma placa de circuitos, que contém caminhos de metal condutor impressos, que, por sua vez, formarão pequenos circuitos eléctricos (Fig. 1)
Fig. 1 – Exemplo do esquema interno de um Joystick. Quando o Joystick não está a ser utilizado (posição neutra), ou seja, nenhuma acção está a ser realizada (seja com a haste, seja com os botões), todos os circuitos estão interrompidos, não havendo assim electricidade a ser conduzida. Nestas secções interrompidas, existe um pequeno botão de plástico que contém um condutor metálico, que fecha o circuito quando é realizada uma acção com a haste ou com um botão do Joystick. Assim, ao fechar-se o circuito, a electricidade pode percorrer os caminhos dentro da placa e eventualmente até ao computador. Este, por sua vez, ao receber este impulso eléctrico fará a sua interpretação sobre qual o comando accionado (haste para a esquerda, para cima, botão disparado, etc.). No entanto, sendo os jogos a principal motivação do uso destes dispositivos, este princípio de funcionamento apresenta, hoje em dia, uma enorme desvantagem: apenas reconhece os movimentos como valores absolutos (para a frente, para um lado) e não distingue se o utilizador empurra a haste na sua totalidade ou só um pouco. Surgem assim os Joysticks analógicos, que eliminam este problema.
________________________________________________________________________________________________________________ O Design Interno Para detectar a posição exacta do comando direccional do Joystick, é necessário conhecer a posição da haste nos eixos horizontal (eixo dos X’s) e vertical (eixo dos Y’s). Ao determinar estas duas coordenadas o computador sabe qual a posição exacta da haste direccional. Num Joystick simples, a haste encaixa em duas calhas móveis, uma para cada eixo do movimento. Quando se move a haste na diagonal esta empurra ambas as calhas em simultâneo e ao libertar a haste de pressão, existem molas que fazem a mesma retornar à posição neutra. É precisamente através das duas calhas que é possível determinar a posição da haste.
Neste tipo de Joysticks, essa posição é determinada por dois potenciómetros, um para cada calha. Estes potenciómetros contêm uma resistência com uma curvatura por onde passa um braço que se move por acção da respectiva calha e funcionam de uma forma bastante simples: O computador fornece energia à resistência. Quando o braço oscilante passa por esta, determina a corrente eléctrica que vai voltar à porta do computador. Essa corrente varia consoante a distância que o braço percorreu na resistência, que por sua vez foi condicionado pelo movimento da haste do Joystick. Ao chegar ao computador, a corrente (sinal analógico) terá de ser transformada num sinal digital de modo a que o computador possa interpretá-lo. Este processo é feito por um conversor analógico-digital que não é mais do que um condensador de corrente. Assim, o sinal chega, entra no condensador, e o tempo que esse condensador levará a carregar a corrente determinará a posição da haste do Joystick. No entanto, para além deste processo não ser muito fiável, gasta muito tempo e energia a executar toda esta operação, por isso, uma solução poderá passar por colocar um conversor analógico-digital na porta de entrada do computador ou no próprio Joystick (Fig. 2 e Fig. 3).
Fig.2 – Joystick Analógico ligado a porta Digital.
Fig. 3 – Joystick Digital ligado a porta Analógica. Uma outra hipótese passa por eliminar os potenciómetros e usar sensores ópticos para ler o movimento digitalmente. Neste design, as calhas estão ligadas a duas rodas com furos regulares ao longo das mesmas. Cada roda está colocada entre dois LEDs (Light-Emitting Diodes) e duas fotocélulas. À medida que a roda vai rodando a luz emitida pelo LED, ora chega à fotocélula (quando passa por um furo), ora não chega (quando passa por uma parte fechada). Como cada fotocélula emite uma pequena corrente quando recebe luz, o número de vezes que isso acontece vai determinar a posição da haste direccional do Joystick. _________________________________________________________________________________________________________________
Force Feedback
Uma das grandes inovações dos
Joysticks nos últimos anos foi o aparecimento
_________________________________________________________________________________________________________________
1 - Com base na figura, explique como é determinada a posição da haste do Joystick. As calhas estão ligadas a duas rodas com furos regulares ao longo das mesmas. Cada roda está colocada entre dois LEDs (Light-Emitting Diodes) e duas fotocélulas. À medida que a roda vai rodando a luz emitida pelo LED, ora chega à fotocélula (quando passa por um furo), ora não chega (quando passa por uma parte fechada). Como cada fotocélula emite uma pequena corrente quando recebe luz, o número de vezes que isso acontece vai determinar a posição da haste direccional do Joystick. 2 - Explique como funcionam e qual a função dos potenciómetros num Joystick. Estes potenciómetros contêm uma resistência com uma curvatura por onde passa um braço que se move por acção da respectiva calha e funcionam de uma forma bastante simples: O computador fornece energia à resistência. Quando o braço oscilante passa por esta, determina a corrente eléctrica que vai voltar à porta do computador. Essa corrente varia consoante a distância que o braço percorreu na resistência, que por sua vez foi condicionado pelo movimento da haste do Joystick. Os potenciómetros ajudam a determinar a posição da haste direccional do Joystick.
_________________________________________________________________________________________________________________ Fontes http://computer.howstuffworks.com/joystick.htm http://www.avault.com/articles/hardgame.asp?name=hardgame65&page=1 http://www.avault.com/articles/hardgame.asp?name=hardgame66&page=1 http://www.avault.com/articles/hardgame.asp?name=hardgame67&page=1 http://www.descent2.com/sickone/analogjoystick.html http://www.epanorama.net/documents/joystick/
|