• Witaj na Forum Arduino Polska! Zapraszamy do rejestracji!
  • Znajdziesz tutaj wiele informacji na temat hardware / software.
Witaj! Logowanie Rejestracja


Ocena wątku:
  • 0 głosów - średnia: 0
  • 1
  • 2
  • 3
  • 4
  • 5
sterowanie krokowcem - pozycjoner
#1
Hej,
na początku od razu uprzedzam, że jestem kompletnym amatorem.
Zamarzył mi się mały pozycjoner, który mechanicznie zrobiłem sobie z prowadnicy lasera od starego CD'ka

Sterować nim chce za pomocą IR - pilota już mam, guziki sobie zdekodowałem.

Lewo/Prawo mi jedzie ale tylko zadaną wartość w krokach, którą mu podałem.

Chciałbym na początku dodać funkcje
Trzymam guzik/przycisk "A" - tak długo jak trzymam tak długo jedzie w prawo z określoną w programie prędkością
guzik/przycisk "B" - analogicznie to samo tylko w lewo

ewentualnie dodać rampę, że z upływem czasu prędkość narasta ?

Pomoże ktoś?

Kod:
#include "Stepper.h"
#include "IRremote.h"

/*----- Variables, Pins -----*/
#define STEPS  32   // Number of steps per revolution of Internal shaft
int  Steps2Take;  // 2048 = 1 Revolution
int receiver = 6; // Signal Pin of IR receiver to Arduino Digital Pin 6

/*-----( Declare objects )-----*/
// Setup of proper sequencing for Motor Driver Pins
// In1, In2, In3, In4 in the sequence 1-3-2-4

Stepper small_stepper(STEPS, 8, 10, 9, 11);
IRrecv irrecv(receiver);    // create instance of 'irrecv'
decode_results results;     // create instance of 'decode_results'

void setup()
{
 irrecv.enableIRIn(); // Start the receiver
}

void loop()
{
if (irrecv.decode(&results)) // have we received an IR signal?

 {
   switch(results.value)

   {

     case 0x8C549057: // UP button pressed
                     small_stepper.setSpeed(500); //Max seems to be 700
                     Steps2Take  =  10;  // Rotate CW
                     small_stepper.step(Steps2Take);
                     delay(2000);
                     break;

     case 0xDE5526F7: // DOWN button pressed
                     small_stepper.setSpeed(500);
                     Steps2Take  =  -10;  // Rotate CCW
                     small_stepper.step(Steps2Take);
                     delay(2000);
                     break;
                     
   }
   
     irrecv.resume(); // receive the next value
 }  


}/* --end main loop -- */
 
Odpowiedź
  


Wiadomości w tym wątku
sterowanie krokowcem - pozycjoner - przez pu5z3k - 23-02-2018, 09:35

Skocz do:


Przeglądający: 1 gości