quarta-feira, 27 de julho de 2011

Apostilas para Inicio de Arduino

     A pedido do pessoal do CEFET, hoje houve uma palestra que eu e a minha turma fizemos com a organização da Desiree.

     No blog já possui duas apostilas falando de cada função, estrutura falando da parte de programação, isso tem na segunda postagem do blog. Segunda Postagem nome dos links são Programação Arduino e Arduino.

     Essa nova apostila é para o pessoal pode estudar a montagem de projetos simples, bem básicos e entender a programação e ir evoluindo com o arduino. Arduino Experiments Guide.

Espero que goste dessa apostila, da para estudar bem o arduino em cima dessa apostila, mas ela é toda em inglês. Até mais...

segunda-feira, 18 de julho de 2011

Configurando o Arduino no Windows XP

     Bom pessoal, para quem está começando a usar o Arduino e está tendo problemas ao reconhecer a placa ao computador, vou ensinar como instalar a placa do Arduino no computador (para o sistema operacional Windows XP):

     Geralmente não precisa instalar nada, quando conecta o hardware no computador, ele automaticamente reconhece e funciona normalmente. Mas sempre ocorrem erros e ai precisa instalar o drive da placa no computador. Olhando as explicações do Blog do Natanael, multilogica-shop e outros sites que pesquisei no Google.

Primeiramente, verifique-se se o cabo USB está funcionando muito bem, se há mau contato (se há solda junta) no FTDI (que fica localizado logo atrás do USB) que pode ter sido erro na fabricação. Configurou-se o programa do Arduino para a versão da placa certa e a porta certo (Tools > Board ou SerialPort). Feito isso, começamos a instalação do driver. Caso tenha duvida o que é FTDI:


     Baixe a ultima versão do Arduino que no momento é o arduino-0022. Conecte o Arduino no computador, ao conectar no canto inferior direito, deve aparecer um balão escrito que há um dispositivo desconhecido (se só aparecer isso, clicar nele e aparecerá uma janela, clicar em driver e atualizar driver) se não aparecer esse balão e logo de cara aparecer uma janela igual ao da imagem, selecione "Instalar de uma lista ou local específico (avançado) e em seguida, avançar:


     Logo após que avançar, vai pedir para você localizar o driver da placa, que está localizado (arduino-0022\drivers\FTDI USB Drivers), e clicar em avançar de novo, mas desmarque a opção Pesquisar mídia removível:


     Assim que avançar, vai carregar o sistema e deve aparecer uma tela que nem o da imagem, falando que o drive foi instalado:


     Feito isso, para testar mesmo se foi abre o programa arduino-0022, vai em File>Exemples>Basic>Blink para fazer o teste, vai ficar acendendo o LED do pino 13 por um segundo e desligar com o mesmo tempo, isso tempo todo (está dentro do loop).

     Caso, feito isso e deu erro quando carregou o sistema, falando que o driver não foi instalado. Instale o Java mais atual que existe É isso mesmo, nenhum outro tutorial fala isso, o ambiente de desenvolvimento do Arduino é implementado em Java, então você deve instalar o JRE na sua máquina para funcionar. Para isso acesse este link e baixe a versão mais atual do Java para sua máquina.

     Feito isso, tente novamente. Caso contrario, atualize o software do FTDI, acesse este link e pegue a versão mais atual e compatível com o seu sistema e faça a mesma coisa, mas só que... Na hora de localizar o driver, não é mais o driver do programa arduino (arduino-0022\drivers\FTDI USB Drivers) e sim o driver do FTDI que vai ser onde você descompactou no local que desejado e repita o mesmo procedimento até carregar.

     Feito isso, creio que o seu Arduino vai rodar no computador normalmente... Mas antes verifique tudo, como foi dito logo no início da postagem. Espero que isso ajude e muito vocês.

Até mais...

sábado, 16 de julho de 2011

Simulando Circuitos

     O link a seguir é um programa que geralmente utilizamos (até o pessoal do arduino.cc) Fritzing para fazer os esquemas de circuitos e projetar antes como ficará o projeto para que não ocorra nenhum erro. Mas simulação só de imagens mostrando como monta, não detecta se o circuito está certo ou errado.

     O link que passei é do site, só ir à parte de download que irá baixar a ultima versão do software. Nele também podemos fazer programações (creio que também pode mandar a programação por esse programa, nunca experimentei).

     Todas as imagens que usei no meu blog foram todas feitas por esse programa, podemos fazer os circuitos no protoboard, esquemático e PCB. No PCB podemos também até em fazer as placas de circuito impresso, criamos o layout e depois é clicar em exportar para PDF.

Espero que tenham sido útil. Logo postarei os meus projetos de robótica, estou terminando de montar e postarei detalhando tudo.

Até mais...

segunda-feira, 11 de julho de 2011

Ponte H

     Agora é a vez de falar de programação desse CI, comentei só da montagem e de cada terminal. Mas essa explicação é bem curta é rápida.

     Como no motor comum só se usa 1 terminal do arduino, com a ponte H, usamos 2 terminais do arduino para cada motor. No caso de ligarmos um dos terminais o outro tem que está desligado e vice versa (ligou terminal 1, motor horário, ligou terminal 2, motor anti-horário ). Mas nunca pode ligar os 2 terminais ligados.

