Bild 1: Bei der Ultraschall-Messung wird die Laufzeit des Signals zwischen dem Aussenden und dem Empfang gemessen und daraus der Objektabstrand r berechnet.

Bild 1: Bei der Ultraschall-Messung wird die Laufzeit des Signals zwischen dem Aussenden und dem Empfang gemessen und daraus der Objektabstrand r berechnet. (Bild: Microchip)

Die Einsatzbereiche für die Ultraschall-Messung sind vielfältig. Beispiele dafür sind Messungen von flüssigen oder festen Produkten in Silos oder anderen Behältern zur Vermeidung einer Überfüllung oder zur Überprüfung des aktuellen Stillstands. Ein weiterer Einsatzbereich ist die Nutzung von Ultraschallmessungen zum Zählen bewegter Objekte. So lassen sich mittels Ultraschall beispielsweise Flaschen in einer Abfüllmaschine zählen. Im Kraftfahrzeug kommen Ultraschallmessungen beim Einparken zum Einsatz. Der Entfernungssensor kann die Distanz zwischen dem Fahrzeug und einem Hindernis (anderes Fahrzeug, Wand, etc.) messen. Dies sind nur einige wenige Beispiele, in denen Ultraschallmessungen aktuell zum Einsatz kommen – es gibt noch viele weitere Einsatzgebiete, in denen sich diese Technik implementieren lässt.

Funktionsprinzip der Messung

Das wesentliche Funktionsprinzip beim Ultraschall ist dabei die Messung der Entfernung oder des Bereichs vom Ultraschall-Sensor zu einem anderen Objekt. Bei einer Ultraschall-Messung wird die Laufzeit zwischen dem Aussenden des Signals und den Empfang des von einem bestimmten Objekt reflektierten Signals gemessen. Dies ist die Zeit, die die gesendete Welle und die reflektierte Welle zum Durchlaufen der Entfernung r benötigen (Bild 1). Aus dieser Zeit lässt sich die Entfernung r berechnen, weil die Ausbreitungsgeschwindigkeit des Ultraschall-Signals durch die Luft bekannt ist (Schallgeschwindigkeit).

Auch wenn diese Berechnung recht einfach erscheint, hängt die Ausbreitung des Ultraschall-Signals noch von vielen anderen Faktoren ab. Ein wichtiges Element, das sich auf die Schallgeschwindigkeit auswirkt, ist die Temperatur der Luft, durch die sich der Schall ausbreitet. Zu weiteren Faktoren zählen Feuchtigkeit, Luftdruck, Luftströmungen (nur starke Winde) und die Art des gasförmigen Mediums. Die meisten Ultraschall-Messsensoren sind für den Einsatz in für Menschen geeigneter Atemluft ausgelegt (etwa 21 % Sauerstoff, 78 % Stickstoff und 1 % andere Spurengase). Bei solchen für normale Luft konzipierten Sensoren ist eine korrekte Funktion beim Einsatz in anderen Gasen nicht garantiert, weil sich die Schallgeschwindigkeit je nach dem durchlaufenen Medium ändert. Die am häufigsten verwendeten Frequenzen liegen im Bereich von 40 kHz, also oberhalb des hörbaren Frequenzbereichs von 20 Hz bis 20 kHz.

 

Was 8-Bit-MCUs bei der Implementierung von Ultraschall-Messungen leisten, zeigt der Beitrag auf der nächsten Seite.

Ultraschall-Messung mit 8-Bit-MCUs

Eck-Daten

Ultraschall-Messungen haben einen vielfältigen Einsatzbereich, von Füllstandsmessungen bis hin zur Abstandsmessung im Fahrzeug. Im Beitrag zeigt Microchip, wie sich mit 8-Bit-MCUs mit Core-unabhängigen Peripherieelementen (CIPs) Ultraschall-Anwendungen realisieren lassen, die nur für die Multiplikation bei der Abstandsberechnung aus den Signallaufzeiten auf die CPU zugreifen. Mit CIPs sinkt nicht nur der Strombedarf der Anwendung, es ist außerdem weniger Software notwendig, was die Time-to-Market des Endsystems deutlich senkt.

