introdução à engenharia de computação baci01 engenharia de computação
TRANSCRIPT
Introdução à Engenharia de ComputaçãoBACi01
Engenharia de Computação
Projeto BACi01 2
PROJETOS
Projeto BACi01 3
Por que um projeto “avançado” em BACi01?
Será que estou pronto para isso?
Projeto BACi01 4
Projeto de um Sistema Digital
Controller(Hardware & Software)
System toControl
Sensor
SignalConditioning
PowerInterface
Actuator
UserInterface
PowerSource
BJ Furman 22JAN11
ME 106ME 154ME 157ME 195
ME 120ME 297A
ME 106ME 120
ME 106ME 190ME 187
ME 110ME 136ME 154ME 157
ME 182ME 189ME 195
ME 106ME 120
ME 106
INTEGRATION
Projeto BACi01 5
O que é um microcontrolador?
ANALOGINPUTS
Projeto BACi01 6
ATmega328 Internal Architecture
ATmega328 data sheet pp. 2, 5
http://www.adafruit.com/index.php?main_page=popup_image&pID=50
Projeto BACi01 7
Arduino Duemilanove
http://www.arduino.cc/en/Main/ArduinoBoardDuemilanove
http://arduino.cc/en/uploads/Main/ArduinoDuemilanove.jpg
Pin 13 LED
USBconnector
Barrel jack
Digital pins header
Reset button
ATmega328 MCU
Analog pins header
Power-ground header
See the handout: Arduino_ATmega328_pin_mapping_and_schematic
Projeto BACi01 8
Arduino Uno R3
http://www.adafruit.com/index.php?main_page=popup_image&pID=50
ATmega16u2 replaces FT232RL for USB-serial comms
See: http://learn.adafruit.com/arduino-tips-tricks-and-techniques/arduino-uno-faq
Projeto BACi01 9
Arduino Due
Atmel SAM3X8E processor (32 bit ARM Cortex M3 architecture, 84MHz)
http://www.adafruit.com/index.php?main_page=popup_image&pID=1076
See: http://arduino.cc/en/Main/ArduinoBoardDue
Note: 3.3 V !!
Projeto BACi01 10
Recebe, Gera e Interpreta Dados. Premite desenvolver:
Controle residencial Robótica Design interativo Quase tudo que sonhar esta ferramenta pode tornar
realidade.
O que arduino faz?
Projeto BACi01 11
Como é estruturado o hardware? (1) Analog Reference pin-AREF(Laranja). Digital Ground (Verde Claro) Digital Pins 2-13 (Verde) Digital Pins 0-1/Serial In/Out - TX/RX (Verde Escuro) Botão de Reset - S1 (Azul Escuro) In-circuit Serial Programmer -ICSP (Azul-Verde)
Projeto BACi01 12
Como é estruturado o hardware? (2) Analog In Pins 0-5 (Azul Claro) Power and Ground Pins
Power: orange, grounds: light (laranja claro) Suprimento Externo de energia In (9-12VDC) - X1 (Rosa)
SV1- Jumper: Determina alimentação da USB ou Esterna X1 (Roxo)
USB: Usada para gravar os programas; Comunicação serial entre placa e computador; Alimentação da placa (Amarelo)
Projeto BACi01 13
PWM(Pulse Width Modulation)
Projeto BACi01 14
Arduino Mega- 126k (Flash Memory)
54 Pinos de I/O
LilyPad Arduino
Outros modelos (1)
Projeto BACi01 15
Arduino BT (Bluetooth)
Arduino Mini
Arduino Pro
Outros modelos (2)
Projeto BACi01 16
Escudos Extenções do arduino que permitem interagir com tecnologias
diversas com facilidade.
Ethernet shieldXbee shield
O que são Shields? (1)
Projeto BACi01 17
Motor shield
SD shield
LCD shield
O que são Shields? (2)
Projeto BACi01 18
O que são Shields? (3)
Projeto BACi01 19
Verify: Para Verificar se o programa está sem erros.
Upload: Carrega o programa no Microcontrolador.
Serial Monitor: Ativa a leitura da porta serial. Mostra valores.
Integrated Development Environment
Projeto BACi01 20
C/C++ .Funções facilitadas.
Após compilar temos os dados na tela preta abaixo:
Programação (1)
Projeto BACi01 21
Entendendo o Programa./* *Programa traduzido por Gamesh_ para Mini-curso sobre Arduino 16/09/2010 *Visitem www.brasilrobotics.blogspot.com/ *Programa: Blink, * The basic Arduino example. * http://www.arduino.cc/en/Tutorial/Blink */int ledPin = 13; // Diz: Vou usar o Pino de número 13 do Arduino e ele será chamado "ledPin" e será uma variável inteira.
void setup() //Função chamada automaticamente na primeira vez que o código é lido. //Devemos dizer como o Pino deve se comportar. { pinMode(ledPin, OUTPUT); // PinMode diz: O comportamento do pino(Nome desse pino, ENTRADA ou SAÍDA). // Temos OUTPUT=Saída e INPUT=Entrada. // E o nome do pino é LedPIN. // É importante notar a vírgula( , ) e que usa-se letra maiúscula. }
Programação (2)
Projeto BACi01 22
void loop() // Função onde tudo acontece. Chama-se Loop porque está executando repetidas vezes.
{ digitalWrite(ledPin, HIGH); // Temos HIGH= LIGADO e LOW=DESLIGADO // E o nome do pino é LedPIN, que é o mesmo Pino 13 delay(1000); // Atraso de 1 segundo digitalWrite(ledPin, LOW); // Temos LOW=DESLIGADO delay(1000); // Atraso de 1 segundo}
Programação (3)
Projeto BACi01 23
Aprende-se com exemplos Apresentar e vistar site www.arduino.cc
Principal fonte de documentação. Tópico: LEARNING Executar programas Digital I/O
Blink Without Delay: Button ...
Como se aprende arduino? (1)
Projeto BACi01 24
Como se aprende arduino? (2)
Projeto BACi01 25
TRABALHO DE BACI01
Projeto BACi01 26
Regras e Datas Grupos de 5 alunos
Hoje (01/04) - Definir as equipes e definir 3 possíveis projetos para ser desenvolvido
Desenvolver para o dia 15/04 um pequeno EVTE que irá justificar a escolha de um dos 3 projetos Custos, prazos para aquisição dos componetes, etc. Seguir o modelo de EVTE fornecido
Avaliação de acompanhamento – 09/05 Arduino, shields e componentes necessários e apresentação de
pequeno programa em arduíno (qualquer aluno poderá ser questionado)
Projeto BACi01 27
Regras e Datas Avaliação de acompanhamento – 06/06
Avaliação da execução do projeto proposto (devem estar restando apenas alguns ajustes, projeto deve estar 90% funcionando)
Avaliação final - 13/06 Apresentação de 10 minutos para toda a turma
Organizem-se para que os projetos escolhidos não se repitam
50% da nota de BACi01
Projeto BACi01 28