LOGIKID: SOFTWARE PARA O ENSINO DE LÓGICA E PROGRAMAÇÃO COM O AEDROMO

1 LOGIKID: SOFTWARE PARA O ENSINO DE LÓGICA E PROGRAMAÇÃO...
Author: Daniel de Figueiredo Varejão
0 downloads 3 Views

1 LOGIKID: SOFTWARE PARA O ENSINO DE LÓGICA E PROGRAMAÇÃO COM O AEDROMOCelso de Oliveira Lisboa Orientador: Prof. Dr Renê Pegoraro Co-orientador: Prof. Me. Silas F. R. Alves

2 Introdução Inclusão digital – um desafio para a educaçãoRobótica – caráter inovador e cativante Alves e colaboradores (2011) : [...] faz-se imprescindível a necessidade da familiarização e desmistificação desta tecnologia que oferece suporte para outras áreas do conhecimento. Inclusão digital é a tentativa de garantir a todas as pessoas o acesso às tecnologias de informação e comunicação. A idéia é que todas as pessoas, principalmente as de baixa renda, possam ter acesso a novas tecnologias, novas informações, fazer pesquisas, facilitar a própria vida fazendo uso da tecnologia.

3 Material e Método Levantamento bibliográfico DesenvolvimentoTrabalhos correlatos Tecnologias disponíveis Desenvolvimento Adaptação para o AEDROMO Modelagem do software Desenvolvimento e integração das bibliotecas Validação e documentação Teste com simulador e robô real Redação da monografia A "modelagem do software" diz respeito à criação das máquinas de estado da (a) linguagem utilizada pelo interpretador, (b) da máquina de estados da interface do logikid, (c) do rascunho da interface. Desenvolvimento [do software logikid] e integração das bibliotecas [do interpretador e do AEDROMO].

4 Material e Método AEDROMOAmbiente Experimental e Didático com Robôs Móveis. Permite que um software do aluno seja desenvolvido em qualquer linguagem que suporte sockets. Processing – Ambiente de desenvolvimento e linguagem de programação O AEDROMO - sistema que foi desenvolvido pelo grupo GISDI - é utilizado neste trabalho como uma ferramenta para o uso do software educacional elaborado, o LOGIKID.

5 AEDROMO Os experimentos, neste ambiente, podem ser motivados para fins de pesquisa, aprendizagem ou, entretenimento Na arquitetura do AEDROMO há dois tipos de computadores: o Computador do Servidor, responsável pela implementação do sistema de visão computacional e pela comunicação com os robôs; e o Computador do Aluno, onde o aplicativo de controle (Software do Aluno) é desenvolvido

6 Processing Além de ser uma linguagem de programação, é também um ambiente de desenvolvimento integrado de código aberto que entra na categoria de software livre, capaz de gerar arquivos executáveis para vários sistemas operacionais como Windows, MAC OS, Linux e Android. Tem como base a linguagem JAVA sendo que usa sua mesma sintaxe.

7 Objetivo Desenvolvimento de um software denominado LOGIKID, que como software cliente do AEDROMO, seja utilizado como ferramenta complementar no ensino da lógica para alunos do ensino público. Auxiliar o desenvolvimento nos alunos de um pensamento computacional assim como da lógica na resolução de situações propostas.

8 Fundamentação TeóricaResultados positivos no contexto educacional. Robótica pedagógica (...) pode possibilitar o desenvolvimento das inteligências corporal sinestésica e musical; lógico matemático; linguística; espacial; intrapessoal e interpessoal. O desenvolvimento do Pensamento Computacional seria uma questão primordial para a formação de profissionais e cidadãos com melhores condições de empregarem as tecnologias na transformação do seu próprio cotidiano. Países como os Estados Unidos, Canadá e Israel, possuem o ensino de programação j aplicado também no ensino básico. Existem várias pesquisas com resultados positivos envolvendo o uso de softwares educacionais e da robótica pedagógica para o ensino, diante essa pesquisa, destaca-se os sistemas a seguir:

