10 Comentários

Hardware BeagleBone Black – Alimentação – Parte 1

beaglebone

Introdução

O objetivo deste artigo é ser o primeiro de uma série que vai analisar com detalhes o hardware da BeagleBone Black, iniciando pela alimentação dessa plataforma. Ao final de uma série de artigos, o desenvolvedor deverá estar apto a criar projetos de hardware para esta plataforma. Para tanto, é importante estudar quais são as tensões do sistema, os limites de correntes, e quais as soluções que foram adotadas para esta plataforma de desenvolvimento.

Vamos adotar a BeagleBone Black revisão C (de 21/Março/2014) como padrão, embora as mudanças sejam relativamente pequenas para outras versões.

Para quem não conhece a BeagleBone Black, trata-se de uma plataforma de desenvolvimento dotada de um processador Sitara AM3358 - ARM Cortex A8, da Texas Instruments. Possui 512MB de memória DDR3L, 4GB de eMMC, e uma série de outras interfaces e periféricos.

Mas o que é o PMIC

Todos os que já desenvolveram projetos eletrônicos, certamente precisaram se preocupar com as tensões de alimentação de seu sistema. Na maioria das vezes, nosso velho amigo LM7805 dava conta do recado. Quando precisávamos de 3,3V, normalmente era o LM317 e fim de papo. Quando precisávamos fazer a integração entre sistemas com duas alimentações, a coisa começava a ficar complicada, utilizando vários reguladores e fazendo o casamento de níveis de tensão, como já vimos no artigo "Níveis e Limites de Tensões Digitais".

Quanto mais complexo o sistema, mais complexa é a fonte de alimentação para suportá-lo. Imagine um circuito onde os periféricos são alimentados com 3,3V de um regulador buck (DC/DC), o núcleo por uma tensão de 1,8V de um LDO, alguns periféricos USB de 5V, o conversor analógico/digital... o circuito passa a ficar muito complexo.

Para resolver esse problema, criou-se o conceito de PMIC. A sigla significa "Power Management Integrated Circuit", ou "Circuito Integrado de Gerenciamento de Energia" em uma tradução livre. A ideia é centralizar o controle e regulação de energia para um componente dedicado, que possa fornecer todas as tensões necessárias para o funcionamento de um determinado circuito.

Outra característica que o PMIC precisa controlar é o tempo e sequência correta de energização do circuito. Caso a tensão em algum periférico entre antes da tensão da CPU, ou mesmo se uma tensão for aplicada no dispositivo antes de estabilizadar, o circuito pode apresentar problemas difíceis de se resolver. O gerenciador de energia também é responsável por essas temporizações.

Para a família de processadores Sitara AM335x, a Texas Instruments desenvolveu o TPS65217x. Esse componente é específico para esse processador, fazendo todo o controle necessário e deixando o trabalho da fonte de alimentação muito mais simples.

É claro que o desenvolvedor pode resolver esse problema com reguladores externos discretos, adicionando uma série de LDOs e reguladores buck para não utilizar este PMIC. No entanto, é certo que o circuito ficará maior e provavelmente bem mais caro.

Nosso amigo TPS65217x

Trata-se de um Gerenciador de Energia integrado em um único componente (Single Chip PMIC), capaz de fornecer correntes de até 1,2A em seus reguladores DC/DC. Dois de seus quatro LDOs podem ser utilizados como "Load Switch". Suas principais características são:

  • 3 conversores DC/DC;
  • 4 conversores LDO;
  • Carregador de baterias;
  • Driver para LEDs com controle de intensidade;
  • Interface I2C com password.
beaglebone
Diagrama de blocos do TPS65217x.

Power Path

A ideia principal do Power Path é fazer o controle e chaveamento da fonte de alimentação de uma maneira transparente ao circuito. Esse sistema possui duas entradas principais, uma entrada AC e uma entrada USB. Além disso, o circuito faz a carga de uma bateria de Ion-Lítio e fornece essa alimentação quando as tensões de entrada (AC ou USB) falham.

