1 / 157

CURSO DE ARDUINO AUTOMAÇÃO & ROBÓTICA

CURSO DE ARDUINO AUTOMAÇÃO & ROBÓTICA. CARACTERÍSTICAS E SIMPLICIDADE. Utiliza microcontrolador AtMEGA 8,168, 328,1280, 2560. RISC - Reduced Instruction Set Computer ou Computador com um Conjunto Reduzido de Instruções. 20 MIPS (milhões de instruções por segundo).

kirra
Download Presentation

CURSO DE ARDUINO AUTOMAÇÃO & ROBÓTICA

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. CURSO DE ARDUINO AUTOMAÇÃO & ROBÓTICA

  2. CARACTERÍSTICAS E SIMPLICIDADE • Utiliza microcontrolador AtMEGA 8,168, 328,1280, 2560. • RISC - ReducedInstruction Set Computer ou Computador com um Conjunto Reduzido de Instruções. • 20 MIPS (milhões de instruções por segundo). • Memória flash: 8kb,16kb, 32kb, 128kb, 256kb. • 14 portas digitais • 6 portas analógicas • Oferece um IDE e bibliotecas de alto nível • Hardware e SoftwareOpen-Source • Programado em C/C++ • Transferência de firmware via USB

  3. TIPOS DE ARDUINO • Arduino 2009 • Arduino Mega • Arduino UNO • Arduino ADK (Google ADK - Android) • Arduino BT • ArduinoNano • LilyPad

  4. TIPOS DE ARDUINO

  5. CARACTERÍSTICAS DO ARDUINO UNO

  6. ARDUINO UNO

  7. RODANDO O PROGRAMA BLINK INSTALANDO O ARDUINO E O SKETCH CONFIGURANDO O MODELO DO ARDUINO ESCOLHENDOA PORTA SERIAL

  8. INTERFACE DA IDE

  9. PROTOBOARD

  10. Esquema

  11. PORTAS DIGITAIS Trabalha com 0 e 1 na lógica binária - De 0 à 0,8 volts = 0 • De 2 à 5 volts = 1

  12. PORTAS ANALÓGICAS • Valor lido é análogo à tensão • 0 volts = 0 • 2,5 volts = 512 • 5 volts = 1023 • Conversor A/D de 10 bits: 0 à 1023

  13. Porta PWM

  14. Na prática • Ligamos componentes em portas digitais comuns, pwm ou analógica. • Fazemos leitura e escrita nestas portas a fim de obter um dado ou um determinado comportamento. • Processamos os dados no microcontrolador.

  15. Alguns exemplos de componentes

  16. PROGRAMAÇÃO Dois métodos são obrigatórios: void setup(){ } void loop(){ } setup() : será executado uma única vez ao ligar a placa loop() : será executado infinitamente

  17. PROGRAMAÇÃO • Comando pinMode() • Comando digitalWrite() • Comando digitalRead() • Comando analogRead() • Comando analogWrite()

  18. LED • O diodo emissor de luz conhecido pela sigla LED (Light EmittingDiode). • Sua funcionalidade básica é a emissão de luz

  19. RESISTOR • Função: limitar a quantidade de corrente elétrica. • Resistência elétrica é a oposição à passagem de uma corrente elétrica, medida em ohms. • O valor da resistência de um resistor pode ser identificado de acordo com as cores apresentadas em sua cápsula.

  20. RESISTOR

  21. RESISTOR

  22. EXPERIÊNCIA 1 PISCA LED Que resistor devemos utilizar? Arduino – saída: 5 volts Led vermelho: 1,6 volts Corrente do Led: aprox. 20 mA Aplicando a lei de Ohm: R – é a resistência elétrica medida em ohm (Ω)U – é a tensão medida em volt (V)i – é a corrente elétrica medida em ampère (A) U = R . i R = U / i R = (5,0 – 1,6) / 0,020 R = 3,4 / 0,020 R = 170 omhs Utilizar resistor 170 omhs

  23. Materiais necessários: • Arduino • Protoboard • Fios de conexão • LED • Resistor de 220 ohms

  24. Esquema

  25. Exercícios • Altere o programa anterior para 3 LEDs piscarem sequencialmente.

  26. CLASSE SERIAL • Permite a comunicação do Arduino com o computador através da porta serial (via USB). • Instruções: • Serial.begin(9600); // inicia a comunicação do Arduino com o computador utilizando a velocidade 9600 bits por segundo • Serial.println(x); //--- envia o valor de x como decimal para o computador

  27. LDR (Light Dependent Resistor) • Um LDR é um transdutor de entrada (sensor) que converte a luz em valores de resistência • É feito de sulfeto de cádmio (CdS) ou seleneto de cádmio (CdSe). • Sua resistência diminui quando a luz é muito alta, e quando a luz é baixa, a resistência no LDR aumenta.

  28. EXPERIÊNCIA 2 – LUZ AMBIENTE • Materiais necessários: • Arduino • Protoboard • Fios de conexão • LDR • Resistor de 10k

  29. Esquema

  30. Exercícios Acender o LED quando o ambiente estiver escuro e apagar o LED quando o ambiente estiver claro.

  31. CHAVE TÁCTIL • Também conhecida como Push Button ou Chave de Toque, fecha contato quando pressionada

  32. EXPERIÊNCIA 3 ACENDER LED COM CHAVE TÁCTIL Materiais necessários: Arduino Protoboard Fios de conexão Botão táctil Resistor de 10k LED Resistor de 220 ohm

  33. Exercícios O LED devera ficar apagado quando clicar na chave táctil ele se acende após clicar novamente ele se apaga.

  34. Os Símbolos usados na construção de funções são os seguintes: { } Dentro das chaves vão os procedimentos (statements) que a função deve executar; ; - O ponto-e-vírgula é usado para marcar o final de um Procedimento; // - comentário de uma linha: qualquer caracter depois das duas barras é ignorado pelo programa; /*...*/ - comentário em várias linhas: qualquer texto colocado entre esses símbolos também é ignorado pelo programa

  35. Exemplo: /* Nesse código a função setup( ) ativa a porta serial em 9600 bits/s e a função loop( ) fica transmitindo a frase ‘Hello World!’ pela porta serial a cada 2 segundos. */ void setup( ){ Serial.begin(9600); // inicializa a porta serial } void loop( ){ Serial.println(“ Hello World! “); // transmite frase delay(2000); }

  36. Exemplo: /* Esse programa escrito em C do Arduino aumenta e diminui gradativamente o brilho de um LED conectado no pino PWM 10 do Arduino. */ int i=0; // declaração da variável global inteira i iniciada com 0 voidledOn( ); // declaração da função criada ledOn do tipo void void setup( ) { pinMode(10,OUTPUT); // aqui 2 parâmetros são passados à função pinMode( ) } void loop( ){ for (i=0; i <= 255; i++) ledOn( ); // aumenta o brilho do led for (i=255; i >= 0; i--) ledOn( ); // diminui o brilho do led } voidledOn( ){ // função que acende o led analogWrite (10, i); // o nº do pino e o valor de i são passados à função analogWrite( ) delay (10); }

  37. if...else Ao se acrescentar mais um bloco de instruções no loop do comando if pode-se criar o comando i f...else , para fazer um teste novo quando o resultado da expressão for falsa. if (expressão) { bloco de instruções1; // se ‘expressão’ for verdadeira, ‘bloco de instruções1’ é executado } else { bloco de instruções2; // se ‘expressão’ for falsa, ‘bloco de instruções2’ é executado }

  38. if (expressão1) { bloco de comandos1; } elseif (expressão2) { bloco de instruções2; } else { bloco de comandos3; }

  39. switch (expressão) { case 1: bloco de instruções1; break; case 2: bloco de instruções2; break; case 3: bloco de instruções3; break; default: bloco de instruções4; }

  40. while Uma das operações mais frequentes que os programas executam é repetir um grupo de instruções até que uma condição inicialmente verdadeira se torne falsa. É para isso que serve o comando while. A sua sintaxe é a seguinte: while (expressão) { bloco de instruções; } do...while Para que o bloco de instruções seja executado ao menos uma vez, ele é deslocado para a entrada da caixa de decisões, antes do teste de validade: do { bloco de instruções; }while (expressão)

  41. for Inserindo-se no loop do comando while um contador que registre cada execução do bloco de instruções cria-se o comando for . Esse contador deve ter uma variável de controle que deve ser previamente inicializada com um tipo e um valor. A sua sintaxe é a seguinte: for (variável; expressão;incremento) { bloco de instruções; }

More Related