Entwicklung eines mikrocontrollergestützen Gaswarnsystems mit drahtloser Anbindung mittels Bluetooth Low Energy (BLE) zur Diagnose und Kalibrierung von Sensoren
Development of a microcontroller based gas detection system with wireless connectivity via Bluetooth Low Energy (BLE) for diagnostics and calibration of sensors
Autor: Eugen Götz
Einführung
In vielen Branchen werden Gase gelagert oder verwendet, die schon in kleinen Mengen schädlich sein können, wenn sie beim Austreten unbemerkt bleiben. Daher ist es notwendig, die Gaskonzentration in der Umgebung ständig und zuverlässig zu überwachen. Die für diesen Zweck eingesetzten Gaswarnanlagen dienen dazu, Gefahrenpotenziale zu erkennen, ggf. Alarme auszulösen und somit die Menschen und die Umwelt zu schützen. Diese Gaswarnanlagen bestehen aus Transmittern, einer Gaswarnzentrale und den Alarmmitteln. Die Transmitter messen ständig die Gaskonzentration und senden die Messwerte an die Gaswarnzentrale. Diese verarbeitet die Messwerte, und falls die Gaskonzentration einen Grenzwert überschreitet, löst die Zentrale einen Alarm aus.
Die Gassensoren der Transmitter haben eine begrenzte Lebensdauer. Mit andauerndem Einsatz verschlechtert sich ihr Ausgangssignal, sodass in regelmäßigen Abständen eine Kalibrierung durchgeführt werden muss, um die Sicherheit zu gewährleisten. Da die Technik der eingesetzten Gaswarntransmitter oft auf analogen Schaltungen basiert, werden deren Ausgangssignale mit Trimmpotentiometern justiert. Dafür müssen die Transmitter für einen Kalibrierungsvorgang abgenommen und deren Gehäuse aufgeschraubt werden. Viele Transmitter sind jedoch an schwer zugänglichen Stellen angebracht, weswegen die Kalibrierung sich oft als zeit- und arbeitsintensiver Vorgang herausstellt, besonders wenn sie mehrfach durchgeführt werden muss.
Zielsetzung
Ziel dieses Projekts war es, eine Sensorplattform für ein Gaswarnsystem zu entwickeln, die Messwerte elektrochemischer Gassensoren erfasst und direkt weiterverarbeitet. Des Weiteren sollte in diese Plattform ein Kommunikationsmodul integriert werden, mit dessen Hilfe mobile Geräte wie Smartphones und Tablets drahtlos auf das System zugreifen können. Dies wird vor allem den Ablauf der Wartungsarbeiten vereinfachen, da dadurch auch schwer zugängliche Sensoreinheiten über die Funkschnittstelle diagnostiziert und kalibriert werden können. Zusätzlich soll die Möglichkeit geschaffen werden, alle relevanten Daten eines Kalibrationsvorgangs wie Sensordaten, Kalibrationsdatum oder wer die Wartung durchgeführt hat, zu dokumentieren. Diese Daten sollen entweder in einer Cloud abgelegt werden können, indem das Smartphone oder Tablet als Internet-Gateway dient oder direkt in eine lokale Datenbank übertragbar sein. Für die drahtlose Datenübertragung soll Bluetooth Low Energy (BLE) genutzt werden. BLE ist ein stromsparender und kostengünstiger Funkstandard, welcher zudem einfach zu implementieren ist. Dadurch eignet sich BLE besonders für Embedded Anwendungen.

