Tutoriais de Arduino, Eletronica, com Video Aulas, tambem tutoriais de PHP,MySQL,CSS,Java Script, Jquery entre outros. E o Melhor totalmente Gratis.

segunda-feira, 8 de abril de 2013

Display LCD

Projeto 10


Componentes: 01 Display de LCD, 01 Potenciômetro.

Componentes utilizados: 01x LCD 16x2 / 01x Potenciômetro 10k / cabos diversos


#include <LiquidCrystal.h>
LiquidCrystal lcd(12, 11, 5, 4, 3, 2);
void setup() {
lcd.begin(16, 2);
lcd.setCursor(0,0);
lcd.print("Ola, meu nome e:");
lcd.setCursor(0,1);
lcd.print("XXX"); //Coloque seu nome no lugar dos XXX
}
void loop() {
}

Projeto Alarme Multipropósito

Projeto 9


Componentes: 2 Leds Verdes + 2 Leds Amarelos + 2 Leds Vermelhos + 1 Sensor de
Luminosidade LDR + 1 Sensor de Temperatura NTC + 1 Led Alto Brilho + 1 buzzer

Componentes utilizados: 02x Led Verde / 02x Led Amarelo / 02x Led Vermelho / 01x Led de Alto
Brilho / 01x Buzzer 5V / 07x Resistor 300 / 02x Resistor 10k / 01x NTC / 01x LDR / cabos
diversos.


const int LDR = 0;
const int NTC = 1;
const int Buzzer = 2;
const int led1 = 5;
const int led2 = 6;
const int led3 = 7;
const int led4 = 8;
const int led5 = 9;
const int led6 = 10;
const int ledAB = 11;
int ValorLDR = 0;
int ValorNTC = 0;
int pwm = 0;
void setup(){
pinMode(Buzzer, OUTPUT);
pinMode(led1, OUTPUT);
pinMode(led2, OUTPUT);
pinMode(led3, OUTPUT);
pinMode(led4, OUTPUT);
pinMode(led5, OUTPUT);
pinMode(led6, OUTPUT);
pinMode(ledAB, OUTPUT);
}
void loop(){
ValorLDR = analogRead(LDR);
ValorNTC = analogRead(NTC);
if (ValorNTC > 0){
digitalWrite(led1, HIGH);
}
else{
digitalWrite(led1, LOW);
}
if (ValorNTC > 935){
digitalWrite(led2, HIGH);
}
else{
digitalWrite(led2, LOW);
}
if (ValorNTC > 945){
digitalWrite(led3, HIGH);
digitalWrite(Buzzer, HIGH);
}
else{
digitalWrite(led3, LOW);
digitalWrite(Buzzer, LOW);
}

if (ValorLDR > 600){
digitalWrite(led6, HIGH);
}
else{
digitalWrite(led6, LOW);
}
if (ValorLDR > 500){
digitalWrite(led5, HIGH);
}
else{
digitalWrite(led5, LOW);
}
if (ValorLDR > 450){
digitalWrite(led4, HIGH);
digitalWrite(ledAB, LOW);
}
else{
digitalWrite(led4, LOW);
digitalWrite(ledAB, HIGH);
}
}

Iluminação Automatizada


Já Pensou em automatizar a iluminação de sua casa ? Abaixo está a solução.

Componentes: 1 Led Alto Brilho + 1 Sensor de Luminosidade LDR

Componentes utilizados: 01x LDR (sensor de luinosidade) / 01x Reistor de 10k / 01x Led de Alto
Brilho / 01x Resistor de 300 / cabos diversos.



const int LDR = 0;
int ValorLido = 0;
void setup() {
Serial.begin(9600);
}
void loop() {
ValorLido = analogRead(LDR);
Serial.print("Valor lido pelo LDR = ");
Serial.println(ValorLido);
delay(500);
}

Potenciômetro com Led

Projeto 7


Componentes: 1 Potenciômetro + 1 Led

Componentes utilizados: 01x Potenciômetro de 10k / 01x Led de Alto Brilho / 01x Resistor de 300 /
cabos diversos.


const int PinoPotenciometro = 0;
const int Led = 13;
int ValorPot = 0;
void setup() {
pinMode(Led, OUTPUT);
}
void loop() {
ValorPot = analogRead(PinoPotenciometro);
digitalWrite(Led, HIGH);
delay(ValorPot);
digitalWrite(Led, LOW);
delay(ValorPot);
}

Termômetro

Projeto 6


Componentes: 2 Leds Verdes + 2 Leds Amarelos + 2 Leds Vermelhos + Buzzer + 1 Sensor de
Temperatura NTC

