Bibliotecas
Inclua as bibliotecas na pasta “libraries” dentro da pasta de instalação do Arduíno que normalmente fica em “c:\arquivos de programas\Arduino”.
Para sensor ultrasônico: https://github.com/filipeflop/Ultrasonic/archive/master.zip
Para Shield AFMOTOR: https://github.com/adafruit/Adafruit-Motor-Shield-library/zipball/master
Código exemplo para o Robô
//Carrega a biblioteca do sensor ultrassonico #include <Ultrasonic.h> //Carrega a biblioteca do Shield AFMOTOR #include <AFMotor.h> //Define os pinos para o trigger e echo #define pino_trigger 9 #define pino_echo 10 AF_DCMotor motorD(2); //seleciona o motor 2 AF_DCMotor motorE(3); //seleciona o motor 3 //Inicializa o sensor nos pinos definidos acima Ultrasonic ultrasonic(pino_trigger, pino_echo); void setup() {} void frente(int tempo){ motorE.setSpeed(255); motorD.setSpeed(255); motorE.run(FORWARD); motorD.run(FORWARD); delay(tempo); } void re(int tempo){ motorE.setSpeed(255); motorD.setSpeed(255); motorE.run(BACKWARD); motorD.run(BACKWARD); delay(tempo); } void parar(int tempo){ motorE.setSpeed(0); motorD.setSpeed(0); motorE.run(BACKWARD); motorD.run(BACKWARD); delay(tempo); } void esquerda(int tempo){ motorE.setSpeed(200); motorD.setSpeed(100); motorE.run(FORWARD); motorD.run(BACKWARD); delay(tempo); } void direita(int tempo){ motorE.setSpeed(2000); motorD.setSpeed(100); motorE.run(FORWARD); motorD.run(BACKWARD); delay(tempo); } void loop() { //Faz a leitura da distancia do sensor float centimetros; long microsec = ultrasonic.timing(); centimetros = ultrasonic.convert(microsec, Ultrasonic::CM); //final do código para a leitura do sensor if(centimetros<10){ parar(1000); } frente(100); /* parar(150); esquerda(450); parar(150); esquerda(450); parar(150); esquerda(450); parar(150); direita(350); parar(150); direita(350); parar(150); direita(350); parar(150); */ }