Pages: 1 2 [3] 4   Go Down
Author Topic: Brauche schnelle Hilfe ... Weiß nicht weiter! ( RPM auslesen)  (Read 3098 times)
0 Members and 1 Guest are viewing this topic.
Offline Offline
Newbie
*
Karma: 0
Posts: 43
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Danke erstmal =)
Der Motor dreht erst am 150 ...

Zudem kommen werden von 1-10 raus .... Querbeet...



150  7
150  4
150  4
150  7
150  2
150  7
150  3
150  8
150  4
150  4
150  2
150  6
150  4
150  4
150  5
150  3
150  5
150  4
150  5
Target-RPM-Counter: 7
150  7
155  3
160  4
165  3
170  5
175  4
180  3
180  6
185  4
185  6
190  4
190  7
190  7
195  2
200  5
205  5
210  4
215  5
220  4
225  5
230  5
235  3
235  6
240  4
245  3

Logged

Offline Offline
Newbie
*
Karma: 0
Posts: 43
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Das ist unser Motor ...


http://www.yatego.com/aldiho-de/p,4dab0d3c4651d,4d6bb16431bd38_9,lego-set-5225-lego-motor-9v--71427-43362-
Logged

Weinsberg, Germany
Offline Offline
God Member
*****
Karma: 2
Posts: 770
A Coder's Tale
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

Tja dann fürchte ich, dass Dein Aufbau anders ist als meiner. Ich hatte hier nur nen Lüfter rumliegen...
Logged

Offline Offline
Newbie
*
Karma: 0
Posts: 43
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Ne Idee wie ich mit diesem hinbekomme?
Grüße
Logged

0
Offline Offline
Faraday Member
**
Karma: 19
Posts: 3420
20 LEDs are enough
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

Sicher nicht dadurch, daß Du einen zweiten Thread zur gleichen Frage aufmachst: http://arduino.cc/forum/index.php/topic,98828.0.html.

Eine bessere Idee ist es erst einmal sehr genau zu beschreiben was Du tust und wie Dein Aufbau aussieht. Die Leute die sich besser auskennen haben in der Regel keine Zeit zu raten was Du möglicherweise aufgebaut hast.

Also:
- wie sieht die Schaltung aus?
- wie sieht im Moment die Software aus? (Bitte mit code Tags setzen, so wie Joghurt das macht)
- wie sollte sich die Software verhalten?
- wie verhält sie sich im Moment?
Logged

Check out my experiments http://blog.blinkenlight.net

Offline Offline
Newbie
*
Karma: 0
Posts: 43
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Ok danke ...

Also ich benötige Hilfe um einen Motor zu regeln.
Fakten ich habe einen Legomotor über einen Transistor (Toshiba 2N3055) mit dem Ardunio verbunden.
Dieser Motor hat bewegt eine Art Scheibe, diese Läuft durch eine Lichtschranke (Aus alter Maus).
Diese soll nun erfassen, wie schnell sich der Motor dreht.
Sollte dieser seine Geschwindigkeit verringert haben, soll er nach regeln.
Momentan sehe ich nur den Aus/An - Zustand auf Pin 13

Im Anhang bilder zum Projekt.
[/URL]
[/img] Lichtschranke
[/URL]
[/img] Transistorschaltung
[/URL][/img] Schaltung

Code:
int val;
int stat=LOW;
int sens=457;


void setup()
{
  Serial.begin(9600);
  pinMode(13,OUTPUT);

   
}

void loop()
{
  val=analogRead(0);
  if(val<sens)
    stat=LOW;
   else
    stat=HIGH;
     
}

High-Signal auf LED-Pin13
Logged

0
Offline Offline
Faraday Member
**
Karma: 19
Posts: 3420
20 LEDs are enough
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

Das Regeln kann Dir die PID Library abnehmen:
http://arduino.cc/playground/Code/PIDLibrary

Dein Problem ist aber vermutlich erst einmal die ein/aus Pulse in eine Drehzahl umzurechnen.
Grundsätzlich mußt Du dabei nicht nach High/Low sondern nach "Flanken" also Wechsel zwischen High/Low schauen. Das erreicht man indem man sich jeweils den vorherigen Wert in einer Variable merkt.

Weiterhin muß Du Dir mit millis() jeweils die bereits verstrichenen Millisekunden abholen. Also grobe Vorgehensweise:

millis abholen und merken
Flankenzähler auf 0 setzen
loop
    Flankenwechsel?
        ja --> Flankenzähler weiterzählen
 
    millis holen und mit gemerktem Wert vergleichen, mehr als 1s Unterschied?
        ja --> Differenz auswerten,
                 gemerkten Wert für millis mit dem aktuellen Wert überschreiben
                 Flankenzähler auf 0 setzen

   PID Regler für Motor ansteuern