É importante dizer que AC não quer dizer uma entrada alternada, faz referência a AC-Adapter (Adaptador AC), que quer dizer uma fonte externa. A tensão de entrada, seja em AC ou USB, pode ter uma variação nominal de 4,3V a 5,8V à partir da tensão central de 5,0V. É importante lembrar que essa tensão não é regulada, apenas chaveada entre as entradas.

beaglebone
Diagrama de blocos do Power Path e carregador de baterias.

A tensão selecionada pelo circuito é ligada à VSYS. Essa tensão é a alimentação de todos os outros reguladores e fornece a referência de 5V, quando necessário. Toda a corrente do dispositivo passa por ele.

beaglebone
A saída de VSYS é a entrada dos outros reguladores.

Ela também está disponível na barra de pinos da BeagleBone Black, podendo ser utilizada como alimentação, quando necessário.

beaglebone
Pinos do VSYS no Expansion Header.

Interface I2C

Esse dispositivo possui uma interface I2C para comunicação e controle, mapeada no endereço 24h. Esse barramento de comunicação é utilizado para fazer a verificação de status das alimentações, além de controlar a tensão de alguns reguladores. É possível trabalhar com taxas de até 400Kbps, possui auto-incremento de endereço, e é compatível com o "I2C Standard 3.0".

Apenas como exemplo, de comunicação do sistema, no registrador de número 00h (Chip ID) é possível verificar o número de identificação do PMIC. Os 4 bits mais significativos indicam o chip utilizado, 1110b indicam TPS65217C. Os 4 bits menos significativos indicam a revisão, 0000b indicam "Revision 1.0", 0001b indicam "Revision 1.1", etc.

Através desse barramento é possível fazer o controle do Power Path, através do registrador 01h (PPATH). É possível ligar ou desligar uma entrada, como USB ou AC, ou mesmo indicar a corrente máxima que será solicitada de cada uma das entradas, chegando a 2500mA para a entrada AC, e 1800mA para a USB.

Também é possível verificar o status do Power Good (PGOOD), controlar o processo de carga da bateria (veremos isso com muitos detalhes em artigos mais à frente), ajustar a tensão dos LDOs (DEFLDO1, DEFLDO2, etc), e muitas outras funções.

Quanto a comunicação, o frame possui como primeiro byte o número do registro dentro do dispositivo que se deseja trabalhar, e então o dado que se quer transferir (enviar ou receber).

beaglebone
Frame de dados I2C.

Assim como é comum em muitos dispositivos I2C, quando múltiplos dados são enviados, o número interno do registro (endereço interno) é incrementado automaticamente. Dessa forma, é possível fazer a configuração sequencial de múltiplos registros com uma instrução de escrita única.

O dispositivo também pode gerar uma interrupção externa. Esse sinal serve de indicação para a comunicação I2C, sendo devidamente interpretada por software.

beaglebone
Pino de interrupção do PMIC para o processador.

Para a BeagleBone Black, esse barramento já está conectado ao processador e está acessível por código. Não vamos entrar em detalhes dessa comunicação, mas vale a leitura da documentação para um correto controle.

beaglebone
Conexão I2C com o PMIC.

O barramento também é compartilhado com a memória 24LC32A (U7) e com o TDA19988 (U11).

beaglebone
Comunicação I2C com a memória.
beaglebone
Comunicação I2C com o TDA19988.

O que está por vir

No próximo artigo vamos continuar falando sobre o PMIC e suas características. Também vamos analisar com detalhes as tensões da BeagleBone Black e entender qual a função de cada uma.

Referências

Beagle Board Project  http://www.beagleboard.org/
BBB Esquemático  https://github.com/CircuitCo/BeagleBone-Black/blob/master/BBB_SCH.pdf?raw=true
LM7805  http://www.fairchildsemi.com/ds/LM/LM7805.pdf
LM317  http://www.fairchildsemi.com/ds/LM/LM317.pdf
Conversores Buck  http://en.wikipedia.org/wiki/Buck_converter

Aprenda mais sobre a BeagleBone Black

BeagleBone Black + Yocto

BeagleBone Black + Yocto Daisy (Versão 1.6)

