• Nenhum resultado encontrado

2.4 Avaliação de Software Educacional

3.1.1 Ambientes Desktop

Um ambiente de desenvolvimento em desktop caracteriza-se por não utilizar a web para qualquer operação necessária, ou seja, funciona em um computador local para to- das as transações. O software é geralmente instalado no computador, de alguma maneira (única situação onde se poderia usar a web), e a partir de então executa todas as suas fun- ções localmente. Nesta Seção, apresentamos alguns dos ambientes de desenvolvimento desktopmais populares voltados para aplicações em robótica educacional, disponíveis co- mercialmente e encontrados na literatura, juntamente com uma breve descrição de suas funcionalidades.

RoboEduc

O software educacional RoboEduc [Pitta 2008] teve sua versão inicial desenvolvida em 2003 por pesquisadores da Universidade Federal do Rio Grande do Norte. É um softwarevoltado para aplicações em robótica educacional, permitindo o controle e a pro- gramação de vários tipos hardwares. O RoboEduc possui versões para programação dos kits Lego RCX, Lego NXT [LEGO 2011] e H-Educ [Sá 2011]. A programação do robô pode ser realizada utilizando um dos cinco níveis de programação (abstração) existentes, podendo ser realizada via programação gráfica ou textual. A Figura 3.1(a) apresenta um dos ambientes deste software.

A linguagem de programação utilizada é denominada R-Educ, escrita em um portu- guês simples, que pode ser utilizada por alunos a partir dos 8 anos [Pitta 2011, Sá 2011]. A linguagem R-Educ possui comandos que permitem a movimentação de motores e a aquisição de dados dos sensores do robô, possui controladores de fluxo e outros coman- dos, responsáveis por imprimir textos ou acender luzes no robô. Os comandos escritos em linguagem R-Educ são compiladas no ambiente e enviados ao robô.

O desenvolvimento do software RoboEduc e suas versões durou cerca de 9 anos e foi abortado. A equipe de desenvolvimento iniciou trabalhos em outras áreas não dando continuidade ao projeto. Atualmente o software possui versão disponível apenas para programação de robôs Lego NXT.

3.1. AMBIENTES PARA ROBÓTICA 25 Software Lego Mindstorms

Os ambientes de desenvolvimento que acompanham os kits da linha Lego Mindstorms foram desenvolvidos especificamente para programação e controle de dispositivos desta marca. Suas versões foram desenvolvidas pela National Instruments [N.I 2013b], basea- das no LabVIEW [N.I. 2013a]. A Figura 3.1(c) apresenta a versão mais recente utilizada para programação de robôs Lego Mindstorms EV3.

Estes ambientes são compostos por uma interface e um bloco de diagramas onde o fluxo de dados é possível através de ligações entre os blocos, é possível também a criação não só de estruturas, mas de comportamentos, permitindo, assim, a criação de modelos interativos, com os quais é possível aprender conceitos fundamentais de ciência e enge- nharia.

Em suas versões mais recentes é possível utilizar todas as funcionalidades disponíveis aos controladores NXT e EV3 [LEGO 2011], além de permitir o envio do programa, gerenciamento de arquivos e pastas, e fornecer auxílio para montagem de alguns modelos de protótipos robóticos.

(a) Software RoboEduc 4.0 (b) Software RobotC - Versão para progra- mação de Lego Ev3

(c) Software Lego Mindstorms (d) Microsoft Robotics Studio

Microsoft Robotics Studio

Teve sua primeira versão lançada em 2006 pela Microsoft e foi concebido para a criação de aplicações na área de robótica. Este ambiente, mostrado na Figura 3.1(d), é baseado no sistema operacional Windows e permite criar programas de robótica incluindo uma grande variedade de plataformas de hardware. Além disso, possui uma linguagem de programação gráfica que oferece aos usuários a possibilidade de programar robôs e de ter seus algoritmos executados tanto em um simulador quanto no hardware em si.

