INFO: Dieses Forum nutzt Cookies...
Cookies sind für den Betrieb des Forums unverzichtbar. Mit der Nutzung des Forums erklärst Du dich damit einverstanden, dass wir Cookies verwenden.

Es wird in jedem Fall ein Cookie gesetzt um diesen Hinweis nicht mehr zu erhalten. Desweiteren setzen wir Google Adsense und Google Analytics ein.

Antwort schreiben 
 
Themabewertung:
  • 0 Bewertungen - 0 im Durchschnitt
  • 1
  • 2
  • 3
  • 4
  • 5
Schrittmotoren mit Joystick steuern
02.02.2015, 23:03
Beitrag #33
RE: Schrittmotoren mit Joystick steuern
Also ich studiere Elektrotechnik mit schwerpunkt elektrische energietechnik an der fh köln. hab jetzt ein semester hinter mir und alles geschafft bis jetzt Big Grin also es macht mir alles spaß und es liegt mir auch mehr oder weniger aber ich verstehe nicht wie man so etwas verlangen kann ohne auch nur einmal darüber geredet zu haben. ich sehe ein arduino das erste mal in dem projekt. mein prof sagt zwar dass es auch nicht schlimm ist wenn am ende des projekts nichts bei rum kommt aber dann verstehe ich den sinn des projekts nicht. und 2 wochen nur dumm rumsitzen und nichts machen nach dem motto "egal ob wir was machen oder nicht punkte gibts sowieso" will ich auch nicht.
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
03.02.2015, 09:59
Beitrag #34
RE: Schrittmotoren mit Joystick steuern
guten morgen thorsten.
habe nun den sketch hochgeladen und folgendes beobachten können:

der motor, den ich mit deinem ersten sketch normalerweise mit der horizontalen achse bediene dreht sich. sobald ich den joystick bediene tut sich gar nichts mehr.
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
03.02.2015, 10:53
Beitrag #35
RE: Schrittmotoren mit Joystick steuern
Hi,
tja, da müssen wir uns mal per Debug-Ausgaben hinarbeiten.
Versuch mal das hier:
Code:
#include <Stepper.h>

const int stepsPerRevolution = 200;  

#define MAXSPEED 60
#define MIDDLE_INTERVAL 50
                                    
Stepper stepperHorizontal(stepsPerRevolution, 8,9,10,11);    
Stepper stepperVertical(stepsPerRevolution, 4,5,6,7);                    

void setup() {
  stepperHorizontal.setSpeed(60);  
  stepperVertical.setSpeed(60);  
  Serial.begin(9600);              // falls gebraucht fuer Debugging
}

void loop() {

  /*
    Mittig: 523, 530
    rechts: 0, 533
    links: 1022, 554
    oben: 515, 0
    unten: 470, 1023
    halb oben: 525, 305
    halb rechts: 220, 473
    halb unten: 494, 760
    halb links: 750, 495
*/
  
  int horizontal = analogRead(A0);
  int speedHoriz = 0;
  if(abs(horizontal - 1023/2) > MIDDLE_INTERVAL)
      speedHoriz = map(horizontal,0,1023, -1* MAXSPEED, MAXSPEED);
    
  int vertical   = analogRead(A1);
  int speedVert = 0;
  if(abs(vertical - 1023/2) > MIDDLE_INTERVAL)
      speedVert = map(vertical,0,1023, -1* MAXSPEED, MAXSPEED);
  
  handleSteps(speedHoriz * stepsPerRevolution, speedVert * stepsPerRevolution);
}


void handleSteps(int stepsPerMinuteHoriz, int stepsPerMinuteVert) {
  
  static long lastHoriz = 0;
  static long lastVert = 0;
    
  long now = millis();

  Serial.print("Speed: ");
  Serial.print(stepsPerMinuteHoriz);
  Serial.print("/t");
  Serial.println(stepsPerMinuteVert);
  
  if(stepsPerMinuteHoriz)
    if(lastHoriz - now > 60000 / stepsPerMinuteHoriz) {
      Serial.println("Step Horizontal");
      if(stepsPerMinuteHoriz > 0)
        stepperHorizontal.step(1);
      else
        stepperHorizontal.step(-1);
      lastHoriz = now;
    };
  if(stepsPerMinuteVert)
    if(lastVert - now > 60000 / stepsPerMinuteVert) {
      Serial.println("Step Vertical");
      if(stepsPerMinuteVert > 0)
        stepperVertical.step(1);
      else
        stepperVertical.step(-1);
      lastVert = now;
    };      
};
Schalte den Serial Monitor ein und bewege den Joystick ganz hoch, runter, links, rechts. Ich hätte gerne die Ausgabe davon, oder zumindest den Teil während Du den Joystick bewegst.
Gruß,
Thorsten

