Acessibilidade / Reportar erro

A placa Arduino: uma opção de baixo custo para experiências de física assistidas pelo PC

The Arduino board: a low cost option for physics experiments assisted by PC

Resumos

Neste trabalho, apresentamos a placa Arduino como uma opção de muito baixo custo para a aquisição de dados com um PC. Duas aplicações simples que mostram as potencialidades desta placa são brevemente discutidos.

placa Arduino; aquisição de dados; oscilações amortecidas; transferências radiativas


We present the Arduino board as a very low cost option for data acquisition with a PC. Two simple applications that demonstrate the potential of this board are briefly discussed.

Arduino board; data acquisition; damped oscillations; radiative transfer


NOTAS E DISCUSSÕES

A placa Arduino: uma opção de baixo custo para experiências de física assistidas pelo PC

The Arduino board: a low cost option for physics experiments assisted by PC

Anderson R. de Souza; Alexsander C. Paixão; Diego D. Uzêda; Marco A. Dias; Sergio Duarte; Helio S. de Amorim1 1 E-mail: hsalim@if.ufrj.br.

Instituto de Física, Universidade Federal do Rio de Janeiro, Rio de Janeiro, RJ, Brasil

RESUMO

Neste trabalho, apresentamos a placa Arduino como uma opção de muito baixo custo para a aquisição de dados com um PC. Duas aplicações simples que mostram as potencialidades desta placa são brevemente discutidos.

Palavras-chave: placa Arduino, aquisição de dados, oscilações amortecidas, transferências radiativas.

ABSTRACT

We present the Arduino board as a very low cost option for data acquisition with a PC. Two simple applications that demonstrate the potential of this board are briefly discussed.

Keywords: Arduino board, data acquisition, damped oscillations, radiative transfer.

1. Introdução

Temos observado nos últimos anos um aumento significativo de propostas de experiências didáticas em física assistida por microcomputadores. Grandes fornecedores comerciais de materiais didáticos têm se esmerado em fornecer linhas completas de equipamentos para a realização de experiências, em todas as grandes áreas da física, em que o PC é peça dominante para o controle, aquisição e análise de dados. Contra o uso destes equipamentos (kits) em nossas salas de aula está o custo, em geral, muito alto. Como alternativa, tem sido proposto soluções de baixo custo envolvendo diferentes portas de comunicação e periféricos do PC [1-3]. Numa outra vertente encontramos equipamentos produzidos por grandes empresas do setor eletrônico que adaptam o PC para as mais diversas funções que vão desde a aquisição de dados até o controle de complexas linhas de produção na indústria. Entre estes produtos estão as placas de aquisição de dados que junto com um sortimento imenso de transdutores permitem usar o PC para a medida e o registro das mais diferentes variáveis físicas. Estes produtos, por permitirem uma ampla flexibilidade de montagens experimentais, são encontrados ostensivamente em laboratórios de pesquisa e também em laboratórios didáticos. Há uma enorme variedade de placas de aquisição de dados, desde projetos muito simples até os muito sofisticados, que podem chegar a custar alguns milhares de reais.

As restrições que encontramos para o acesso a essa tecnologia por parte de professores e alunos de física do Ensino Médio vão desde o desconhecimento puro e simples até a pouca oferta no mercado nacional e o preço. As placas importadas, oferecidas no mercado nacional, têm um forte incremento nos custos devido aos impostos. Por sua vez, a importação direta por um professor esbarra, em geral, nas dificuldades de pagamento em moeda estrangeira. Entretanto, têm surgido algumas alternativas interessantes. Neste trabalho nós analisamos a placa Arduino e comentamos algumas aplicações didáticas.

A placa Arduino é baseada num microcontrolador muito versátil que potencializa suas funções para além de uma simples interface passiva de aquisição de dados, podendo operar sozinha no controle de vários dispositivos e tendo assim aplicações em instrumentação embarcada e robótica. Todo o projeto eletrônico, incluindo a plataforma para o desenvolvimento dos programas de controle é de acesso público e gratuito. Uma extensa comunidade internacional se formou em torno do projeto Arduino, envolvendo técnicos e desenvolvedores de diversas áreas, alunos e professores, hobistas, artistas plásticos, que interagem através de sites, blogs e eventos patrocinados por diferentes instituições mundo afora. Na Web encontramos uma farta documentação sobre aplicações e de troca de experiências entre usuários. Essa malha internacional, muito cooperativa, de usuários é um fato muito auspicioso para os iniciantes que de outra forma encontrariam dificuldades naturais de uso dessa tecnologia. Outro fato positivo é que atualmente podemos encontrar diferentes versões nacionais da placa Arduino, no mercado nacional, com preços muito acessíveis ou mesmo, instruções de montagem a partir dos componentes eletrônicos básicos, o que pode atender o interesse de professores e alunos com maior capacitação em eletrônica.

2. A placa Arduino

O Arduino é uma plataforma de hardware open source, de fácil utilização, ideal para a criação de dispositivos que permitam interação com o ambiente, dispositivos estes que utilizem como entrada sensores de temperatura, luz, som etc., e como saída leds, motores, displays, auto-falantes etc., criando desta forma possibilidades ilimitadas.

