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
Arduino Geschwindigkeitsmessung
24.11.2015, 15:38
Beitrag #1
Arduino Geschwindigkeitsmessung
Hallo, ich gebrauche mal wieder eure Hilfe. Es geht um einen Geschwindigkeitsmessung mittels zwei Lichtschranken im bekannten Abstand.

Die Zeit wird mithilfe von millis() bestimmt und jeweils auf dem seriellen Monitor ausgegeben. Der Abstand (abstandmm) wird durch die Differenz (dauerms) geteilt. Damit soll dann die Millimeter pro Millisekunde (Geschwindigkeit) bestimmt werden. Soweit so gut, doch leider wird bei der Geschwindigkeit auf dem Seriellen Monitor immer 0,00 ausgegeben. Woran kann das liegen?

Ist der Variablentyp (float) falsch um Kommazahlen zu speichern?

Über eure Hilfe würde ich mich sehr freuen, bei Fragen zum Code einfach mal kurz melden.
Code:
Code:
const int empfPinvorne = 2;        // Pin des Empfängers 1
const int empfPinhinten = 3;      // Pin des Empfängers 2



int signalvorne = 0;
int signalhinten = 0;

int messunggestartet = 0;

unsigned long start = 0;
unsigned long ende = 0;

unsigned long dauerms = 0;                             //Dauer in Millisekunden
unsigned long abstandmm = 36;                              //Abstand in mm der Lichtschranken <-----*************ZUM ÄNDERN**********

float geschwindigkeit = 0.0;




void setup()
{  
  pinMode(empfPinvorne, INPUT);                // Pin des Senders als Eingang 1
  pinMode(empfPinhinten, INPUT);              // Pin des Senders als Eingang 2
  Serial.begin(9600);
  

}


void loop()
{
  signalvorne = digitalRead(empfPinvorne);
  signalhinten = digitalRead(empfPinhinten);

  
  if((signalvorne == HIGH) && (messunggestartet == 0))
  {

    Serial.println("MESSUNG_START bei");
    messunggestartet = 1;
    start = millis();
    Serial.println(start);
    
  }  

    if((signalhinten == HIGH) && (messunggestartet == 1))
  {

    Serial.println("MESSUNG_ENDE bei");
    messunggestartet = 0;
    ende = millis();
    Serial.println(ende);

  
    dauerms = ende - start;
    Serial.println("Differenz(dauerms)=");
    Serial.println(dauerms);

    Serial.println("Abstand(abstandmm)=");
    Serial.println(abstandmm);

    
    geschwindigkeit = abstandmm / dauerms;

    Serial.println("Millimeter pro Millisekunde = ");
    Serial.println(geschwindigkeit);
    
    
  }  


  

  }

Ausgabe am Seriellen Monitor
Zitat:MESSUNG_START bei
3382
MESSUNG_ENDE bei
4875
Differenz(dauerms)=
1493
Abstand(abstandmm)=
36
Millimeter pro Millisekunde =
0.00
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
24.11.2015, 15:47
Beitrag #2
RE: Arduino Geschwindigkeitsmessung
Hi,
probier mal das:
Code:
geschwindigkeit = (float)abstandmm / (float)dauerms;
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
24.11.2015, 17:54
Beitrag #3
RE: Arduino Geschwindigkeitsmessung
Hallo, ja mit deinem Code hat es geklappt... Ein kleinen Film oder ein paar Fotos lade ich hier hoch sobald es richtig fertig ist. Momentan ist es noch auf dem Breadbord...
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
Antwort schreiben 


Möglicherweise verwandte Themen...
Thema: Verfasser Antworten: Ansichten: Letzter Beitrag
  Micros - Zeiterfassung / Geschwindigkeitsmessung luxusl 3 1.390 07.06.2015 09:31
Letzter Beitrag: luxusl
  Arduino Ethernet mit USB 2 Serial Converter/Welche Einstellungen im Arduino-Sketch lociluke 1 1.113 05.05.2015 13:40
Letzter Beitrag: Bitklopfer
  Arduino Mega-Projekt mit EEPROM auf Arduino Due portieren Foto-Ralf 17 3.142 16.03.2015 12:06
Letzter Beitrag: Foto-Ralf

Gehe zu:


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