quarta-feira, 29 de maio de 2013

Programas feitos em Scratch

 Programas feitos em sala para a materia Laboratório de Programação Visual da Puc Minas

Remix do jogo Pong

 Jogo Educativo sobre Trânsito

Minibloq

Minibloq: uma possibilidade de uso para o Arduino na Robótica Educacional







“Minibloq é um ambiente de programação gráfica voltado ao Arduino. Um
dos seus objetivos é tornar mais fácil a programação desta plataforma
para crianças ou mesmo iniciantes, podendo ser usado em escolas
primárias ou secundárias. Afinal convenhamos: desenvolver em C foge um
pouco do escopo das escolas básicas e diminui sua aplicação efetiva em
projetos voltados à robótica pedagógica. Uma versão nativa para o
Linux está prestes à sair do forno, segundo o desenvolvedor, Julián da
Silva Gillig, mas este roda sem problemas usando o Wine. A tradução da
interface para o português foi completada.”

referência: http://blog.minibloq.org
Um dos projetos do Ian Teles, uma calculadora que multiplica de 0x0 até 9x9 tendo entrada e saída de números em binário.

Arduino

Arduino, palavra por vezes traduzida ao português como Arduíno é uma plataforma de prototipagem eletrônica de hardware livre, projetada com um microcontrolador Atmel AVR de placa única, com suporte de entrada/saída embutido, uma linguagem de programação padrão, a qual tem origem em Wiring, e é essencialmente C/C++. O objetivo do projeto é criar ferramentas que são acessíveis, com baixo custo, flexíveis e fáceis de se usar por artistas e amadores. Principalmente para aqueles que não teriam alcance aos controladores mais sofisticados e de ferramentas mais complicadas.
Pode ser usado para o desenvolvimento de objetos interativos independentes, ou ainda para ser conectado a um computador hospedeiro. Uma típica placa Arduino é composta por um controlador, algumas linhas de E/S digital e analógica, além de uma interface serial ou USB, para interligar-se ao hospedeiro, que é usado para programá-la e interagi-la em tempo real. Ela em si não possui qualquer recurso de rede, porém é comum combinar um ou mais Arduinos deste modo, usando extensões apropriadas chamadas de shields. A interface do hospedeiro é simples, podendo ser escrita em várias linguagens. A mais popular é a Processing, mas outras que podem comunicar-se com a conexão serial são:Max/MSP, Pure Data, SuperCollider, ActionScript e Java. Em 2010 foi realizado um documentário sobre a plataforma chamado Arduino: The Documentary.

Hardware 

Arduino conectado a uma protoboard
Sua placa consiste em um microcontrolador Atmel AVR de 8 bits, com componentes complementares para facilitar a programação e incorporação para outros circuitos. Um importante aspecto é a maneira padrão que os conectores são expostos, permitindo o CPU ser interligado a outros módulos expansivos, conhecidos como shields. Os Arduinos originais utilizam a série de chips megaAVR, especialmente os ATmega8ATmega168ATmega328 e a ATmega1280; porém muitos outros processadores foram utilizados por clones deles.
A grande maioria de placas inclui um regulador linear de 5 volts e um oscilador de cristal de 16 MHz (podendo haver variantes com um ressonador cerâmico), embora alguns esquemas como o LilyPad usam até 8 MHz e dispensam um regulador de tensão embutido, por ter uma forma específica de restrições de fator. Além de ser microcontrolador, o componente também é pré-programado com um bootloader que simplifica o carregamento de programas para o chip de memória flash embutido, comparado com outros aparelhos que usualmente necessitam de um chip programador externo.

FTDI acoplado num Arduino NG
Conceitualmente, quando seu software é utilizado, ele monta todas as placas sobre uma programação de conexão serial RS-232, mas a maneira que é implementado no hardware varia em cada versão. Suas placas serial contém um simples circuito inversor para converter entre os sinais dos níveis RS-232 e TTL. Atualmente, existem alguns métodos diferentes para realizar a transmissão dos dados, como por placas programáveis via USB, adicionadas através de um chip adaptador USB-para-Serial como o FTDI FT232. Algumas variantes, como o Arduino Mini e o não oficial Boarduino, usam um módulo, cabo adaptador USB, bluetooth ou outros métodos. Nestes casos, são usados com ferramentas microcontroladoras ao invés do Arduino IDE, utilizando assim a programação padrão AVR ISP.
A maioria dos pinos de E/S dos microcontroladores são para uso de outros circuitos. A versão Diecimila, que substituiu a Duemilanove, por exemplo, disponibiliza 14 pinos digitais, 6 das quais podem produzir sinais MLP, além de 6 entradas analógicas. Estes estão disponíveis em cima da placa, através de conectores fêmeas de 0,1 polegadas (ou 0,25 centímetros).20
O modelo NanoBoarduino e placas compatíveis com estas, fornecem conectores machos na parte de baixo da placa, para serem plugados emprotoboards.

Software

 O Arduino IDE é uma aplicação multiplataforma escrita em Java derivada dos projetos Processing e Wiring. É esquematizado para introduzir a programação a artistas e a pessoas não familiarizadas com o desenvolvimento de software. Inclui um editor de código com recursos de realce de sintaxe,parênteses correspondentes e identação automática, sendo capaz de compilar e carregar programas para a placa com um único clique. Com isso não há a necessidade de editar Makefiles ou rodar programas em ambientes de linha de comando.
Tendo uma biblioteca chamada "Wiring", ele possui a capacidade de programar em C/C++. Isto permite criar com facilidade muitas operações de entrada e saída, tendo que definir apenas duas funções no pedido para fazer um programa funcional.


Scratch

Scratch é uma nova linguagem de programação criada no Media Lab do MIT.
Por não exigir o conhecimento prévio de outras linguagens de programação, ela é ideal para pessoas que estão começando a programar e foi desenvolvida para ajudar pessoas acima de 8 anos no aprendizado de conceitos matemáticos e computacionais. Com ela é possível criar histórias animadas, jogos e outros programas interativos.
Scratch é muito mais acessível que outras linguagens de programação, por se utilizar de uma interface gráfica que permite que programas sejam montados como blocos de montar, lembrando o brinquedo LEGO. Utiliza uma sintaxe comum a muitas linguagens de programação. E diferente de outras linguagens, não tem nenhum tipo de pontuação obscura.
Cada bloco da linguagem contém um comando em separado, que podem ser agrupados livremente caso se encaixem. E os comandos podem ser modificados através de menus.
Scratch se inspirou na forma como os DJs fazem a mixagem de sons para criarem novas músicas. Mas essa linguagem consegue mixar diversos tipos de mídias, como imagens, sons e outros programas.
O ambiente de desenvolvimento pode ser baixado gratuitamente em sua página. Já existem versões para Windows, Mac OS X e Ubuntu. E uma versão está sendo feita para o laptop XO.