A plataforma utiliza-se de uma camada simples de software implementada na placa, que é um bootloader, e uma interface amigável no computador que utiliza a linguagem Processing [4], baseada na linguagem C/C++, a qual é também open source. Através do bootloader dispensa-se o uso de programadores para o chip - no caso a família AVR do fabricante ATMEL - facilitando ainda mais o seu uso uma vez que não exige compiladores ou hardware adicional. Neste ambiente de desenvolvimento, são disponibilizadas bibliotecas que permitem o interfaceamento com outros hardwares, permitindo o completo desenvolvimento de aplicações simples ou complexas em qualquer área.

A plataforma original, mesmo tendo restrições de memória, possuía grandes possibilidades com seis entradas analógicas, 1 UART, I2C, SPI e 6 PWMs. Hoje, na mesma linha tem-se modelos que permitem até 16 entradas analógicas, 14 PWMs, 4 UARTs, e com memória comparável a plataformas complexas como a família ARM. Na Fig. 1 vemos a placa Freeduino-BR, versão usada neste trabalho. A placa Arduino se conecta ao PC através de uma porta USB e disponibiliza saídas de tensão DC de 3.3 V, 5 V e 9 V (quando alimentada por fonte externa) e que podem ser usadas em circuito auxiliares de baixo consumo, aumentando significativamente a sua versatilidade.


A seguir exemplificamos o uso da placa Arduino, como placa de aquisição de dados, em dois experimentos de física básica.

2.1. Oscilador amortecido

O estudo das oscilações amortecidas pode tornar-se interessante quando utilizamos a placa Arduíno. Podemos usá-la para registrar o movimento amortecido de uma lâmina. Apresentamos na Fig. 2a a montagem experimental adotada.



Colamos numa das extremidades de uma régua de plástico um pequeno espelho plano. A outra extremidade da régua é mantida fixa por uma garra e sustentada na horizontal com auxílio de um pequeno pedestal. Tocando a extremidade livre, a régua pode ser posta facilmente à vibrar no sentido vertical, com uma frequência característica e um amortecimento vigoroso. Com uma pequena lanterna colocada na vertical, iluminamos o espelho de baixo para cima com um feixe de luz divergente. A luz refletida no espelho ilumina um resistor sensível a luz (LDR - Light Dependent Resistor) fixada ao lado da lanterna como indica o desenho da Fig. 2a. Com o movimento da extremidade da régua alteramos a distância entre a fonte de luz e o LDR alterando a intensidade luminosa e por consequência a resistência do LDR. Temos assim um sensor de posição muito simples. Com o espelho, a sensibilidade do dispositivo é ampliada na medida em que um deslocamento do espelho corresponde um afastamento 2 da imagem em relação ao LDR.

Com a placa Arduino não medimos diretamente a resistência do LDR. Montamos o divisor de tensão indicado na Fig. 2b e alimentamos o circuito com uma tensão fixa de 5 V. Essa tensão é fornecida pela própria placa Arduíno que é por sua vez alimentada pela tensão fornecida pela porta USB a qual está ligada, flexibilidade essa que facilita enormemente a montagem experimental que passa a não requerer fontes de tensão extras.

O que registramos é a queda de tensão no LDR: a tensão em B (Fig. 2b) é conectada a uma das seis portas analógicas da placa. A tensão na porta é digitalizada por um conversor analógico-digital de dez bits. O valor digitalizado é enviado via porta serial para o computador e todo o processo é repetido segundo uma frequência (taxa de amostragem) previamente ajustada. A placa é programada para realizar repetitivamente a leitura e digitalização da tensão numa porta especificada, em seguida enviar o resultado via porta serial e repetir o processo indefinidamente.

O programa é feito numa linguagem própria (linguagem Processing) muito fácil de ser dominada usando-se um editor/compilador fornecido junto com a placa. Um manual da linguagem Processing, junto com vários exemplos, é gratutamente disponíbilzado pelos desenvolvedores. Uma vez editado/compilado, o programa é carregado na placa Arduino, a partir do computador, via conexão USB.

Para a leitura dos valores escritos na porta serial pela placa Arduino é necessário escrever um pequeno programa que deve ler e armazenar os valores num arquivo. É possível utilizar programas prontos disponíveis entre a comunidade de usuários ou escrevê-los diretamente através de uma linguagem acessível. No nosso caso, usamos o software LibertyBasic [5], um compilador Basic para Windows, por ser gratuito e possuir comandos de compreensão relativamente simples. A versão gratuita deste software não permite a geração da versão executável, mas apenas sua execução direta. Nas Figs. 3a e 3b podemos ver o registro consecutivo da oscilação da régua, medido com uma frequência de amostragem de 100 Hz. Na Fig. 3a vemos a representação de todos os pontos coletados (~3000 pontos), ligados por segmentos retos. A alta quantidade de pontos resulta numa alta densidade de linhas. Estão indicados no gráfico os três momentos em que se divide o registro do movimento. Na Fig. 3b é apresentada uma ampliação dos momentos finais da oscilação amortecida.


