Mostrando postagens com marcador pinagem. Mostrar todas as postagens
Mostrando postagens com marcador pinagem. Mostrar todas as postagens

segunda-feira, 23 de junho de 2014

Detalhes sobre o Arduino Uno



arduino mais - arduino UNO


Visão geral:


   O Arduino Uno é uma placa de microcontrolador baseado no ATmega328 ( datasheet ). Tem 14 pinos digitais de entrada / saída (dos quais 6 podem ser usados ​​como saídas PWM), 6 entradas analógicas, um de 16 MHz ressonador cerâmico, uma conexão USB, um conector de alimentação, um cabeçalho ICSP, e um botão de reset. Ele contém tudo o necessário para suportar o microcontrolador; basta conectá-lo a um computador com um cabo USB ou ligá-lo com um adaptador AC para DC ou bateria para começar.
   O Uno é diferente de todas as placas anteriores em que não usam o chip controlador USB-to-serial FTDI. Em vez disso, ele apresenta o Atmega16U2 ( Atmega8U2 até a versão R2) programado como um conversor USB para serial.

Revisão 2 tem um resistor de PullDown 8U2 HWB, tornando-o mais fácil de colocar em modo DFU .

Revisão 3 da placa tem os seguintes novos recursos: 
  • 1.0 pinagem: adicionado pino SDA e SCL que estão perto do pino AREF, e outros dois novos pinos colocados perto do pino RESET, o IOREF que permitem que os Shields se adaptem à tensão fornecida a partir da placa. No futuro, os escudos serão compatíveis tanto com a placa que usa o AVR, que opera com 5V, quanto com o Arduino que opera com 3.3V. O segundo é um pino não conectado, que está reservada para efeitos futuros. 
  • Circuito de RESET Stronger. 
  • Atmega 16U2 substituiu o 8U2.
"Uno" significa UM em italiano, e leva o nome para marcar o lançamento do Arduino 1.0. O Uno e a versão 1.0 são as versões de referência do Arduino. O Uno é o mais recente em uma série de placas Arduino USB, e o modelo de referência para a plataforma Arduino; para uma comparação com as versões anteriores, consulte o índice de placas Arduino.

Resumo


Microcontrolador:                                 ATmega328
Tensão de funcionamento:                    5V
Tensão de entrada (recomendado): 7-12V
Tensão de entrada (limites):                 6-20V
Digital I/O:                                          14 (dos quais 6 oferecem saída PWM)
Pinos de entrada analógica:                  6
Corrente DC por I / O:                        40 mA
Corrente DC no pino 3.3V:                 50 mA
Memória Flash:                                 32 KB ( ATmega328 ), dos quais 0,5 KB utilizados pelo carregador de inicialização
SRAM:                                               2 KB ( ATmega328 )
EEPROM:                                          1 KB ( ATmega328 )
Clock:                                                 16 MHz

Alimentação

   O Arduino Uno pode ser alimentado através da conexão USB ou com uma fonte de alimentação externa. A fonte de alimentação é selecionada automaticamente.
   A alimentação pode vir de um adaptador AC para DC ou bateria. O adaptador pode ser conectando com um  plugue de centro positivo 2,1 milímetros na entrada de alimentação da placa.  Pode-se alimentar a placa com uma bateria ligada diretamente nos pinos Gnd e Vin.
   A placa pode operar com alimentação externa de 6 a 20 Volts. Abaixo de 7V, o pino de 5V pode fornecer menos de cinco Volts e a placa pode ficar instável. Se usar mais do que 12V, o regulador de tensão pode superaquecer e danificar a placa. É recomendado de 7 a 12 Volts.

Os pinos de alimentação são os seguintes:


  • Vin - É um "jump" interno, fornece a mesma tensão que está sendo recebida na entrada de alimentação externa da placa (Não USB).
  • 5V - Fornece 5V regulados pelo regulador de tensão da placa.
  • 3V3 - Fornece 3,3V regulados pelo regulador de tensão da placa. Corrente máxima de 50 mA.
  • GND - Negativo/Terra.
  • IOREF – Este pino na placa Arduino fornece a referência de tensão com que o microcontrolador opera. Um shield configurado corretamente pode ler a tensão do pino IOREF e selecionar a fonte de alimentação adequada ou habilitar tradutores de tensão nas saídas para o trabalho com a 5V ou 3.3V.

