Bee-Bot e LEGO WeDo
No artigo de KABÁTOVÁ et al. (2012), eles descrevem suas experiências com crian- ças deficientes visuais, na Eslováquia. Para o experimento foram utilizados dois artefatos robóticos que estão ilustrados na Figura 3.4. A autora refere-se a esses artefatos como brinquedos robóticos. O primeiro foi o Bee-Bot e o segundo o kit robótico programável LEGO WeDo. O experimento foi realizado com cinco grupos de crianças que variam de dez anos a quinze anos de idade. Cada grupo foi dividido em três subgrupos: crianças totalmente cegas - que não têm nenhuma visão útil e tem que aprender usando Braille, leitores de tela ou outros meios não visuais, crianças com baixa visão - que têm uma desordem visual alta e tem que usar uma ajuda especial para aprender e crianças sem deficiência.
A utilização do Bee-Bot foi bem sucedida uma vez que não se fez necessário a sua montagem por ser um brinquedo pronto. Outra vantagem é na sua programação. Há sete botões com códigos de cores e símbolos com formas diferentes e em alto relevo. Para os deficientes visuais isso é um grande ponto a favor uma vez que não há um visor no brinquedo e ele pode ser facilmente aprendido qual botão acionada determinada função. Foram desenvolvidas algumas atividades como labirinto, no qual o objetivo era direcionar o robô do ponto de partida para o ponto de chegada. Segundo a autora, embora tenha sido uma experiência bem sucedida, na maioria das vezes a tarefa teve de ser alterada. Foi observado que o espaço destinado à atividade era muito grande para maior parte das crianças com deficiência visual.
Já com a utilização do LEGO WeDo que é um kit de robótica mais simples do que o LEGO Mindstorms não se obteve o êxito esperado. As razões foram: A maioria das cri- anças não estava acostumada a encaixar as peças do LEGO o que gerou um tempo maior para montagem do robô, as crianças com distúrbios da visão não tinham a capacidade de identificar as peças através do esquema de cores e outra dificuldade relatada foi que a maioria das peças LEGO são muito pequenas e crianças com baixa visão precisam de um tempo para encontrar entre as peças quais eram as peças corretas. Devido à falta de
3.2. ENSINO PARA DEFICIENTES VISUAIS 21
tempo não foi possível programar o robô.
Figura 3.4: Brinquedo robótico Bee-Bot e o kit LEGO WeDo.
P-CUBE
O trabalho de KAKEHASHI et al. (2013) é o mais relevante para o nosso trabalho, pois eles propõem uma ferramenta educacional com o propósito de ensinar programação de robôs para discentes com deficiência visual. A ferramenta P-CUBE consiste em um robô móvel, um tapete de programação, blocos de programação e um computador, como ilustrado na Figura 3.5
Figura 3.5: Ferramenta P-Cubes.
São onze blocos de programação classificados em duas categorias: Blocos de locomo- ção e blocos de controle. Cada bloco contém em sua superfície as ações que o robô pode executar em alto relevo e uma etiqueta RFID para identifica-lo. O tapete de programação é uma caixa de madeira que tem trinta furos divididos em três colunas e dez linhas e onde são encaixados os blocos de programação. Em cada furo há um leitor de RFID, eles são responsáveis pela leitura das informações que estão no bloco de programação. O robô móvel, é composto de uma placa de micro controlador Arduino UNO com um receptor de microSD, que é por onde ele recebe as informações RFID e as baterias.
Os autores explicam, que para programar com o sistema P-CUBE, o discente deve dispor os blocos em sequência na coluna um do tapete de programação.
As limitações encontradas neste trabalho são: A transferência do programa para o robô é feita através de cabos o que não se torna acessível ao deficiente visual. Além disso, o sistema P-CUBE não pode realimentar a informação do movimento do robô móvel, sem depender da informação visual. Apesar dos autores ressaltarem que é um sistema de baixo custo não é mencionado o valor para adquirir o sistema P-CUBE. Outra des- vantagem encontrada é a limitação de ações que o discente tem como possibilidade, é obrigatório utilizarem até trinta instruções, uma vez que o tapete de programação só tem essa quantidade disponível.
Os demais trabalhos pesquisados não têm como público alvo discentes com defici- ência visual, porém resolvemos menciona-los por conter características relevantes para o escopo do trabalho, que são as linguagens tangíveis.
Tern
Foram encontrados vários trabalhos sobre o ensino de programação de dispositivos robóticos utilizando a linguagem de programação Tern (BERS e HORN, 2010; ?; ?; ?). Tern é tangível, projetada para iniciar crianças no contexto da programação de compu- tadores. A criação de programas em Tern é feita por meio do uso de blocos de madeira que representam ações que o robô irá executar. Para transferir o programa para o robô, utiliza-se uma webcam conectada a um computador que captura a imagem dos blocos representando o programa. Esta imagem é convertida em um código digital, usando téc- nicas de visão computacional. A Figura 3.6 mostra os blocos de madeira utilizados na programação.
Figura 3.6: Blocos de madeira da linguagem Tern.
Uma das limitações dessa proposta é o formato dos blocos que representam as ações dos robôs, que são todos iguais. A discriminação é visual, no desenho que define as diferentes instruções que o robô deve executar. Isso torna inviável a discriminação dos comandos a ser programado para o discente com limitações em sua visão, ou seja, não tem como distinguir as diferentes ações do robô. Outra limitação é o fato da necessidade de uma infraestrutura específica, apresentada na Figura 3.7, para que seja possível o seu funcionamento.
CHERP
Pesquisadores da Universidade de Tuft propõem utilizar uma interface híbrida cha- mada de CHERP - um ambiente híbrido criativo, para a programação de robôs (DEVTECH, 2014). Nesse ambiente, é possível criar programas físicos também utilizando blocos de
3.2. ENSINO PARA DEFICIENTES VISUAIS 23
Figura 3.7: Infraestrutura para programação com a linguagem Tern.
madeira, ou programas na tela com os mesmos ícones que representam as ações que o robô irá executar. O CHERP também utiliza técnicas de processamento de imagens para converter imagens dos programas físicos em instruções da linguagem de programação específica do robô. Cada bloco de madeira tem na sua superfície um símbolo circular chamado de TopCode que determina uma instrução. Esses códigos gerados (programas) podem ser enviados para robôs, inicialmente era usado o kit da linha LEGO RCX.
Ao longo do tempo, esse grupo de pesquisa desenvolveu o seu próprio kit de robótica chamado KIBO, projetado especificamente para crianças com idade entre 4 e 7 anos ( Fi- gura 3.8 ). Para programar o KIBO, a criança cria uma sequência de instruções, utilizando os blocos de madeira fornecidos no kit. Cada bloco de madeira tem em sua superfície uma cor e símbolo que representa a ação que o robô irá executar. Para executar o programa, é necessário escanear os blocos com o próprio robô KIBO. Cada bloco de madeira possui um código de barras que os identifica. Para iniciar a execução dos comandos é necessário pressionar um botão específico no robô.
Figura 3.8: Kit de robótica KIBO.
As suas limitações principais são a forma quadrada dos blocos para os comandos sem nenhuma textura que os discrimine e o modo de transmissão do programa para o robô. É necessário que a criança aponte o robô para o código de barras de cada bloco de madeira. Para os alunos com limitações na visão esse processo se torna complexo sem o auxílio de um professor.
Quetzal
HORN e JACOB (2007) propõem a linguagem de programação Quetzal, com inter- face tangível. Os autores enfatizam o baixo custo das peças e a facilidade no processo
de compilação e transferência do programa para o robô. Não corroboramos com o autor quanto à facilidade na transferência do programa, que ocorre também através de esca- neamento, requerendo uma estrutura própria. Ainda, essa proposta possui características restritas (tamanho, cor, entre outras) que limita o uso por crianças cegas. Outro ponto fraco relevante é que, apesar de tangível, o mesmo não é acessível, pois, existem ações distintas representadas por formas geométricas semelhantes, conforme pode ser visto na Figura 3.9, que ilustra os elementos da linguagem Quetzal.
Figura 3.9: Elementos da linguagem Quetzal.
Primo
PRIMO (2014) é um brinquedo que tem uma interface de programação tangível proje- tada para ensinar lógica de programação para crianças de 3 a 7 anos que ainda não foram alfabetizadas, permitindo-lhes programar um pequeno robô de madeira a partir da utili- zação de blocos coloridos. É composto por três partes, mostradas na Figura 3.10: uma interface que é utilizada para programar e enviar o código para o robô; um robô que as cri- anças programam; e blocos de madeira coloridos e de formatos distintos que as crianças utilizam para escrever os programas. Uma restrição notada nessa plataforma é a limita- ção do número de comandos que o discente pode usar em um programa, no máximo 12 instruções (número de blocos que a interface de programação possui). Para se trabalhar com um desafio um pouco mais complexo, esse número de ações não são suficientes.
3.2. ENSINO PARA DEFICIENTES VISUAIS 25
Análise dos trabalhos
Considerando os trabalhos apresentados acima, realizamos uma avaliação das suas in- terfaces com o objetivo geral de validar a eficácia e a eficiência da usabilidade de cada ferramenta. Os pontos analisados foram: acessibilidade, tangibilidade, custo, interativi- dade, versatilidade, colaboração, autonomia e hardware. Esses pontos foram escolhidos baseados nos principais conceitos de usabilidade e avaliação presentes na área de estudos interface homem-máquina. A Tabela 3.1 resume os pontos positivos das plataformas, com o custo (em dólar) associado a cada ferramenta quando disponível. Como pode ser ob- servado, a ferramenta proposta no presente trabalho (CardBot) contempla todos os pontos analisados.
Tabela 3.1: Avaliação das Interfaces
P-CUBE TERN KIBO PRIMO QUETZAL CARDBOT
Acessibilidade ∗ ∗ ∗ Interatividade ∗ ∗ ∗ ∗ Tangibilidade ∗ ∗ ∗ ∗ ∗ ∗ Colaboração ∗ ∗ ∗ ∗ ∗ ∗ Autonomia ∗ ∗ Versatilidade ∗
Hardware Arduino Próprio Próprio Próprio RCX Qualquer
Capítulo 4
CardBot
No capitulo anterior, identificamos alguns problemas nas soluções existentes. Pro- blemas esses com: a ausência de interfaces acessíveis dos kits de robótica comerciais, a forma de programação dos robôs e os seus altos custos.
No presente capítulo, apresentamos o CardBot 2.0, uma tecnologia assistiva para robó- tica educacional de baixo custo que permite estudantes programarem utilizando elementos tangíveis.
O CardBot 2.0 é uma ferramenta assistiva com propósito educacional, que permite ao professor criar linguagens de programação diversas, personalizadas para programar robôs móveis.
O professor pode definir o alfabeto da linguagem no ambiente de programação. Esse alfabeto é representado por marcações que serão interpretadas pelo hardware do robô. Ressaltamos que esta ferramenta complementa a metodologia de robótica educacional desenvolvida pelo grupo de pesquisa do laboratório NatalNet (DA SILVA, 2009) da Uni- versidade Federal do Rio Grande do Norte.
A programação dos robôs foi realizada usando cartões com formatos distintos, cada cartão representando comandos a serem interpretados. Optamos por utilizar formas ge- ométricas para que o discente deficiente visual conseguisse distinguir as ações do robô através do tato (programação tangível). Vários materiais podem ser utilizados na confe- ção dos cartões, como por exemplo: papel, papelão, EVA, plástico, etc. A escolha do material fica a critério do professor e da disponibilidade dos materiais na escola. A pro- gramação tangível com cartões possibilita a exploração de suas propriedades físicas, tais como o tamanho, a forma e a textura. Tais propriedades facilitam ao discente expressar-se e conseguir programar cumprindo os desafios propostos.
O professor associa marcações (usamos QR Codes) às formas geométricas para fa- cilitar o reconhecimento dessa linguagem tangível pelo sistema. Marcamos os cartões através de impressões em papel. Escolhemos as formas geométricas para representar a linguagem de programação pois, conforme os Parâmetros Curriculares Nacionais, os con- ceitos geométricos constituem parte importante do currículo da disciplina de Matemática, por desenvolver no aluno um pensamento que lhe permite compreender, descrever e re- presentar, de forma organizada, o mundo em que vive (LIRA e BRANDÃO, 2010). A representação geométrica é uma forma simples e distinta de representar as ações do robô. Além disso, esse recurso estimula a parte sensorial tátil do discente.
centes deficientes e os ditos normais, através dos programas criados e visíveis a todos. Com isso, é possível estimular e envolver discussões de ideias para depuração e, literal- mente, compartilhar o código, estimulando o trabalho colaborativo, que é um dos princí- pios inerentes à robótica educacional.
O CardBot 2.0 utiliza um aplicativo de celular para a leitura dos cartões. A interface do aplicativo foi projetada com foco em seu público alvo, levando em consideração os aspectos da acessibilidade.
O aplicativo de celular foi umas das escolhas tecnológicas visando minimizar os cus- tos para implantação da robótica educacional nas escolas. De acordo com dados da 26a Pesquisa Anual sobre o uso de tecnologia da informação (TI), realizada pela Fundação Getúlio Vargas (FGV, 2014), existem mais de 320 milhões de aparelhos celulares no Bra- sil, o que representa 158% da base de habitantes do nosso país. Ou seja, existe mais de um celular para cada habitante.
Sendo assim, podemos inferir que o celular é um aparelho extremamente comum. Atualmente, dado o número de aparelhos na sociedade, é raro que uma pessoa não tenha celular. Assim a utilização de um aparelho desses como ferramenta de ensino não é um custo a mais para implantação das oficinas de robótica, uma vez que o docente pode utilizar o seu próprio aparelho como ferramenta de ensino.
4.1
Arquitetura do Sistema
A arquitetura do sistema é composta pelos módulos: dispositivo de reconhecimento de linguagem e pelo robô (Figura 4.1).
Figura 4.1: Arquitetura do sistema.
No módulo dispositivo de reconhecimento de linguagem temos os módulos de captura, de processamento e de comunicação. O fluxograma desse módulo consiste nas seguintes ações:
1. O processamento ativa a captura da marcação.