Home
Expansão de Aplicações para Wiimote
Contents
1. SendInput 2 buffer Marshal SizeOf buffer 0 Prenchimento do vector de posic es com a ltima posic o detectada if filter flag vxx ind int warpedX 65535 0f screenWidth vyy ind int warpedY 65535 0f screenHeight if ind number_of_positions ind 0 circular buffer Calculo da m dia dos pontos do intervalo de valores medx 0 medy 0 for int ix 0 ix lt number of positions ix medx vxx 1ix medy vyy ix set the average position buffer 0 mi dx medx number_of positions buffer 0 mi dy medy number_of positions E filter on now dx buffer 0 mi dx now dy buffer 0 mi dy SendInput 1 buffer Marshal SizeOf buffer 0 is there movement if old dx now dx old dx now dx old dy now dy old dy now dy gt move threshold move flag true old dx buffer 0 mi dx store the actual dx to compare with the future dx old dy buffer 0 mi dy store the actual dy to compare with the future dy 19 CAPITULO 3 Projecto e Desenvolvimento Lancamento do bot o direito do rato ao fim de um segundo private void timerl_Tick_1 object sender launch the right key event EventArgs e L cursorControl amp amp IR_fl
2. O Wiimote cont m dois tipos de sensores que podem ser usados para a resolu o de monitoramento KREYLOS 2007 Aceler metro Linear O Wiimote cont m tr s aceler metros que medem a acelera o linear ao longo de tr s eixos ortogonais Os aceler metros podem ser utilizados para medir directamente o movimento angular medindo a direc o da gravidade s o tamb m a base para o reconhecimento do gesto Wii usado em muitos jogos Infelizmente os aceler metros por si s n o podem ser usados para monitorizar a relativa posi o e orienta o do Wiimote no espa o C mara IR O Wiimote est equipado com uma c mara de luz infravermelha IR de 1024x768 pixels montado na frente do comando O IR do Wiimote pode detectar e monitorizar at quatro fontes de luz infravermelha modulada a 100 Hz A c mara est equipada com um processador que analisa a imagem IR que identifica fontes de luz e que calcula as suas posi es x y Uma vez que a c mara passiva o Wiimote precisa para trabalhar de fontes de luz infravermelha IR A consola Wii vem com um chamado sensor bar que simplesmente emite luz infravermelha de dois aglomerados de IR LEDs montados em ambas as extremidades do sensor Os aceler metros podem ser usados para combinadamente com a imagem de IR medir os movimentos angulares atrav s deste ltimo tipo de sensor IR que o trabalho agora apresentado vai incidir O Wiimote o controlador padr o da consola W
3. nnse ii 32 Al Aspecto Geral Vers o Inicial evocan Helal INE HE k c N iini kur k anna dean 32 AZ Aspecto Geral da Nova Vers o isi ela ee Mite tee ai ele a gees 32 Programa o do Chip 16F628A para Nova Vers o da Caneta Digital 33 Boal A TS 33 Bibliografia PRPRERDENS NRP em SER RR AR AREAS E RD RS ek s SO E d s SRA ANS 36 AVON OS FRANGO OD EE b be RAROS PRA e ke Ed EE SPREAD RR 37 7 1 Caracteristicas LED IR Tsal 6200 e 6100 Ris ae ek kk kk k 38 72 Caracter sticas LED SFH 4231 5it 4455 is diia 39 7 3 C digo Fonte da Aplica o Wiimote Whiteboard ooooooconnnocccnoncccnoonccononcconnncnnnnncnonnos 40 7 4 Modifica es ao C digo Fonte Inicial tas 41 fo Diagrama do Chip T6FO28 As ii A Win d Kr eee 42 7 6 C digo Fonte Nova Vers o para o Wiimote Whiteboard oooonocccnnnocccnnncccnnncccnnancnnnnos 43 viii Lista de Figuras Figura 1 Layout do Programa Wiimote Whiteboard oooonoonooncosonconoonconcnnconconononoccconcononnconcnonoconoccnconcnccononaos 4 Figura 2 Comando Wiimote ccccccscssssssssssssssscsscsscescssessssssnessessscossessscessessnssossnesssssessessssossossnessssseseeses 5 Figura 3 Adaptador USB Bluetooth seessesossesesesecsesosoesesecoesosoesesececoesoroesesecocoosoroesesesoesosoroeserocoseororseseceeoesosoesee 5 Figura 4 LED Emissor TSAL 6200 x xsscssesesesesceescesesese
4. buffer 0 mi dy 0 buffer 0 mi mouseData buffer 0 mi dwFlags MOUSEEVENTF_RIGHTUP buffer 0 mi time O buffer 0 mi dwExtralnfo IntPtr 0 SendInput 1 buffer Marshal SizeOf buffer 0 key click if timer_Flag to avoid fast click repetitions if stateVector 5 amp amp stateVector 6 Is the action code 00 Then Key Code keybd_event key_code 0x45 0 0 timer_Flag true stateVector 0 false stateVector 1 false stateVector 2 false stateVector 3 false stateVector 4 false stateVector 5 false stateVector 6 false stateVector 7 false Detecc o do inicio do bot o normal se o padr o do c digo enviado pela caneta s tiver Is e o oitavo bit anterior n o estava a 1 if stateVector 1 amp amp stateVector 2 amp amp stateVector 3 amp amp stateVector 4 amp amp stateVector 5 amp amp stateVector 6 amp amp stateVector 7 if stateVector 0 mouse down if filter_flag 1 Posi es de inicio do filtro fi11 the whole buffer with the initial position for int ix 0 ix lt number_of_positions 1x vxx ix first x vyy ix first y if filter_flag 1 25 CAPITULO 3 Projecto e Desenvolvimento Prenchimento no vector do x e y da ultima posic o observada pelo WiiMote vxx ind int warpedX 65535 0f screenWidth vyy ind int warpedY 65535
5. eee 4 2 2 Defini o dos Recursos e Ferramentas Utilizadas eee 4 220 SOftware NECESI a 4 222 Hardware Necess rio ii ada 5 2 3 Seguidor Posi o em Ambientes Imersivos 2D com Analogia de Percep o em 3D 6 2 4 Defini o dos Recursos e Ferramentas Utilizadas eee 7 2 45 SOftware NECESI a F 2 4 2 Hardware NeCESS TIO iii a ad 7 2 5 Controlo de Cursor Atrav s dos Movimentos dos Dedos Tipo Minority Report 8 2 6 Defini o dos Recursos e Ferramentas Utilizadas eee 8 2 6 1 lt Software NeceSss AO 8 2 6 2 Hardware Necess rio iia kere W k Pnd sepe bel Sea d e Ke Hu p a H ek a k ka k 8 3 Projecto e Desenvolvimento s scscecssciscesscosseseessodessadsesscessoasesescessevessesdvosedsssdecesseossossoesenes 10 3 1 Analise a Dek Rad 10 3 2 A Aplica o Wiimote Whiteboard icoiooinidis iio idas ida ek ee ek kk ek kk KAK KA 11 2 Como nidiar a Apia AO se 253455454445 a E n AN ea we 11 3 2 2 Comunica o Wiimote Computador Atrav s de Bluetootan 11 3 2 2 O Programa blu ol ais 11 3 2 4 Verificar a Compatibilidade do Adaptador Bluetooth EEEEEE 12 3 2 5 O Ficheiro Wiimote NADO RS 13 Did UPOSSIVEIS Erros SOLUC ES Sea a a a 14 3 4 Consideracoes PR VIAS it idad 15 3 5 Limita es do Wiimote Whiteboard cr kerek kek kk ek kre kk kR 16 3 5 1 Sombr
6. o dos Recursos e Ferramentas Utilizadas 2 2 1 Software Necess rio e WiimoteWhiteboard V 02 O Programa em Visual C criado por Johnny Chung Lee que se encarrega de interpretar os dados enviados pelo Wiimote ao computador Wiimote Battery iil 27 60 Visible IR dots Tracking Utilization 51 Cursor Control Calibrate Location Wiimote A Figura 1 Layout do Programa WiimoteWhiteboard e BlueSoleil 1 6 2 1 e 5 0 Este programa encarrega se de estabelecer a comunica o entre o computador e o comando Wiimote Antes de instalar o programa aconselh vel consultar o manual de instala o do USB Bluetooth j que muitos requerem a instalag o dos drivers antes de estabelecer a conex o do USB Existem tamb m alguns adaptadores USB que s o incompat veis com o BlueSoleil consultar compatibilidade em http www wiili org index php Compatible Bluetooth devices CAPITULO 2 Contextualiza o do Problema e Microsoft Net Framework 2 0 necess rio ter instalado no computador o Net Framework 2 0 ou superior para que o programa funcione Um Framework pode incluir programas de suporte bibliotecas de c digo linguagens de script e outros softwares para ajudar a desenvolver e juntar diferentes componentes de um projecto de software 2 2 2 Hardware Necess rio Computador com Windows Xp ou Windows Vista Projector multim dia Comando Wiimote Comando da consola de jogos Wii da Nintendo Figura 2
7. 0f screenHeight if ind number_of positions ind 0 circular buffer Calculo da m dia posicional filtro int medx 0 int medy 0 for int ix medx vxx ix medy vyy ix O ix lt number of positions ix buffer 0 mi dx medx number of positions buffer 0 mi dy medy number of positions filtrar Temporizador bloqueador de repeti es r pidas de cliques atrav s da vari vel timer Flag private void timeri Tick object sender EventArgs e timerl Stop timer_Flag false rightClick false Temporizador no papel de uma thread para o lan amento do timer1 pela observa o da timer_Flag private void timer Tick object sender EventArgs e if timer_Flag timerl Enabled true timerl Start Bot o de activac o do filtro de suavizac o private void checkBox1_CheckedChanged object sender EventArgs e 26 CAPITULO 3 Projecto e Desenvolvimento if checkBoxl Checked filter flag 1 else filter flag 0 3 11 A Aplica o Desktop Vr e a Aplica o Wiimote Multipoint Grid 3 11 1 Testes Efectuados Conforme a descri o efectuada para cada aplica o nos pontos 2 3 e 2 5 e na impossibilidade por manifesta falta de tempo de estudar e analisar as duas aplica es de forma a aumentar a sua autonomia e de melhor las para outras de car cter til bem como ensaiar e optimizar o seu proces
8. 3 Projecto e Desenvolvimento 3 5 4 Compatibilidade com Algumas Aplica es Windows Em geral o WiimoteWhiteboard compat vel com a grande maioria das aplica es existentes No entanto existem alguns casos em que n o o Um exemplo dado com a aplica o PowerPoint 2007 Quando se quer entrar em modo de apresenta o esta op o n o funcionava adequadamente 3 6 Requisitos 3 6 1 Requisitos Funcionais Para contrariar estas lacunas encontradas na aplica o WiimoteWhiteboard original foram identificadas as funcionalidades que se querem introduzir na aplica o para resolu o destas limita es 1 Adicionar dispositivo O utilizador deve poder emular o bot o direito do rato ao fim de alguns instantes 2 Adicionar Filtro O utilizador deve poder accionar filtro de forma a tornar o tra o mais suave 3 Verificar compatibilidade Na aplica o Microsoft PowerPoint poder accionar o modo de apresenta o de diapositivos 3 7 Desenvolvimento Para alterar o funcionamento do WiimoteWhitheboard foram necess rias modifica es ao c digo fonte disponibilizado por de Johnny Chung Lee este c digo desenvolvido em linguagem de programa o C que oferece poder facilidade e flexibilidade uma linguagem nativa para a plataforma NET o C resolve o abismo entre linguagem de baixo n vel e as linguagens de alto n vel Apresenta se um resumo das altera es realizadas ao c digo fonte inicial Anexo 7
9. Comando Wiimote USB Bluetooth Existem v rios adaptadores Bluetooth no mercado nem todos s o compat veis com o BlueSoleil no entanto poss vel conectar se com um qualquer adaptador atrav s do painel de controlo do Windows Figura 3 Adaptador USB Bluetooth LED emissor IR O tipo de LED infravermelho o principal comunicador entre o Wiimote e o computador existem v rios modelos que emitem luz com um ngulo de abertura maior que outros com mais pot ncia e com longitudes de onda distintas neste caso necess rio escolher o mais adequado os LEDs usados nas experi ncias efectuadas foram VISHA Y TSAL 6200 e 6100 Anexo 7 1 Figura 4 LED Emissor TSAL 6200 e Bot o de press o No mercado existem v rios modelos foi escolhido este o bot o transborda 0 5 cm da sua base porque parece ser o mais ergon mico para os dedos z u Figura 5 Bot o de Press o CAPITULO 2 Contextualiza o do Problema e Pilhas Qualquer tipo de pilhas de 1 5 V ou 3 V e Resist ncia de 15 a 30 Ohm 1 4W usar a 3V Elas servem para n o danificar o LED quando sujeito a um valor inadequado de tens o E Figura 6 Resist ncia para Prevenir que Acima de 1 5 Volts o LED n o se Danifique e Cabo multifilar Podem ser aplicados cabos de rede na concep o das canetas no entanto este cabo multifilar quebra menos que o cabo de rede e Figura 7 Cabo Multifilar para Efectuar Liga es e Canet
10. Wiimote bem posicionado quando o ponteiro infravermelho esta ligado e seja mostrado um 1 na Visible IR dots Uma vez estabelecida a comunica o do Wiimote com o computador estamos em condi es de poder testar a aplica o com a nossa caneta digital de infravermelhos 3 3 Possiveis Erros e Solu es Problema A aplica o n o pode iniciar correctamente The application failed to initialize properly Oxc0000135 Soluc o necess rio instalar Microsoft NET 2 0 Problema A aplicac o n o pode encontrar o Wiimote Exception Error Reading data from Wiimote is it connected Solu o A comunica o Wiimote PC n o foi estabelecida necess rio faz lo previamente com BlueSoleil ou outros software de Bluetooth compat veis Problema Nada acontece quando voc liga o ponteiro infravermelho em cima de um dos pontos vermelhos de calibra o Esta solu o pode ser devido a diferentes causas 14 CAPITULO 3 Projecto e Desenvolvimento 1 O ponteiro infravermelho nao funciona A maioria das c maras digitais sens vel a luz infravermelha S temos de apontar o LED para a c mara e verificar se h ou n o luz no LED deve se obter um novo LED no segundo caso 2 O Wiimote n o pode ver o LED infravermelho porque fora do seu campo de vis o Usando a opg o Visivel IR dots comentada anteriormente ser poss vel detectar se esse 0 problema Se assim for temos de reajustar a posi o do Wiimot
11. duas dimens es e que podemos acompanhar com precis o as imagens no monitor ou na projec o pois elas reagem ao movimento do corpo quando nos movemos isto cria uma no o de profundidade e de espa o Para estas duas aplica es n o foi desenvolvida qualquer altera o ao c digo por falta de tempo 28 CAPITULO 4 An lise de Resultados 4 1 2 Compara o com Outros Sistemas Ap s ver a utilizag o de quadros interactivos profissionais e at uma demonstrag o do quadro da Clasus conclu mos que apesar de serem todos diferentes em termos funcionais o objectivo sempre o mesmo devolver s salas de aula uma maior interacg o sendo poss vel simular qualquer ambiente em qualquer disciplina interagir dinamicamente com os alunos simplificando a partilha e a utilizag o dos diversos recursos e conte dos produzidos Das utiliza es referidas o Wiimote Whiteboard aproxima se de todas mas existem algumas diferencas de abordagem que ser o referidas Relativamente instala o calibra o mais funcional o quadro profissional assim como na qualidade de imagem embora com as modifica es introduzidas na vers o inicial do Wiimote Whiteboard a qualidade de imagem se aproxime bastante O WiimoteWhiteboard afasta se definitivamente dos outros sistemas no baixo custo de aquisi o na utiliza o para outros fins e na facilidade de uso O WiimoteWhiteboard apresenta uma nova abordagem perante os sistemas profissionais pois
12. espa o 2 4 Defini o dos Recursos e Ferramentas Utilizadas 2 4 1 Software Necess rio e WiiDesktopVr O Programa em Visual C criado por Johnny Chung Lee que se encarrega de interpretar os dados enviados pelo Wiimote ao computador e BlueSoleil 1 6 2 1 e 5 0 e Microsoft Net Framework 2 0 e DirectX SDK Microsoft uma colec o de APIs que tratam de tarefas relacionadas com a programa o de jogos e grafismos para o sistema operativo Microsoft Windows ou seja quem padroniza a comunica o entre software e o hardware gr fico e interpreta as instru es gr ficas 2 4 2 Hardware Necess rio e Computador com Windows Xp ou Windows Vista e Projector multim dia e Comando Wiimote e USB Bluetooth e LED emissor IR e Interruptor No mercado existem v rios modelos o interruptor estabelece a liga o com os LEDs e Pilhas 1 5V a 3V e Resist ncia de 15 a 30 Ohm usar a 3V e Cabo multifilar CAPITULO 2 Contextualiza o do Problema 2 5 Controlo de Cursor Atrav s dos Movimentos dos Dedos Tipo Minority Report O terceiro projecto que Johnny Chung Lee nos apresenta usa uma matriz de LEDs e algumas fitas reflectoras podemos usar a c mara infravermelha do Wiimote para localizar objectos com os pr prios dedos em duas dimens es ou seja com umas pequenas fitas reflectoras ou com os pr prios LEDs de infravermelhos podemos interagir com o computador com o simples agitar dos dedos uma cena seme
13. o BlueSoleil Quando da Incompatibilidade da Aplica o ao Adaptador 13 Figura 16 Ficheiro de Arranque do WiimoteWhiteboard rerereeeeeeseseexeeeeeeseseeeeeeee 13 Figura 17 Layout do Wiimote WhiteBoard seseseserseseseseeeeeeeseseseeeeeeekeneses eken Heke Her anos 14 Figura 18 Caneta Digital com Identifica o da Fun o dos Bot es errereeeeeeseseseeeeee 22 Figura 19 Layout da Nova Vers o do Wiimote White board ccscscscssscccscscssescsccsscesessscssscssscsssssssseees 22 CAP TULO 1 Introdu o Cap tulo 1 1 Introdu o 1 1 Enquadramento O Wiimote um pequeno comando sem fios que fornecido com a consola Wii da Nintendo veio revolucionar a forma de interagir entre o utilizador e a m quina Este comando integra uma c mara de infravermelhos que possibilita fazer o seguimento posicional do Wiimote ou de um dispositivo de infravermelho de forma precisa este ltimo dispositivo que facilita a utiliza o deste comando em aplica es diferentes das originalmente criadas as de interac o em jogos Este projecto passa pela an lise implementa o e melhoria das tr s aplica es propostas por Johnny Chung Lee que utilizam o Wiimote s o elas Dispositivo multi apontador em quadro branco padr o Seguidor de posi o para ambientes imersivos 2D com analogia de p
14. tem que estar tamb m a 1 Detec o dos novos bot es Testa o pre mbulo e o bit de paragem if cursorControl amp amp stateVector 1 amp amp stateVector 2 amp amp stateVector 3 amp amp stateVector 4 amp amp stateVector 7 int x ws IRState RawXl int y ws IRState RawYl float warpedX x float warpedY y warper warp x y ref warpedX ref warpedY INPUT buffer new INPUT 1 buffer 0 type INPUT_MOUSE buffer 0 mi dx int warpedX 65535 0f screenWidth buffer 0 mi dy int warpedY 65535 0f screenHeight buffer 0 mi mouseData O buffer 0 mi dwFlags MOUSEEVENTF_ABSOLUTE MOUSEEVENTF_MOVE buffer 0 mi time O buffer 0 mi dwExtraInfo IntPtr 0 S endInput 1 buffer Marshal Size0f buffer 0 rightClick true if timer_Flag to avoid fast click repetitions if stateVector 5 amp amp stateVector 6 Is the action code 117 Then Right Click buffer 0 type INPUT_MOUSE buffer 0 mi dx 0 buffer 0 mi dy 0 buffer 0 mi mouseData O buffer 0 mi dwFlags MOUSEEVENTF_RIGHTDOWN buffer 0 mi time O buffer 0 mi dwExtralnfo IntPtr 0 24 CAPITULO 3 Projecto e Desenvolvimento SendInput 1 buffer Marshal SizeOf buffer 0 buffer 0 type INPUT_MOUSE buffer 0 mi dx 0
15. 00 e 6100 7 2 Caracter sticas LED SFH 4231 7 3 C digo Fonte da Aplica o Wiimote Whiteboard 7 4 Modificac es ao C digo Fonte Inicial 7 5 Diagrama do Chip 16F628A 7 6 C digo Fonte Nova Vers o para o Wiimote Whiteboard
16. 010 00 1 key click ou de ou del ou del ou del ou del ou del ou del else tpu tpu tpu ay tpu tpu if inpu ou del ou del ou del ou de else tpu tpu ay tpu ay tpu ay ay tput ay_ms 10 tput_a OxFF lay_ms 10 t_a 0x0 ms 10 OxFF ms 10 ct w 0x0 ct w _ms 10 t_a 0x0 ay_ms 10 0x0 ct w ay t_a OxFF ay ms 10 t PIN B4 t_a OxFF ms 10 t_a 0x0 _ms 10 t_a OxFF _ms 10 t_a 0x0 lay_ms 10 preamble code code stop 50hz Ap ndices 34 Ap ndices output_a 0x0 sleep 35 Capitulo 6 Bibliografia 6 Bibliografia KREYLOS OLIVER Homepage Dispon vel em http graphics cs ucdavis edu okreylos ltimo acesso em 13 de Junho de 2008 LEE JONHNNY CHUNG projects Wii Dispon vel em http www cs cmu edu jonhnny projects wii MARQUES P PEDROSO H C 2 0 FCA Editora de Informatica LDA 1 Ed 2007 MICROSOFT DirectX 2007 Disponivel em http msdn microsoft com directx WILLORG Wiimote 2007 Dispon vel em http www wiili org index php title Wiimote amp oldid 9285 Ultimo acesso em 11 de Junho de 2008 http catalog osram os com http www vishay com 36 7 Anexos 7 1 Caracter sticas LED IR Tsal 62
17. 4 Primeiro foram criadas as variaveis funcionais para o bot o direiro do rato e para a funcionalidade do filtro Em seguida definiram se os par metros no ficheiro app config Ap ndice A do bot o direito do filtro e do tempo de disparo do bot o direito E por fim foi alterado o valor da propriedade time do objecto mi para 500 para poderem funcionar bem alguns bot es cones do PowerPoint Para explicar um pouco as mudan as na caneta no que diz respeito suavidade do tra o necess rio descrever como funciona o sensor infravermelho do Wiimote Um emissor de luz 17 CAPITULO 3 Projecto e Desenvolvimento infravermelha posicionado na superf cie de projec o O Wiimote capta essa luz como posig0es num dado intervalo Depois de tirar a m dia do intervalo o Wiimote tem a posig o em que o utilizador est apontando a caneta essa posig o decomposta em dois eixos X e Y que s o utilizados para controlar a c mara do Wiimote Desta forma a c mara controlada pelo movimento da caneta digital 3 8 Modifica es Introduzidas no Wiimote Whiteboard Definic o das variaveis adicionadas ao WiimoteWhiteboard public bool move_flag true public int old_dx 0 public int old_dy 0 public int now_dx 0 public int now_dy 0 public bool IR_flag false public int vxx null public inti vyy n ll public int number_of positions 18 public int move_thre
18. Escola Superior de Tecnologia e de Gest o een eee INSTITUTO POLITECNICO DE BRAGANCA nn ts Joaquim Jos de Carvalho Paulino Expans o de Aplica es para Wiimote Curso Inform tica de Gest o Julho 2008 Expans o de Aplica es para Wiimote Relat rio da Disciplina de Projecto Curso de Inform tica de Gest o Escola Superior de Tecnologia e de Gest o Joaquim Paulino A Escola Superior de Tecnologia e Gest o n o se responsabiliza pelas opini es expressas neste relat rio iii Certifico que li este relat rio e que na minha opini o adequado no seu conte do e forma como demonstrador do trabalho desenvolvido no mbito da disciplina de Projecto lt Nome do Orientador gt Orientador Certifico que li este relat rio e que na minha opini o adequado no seu conte do e forma como demonstrador do trabalho desenvolvido no mbito da disciplina de Projecto lt Nome do Co Orientador gt Co Orientador Certifico que li este relat rio e que na mmminha opini o adequado no seu conte do e forma como demonstrador do trabalho desenvolvido no mbito da disciplina de Projecto lt Nome do Arguente gt Arguente Aceite para avalia o da disciplina de Projecto ie Pref cio O Wii da Nintendo destacou se como a consola de videojogos que tirou as pessoas do sof para as p r a participar em jogos virtuais de t nis e futebol tudo isto gra as a um controlo remoto sens vel ao movimento o
19. LO 4 An lise de Resultados 4 1 4 Avalia o Geral Como avalia o geral consideramos que o projecto no que concerne aplica o WiimoteWhiteboard embora defira um pouco das propostas comerciais existentes no mercado uma possibilidade a encarar como uma solu o de muito baixo custo e como alternativa port til no entanto enquadra se perfeitamente nos objectivos propostos inicialmente cumprindo assim com o objectivo de estudar e apresentar alternativas quanto aquisi o de novos equipamentos Com as melhorias efectuadas na aplica o inicial o uso desta tecnologia ficou mais consistente e capaz de se tornar um caso s rio de sucesso Acreditamos que a evolu o deste projecto promissora perante o entusiasmo e perspectivas dos poss veis utilizadores Estas novas vers es foram publicadas na Internet a fim de se mostrar as capacidades deste sistema ao p blico em geral 30 CAPITULO 5 Conclus es 5 Conclus es Apesar do numero crescente de dispositivos lan ados no mercado e a diminui o do custo de aquisi o a inova o na procura de novas ferramentas sempre aliciante Este trabalho investigou algumas ferramentas e iniciativas desenvolvidas para utiliza o do dispositivo Wiimote da Nintendo principalmente focado na aplica o Dispositivo Multi apontador em quadro branco padr o de baixo custo Wiimote Whiteboard Ap s a nalise da aplica o disponibilizada por Jonhnny Chung Lee verificamos
20. Manager AppSettings Get smooth Para carregar o c digo de tecla do clique 3 key code Convert ToByte System Configuration ConfigurationManager AppSe ttings Get key_code Declarac o e definic o dos vectores para armazenar os 8 bits mais recentes da trama de IR VXX new int number_of positions vyy new int number of positions stateVector 0 false stateVector 1 false stateVector 2 false stateVector 3 false stateVector 4 false stateVector 5 false stateVector 6 false stateVector 7 false Armazenamento dos ltimos oito estados a 100Hz stateVector 0 stateVector 1 stateVector 1 stateVector 2 stateVector 2 stateVector 3 stateVector 3 stateVector 4 stateVector 4 stateVector 5 stateVector 5 stateVector 6 stateVector 6 stateVector 7 stateVector 7 ws IRState Foundl C digo padr o recebido pelo Wiimote a 100Hz a partir do microprocessador da nova caneta 23 CAPITULO 3 Projecto e Desenvolvimento preambulo 1 0 11 0 c digos de ac o Right click 111 Programmable click 0 0 bit de paragem 1 exemplos de tramas 1 011101111111 ou 1101110101011 Para se manter a compatibilidade das canetas originais com a fun o do click normal n o foi considerado o preambulo 1 0 1 0 mas sim o 1 1 1 1 Nesta situa o os restantes bits
21. Wiimote A interac o homem m quina estabelece uma revolu o com o crescente n mero de dispositivos que destroem os paradigmas actuais O principal objectivo foi realizar um projecto algo diferente das pr ticas habitualmente propostas aproveitar para investigar e explorar um pouco as caracter sticas t cnicas do Wiimote e investigar poss veis usos alternativos aos jogos e as suas poss veis aplica es noutros contextos Neste sentido este trabalho prop e a an lise de tr s aplica es que utilizam o Wiimote e a investiga o de novas extens es destas mesmas aplica es sugerindo produzindo e testando novas abordagens e estruturas de informa o http www cs cmu edu johnny projects wii Agradecimentos Agradeco ao Professor Pedro Joao Rodrigues por me ter proposto o tema que serviu de base a realizag o deste trabalho Estou particularmente grato pela disponibilidade demonstrada no acompanhamento das diversas fases deste projecto fornecendo toda a informa o e esclarecimentos necess rios Ainda pelo facto de me ter facultado o material necess rio para uma boa elabora o do mesmo E ndice PRA AA A O 1 El Enquadramento il ali 1 12 MOUSE 2 Pe A 2 1 4 Estrutura do Relatio i Ei ulan da ed alee 2 2 Contextualizac o do Problema sersrrsrsererese resene eeoe ene ee eene cene kece Heee 3 2 1 Dispositivo Multi Apontador em Quadro Branco Padr o
22. a digital com LED infravermelho Na figura seguinte mostra se o esquema de uma caneta infravermelha indicando que tipo de resist ncia necess rio para cada caso de tens o Resist ncia N o necess rio at 1 5 Ve 1 LEd tolerante a esta volatagem De 15 Ohm a 30 Ohm usar at 3 V duas pilhas AA Bot o de press o De 40 Ohm a 70 Ohm usar at 5 V USB Led infravermelho Fonte energia t Corpo da caneta Figura 8 Esquema para Construir uma Caneta Digital De seguida apresenta se uma imagem real da constru o de uma caneta seguindo o esquema apresentado _ E A Figura 9 Liga o das Componentes na Constru o de uma Caneta 2 3 Seguidor Posi o em Ambientes Imersivos 2D com Analogia de Percep o em 3D O segundo projecto apresentado por Johnny Chung Lee criar ambientes virtuais usando para o efeito a c mara de infravermelhos do Wiimote de forma a demonstrar que com o CAPITULO 2 Contextualiza o do Problema movimento do corpo podemos criar ambientes imersivos a duas dimens es com analogia de percep o a tr s dimens es Isto poss vel atrav s de dois LEDs montados num chap u desta forma pode se acompanhar com precis o a localiza o do corpo cabe a isso transforma a projec o da imagem num ambiente virtual din mico A projec o reage adequadamente ao movimento da cabe a e do corpo como se fosse um verdadeiro cen rio 3D criando uma ilus o de profundidade e
23. ag INPUT buffer new INPUT 1 buffer 0 type INPUT MOUSE buffer 0 mi dx 0 buffer 0 mi dy 0 buffer 0 mi mouseData buffer 0 mi dwFlags MOUSEEVENTF_LEFTUP buffer 0 mi time O buffer 0 mi dwExtraInfo IntPtr 0 SendInput 1 buffer Marshal Size0f buffer 0 buffer 0 type INPUT MOUSE buffer 0 mi dx buffer 0 mi dy 0 buffer 0 mi mouseData 0 buffer 0 mi dwFlags MOUSEEVENTF_RIGHTDOWN buffer 0 mi time O buffer 0 mi dwExtraInfo IntPtr 0 SendInput 1 buffer Marshal Size0f buffer 0 buffer 0 type INPUT MOUSE buffer 0 mi dx buffer 0 mi dy 0 buffer 0 mi mouseData buffer 0 mi dwFlags MOUSEEVENTF_RIGHTUP buffer 0 mi time 0 buffer 0 mi dwExtraInfo IntPtr O SendInput 1 buffer Marshal SizeOf buffer 0 timerl Stop cursor is stopped private void timer2 Tick object sender LE using timerl when the EventArgs e move_fl ag move f lag false timerl Stop else 20 CAPITULO 3 Projecto e Desenvolvimento if IR_flag timerl Enabled true timerl Start CheckBox para accionar o filtro no layout da aplicac o private void cbFilter_CheckedChanged object sender EventArgs e if cbFilter Checked filter_flag true else filter_flag false CheckBox para accionar o bot o direito do rato no Layout da aplicac o
24. alue 19 gt lt the filter smooth index gt lt add key key_code value 8 gt lt the key code to the click 3 8 BackSpace gt lt appSettings gt 32 lt configuration gt Ap ndices B Programa o do Chip 16F628A para Nova Vers o da Caneta Digital Este ap ndice mostra os dados relativos programa o do chip 16f628 para fazer uso do bot o program vel na nova vers o da caneta digital B 1 Aspecto Geral include ir mod h bit RBIE 0x0B 3 Hoit RBIF 0x0B 0 byte TICON 0x10 bit TMRION T1CON 0 void main tasm movlw 0x0 weak pull up option endasm setup_vref FALSE TMR1ON 0 disable_interrupts INT_COMP clear_interrupt INT_COMP RBIE 1 set tris a 32 all output but mclear set tris b 0xF0 MSBs inputs to allow the wakeup output lb OxFF while 1 RBIF 0 if input PIN B7 0 always on output a 0OxFF else if input PIN B6 0 1010 11 1 right click output_a OxFF preamble delay ms 10 normal click 33 ou del ou del ou de ou del ou de ou de else tpu tpu ay tpu tpu ay tpu lay_ tpu t_a 0x0 ay ms 10 t a OxFF _ms 10 t_a 0x0 lay_ms 10 t_a OxFE _ms 10 t_a OxFF ms 10 t_a OxFF lay_ms 10 code stop if input PIN B5 0 1
25. as na Superf cie de Projec o viese dona keke kk kek k 16 3 5 2 Emula o do Bot o Direito do Rato uL id Ja 16 vii 4 5 A B 6 3 5 3 A Qualidade do Trae rd 16 3 5 4 Compatibilidade com Algumas Aplica es WindOWS ooooocoocccconcccnoncnononcccnnncnnnns 17 26 REQUISIOS 2354 50 sey l Kelen MEL bA DN doa ade ees ona ae ea sada 17 3 6 17 REQUISOS FUNCIONAIS scan dial sa SORT RSA HE adalia la 17 Sit JJESENVO VIMENTO ais dessa co A Dea S ad Midieeians 17 3 8 Modifica es Introduzidas no WiimoteWhiteboard E eee ek 18 3 9 Nova Vers o para o WiimoteWhiteboard Utilizando Nova Caneta com Processador De e a o Sato creme tie 21 39 Novo Layout assi eiiiai rai 22 3 10 Modificagdes na Nova Vers o WiimoteW hiteboard E eee 22 3 11 A Aplica o Desktop Vr e a Aplica o Wiimote Multipoint Grid 27 3 11 1 Destes Ele cados tt dan 27 An lise de Resulfados s cs eseosocesescosesesceseeseseeeoeeeeoeoe onceno eveeeoe neee ken 28 4 1 1 An lise de Desempenho e Resultados do Sistema eee 28 4 1 2 Compara o com Outros Sistemas occ ccccssdscvascassedeaees ueedaadacesndagevecsaseuassacteaeanaese 29 4 1 3 Aplica o Pr tica em Ambiente de Sala de Uula amp EL e 29 AVA Avaliacao a ROS 30 A AA II e s a nea Se ewe ka 31 Detalhes do Ficheiro Xml
26. car a op o Vis vel IR dots n o cont m quaisquer n meros quando n o utilizamos a nossa caneta Se aparecer algum n mero significa que h interfer ncia que preciso localizar e remover 3 4 Considera es Pr vias Existem dois factores que influenciam significativamente a qualidade deste projecto 1 A posi o do Wiimote em rela o imagem projectada nem demasiado perto risco de n o abranger a totalidade da superf cie nem muito longe perde resolu o de monitoramento Pode se obter uma ptima posi o utilizando a fun o Vis vel IR dots da aplica o Wiimote Whiteboard v0 2 de Johnny Chung Lee 2 A qualidade da luz infravermelha emitida pelo LED assim como existem l mpadas de 40 ou de 100 watts e emitem mais ou menos luz podemos usar um LED infravermelho mais ou menos potente Quanto mais brilhante o feixe infravermelho e maior abertura tiver melhor capturado ser pelo Wiimote e desta forma os resultados ser o mais satisfat rios 15 CAPITULO 3 Projecto e Desenvolvimento 3 5 Limita es do Wiimote Whiteboard Foram detectadas algumas limita es na utiliza o da aplica o Wiimote Whiteboard de seguida enumeram se algumas dessas limita es 3 5 1 Sombras na Superf cie de Projec o verdade que se pode apoiar a ponta da caneta sobre uma superf cie com a imagem projectada sem afectar a superf cie O que importa saber se emite luz infravermelha ou n o que captada p
27. d de Jonhnny Chung Lee tornou se dificil pois a coloca o do Wiimote interferia na boa utiliza o da projec o depois de perceber a melhor coloca o do Wiimote conseguiu se ter um melhor dominio da mesma Embora como j foi referido em pontos anteriores tenham surgido alguns problemas no uso de algumas das aplica es de ambiente Windows assim como o aspecto da suavidade do tra o e a utiliza o do bot o direito Mesmo com estas limita es conseguiu se obter um desempenho bastante aceitavel Analisando estas limita es no programa foi possivel modificar a partir do c digo fonte as limita es existentes e com isso introduzir o bot o direito do rato quando utilizamos a projec o este recurso entra em funcionamento ao fim de um segundo com a caneta digital imobilizada ou seja precionado o bot o da caneta temos que a manter est tica sem movimento durante um segundo para accionar o bot o direito do rato Com esta modifica o na aplica o WiimoteWhiteboard o utilizador da superficie de projec o sente um maior dom nio da mesma e uma maior flexibilidade no modo como pertende actuar pois pode desligar e ligar o bot o direito do rato no layout da aplica o Com o bot o direito o utilizador faz uma utiliza o das aplica es de modo mais r pido e confort vel Quanto suavidade do tra o foram introduzidas as altera es correspondentes de modo a que o Wiimote capta se a luz infravermelha como posi es num dado inte
28. da entre o Wiimote e o ponto laranja Isso significa que n s j temos uma liga o ao computador As luzes azuis do Wiimote acendem de forma fixa O n mero de luzes acesas indica o estado das pilhas com uma luz baixa energia Se durante o processo explicado acima as luzes do Wiimote n o acenderem necess rio executar todo o processo descrito para realizar a comunica o com sucesso 3 2 4 Verificar a Compatibilidade do Adaptador Bluetooth Breve descri o para verificar a compatibilidade do adaptador com o BlueSoleil 1 Conectar o Adaptador Bluetooth ao computador este passo pode ser omitido no caso de existir um interno 2 Executar o programa Situar o cursor em acima do ponto central laranja 4 Se houver compatibilidade aparece uma mensagem com o nome do computador e um endere o composto de pares de d gitos hexadecimal Figura 14 d IYT Corporation BlueSoleil Janela principal nj x Ficheiro Ver OmeuBluetooth Os meus servicos Ferramentas Ajuda 022B K S A r A procurar dispositivos PAN IP 192 168 50 1 74 QUIM 00 11 B1 08 4F 43 Figura 14 Aplica o BlueSoleil Compatibilidade com Adaptador Bluetooth 5 Caso nao se verifique compatibilidade n o aparece o nome do computador e o endere o aparece com todos os d gitos a zero Figura 15 12 CAPITULO 3 Projecto e Desenvolvimento IvT Corporation BlueSoleil Janela principal loj xj Ficheiro ver O meu Blueto
29. e importante que enquanto efectuar tais controlos nenhuma parte do nosso corpo interfira entre o Wiimote e a luz infravermelha 3 A luz infravermelha n o brilhante o suficiente porque n o basta obter energia a partir de pilhas ou baterias Em tais casos devem ser substitu das por novas ou modificar o circuito el ctrico da caneta menor resist ncia mais tens o ou alterar o tipo de LED infravermelho por um mais potente Problema Linhas desenhadas com a caneta s o irregulares e a precis o pobre Solu o Lembramos que o Wiimote tem uma c mara infravermelha e quanto melhor a vis o que ele tem na superf cie de projec o melhor a resolu o da caneta Assim o bom posicionamento do Wiimote crucial para o sucesso nem muito longe nem muito pr ximos A op o Vis vel IR dots ajuda a encontrar a melhor posi o sabendo que o ngulo de visualiza o do Wiimote de 45 graus para cobrir toda a superf cie sem distanciar se muito Tamb m pode ser porque o LED infravermelho n o muito forte Problema O cursor nem sempre responde aos movimentos e cliques da caneta aparecendo em outras partes da superf cie Solu o Verifique se n o h outra fonte de luz infravermelha que atinge o Wiimote e interfira na comunica o As chamas de uma vela um isqueiro ou os pr prios raios solares emitem luz infravermelha assim s o poss veis fontes de interfer ncias Para verificar se existem ter que se verifi
30. elo Wiimote Isto implica um pequeno inconveniente inicial Temos de pressionar o bot o da caneta sempre que se queira fazer um clique e mant lo pressionado se for necess rio desenhar ou arrastar objectos De facto a principal desvantagem deste modus operandi o de conseguir um ngulo sempre vis vel do Wiimote em rela o ao LED infravermelho porque em muitos destes movimentos o corpo faz demasiada sombra sobre a projec o Uma poss vel solu o para este problema seria a coloca o do Wiimote numa posi o superior da superf cie de projec o para que interferisse menos com a sombra que o utilizador faz na superf cie de projec o 3 5 2 Emula o do Bot o Direito do Rato N o tendo a capacidade de emular o bot o direito do rato vers o original j coloca um problema mais grave Muitas vezes necess rio mostrar menus de contexto que aparecem somente desta maneira Seria l gico definir o bot o direito numa qualquer posi o est tica com a luz infravermelha acesa alguns instantes simulando o bot o direito do rato assim que funcionam os Tablet PC ou o PDA com ecr t ctil 3 5 3 A Qualidade do Tra o Nas primeiras experi ncias efectuadas saltaram vista as irregularidades acentuadas do tra o quando usamos programas de desenho pouco aconselh vel usar a escrita com uma aplica o deste tipo pois em determinadas situa es o tra o impercept vel e muito pouco linear 16 CAPITULO
31. ento 3 1 An lise O elemento essencial detector dos nossos dispositivos IR para o multi apontador em quadro branco o Wiimote Este um comando que usado para jogar com o Wii da Nintendo e que caracterizado pela sua originalidade pela capacidade de detectar os movimentos e pela capacidade de mover o cursor na superf cie de projec o atrav s de infravermelhos O Wiimote pode ser comprado por cerca de 40 euros e utiliz lo com o computador sem comprar a consola Wii Johnny Chung Lee ficou fascinado com as caracter sticas t cnicas do Wiimote e come ou a investigar poss veis utiliza es alternativas aos jogos Um de seus m ltiplos projectos que utiliza o Wiimote consiste precisamente em obter um quadro interactivo de baixo custo Low Cost Multi Point Interactive Whiteboards Using the Wiimote em http www cs cmu edu johnny projects wii ele desenvolveu o software necess rio para implementar o quadro interactivo de baixo custo O programa chamado Wiimote Whiteboard e gratuito Al m disso o c digo fonte est dispon vel Anexo 7 3 para os programadores que o queiram melhorar O software tamb m permite e Converter o monitor do computador em ecr t ctil usando os mesmos princ pios e Obter um Tablet Pc a imagem projectada sobre uma superf cie horizontal Vejamos como funciona este sistema de quadro interactivo de baixo custo 1 Um computador ligado a um projector que proporciona uma imagem em uma
32. ercep o em 3D Controlo de cursor atrav s dos movimentos dos dedos Tipo Minority Report Das tr s aplica es a primeira foi a que obteve a maior aten o por parte do autor deste projecto por ser a que traz mais benef cio na utiliza o di ria A comunica o entre o Computador e o comando Wiimote feito atrav s de Bluetooth recorrendo a drivers comuns Pode se classificar o projecto Wiimote como um projecto de investiga o e de desenvolvimento pela rea de an lise envolvida e pelos objectivos pr ticos a atingir http www cs cmu edu jonhnny projects wii CAP TULO 1 Introdug o 1 2 Motivac o A motiva o para este projecto a de investigar e alargar as reais capacidades deste comando Wiimote no contexto do projecto de Johnny Chung Lee Este projecto foi criado para dar continuidade utiliza o das aplica es descritas dando lhe uma maior independ ncia de forma a melhorar a sua utiliza o Espera se assim melhorar e cativar a sua utiliza o bem como dinamizar e optimizar o processo de modela o e parti o dos m dulos Relativamente ao m dulo de quadro interactivo pretende se para al m de uma substancial redu o de custos ao n vel da compra de ferramentas um importante aumento de quadros interactivos relativamente ao or amento original numa escola 1 3 Objectivos O objectivo deste trabalho visa aumentar a autonomia das ferramentas disponibilizadas por Johnny Chung Lee analisa
33. ficheiro ty Mover este Ficheiro WiimoteWhiteboard v0 2 modW1 exe Copiar este ficheiro E WimoteWhiteboard v0 2 modv1 exe config Publicar este Ficheiro na Web gt Figura 16 Ficheiro de Arranque do WiimoteWhiteboard 13 CAPITULO 3 Projecto e Desenvolvimento Depois de executar o ficheiro pretendido surge o layout da aplicac o como se mostra na Figura 17 Wiimote Battery iil 27 60 Visible IR dots Tracking Utilization 51 Cursor Control Calibrate Location Wiimote A Figura 17 Layout do Wiimote WhiteBoard Antes de calibrar a superf cie de projec o passo indispens vel para obter uma boa calibra o da superf cie aconselh vel desligar o Cursor Control cursor controlo para verificar com o ponteiro infravermelho se o Wiimote abrange toda a rea de projec o como indicado anteriormente A ideia a de manter o ponteiro emitindo luz infravermelha e avangar ao longo de todo o ecra ou superf cie quando a Wiimote detecta luz infravermelha revela um n mero ao lado de Visible IR dots pontos infravermelhos vis veis um 1 se apenas temos um ponteiro um e um 2 se usamos dois e s o capturadas em simult neo e assim por diante Se mover mos o ponteiro infravermelho num canto e desaparecer o n mero que foi atribu do por exemplo o 1 significa que este ponto n o captado pelo Wiimote desta forma devemos ajustar a dist ncia deslocando o para um lado ou para o outro Teremos o
34. forme se pode verificar o utilizador tem como op o ligar ou desligar a op o de filtro assim como todos os bot es desactivando o Cursor Control jala pr Battery EEE 60 42 Visible IR dots Tracking Utilization 59 M Cursor Control IV Filter Calibrate Location Wiimote 4 Figura 19 Layout da Nova Vers o do Wiimote Whiteboard 3 10 Modifica es na Nova Vers o WiimoteWhiteboard Os segmentos de c digo mostrados a seguir retratam as principais vertentes das novas funcionalidades adicionadas ao sistema de Wiimote Whiteboard O filtro de suavizac o funciona com base na m dia posicional dos ltimos n pontos detectados pelo Wiimote A detec o dos novos comandos da nova caneta feita pela observa o do estado dos bits de uma trama enviada pela caneta Vari veis para o bot o direito e para a func o de suavizac o do filtro public bool stateVector new bool 8 public bool rightClick false public bool timer_Flag false public int number_of positions 19 public int vxx null 22 CAPITULO 3 Projecto e Desenvolvimento public int vyy null public int ind 0 public int medx 0 public int medy 0 public int first x 0 public int first_y 0 public int filter_flag 1 public byte key_code VK_BACK Para carregamento do grau de suaviza o do filtro number_of_positions Convert ToInt32 System Configuration Configuration
35. ii da Nintendo mas pode ser conectado a computadores atrav s de uma interface Bluetooth Ele recebe a luz pontos de IR de uma caneta digital e transmite ao computador os movimentos feitos pelo utilizador WIII ORG 2007 De acordo com as posi es destes pontos o Wiimote calcula a posi o do cursor na superf cie de projec o Al m desse sensor o Wiimote possui bot es convencionais e pode controlar um cursor Todos estes dados s o transmitidos por Bluetooth CAPITULO 2 Contextualiza o do Problema Aquilo que se espera obter explorar adicionar e demonstrar a funcionalidade do Wiimote nos tr s projectos apresentados 2 1 Dispositivo Multi Apontador em Quadro Branco Padr o Tendo em conta a no o central do trabalho realizado por Johnny Chung Lee a ideia b sica consiste em conseguir transformar um quadro branco padr o em quadro interactivo com o simples emprego do comando Wiimote Dado que este comando tem as caracter sticas apresentadas no ponto anterior unicamente teremos que construir canetas de infravermelhos instalar o software disponibilizado e teremos um quadro interactivo em qualquer superf cie de projec o Inclui se mesmo o monitor do pr prio computador como sendo um pseudo tablet pc ou at mesmo sobre a superf cie de uma mesa para explicar que com esta tecnologia podemos ter at quatro pontos na mesma superf cie e isto tudo conseguido a muito baixo custo aproximadamente 60 2 2 Defini
36. lhante do filme Minority Report neste caso o Wiimote pode monitorizar at quatro pontos em simult neo 2 6 Defini o dos Recursos e Ferramentas Utilizadas 2 6 1 Software Necess rio e Wiimote Multipoint Grid O Programa em Visual C criado por Jonhnny Chung Lee que se encarrega de interpretar os dados enviados pelo Wiimote ao computador e BlueSoleil 1 6 2 1 e 5 0 e Microsoft Net Framework 2 0 e DirectX SDK 2 6 2 Hardware Necess rio e Computador com Windows Xp ou Windows Vista e Projector multim dia e Comando Wiimote e USB Bluetooth e LED emissor IR O LED infravermelho Figura 10 o principal comunicador entre o Wiimote e o computador Existem v rios modelos que emitem luz com um ngulo maior que outros com mais pot ncia e com longitudes de onda distintas neste caso foi necess rio escolher o mais adequado os LEDs usados na experi ncia efectuada foram SFH 4231 Anexo 7 2 CAPITULO 2 Contextualiza o do Problema Figura 10 LED Emissor Infravermelho SFH 4231 OSRAM e Matriz de LEDs V rios LEDs em s rie Figura 11 totalizando uma tens o de 12 V Figura 11 Matriz de LEDs e Transformador O alimentador Figura 12 da Matriz de LEDs usa uma tens o de 12 Volts Figura 12 Alimentador da Matriz de LEDs e Fita reflectora O rg o reflector usado foi papel de alum nio CAPITULO 3 Projecto e Desenvolvimento Cap tulo 3 3 Projecto e Desenvolvim
37. nicam com o Wiimote Existe uma lista contendo os que s o compat veis em http www wiili org index php Compatible Bluetooth devices 3 2 3 O Programa BlueSoleil Regra geral necess rio instalar o programa BlueSoleil antes do adaptador Bluetooth se o Windows tentar instalar novos controladores deve se cancelar esse processo para n o interferir com o BlueSoleil Para iniciar o programa fazemos duplo clique no cone que aparece na barra de tarefas ao lado do rel gio do Windows e aparece a janela principal do BlueSoleil Figura 13 I T Corporation BlueSoleil Janela principal lJ xj Ficheiro Ver Omeu Bluetooth Os meus servicos Ferramentas Ajuda DAS E oO PAN IP 192 168 50 1 4 QUIM 00 11 B1 08 4F 43 la procurar dispositivos Figura 13 Aspecto Geral da Aplica o BlueSleil 11 CAPITULO 3 Projecto e Desenvolvimento 1 Dando um clique sobre o ponto central laranja o programa detecta todos os dispositivos Bluetooth ao seu alcance 2 Um pouco antes ou depois pressiona se as teclas 1 e 2 do Wiimote isto serve para activar a liga o Bluetooth nesse instante os LEDs azuis piscam dura o da liga o 3 Em seguida aparece um cone com o nome Nintendo RVL CNT 01 d se um clique no bot o superior direito e selecciona se a op o Actualizar Servi os 4 Depois de alguns segundos damos um clique no bot o da barra superior no cone do rato e em seguida aparece uma linha traceja
38. oth Os meus servi os Ferramentas Ajuda Introduza um dispositivo Bluetooth jIP da PAN 0 0 0 0 4 QUIM 00 00 00 00 00 00 Figura 15 Aplica o BlueSoleil Quando da Incompatibilidade da Aplica o ao Adaptador Se verificarmos este ltimo caso existem duas op es 1 Experimentar outro adaptador Bluetooth e verificar na data de aquisi o se compat vel com o BlueSoleil 2 Tentar realizar a comunica o com o software Bluetooth do Windows ou com o programa e os controladores que v m com o adaptador adquirido Antes de continuar necess rio colocar o Wiimote apontado para a superf cie de projec o e ter em conta que a c mara de infravermelhos que este possui tem um ngulo de vis o de 45 graus assim n o devemos coloca lo numa posi o demasiado perto j que podemos correr o risco de este n o abarcar toda essa superf cie de projec o pelo contr rio se o afastamos muito podemos perder o acompanhamento da luz infravermelha 3 2 5 O Ficheiro Wiimote Whiteboard O ficheiro Wiimote Whiteboard a aplica o a executar conforme se pode ver na Figura 16 DT TT ui _mod 1 0 x pt Editar Ver Favoritos Ferramentas Ajuda LA lene y Y J pa gt Procurar i Pastas ETI E Endere o F wimoteWhiteboard2_mod 1 wimotewhitet y E Ir para Norton Antivirus Yo 4 bin Tarefas de pastas e ficheiros source e calibration dat E READ ME FIRST txt ml Mudar o nome ao
39. permite a cria o utiliza o independente de software o programa n o possui uma rela o de interdepend ncia de qualquer software separando assim a utiliza o de software pr prio utiliza o de software livre podendo o utilizador criar os seus recursos noutro qualquer software livre 4 1 3 Aplica o Pr tica em Ambiente de Sala de Aula Como professor de Tecnologias de Informa o e Comunica o na Escola Secund ria Em dio Garcia o Wiimote Whiteboard foi usado para explicar conceitos de seguran a na Internet criar apresenta es em PowerPoint e utiliza o de dois programas de f sica o Phun E o Microsoft Physics Illustrator Assim como na realiza o de exerc cios interactivos produzidos em Hot Potatoes Neste segundo caso os alunos tiveram a oportunidade de interagir com os conceitos anteriormente adquiridos em tempo real j que eles se encontram dispon veis na plataforma de ensino virtual da escola Ao usar o Wiimote Whitheboard temos de dar sentido letra i de interactivo porque n o um simples quadro convencional o que queremos dizer que existiram alguns contratempos iniciais na sua utiliza o mas que foram ultrapassados com uma utiliza o mais intensa Um dos resultados verificados que os alunos aprendem melhor experimentando Houve tamb m oportunidade de divulgar estes projectos a um grupo de alunos e professores de Cabo Verde que visitaram a Escola Secund ria Em dio Garcia 29 CAPITU
40. private void cbRightButton_CheckedChanged object sender EventArgs e if cbRightButton Checked timer2 Enabled true else timer2 Enabled false 3 9 Nova Vers o para o WiimoteWhiteboard Utilizando Nova Caneta com Processador Digital Depois de testar e analisar os resultados obtidos com a aplica o inicial e a modifica o introduzida no c digo Anexo 7 6 surgiu a ideia de alterar o modo de funcionamento da caneta electr nica de forma a tornar a sua utiliza o mais r pida e funcional Assim foi desenvolvida uma vers o para a nova caneta novamente utilizando a linguagem de programa o CH a nova caneta Figura 18 possui tr s bot es um bot o o clique normal outro o clique direito e o outro um bot o que pode ser programado com uma tecla como por exemplo a tecla Back Space do teclado Esta caneta baseada num chip 16f628A Anexo 7 5 o chip excita o LED atrav s da cria o de um c digo padr o Ap ndice B estes c digos s o enviados para o Wiimote a 100Hz os c digos t m um campo de pre mbulo um campo de ac o um campo de c digo e um bit de paragem No layout da aplica o o filtro pode ser desligado ou ligado 21 CAPITULO 3 Projecto e Desenvolvimento Right Click Click Figura 18 Caneta Digital com Identifica o da Fun o dos Bot es 3 9 1 Novo Layout De seguida apresenta se o aspecto do novo layout Figura 19 da nova vers o do Wiimote Whiteboard con
41. r essas mesmas aplica es e melhor las para outras de car cter til bem como ensaiar e optimizar o processo de utiliza o Espera se por outro lado que seja um ve culo para poss veis alternativas de baixo custo na aquisi o de equipamentos 1 4 Estrutura do Relat rio Este trabalho encontra se estruturado em cinco cap tulos dos quais o primeiro composto por esta introdu o ao trabalho No segundo cap tulo s o apresentadas as caracter sticas do Wiimote e o conceito das tr s aplica es estudadas assim como o material necess rio realiza o das mesmas O terceiro cap tulo apresentado uma an lise das aplica es a implementa o da solu o proposta no cap tulo anterior e as experi ncias efectuadas bem como os resultados obtidos O quarto cap tulo apresenta a an lise aos resultados s modifica es realizadas nas respectivas aplica es O ltimo cap tulo cont m as conclus es gerais deste trabalho analisa os seus principais resultados e apresenta algumas perspectivas de desenvolvimentos futuros CAPITULO 2 Contextualizag o do Problema Cap tulo 2 2 Contextualiza o do Problema Os controladores sem fios vendidos pela Nintendo doravante referidos como comando Wiimote possuem caracter sticas impar para a realizag o destes projectos uma vez que possuem uma c mara de infravermelhos IR que podem monitorar at quatro pontos de luz em simult neo com uma resolu o de 1024x768 pixels
42. rvalo de amostras posicionais Depois de tirar a m dia do intervalo o programa tem a posi o m dia em que o utilizador est apontando a caneta essa posi o decomposta em dois eixos X e Y que s o utilizados para controlar a c mara do Wiimote Desta forma a c mara controlada pelo movimento do ponteiro do rato de forma suave Resolvida esta quest o temos como resultado um tra o muito mais liso e sem irregularidades O problema do PowerPoint foi resolvido colocando na classe do CursorControl a propriedade time do objecto mi com um tempo de 500ms Desta forma conseguimos colocar em modo de apresenta o de diapositivos um ficheiro no PowerPoint Com a nova vers o o manuseamento das aplica es torna se mais r pido flex vel e c modo pois temos cada bot o para sua fun o e evita se ter a caneta imobilizada para que o clique direito seja disparado assim como a introdu o do bot o programado pode ser til na elimina o de caracteres a partir da imagem projectada Nas duas outras aplica es disponibilizadas por Jonhnny Chung Lee Controlo de cursor atrav s dos movimentos dos dedos Tipo Minority Report e Seguidor de posi o para ambientes imersivos 2D com analogia de percep o em 3D verificaram se inicialmente os problemas descritos que foram resolvidos de modo a poder ter a perfeita percep o de que o Wiimote consegue monitorar at quatro pontos em simult neo que consegue localizar objectos com os dedos em planos a
43. s elementos que formam o ficheiro XML definido para configurar o m dulo WiimoteWhiteboard e as aplica es que o utilizam As sec es seguintes s o divididas por uma adi o de uma key para suavizar o tra o com um n mero de pontos definidos 19 para c lculo da m dia Uma chave para lan ar o bot o direito indica que necess rio esperar esse tempo um segundo para lan ar o bot o direito vers o n o micro programada Uma chave para indicar a sensibilidade ao movimento da caneta vers o n o micro programada Na nova vers o do WiimoteWhiteboard s o mostrados os elementos que formam o ficheiro XML definido para configurar o m dulo As sec es seguintes s o divididas por uma adi o de uma key para suavizar o tra o com um n mero de pontos definidos 19 para c lculo da m dia Uma chave para carregar o c digo de tecla do clique 3 A 1 Aspecto Geral Vers o Inicial lt xml version 1 0 encoding utf 8 gt lt configuration gt lt appSettings gt lt add key smooth value 19 gt lt the filter smooth index gt lt add key right_key_time value 1000 gt lt wait this time to launch the right click gt lt add key move_threshold value 100 gt lt Sensitivity to the movement gt lt appSettings gt lt configuration gt A 2 Aspecto Geral da Nova Versao lt xml version 1 0 encoding utf 8 gt configuration gt lt appSettings gt lt add key smooth v
44. seeseseeseseeeese neke kec ve He H HEHE HHHH HHHH HK R 5 Figura 5 Bot o de Pressa0 56 5 544ixy425553riber y s e hen a en ek eko 9 es s a ew a k corn A ked erine war es donas atoa o G Ge k er b v en 5 Figura 6 Resist ncia para Prevenir que Acima de 1 5 Volts o LED n o se Danifique 6 Figura 7 Cabo Multifilar para Efectuar LigagGes scsscssssssesscssssscsscsscsssssssssnesecssescesscssescesenessssneseeses 6 Figura 8 Esquema para Construir uma Caneta Digital ocoonoommmmmmmsmsmsmss 6 Figura 9 Liga o das Componentes na Constru o de uma Caneta seresereereseeeeseseeeeeeseeeee 6 Figura 10 LED Emissor Infravermelho SFH 4231 OSRAM cccsccssscssssscssscscccssescssscssssesssesssesssseeseees 9 Figura TL Matriz d LEDSss scsssssesscseseccsesssadscsacccsiesssasssisesesstedecsocassaiessdivessosecassssdessabsngeicceseecsenivadensesesssadedsessases 9 Figura 12 Alimentador da Matriz de LEDS esrerereeseseseeeeeeeeeneseseenekee keneke rec cH ne He HE HNC a KHK HK K 9 Figura 13 Aspecto Geral da Aplica o BlueSleil esenereeeeeeeeeneseeeeeeeeenenereeeeeeee 11 Figura 14 Aplica o BlueSoleil Compatibilidade com Adaptador Bluetooth 12 Figura 15 Aplica
45. shold 100 public int ind 0 public int medx 0 public int medy 0 public int first_x 0 public int first_y 0 public bool filter_flag true Parametros definidos e lidos a partir do ficheiro app config em xml para configurac o das novas funcionalidades da aplicac o apendice A timerl Interval Convert Tolnt32 System Configuration ConfigurationManager Apps ettings Get right_key_time number of positions Convert ToInt32 System Configuration ConfigurationManager AppS ettings Get smooth move threshold Convert ToInt32 System Configuration ConfigurationManager AppS ettings Get move threshold define the vectors to store positions vxx new int number of positions vyy new int number of positions Preenchimento das posi es do valor inicial do filtro if filter flag fill the whole buffer with the first position 18 CAPITULO 3 Projecto e Desenvolvimento for int ix 0 ix lt number of positions ix vxx ix first x vyy ix first y Valor atribuido para accionamento do icone de modo de apresentac o do PowerPoint buffer 1 type INPUT_MOUSE buffer 1 mi dx 0 buffer 1 mi dy 0 buffer 1 mi mouseData 0 buffer 1 mi dwFlags MOUSEEVENTF_LEFTDOWN buffer 1 mi time 500 500 to work fine with some buttons in the PowerPoint buffer 1 mi dwExtraInfo IntPtr 0
46. so de utiliza o estas duas aplica es apenas foram testadas de acordo com os princ pios que foram descritos nos pontos anteriores relativamente a cada uma delas No entanto verificaram se alguns erros no lan amento das duas aplica es que foram resolvidos desactivando a op o desactivar temas visuais nas propriedades de cada uma delas no separador compatibilidade De referir que na aplica o WiiDesktopVr verifica se com clareza a no o de profundidade e espa o Pois como exemplo pr tico quando nos aproximamos de uma janela temos uma perspectiva maior do espa o envolvente e quando nos afastamos temos uma perspectiva menor desse mesmo espa o desta forma muito simples que se consegue explicar aquilo que se v quando usamos esta aplica o Na aplica o Wiimote Multipoint Grid houve dificuldade em adquirir a fita reflectora de modo a provar com maior precis o a detec o dos quatro pontos em simult neo na projec o no entanto usando papel de alum nio consegue se esse resultado embora com mais dificuldade usando os pr prios LEDs das aplica es anteriores consegue se mostrar esses pontos em simult neo assim como diminuir aumentar e rodar a grelha apresentada na imagem de projec o 27 CAPITULO 4 An lise de Resultados 4 An lise de Resultados 4 1 1 An lise de Desempenho e Resultados do Sistema O WiimoteWhiteboard resulta Dos testes efectuados no primeiro contacto com o programa WiimotWhiteboar
47. superf cie 2 O Wiimote deve estar fixo e a abranger toda a superf cie de projec o 3 Usar uma caneta digital com luz infravermelha para interagir com a imagem projectada 4 O Wiimote tem uma c mara infravermelha e capta a luz infravermelha da caneta 5 O Wiimote envia aquilo que vai captando por Bluetooth para o Computador 6 O software de Johnny Chung Lee recolhe e interpreta os dados e actua movendo o cursor do computador ao pressionar o bot o 10 CAPITULO 3 Projecto e Desenvolvimento 3 2 A Aplica o Wiimote Whiteboard 3 2 1 Como Iniciar a Aplicac o necess rio estabelecer entre o computador e o Wiimote a comunicac o mediante Bluetooth usando a aplica o BlueSoleil ou outra compat vel Executar a aplica o Wiimote Whiteboard de Johnny Chung Lee utilizar uma caneta digital previamente constru da O conselho que se d para ir trabalhando por fases primeiro importante estabelecer a comunica o Wiimote computador At n o se conseguir estabelecer a comunica o n o poss vel experimentar a aplica o Wiimote Whiteboard 3 2 2 Comunica o Wiimote Computador Atrav s de Bluetooth Para estabelecer a liga o do computador com o Wiimote necess rio o adaptador Bluetooth o software de gest o da comunica o neste caso foi usado o BlueSoleil e iniciar a comunica o com o computador Deve se ter em aten o que nem todos os adaptadores Bluetooth funcionam correctamente quando comu
48. toda a sua funcionalidade mas tamb m detectamos algumas lacunas foi essas que tentamos resolver e conseguimos resultados animadores Da actualiza o da aplica o resultou o incremento do bot o direito do rato disparado depois de mantermos a caneta imobilizada ao fim de um segundo Melhorou se a qualidade do tra o principalmente quando se utilizam programas de desenho assim como as anomalias verificadas no PowerPoint Foi construida uma nova caneta digital de forma a termos a possibilidade de utiliza o dos bot es de forma independente para uma melhor ergonomia esta caneta tem a particularidade de apresentar um bot o que pode ser programado com uma tecla como por exemplo a tecla Back space Este sistema dever ser visto como possivel alternativa aos quadros interactivos profissionais pois para al m de apresentarem uma redu o muito significativa no pre o final em qualidade geral a sua de resolu o bastante satisfat ria Este sistema pode ser encarado tamb m como uma possibilidade de quadro intectativo port til Desta forma os objectivos propostos foram cumpridos Remete nos lembrar que o projecto n o acaba aqui pois apenas demos o primeiro passo para algo que poder ser grande Espera se que os estudos que foram efectuados na rea da interactividade contribuam de alguma forma para a cria o de sistemas de muito baixo custo 31 Ap ndices Ap ndice A A Detalhes do Ficheiro Xml Este ap ndice mostra o
Download Pdf Manuals
Related Search
Related Contents
manual de instrucciones CONDUCTIVIMETRO PORTATIL HI 8733 OPERATING INSTRUCTIONS H FRAME PRESSES MANUAL DE INSTRUCCIONES Nettoyant anticalcaire éclair The jOOQ™ User Manual entreprise sicilienne pour la fabrication d`automatismes A todos os estrangeiros residentes no Japão Smeg ALFA135BV Instruction Manual DVP506 User Manual draft 6-11-09 Copyright © All rights reserved.
Failed to retrieve file