Falls ich mit einer Antwort helfen konnte, wuerde ich mich freuen, ein paar Fotos oder auch ein kleines Filmchen des zugehoerigen Projekts zu sehen.
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
03.02.2015, 11:07
Beitrag #36
RE: Schrittmotoren mit Joystick steuern
hoch: Speed: 0/t-12000
rechts: Speed: -12000/t0
links: Speed: 12000/t0
runter: Speed: 0/t120000

hier schwanken die werte aber auch immer +-2000. aber dennoch ist -12000 der kleinste wert und 12000 der größte.
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
03.02.2015, 11:11
Beitrag #37
RE: Schrittmotoren mit Joystick steuern
Oh, ich Depp.
Neues Coding:
Code:
#include <Stepper.h>

const int stepsPerRevolution = 200;  

#define MAXSPEED 60
#define MIDDLE_INTERVAL 50
                                    
Stepper stepperHorizontal(stepsPerRevolution, 8,9,10,11);    
Stepper stepperVertical(stepsPerRevolution, 4,5,6,7);                    

void setup() {
  stepperHorizontal.setSpeed(60);  
  stepperVertical.setSpeed(60);  
  Serial.begin(9600);              // falls gebraucht fuer Debugging
}

void loop() {

  /*
    Mittig: 523, 530
    rechts: 0, 533
    links: 1022, 554
    oben: 515, 0
    unten: 470, 1023
    halb oben: 525, 305
    halb rechts: 220, 473
    halb unten: 494, 760
    halb links: 750, 495
*/
  
  int horizontal = analogRead(A0);
  int speedHoriz = 0;
  if(abs(horizontal - 1023/2) > MIDDLE_INTERVAL)
      speedHoriz = map(horizontal,0,1023, -1* MAXSPEED, MAXSPEED);
    
  int vertical   = analogRead(A1);
  int speedVert = 0;
  if(abs(vertical - 1023/2) > MIDDLE_INTERVAL)
      speedVert = map(vertical,0,1023, -1* MAXSPEED, MAXSPEED);
  
  handleSteps(speedHoriz * stepsPerRevolution, speedVert * stepsPerRevolution);
}


void handleSteps(int stepsPerMinuteHoriz, int stepsPerMinuteVert) {
  
  static long lastHoriz = 0;
  static long lastVert = 0;
    
  long now = millis();

  if(stepsPerMinuteHoriz)
    if(now - lastHoriz > 60000 / stepsPerMinuteHoriz) {
      if(stepsPerMinuteHoriz > 0)
        stepperHorizontal.step(1);
      else
        stepperHorizontal.step(-1);
      lastHoriz = now;
    };
  if(stepsPerMinuteVert)
    if(now - lastVert > 60000 / stepsPerMinuteVert) {
      if(stepsPerMinuteVert > 0)
        stepperVertical.step(1);
      else
        stepperVertical.step(-1);
      lastVert = now;
    };      
};
Gruß,
Thorsten

Falls ich mit einer Antwort helfen konnte, wuerde ich mich freuen, ein paar Fotos oder auch ein kleines Filmchen des zugehoerigen Projekts zu sehen.
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
03.02.2015, 11:19
Beitrag #38
RE: Schrittmotoren mit Joystick steuern
vielen dank erstmal thorsten.

nun funktionierts für runter und links wie gewünscht. bei hoch und rechts drehen sich die motoren bei der kleinsten bewegung schon mit höchstgeschwindigkeit. Huh
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
03.02.2015, 12:17
Beitrag #39
RE: Schrittmotoren mit Joystick steuern
Hi,
ach ja...
Code:
#include <Stepper.h>

const int stepsPerRevolution = 200;  

