terça-feira, 30 de junho de 2015

Projeto: Passagem de nível#2

Tão, tão orgulhosa destes alunos! Muitos parabéns, Bruno e Luana! É muito mais difícil do que o que parece levar a bom porto um trabalho desta natureza. A vossa perseverança e capacidade de trabalhar de forma autónoma foram exemplares. No início do ano, farei questão de ter este trabalho exposto na biblioteca da escola para toda a comunidade educativa!


E agora...umas boas férias para os dois!

Projeto barco do Sado#2

Com o barco terminado e o circuito a funcionar - ver Projeto barco do Sado#1 - chegou a altura de completar o projeto. Foram soldados os LED a fios mais compridos, soldado o sensor SR04 e...com o o sensor soldado, por mais voltas que se dessem, a placa não era reconhecida pelo PC! Terei danificado o sensor com o calor do ferro de soldar? Seriam os fios que ao sensor soldei demasiado finos e estariam a adicionar uma resistência adicional ao circuito? Enfim...com o tempo a esgotar-se, houve que tomar uma decisão e acabei por substituir o sensor por um simples interruptor. Menos tchã! mas mais fiável.

Foi retirado um dos LED vermelhos porque os alunos tinham instalado uma bandeirinha no barco que quisemos preservar e deixou de fazer sentido o 2º LED. O interruptor foi ligado à entrada digital 2.

O programa foi uma adaptação simples do realizado para funcionar com o SR04.

Deixo a minha proposta de trabalho para o circuito eletrónico e o programa em Scratch:


...o circuito esquemático...




...e uma foto com o projeto terminado (o vídeo terá de vir depois):


Uma palavra de apreço à colega Isabel Oliveira, cujo jeitinho para trabalhos manuais foi fundamental para levar a conclusão deste projeto a bom porto. Muito obrigada por todas as horas na oficina, a disponibilidade e boa disposição, Isabel!

quinta-feira, 18 de junho de 2015

Work in progress#2









Projeto barco do Sado#1

Este foi um trabalho "por encomenda".

Inserida no projeto Rato da Biblioteca, será organizada uma exposição de trabalhos em Ponte de Lima, no próximo dia 1 de julho. A turma do 10º ano do vocacional integra o projeto e construiu uma série de traineiras e barcos, um culminar de um estudo sobre a origem da primeira traineira de pesca no rio Sado. Foi-me pedido que, em arduino e utilizando a programação em Scratch, automatizasse o projeto.

Em reunião com os alunos envolvidos, e depois de escolhido o trabalho de entre os vários construídos, ficou definido que o barco devia estar parado na ausência de movimento e que, com o aproximar de uma pessoa, devia piscar LED vermelhos e verdes, fazer movimentar os remos e fazer ouvir o som do mar.

Eis o trabalho dos alunos:




Em casa, concebi o circuito a ser montado. O sensor de aproximação que usei foi de novo o SR04, cujo funcionamento em arduino e Scratch foi já descrito em post anterior. Não esquecer que é necessário firmware próprio para o arduino trabalhar com o SR04 em Scratch: http://densare.pt/files/zip/S4AFirmware16_SR04.zip

Para os remos usei dois servo-motores que a escola adquiriu através do financiamento da DGE aos clubes de programação e robótica, dois HD-1160A. Usei também um dos arduino adquiridos em vez do meu pessoal, como é hábito. Para o som, usei mais uma vez um do site www.buscasons.com .

A primeira dificuldade surgiu ao tentar ligar os dois servos em simultâneo. Estranhamente, e estando a trabalhar com uma placa de arduino igual à que eu própria tenho, que funciona com dois servos a trabalhar ao mesmo tempo, a placa com que construí o circuito "crashava" quando os motores tinham ordem de funcionar. A solução passou por alimentar os servos com uma fonte independente (usei uma outra porta USB do computador), como já tinha feito para o projeto do jardim iluminado de forma automática.

Outro problema que partilho é que em várias ocasiões os motores pareciam tremer mesmo em vazio. Procurei pela solução deste problema pela net e parece que o problema reside na maior parte das vezes em falta de alimentação. O fenómeno deixou. no entanto, de acontecer sem que eu tenha encontrado uma solução cabal.