O Microsoft Robotics Studio possibilita o desenvolvimento de aplicações utilizando um conjunto de linguagens de programação, dentre elas: Visual C#, Visual Basic, Micro- soft IronPython e as integradas ao Microsoft Visual Studio. O ambiente é compatível com as aplicações, serviços e robôs de diversas empresas, como: Lego [LEGO 2011], Parallax [Parallax Robotics 2013], RoboDynamics [RoboDynamics 2013], iRobot [IRobot 2013], entre outras.

Este software está disponível gratuitamente, possuindo versão apenas em inglês e não foram encontrados relatos de seu uso em ambientes de aprendizagem em robótica educa- cional.

RobotC

Foi desenvolvido pela Robotics Academy da universidade Carnegie Mellon, em Pitts- burgh nos EUA. O RobotC [RobotC 2013], apresentado na Figura 3.1(b), é um ambiente de desenvolvimento pago atrelado a uma linguagem de programação textual também cha- mada de RobotC que pode ser utilizado para escrever, compilar e enviar programas ao robô. É uma solução para programação de diversos hardwares utilizando uma única lin- guagem baseada em C. Dentro os hardwares que este ambiente oferece suporte estão o Lego Mindstorms NXT, RCX e EV3[LEGO 2011], controladores do kit Vex [Vex 2011] e Arduino [Arduino 2016].

A proposta inicial do RobotC é fornecer suporte para vários hardwares com uma única linguagem, porém não existe uma versão do RobotC que permita a programação de todos os hardwares, pois, para cada hardware, é necessário adquirir uma licença específica. As licenças podem ser de 365 dias ou perpétuas e são divididas em três: individual, time e sala de aula.

Legal

O ambiente de programação Legal [PETe 2010], apresentado na Figura 3.2(a) é des- tinado a programação dos kits fornecidos pela empresa PNCA. Este ambiente permite ao

3.1. AMBIENTES PARA ROBÓTICA 27 usuário projetar, construir e programar robôs e dispositivos mecatrônicos. Todas as ações que o robô deve executar deverão ser definidas no ambiente de programação, utilizando a linguagem de mesmo nome.

O programa, uma vez escrito e compilado, será descarregado no módulo de controle do robô via cabo de dados serial. Ao fim desta etapa, o robô estará pronto para funcionar de forma autônoma e poderá ser desconectado do computador utilizado para programa- ção. A linguagem de programação utilizada é limitada quanto ao número de sensores por possuir uma programação orientada a eventos.

(a) Software Legal (b) Software BricxCC

(c) Arduino IDE

Figura 3.2: Ambientes de Desenvolvimento Desktop Arduino IDE

A interface Arduino IDE [Arduino 2016], cujo ambiente de programação é apresen- tado na Figura 3.2(c), é de código aberto (open-source) e possibilita que seja realizada a

escrita e envio do código à placa Arduino. É um ambiente multiplataforma, escrito em Java que pode ser utilizado para programação de qualquer placa Arduino. Sua interface inclui um editor de código fonte com recursos que auxíliam no processo de escrita como realce de sintaxe, identificação de parênteses correspondentes e auto identação. Através dela é possível compilar e carregar programas para a placa em uso.

Através da Arduino IDE é possível realizar leitura de sensores do protótipo durante o tempo de execução do programa caso este esteja conectado ao computador em uso. Além disso, com a utilização de bibliotecas auxíliares é possível realizar a programação de outras plataformas de hardware.

BricxCC

O software BricxCC [BricxCC 2016] é um centro de comando para robôs de todas as gerações da família LEGO Mindstorms. É um software para Windows, que necessita de instalação e que permite a programação textual desses dispositivos nas linguagens NXC, NBC E NQC, todas elas baseadas em C com bibliotecas específicas para esses robôs. Sua interface de programação é apresentada na Figura 3.2(b).

Documentos relacionados