SlideShare uma empresa Scribd logo
1 de 21
Clique para editar o título
Arduino
seu primeiro
microcontrolador
PMR3100-2017
2
Agenda
1.Arduino
2.Prática
3
1.ARDUINO
1.arduino
2.Plataforma de desenvolvimento
3.Modelo de programação
4
1.Arduino
Microprocessador : unidade de processamento de propósito geral (ex.:
Intel i7)
Microcontrolador: system-on-chip incluindo CPU, memória, entradas e
saídas digitais, entradas de saídas analógicas, etc.
E/S Digital
E/S Analógica
5
Arduino uno r3
• AtMega 328
• 8 bits
• Clock 20MHz
• 32 kbytes flash (programas)
• 2k bytes RAM (dados)
6
Periféricos
• Two 8-bit Timer/Counters with Separate Prescaler and Compare Mode
• One 16-bit Timer/Counter with Separate Prescaler, Compare Mode, and
Capture Mode
• Real Time Counter with Separate Oscillator
• Six PWM Channels
• 8-channel 10-bit ADC
• Programmable Serial USART
• Master/Slave SPI Serial Interface
• Byte-oriented 2-wire Serial Interface (Philips I2C compatible)
7
2.Plataforma de desenvolvimento
8
3.Modelo de Programação
Programação em Linguagem C
Incluir bibliotecas
Definir pinos
Declarar variáveis
Iniciar variáveis
Loop infinito
9
1.PRÁTICA
1.Comunicação com a console
2.Acionado LEDs e saídas em geral
3.Usando entradas digitais
4.Acionando servos
10
1.Comunicação com a console
Este experimento visa permitir que se verifique que a instalação o
ambiente de programação do Arduino está funcionando corretamente
no seu computador.
Visa também fazer com que você aprenda como usar as funções:
• Serial.read() : permite que você use o teclado do PC para mandar
inputs para o Arduíno
• Serial.write() : permite que o Arduíno “escreva” na tela do PC
11
Procedimento
1. Conecte o cabo USB
2. Verifique que o Arduino é reconhecido
1. Painel de Controle/Gerenciador de dispositivos/CoM&LPT
2. se não for, instalar o driver (clique direito em drivers/arduino.inf)
3. Inicie a IDE
4. Verifique se:
1. A porta serial está correta (Tools/Serial Port)
2. O modelo de Arduino está correto (Tools/Board)
5. Digite o programa
6. Execute o programa
1. Note que o programa é compilado (Compiling Sketch)
2. Note que o programa é enviado (Uploading...)
7. Abra o terminal (Tools/Serial Monitor)
8. Envie algo para o Arduino e veja o eco
12
Programa
// caracter lido
#define SERVO 2
char ch;
void setup () {
// configure usb-serial (debug)
Serial.begin(9600);
while(!Serial) {
; // wait for serial port to connect.
}
// end of setup
Serial.print("Setup completed");
}
void loop() { // run over and over
// read char from debug serial or from bluetooth
ch = 0;
if (Serial.available() > 0) {
ch = Serial.read();
Serial.write(ch);
}
} // loop
13
2.Acionando LED
Neste experimento, você vai aprender a ligar/desligar um LED. Na
realidade, com este mesmo princípio, você poderá ligar/desligar
motores, relés e qualquer outro dispositivo.
14
Conexões
Conecte o LED (fornecido) no Pino 13 (LID maior) e no
terra (LID menor)
(LID == “perninha”)
15
ATENÇÃO !!!
SEMPRE ligue o LED através de um resistor (tipicamente 470ohms).
No pino 13 do Arduíno, o resistor já está na placa e por isso não é necessário um
resistor adicional.
Mas SOMENTE no pino 13!!
16
Programa
#define LED 13
char ch;
void setup()
{
// configure pins
pinMode(LED, OUTPUT);
// configure usb-serial (debug)
Serial.begin(9600);
while (!Serial) {
; // wait for serial port to connect.
Needed for Leonardo only
}
// end of setup
Serial.print("Setup completed");
} // setup
void loop() // run over and over
{
// read char from debug serial or from
bluetooth
ch = 0;
if (Serial.available() > 0) {
ch = Serial.read();
}
// process commands: s,d
if (ch == 'L') {
digitalWrite(LED, HIGH);
}
if (ch == 'D') {
digitalWrite(LED, LOW);
}
} //loop
17
Usando uma entrada digital
Ligue o pino 7 à terra ou 5V para mudar a entrada para “1”
ou “0”
18
Programa
#define LED 13
#define ENTRADA 7
char ch;
int entrada;
void setup()
{
// configure pins
pinMode(LED, OUTPUT);
pinMode(ENTRADA, INPUT);
// configure usb-serial (debug)
Serial.begin(9600);
while (!Serial) {
; // wait for serial port to connect.
Needed for Leonardo only
}
// end of setup
Serial.print("Setup completed");
} // setup
void loop() // run over and over
{
// read char from debug serial or from
bluetooth
ch = 0;
if (Serial.available() > 0) {
ch = Serial.read();
}
// read input
entrada = digitalRead (ENTRADA);
// process commands: s,d
if ( (ch == 'L') || (entrada == 1) ) {
digitalWrite(LED, HIGH);
}
if ( (ch == 'D') || (entrada == 0) ) {
digitalWrite(LED, LOW);
}
} //loop
19
4.Acionando servos
Servos de aeromodelismo são controlados por um sinal PWM (Pulse
Width Modulation) de período 20ms e largura entre 1ms a 2ms. A
largura define a posição do servo, entre 0 grau(1ms) e seu valor
máximo (2ms), em geral, 120 graus
20
Conexões
21
Programa
#include <Servo.h>
#define SERVO 2
Servo servo;
int ang;
char ch;
void setup () {
// configure pins
pinMode (SERVO, OUTPUT);
// init servo
servo.attach(SERVO);
// configure usb-serial (debug)
Serial.begin(9600);
while(!Serial) {
; // wait for serial port to connect.
}
// initialize variable
ang = 0;
// end of setup
Serial.print("Setup completed");
}
void loop() {
// read char
ch = 50;
if (Serial.available() > 0) {
ch = Serial.read();
}
// process commands: s, d
if (ch == 's') {
ang = ang + 5;
if (ang > 100) {
ang = 100;
}
}
if (ch == 'd') {
ang = ang - 5;
if (ang < 0) {
ang = 0;
}
}
// set servo angle
servo.write(ang);
} // loop

