Arduino  Shield

Ferramentas Lógicas Software 
// Estrutura Arduino // configuração&Instalação // programação// Palavras reservadas Arduino // Sintaxe  Arduino // Arduino Variáveis

StepMotor //

As Três Leis da Robótica:
1) um robô não pode ferir um humano ou permitir que um humano sofra algum mal;
2) os robôs devem obedecer às ordens dos humanos, exceto nos casos em que tais ordens entrem em conflito com a primeira lei;
3) um robô deve proteger sua própria existência, desde que não entre em conflito com as leis anteriores.
Aplicações úteis
ElectroDroid
Driver Arduino UNO





Links Arduino - Links variados com informações e exemplos de projetos em arduino

Ferramentas Lógicas Software        
          http://123d.circuits.io 
          www.fritzing.org

Cheat Sheet Arduino 
Arduino Reference Guide 27  //
Arduino Reference Guide 40  //
Arduino Reference Guide 912

Introdução

Estrutura Arduino  -  Introdução ao Arduino.PPTX

Digital pin – 0 a 13 fornecem acesso ao chip

Podem funcionar como input ou output
    INPUT - lendo variações de voltagem de um dispositivo externo
    OUTPUT - aplicar uma determinada voltagem entre 0 e 5 volts para um     dispositivo externo

Pins 3 -  5 -  6 -  9 - 10 - 11 pulse modulation ~
    Podem ajustar a quantidade de volts que aplicam a um dispositivo     externo (entre 0 e 5 volts)

Pin 1 - TX (transmitir)
Pin 0 - RX (receber)
Sempre que é necessário a comunicação entre o Arduíno e o computador é através destas portas que o fazemos.

Analog In pin 0 ao 5 – analog to digital
Recebe sinais analógicos e transforma-os em sinais digitais.
Arduino - configuração&Instalação -  Install the Arduino Software (IDE)
Siga as instruções na seção Primeiros passos do site da Arduino, arduino.ccGuide
Arduino - programação  (Programa para Arduino = “SKETCH” ) - Estrutura de um sketch

<declarações> : declaração de constantes, variáveis, tipos, etc (OPCIONAL)
void setup ( ) { <codigo> } : <codigo> é executado uma só vez; serve principalmente para efetuar inicializações
void loop ( ) { <codigo> } : após a execução de “setup”, <codigo> é executado de modo contínuo (em ciclo) até que a
alimentação seja desligada (ou reset ).

Comentários
//linha de comentário
/*
texto de comentário
*/



Primeiro Programa
void setup()
{
Serial.begin(9600);
Serial.println("Olá Mundo");
}
void loop()
{}
TOP
Palavras reservadas Arduino // Arduino reserved words
arduino.cc/en/RefHomePage



Sintaxe  Arduino Syntax
Vamos abrir o exemplo:  Ficheiro > Exemplos > Basics > DigitalReadSerial

/*
Comentário com mais de uma linha
*/
        //  Pin  2 tem um botão ligado a ele
       //; informa o compilador o fim de linha
      // É nesta área que se faz a declaração de variáveis
int pushButton = 2;
      //Funções (A saber que há linhas de código por traz da função SETUP porque é uma função)
       //Corre apenas uma vez
      // void esta função não retorna nenhum valor para o programa
      // Chavetas dão início e fim à função
void setup() {
        // Indicia a serial communication at 9600 bits per second:
  Serial.begin(9600);
        // O pin2 do pushButton tem função de INPUT
  pinMode(pushButton, INPUT);
}

       // LOOP é outra função que corre infinitamente
void loop() {
       // Lê o input pin:
int buttonState = digitalRead(pushButton);
       // imprime o estado do botão (0 desligado – 1 ligado):
Serial.println(buttonState);
delay(1000);   
     // delay 1 segundo
}

TOP


Arduino Variáveis
As variáveis permitem-nos guardar e transportar informação de uma parte para outra do programa. É necessário ter em conta que as variáveis devem estar de acordo com o tipo de dados que vão transportar/armazenar.

Atente à seguinte analogia: Um trabalhador necessita de transportar/guardar, cimento e água, para isso dispõe de um saco de papel e de um balde de plástico. Agora o trabalhador deve decidir em que recipientes deve colocar a água e o cimento.
Condições:
Balde de plástico – Pode transportar água e cimento.
Saco de papel – pode transportar cimento, mas não pode transportar água.   
Então
A melhor opção será transportar o cimento no saco de papel e a água no balde de plástico
.