9 LOGO O LOGO foi desenvolvido no (MIT) por Symor Papert, na década de 60. Uma das características mais importantes do LOGO é a de não possuir objetivo delimitado, ou seja, pode ser utilizada em ampla gama de atividades. A linguagem de programação LOGO foi concebida especialmente para a utilização das crianças a partir dos 5 anos, permitindo desse modo, o contato das mesmas com o computador. Nessa linguagem, uma tartaruga desempenha o papel central visto que é o ser a quem são transmitidos as instruções e os comandos dados. O aprendiz pode manipular a tartaruga de modo que esse processo auxilia na formação de um ambiente de aprendizagem ativa. Em uma pesquisa, os alunos apresentaram, além de uma melhora expressiva em conceitos de informática, houve também uma melhora significativa com relação à motivação e ao interesse desses alunos em sala de aula. Os pesquisadores concluíram que a interação das escolas de ensino Fundamental com a universidade por meio da robótica educacional contribuiu de maneira significativa na consolidação de conceitos relativos à informática, à figuras geométricas e à operações matemáticas, tendo como consequência melhorias no desempenho escolar dos alunos. Não possuir objetivo delimitado, ou seja, pode ser utilizada em ampla gama de atividades .

10 Scratch O SCRATCH é ideal para pessoas que estão começando a programar por não exigir o conhecimento prévio de outras linguagens de programação. Foi desenvolvida para auxiliar pessoas acima de 8 anos no aprendizado de conceitos matemáticos e computacionais. Com essa linguagem é possível criar histórias animadas, jogos e outros programas interativos. O SCRATCH permite que seu usuário programe suas próprias histórias interativas, jogos e animações, além de permitir o compartilhamento de suas criações com outros membros da comunidade online. Disponibiliza ferramentas de programação de informática simplificadas.

11 Lightbot Ao ligar todas as casas marcadas o jogador avança de nível. Para isso o jogador deve criar um “script” utilizando uma quantidade restrita ações, de um conjunto de comandos disponíveis. Pode-se usar uma função “main” e duas funções adicionais (𝑓1 e 𝑓2). Também é possível usar condicionais e recursividade e outros conceitos de programação. O objetivo deste jogo é mover um robô por um tabuleiro e ligar certas casas deste tabuleiro.

12 Lego Mindstorms Estimula a criatividade e a solução de problemas do cotidiano por parte dos alunos . Os kits MINDSTORMS fazem parte de uma linha do brinquedo LEGO®, voltada para a educação tecnológica. Inicialmente, o projeto foi inspirado por Seymour Papert e desenvolvido em uma parceria entre o Media Lab do Massachusetts (MIT) e o Lego Group. São utilizados para o desenvolvimento de projetos de pequeno e médio porte.

13 Legal Foi criada para estimular o raciocínio lógico, respeitando a capacidade cognitiva de usuários em diferentes faixas etárias. O ambiente de desenvolvimento LEGAL foi desenvolvido pela PNCA Robótica e Eletrônica e faz parte de um kit de desenvolvimento conhecido como KIT ALFA, que se trata de um sistema modular para projetos de robôs, dispositivos eletrônicos, mecânicos e computacionais Uma interface e uma linguagem de programação que usa uma sintaxe em Português.

14 Influência na construção do LogikidO Logikid segue a mesma ideia do Logo de comandar um agente através de um programa escrito numa linguagem simples. O emprego dos robôs físicos aproxima o Logikid de soluções como o Lego Mindstorms. Embora o Scratch e o Lightbot não façam parte da versão atual do Logikid, nortearam o desenvolvimento, para que suas características sejam concluídas futuramente.

15 Linguagem do InterpretadorExplicar melhor esse grafo Estados durante uma sessão de programação do Logikid.

16 Mapa mental dos comandos dos botõesNão foi implementado nesta versão Colocar girar e repete como trabalhos futuros.

17 Estrutura Visual Rascunho inicial

18 Logikid: Software

19 Logikid: Software

20 Logikid: Software

21 Logikid: Software

22 Atividades problemas de lógicaA atividade problema 1 visa familiarizar o aluno com a interface do LOGIKID e com os comandos básicos de programação. Nessa atividade, o aluno deverá fazer com que o robô dê uma volta na arena, fazendo o trajeto, como mostrado na Figura. Sinalização da arena e do robô (fora de escala). Atividade problema 1 - Exercitando o básico da lógica.