Mais conteúdo relacionado

Semelhante a Treinamento arduino (1).pptx

Workshop Microchip Curiosity Board
Workshop Microchip Curiosity BoardWorkshop Microchip Curiosity Board
Workshop Microchip Curiosity BoardFabio Souza
 
Introdução à plataforma Arduino
Introdução à plataforma ArduinoIntrodução à plataforma Arduino
Introdução à plataforma Arduinoentrebits
 
Introdução a arduino, oficina para iniciantes
Introdução a arduino, oficina para iniciantesIntrodução a arduino, oficina para iniciantes
Introdução a arduino, oficina para iniciantesRogerio Alencar Filho
 
Desenvolvimento de drivers para sistemas embarcados
Desenvolvimento de drivers para sistemas embarcadosDesenvolvimento de drivers para sistemas embarcados
Desenvolvimento de drivers para sistemas embarcadosRodrigo Almeida
 
Introdução à eletronica e robótica com arduino
Introdução à eletronica e robótica com arduinoIntrodução à eletronica e robótica com arduino
Introdução à eletronica e robótica com arduinoJuan Manoel
 
Workshop iniciação à robótica - Farrusco
Workshop iniciação à robótica - FarruscoWorkshop iniciação à robótica - Farrusco
Workshop iniciação à robótica - FarruscoArticacc, Lda
 
Arduino - Hardware Livre e Robótica
Arduino -  Hardware Livre e RobóticaArduino -  Hardware Livre e Robótica
Arduino - Hardware Livre e RobóticaMarinho Brandão
 
Introdução ao Arduino
Introdução ao ArduinoIntrodução ao Arduino
Introdução ao Arduinoelliando dias
 
38698469 slides-arduino
38698469 slides-arduino38698469 slides-arduino
38698469 slides-arduinoRui Alves
 
Apostila - Tutorial Arduino (Básico).PDF
Apostila - Tutorial Arduino (Básico).PDFApostila - Tutorial Arduino (Básico).PDF
Apostila - Tutorial Arduino (Básico).PDFengelrfs
 
Microcontroladores PIC.pptx
Microcontroladores PIC.pptxMicrocontroladores PIC.pptx
Microcontroladores PIC.pptxfmtpereira
 
Ufes erus minicurso arduino
Ufes erus minicurso arduinoUfes erus minicurso arduino
Ufes erus minicurso arduinotamarasalvatori
 
Perlduino - Interfaceando sua aplicação com o mundo real!
Perlduino - Interfaceando sua aplicação com o mundo real!Perlduino - Interfaceando sua aplicação com o mundo real!
Perlduino - Interfaceando sua aplicação com o mundo real!Samir Siqueira
 

Semelhante a Treinamento arduino (1).pptx (20)

Workshop Microchip Curiosity Board
Workshop Microchip Curiosity BoardWorkshop Microchip Curiosity Board
Workshop Microchip Curiosity Board
 