Memória


   O ATmega328 tem 32 KB (com 0,5 KB utilizada para o bootloader). Ele também tem 2 KB de SRAM e 1 KB de EEPROM (que pode ser lido e escrito com a biblioteca EEPROM).

Entradas e Saídas


   Cada um dos 14 pinos digitais do Uno podem ser utilizados como uma entrada ou uma saída, usando  as funções pinMode (), digitalWrite (), e digitalRead() . Eles operam com 5 volts. Cada pino pode fornecer ou receber um máximo de 40 mA e tem um resistor pull-up interno (desconectado por padrão) de 20-50 kOhms. Além disso, alguns pinos têm funções especializadas:


  • Serial: 0 (RX) e 1 (TX). Usado para receber (RX) e transmitir (TX) dados seriais TTL. Estes pinos são ligados aos pinos correspondentes do USB-TTL chip serial ATmega8U2.
  • Interrupts externas: 2 e 3 - Estes pinos podem ser configurados para disparar uma interrupção on um valor baixo, uma borda de subida ou decida, ou uma mudança em valor. Veja a função attachInterrupt ( ) para obter detalhes.
  • PWM:. 3, 5, 6, 9, 10, 11 e fornecem saída PWM de 8 bits com a função analogWrite ().
  • SPI:. 10 (SS), 11 (MOSI), 12 (MISO), 13 (SCK) Estes pinos suportam comunicação SPI utilizando a biblioteca SPI .
  • LED: 13. Há um built-in LED conectado ao pino digital 13. Quando o pino está em valor alto, o LED está ligado, quando o pino esta em valor baixo, ele está desligado..
   O Uno tem 6 entradas analógicas, rotulados A0 a A5, cada um dos quais com 10 bits de resolução (i.e. 1024 valores diferentes). Por padrão, eles medem de terra para 5 volts, embora seja possível mudar o limite superior de sua faixa usando o pino AREF e a função analogReference ( ). Além disso, alguns pinos têm funcionalidades especializadas:

  • TWI: pino A4 ou SDA e pino A5 ou SCL – Suporte a comunicação TWI utilizando a biblioteca Wire.
  • Reset. Levar o pino reset em nivel baixo para resetar o microcontrolador. Tipicamente usado para adicionar um botão de reset para shields que escondem o botão da placa.
   Veja também o mapeamento entre os pinos do Arduino e portos ATmega328. O mapeamento para o Atmega8, 168, e 328 são idênticos.

Comunicação

   O Arduino Uno possui uma série de facilidades para se comunicar com um computador, outro Arduino, ou outros microcontroladores. O ATmega328 fornece comunicação serial UART TTL (5V) que está disponível nos pinos digitais 0 (RX) e 1 (TX). Um ATmega8U2 na placa canaliza esta comunicação para a USB e aparece como uma porta virtual para o software no computador. O firmware do '8U2 utiliza os drivers padrão USB COM e nenhum driver externo é necessário. Entretanto, no Windows, um arquivo .inf é necessário. Ainda faltam as instruções específicas mas em breve estarão disponíveis. O software do Arduino inclui um monitor serial que permite dados textuais ser enviados e recebidos da placa. LEDs conectados ao RX e TX piscarão enquanto dados estiverem sido transmitidos pelo chip USB-para-serial e pela conexão USB (mas não para comunicação serial nos pinos 0 e 1).
   A biblioteca SoftwareSerial permite comunicação serial em qualquer um dos pinos digitais do Uno.
   O ATmega328 também suporta I2C (TWI) e comunicação SPI. O software Arduino inclui uma biblioteca Wire para simplificar o uso do I2C bus; veja a documentação para mais detalhes. Para a comunicação SPI, use a biblioteca SPI .