23 Atividades problemas de lógicaNa atividade problema 2, há uma inclusão de duas bolas que poderão ser de pingue-pongue, tênis, golfe, dentre outras. A ideia desta atividade é fazer com que os alunos elaborem e executem por meio do software os movimentos necessários para que o robô empurre as bolas (independente da ordem) até as faixas de modo com que cada bola fique em uma das faixas. A dificuldade consiste em deixar cada bola em sua respectiva faixa, visto que durante o movimento podem quicar ou rolar para fora do seu destino. Na atividade problema 3, há uma inclusão de obstáculos que poderão ser qualquer tipo de material como tocos de madeira ou caixas vazias. Ressaltando que as cores dos obstáculos não podem interferir na visão do AEDROMO, ou seja, não podem ter a mesma cor dos marcadores do robô. A ideia desses obstáculos é fazer com que os alunos elaborem mentalmente e depois – por meio do software - concretizem movimentos com o robô para se desviar desses materiais, com a posição inicial igual à figura ele deve chegar à bola azul. Esse problema, além de reforçar os conceitos do exercício anterior, permite que o código seja avaliado de acordo com a precisão dos movimentos do robô como, por exemplo, a presença ou ausência de colisão com os obstáculos, assim como a realização parcial ou integral desses movimentos com o robô pelo aluno. O tempo de execução também é uma variável que pode ser analisada. Atividade problema 2 – Deslocamento de bolas Atividade problema 3 – Desviar dos obstáculos.

24 Atividades problemas de lógicaNa atividade problema 4, o robô deve se locomover até a bola, deslocando-a até o local onde a mesma deve ficar (círculo cinza), lembrando que será necessário fazer isso duas vezes visto que existem duas bolas. Nesta atividade é possível perceber que a dificuldade do deslocamento do robô é maior e também que a área a qual ele deve levar a bola é menor em relação à atividade problema 2. Na atividade problema 5 o aluno deve fazer com que o robô movimente cada bloco a uma área de chegada (faixas cinza numeradas) obedecendo determinada ordem e posteriormente se encaminhar para a área azul onde deve ficar. A dificuldade desta atividade consiste em se lidar com três objetos (blocos) que deverão ser colocados em ordem (faixa 1,2 e 3) de modo que cada um deles fique em sua respectiva faixa. Atividade problema 4 Deslocamento de bolas com manobras. Atividade problema 5 – Sequência de passos.

25 Conclusão O LOGIKID apresenta a possibilidade de se programar um robô interativamente através de perguntas e respostas. O LOGIKID permite ao usuário, experimentar ideias de logica de programação sem ter conceitos de linguagem de programação. Acredita-se que o LOGIKID possibilite o desenvolvimento, nos alunos, de um pensamento computacional assim como de lógica na resolução de situações propostas, além competências. O software criado, além de ser baseado em pressupostos de softwares utilizados e avaliados positivamente no contexto de ensino-aprendizagem como LOGO, SCRATCH e LIGHTBOT, conta também com o desenvolvimento de uma linguagem de programação integrada a robôs. As características do LOGIKID foram baseadas numa estrutura existente que é o AEDROMO e a sua interface que gera o código de programação de acordo com a escolha do aluno, mediante uma “conversa” ou jogo de perguntas e respostas, cujo resultado será um programa em uma linguagem específica fazendo o robô agir de acordo com as escolhas do aluno. O software LOGIKID foi desenvolvido com intuito de possibilitar o desenvolvimento, nos alunos, de um pensamento computacional assim como da lógica na resolução de situações propostas, além competências. O aluno irá desenvolver esse raciocínio por meio de quatro operações básicas de movimento como frente, atrás, esquerda e direita. Destaca-se que o software desenvolvido pode ser aplicado em instituições de ensino ou mesmo para uso particular não exigindo custos elevados.

26 Trabalhos futuros Permitir a edição direta ou correção dos comandos gerados pela interface. Desenvolver uma descrição formal da tarefa que permita um acompanhamento desta pelo sistema LOGIKID autonomamente. Hoje o sistema LOGIKID não verifica se a tarefa foi cumprida corretamente, o que é tarefa do professor. Inserir novos comandos de interação dos robôs com o ambiente, hoje o sistema é puramente deliberativo.

27 Vídeo de demonstração

28 Simulador na fase de testes