Ultraschall-Messungen lassen sich mit vielen unterschiedlichen Mikrocontrollern (MCUs) von Microchip vornehmen. Der PIC16F1769, ein 8-Bit-PIC-Mikrocontroller und der Attiny817, ein 8-Bit-AVR-Mikrocontroller eignen sich beide bestens für Anwendungen, die Ultraschall-Messungen nutzen. Einer der wichtigsten Vorteile der Entwicklungsarbeit mit einer 8-Bit-MCU von Microchip ist ihre Integration von Core-unabhängigen Peripherieelementen (Core Independent Peripherals, CIPs). Bei Ultraschall-Messanwendungen lassen sich CIPs für eine effiziente Laufzeit-Messung ohne Beteiligung der CPU nutzen. Dies senkt nicht nur den Gesamt-Stromverbrauch des Systems, sondern entlastet die CPU zugunsten einer Ausführung anderer Aufgaben.

Ein weiterer Vorteil beim Einsatz von CIPs besteht darin, dass der Befehl von einer Peripherieschaltung zur nächsten in weniger als einem Taktzyklus ausgeführt wird. Diese Funktion gibt es sowohl in den PIC- wie auch in den AVR-Mikrocontrollern. Ohne CIPs müsste sich die CPU an der Messung beteiligen. Diese müsste dann einen Interrupt erhalten, den Interrupt verarbeiten und könnte anschließend einen Befehl an eine Peripherieschaltung ausgeben. Eine solche Aktion würde mehrere Taktzyklen dauern, das System verlangsamen und deutlich mehr Strom verbrauchen.

Ein weiterer wichtiger Vorteil des Einsatzes von Mikrocontrollern mit CIPs: es ist weniger Software notwendig, da mehr Tasks in der Hardware ablaufen. Weniger Softwareentwicklung bedeutet auch weniger Software-Validierung und damit ein geringeres Risiko im Entwicklungsprozess. Zusammen ermöglichen alle diese Elemente eine kürzere Time-to-Market.

Tabelle 1: Vergleich der Spezifikationen von Attiny- und PIC-MCUs. Beide MCU-Familien haben Core-unabhängige Peripherieelemente, die zur Entlastung der CPU dienen.

Tabelle 1: Vergleich der Spezifikationen von Attiny- und PIC-MCUs. Beide MCU-Familien haben Core-unabhängige Peripherieelemente, die zur Entlastung der CPU dienen. Microchip

Eine mit einem PIC-oder AVR-Mikrocontroller aufgebaute Lösung nutzt CIPs nicht nur zur Laufzeit-Messung, sondern auch zur Erzeugung, Übertragung und für den Empfang des Ultraschall-Signals. Nach Initialisierung der CIPs ist die CPU nicht mehr an der Ausführung dieser Aufgaben beteiligt. Für die Laufzeit-Messung sind weder Interrupts, noch CPU-Ressourcen, SRAM oder ein umfangreicher Programm-Ablauf erforderlich. Die CPU übernimmt lediglich die Berechnung der Entfernung r, da dies eine Multiplikation der Laufzeit mit der Schallgeschwindigkeit erfordert. Tabelle 1 zeigt einen Vergleich der zwei für Ultraschall-Messungen in Frage kommenden Mikrocontroller. Der Attiny817 zählt zu den 2016 vorgestellten Tiny-AVR-Mikrocontrollern, während die PIC16F176x/7x-MCUs Anfang 2018 vorgestellt wurden. Beides sind MCU-Familien mit Core-unabhängigen Peripherieschaltungen und ermöglichen Laufzeitmessungen ohne Beteiligung der CPU.

 

Auf der folgenden Seite finden Sie konkrete Applikationsbeispipele für Ultraschall-Anwendungen und Informationen zur Entwicklungsunterstützung durch Microchip.

Applikationsbeispiele

Entfernungsmessungen mit Ultraschall-Transceivern wurden durch Microchip mit dem 8-Bit-PIC-Mikrocontroller – dem PIC16F1769, als auch mit einem 8-Bit-AVR-Mikrocontroller, dem ATtiny817, praktisch umgesetzt. Beide Anwendungen nutzen CIPs für eine effiziente Ultraschall-Entfernungsmessung mit geringstmöglichem Codeumfang und nur minimaler CPU-Beteiligung.