Programação

   O Arduino Uno pode ser programado com o software Arduino. Selecione “Arduino Uno" a partir do menu Ferramentas> Placa (de acordo com o microcontrolador em sua placa). Para mais detalhes, consulte as referências e tutoriais.
   O ATmega328 no Arduino Uno vem pré-gravado com um bootloader que permite o envio de novos códigos sem o uso de um programador de hardware externo. Ele se comunica com o protocolo original STK500 (referências , arquivos de linguagem C ).
   Você também pode ignorar o bootloader e programar o microcontrolador através do conector ICSP (programação In-Circuit Serial), veja estas instruções para mais detalhes.
   O ATmega16U2 (ou 8U2 no rev1 e placas Rev2) código fonte do firmware está disponível. O ATmega16U2/8U2 é carregado com um bootloader DFU, que pode ser ativado por:


  • Em placas Rev1: conectar o jumper de solda na parte traseira da placa (perto o mapa de Itália) e, em seguida, redefinir o 8U2.
  • Em placas Rev2 ou posteriores: existe um resistor PullDown 8U2/16U2 HWB, tornando-a mais fácil de colocar em modo DFU.
   Você pode então usar o software da Atmel FLIP (Windows) ou o programador DFU (Mac OS X e Linux) para carregar um novo firmware. Ou você pode usar o cabeçalho ISP com um programador externo (substituindo o bootloader DFU). Veja este tutorial contribuído pelo usuário para obter mais informações.

Reset automatico por software

   Ao invés de necessitar do pressionamento físico de um botão antes de um upload, o Arduino Uno é desenvolvido de maneira que permita que esta operação seja feita por meio do software rodando em um computador. Uma das linhas de controle de fluxo do hardware (DTR) do ATmega8U2 é conectado à linha de reset do ATmega328 através de um capacitor de 100nF. Quando esta linha é declarada (rebaixada) a linha de reset cai o suficiente para resetar o chip. O software do Arduino utiliza esta capacidade para permitir o envio de código novo simplesmente pressionando o botão de upload na IDE. Isto significa que o bootloader pode ter um intervalo mais curto, uma vez que o rebaixamento do DTR pode ser melhor coordenado com o início do upload.

   Esta configuração tem outras implicações. Quando o Uno é conectado a um computador rodando Mac OS X ou Linux, ele é resetado cada vez que uma conexão é estabelecida com o software (via USB). Durante o próximo meio segundo o bootloader estará rodando no Uno. Uma vez que ele está programado para ignorar dados malformados (i.e. qualquer coisa diferente do upload de um novo código), ele irá interceptar os primeiros bytes de informação após a abertura da conexão. Se um programa rodando na placa recebe alguma configuração ou outra informação quando começa a rodar esteja seguro de que o software com o qual ela se comunica espere por um segundo antes de começar a enviar dados.

   O Uno contem uma trilha que pode ser interrompida (cortada fisicamente) para desabilitar o auto-reset. Os conectores de cada lado da trilha podem ser soldados para reabilitar esta função. Ela está identificada como "RESET-EN". Você também pode desabilitar o auto-reset conectando um resistor de 110Ω do 5V à linha de reset, veja este tópico do fórum para mais detalhes.

Proteção contra sobre-corrente na USB

   O Arduino Uno possui um polyfuse resetável que protege a porta USB do seu computador contra sobre-corrente e curtos circuitos. Embora muitos computadores tenham sua própria proteção interna, o fuso fornece uma camada a mais de proteção. Se mais de 500mA forem aplicados a porta USB ele automaticamente irá interromper a conexão até que o curto ou a sobrecarga seja removido.

