RuiViana

LC_Step_Pot.ino

Aug 19th, 2018
145
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1.  
  2. // Declaração Global de constantes que representarão os pinos do Arduino
  3. #define meuEna 2
  4. #define minhaDir 3
  5. #define meuStep 4
  6.  
  7. #define sensorEixo  A0              // Potenciômetro do EIXO.
  8. #define comando  A1                 // Potenciômetro usado para COMANDO da posição do servo.
  9.  
  10. int leitura_comando = 0;            // Variável que armazena o valor da leitura do COMANDO.
  11. int leitura_eixo = 0;               // Variável que armazena o valor da leitura do SENSOR DO EIXO.
  12. int velocidade = 3;
  13. //-----------------------------------------------------------
  14. void setup()
  15. {
  16.   Serial.begin(9600);
  17.   pinMode(meuEna, OUTPUT);           // Ajustando os pinos do Arduino para operarem como saídas digitais
  18.   pinMode(minhaDir, OUTPUT);
  19.   pinMode(meuStep, OUTPUT);
  20.   pinMode(comando, INPUT);            // Ajustando os pinos do Arduino resposáveis pela leitura dos potenciômetros
  21.   pinMode(sensorEixo, INPUT);
  22. }
  23. //----------------------------------------
  24. void loop()
  25. {
  26.   leitura_comando = analogRead(comando);        // leitura do potenciometro de comando
  27.   delay(5);
  28.   leitura_eixo = analogRead(sensorEixo);        // leitura do potenciometro de posicao do eixo
  29.   Serial.print("Comando :");Serial.println(leitura_comando);
  30.   Serial.print("Eixo :");Serial.println(leitura_eixo);
  31.   if (leitura_eixo < leitura_comando - 5)       // Avaliação da direção do movimento
  32.   {
  33.     digitalWrite(minhaDir, HIGH);
  34.     digitalWrite(meuStep, HIGH);
  35.     delay(velocidade);
  36.     digitalWrite(meuStep, LOW);                 // Girar o EIXO no sentido de AUMENTAR a leitura do sensor
  37.   }
  38.   if (leitura_eixo > leitura_comando + 5)
  39.   {
  40.     digitalWrite(minhaDir, LOW);
  41.     digitalWrite(meuStep, HIGH);
  42.     delay(velocidade);
  43.     digitalWrite(meuStep, LOW);                 // Girar o EIXO no sentido de REDUZIR a leitura do sensor
  44.   }
  45. //  delay(velocidade);                            // Aguarde para repetir
  46. }
RAW Paste Data