quarta-feira, 14 de dezembro de 2016

O LED RGB e as saídas PWM do arduino - estudo orientado

À medida que o número de alunos do clube aumenta, a necessidade de ter material preparado para que possam trabalhar de forma autónoma aumenta também, dado que vou tendo grupos a trabalhar em projetos distintos e em níveis de aprendizagem diferentes.

Baseando-me na aula que tinha preparado para introduzir os LED RGB e as saídas PWM do arduino, criei um estudo orientado para que a exploração do RGB e das saídas PWM pudesse ser feita de forma autónoma. Claro que a supervisão é importante e que por vezes os alunos precisam de determinados esclarecimentos, mas com este método de trabalho deixo de ser necessária para explicar e desenvolver o trabalho passo-a-passo, o que me liberta para apoiar outros grupos com tarefas disitintas.

O estudo que deixo, foi aplicado numa aula de 90 minutos, que se revelou suficiente em termos de tempo. As soluções (que estão na última página do documento) não foram reveladas aos alunos, tendo todos os exercícios sido cumpridos com sucesso.

Deixo o estudo orientado que preparei...




...e um pequeno vídeo com o desafio proposto a funcionar:


sexta-feira, 25 de novembro de 2016

Reforçando aprendizagens na programação de arduino com S4A (entradas e saídas digitais)

Com um novo ano letivo a começar, temos novo grupo de alunos a aprender a programar arduinos. Começámos, como em anos anteriores, com a programação de arduinos usando o S4A. 

Como sempre, o ritmo de aprendizagem não é igual para todos os alunos, não só porque há alunos que se adaptam com mais facilidade ao tipo de trabalho, mas também porque há alunos que são de facto mais exigentes com a sua aprendizagem e que preferem não avançar enquanto não sentem os seus conhecimentos consolidados.

Por isso, de forma a ter vários grupos de trabalho em níveis diferentes, tenho necessidade de criar fichas com exercícios que os alunos possam desenvolver de forma mais ou menos autónoma.

Deixo aqui uma primeira ficha de trabalho com exercícios que envolvem entradas e saídas digitais...



...e um pequeno vídeo com os três exercícios propostos em funcionamento:


quinta-feira, 14 de julho de 2016

Laboratório de física para todos - vamos fazer um digitímetro!

Um digitímetro consta de uma célula fotoelétrica ligada a um marcador de tempo. É usado geralmente para medir o tempo de passagem de um objeto para, a partir desse tempo e das dimensões do objeto, os alunos fazerem o cálculo da velocidade com que o objeto passou num determinado ponto. Sendo um aparelho recomendado em várias experiências de Física do ensino secundário é, pelas escolas que fui passando, um aparelho considerado caro, por vezes demasiado complicado para as tarefas habituais, e que existe em pouca quantidade, pelo que geralmente é feita uma única montagem para todo um grupo de alunos em vez de várias montagens, o que permitiria o trabalho em grupos mais pequenos.

O aspeto de um digitímetro que costumamos encontrar nas nossas escolas (e que ilustra um protocolo experimental proposto pela editora Areal) é o seguinte:



Não querendo parecer esquisita, nunca percebi porque é que o digitímetro é nos nossos laboratórios um aparelho tão pesado, com tantos fios, pouco portátil, demasiado caro para estender o seu uso a níveis de ensino mais precoces...e por isso, achei que conseguia fazer um com um arduino e um PIR.

Material usado: arduino, breadboard, fios de ligação, plug-in para uma pilha de 9V, LCD 1602, sensor PIR.

Para ficar com uma ideia de qual o custo unitário deste digitímetro, fiz uma busca rápida pelo aliexpress e consegui um kit básico de arduino com a placa UNO, a breadboard, fios de ligação e plug-in para a pilha por 5,08€;  um LCD (já com os pinos soldados) por 1,77€ ; um sensor PIR por 0,31€. Podem dar jeito alguns fios com extremidades macho-fêmea (para poder afastar o sensor PIR da breadboard) - conseguem-se 40 cabos de 20 cm por 0,83€. Conseguimos pois, mandando vir o material pelo aliexpress, todo o projeto por 7,99€. E ainda sobrarão muitos cabos para projetos futuros...

Quanto ao esquema, há que ligar devidamente o LCD, o que foi estudado em post anterior, e o PIR. Nesta montagem, optámos pela solução de ligar o pino 3 do LCD (que define o contraste) à saída PWM do arduino (D6) em vez de o ligarmos a uma resistência variável. A saída do PIR foi ligada à entrada digital 13 do arduino (D13). O esquema que proponho é o seguinte:


E a programação? O programa de um digitímetro não tem nada de complicado. Para o compreender, há que rever o funcionamento do PIR e do LCD. Basicamente, a ideia é esperar que o PIR, ligado à entrada 13 do arduino, altere o seu estado de HIGH para LOW (o que revela a presença de um obstáculo dentro da zona sensível do PIR) e medir o tempo até que o sinal volte novamente a HIGH. Esse tempo corresponderá ao da passagem do obstáculo em frente do PIR. O ângulo de deteção é de 35º, razoavelmente pequeno; ainda assim, deve tentar-se que a distância entre o objeto e o PIR seja a menor possível para minimizar o erro na medida devido a esse ângulo. Relativamente aos programas anteriores a única função nova é millis(), cuja descrição pode ser encontrada no site do arduino.

Deixo aqui o programa integral:


Finalmente, partilho um vídeo com o digitímetro em funcionamento:


domingo, 10 de julho de 2016

Introdução à linguagem C - exploração do LCD 1602 (ou como fazer um ohmímetro)

Há algum tempo que estou para explorar o uso de LCD em circuitos programados com arduino. Na verdade, tenho um projeto em mente, mas precisava antes de estudar o uso destes componentes eletrónicos.

Antes de mais, displays há muitos...usei um vulgar, o 1602, que se encontra no mercado nacional por valores que rondam os 7€ e no aliexpress por valores inferiores a 2€ . Enfim, um componente acessível com um potencial importante em projetos que envolvam a interação com o utilizador.


Começo por referir que a maioria dos displays comprados precisa de ser soldado a uma barra de 16 pinos para permitir a ligação à breadboard. Se está a pensar comprar o LCD e não tem recursos de soldadura, justifica pesquisar e pagar mais por um LCD com a barra de pinos já soldada. Na net é possível encontrar tutoriais sobre soldadura de LCD.


A principal vantagem deste LCD é que, usando um driver compatível com o Hitachi HD44780, partilha a pinagem com um grande número de LCD (que são geralmente reconhecíveis por terem 16 pinos) e tem à sua disposição livrarias incluídas já no software do arduino que tornam a sua programação bastante acessível.

A pinagem e a montagem de circuitos entre o LCD e os arduino estão ilustrados na apresentação eletrónica que se segue; também as principais funções associadas à livraria usada para programar com estes LCD estão aí explicadas. Vale a pena acrescentar que, ao contrário de que foi feito nos tutoriais que consultei, é possível prescindir da resistência variável que controla o contraste do LCD - a solução passa por usar as saídas PWM do arduino e está descrita no site BR-Arduino.org.

Acho que merece maior explicação a última tarefa proposta na apresentação eletrónica, a construção de um ohmímetro. Como a estratégia de resolução pode não ser evidente para quem tenha menos prática de eletrónica, vou explicá-la com algum detalhe:

O caminho que proponho é o recurso ao um divisor de tensão. Um divisor de tensão é uma técnica de projeto utilizada para gerar uma tensão elétrica proporcional à tensão de alimentação (e que encaminharemos para a entrada analógica A0):


No projeto em concreto, Vin é ligado à tensão de alimentação, 5V, R1=10 kohm, Vout é ligado à entrada analógica A0 e R2 é a resistência cujo valor se pretende medir:


Claro que o valor lido na entrada A0 não está em volt, mas num valor entre 0-1023, pelo que é necessário, a partir de uma regra de 3 simples, e antes de resolver os cálculos referidos anteriormente, converter o valor lido diretamente em A0 para tensão de valor entre 0-5V.

Em resumo: depois de ligar o divisor de tensão à entrada analógica A0, há que:

  1. Medir o valor da entrada A0 (que estará entre 0-1023);
  2. Converter o valor anterior para tensão: 
  3. Calcular o valor da resistência R:
  4. Enviar o valor de R para o display LCD;
  5. Fazer um delay (eu fiz de 1s) antes de nova medida.

Deixo a apresentação eletrónica com a introdução ao estudo do LCD 1602...



...e um pequeno vídeo com o nosso ohmímetro em funcionamento:

sexta-feira, 8 de julho de 2016

Arduino+Scratch - Workshop para professores