O mesmo acontece com os dados, as variáveis devem ser escolhidas em função do tipo de dados que vão armazenar/transportar.

Para evitar erros nunca use caracteres especiais numa variável e nunca comesse uma variável por número

Declarar inicializar variáveis
Declarar – Para declarar uma variável basta indicar ao programa o nome da nossa variável e o tipo de dados que ela pode conter:
           int ledTeste; // declara a variável com o nome ledTeste que pode conter números Inteiros
Inicializar – Para inicializar uma variável basta indicar o dado que ficará guardado nela:
          ledTeste = 13; // Inicializa a variável ledTeste com o valor de 13

Também podemos declarar e inicializar uma variável ao mesmo tempo:
          int ledTeste = 13;


Digital Pins

LED a piscar

Objetivos:
INPUT   OUTPUT - Definir o modo de um PIN, pode ser INPUT ou OUTPUT
HIGH   LOW - Escrever voltagens num pin digital do arduino, pode ser HIGH ou LOW, ligado ou desligado, respetivamente
delay – Permite adiar um acontecimento
Serial.println(Variável) - Permite enviar uma informação para o serial monitor.
                VARIAÇÕES // Serial.print(Variável) // Serial.println(Variável) //Serial.println("Mensagem ao utilizador através do serial monitor")
digitalRead(Variável) - Permite ler o valor de um determinado pin.
                   VARIAÇÕES //   Variável1 = digitalRead(Variável2) - Neste caso a Variável1 é atribuido o valor de Variável2

Exercício


No IDE do arduino abrir - Ficheiro > Exemplos > Basics > DigitalReadSerial

Desafios:
1-    Altera os valores de delay para ver o que acontece.
2-    Altera o número do pin 13 para 12 e faz as devidas alterações no programa e no circuito.
3-    Altera o teu programa para que em vez de 1 led acenda dois ao mesmo tempo.
         3.1 – Altera o programa para que os leds pisquem alternadamente.
4- Faz com que o que está a acontecer apareça no serial monitor e interpreta o resultado.
Ajuda



Ponto da situação:
Vamos verificar o que já aprendemos da nossa Cheat Sheet Arduino 

INPUT   OUTPUT - Definir o modo de um PIN, pode ser INPUT ou OUTPUT
HIGH   LOW - Escrever voltagens num pin digital do arduino, pode ser HIGH ou LOW, ligado ou desligado, respetivamente
delay – Permite adiar um acontecimento
Serial.println(Variável) - Permite enviar uma informação para o serial monitor.
                VARIAÇÕES // Serial.print(Variável) // Serial.println(Variável) //Serial.println("Mensagem ao utilizador através do serial monitor")
digitalRead(Variável) - Permite ler o valor de um determinado pin.
                   VARIAÇÕES //   Variável1 = digitalRead(Variável2) - Neste caso a Variável1 é atribuido o valor de Variável2
Variáveis - int
Serial.begin(9600) - Permite iniciar o serial monitor





Analog Pins - Pins analógicos



Arduino 2 pptx







LINKS
Motor Passo   StepMotor - explicado https://www.youtube.com/watch?v=eyqwLiowZiU
Easy Driver Examples
Sample code and projects to get your stepper running!

Stepper Motor and ULN2003 Driver Intro
https://github.com/BretStateham/28BYJ-48/tree/master/Arduino
https://www.youtube.com/watch?v=B86nqDRskVU

Step a funcionar como um motor DC usando um capacitor https://www.youtube.com/watch?v=ZEcQW5rCbSQ&spfreload=5

Para descobrir a polaridade de um motor STEPhttps://www.youtube.com/watch?v=hHe4Fc6uuBs - OU fornecer 5 v a um dos fios, que deverá ser o do meio, e descobrir as hipóteses. Exemplo: Um motor com 5 fios - fornecer energia (5v) ao fio do meio e testar o negativo uma vez em cada fio, até descobrir a sequência. Normalmente um Step com 5 fios (1-2-3-4-5) 3=5v; Sequência 1;5;2;4 
Arduino Examples

Vários exemplos de projetos em arduino **** robot-electronics.co.uk
Vários exemplos de projetos em arduino ****startingelectronics.org  
Vários exemplos de projetos em arduino ****learn.adafruit.com  














Página em construção