Características físicas

   A largura e o comprimento máximos do PCB do Uno são 68,58 e 53,34mm respectivamente (2,7" x 2,1"), com os conectores USB e de alimentação extendendo-se além destas dimensões. Quatro orifícios para parafusos permitem que a placa seja fixada a uma superfície ou encapsulamento. Verifique que a distância entre os pinos digitais 7 e 8 é de 160mil (milésimos de polegada ou 0,16"), não é nem mesmo um múltiplo dos 100mil que separam os outros pinos.


quarta-feira, 28 de maio de 2014

Temporizador 555.

NE555

   O temporizador 555 é um dos mais populares e versáteis circuitos integrados jamais produzidos. É encapsulado em um invólucro duplo em linha (DIP) de 8 pinos Da mesma família de temporizadores temos ainda o CI 556 composto pela combinação de dois temporizadores 555 combinados em um encapsulamento de 14 pinos DIP. O CI 558 é um encapsulamento de 16 pinos DIP que combina quatro temporizadores 555. Também estão disponíveis versões de ultra baixa potência como o CI 7555, que utiliza um número menor de componentes externos e tem menor consumo de energia.

   Curiosidade: o nome "555" foi adotado em alusão ao fato de que existe uma rede interna (divisor de tensão) formada por três resistores de 5kΩ que servem de referência de tensão para os comparadores do circuito integrado.

Pinagem

pinagem NE555


1 – GND
2 – Trigger (Disparador – ativa com baixo nível de tensão)
3 – Output (Saída)
4 – Reset (Desabilita o funcionamento do 555 com baixo nível de tensão)
5 – Control Voltage (Tensão de controle)
6 – Threshold (Limiar)
7 – Discharge (Descarga)
8 – VCC


O 555 tem três modos de operação:

FUNCIONAMENTO BÁSICO

   Composto de um Flip-Flop do tipo RS, dois comparadores simples e um transistor de descarga, o 555 pode trabalhar em dois modos de operação: monoestável (possui um estado estável - timer) e astável (não possui estado estável - oscilador). Sua tensão de alimentação situa-se entre 4,5V a 16V e sua saída pode fornecer ou drenar correntes de até 200mA.

Diagrama: Circuito interno simplificado de um CI 555.
O resistor R e capacitor C exibidos externamente, são utilizados na maioria das aplicações do CI como timer.

Flip Flop RS Básico:


Funcionamento Básico do 555:

Geralmente o pino 5, entrada de controle, não é conectado, deixando assim a tensão de controle fixa em 2/3Vcc.

   O disparador (trigger) está conectado à entrada inversora do comparador 2. A entrada não-inversora tem uma tensão fixa de 1/3Vcc. Toda vez que a tensão do disparador for menor que 1/3Vcc, a saída do comparador vai a nível alto, setando o flip-flop, deixando assim a saída Q (pino 3) em nível alto. Como /Q estará em nível baixo, o transistor de descarga TR1 estará em corte (chave aberta).
   O reset (pino 4) habilita o 555 a funcionar normalmente com nível alto e o desabilita com nível baixo. Geralmente na maioria das aplicações, este pino é ligado à Vcc.
   Toda vez que a tensão de limiar (threshold, pino 6) exceder a tensão de controle (2/3Vcc), a saída do comparador 1 vai para nível alto, resetando o flip-flop, deixando assim a saída Q (pino 3) em nível baixo. Como /Q estará em nível alto, o transistor de descarga TR1 estará em saturação (chave fechada), realizando assim a descarga da tensão armazenada no capacitor.

Modo monoestável: nesta configuração, o CI 555 funciona como um disparador. Suas aplicações incluem temporizadores, detector de pulso, chaves imunes a ruído, interruptores de toque, etc.


Circuito monoestável


Gráfico: Formas de onda típcas para circuito monoestável.

Gráfico: Duração do pulso de saída em função de RAe C.

Funcionamento:

   Quando o pino de disparo (trigger) recebe um pulso de nível baixo, a tensão na entrada não-inversora (+1/3Vcc) é maior que a tensão na entrada inversora (0V) no comparador 2. Isto faz com que a sua saída vá a nível alto, setando o flip-flop (nível alto na saída Q e nível baixo na saída /Q). Assim, a saída do 555 vai para nível alto e internamente o transistor de descarga permanece em corte (chave aberta). Desta maneira, o capacitor “C” se carrega por RA.
   A tensão do capacitor é aplicada à entrada ao pino Threshold (limiar), sendo que esta tensão aumenta até que exceda a tensão de controle (2/3Vcc). Quando isto ocorre, a saída do comparador 1 vai a nível alto, resetando o flip-flop (nível baixo na saída Q e nível alto na saída /Q). Assim, a saída do 555 vai para nível baixo e internamente o transistor de descarga fica em saturação (chave fechada) descarregando o capacitor “C”, que fica “pronto” para uma nova temporização quando for recebido um novo pulso no pino de disparo (trigger).

Diagrama: Esquema de funcionamento do 555 no modo monoestável.

   Quanto maior a constante de tempo RA.C, mais tempo leva para a tensão do capacitor atingir 2/3Vcc (tensão de controle). Isto determina a largura do pulso ou a temporização na saída, que é dada por: 

  T =1,1.RA.C 

   Onde T é dado em segundos, RA em ohms e C em farads.

   A tensão de controle, geralmente de 2/3Vcc, pode ser desacoplada através de um outro capacitor ligado ao pino 5 e à terra (tipicamente de 10nF), para melhorar a imunidade a ruído.
   Alterando os valores de RA e C, o período da temporização pode ser controlado. Porém, em uma temporização acima de 5 minutos a confiabilidade fica comprometida, devido aos altos valores de RA e C necessários para esta temporização. Com relação ao valor máximo de RA, geralmente os fabricantes recomendam um máximo de 20MΩ, mas acima de 1MΩ a precisão fica comprometida. Portanto, em aplicações gerais, o valor de RA deve ficar entre 1kΩ e 1MΩ .
   Não há limites para o valor de C, a não ser o seu custo. Apenas notar que dependendo do valor da capacitância do capacitor eletrolítico e de sua qualidade, ele pode apresentar correntes de fuga que podem distorcer os períodos calculados das temporizações. 

A seguir um circuito de aplicação para o 555 no modo Monoestável (timer):

Diagrama: Circuito de um timer disparado ao pressionar o interruptor.


Timer Seqüencial

   É possível cascatear vários estágios de circuitos monoestáveis, para gerar um timer seqüencial:


Diagrama: Circuito de um timer seqüencial, disparado ao pressionar o interruptor “S”.
Gráfico: Diagrama

Gráfico: Diagrama de tempos para cada estágio do timer seqüencial.



Modo astável: o CI 555 opera como um oscilador. Os usos incluem pisca-pisca de LED, geradores de pulso, relógios, geradores de tom, alarmes de segurança, etc.


circuito astável
Nota A: a utilização de um capacitor de desacoplamento pode melhorar o desempenho do circuito, mas deve ser avaliada para cada aplicação.

Gráfico: Formas de onda típicas para circuito astável.


Gráfico: Freqüência de operação em função de RA, RB e C.


Funcionamento:

   Como ponto de partida, vamos supor que inicialmente o flip-flop está setado (nível alto na saída Q e nível baixo na saída /Q).Assim sendo, o transistor interno de descarga está em corte (chave aberta) e o capacitor “C” está se carregando através dos resistores RA e RB em série.
   A tensão do capacitor “C” é aplicada aos pinos de disparo (trigger) e limiar (threshold). Assim, quando o capacitor se carregar e exceder a tensão de controle (2/3Vcc), irá fazer com que a tensão na entrada não-inversora do comparador 1 seja maior que a tensão na sua entrada inversora, isso faz com que sua saída vá a nível alto, resetando o flip-flop (nível baixo na saída Q e nível alto na saída /Q).
   Com nível alto em /Q, o transistor interno de descarga entra em saturação (chave fechada) fazendo com que o capacitor “C” se descarregue por RB.
   Agora, a tensão no capacitor diminui até que fique menor que a tensão da entrada não inversora do comparador 2 (1/3Vcc). Neste momento a saída do comparador 2 vai a nível alto, setando o flip-flop e voltando ao ponto de partida (reinicia o ciclo indefinidamente).
   A tensão no capacitor “C” varia entre 1/3Vcc e 2/3Vcc.

Diagrama: Esquema de funcionamento do 555 no modo astável.

   A duração do período alto ou tempo de carga é dada por:

tH = período do sinal de saída em nível alto (+duty cycle)

   E a duração do período baixo ou tempo de descarga é dada por:

tL = período do sinal de saída em nível baixo (-duty cycle)

A freqüência pode ser calculada por:

f = freqüência

   A seguir um circuito de aplicação para o 555 no modo astável (oscilador):


Diagrama: circuito astável.

   No circuito anterior, como se pode observar pelas fórmulas, teremos sempre o sinal de saída com duração do período alto (+duty cycle) maior que a duração do período baixo (-duty cycle). Caso seja desejado montar um oscilador com maior flexibilidade com relação ao ciclo de trabalho (razão da duração dos períodos de alto e baixo), pode-se utilizar um circuito como o sugerido a seguir:



Diagrama: circuito astável com maior flexibilidade do ciclo de trabalho do sinal de saída.
Neste

   Neste circuito, com a adição de um diodo, o capacitor carrega-se através do resistor RA (R1) e descarrega-se pelo resistor RB (R2). Assim, as fórmulas para projeto deste circuito ficam:

Duração do período alto ou tempo de carga:

th = período do sinal de saída em nível alto (+duty cycle)

Duração do período baixo ou tempo de descarga:

TL = período do sinal de saída em nível baixo (-duty cycle)

Freqüência:

f = freqüência

DETECTOR DE FALTA DE PULSO

   O circuito mostrado a seguir pode ser usado para detectar falta de pulso ou um espaçamento longo e anormal entre um consecutivo trem de pulsos.

Diagrama: Circuito detector de falta de pulso.

   Seu funcionamento baseia-se na configuração de um circuito monoestável (timer) que é continuamente “re-disparado” por um trem de pulsos aplicados na entrada, de forma que o espaçamento entre estes pulsos de entrada sejam menores que o intervalo de tempo projetado para o circuito monoestável.
   Um grande intervalo entre os pulsos de entrada ou mesmo a falta de um dos pulsos, permite que o tempo de intervalo do
monoestável seja completado, gerando uma saída com nível baixo de tensão, conforme ilustrado nos gráficos a seguir.

Gráfico: Formas de onda para circuito detector de falta de pulso.

   Este circuito pode ter grande utilidade na área de automação, como exemplo, como em um sistema validação de saída de peças de uma etapa de prensagem, onde na saída das peças um sensor apropriado geraria o trem de pulsos para a entrada do circuito, sendo que quando uma peça ficar presa no processo, imediatamente a saída do circuito alterna para um nível baixo de tensão, que poderia desarmar um relé de proteção, desligando a máquina.

MODULADOR DE PULSOS

   Utilizando as configurações astável e monoestável, podemos utilizar o pino 5 (control voltage) do CI 555 como entrada de um sinal de tensão externo de modo a criar circuitos de modulação de pulsos. Alterando o nível de tensão aplicada ao pino 5 (control voltage), é alterado a tensão de controle dos comparadores internos, fazendo com que a largura dos pulsos presentes na saída do circuito alterem dinamicamente.

Modulador de Posição de Pulso (Pulse-Position Modulation):



Diagrama: Circuito para Modulação de Posição de Pulso.
Nota A: o sinal de entrada para modulação pode ser aplicado diretamente ou acoplado ao pino 5 através de um capacitor.
Caso aplicado diretamente, os efeitos sobre a polarização dos circuitos internos deverão ser considerados.


Gráfico: Formas de onda para circuito modulador de posição de pulso.


   Este circuito consiste basicamente de um oscilador (astável), cuja tensão aplicada na entrada CONT (pino 5), controla a duração dos pulsos do oscilador. Quanto maior a tensão presente na entrada CONT, menor a freqüência do sinal de saída.

   Este circuito também pode ser chamado de VCO (Voltage Controlled Oscilator) ou Oscilador Controlado por tensão.

Modulador de Largura de Pulso (Pulse-Width Modulation - PWM):


Diagrama: Circuito para Modulação de Largura de Pulso - PWM.
Nota A: o sinal de entrada para modulação pode ser aplicado diretamente ou acoplado ao pino 5 através de um capacitor.
Caso aplicado diretamente, os efeitos sobre a polarização dos circuitos internos deverão ser considerados.

Gráfico: Formas de onda para circuito modulador de largura de pulso.

   Neste circuito, a operação de um timer (monoestável) é modificada dinamicamente pela tensão aplicada na entrada CONT (pino 5). Um trem contínuo e regular de pulsos aplicados à entrada de disparo (trigger, pino 2), dispara continuamente o circuito monoestável, e a tensão aplicada na entrada CONT (controle, pino 5) modula então a tensão de controle interna, alterando a duração do nível alto do sinal de saída.
   Neste caso, a freqüência do sinal de saída é a mesma do sinal de entrada aplicado no pino 2, sendo modulado então a razão entre o períodos de nível alto e baixo do sinal de saída.

Modo biestável: o CI 555 pode operar como um flip-flop, se o pino DIS não for conectado e se não for utilizado capacitor. As aplicações incluem interruptores imunes a ruído, etc.


Valeu galera! espero que tenha gostado desse post!