Componentes utilizados: 01x NTC (sensor de temperatura) / 01x Resistor de 10k / cabos diversos
/ 01x Buzzer 5V / 02x Leds Verdes / 02x Leds Amarelos / 02x Leds Vermelhos / 06x Resistores de
300 .


const int PinoSensor = 0;
const int Buzzer = 6;
const int led1 = 8;
const int led2 = 9;
const int led3 = 10;
const int led4 = 11;
const int led5 = 12;
const int led6 = 13;
int ValorSensor = 0;
void setup(){
pinMode(Buzzer, OUTPUT);
pinMode(led1, OUTPUT);
pinMode(led2, OUTPUT);
pinMode(led3, OUTPUT);
pinMode(led4, OUTPUT);
pinMode(led5, OUTPUT);
pinMode(led6, OUTPUT);
Serial.begin(9600);
}
void loop(){
ValorSensor = analogRead(PinoSensor);
Serial.print("Valor do Sensor = ");
Serial.println(ValorSensor);
if (ValorSensor > 0){
digitalWrite(led1, HIGH);
}
else{
digitalWrite(led1, LOW);
}
if (ValorSensor > 915){
digitalWrite(led2, HIGH);
}
else{
digitalWrite(led2, LOW);
}

if (ValorSensor > 920){
digitalWrite(led3, HIGH);
}
else{
digitalWrite(led3, LOW);
}
if (ValorSensor > 930){
digitalWrite(led4, HIGH);
}
else{
digitalWrite(led4, LOW);
}
if (ValorSensor > 935){
digitalWrite(led5, HIGH);
}
else{
digitalWrite(led5, LOW);
}
if (ValorSensor > 940){
digitalWrite(led6, HIGH);
digitalWrite(Buzzer, HIGH);
}
else{
digitalWrite(led6, LOW);
digitalWrite(Buzzer, LOW);
}
}


Alarme com Sensor


Projeto 5

Componentes: 1 Sensor de Temperatura NTC + 1 buzzer

Componentes utilizados: 01x NTC (sensor de temperatura) / 01x Resistor de 10k / cabos diversos
/ 01x Buzzer 5V.




const int PinoSensor = 0;
const int Buzzer = 6;
int ValorSensor = 0;
void setup(){
pinMode(Buzzer, OUTPUT);
Serial.begin(9600);
}
void loop(){
ValorSensor = analogRead(PinoSensor);
Serial.print("Valor do Sensor = ");
Serial.println(ValorSensor);
if (ValorSensor > 912){
digitalWrite(Buzzer, HIGH);
}
else{
digitalWrite(Buzzer, LOW);
}
}

Sensor de Temperatura


Projeto 4

Componentes: 1 Sensor de Temperatura NTC

Componentes utilizados: 01x NTC (sensor de temperatura) / 01x Resistor de 10k / cabos diversos.




const int PinoSensor = 0;//pino Anlógico de Entrada 0
int ValorSensor = 0;
void setup(){
Serial.begin(9600);
}
void loop(){
ValorSensor = analogRead(PinoSensor);
Serial.print("Valor do Sensor = ");
Serial.println(ValorSensor);
delay(500);
}



Para ver os dados no monitor serial, basta clicar no seguinte botão no ambiente de desenvolvimento
do Arduino:


Projeto Piano Musical

Projeto 3

Componentes: 3 Botões + 3 Leds + Buzzer


Componentes utilizados: 01x Led Verde / 01x Led Amarelo / 01x Led Vermelho / 03x Resistores de
300 / 03x Resistores de 10k / 03x Pushbutton / cabos diversos / 01x Buzzer 5V