Die Steuerung und die Kalibrierung der Sensorplattform sollten mithilfe eines Mikrocontrollers realisiert werden. Hierfür sollte eine Lösung gefunden werden, die Sensorsignale ohne analoge Beschaltung aufzubereiten und zu kalibrieren, damit sie direkt mit einem AD-Wandler digitalisiert und weiterverwendet werden können. Die Aufbereitung des Stromsignals sollte über die Funkschnittstelle vom Nutzer konfigurierbar sein. Um das zu realisieren war eine Softwarelösung zu entwickeln, die sich aus zwei Hauptteilen zusammensetzt. Zum einen muss das BLE- Kommunikationsprotokoll implementiert werden, welches einen drahtlosen Zugriff auf die Sensorplattform und ihre Funktionen ermöglicht. Zum anderen war eine Firmware zu erstellen, die neben der digitalen Signalverarbeitung als Schnittstelle zwischen der eigentlichen Sensoranwendung und dem drahtlosen Protokoll dient.
Messprinzip
Zur Gaskonzentrationsmessung wird ein elektrochemischer O-Sensor verwendet. Der Sensor beruht auf dem amperometrischen Messprinzip. Dabei löst das zu messende Gas chemische Reaktionen im Sensor aus, die einen Elektronenstrom als Messsignal im Bereich von einigen µA generieren. Die Reaktionen finden an zwei Elektroden statt: einer Messelektrode, die aus porösen PTFE-Scheibe besteht und mit katalytischem Metall beschichtet ist und einer massiven Blei-Anode. Die Elektroden befinden sich in einer Elektrolytlösung und sind durch einen Isolator galvanisch voneinander getrennt. An der Messelektrode wird der Sauerstoff zu Hydroxidionen reduziert. Diese Ionen werden über den Elektrolyten zur Blei-Anode transportiert, an der sie wieder oxidieren:
Über diese Redox-Vorgänge wird ein elektrischer Strom generiert, welcher an Stromkollektoren gesammelt und an die Anschlusspins weitergeleitet wird, damit er von einer Messeinrichtung erfasst werden kann. Dieser Strom ist proportional zu der Reaktionsrate. Daher ermöglicht dessen Messung eine genaue Bestimmung der Sauerstoffkonzentration. Aufgrund des Oxidationsvorgangs an der Anode hat diese Art von Sensoren eine begrenzte Lebensdauer. Sobald das ganze Material der Gegenelektrode oxidiert ist, ist der Sensor nicht mehr funktionsfähig. Um die Lebensdauer zu verlängern, wird eine Diffusionsbarriere genutzt, welche die Gaszufuhr und damit die Reaktionsrate begrenzt.

Hardware
Die Abb. „Schematische Darstellung der Sensorplatine“ zeigt den Aufbau der Sensorplatine. Ein Gassensor liefert einen elektrischen Strom der proportional zu der vorhandenen Gaskonzentration ist. Dieses Stromsignal wird durch einen Analog Front-End Baustein (AFE) aufbereitet und als Spannungssignal ausgegeben, welches wiederum direkt mit einem AD-Wandler des Mikrocontrollers digitalisiert werden kann. Der AFE verfügt über verschiedene Einstellmöglichkeiten, die über eine serielle I2C-Schnittstelle des Mikrocontrollers programmiert werden können. Dadurch lässt sich das Ausgangssignal des Sensors digital kalibrieren und die analoge Beschaltung mit Potentiometern entfällt somit.
Das Herzstück der Sensorplattform ist ein Mikrocontroller, welcher sämtliche Aufgaben der Plattform steuert. Dabei handelt es sich um ein System on Chip, welches über einen BLE-Transceiver verfügt. Dieser ermöglicht den drahtlosen Datenaustausch zwischen dem System und den mobilen Geräten wie z. B. Smartphones und Tablets.
Um die Kompatibilität mit den bestehenden Gaswarnsystemen, die die 4 -20mA Technik nutzen, zu erhalten, wird ein programmierbarer DA-Wandler verwendet. Dieser generiert aus den digitalisierten Messwerten einen 4 – 20mA Ausgangssignal, welcher in die vorhandene Stromschleife eingespeist wird. Zusätzlich verfügt der DA-Wandler über Verstärkungs- und Biasfunktion, über die das Ausgangssignal weiter angepasst werden kann. Die Mess- und Einstelldaten werden über eine serielle SPI-Schnittstelle übertragen. Des Weiteren wurde eine optionale Funktionalität implementiert, die den digitalen Datenaustausch über 4-20 mA Stromschleife ermöglicht. Dies geschieht mithilfe eines HART FSK-Modems, welcher die digitalen Daten auf das 4 – 20mA Signal aufmoduliert. Auf diese Weise verfügt die Sensorplattform über eine zusätzliche Möglichkeit, die Daten digital zu übertragen, während gleichzeitig die analoge Signalübertragung stattfindet.