BeagleBone Black + QT Embedded + Yocto

Compilando Android para a BeagleBone Black

Outros artigos da série

Hardware BeagleBone Black - Alimentação - Parte 2 >>
Licença Creative Commons Esta obra está licenciada com uma Licença Creative Commons Atribuição-CompartilhaIgual 4.0 Internacional.

Receba os melhores conteúdos sobre sistemas eletrônicos embarcados, dicas, tutoriais e promoções.

Beaglebone Black » Hardware BeagleBone Black - Alimentação - Parte 1
Comentários:
10 Comentários
recentes
antigos mais votados
Inline Feedbacks
View all comments
Ronaldo Lins
Ronaldo Lins
28/07/2015 10:47

Parabéns, Francesco!
Excelente artigo. Como os nossos amigos disseram anteriormente, é muito raro encontrar artigos de hardware com essa riqueza de detalhes.
Pra mim o PMIC é novidade e já estou buscando mais sobre o assunto.

Ramon J. Martins
Ramon J. Martins
09/04/2015 12:49

Oi pessoal, tenho um beagle bone black que está com um problema: esta desligando aos 5 min de funcionamento.
Tenho pouco conhecimento e andei lendo sobre e que parece que tem programação que resolva isso?

grato

Mário Wilson
01/08/2014 08:48

Parabéns pelo artigo Francesco Sacco, como o Caio disse, artigos que abordam as especificidades do hardware de Sistemas Embarcados são difíceis de se encontrar aqui no Brasil, geralmente temos que recorrer as documentações do fabricante e fóruns especializados.
A utilização de PMICs e Power Paths é uma realidade em projetos da área e possibilita portabilidade aos produtos, principalmente com a utilização de baterias!
Espero que você possa abordar a interface de controle entre processador e PMIC também, sinais de Wakeup e PowerButton são muito úteis para consumo de energia e modos de funcionamento.

Francesco Sacco
Reply to  Mário Wilson
01/08/2014 14:14

Olá Mário,

Concordo contigo, temos muito pouca informação sobre PMICs e Power Path.

Quando iniciamos o desenvolvimento desse artigo, imaginamos que seria apenas um para a alimentação. No entanto, é um assunto muito interessante e longo. O terceiro logo sai, e pelo visto não vai terminar nele. 🙂

O feedback do pessoal é importante para direcionarmos esses artigos. É importante dar mais foco no que o pessoal mais precisa.

Obrigado pelo seu retorno.
Um abraço.

Caio Pereira
Caio Pereira
01/08/2014 00:11

Muito Legal o tema como foi abordado! Realmente é difícil encontrar artigos de hardware na área de sist embarcados e principalmente na parte de alimentação que é muito importante!

Francesco Sacco
Reply to  Caio Pereira
01/08/2014 14:11

Olá Caio,

Obrigado pelo retorno. Realmente a idéia foi essa... temos bastante coisa sobre software, mas muito pouco sobre essas plataformas de alto desempenho.

Vamos ver se o pessoal gosta. 🙂
Um abraço.

trackback
01/10/2014 00:03

[…] apresentado em nosso primeiro artigo [3], a nossa BeagleBone Black possui um canal de comunicação I2C. Não vamos detalhar aqui o […]

trackback
24/08/2014 15:54

[…] Hardware BeagleBone Black – Alimentação – Parte 1 […]

trackback
13/08/2014 00:03

[…] com nossa análise detalhada do sistema de alimentação da plataforma BeagleBone Black. No primeiro artigo entendemos para que serve um PMIC, seu funcionamento e principais características. No segundo […]

trackback
04/08/2014 07:13

[…] mais no PMIC e fazer uma descrição das suas tensões. Para quem não leu nosso artigo anterior, a parte 1 começa explicando o funcionamento do […]

Talvez você goste:

Séries



Outros da Série

Menu

WEBINAR
 

Soluções inteligentes para acionamento de MOSFETs/IGBTs com família STDRIVE

Data: 08/10 às 15:00h - Apoio: STMicroelectronics
 
INSCREVA-SE AGORA »



 
close-link