endloop


   
Logged

Check out my experiments http://blog.blinkenlight.net

Offline Offline
Newbie
*
Karma: 0
Posts: 43
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Mein problem ist nicht die Logik sondern der Code  smiley-roll-blue
Würde mich auch echt erkenntlich zeig sofern jemand mir helfen würde!
Habe nur einen Deadline bis morgen und sitze schon seit x-Stunden dran da mein Motor erst heute kam ... 2 Wochen zu spät.
Und langsam bin ich kurz vorm Heulen ....
Logged

0
Offline Offline
Faraday Member
**
Karma: 19
Posts: 3420
20 LEDs are enough
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

Deadline? Sieht aus wie ein Hausaufgabenprojekt, oder liege ich da falsch?
Logged

Check out my experiments http://blog.blinkenlight.net

Offline Offline
Newbie
*
Karma: 0
Posts: 43
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Eher ne Art zusatz projekt ...
... hardware habe ich heute alles zusammen gebaut und unserem lehrer gezeigt und das passt alles.
Nur der Code fehlt eben....
Die Logik dahinter raff ich nur ich kann nicht coden ...
Logged

0
Offline Offline
Faraday Member
**
Karma: 19
Posts: 3420
20 LEDs are enough
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

Hmmm. Eigentlich ist das hier kein Forum zwecks kostenlosen Outsourcing von Projektarbeiten. Tipps OK, aber Code komplett schreiben? Ich weiss nicht. Was sagen eigentlich die Lehrer wenn sie von sowas Wind bekommen?
Logged

Check out my experiments http://blog.blinkenlight.net

0
Offline Offline
Faraday Member
**
Karma: 19
Posts: 3420
20 LEDs are enough
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

Nur mal so zum Nachdenken: wenn Dein Lehrer auch nur halbwegs den Leistungsstand seiner Schüler kennt, dann wird er das merken. Grund: wenn Du nichteinmal einfache Dinge hinbekommst und dann nach 2 Wochen so eine Regelung hinbekommst, dann ist entweder ein Wunder geschehen oder jemand hat Dir massiv geholfen.

Auf was ich raus will: diese Art von Regelung bekommen Anfänger nur hin wenn sie entweder sehr viel Zeit oder kräftig Rückenwind haben. Und die Erfindung des Internets ist den meissten Lehrern mittlerweile auch bekannt. Wie die meissten Schüler auch hat zwar noch nicht jeder Verstanden wie Google und Facebook tatsächlich funktionieren, aber zum Suchen reicht es bei den meissten.
Logged

Check out my experiments http://blog.blinkenlight.net

Offline Offline
Newbie
*
Karma: 0
Posts: 43
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Das ist ja erst der Anfang!
Ich will dies dann noch mit Leds erweitern und eventuel einem LCD-Display.
Nur muss morgen der Grundstein fertig sein.
Ich VERSPRECHE!!! das ich nie wieder nach einem komplett code fragen werden!!!!
Und werde mich weiterhin intensiv mit dem Board beschäftigen ...
Nur ich habe mittlerweile echt eine Art "Brainfuck"....

Grüße

Ps wenn wir Quellen angeben ist dies ok!
kann dir gerne meine Doku nachher schicken.
Logged

Offline Offline
Newbie
*
Karma: 0
Posts: 43
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Könntet ihr mir dann bitte bei einem Werte Counter helfen?
Also ich bekomme ja ein High signal am pin 13, nun bräuchte ich eine schleife die einen array bei jeden high hochzählt.
Art counter (if pin13 high =+ 1 ins array) diese soll dann pro minute ausgegeben werden.
Ala rpm ....

Logged

Germany
Offline Offline
Edison Member
*
Karma: 44
Posts: 2261
Arduino rocks
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

Das ist kein Array, das hochzählt, sondern eine einfache Variable, deren Wert um 1 erhöht wird. Ich finde, dass hier viel zu viele Fragen offen geblieben sind. Woher kommt denn das High an Pin 13 zustande? Kommt dieser Impuls einmal pro Umdrehung? Einmal pro Wechsel am Lichschrankenrädchen? Fotos vom Aufbau? Kompletter Schaltplan?
Logged

Mein Arduino-Blog: http://www.sth77.de/ - letzte Einträge: Teensy 3.0 - Teensyduino unter Window 7 - Teensyduino unter Windows 8

Pages: 1 2 [3] 4   Go Up
Jump to: