3 aula do curso de automação - Arduino

1,805 views

Published on

Published in: Education
0 Comments
3 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total views
1,805
On SlideShare
0
From Embeds
0
Number of Embeds
6
Actions
Shares
0
Downloads
261
Comments
0
Likes
3
Embeds 0
No embeds

No notes for slide

3 aula do curso de automação - Arduino

  1. 1. Curso de Automação Arduino Aula 03 Faculdade Católica Rainha do Sertão 1
  2. 2. Conteúdo • Introdução ao arduino -Software/Hardware • Tipos de dados • Operações basicas • Funções Logicas • Sintaxe básica • Funções e principais biblioteca Faculdade Católica Rainha do Sertão 2
  3. 3. Introdução ao Arduino O que é um Arduino? É uma plataforma eletrônica de hardware e software livre, onde tem controle I/O baseada no microcontrolador Atmega (Atmel), que serve de controle para diversos outros sistemas. É tem uma linguagem de programação padrão em C/C++. Faculdade Católica Rainha do Sertão 3
  4. 4. Introdução ao Arduino Comparativo de velocidade com AVR, 8051 e pic16f. Fonte: http://www.arnerobotics.com.br/eletronica/Microcontr oladores_AVR_basico.htm Faculdade Católica Rainha do Sertão 4
  5. 5. Introdução ao Arduino - Hardware Faculdade Católica Rainha do Sertão 5
  6. 6. Introdução ao Arduino - Hardware • Fonte de Alimentação Responsável por receber a energia de alimentação externa, que pode ter uma tensão de no mínimo 6 Volts a 12 Volts. A fonte filtra e depois regula a tensão de entrada para duas saídas: 5 Volts e 3,3 Volts. O requisito deste bloco é entregar as tensões de 5 e 3,3 Volts para que a CPU e os demais circuitos funcionem. Faculdade Católica Rainha do Sertão 6
  7. 7. Introdução ao Arduino - Hardware • Núcleo CPU ATMega Linha de chips da Atmel - ATMega8, ATMega162 e ATMega328p. Esses modelos diferem na quantidade de memória de programa (ROM) e na configuração dos módulos de entrada e saída disponíveis. Então é onde está localizado o chip que possui todo hardware para obter dados externos, processar esses dados e devolver para o mundo externo. Faculdade Católica Rainha do Sertão 7
  8. 8. Introdução ao Arduino - Hardware • Entradas e Saídas Ex: ATMega8. Os 28 pinos deste micro controlador são divididos da seguinte maneira: • • • • • 14 pinos digitais de entrada ou saída (programáveis) 6 pinos de entrada analógica ou entrada/saída digital (programáveis) 5 pinos de alimentação (gnd, 5V, ref analógica) 1 pino de reset. 2 pinos para conectar o cristal oscilador. Faculdade Católica Rainha do Sertão 8
  9. 9. Introdução ao Arduino – Entrada/Saída • Entrada digital Possui 14 pinos digital e mais 6 antológicos, que é responsável por nos informar apenas se existe ou não uma tensão aplicada em seu pino de 0(zero) ou 5 volts. Essa função é utilizada geralmente para identificar se um botão está pressionado, ou um sensor está "sentindo" alguma coisa no mundo externo. Assim note que a função de entrada digital apenas entrega 0 ou 1. Faculdade Católica Rainha do Sertão 9
  10. 10. Introdução ao Arduino – Entrada/Saída • Saída digital Com uma saída digital podemos fazer com que um pino libere 0 volts ou 5 volts. Com um pino programado como saída digital, podemos acender um led, ligar um relé, acionar um motor, dentre diversas outras coisas. Faculdade Católica Rainha do Sertão 10
  11. 11. Introdução ao Arduino – Entrada/Saída • Entradas Analógicas Temos disponíveis no Arduino 6 entradas analógicas. Diferente da entrada digital a entrada analógica é capaz de medir a tensão aplicada em seus pinos. Através da entrada analógica, conseguimos utilizar sensores que convertem alguma grandeza física em um valor de tensão que depois é lido pela entrada analógica. Faculdade Católica Rainha do Sertão 11
  12. 12. Introdução ao Arduino – Entrada/Saída • Pinos com funções especiais PWM: Tratado como saída analógica, na verdade é uma saída digital que gera um sinal alternado (0 e 1) onde o tempo que o pino fica em nível 1 (ligado) é controlado. É usado para controlar velocidade de motores, ou gerar tensões com valores controlados pelo programa. Pinos 3, 5, 6, 9, 10 e 11 Porta Serial USART: Podemos usar um pino para transmitir e um pino para receber dados no formato serial assíncrono (USART). Podemos conectar um módulo de transmissão de dados via bluetooth por exemplo e nos comunicarmos com o Arduino remotamente. Pinos 0 (rx recebe dados) e pino 1 (tx envia dados). Porta SPI: É um padrão de comunicação serial Síncrono, bem mais rápido que a USART. É nessa porta que conectamos cartões de memória (SD) e muitas outras coisas. Pinos 10 (SS), 11 (MOSI), 12 (MISO) e 13 (SCK). Faculdade Católica Rainha do Sertão 12
  13. 13. Introdução ao Arduino - Software • As funções da IDE do Arduino são basicamente duas: Permitir o desenvolvimento de um software e enviá-lo à placa para que possa ser executado. Faculdade Católica Rainha do Sertão 13
  14. 14. Introdução ao Arduino - Software - IDE do Arduino Faculdade Católica Rainha do Sertão 14
  15. 15. Programação Faculdade Católica Rainha do Sertão 15
  16. 16. Comentários sobre o programa A função setup serve para inicialização da placa e do programa. Esta sessão é executada uma vez quando a placa é ligada ou resetada através do botão. Aqui, informamos para o hardware da placa o que vamos utilizar dele. Por exemplo, vamos informar para a placa que o pino 13 será uma saída digital onde está conectado um LED (no Arduino UNO o pino 13 possui um led integrado). Faculdade Católica Rainha do Sertão 16
  17. 17. Comentários sobre o programa A função loop é como se fosse a main () da placa. O programa escrito dentro da função loop é executado indefinidamente, ou seja, ao terminar a execução da última linha desta função, o programa inicia novamente a partir da primeira linha da função loop e continua a executar até que a placa seja desligada ou o botão de reset seja pressionado. Faculdade Católica Rainha do Sertão 17
  18. 18. Comentários sobre o programa Analisando o resto do programa, o comando digitalWrite escreve na saída do pino 13 o nível de tensão HIGH (5v), acendendo o Led. O comando delay é apenas para o programa aguardar 1000 milésimos. Em seguida, o nível de tensão é alterado para LOW (0v) e o Led apaga. E assim é repetido infinitamente, até ser desligado. Faculdade Católica Rainha do Sertão 18
  19. 19. Utilizando o Proteus - ISIS Obs:Primeiro devemos saber qual a tensão necessária para acender o Led. Para isso utilizamos a tabela abaixo, sendo que cada cor tem a sua tensão específica Sabemos que a porta digital escreve HIGH (5v) ou LOW (0v). Logo, se colocarmos 5v o Led irá queimar. Portanto devemos colocar um resistor em série com o Led para limitarmos a corrente que passa por ele. Essa corrente deve ser de algo em torno de 20mA. Assim, utilizando um pouquinho de teoria de circuitos temos: R = resistor Vfonte = tensão de entrada Vled = tensão do led Iled = Corrente do led Faculdade Católica Rainha do Sertão 19
  20. 20. Exemplo: R= ? Vfonte = 5v Vled = 2 Iled = 0,015 Qual a resistência utilizada no led? Faculdade Católica Rainha do Sertão 20
  21. 21. Como acender um LED no Proteus- ISIS Faculdade Católica Rainha do Sertão 21
  22. 22. Outros comando As principais funções para controlar o arduíno: pinMode (pin, mode): Configura o pino especificado para que se comporte como entrada ou saída, sendo Pin = número do pino e mode = INPUT (entrada)ou OUTPUT(saída). digitalWrite (pin,value): escreve um valor HIGH ou LOW em um pino digital. Se o pino foi configurado como saída sua voltagem será determinada ao valor correspondente: 5V para HIGH e 0V para LOW. analogWrite (pin, value): Escreve um valor analógico (onda PWM, explicaremos mais abaixo). Pode ser utilizada para acender um LED variando o brilho ou girar um motor a velocidade variável. Após realizar essa função o pino vai gerar uma onda quadrada estável com ciclo de rendimento especificado até que o próximo analogWrite() seja realizado (ou que seja realizado um digitalRead() ou digitalWrite() no mesmo pino). Faculdade Católica Rainha do Sertão 22
  23. 23. Outros comando Int analogRead (pin): Lê o valor de um pino analógico especificado. Pode mapear voltagens entre 0 a 5v. int digitalRead (pin): Lê o valor de um pino digital especificado, HIGH ou LOW. Pin = numero do pino. Retorna HIGH ou LOW. Faculdade Católica Rainha do Sertão 23
  24. 24. Tipos de Dados É a modelagem como ele é inserido no seu software, como ele se comporta, e quantidade utilizada de espaço e dentre outros. Boolean Um byte de memória. (Verdadeiro ou falso) Char Um byte de memoria. ‘A’ para um caracteres, “ABC” para vários. Unsigned char Não utiliza sinal negativo. E codifica numero de 0 a 255. Unsigned int Não utiliza sinal negativo. Int Utiliza sinal negativo e positivo Faculdade Católica Rainha do Sertão 24
  25. 25. Operações básica e funções logica Operações aritméticas Operações logica = Atribuição - Subtração + Soma * Multiplicação / Divisão % Modulo Operações de comparação Sintaxe ==(igual) > ; != <= // < >= /**/ Faculdade Católica Rainha do Sertão 25
  26. 26. Operações básica e funções logica #Define = Ele Define um nome a um valor constante antes q o programas seja compilado. Não ocupam qualquer espaço de memoria do programa do chip e não uitliza “;”. Por exemplo: com uma constante poderemos definir que verdadeiro não será true, mas a palavra "sim". Outro exemplo: Também podemos definir que o máximo de posições que um vetor vai ter será 1000, então criamos uma constante chamada "max". Pronto, agora não precisaremos mais nos lembrar que um vetor terá 1000 posições, basta criar o vetor e no tamanho dele indicamos max. #include = E usado para incluir biblioteca externas em seu sketch . Faculdade Católica Rainha do Sertão 26
  27. 27. Biblioteca EEPROM – leitura e escrita para o armazenamento “permanente”. Liquidcrystal – Para controlar LCD’s SERVO – Para controle de servo mortores SoftwareSerial – Comunicação serial em qualquer pino digital. Stepper – para controle de stepper motors Faculdade Católica Rainha do Sertão 27
  28. 28. Exercício! Faculdade Católica Rainha do Sertão 28
  29. 29. Tudo que um AVR faz um PIC também pode fazer, a diferença esta no método de como fazer, e do programador. Faculdade Católica Rainha do Sertão 29

×