ARDUINO.pptx
ARDUINO.pptxARDUINO.pptx
ARDUINO.pptx
 
Introdução à plataforma Arduino
Introdução à plataforma ArduinoIntrodução à plataforma Arduino
Introdução à plataforma Arduino
 
Introdução a arduino, oficina para iniciantes
Introdução a arduino, oficina para iniciantesIntrodução a arduino, oficina para iniciantes
Introdução a arduino, oficina para iniciantes
 
Desenvolvimento de drivers para sistemas embarcados
Desenvolvimento de drivers para sistemas embarcadosDesenvolvimento de drivers para sistemas embarcados
Desenvolvimento de drivers para sistemas embarcados
 
Oficina Arduino
Oficina ArduinoOficina Arduino
Oficina Arduino
 
Introdução à eletronica e robótica com arduino
Introdução à eletronica e robótica com arduinoIntrodução à eletronica e robótica com arduino
Introdução à eletronica e robótica com arduino
 
Workshop iniciação à robótica - Farrusco
Workshop iniciação à robótica - FarruscoWorkshop iniciação à robótica - Farrusco
Workshop iniciação à robótica - Farrusco
 
Arduino - Hardware Livre e Robótica
Arduino -  Hardware Livre e RobóticaArduino -  Hardware Livre e Robótica
Arduino - Hardware Livre e Robótica
 
Introdução ao Arduino
Introdução ao ArduinoIntrodução ao Arduino
Introdução ao Arduino
 
38698469 slides-arduino
38698469 slides-arduino38698469 slides-arduino
38698469 slides-arduino
 
Apostila - Tutorial Arduino (Básico).PDF
Apostila - Tutorial Arduino (Básico).PDFApostila - Tutorial Arduino (Básico).PDF
Apostila - Tutorial Arduino (Básico).PDF
 
Microcontroladores PIC.pptx
Microcontroladores PIC.pptxMicrocontroladores PIC.pptx
Microcontroladores PIC.pptx
 
Ufes erus minicurso arduino
Ufes erus minicurso arduinoUfes erus minicurso arduino
Ufes erus minicurso arduino
 
Erus minicurso arduino
Erus minicurso arduinoErus minicurso arduino
Erus minicurso arduino
 
Mini Curso Introdutório ao Arduino
Mini Curso Introdutório ao ArduinoMini Curso Introdutório ao Arduino
Mini Curso Introdutório ao Arduino
 
Perlduino - Interfaceando sua aplicação com o mundo real!
Perlduino - Interfaceando sua aplicação com o mundo real!Perlduino - Interfaceando sua aplicação com o mundo real!
Perlduino - Interfaceando sua aplicação com o mundo real!
 
TDC2014 - Arduino Legacy
TDC2014 - Arduino LegacyTDC2014 - Arduino Legacy
TDC2014 - Arduino Legacy
 
Minicurso de Arduino Básico
Minicurso de Arduino BásicoMinicurso de Arduino Básico
Minicurso de Arduino Básico
 
Controle relés com Log, sensor hall e emergência
Controle relés com Log, sensor hall e emergênciaControle relés com Log, sensor hall e emergência
Controle relés com Log, sensor hall e emergência
 

Treinamento arduino (1).pptx

  • 1. Clique para editar o título Arduino seu primeiro microcontrolador PMR3100-2017
  • 4. 4 1.Arduino Microprocessador : unidade de processamento de propósito geral (ex.: Intel i7) Microcontrolador: system-on-chip incluindo CPU, memória, entradas e saídas digitais, entradas de saídas analógicas, etc. E/S Digital E/S Analógica
  • 5. 5 Arduino uno r3 • AtMega 328 • 8 bits • Clock 20MHz • 32 kbytes flash (programas) • 2k bytes RAM (dados)
  • 6. 6 Periféricos • Two 8-bit Timer/Counters with Separate Prescaler and Compare Mode • One 16-bit Timer/Counter with Separate Prescaler, Compare Mode, and Capture Mode • Real Time Counter with Separate Oscillator • Six PWM Channels • 8-channel 10-bit ADC • Programmable Serial USART • Master/Slave SPI Serial Interface • Byte-oriented 2-wire Serial Interface (Philips I2C compatible)
  • 8. 8 3.Modelo de Programação Programação em Linguagem C Incluir bibliotecas Definir pinos Declarar variáveis Iniciar variáveis Loop infinito
  • 9. 9 1.PRÁTICA 1.Comunicação com a console 2.Acionado LEDs e saídas em geral 3.Usando entradas digitais 4.Acionando servos
  • 10. 10 1.Comunicação com a console Este experimento visa permitir que se verifique que a instalação o ambiente de programação do Arduino está funcionando corretamente no seu computador. Visa também fazer com que você aprenda como usar as funções: • Serial.read() : permite que você use o teclado do PC para mandar inputs para o Arduíno • Serial.write() : permite que o Arduíno “escreva” na tela do PC
  • 11. 11 Procedimento 1. Conecte o cabo USB 2. Verifique que o Arduino é reconhecido 1. Painel de Controle/Gerenciador de dispositivos/CoM&LPT 2. se não for, instalar o driver (clique direito em drivers/arduino.inf) 3. Inicie a IDE 4. Verifique se: 1. A porta serial está correta (Tools/Serial Port) 2. O modelo de Arduino está correto (Tools/Board) 5. Digite o programa 6. Execute o programa 1. Note que o programa é compilado (Compiling Sketch) 2. Note que o programa é enviado (Uploading...) 7. Abra o terminal (Tools/Serial Monitor) 8. Envie algo para o Arduino e veja o eco
  • 12. 12 Programa // caracter lido #define SERVO 2 char ch; void setup () { // configure usb-serial (debug) Serial.begin(9600); while(!Serial) { ; // wait for serial port to connect. } // end of setup Serial.print("Setup completed"); } void loop() { // run over and over // read char from debug serial or from bluetooth ch = 0; if (Serial.available() > 0) { ch = Serial.read(); Serial.write(ch); } } // loop
  • 13. 13 2.Acionando LED Neste experimento, você vai aprender a ligar/desligar um LED. Na realidade, com este mesmo princípio, você poderá ligar/desligar motores, relés e qualquer outro dispositivo.
  • 14. 14 Conexões Conecte o LED (fornecido) no Pino 13 (LID maior) e no terra (LID menor) (LID == “perninha”)
  • 15. 15 ATENÇÃO !!! SEMPRE ligue o LED através de um resistor (tipicamente 470ohms). No pino 13 do Arduíno, o resistor já está na placa e por isso não é necessário um resistor adicional. Mas SOMENTE no pino 13!!
  • 16. 16 Programa #define LED 13 char ch; void setup() { // configure pins pinMode(LED, OUTPUT); // configure usb-serial (debug) Serial.begin(9600); while (!Serial) { ; // wait for serial port to connect. Needed for Leonardo only } // end of setup Serial.print("Setup completed"); } // setup void loop() // run over and over { // read char from debug serial or from bluetooth ch = 0; if (Serial.available() > 0) { ch = Serial.read(); } // process commands: s,d if (ch == 'L') { digitalWrite(LED, HIGH); } if (ch == 'D') { digitalWrite(LED, LOW); } } //loop
  • 17. 17 Usando uma entrada digital Ligue o pino 7 à terra ou 5V para mudar a entrada para “1” ou “0”
  • 18. 18 Programa #define LED 13 #define ENTRADA 7 char ch; int entrada; void setup() { // configure pins pinMode(LED, OUTPUT); pinMode(ENTRADA, INPUT); // configure usb-serial (debug) Serial.begin(9600); while (!Serial) { ; // wait for serial port to connect. Needed for Leonardo only } // end of setup Serial.print("Setup completed"); } // setup void loop() // run over and over { // read char from debug serial or from bluetooth ch = 0; if (Serial.available() > 0) { ch = Serial.read(); } // read input entrada = digitalRead (ENTRADA); // process commands: s,d if ( (ch == 'L') || (entrada == 1) ) { digitalWrite(LED, HIGH); } if ( (ch == 'D') || (entrada == 0) ) { digitalWrite(LED, LOW); } } //loop
  • 19. 19 4.Acionando servos Servos de aeromodelismo são controlados por um sinal PWM (Pulse Width Modulation) de período 20ms e largura entre 1ms a 2ms. A largura define a posição do servo, entre 0 grau(1ms) e seu valor máximo (2ms), em geral, 120 graus
  • 21. 21 Programa #include <Servo.h> #define SERVO 2 Servo servo; int ang; char ch; void setup () { // configure pins pinMode (SERVO, OUTPUT); // init servo servo.attach(SERVO); // configure usb-serial (debug) Serial.begin(9600); while(!Serial) { ; // wait for serial port to connect. } // initialize variable ang = 0; // end of setup Serial.print("Setup completed"); } void loop() { // read char ch = 50; if (Serial.available() > 0) { ch = Serial.read(); } // process commands: s, d if (ch == 's') { ang = ang + 5; if (ang > 100) { ang = 100; } } if (ch == 'd') { ang = ang - 5; if (ang < 0) { ang = 0; } } // set servo angle servo.write(ang); } // loop