PCB-Design
Für die Sensorplattform wird eine vierlagige Platine verwendet. Diese Platine besteht aus vier Kupferschichten, die durch ein Isoliermaterial voneinander getrennt werden. Das Leiterplattenmaterial besteht aus dem Verbundwerkstoff FR-4. Außerdem ist die Platine an ihren Außenflächen mit dem Lötstopplack beschichtet, der als Korrosionsschutz dient und das Benetzen mit Lötzinn außerhalb der Lötpads verhindert. Die zusätzlichen inneren Kupferschichten werden als VDD- und GND-Flächen verwendet. Der Vorteil dabei ist, dass Bauteile über sehr kurze Wege mit Masse- und VDD-Potential verbunden werden können, wodurch die Schaltung störunempfindlicher wird. Des Weiteren wird damit der Verdrahtungsaufwand vermindert und der benötigte Bauraum reduziert. Außerdem bilden die Schichten einen großflächigen Kondensator, welcher die EM-Verträglichkeit zusätzlich erhöht.
Abb. „PCB-Design der Sensorplatine“ zeigt das Layoutdesign der Platine. Auf dem Toplayer werden sämtliche Bauteile platziert. Dadurch wird sowohl der Bestückungs- als auch Lötvorgang beschleunigt, da die Leiterplatte beim Fertigen nicht umgedreht werden muss. Die zu platzierenden Bauelemente werden entsprechend den dazugehörigen Schaltplänen zu Funktionsgruppen zusammengefasst. Der Toplayer wurde zur Abschirmung mit einer großen Massefläche bedeckt, die über zahlreiche Vias mit der GND-Ebene verbunden ist. Des Weiteren befinden sich auf diesem Layer Testpoints und Anschlüsse, mit denen das Ausgangssignal des Analog-Front-End und die seriellen Signale überprüft werden können.
Die Platine wurde so entwickelt, dass sowohl Gassensoren mit zwei als auch mit drei Anschlusspins verwendet werden können. Dies kann über eine Lötbrücke eingestellt werden. Da das Analog-Front-End einen Eingangssignalbereich von 5 µA bis 750 µA weiterverarbeiten kann, ist es möglich eine breite Auswahl an elektrochemischen Sensoren zu nutzen. An der Ausgangssignalleitung wurden zwei optionale Lötpads platziert, die dazu genutzt werden können, einen passiven Tiefpassfilter hinzuzufügen, welcher das Ausgangssignal des AFE zusätzlich glättet.

Software
Die Firmware der Sensorplattform basiert auf einem einfachen Betriebssystem, welches für die Abarbeitung von Ereignissen zuständig ist. Um dies zu ermöglichen, wird allen Funktionalitäten der Software eine Task zugewiesen, die eine eigene ID und Bearbeitungsroutine hat. Die Task ID legt gleichzeitig die Priorität der jeweiligen Task fest. Je niedriger die ID-Kennung, umso höher ist die Priorität. Der BLE-Protocolstack hat dabei die höchste Priorität als die restlichen Funktionen. Das garantiert, dass ein BLE-Gerät immer erreichbar ist.
Jede Task benötigt eine Initialisierungsroutine. Die Routinen der einzelnen Tasks werden von einer Init-Funktion nacheinander aufgerufen. Während des Aufrufs wird den Tasks eine ID zugewiesen. Sobald die Initialisierung durchgeführt ist, wird eine Endlosschleife gestartet, welche die Task ID inkrementiert. Dabei wird überprüft, ob für die dazugehörige Task ein Ereignis vorliegt. Ist dies der Fall, wird die Routine der jeweiligen Task aufgerufen, die dieses Ereignis bearbeitet. Wenn die Routine beendet ist, wird der ID-Zähler zurückgesetzt und die Überprüfung beginnt erneut. Sollte vor Ablauf des ID-Zählers kein Ereignis vorliegen, kann das System sich für eine gewisse Zeit in den Ruhemodus begeben und nach Ablauf eines Sleep-Timers die Überprüfung wieder starten.
Während der Endlosschleife gibt es zwei Möglichkeiten ein Ereignis auszulösen. Die erste Möglichkeit ist, die set_event() Funktion zu nutzen, die unverzüglich ein Ereignis veranlasst. Mit dieser Funktion werden die Task ID und der Event flag als Parameter übergeben. Event flag ist dabei eine eindeutige 16-Bit Kennung, die einem bestimmten Ereignis zugeordnet ist. Die andere Möglichkeit ist es einen Ereignis nach Ablauf eines Timers auszulösen. Dazu wird die start_timer () Funktion verwendet. Abbildung 6 zeigt das Funktionsdiagramm und die Prioritätenliste der Firmware.

Ergebnis
Durch die Verwendung des System-On-Chip, welcher über einen integrierten Bluetooth Low Energy Transceiver verfügt, wurde eine Möglichkeit geschaffen, mit der Sensorplattform drahtlos zu kommunizieren. Mit der Implementierung des BLE-Protocolstacks ist es möglich, die Prozesswerte wie Gaskonzentration oder Temperatur über eine Funkverbindung auszulesen. Abbildung 6 zeigt an ein Tablet übertragene Messwerte, welche mit einer App aufgezeichnet wurden. Weiterhin wurde die Möglichkeit geschaffen, eine Kalibrierung ohne analoge Schaltungen zu realisieren. Das Gassensorsignal kann über einstellbare Parameter wie Verstärkung oder BIAS-Spannung angepasst werden. Diese Parameter sind über die Funkschnittstelle konfigurierbar.