Na Fig. 3a vemos certa assimetria no amortecimento das oscilações da régua que deve ser creditada a não estrita linearidade da resposta do sensor de posição. Este fato é menos crítico na medida em que os deslocamentos são menores, como podemos ver na Fig. 3b. Naturalmente, é perfeitamente possível a construção de uma "curva de calibração" para o sensor de posição que possa corrigir todas as alterações introduzidas pela não-linearidade da resposta, trabalho este que, por si só, agrega muitos questões novas a serem exploradas em sala de aula.

Da Fig. 3b podemos, por exemplo, medir facilmente o período de oscilação natural da régua. Tomando-se uma média sobre várias medidas, encontramos no caso presente o período de 0,0818(5) s. Como vemos, por ser muito pequeno, seria muito difícil medi-lo manualmente, com auxílio de cronômetro. Essas medidas podem ser muito interessantes para um estudo experimental quantitativo sobre a influência de diferentes parâmetros do oscilador sobre o período.

2.2. Transferência radiativa de calor

Podemos aplicar a mesma metodologia das experiências anteriores e usar a placa Arduino para estudar trocas radiativas de energia. No esquema da Fig. 3b podemos trocar o LDR por um termistor NTC (Negative Temperature Coeficient) e utilizá-lo como sensor de temperatura. Se a temperatura aumenta, a resistência do termistor cai provocando uma variação correlativa na diferença de potencial (DDP). A DDP no termistor serve assim como uma grandeza termométrica.

Neste exemplo, foi montado um circuito com dois resistores de 4,7 kΩ e dois termistores NTC de 500 Ω. Os dois termistores foram fixados, cada um, em uma superfície metálica (pequenas fôrmas metálicas de uso doméstico) cujas faces foram pintadas de branco e preto. Entre o termistor e a superfície metálica foi adicionada pasta térmica. As faces pintadas foram direcionadas para uma lâmpada de 150 W, posicionada de forma equidistante das duas superfícies. O circuito de medida foi alimentado com 5 V através da própria placa Arduíno. A Fig. 4a mostra uma fotografia da montagem experimental e a Fig. 4b um esquema do circuito auxiliar.


Usamos duas das seis entradas analógicas da placa para medir a queda de tensão em cada um dos dois termistores. A queda de tensão é uma função crescente da temperatura alcançada pela superfície. O gráfico apresentado na Fig. 5 mostra a evolução temporal da temperatura, em unidades arbitrárias, correspondente às duas superfícies, branca e preta. O registro de dados é iniciado um pouco antes do acionamento da lâmpada e mantido após o desligamento da lâmpada até se atingir o equilíbrio final com o laboratório. Podemos ver que, com a lâmpada acionada, as duas superfícies atingem uma condição de equilíbrio dinâmica, sendo a temperatura da superfície preta maior do que a da superfície branca. Na Fig. 6 observamos o comportamento de uma superfície pintada de amarelo. Vemos um comportamento térmico intermediário entre o preto e o branco.



3. Conclusão

Os exemplos aqui apresentados são meramente ilustrativos de algumas aplicações didáticas da placa Arduino para o ensino de física, que se restringiram basicamente ao seu uso como placa de aquisição de dados. Entretanto, as possibilidades de aplicação vão muito além. Procuramos ressaltar aplicações em que pequenos componentes eletrônicos como resistores, termistores e LDR's, podem ser usados com transdutores de muito baixo custo como complementos muito simples para a placa Arduino. Todo o sistema de aquisição de dados tem aqui alta portabilidade sendo conveniente para experiências de campo, quando usados com um laptop. Para um maior aprofundamento das características e das inúmeras aplicações da placa Arduino recomendamos o acesso à página do projeto [6]. Todos os programas, detalhes das montagens experimentais e locais onde a versão nacional da placa Arduino (Freeduino-BR) pode ser encontrada, podem ser obtidas diretamente, via e-mail, com o autor-correspondente.

Recebido em 18/4/2010; Aceito em 19/1/2011; Publicado em 21/3/2011

  • [1] C. E. Aguiar e F. Laudar, Revista Brasileira de Ensino de Física 23, 371 (2001).
  • [2] Wictor C. Magno, Alberto E.P. de Araujo, Marcos A. Lucena e Erivaldo Montarroyos, Revista Brasileira de Ensino de Física 26, 117 (2004).
  • [3] Guilherme Dionisio e Wictor C. Magno, Revista Brasileira de Ensino de Física 29, 287 (2007).
  • [4] http://arduino.cc/en/Reference/Extended
    » link
  • [5] http://www.libertybasic.com
    » link
  • [6] http://www.arduino.cc/
    » link
  • 1
    E-mail:
  • Datas de Publicação

    • Publicação nesta coleção
      18 Abr 2011
    • Data do Fascículo
      Mar 2011

    Histórico

    • Recebido
      18 Abr 2010
    • Aceito
      19 Jan 2011
    Sociedade Brasileira de Física Caixa Postal 66328, 05389-970 São Paulo SP - Brazil - São Paulo - SP - Brazil
    E-mail: marcio@sbfisica.org.br