#define MAXSPEED 60
#define MIDDLE_INTERVAL 50
                                    
Stepper stepperHorizontal(stepsPerRevolution, 8,9,10,11);    
Stepper stepperVertical(stepsPerRevolution, 4,5,6,7);                    

void setup() {
  stepperHorizontal.setSpeed(60);  
  stepperVertical.setSpeed(60);  
  Serial.begin(9600);              // falls gebraucht fuer Debugging
}

void loop() {

  /*
    Mittig: 523, 530
    rechts: 0, 533
    links: 1022, 554
    oben: 515, 0
    unten: 470, 1023
    halb oben: 525, 305
    halb rechts: 220, 473
    halb unten: 494, 760
    halb links: 750, 495
*/
  
  int horizontal = analogRead(A0);
  int speedHoriz = 0;
  if(abs(horizontal - 1023/2) > MIDDLE_INTERVAL)
      speedHoriz = map(horizontal,0,1023, -1* MAXSPEED, MAXSPEED);
    
  int vertical   = analogRead(A1);
  int speedVert = 0;
  if(abs(vertical - 1023/2) > MIDDLE_INTERVAL)
      speedVert = map(vertical,0,1023, -1* MAXSPEED, MAXSPEED);
  
  handleSteps(speedHoriz * stepsPerRevolution, speedVert * stepsPerRevolution);
}


void handleSteps(int stepsPerMinuteHoriz, int stepsPerMinuteVert) {
  
  static long lastHoriz = 0;
  static long lastVert = 0;
    
  long now = millis();

  if(stepsPerMinuteHoriz)
    if(now - lastHoriz > 60000 / abs(stepsPerMinuteHoriz)) {
      if(stepsPerMinuteHoriz > 0)
        stepperHorizontal.step(1);
      else
        stepperHorizontal.step(-1);
      lastHoriz = now;
    };
  if(stepsPerMinuteVert)
    if(now - lastVert > 60000 / abs(stepsPerMinuteVert)) {
      if(stepsPerMinuteVert > 0)
        stepperVertical.step(1);
      else
        stepperVertical.step(-1);
      lastVert = now;
    };      
};
Gruß,
Thorsten

Falls ich mit einer Antwort helfen konnte, wuerde ich mich freuen, ein paar Fotos oder auch ein kleines Filmchen des zugehoerigen Projekts zu sehen.
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
03.02.2015, 13:21
Beitrag #40
RE: Schrittmotoren mit Joystick steuern
vielen vielen dank läuft alles wie gewünscht Big Grin

werde am ende der woche meine ergebnisse hochladenShy
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
Antwort schreiben 


Möglicherweise verwandte Themen...
Thema: Verfasser Antworten: Ansichten: Letzter Beitrag
  Android Smartphone über Bluetooth steuern StephanBuerger 0 88 25.11.2016 20:01
Letzter Beitrag: StephanBuerger
  Zwei Schrittmotoren mit Arduino steuern MarcusW 6 2.385 28.09.2015 21:05
Letzter Beitrag: Bitklopfer
  Sensor an Arduino über IP abfragen/steuern kubinek 5 2.623 03.08.2015 21:14
Letzter Beitrag: Haustechno
  Schritttmotor mit Endstufe HY-DIV268N-5A steuern Schrittmotor 5 2.187 28.07.2015 10:37
Letzter Beitrag: Scherheinz
  50+ Schrittmotoren steuern. ayu 18 4.925 25.06.2015 10:55
Letzter Beitrag: ayu
  Hilfe; Servos über schalter steuern??? Soempe 9 8.197 28.04.2015 09:49
Letzter Beitrag: badges
  LED stripes steuern roller64 2 1.156 21.04.2015 20:48
Letzter Beitrag: roller64
  Quadrocopter-Dronen autonom per Wifi steuern? HaWe 11 1.785 10.03.2015 16:11
Letzter Beitrag: HaWe
  12 Schrittmotoren mit Arduino Mega 2560 Fipso 3 2.033 06.03.2015 22:38
Letzter Beitrag: HaWe
  7-Segment Led common anode mit 74HC595 und TIP31C steuern myqubus 0 815 15.01.2015 18:51
Letzter Beitrag: myqubus

Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 2 Gast/Gäste