Quanto à programação, especial atenção para a variável delta que define a variação do âgulo do motor. Quanto menor for este valor, mais suave será o movimento, mas mais demorados serão os 5 ciclos que defini que se cumprissem com a aproximação de alguém. Defini ainda que entre um e outro ciclo há um tempo de espera de 20 segundos, pelo que não será possível iniciar novo ciclo antes desse intervalo de tempo.

Deixo a minha proposta de trabalho para o circuito eletrónico e o programa em Scratch...



...o circuito esquemático...




...e um pequeno vídeo com o circuito em funcionamento (o som do mar não é muito percetível na gravação):






quinta-feira, 11 de junho de 2015

Projeto Jardim Iluminado de Forma Automática#1

Este foi o projeto imaginado pela Kathelin e pela Inês. A ideia era comporem um espaço cujas luzes acendessem quando a luminosidade ambiente diminuísse. Um jardim acabou por ser a escolha das alunas.

A ideia de usar RGB foi minha, até porque as alunas não os conheciam. Foi nessa fase que dediquei um post ao controlo de RGB através de arduino.

A maior dificuldade neste projeto foi respeitar o pré-projeto que as alunas tinham concebido usando as saídas disponíveis no arduino.

Na verdade, e querendo usar as saidas PWM para controlar os RGB (a forma mais bonita de os por a funcionar), temos 3 saidas PWM disponíveis (9, 6 e 5) para 4 RGB (cada um com 3 pinos, dá 12 pinos a controlar). A solução foi colocar os 4 RGB em paralelo, controlando em simultâneo cada 4 LED da mesma cor.

A dificuldade desta solução surge quando fazemos as contas à corrente necessária para alimentar 4 LED em simultâneo. Cada LED do RGB necessita de cerca de 20 mA (80 mA para alimentar 4 LED em simultâneo) e cada saída do arduino fornece apenas 40 mA.

Assim, pensei em usar um amplificador operacional para cada um dos LED em modo de seguidor de sinal (ou seguidor de tensão). Um pouco mais sobre este circuito pode ser encontrado aqui.

Não tendo 3 amp op em casa, pesquisei que circuitos integrados ofereciam vários amp op e acabei por decidir que tanto o LM148, como o LM248 ou o LM348 me serviriam. Quando cheguei à pequena (mas simpática!) loja de eletrónica cá da terra, tive de contentar com o que havia e trouxe, por 0,60€, um LM324. Através da sua datasheet é possível ter acesso às suas caraterísticas, sendo que a sua pinagem é dada através da figura seguinte:


O esboço do controlo de 4 RGB em paralelo usando o LM324 encontra-se no desenho que se segue:




A alimentação do LM324, que tem, evidentemente de ser alheia ao arduino, foi feita através de uma porta USB do computador (têm geralmente cerca de 500 mA). Para isso, cortei a extremidade de um carregador de carro para telemóvel que tinha cá em casa estragado e descarnei os fios para os usar na breadboard:




O resto do circuito é de fácil compreensão. A ideia é ter uma fotoresistência ligada a uma entrada analógica (A0) que fará desligar as luzes quando a luminosidade ambiente for superior a um valor pré-estabelecido. Quando esse valor diminuir (o ambiente escurecer), a ideia é ter os 4 RGB a mudar de cor e uma luz branca sempre ligada.

A programação foi adaptada da apresentada no post anterior. Para além da inserção da entrada analógica, que determinará o acender ou apagar das luzes, foram definidas várias variáveis. Assim, foram adicionadas às variáveis "red", "green" e "blue" já usadas no programa anterior e que determinam a intensidade de cada um dos LED, as variáveis "tempo" e "calibracao". A primeira define a velocidade com que os RGB mudam de cor - quanto menor for esta variável, mais lentamente o fazem; a segunda serve para com facilidade calibrar qual o valor analógico da entrada A0 a que as luzes devem acender - e que dependerá da luz ambiente em que o circuito está montado.

Deixo a minha proposta de trabalho para o circuito de eletrónica e o programa em Scratch...



...o circuito esquemático...



...e um pequeno vídeo com o circuito em funcionamento (mais uma vez, a câmara não faz juz à mudança das cores do RGB, muito mais bonitas ao vivo):