sábado, 23 de junho de 2012

Algumas considerações sobre consumo de energia

Hoje tem-se falado muito a respeito do desperdício eletrônico, a alguns anos atrás lembro-me de ter lido uma série de artigos sobre o tema na revista ELEKTOR sobre esse tema e agora usando o Netduino percebo cada vez mais que existe uma necessidade real de se analisar o consumo dos dispositivos.

Muito embora o Netduino Plus tenha o formado do Arduino, ele traz muitas vantagens em relação a plataforma antiga: em termos de hardware tem-se o cardão microSD na placa para armazenamento, foco dos últimos post's, e a comunicação por internet também na própria placa. Em termos de software também exite uma evolução enorme uma vez que o Netduino usa linguagem orientada a objeto e a plataforma Visual Studio  através do .NET Microframework. As vantagens de migrar as soluções embarcadas para a orientação a objeto tornam a programação mais rápida e limpa. Lembro-me das dificuldades que tinha quando tentava, como o dsPIC33F, executar múltiplas tarefas como escrita na EPROM externa, comunicação Serial e o controle propriamente dito etc.

Mas não só de coisas boas o Netduino é feito. Alguns tropeços no desenvolvimento do hardware deixam a placa para trás em termos de desempenho - poucas portas IO disponíveis são um tremendo limite quando se deseja construir aplicações específicas. Além disso, o chip da DAVICOM permite o chamado PoE  (Power over Ethernet) mas, lamentavelmente, essa funcionalidade não está implementada. 


O Netduino deve ser compreendido como uma nova linha em termos do desenvolvimento de dispositivos embarcados - um plataforma sem sistema operacional que permite o gerenciamento multitarefa do processador e um desenvolvimento de código rápido. Essa característica do Netduino torna-o ideal para desenvolvimento rápido de protótipos e até mesmo participação em projetos específicos em soluções personalizadas.


Aqui nesse post trago uma abordagem do Netduino Plus quanto ao consumo de energia. Os testes realizados são relativamente simples e analise dos resultados idem.


Sabe-se que o Netduino utiliza reguladores lineares para ajusto nível de tensão fornecido e demandado pelos periféricos. Nesse ponto será feita algumas considerações (aproximações), a primeira delas é considerar todos os elementos como grande consumo sendo alimentados pelo 3.3V para as estimativas de potência consumida efetiva, mas a diante esse conceito ficará mais claro. Feito isso foi feito três testes com códigos diferentes a fim de avaliar o consumo de energia da placa, o resultado está sendo apresentado na tabela abaixo:


Sem processamento (sleep infinito pelo código)
Processando contas simples continuamente (adição, subtração, divisão e multiplicação)
Processando da escrita no  Cartão SD
45 mA
55,4 mA
65,5 mA

Deveria ter realizado mais testes, mas para esse momento já está razoável. Note que o Netduino Plus sem executar nenhum código consome 45mA, isso significa que alimentando através de uma Bateria Alcalina Duracell AAAA 9V 320mAh, seria possível manter a placa ligada por pouco mais de 7h e lendo e escrevendo no cartão SD esse tempo seria reduzido para 4,9 horas. A pergunta que pode ser feita agora é o que isso significa de fato. 

Uma durabilidade de 5horas suprida por uma bateria é muito baixa tendo em vista que não foi utilizado nenhum dispositivo de acionamento (ou medição), até mesmo para um simples dispositivo de medição necessitaria de uma autonomia de dias. Veja por exemplo, o caso do medidor de nível de caixa d'água uma boa autonomia seria de 6 meses ou mais! Dito isso porque ninguém gostaria de ter o desconforto de se lembrar que o dispositivo que monitora o nível da caixa d'água foi desligado por falta de energia e parou de armazenar os dados.

Esse consumo, podemos dizer até exagerado deve-se em especial a camada de código do bootloader do Netduino que por si só consome boa parte da memória e da energia da placa. 

Vale lembrar ainda do tempo de inicialização do bootloader ser elevado quando comparado as soluções escritas em C no Arduino/PIC e afins que demoram não mais de um segundo para inciar o código. Netduino Chega a demorar um minuto para iniciar suas atividades.

O custo do regulador linear
 
Pode-se analisar ainda  o caso do consumo dos reguladores lineares. Nesse ponto cabe uma análise do ponto de vista da energia. Aproximando o consumo para 3,3V e 65mA temos uma potência efetivamente consumida de 0,214 W - Considerando uma aplicação com bateria de 9V - temos um consumo efetivo da placa de 0,585 W. A diferença é a energia dissipado no regulador linear que ajusta a tensão para os 3,3V. 

Duas conclusões podem ser tomadas:
1ª - Usando uma alimentação de 9V, 63,3% da energia é desperdiçada nos reguladores lineares da placa. Como uma
Bateria Alcalina Duracell AAAA 9V 320mAh custa em média R$15,00. R$10,00 são jogados fora nos reguladores, um pecado...


2º - Usar 4 pilhas em série terá o mesmo efeito em durabilidade uma vez que a placa usa reguladores lineares. Utilizando a Duracell Plus Power de 2500 mAh custa R$12,00 (4 pilhas) e terá um rendimento efetivo de 45% e uma durabilidade de 8,12 horas.


Muito deve-se analisar para chegar em uma solução ideal em termos de custo benefício na construção desse tipo de solução embarcada. No caso do registrado de nível para caixa d'água 8,12 horas ainda parece algo bem distante da realidade (mesmo usando a pilha tipo D "bujão" 108horas - 3,6 meses).

Tenho um amigo que vai utilizar uma placa dessas que sobe linux para uma aplicação com reconhecimento de imagem para controlar um carrinho automaticamente. Pelo que me foi relatado a placa consome 2A quando está processando e adicionando os motores e acessórios o conjunto terá um consumo violento de energia; como me comprometi a fazer o carrinho antes de construí-lo farei a análise de energia vs. autonomia para dimensionar um tamanho da bateria que o carrinho irá utilizar, esse post foi apenas uma análise prévia para o que está por vir.



Mais a frente, em um outro post farei uma análise mais completa do consumo do Netduino Plus utilizando o osciloscópio para ter uma ideia mais ampla dos picos de consumo de energia. Farei também com outros periféricos conectados as portas IO porque isso muda um pouco a dinâmica da placa. espero que tenha sido esclarecedor o post quando a questão do consumo do Netduino Plus.

Nenhum comentário:

Postar um comentário