Tabelle 2: Anforderungen der Attiny817- und PIC161769-MCUs einschließlich des Overheads zum Beispiel für die Anzeige des Messbereichs.

Tabelle 2: Anforderungen der Attiny817- und PIC161769-MCUs einschließlich des Overheads zum Beispiel für die Anzeige des Messbereichs. Microchip

Wie in Tabelle 1 zu sehen ist, verfügen die beiden MCUs über eine unterschiedliche Ausstattung an Peripherieschaltungen. Tabelle 2 zeigt die Flash- und SRAM-Anforderungen jeder MCU für ihre Anwendung. Der Code umfasst dabei bereits den nötigen Overhead zur Anzeige der Ergebnisse auf einem LCD- oder OLED-Display. Die Laufzeit-Messung erfolgt über die CIPs ohne CPU-Beteiligung und ohne die Notwendigkeit für SRAM. Die Befehle zur Initialisierung der CIPs belegen nur eine sehr geringe Anzahl an Bytes im Flash-Speicher. Eine Code-Optimierung ist nach wie vor möglich, sodass der Entwickler einen Baustein mit geringerem Speicherumfang aus den entsprechenden PIC- oder AVR-Familien nutzen kann. Beide Lösungen bieten genügend Platz zur Erweiterung der Firmware sowie zur kundenspezifischen Anpassung an unterschiedliche Kommunikationskanäle, um den Ultraschall-Sensor in einem Industrie-Netzwerk einzubinden oder mit anderen seriellen Datenkommunikations-Schnittstellen zu nutzen.

Vorteile beider Lösungen

Beide Lösungen können Entfernungen effizient mit Ultraschall messen. Der PIC16F1769 bietet viele integrierte Analogfunktionen, wie etwa zwei Operationsverstärker. Diese sind nötig für den Empfang von gedämpften Ultraschall-Signalen. Der Operationsverstärker verstärkt das empfangene Ultraschall-Signal, sodass der Analog-Komparator es detektieren kann. Dank der im PIC16F1769 integrierten Analogfunktionen lassen sich problemlos Lösungen mit einer minimalen Anzahl externer Bauteile aufbauen. Der ATtiny817 lässt sich mit zwei externen Operationsverstärkern zum Empfang des Ultraschall-Signals verwenden. Baugruppen mit diesen MCUs lassen sich anhand unterschiedlicher externer Komponenten zur Abdeckung verschiedenster Anforderungen und Fähigkeiten anpassen.

Entwicklungsunterstützung

Mit dem Portfolio an 8-Bit-MCUs kann Microchip Lösungen anbieten, die die Anforderungen praktisch jeder Ultraschall-Entfernungsmessungs-Anwendung erfüllen können. Core-unabhängige Peripherieschaltungen machen eine Beteiligung der CPU an der Laufzeit-Messung überflüssig. CIPs erledigen dieser Aufgabe sehr effizient und mit geringem Stromverbrauch. Darüber hinaus bietet Microchip ein benutzerfreundliches Ökosystem zur Beschleunigung der Entwicklungszyklen. Für die beiden PIC- und AVR MCU-Familien bietet Microchip Unterstützung mit IDEs (MPLAB X für PIC- und Atmel Studio 7 für AVR-Bausteine), mit Konfigurierungs-/Initialisierungswerkzeugen (MPLAB Code Configurator (MCC) für PIC-MCUs und Atmel Start für AVR-MCUs) sowie mit weiteren Werkzeugen (Entwicklungs- und Evaluierungs-Boards und Programmer/Debugger). Ergänzend dazu liefern die Anwendungsnotizen für den PIC16F1796 und den ATtiny817 sämtliche Angaben zur Implementierung von Ultraschall-Entfernungs- oder -Näherungsmessungen in einer Anwendung.

Gregor Sunderdiek

Business Development Manager MCU8 EMEA bei Microchip Technology

(na)

Sie möchten gerne weiterlesen?