const int ledPin1 = 13;
const int ledPin2 = 12;
const int ledPin3 = 11;
const int Botao1 = 2;
const int Botao2 = 3;
const int Botao3 = 4;
const int Buzzer = 10; //O buzzer está colocado no pino 10
int EstadoBotao1 = 0;
int EstadoBotao2 = 0;
int EstadoBotao3 = 0;
int Tom = 0; //Variavel para armazenar a nota musical
void setup() {
pinMode(Buzzer, OUTPUT);
pinMode(ledPin1, OUTPUT);
pinMode(Botao1, INPUT);
pinMode(ledPin2, OUTPUT);
pinMode(Botao2, INPUT);
pinMode(ledPin3, OUTPUT);
pinMode(Botao3, INPUT);
}
void loop(){
EstadoBotao1 = digitalRead(Botao1);
EstadoBotao2 = digitalRead(Botao2);
EstadoBotao3 = digitalRead(Botao3);
if(EstadoBotao1 && !EstadoBotao2 && !EstadoBotao3) {
Tom = 100;
digitalWrite(ledPin1, HIGH);
}
if(EstadoBotao2 && !EstadoBotao1 && !EstadoBotao3) {
Tom = 200;
digitalWrite(ledPin2, HIGH);
}
if(EstadoBotao3 && !EstadoBotao2 && !EstadoBotao1) {
Tom = 500;
digitalWrite(ledPin3, HIGH);
}
while(Tom > 0) { //enquanto Tom for maior que zero faça o que esta descrit o baixo:
digitalWrite(Buzzer, HIGH); // Liga buzzer
delayMicroseconds(Tom); // Espera o tempo proporcional ao comprimento de onda da nota musical em milisegundos
digitalWrite(Buzzer, LOW); // Desliga buzzer
delayMicroseconds(Tom); // Espera o tempo proporcional ao comprimento de onda da nota musical em milisegundos
Tom = 0; // Reseta o Tom para zero, para sair do loop while e nao tocar o som constantemente
digitalWrite(ledPin1, LOW);
digitalWrite(ledPin2, LOW);
digitalWrite(ledPin3, LOW);
}
}

Led acendo com botão


Projeto 2

Componentes: 3 Botões + 3 Leds

Componentes utilizados: 01x Led Verde / 01x Led Amarelo / 01x Led Vermelho / 03x Resistores de
300 / 03x Resistores de 10k / 03x Pushbutton / cabos diversos.








int ledPin1 = 13;
int ledPin2 = 12;
int ledPin3 = 11;
int Botao1 = 2;
int Botao2 = 3;
int Botao3 = 4;
int EstadoBotao1 = 0;
int EstadoBotao2 = 0;
int EstadoBotao3 = 0;
void setup(){
pinMode(ledPin1, OUTPUT);
pinMode(Botao1, INPUT);
pinMode(ledPin2, OUTPUT);
pinMode(Botao2, INPUT);
pinMode(ledPin3, OUTPUT);
pinMode(Botao3, INPUT);
}
void loop(){
EstadoBotao1 = digitalRead(Botao1);
EstadoBotao2 = digitalRead(Botao2);
EstadoBotao3 = digitalRead(Botao3);
if (EstadoBotao1 == HIGH){
digitalWrite(ledPin1, HIGH);
}
else{
digitalWrite(ledPin1, LOW);
}
if (EstadoBotao2 == HIGH){
digitalWrite(ledPin2, HIGH);
}
else{
digitalWrite(ledPin2, LOW);
}
if (EstadoBotao3 == HIGH){
digitalWrite(ledPin3, HIGH);
}
else{
digitalWrite(ledPin3, LOW);
}
}


Projeto Led Piscando com botão


Projeto 2

Componentes: 1 Botão + 1 Led

Componentes utilizados: 01x Led Vermelho / 01x Resistor de 300 / 01x PushButton / 01x Resistor
de 10k / cabos diversos.









int led = 13; //led no pino 13
int Botao = 2; //botao no pino 2
int EstadoBotao = 0; 
void setup(){
pinMode(led, OUTPUT); 
pinMode(Botao, INPUT); 
}
void loop(){
EstadoBotao = digitalRead(Botao); 

if (EstadoBotao == HIGH){ 
digitalWrite(led, HIGH);
}
else{ 
digitalWrite(ledPin, LOW); 
}
}



domingo, 7 de abril de 2013

O que é Arduino



Resumo. Este meta-artigo irá contar um pouco da história, descrever, como aplicar, caracterizar e tentará mostrar uma visão mais clara sobre sistemas embarcados. Será mostrado também um exemplo de aplicação para um sistema embarcado chamado Arduino, que será explicado passo a passo as funcionalidades e exemplos que esse sistema pode ser usado em trabalhos, pesquisas, entre outros.

1. Informações Gerais e História de Sistemas Embarcados

Você já chegou a pensar que quase tudo que esta em sua volta esta ligado a um sistema computacional, um exemplo bem simples é do seu micro-ondas você não deve saber mas  ele tem uma capacidade computacional muito maior do que a do projeto Apolo (que levou o homem a lua). É cada vez maior o numero de equipamentos do seu dia a dia com mais inteligência computacional.

1.1 Um pouco da História

Nos primeiros anos dos computadores digitais na década de 1940, os computadores eram destinados a uma única tarefa, e eram muito grandes não era considerados sistemas embarcados. O primeiro sistema reconhecido foi o Apollo Guidance Computer, desenvolvido por Charles Stark Draper no MIT.

2. O que são Sistemas Embarcados

