- Akku Tests und Balkonkraftwerk Speicher         
Ergebnis 1 bis 10 von 12

Thema: Ultraschallwandler ansteuern

Hybrid-Darstellung

Vorheriger Beitrag Vorheriger Beitrag   Nächster Beitrag Nächster Beitrag
  1. #1
    Erfahrener Benutzer Robotik Einstein Avatar von wkrug
    Registriert seit
    17.08.2006
    Ort
    Dietfurt
    Beiträge
    2.242
    Evtl. ist die Dopplereffekt Methode doch einfacher.
    Man könnte ja das Sendesignal mit einem Ringmischer mit dem Empfangssignal vermischen.
    Als Mischprodukt müsste dann eine Frequenz im NF Bereich entstehen, die der Fließgeschwindigkeit entspricht.
    Ob die Frequenz hoch genug ist um die sinnvoll auszuwerten müsste man ausrechnen.
    Bei den Radarsensoren wird das aber üblicherweise so gemacht.

  2. #2
    Erfahrener Benutzer Robotik Einstein
    Registriert seit
    11.12.2007
    Ort
    weit weg von nahe Bonn
    Alter
    40
    Beiträge
    3.416
    Ich versuch mir das gerade immernoch krampfhaft vorzustellen, ob das überhaupt funktionieren kann.

    Wenn ich und der Krankenwagen still stehen und der Wind bläst in meine Richtung .... erlebe ich dann überhaupt einen Dopplereffekt?

    Eine Dopplermessung würde doch ausschließlich funktionieren wenn ich reflektierende Partikel oder Blasen im Medium hätte oder hab ich grad einen Denkfehler?
    Es gibt 10 Sorten von Menschen: Die einen können binär zählen, die anderen
    nicht.

  3. #3
    Erfahrener Benutzer Robotik Einstein Avatar von wkrug
    Registriert seit
    17.08.2006
    Ort
    Dietfurt
    Beiträge
    2.242
    Eine Dopplermessung würde doch ausschließlich funktionieren wenn ich reflektierende Partikel oder Blasen im Medium hätte oder hab ich grad einen Denkfehler?
    Laut Wikipedia geht es:
    https://de.wikipedia.org/wiki/Ultras...rchflussmesser

    Das Prinzip ist da nicht genauer beschrieben, aber ich vermute, das sich Sender und Empfänger auf einer Seite befinden müssen.
    Dann fliesst das Medium im Prinzip vom Sender und Empfänger quasi weg.

    Die Laufzeitdifferenzmessung find ich auch intressant!

    Entweder vertauscht man dabei die Funktion von Sender und Empfänger jeweils.
    Oder man nimmt 2 Empfänger die im gleichen Abstand vor und hinter dem Sender liegen.
    Geändert von wkrug (15.01.2019 um 13:15 Uhr)

  4. #4
    Erfahrener Benutzer Robotik Einstein
    Registriert seit
    11.12.2007
    Ort
    weit weg von nahe Bonn
    Alter
    40
    Beiträge
    3.416
    Ah ja den Artikel hatten wir schonmal hier

    aufgrund der Fließgeschwindigkeit der (inhomogenen) Partikel im Medium erfasst. Hierzu werden im Medium Reflexionspunkte (Verschmutzung, Luftbläschen) benötigt.
    Es gibt 10 Sorten von Menschen: Die einen können binär zählen, die anderen
    nicht.

  5. #5
    Neuer Benutzer Öfters hier
    Registriert seit
    18.10.2018
    Beiträge
    10
    @Ceos:
    ah ok ich verstehe. Ja stimmt an dem Piezo ist eine Anpassungsschicht, die an das entsprechende Medium angepasst ist. Ich weiß auch nicht was passieren wird, wenn nicht stelle ich den Versuchsaufbau ins Wasser

    @wkrug:
    ja es müssen Partikel oder Luftblasen vorhanden sein, deswegen habe ich mich für das Laufzeitverfahren entschieden, da unter anderem auch reines Wasser gemessen werden soll.

  6. #6
    Erfahrener Benutzer Robotik Einstein
    Registriert seit
    11.12.2007
    Ort
    weit weg von nahe Bonn
    Alter
    40
    Beiträge
    3.416
    und wenn man wie im wiki-bild reflexiv misst, könnte man sogar beide verfahren machen, aber bei dem aufbau ist der messhub mikrig, lieber direkt in strömungsrichtung messen oder im spitzen winkel
    Es gibt 10 Sorten von Menschen: Die einen können binär zählen, die anderen
    nicht.

  7. #7

    1MHz mit Arduino: So gehts!

    Hallo Hans,
    per Ultraschall ist das Laufzeitverfahren das einzig Mögliche. Das hast Du schon richtig gewählt.
    @Alle Anderen
    Doppler ist quatsch, denn es wird ja kein Schall vom Partikel zum einleitenden Transceiver zurück reflektiert. Doppler geht nur, wenn Sender und Empfänger am selben Ort lokalisiert ist und das zu messende Partikel sich (idealen Fall) im Längsabstand dazu bewegt. Im Laufzeitdifferenzverfahren, mit in Strömungsrichtung versetzten Transceivern, tritt der Dopplereffekt natürlich auch ein. Dummerweise aber spiegelbildlich. Denn die Frequenzverschiebung bei Schalleinleitung des Senders hebt sich spiegelbildlich bei der Ausleitung in den Empfänger wieder auf.

    Und jetzt konstruktiv weiter...
    Die Frequenzerzeugung sollte mit einem Arduino gut gehen. Der normale UNO, oder Nano mit 16MHz Takt hat 3 Timer, wobei Timer0 für einfaches Timing mittels millis() usw. verwendet wird. Timer1 (16Bit) und 2 (8Bit) stehen zur freien Verfügung. Und ein MHz steht im geradzahligen Verhältnis zu 16MHz. Ich würde Timer1 im CTC Verfahren verwenden, weil Timer1 zusätzlich über ein Input Capture Register verfügt. Grundsätzlich, während ein Timer hochzählt, zählt er von BOTTOM (=0) entweder bis zu MAX (0xFF bei 8Bit und 0xFFFF bei 16Bit), läuft über und beginnt von vorne. Es sei denn, es gibt einen Vergleich mit einem Registerwert kleiner als TOP. Dieser Wert nennt sich dann MAX. Bei Timer1 eignen sich dazu 3 Register: OCR1A, OCR1B und ICR1. Wobei OCR1A und OCR1B jeweils den Ausgangspins OC1A = D9 und OC1B = D10 zugeordnet sind. In den Registern TCCR1A und TCCR1B (Datsheet) befinden sich mehrer WGM- und COM-Bits .


    1. Interrupts ausschalten: cli();
    2. Register zurücksetzen: TCCR1A = 0;m TCCR1B = 0; TIMSK1 = 0;
    3. Prescaler mittels CS10 Bit auf 1 setzen, damit im 16MHz (62,5ns) Takt gezählt wird. 8 x 62,5ns = 500ns = 1 eine Halbwelle von 1MHz.
      TCCR1B |= (1<<CS10);
    4. Mit den WGMs bestimmst Du den Timermode (Hier 4 oder 12) und welches Register für TOP herangezogen wird (Hier OCR1A, oder ICR1).
      TCCR1B |= (1 << WGM12); // Mode 4 = CTC => OCR1A sets TOP
    5. Verhalten des Ausgangspins auf toggle setzen
      TCCR1A |= (1 << COM1A0); //Toggle OC1A
    6. Counter Zählregister auf 0 setzen.
      TCNT1 = 0;
    7. OCR1A auf TOP setzen
      OCR1A = 7; //0-7 = 8 Takte => 1MHz
    8. Interrupts scharf schalten
      sei()


    Anschließend kommt aus Pin D9 des Arduino 1MHz, egal was in Deinem Hauptprogramm läuft. Gehe mal auf die Webseiten von Nick Gammon. Da gibts viele gute Beispiele.

    Hab den Code getestet.
    ---
    Eine Frage, was kostet der Ultraschalltransceiver? Und welche Bezugsquelle und Lieferzeit?
    Und vlt noch, hast Du ein Datenblatt mit der Sendeschalleistung und welche Spannung (VSS) er sehen will?
    Es gibt diese Bridge-Motor-Driver ICs ULN...irgendwas. Die können größere Spannungen bis über 100kHz treiben. Ob 1MHz geht, weiß ich nicht.

    Viel Grüße und Erfolg bei der Umsetzung, Rainer

    Code:
    //############ Code Begin ##############
    //Timer1. Variable Square-Wave-Generator
    //Objective: Use CTC Mode. OCR1A sets TOP
    
    uint16_t TOP = 7;
    
    void setup() {
      Serial.begin(115200);
      pinMode(9, OUTPUT);//Signal output
      //pinMode(10, OUTPUT);
      cli();
      TCCR1A = 0; //Reset the register
      TCCR1A |= (1 << COM1A0); //Toggle OC1A
    
      TCCR1B = 0; //Reset the register
      TCCR1B |= (1 << CS10); // Prescaler = 1
      TCCR1B |= (1 << WGM12); // Mode 4 = CTC => OCR1A sets TOP
    
      TCNT1 = 0;
    
      OCR1A = TOP;//Set output Compare Register. OCR1A defines TOP;
    
      sei();
      Serial.println("1MHz Beep running...");
    }
    
    void loop() {
      
    }
    //############ Code End ##############

Ähnliche Themen

  1. Ultraschallwandler
    Von HansP im Forum Sensoren / Sensorik
    Antworten: 13
    Letzter Beitrag: 10.03.2019, 15:00
  2. Hitzeresistente Ultraschallwandler
    Von Roboternetz-News im Forum Neuigkeiten / Technik-News / Nachrichten / Aktuelles
    Antworten: 0
    Letzter Beitrag: 02.05.2017, 08:40
  3. VFD ansteuern
    Von Janigut im Forum Elektronik
    Antworten: 7
    Letzter Beitrag: 22.11.2010, 19:35
  4. Suche Ersatzschaltbild für Ultraschallwandler
    Von H.A.R.R.Y. im Forum Sensoren / Sensorik
    Antworten: 53
    Letzter Beitrag: 03.12.2007, 12:18
  5. LCD ansteuern
    Von Z80 im Forum Elektronik
    Antworten: 6
    Letzter Beitrag: 12.07.2005, 11:25

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •  

12V Akku bauen