Eu gosto de ser professora. Não gosto de ser professora só por gostar de lidar com jovens (qualquer professor deve gostar de lidar com a faixa etária com a qual trabalha...), mas especialmente porque reconheço na profissão de professor algumas caraterísticas que não são vulgares noutras saídas profissionais:
  • Não há sigilo profissional. Tudo o que é feito é do domínio público. Todos os materiais que produzimos são dados aos alunos e, consequentemente, à comunidade; as atividades que realizamos com os alunos são sempre passíveis de serem observadas por terceiros;
  • (Ainda) há um importante espaço de experimentação, de "vamos tentar", de trilhar novos caminhos em termos didáticos e científicos;
  • A partilha entre colegas. Em sala de aula o professor é o maestro, o que poderá levar a crer que este é um trabalho solitário. A verdade porém é que, caso o ambiente de escola seja saudável, o trabalho do professor se faz de muita partilha de experiências e de materiais entre colegas;
  • O meio interdisciplinar em nos movemos. Dificilmente encontramos um espaço mais rico que a escola em termos de co-habitação de profissionais com conhecimentos tão distintos.
Dito isto, sublinho o prazer que é para mim partilhar o caminho que fui fazendo na programação de arduinos com Scratch. Não pretendo sobrevalorizar o trabalho que tenho vindo a realizar, outros colegas terão experiências riquíssimas a descrever, mas gosto de partilhar o que faço e os materiais que crio. Se houver colegas que os possam aproveitar noutros contextos, se puderem trabalhar sobre o que já fiz (tal como eu pesquiso e trabalho sobre os percursos de outras pessoas), se lhes for útil o que fui pesquisando e experimentando...isso é para mim o maior elogio ao meu próprio trabalho!

A primeira workshop para professores com o objetivo de introduzir a programação de arduinos com linguagem Scratch foi realizada este ano, em janeiro, na Fundação Portuguesa das Comunicações. Mais tarde, recebi o convite para realizar nova worshop no evento TIC@Portugal'2016, no dia 1 de julho, e nessa altura preparei uma workshop que reproduzi na minha escola no dia 6 de julho.

Fiquei assim com uma workshop "montada" para eventos futuros. O público-alvo são professores de qualquer área e nível de ensino e não precisam de ter bases nem de eletrónica nem de programação (embora conhecer o Scratch seja uma mais valia). O tempo de duração é de cerca de 2,5 horas

Nesta workshop faz sentido contextualizar o ensino da eletrónica e da programação como uma área muito pouco explorada no ensino regular. Esta lacuna penaliza os alunos que querem seguir a área das ciências e e das engenharias, mas também os alunos que, tendo vocação para a área, não vêm os seus talentos valorizados nem desenvolvidos; a programação e a eletrónica são também bases sólidas para trabalhos de projeto que não têm vindo a ser exploradas na maioria dos contextos escolares.

Convém também identificar as vantagens de começar pelo arduino (que é fácil de programar, é versátil e opensource - o que reduz o preço de fabrico) programado em S4A (porque a linguagem em Scratch é muito mais acessível que o C, e porque a maioria dos nosso alunos já tem contacto com Scratch no ensino básico).

Na proposta de trabalho, são exploradas, por esta ordem, as saídas digitais, as entradas digitais e as entradas analógicas. Depois de cada um destes itens estudados, faz sentido apontar um projeto possível com os conhecimentos adquiridos (um semáforo, luzes de árvore de Natal cujo padrão com que acendem muda sempre que é premido um botão, o controlo das luzes de uma casa através da luminosidade ambiente...).

A ideia é ser uma workshop muito "mão na massa", uma apresentação geral das potencialidades da programação de arduinos com Scratch, mas é evidente que apenas abre caminhos - os professores interessados terão depois de investir na área - e deixa muitos componentes importantes de fora, como os servomotores, por exemplo.

Deixo o material necessário por grupo de trabalho: 1 computador com os softwares do arduino e do S4A instalados; 1 breadboard; 1 arduino + cabo de ligação ao PC; cabos de ligação; 3 LED (vermelho, verde e amarelo); 3 resistências 220 ohm; 1 resistência 10 kohm; 1 botão de pressão; 1 resistência variável; 1 fotorresistência...

...e deixo também a apresentação eletrónica explorada:



terça-feira, 5 de julho de 2016

TIC@Portugal'2016

Foi no dia 1 de Julho que se realizou o evento TIC@Portugal'2016, uma iniciativa da Associação EDUCOM - APTE (Associação Portuguesa de Telemática Educativa).

O objetivo do TIC@Portugal é refletir sobre as práticas do uso das TIC na Educação, divulgando e debatendo a utilização das TIC nos processos de ensino e de aprendizagem. Este é um evento de caráter nacional e descentralizado, tendo decorrido, em simultâneo, sessões no Monte da Caparica, em Vila Real de Santo António, Braga, Bragança, Coimbra, Mangualde, Santarém e Setúbal. O programa completo pode ser consultado aqui.

Marcámos a nossa presença em Setúbal partilhando a nossa experiência na programação de arduinos através de Scratch. De manhã, promovemos a comunicação "Arduino e Scratch - uma experiência"; à tarde dinamizámos uma workshop de introdução à programação de Arduino em Scratch.

O que mais aprecio nestes eventos é terminar o dia com a certeza que, se já muito se faz nas nossas escolas (tantas vezes sem a visibilidade e o reconhecimentos devidos), o potencial para se fazer mais ainda é enorme - há um grupo importante de professores que tem vontade de fazer mais, de aprender mais e de trilhar novos caminhos...

Por vezes dou por mim a pensar no que seria a escola se aos professores se desse mais liberdade. Mais liberdade em termos de estratégia mas, especialmente, mais liberdade em termos curriculares. Se fosse possível deixarmos de estar tão espartilhados em termos de programas e de exames com metas minuciosas para cumprir. Se passasse por nós a decisão sobre o que é de facto importante para o futuro de cada grupo de alunos. Por vezes dou por mim a pensar...não é um lamento, é mesmo a importância de repensar a educação do futuro.

Quanto à nossa participação no TIC@Portugal'2016, deixo de seguida alguns registos fotográficos.

A comunicação "Arduino e Scratch - uma experiência", no auditório da Escola Superior de Educação de Setúbal

Na nossa workshop de introdução à programação de Arduinos em Scratch, foi um privilégio trabalhar com professores de áreas tão distintas como 1º ciclo, TIC, Matemática e Biologia. E perceber como é possível usar a eletrónica e programação como base de trabalho de projetos em áreas curriculares tão diversificadas. Obrigada a todos! 

quinta-feira, 9 de junho de 2016

E-Tech 2016

Foi nos dias 03 e 04 de junho que decorreu o E-Tech 2016.

Esta foi uma feira tecnológica organizada pela E-CODE (Escola de Programação) e pela ANPRI (Associação Nacional de Professores de Informática). Evento único a sul do Tejo, transformou a Escola Secundária D. João II, em Setúbal, num espaço riquíssimo de exposição a par com um seminário subordinado ao tema "Empregabilidade digital" por onde passaram palestrantes de renome.

Incluida nas várias atividades da feira, foi organizada uma mostra de clubes escolares em que estivemos presentes.

A qualidade das palestras e o número significativo de instituições e parceiros envolvidos está bem espelhada na imprensa local e nacional, por isso aqui daremos destaque ao ponto de vista dos clubes de robótica escolares.

Antes de mais, quero referir a importância de um evento desta dimensão decorrer numa escola. É certo que na 6ªF foi um pouco confusa a gestão do espaço (a nossa escola tem 1600 alunos), mas envolveu definitivamente a comunidade escolar - alunos, professores, funcionários e famílias. Na verdade, se o evento tivesse decorrido num ambiente mais convencional, como um pavilhão multiusos, não teria sido possível envolver um leque tão alargado de público nesta experiência.

Para os alunos da escola que frequentam o clube, esta foi também uma atividade marcante, porque, por muito que deixemos os trabalhos em exposição durante o ano letivo, o ambiente de feira tecnológica dá aos trabalhos outro peso e outra importância. Foi também a oportunidade perfeita para os alunos partilharem o seu trabalho com colegas, professores e famílias (e o orgulho com que o faziam?), assim como para alargarem os seus horizontes quanto ao que se faz em robótica pelo país, em ambiente empresarial e em ambiente de escola.

Relativamente às famílias, foi curioso ver os alunos (da escola no geral, não apenas do clube) a trazer os pais à feira, dia 04, sábado. Quem lida com a educação todos os dias sabe bem a importância de envolver os pais e de criar um clima de confiança pais-escola. 

Antes de deixar as fotos que ilustram a dimensão deste evento, não posso deixar de dar os parabéns à organização. Foi um evento fantástico!

Conferência E-Tech 2016: Empregabilidade digital


Foram muitas as empresas e instituições que marcaram presença no evento
E os clubes, claro! Tanto que se faz nas escolas do país...

E ainda...uma Lan Party que durou a noite toda!
Finalizo referindo que ao nosso clube foi atribuído o 4º lugar no concurso de clubes no âmbito do E-Tech. Connosco concorriam clubes com muito mais experiência, com uma dimensão muito maior e com muitas provas dadas - por isso, para nós, este foi um verdadeiro Prémio Esperança, que nos deu alento para continuar a construir um caminho que nem sempre é fácil. De notar que, embora tenha sido a professora a receber o prémio (porque era quem estava na cerimónia de encerramento do evento), foram os alunos que estiveram no terreno a apoiar o stand do clube e foram eles que se sujeitaram à avaliação do júri do concurso. Muitos parabéns a todos!