Chegamos a um dos mais interessantes tópicos deste artigo que é. O que são sistemas embarcados? Basicamente podemos explicar de modo simples que um sistema embarcado é colocar uma capacidade computacional em um circuito integrado (Em eletrônica um circuito integrado é um circuito eletrônico 


miniaturizado, composto por dispositivos condutores), equipamento ou sistema. Deve ser mais que um computador normal, é um sistema completo e independente, mas é muito preparada para realizar apenas uma tarefa que será feita pelo programador. Um sistema embarcado realiza um conjunto de tarefas predefinidas, geralmente com requisitos específicos.
Esses sistemas não podem ser mudados a sua funcionalidade pelo usuário, só poderá ser mudado a funcionalidade com a ajuda do programador que fara um sistema novo para outro tipo de funcionalidade.

3. Características



Sistemas embarcados são propriamente desenvolvidos para uma tarefa especifica o software escrito para sistema embarcado é muitas vezes chamado de firmware e armazenado em uma memória ROM ou memória FLASH ao invés de um disco rígido. Algumas vezes esses sistemas são executados por recursos computacionais como teclado, tela, led. Ou podem ser executados sem teclado sem tela etc. 


5. Arduino.




5.1 O que é um Arduino.

Agora iremos falar sobre o Arduino. Ele tem uma plataforma física de computação de código aberto baseada em uma simples placa micro controladora, e ele tem seu próprio ambiente para desenvolvimento para escrever o código para a placa.

5.2 Utilizações do Arduino.

O Arduino pode ser usado para desenvolver diversos tipos de projetos, permitindo uma entrada de uma série de sensores, e controlando uma variedade de luzes, motores, etc.
Projetos do Arduino podem ser independentes ou podem se comunicar com software rodando em seu computador. Os circuitos podem ser montados à mão ou comprados pré-montados, o código para programação de código livre pode ser baixado de graça via Web.

5.3 Linguagens Arduino

A linguagem de programação do Arduino. Tem origem em Wiring (é uma plataforma de prototipagem eletrônica de hardware livre), e é essencialmente C/C++. O Objetivo do projeto é criar ferramentas que são acessíveis, com baixo custo, e fáceis de usar.

5.4 Softwares Arduino

O Arduino é uma aplicação multi plataforma escrita em JAVA na qual é derivada dos projetos Wiring, é projetado para introduzir a programação em pessoas que também ao tem muita familiaridade com o desenvolvimento de software.
Tendo a Biblioteca chamada “wirind”, ele possui a capacidade de programar em C/C++ (como foi falado no tópico 5.3). Isto permite com que criar operações de entrada e saída sejam muito mais facilidade. 



Hardware oficial


Diecimila.
O Arduino original é fabricado pela companhia italiana Smart Projects, porém a estadunidense SparkFun Electronics também possui algumas marcas comerciais sob a mesma licença.
Foram produzidas comercialmente 11 versões do dispositivo:[31]
ModeloDescrição e tipo de conexão ao hospedeiroControlador
Serial Arduino [17]Serial DB9 para programaçãoATmega8
Arduino Extreme[17]USB para programaçãoATmega8
Arduino Mini [17]Versão em miniatura do Arduino utilizando montagem superficialATmega168
Arduino Nano[32]Versão menor que o Arduino Mini, energizado por USB e conectado por montagem superficialATmega168/328
LilyPad Arduino[33][34]Projeto minimalista para aplicações portáteis, utilizando montagem superficialATmega168
Arduino NG[9]USB para programaçãoATmega8
Arduino NG plus[35]USB para programaçãoATmega168
Arduino BT[9][17]interface bluetooth para comunicaçãoATmega168
Arduino Diecimila[36]Interface USBAtmega168 em um pacote DIL28(foto)
ArduinoDuemilanove[17]Duemilanove significa "2009" em italiano. É energizado via USB/DC, com alternação automáticaAtmega168 (Atmega328 para a versão mais nova)
Arduino Mega[17]Montagem superficialATmega1280 para E/S adicionais e memória
Arduino Uno[37]Utiliza Atmega8U2 para driver conversor Serial-USB, ao invés do FTDI.
"Uno" significa "Um" em italiano.
Esta versão é considerada a versão 1.0 do projeto, sendo que as placas que sucederem a esta serão referenciadas.
ATmega328

Referencias

Weber, Raul Fernando. 1° edição (2000) “Arquitetura de Computadores Pessoais”
Instituto de informatica da UFGRS. Editora Sagra Luzzatto.
Stallings, William. 8° Ediçao(2009) “Arquitetura e Organização de computadores”.
Editora Pearson.