A programação fica assim (mas vou falar só do acionamento dos motores, porque qual terminal do arduino e o void setup() já conhecemos):

  analogWrite(motor_direito_frente, 255);     //Exemplo: terminal 10 do arduino
  analogWrite(motor_direito_atras, 0);     //Exemplo: terminal 9 do arduino
  analogWrite(motor_esquerdo_frente, 255);     //Exemplo: terminal 5 do arduino
  analogWrite(motor_esquerdo_atras, 0);     //Exemplo: terminal 4 do arduino

     Como viram que eu especifiquei o motor do sentido oposto do que desejo. Isso para o arduino ter certeza (porque podem ocorrer falhas) que o outro pino vai está desligado e não gerar conflito. Com essa maneira você precisa ficar digitando varias vezes isso. Existem várias maneiras para simplificar isso. Podemos em vez de ficar digitando isso várias vezes criar um comando e a partir do nome desse comando irá identificar o que deseja fazer. (exemplo: se eu digitar anda(); o arduino irá identificar que esse comando significar a programação que coloquei logo acima)
     Mas ensinarei logo como simplificar a programação e fazer esses comandos.


Espero que tenham entendido pessoal... Até mais...

quarta-feira, 6 de julho de 2011

Controle pelo Teclado

     Esse tipo de programação é bem tranquilo de fazer e de entender também, mas para fazer isso precisa ter em mãos a Tabela ASCII (American Standard Code for Information Interchange) para fazer a programação, usamos só o valor decimal.
O que está marcado em amarelo não é utilizado, é o valor em decimal e ao lado o correspondente.
     Vamos usar nessa programação, duas novas funções Serial.read() e o Serial.available():
-Serial: Ele se comunica nos pinos digitais 0 (RX) e 1 (TX), bem como com o computador via USB.
-read: Serve para lê as entradas de dados do serial.
-available: Serve para obter o números de bits disponível para a leitura da porta serial.


void setup()
{
 Serial.begin(9600);
}

void loop()
{
  if(Serial.available()>0)
  {
    n = Serial.read();
    Serial.print("Voce digitou: ");
    Serial.println(n, BYTE); // Imprime na tela o valor do telhado em BYTE

    if(n==119)  // tecla w (minusculo)
    {
      //Tecla ação 1, ex.: se for um carrinho anda para frente
    }
    if(n==115)  // tecla s (minusculo)
    {
      //Tecla ação 2, ex.: carrinho anda para tras
    }
    if(n==100)  // tecla d (minusculo)
    {
      //Tecla ação 3, ex.: carrinho anda para a direita
    }
    if(n==97)  // tecla a (minusculo)
    {
      //Tecla ação 4, ex.: carrinho anda para a esquerda
    }
  }
}

     Esse n eu declarei como uma variável qualquer, dei exemplos de 4 ações só mas podemos criar varias ações para ficar controlando pelo teclado. Lembrando que no void setup() precisa colocar o Serial.begin(9600). Também usei como exemplo para controlar carrinho, mas podemos usar para controlar leds, fazer teclado musical (usando um piezo) (mas tem que ficar de olho nos valores).
     Mas para funcionar, assim que passar a programação para o arduino, clica no Serial Monitor e abrirá uma janela como a imagem a seguir. Na barra onde digitamos a tecla e logo em seguida aperte enter, pronto a função que você escolhe irá funcionar.

Vídeo:
Espero que tenham entendido, qualquer coisa só deixar como comentário que explicarei.
Até mais...

segunda-feira, 4 de julho de 2011

Sistema Sensor de Toque


     Explicar agora a montagem do Sistema Sensor de Toque, nesse projeto estou usando a chave switch mas podemos usar outros componentes como pushbutton ou que construirmos (ai sim, quando construirmos deixa de ser o sistema e sim só o sensor, mas o sistema é fazer que o arduino leia os valores).
     Vou usar esse Sistema para o meu projeto detectar se há ou não obstáculos à frente. Podemos usar outras maneiras para detectar isso, usando Ultrassom ou Detector de distancia (que usa o led infravermelho em alguns casos).

Material Usado:
-Chave Switch;
-Fios Cabinhos;
-Tubo (caneta velha);
-Resistor de 100kohm;
-Barra de Terminais Macho;
-Fita Isolante;

     Usei o tubo de caneta velha para pode prender o sensor numa ponta e a outra no projeto e também ta um alcance maior para que o projeto não fique muito encima do obstáculo. Para ter uma aparecia melhor peguei fita isolante e envolvi o tubo todo.

Esquema de como ficou o circuito, CF:Normalmente Circuito Fechado, CA:Normalmente Circuito Aberto, CM:Comum.

Nessa foto é o Sistema já pronto, com a fita isolante que comentei, para ficar firme os fios eu dei uns pingos de cola quente nas 2 extremidades da caneta, para fixar a chave switch e para os fios também.

     Esse esquema vai funcionar como no arduino: Quando a CF (que está conectado ao 5v) não estiver pressionado, que dizer que está passando corrente para o comum e o analógico do arduino fica lendo (como coloquei o resistor de 100kohm, varia de 0 - 900, diferença mínima).
     Quando pressionar a chave, o CF abre o circuito e o CA fecha. Mas como o CA está ligado a GND o analógico ver que não passa nenhuma corrente e o valor fica em 0 (pode variar um pouquinho o valor, fuga de corrente, de 0 - 20).

     Logo postarei como se programa, sendo que é idem a programação do Sistema Sensor de Luz, praticamente não há diferença e pode fazer nos 2 jeitos.

Até mais...
 
Blogger Templates