Mit unserer Software „Datenlogger“ können Messwerte beliebig vieler Messsysteme aufgezeichnet und weiterverarbeitet werden. Die Ankopplung der Messwerte erfolgt über unsere WLAN Messmodule über das drahtlose MQTT Protokoll. Die Software ist geeignet zur Aufzeichnung von Langzeitverläufen von Messwerten, wie sie z.B. von einer Funk-Messuhr übertragen werden. Die Messuhren oder andere Messmittel verfügen über eine Digimatic Datenschnittstelle. Über diese Schnittstelle werden unsere Funkmodule angeschlossen und übertragen die Messwerte kabellos zum MQTT Broker. Die Messsoftware erhält diese Daten vom Datenbroker zur Aufzeichnung, Darstellung und Archivierung. Der Messverlauf kann tabellarisch oder grafisch dargestellt werden. Zu jedem Messwert wird der Zeitstempel der Messung mit erfasst. Somit sind vergleichende Messungen vieler Datenquellen möglich. Über zusätzliche Aufzeichnungskanäle lassen sich weitere Messgrößen erfassen. Z.B. werden bei Langzeitmessungen oft Klimadaten wie Temperatur und Luftfeuchte mit aufgezeichnet.

Die Messkanäle können verschiedenen Datenkanälen zugeordnet werden. Möglich ist die direkte Anzeige durch das Programm, die Speicherung in einer SQLite Datenbank, die Speicherung in einer Textdatei (.CSV) oder das direkte Übertragen in die Tabellenkalkulation Excel. Es können mehrere Kanäle gleichzeitig aktiviert werden.

Kontaktieren Sie uns um weitere Informationen zu unserer Messsoftware zu erhalten.

Die Mitotoyo Innenmikrometer besitzen eine Digimatic Schnittstelle zur digitalen Übertragung der Messwerte. Es werden von Mitutoyo und Mitbewerbern Module angeboten, welche diese Schnittstelle verwenden um die Messwerte an ein nachgelagertes System zu übertragen. Die Übertragung erfolgt entweder über ein Kabel oder über ein Funkmodul, welches jedoch auch über ein Kabel angeschlossen ist.

Unser Funkmodul wird direkt am Innenmikrometer angebracht. Dadurch ist eine sehr komfortable Handhabung des Messgerätes möglich, ohne auf ein störendes Kabel Rücksicht zu nehmen.

Als weiteres Alleinstellungsmerkmal senden unsere Funkmodule direkt in das WLAN Netzwerk im Unternehmen. Die Funkleistung ist deutlich höher und damit zuverlässiger als eine Punkt-zu-Punkt Funkverbindung zu einem einzelnen Empfänger wie dies z.B. mit Bluetooth möglich und üblich ist.

Mitutoyo Innenmikrometer mit montiertem M4IMM Funkmodul

Funkmodul zur Montage auf einem Mitutoyo Innenmikrometer zur Funkübertragung von Messwerten über das MQTT Protokoll. Das Funkmodul kann mit unseren Standard M4 Akkus mit Strom versorgt werden. Für die eingesetzten Messmittel ist somit nur ein einzelnen Akkusystem notwendig welche an einer zentralen Ladestation geladen und bereitgestellt werden.

WLAN Funkmodul für das Mitutoyo Innenmikrometer

Unser WLAN Funkmodul für Messuhren und andere Handmessmittel wie Bügelmessschraube oder Messschieber kann mit dem Funkmodul M8 für Verbindungen über WebSockets verwendet werden. Meist werden unsere Datenübertragungsmodule im MQTT Modus eingesetzt. Es gibt jedoch Anwendungsfälle, in denen eine Verbindung über Websockets zweckmäßiger ist. Z.B. wenn aus einer Web-Anwendung oder einem Web-Browser heraus direkt auf ein einzelnes Messgerät zugegriffen werden soll.

Dieses Praxisbeispiel soll zeigen, wie eine WebSocket-Verbindung zum Messgerät hergestellt werden kann.

Das Beispiel besteht aus einer einfachen Webseite / Webanwendung in HTML und Javascript. Über diese einfachen Techniken ist es möglich, direkt auf das Funkmodul zuzugreifen und den aktuellen Messwert sowie Statusinformationen aus der Funk-Messuhr auszulesen. Dies ist im Vergleich zu MQTT ohne zusätzliche Infrastruktur eines Brokers möglich und somit vor allem für kleine, lokale Anwendungen eventuell einfacher umzusetzen als eine MQTT Abfrage.

Web-Oberfläche der Beispielanwendung

Der Quelltext der einfachen Anwendung:

<!DOCTYPE HTML>
<html>
<head>
  <meta name="websocket_test">
  <meta charset="UTF-8"/>
  <style>button{width:140px;height:50px}body{background: #f48f0d;}</style>
  <style>table, th, td { border-collapse: collapse;}</style>
<title>websocket to iot test</title>
</head>
<body style="font-family: arial, sans-serif;">
    <div style="width:500px;border:1px solid black;align:left">
        <form onsubmit="return false">
            Client name (informal): <input type="text" id="txtName" value="Client_1"><br>
            Server: <input type="text" id="txtServer" value="192.168.1.119">
        </form>
        <form onsubmit="return false">
            <button type="submit" id="btnConnect">Connect to IoT device</button>
            <input type="checkbox" id="cbxSsl" name="ssl" checked>
            <label for="cbxSsl">SSL</label>
            <input type="checkbox" id="cbxRaw" name="raw" checked>
            <label for="cbxRaw">Raw</label>
        </form>
        <form onsubmit="return false">
            <button type="submit" id="btnConfigSet" disabled>Set configuration</button>
        </form>
        <form onsubmit="return false">
        <table>
        <tr><td>
            <button type="submit" id="btnRequestMeas" disabled>Request measurements</button>
            </td><td>
            Repeat count:<input style="width:80px;" size="3" type="number" id="txtRepCnt" value="3"><br>
            Interval:<input style="width:80px;" size="6" type="number" id="txtRepMs" value="200">
            </td>
        </tr></table>
        </form>
        <form onsubmit="return false">
            <button type="submit" id="btnRequestMeta" disabled>Request device info</button>
        </form>
        <!-- output form -->
        <form onsubmit="return false">
            <div style="overflow:scroll;height:400px;word-break:break-all" id="divOut">Not connected...</div>
        </form>
        <!-- clear -->
        <form onsubmit="return false">
            <button type="submit" id="btnClear">Clear</button>
        </form>
    </div>
    <script type="text/javascript">
        const elem = id => document.getElementById(id);
        const txtName = elem("txtName");
        const txtServer = elem("txtServer");
        const txtRepCnt = elem("txtRepCnt");
        const txtRepMs = elem("txtRepMs");
        const btnConnect = elem("btnConnect");
        const cbxSsl = elem("cbxSsl");
        const cbxRaw = elem("cbxRaw");
        const btnConfigSet = elem("btnConfigSet");
        const btnRequestMeas = elem("btnRequestMeas");
        const btnRequestMeta = elem("btnRequestMeta");
        const btnClear = elem("btnClear");
        const divOut = elem("divOut");

        class Mdevice {
            constructor() {
                this.connecting = false;
                this.connected = false;
                this.name = "";
                this.ws = null;
            }
            connect() {
                if (this.ws === null) {
                    this.connecting = true;
                    txtName.disabled = true;
                    this.name = txtName.value;
                    btnConnect.innerHTML = "Connecting...<br>"+txtServer.value+"<br>ssl "+
                      cbxSsl.value+": "+(cbxSsl.checked?"on":"off");
                    this.ws = new WebSocket("ws"+(cbxSsl.checked?"s":"")+"://"+txtServer.value+"/"+(cbxRaw.checked?"raw1":"dev1"));
//                    this.ws = new WebSocket("wss://192.168.1.119/dev1");
                    this.ws.onopen = e => {
                        this.connecting = false;
                        this.connected = true;
                        divOut.innerHTML += "<br><p>Connected.</p>";
                        btnConnect.innerHTML = "Disconnect";
                        btnConfigSet.disabled=false;
                        btnRequestMeas.disabled=false;
                        btnRequestMeta.disabled=false;
                        // optional: send something through the websocket 
                        // this.ws.send(this.name + " connected!");
                    };
                    this.ws.onmessage = e => {
                        divOut.innerHTML+="<p>"+e.data+"</p>";
                        divOut.scrollTo(0,divOut.scrollHeight);
                    }
                    this.ws.onclose = e => {
                        this.disconnect();
                    }
                }
            }
            disconnect() {
                if (this.ws !== null) {
                    // optional: send something through the websocket 
                    // this.ws.send(this.name + " disconnect!");
                    this.ws.close();
                    this.ws = null;
                }
                if (this.connected) {
                    this.connected = false;
                    btnConfigSet.disabled=true;
                    btnRequestMeas.disabled=true;
                    btnRequestMeta.disabled=true;
                    txtName.disabled = false;
                    divOut.innerHTML+="<p>Disconnected.</p>";
                    btnConnect.innerHTML = "Connect";
                }
            }
            sendMessage(msg) {
                if (this.ws !== null) {
                    this.ws.send(msg);
                }
            }
        };
        let mdevice = new Mdevice();
        btnClear.onclick = () => {
            divOut.innerHTML ="";
        }
        btnConnect.onclick = () => {
            if (mdevice.connected) {
                mdevice.disconnect();
            } else if (!mdevice.connected && !mdevice.connecting) {
                mdevice.connect();
            }
        }
        btnConfigSet.onclick = () => {
            mdevice.sendMessage("{\"cmd\":\"config\",\"sleep_sec\":13698,\"display_text\":\"MESSAGE\"}");
            divOut.focus();
        }
        btnRequestMeas.onclick = () => {
            if (cbxRaw.checked) {
               mdevice.sendMessage("meas"); // -- opt: csv instead json
            } else {
              mdevice.sendMessage("{\"client\":\""+this.name+"\",\"cmd\":\"meas\",\"rep_cnt\":"+
                txtRepCnt.value+",\"rep_ms\":"+txtRepMs.value+"}");
            }
            divOut.focus();
        }
        btnRequestMeta.onclick = () => {
            // mdevice.sendMessage("1|info|*");
            mdevice.sendMessage("{\"client\":\""+this.name+"\",\"cmd\":\"info\"}");
            divOut.focus();
        }
    </script>
</body>
</html>

Der Quellcode dieses Programmbeispiels kann hier heruntergeladen werden. Dieser Quelltext kann gerne frei verwendet werden (Freeware, OpenSource, Public domain) – allerdings übernehmen wir keine Haftung für die Fehlerfreiheit des Quellcodes oder der Software.

Wir mussten schon erfahren, dass unsere IoT Funkmodule von Interessenten begeistert begutachtet werden – dann aber im Unternehmen nicht eingesetzt werden dürfen, da die lokale IT nur (noch) WLAN mit 5GHz (IEEE 802.11ac) zulässt.

Dies ist ein K.O. Kriterium nicht nur für unsere Module, sondern für die gesamte Digitalisierung im Unternehmen. Entsprechend ist es eine falsche Entscheidung.
Denn: Entweder es wird ein WLAN im 2.4 GHz Bereich betrieben oder es wird nichts mit Industrie 4.0 und IIoT.

Warum diese drastische Einschätzung?

Ganz einfach: Es gibt aktuell noch keine integrierte MCU / SoC mit WLAN auf dem Markt welche 5GHz bedienen kann (Stand August 2021).

Es gibt einige reine Funkmodule mit 5GHz, diese benötigen jedoch eine externe CPU um angesteuert zu werden.
Diese Module sind als Funkmodule in Notebooks und Smartphones vorgesehen, nicht jedoch für den Einbau in kleinste Sensoren für die Messtechnik.
Für einen Betrieb als per Akku betriebene IoT Device sind diese Module nicht nur nicht geeignet sondern praktisch einfach nicht möglich.

Nun könnte man sagen, dass die Hersteller von Modulen vielleicht ja die nächsten Jahre ein 5GHz IoT Modul auf den Markt bringen.
Dies könnte sein. Eventuell werden in einem Zeitraum von 2-5 Jahren sogar mehrere solcher Module erscheinen.
Dies eröffnet das nächste Problem: Soll man gleich auf das erste Modul setzen? Oder kommt in einem halben Jahr vielleicht ein viel besseres?
Und wenn ein besseres kommt: Wie schnell wird das Alte abgekündigt?
Und kommen dann vielleicht die ersten OFDM 5G Module?
Wir haben nun ein „Frosch im heissen Wasser“ Problem.
Es wird nicht möglich sein, den richtigen Moment zum Springen zu finden.
Selbst wenn dann das nächste „perfekte“ Funk-Modul auf den Markt kommt wird es einige Jahre dauern bis die wichtigsten Softwarebibliotheken auf dieses Modul portiert sind und stabil funktionieren. Das Warten auf die 5GHz Technik im IoT Bereich bedeutet also auf jeden Fall ein langes Warten. Dieses Warten ist dabei noch von vielen Unsicherheitsfaktoren umgeben. Es geht bei der Digitalisierung in der Fertigung nicht darum zu warten bis das perfekte System zu 100% verfügbar ist. Es geht viel mehr darum, zu beginnen. Diese Dinge zu digitalisieren die den größten Nutzen in Bezug auf Qualität und Effizienz bieten. In diesem Prozess ist der einzige richtige Moment „jetzt“. Mit den maximalen Möglichkeiten die der Markt zum Zeitpunkt „jetzt“ bietet. In der Form, dass der Prozess gestartet und stetig optimiert und fortgeführt wird.

Ein weiterer Aspekt ist die Sicherheit der Module.
Die kleinen IoT Devices unterstützen „nur“ WPA2/PSK als Basis-Authentifizierung.
Ein aktives Zertifikatshandling kann keines der bekannten MCU Devices.
Auch auf diesem Gebiet muss die Unternehmens-IT also umdenken:
Für die IoT Devices muss eine geeignete Infrastruktur bereitgestellt werden, wenn der Weg in die Digitalisierung in den nächsten Jahren gemeistert werden soll.

Zusammenfassend kann man also sagen:

  • Entweder Papier und ablesen (Stand 19. Jahrhundert),
  • Kabel- oder Bluetooth-Lösung (Stand 20. Jahrhundert und nicht besonders praktikabel),
  • oder eben WLAN mit 2.4GHz Funktechnik (Stand heute).

Die 2.4 GHz Technik ist etabliert, jeder vernünftige Router kann neben 5 GHz auch noch 2.4 GHz.
Hier ein eigenes IoT-WLAN mit einem entsprechenden Gateway zu betreiben kann kein wirkliches Problem darstellen. Im Gegenteil: Ein reines 2.4 GHz WLAN für Messtechnik und Prozesstechnik und ein separates WLAN für Office, ERP und MES sollte in Bezug auf Eigenständigkeit und Übersichtlichkeit eher ein Vorteil darstellen.

Die 2.4GHz Funktechnik wird noch viele Jahre bestehen und ermöglicht Industrie 4.0 jetzt.
Die Alternative bedeutet bestimmt 5-10 Jahre warten – und sich nicht sicher sein, was dann eben kommt.
Diese Zeit hat kein Unternehmen.

Eine geeignetes Sicherheitskonzept für das Netzwerkes mit seinen Teilnehmern bereitzustellen ist eine Herausforderung. Diese Herausforderung kann aber geleistet werden und ist unabhängig von der verwendeten Sendefrequenz der Module.

Aktuell ist es schlicht die Aufgabe der Unternehmens-IT für IIoT mindestens ein 2.4 GHz WLAN Netzwerk mit einfacher WPA2/PSK bereitzustellen.

Sobald ein Bauteil verfügbar ist welches die geforderte Leistung bei 5 GHz bereitstellt werden wir unsere Module natürlich auch gerne auf dieser Technik anpassen und liefern.

Anhang:

Marktübersicht vorhandener WIFI Module:

  • texas instruments (ti) mit CC3200
  • microchip mit SAMW25
  • espressiv mit ESP32/ESP8266

Alle diese Module arbeiten ausschließlich mit 2.4GHz. Viel mehr gibt es leider nicht.
Auch OEM Module wie z.B. das „Würth Calypso WIFI module“ haben einen der oben genannten Chips verbaut.

Unsere Messablauf Software Newim dient zur Verwaltung von Prüfplänen und zum Abarbeiten von Messabläufen in einer Industrie 4.0 Infrastruktur. Die Messmittel können über Module angebunden werden. Werte noch nicht digitalisierter Messmittel können als Handeingabe hinzugefügt werden.

Die Software richtet sich an professionelle Benutzer.

Features

  • Skalierbare Mehrbenutzer Anwendung in einer Client-/Server Architektur.
  • Serverseitige Cloud-Option.
  • MQTT Client zur Ankopplung an MQTT fähige Messgeräte.
  • REST Client zur Automatisierung über ein MES System.
  • Datenhaltung in einer SQL Datenbank.
  • Rich Client auf Windows Betriebssystem.
  • Prüfplanverwaltung mit Import-/Export zu QStat/QDas.
  • Visuelle Prüfablaufmodellierung.
  • Werkerführung zur Prüfplan-Abarbeitung.
  • Stammdatenverwaltung aller relevanter Stammdaten.
  • Schnittstelle zu SAP Stücklisten.
  • Internationalisierte Oberfläche für unterschiedliche Landessprachen und Zahlenformaten.
  • Optionale Versionierung von Prüfplänen.
Beispiel einer visuellen Modellierung eines Prüfablaufs

Die Software mqtt2file ist die Basissoftware zum Betrieb unserer Funkmodule.

Die Software soll 2 Aufgaben erfüllen:

  • Das MQTT Funkmodul bei der ersten Inbetriebnahme zu konfigurieren.
  • Messwerte welche über das WLAN Funkmodul gesendet wurden anzuzeigen und bei Bedarf in eine Datei zu schreiben.

Diese beiden Aufgaben decken den Mindestbedarf an Software ab, um mit einem MQTT Modul zu arbeiten.

Die beiden Aufgaben sind prinzipiell unabhängig. Da MQTT Funkmodule oft in einer übergeordneten und externen MQTT Infrastruktur betrieben werden, wird die Software häufig nur dazu verwendet um die MQTT Module zu konfigurieren und Tests für den Datenempfang mit den Modulen durchzuführen.

Die Software ist kostenlos und lauffähig unter MS Windows und Android. Das Installationspaket bzw. die ausführbare Datei kann auf unserer Service/Downloadseite heruntergeladen werden.

Nach dem Start der Sofware wird die Hauptauswahl zur Konfiguration angezeigt.

Wenn beim Start der Anwendung bereits eine gültige Konfiguration gefunden wird, wird nach einer kurzen Pause direkt in den Mess-Modus geschaltet. Ist noch kein Modul konfiguriert bleibt der Startbildschirm stehen. Die einzelnen Menüpunkt zeigen durch einen grünen Haken dass dieser Punkt bereits konfiguriert und betriebsbereit ist.

Durch Klick auf ein Menüpunkt wird dieser Bereich geöffnet und die darunter enthaltenen Einstellungspunkte werden sichtbar.

Der Menüpunkt „MQTT“

Im Menüpunkt MQTT kann die Verbindung zu einem MQTT Broker eingestellt werden. MQTT kommuniziert über das Internet. Entsprechend wird unter „Server“ die IP Adresse des MQTT Servers eingetragen. Der verwendete Port ist normalerweise 1883. Optional können zur Absicherung der Verbindung die im MQTT Broker vergebenen Zugangsdaten (Benutzername und Passwort) eingegeben werden. In optionalen Firmware-Varianten ist eine zusätzliche Absicherung durch SSL möglich.

Basis Topic definiert den Basis-MQTT-Topic welcher für die Erfassung von Messwerten verwendet wird. Dies ist normalerweise der Topic einer zuvor konfigurierten Messuhr oder anderen IoT-Device.

Der Abschnitt „Messuhr Einrichten“

Eine fabrikneue Messuhr oder anderes MQTT-Funkmodul muss vor der ersten Verwendung dahingehend konfiguriert werden, dass es sich mit einem vorhandenen WLAN Netzwerk und einem vorhandenen MQTT Broker verbinden kann.

Ist diese Verbindung einmal hergestellt, kann jeder Client in dieser MQTT Infrastruktur – auch gleichzeitig – auf die Ergebnisse und Messwerte des Messgerätes zugreifen.

Ebenso über MQTT werden Konfigurationsparameter wie Standby-Zeit oder die Warnmeldung bei niedrigem Batteriestand eingestellt.

Das Handbuch zum Betrieb und zur Konfiguration der MQTT Funkmodule kann hier als PDF Datei heruntergeladen werden.

Problemlösungen

Android: WLAN Verbindung mit dem Modul kann nicht hergestellt werden

Problem: Ein rAAAreware MQTT Modul soll mit dem Programm mqtt2file neu konfiguriert werden. Das Modul wurde bereits in den Konfigurationsmodus versetzt und öffnet nach dem Einschalten einen Access-Point.
Im Programm mqtt2file erscheint die SSID des Netzwerkes nicht in der Liste der erkannten zu konfigurierenden Devices. In der Statusleiste des Smartphones erscheint eine Meldung „Android-System:“ „In WLAN-Netzwerk anmelden“, gefolgt von der SSID der Device zu der verbunden werden soll.

Situation: Das Android Betriebssystem ist schon mit dem WLAN Netzwerk des IoT Device verbunden, jedoch kann das Programm mqtt2file das verbundene Netzwerk nicht abrufen. Damit das Programm die Netzwerke abrufen kann müssen dem Programm die notwendigen Rechte gegeben werden.

Lösung: Gehen Sie im Android System zu „Einstellungen“ > „Apps“ > „mqtt2file“ > „Berechtigungen“. Die vom System gewährten und verweigerten Funktionen werden in einer Liste angezeigt. Erscheinen in der Liste „Zugriff abgelehnt“ Einträge: Tippen Sie auf diese Einträge und wählen Sie für den Eintrag „Immer zulassen“.

Starten Sie das Programm mqtt2file neu. Das verbundene Netzwerk sollte nun in der Konfiguration angezeigt werden, so dass die neue Konfiguration zur Device gesendet werden kann.

Android Installation

Detailinformationen zur Installation auf Android Systemen finden Sie hier.

Übersicht unserer Displays und Anzeigen für das Messtechnik- und Prozessumfeld.

Mini-Display 096

Das kleinste unserer Displays besitzt eine 24mm (0,96″) Bildschirmdiagonale und ist damit für Anwendungen geeignet in denen auf kleinstem Raum Informationen und Daten angezeigt werden sollen. Als Messwertanzeige ist genügend Platz um 1 – 6 Zeilen von Messwerten anzuzeigen. Das Display leuchtet als OLED Display besonders hell und ist auch unter schwierigen Bedingungen sehr gut lesbar.

Display 280

Unser zweites Display besitzt mit 71mm (2,8″) Diagonale einen deutlich höheren Anzeigebereich. Das Farbdisplay ist in TFT Technologie hergestellt. Die Lesbarkeit wird durch eine Hintergrundbeleuchtung optimiert. Das Display kann als externe Anzeige (Fernanzeige) für Messmittel wie z.B. eine Messuhr verwendet werden. Die Anbindung des externen Displays an das Messgerät erfolgt hierbei wahlweise über ein Kabel oder über Funk. Bei einer Funkverbindung zum Messmittel kann das Display optional einen eigenen WLAN Accesspoint bereitstellen oder sich mit einem vorhandenen WLAN verbinden. Die Messwertübertragung erfolgt über TCP/IP entweder im WebSockets oder MQTT Protokoll.

Unsere Standard-Firmware deckt bereits viele Anwendungsfälle ab. So können z.B. Messwerte von bis zu 4 Messuhren direkt auf dem Display dargestellt werden. Weitere Anwendungen lassen sich über individuelle Programmierung umsetzen. Weiter Infos finden Sie unter den folgenden Links:

Technische Details
Gehe zum Shop

M4 Display Modul

Servicedisplay für Module mit der rAAAreware Universal-Schnittstelle

Neben den universellen Modulen für eigene Projekte kann unser Displaymodul für die rAAAreware Universalschnittstelle direkt an allen unseren Geräten mit dem 10pooligen Stecker angeschlossen werden. Das Display zeigt Statusinformationen zum IoT Device an und unterstützt den Anwender bei der Konfiguration der Device.

Fernbedienung für MQTT.

Die Bedieneinheit als Batteriebetriebenes IoT Device dient dazu beliebige MQTT Botschaften auf Knopfdruck manuell zu versenden und MQTT Botschaften zu empfangen und auf der eingebauten Anzeige darzustellen.

MQTT als Protokoll für IoT und IIoT erfreut sich steigender Beliebtheit in der Automatisierung von Prozessen und Anlagen. Mit unserer MQTT Fernbedienung können wir die nach unserem Kenntnisstand erste und einzige Fernbedienung liefern welche als direkt MQTT Botschaften versenden und empfangen kann.
Für jede der 4 Tasten der Fernbedienung lassen sich Aktionen programmieren, welche beim drücken und loslassen der Taste ausgeführt werden sollen.

Produktbild MQTT Fernbedienung
Produktbild MQTT Fernbedienung mit aufgestecktem LiIon-Akku

Natürlich können MQTT Botschaften auch von jedem PC oder Smartphone abgesendet werden. Diese Fernsteuerung ist für Situationen gedacht, in welchen unabhängig von einem Rechner einfache Befehle gesendet werden sollen. Weiter ist der Handsender sehr schnell einsatzbereit: Wenige Sekunden nach dem Einschalten können Fernsteuervorgänge mit dem mobilen MQTT Client ausgeführt werden.

Besonderheiten

Die Besonderheit dieser Fernbedienung besteht darin, dass sie hoch konfigurierbar ist. Die Grundkonfiguration kann hierbei über eine eigene Web-Oberfläche vorgenommen werden. Die Konfiguration kann ergänzend auch über MQTT selbst vorgenommen werden. Dies bedeutet MQTT extrem: Über ein MQTT Backend lassen sich  Funktionen und Aufgaben der Fernbedienung während des Betriebs dynamisch zuordnen und zuweisen.

Zielsetzung

In der Praxis kommt es vor, dass bestimmte MQTT Aufgaben zur Steuerung oder Regelung manuell angestoßen werden sollen. Normalerweise werden solche MQTT Topics dann über einen MQTT Client auf einem PC oder Smartphone abgesetzt. Speziell im mobilen Einsatz ist dies jedoch unter umständen ungünstig, umständlich oder schlicht nicht möglich. Mit einem sehr kleinen batteriebetriebenen MQTT Sender wie unserer MQTT Fernbedienung ist es problemlos möglich, auch unterwegs und ohne expliziten Rechner manuell MQTT Aktionen durchzuführen.

Einsatzbereiche

Die Einsatzbereiche sind im praktischen Industrieumfeld einer MQTT Infrastruktur. Auch für Test-Szenarien oder Versuchsaufbauten ist der MQTT Sender als Fernsteuerung einsetzbar.

Funktionsweise

Bei jedem Druck und bei jedem Loslassen einer Taste wird eine zuvor konfigurierte MQTT Botschaft (Publish) abgesetzt. Sowohl die verwendete Adresse (Token) der Botschaft also auch der Inhalt der Botschaft (Payload) kann für jede Taste konfiguriert werden.

Inbetriebnahme und Konfiguration

Die IoT Device kann im laufenden Betrieb dynamisch konfiguriert werden. Die Konfiguration kann sowohl über eine eigene Web-Oberfläche von jedem Browser aus vorgenommen werden oder auch über MQTT durchgeführt werden.
Beim ersten Einschalten ist noch kein WLAN Netzwerk und noch kein MQTT Broker zur Kommunikation festgelegt. Wenn noch keine Konfiguration festgelegt ist geht die Fernbedienung ein einen alleinigen Konfigurationsmodus. In diesem Modus öffnet das Gerät einen eigenen WLAN-Accesspoint. Über diesen kann dann die Grundkonfiguration vorgenommen werden.

Konfigurationsansicht für den MQTT Sender
Hauptbildschirm der Konfigurationsansicht des MQTT Handsender

Wurde eine Grundkonfiguration durchgeführt verbindet sich die Device mit dem angegebenen WLAN-Netzwerk und dem angegebenen MQTT Broker. Über das WLAN Netzwerk erhält die Device eine IP Adresse (DHCP). Über diese Adresse kann dann wieder die Konfigurationsseite von jedem Browser aus aufgerufen werden.

Bedienung

Die Fernbedienung wird mit dem Hauptschalter Ein- und Ausgeschaltet.
Nachdem die Funkverbindung mit WLAN und Broker hergestellt ist kann über die 4 Tasten jeweils eine Botschaft versendet werden. Mehrere Tasten können gleichzeitig gedrückt werden. Eingehende Botschaften werden auf dem Display angezeigt.
Auf dem eingebauten OLED Display können neben den Beschriftungen der Tasten bis zu 3 weitere Textzeilen angezeigt werden. Die letzte Zeile im Display zeigt den Status der Device und die zuletzt gesendete Botschaft. Lange Texte werden über den Bildschirm gescrollt.
Über 3 Symbole auf der linken Seite werden Zusatzinformationen zum Gerät angezeigt:

  • WLAN Signalstärke, durchgestrichenes WLAN Symbol wenn die Anmeldung am WLAN Netzwerk nicht erfolgreich war.
  • MQTT Broker Status. Ein „M“ Symbol zeigt an, dass die Verbindung zum MQTT Broker noch nicht hergestellt ist.
  • Batteriesymbol mit Ladestandanzeige des angeschlossenen Akkus bzw. der externen Stromversorgung.

Die Fernbedienung wird im Normalfall mit einem Lithium-Ionen Akku mit Energie versorgt. Dies ist im Vergleich zu einer Infrarot-Fernbedienung ungewöhnlich – jedoch sendet die IoT Fernbedienung auch in einem WLAN mit einer Reichweite von bis zu 300 Metern anstatt über eine sehr kurze Distanz mit Infrarot-Licht. Entsprechend ist der Stromverbrauch der Fernbedienung höher. Das Li-Ion-Wechselakku-System ermöglicht ein einfaches Tauschen der Akkus zur Spannungsversorgung. Mit mehreren Akkus und unseren Ladestationen kann ein kontinuierlicher Betrieb einfach sichergestellt werden.
Über den 10 poligen Universal-Anschluss kann neben einem Akku auch eine andere Stromversorgung z.B. in Form eines Netzteils angeschlossen werden. Weiter können Daten über eine serielle Schnittstelle ausgelesen und weiterverarbeitet werden.

Sicherheit

Das WiFi Modul des Senders arbeitet mit 2.4GHz. Eine prinzipielle Sicherheit ist durch eine WPA2 Verbindung gegeben. Zusätzlich kann die MQTT Verbindung über einen Benutzernamen und ein Passwort abgesichert werden.
Optional kann eine Firmware geliefert werden welche die Verbindung zusätzlich über eine SSL Verschlüsselung weiter absichert.

Referenz

Weitere Informationen zu unserem MQTT Handsender (mobiler MQTT Client) finden Sie in der Dokumentation zum Produkt.

Zum Produktvideo: MQTT RemoteControl bei YouTube.

Wir fertigen eine ganze Reihe von WLAN Modulen für die Industrielle Messtechnik. Die Modulserie M4 ist hier unser Massenmodell für den breiten Einsatz in Verbindung mit Messuhren von Mitutoyo, Mahr oder HELIOS-PREISSER. Die Modulserie ist modular aufgebaut. Zu dem eigentlichen WLAN Modul für das Handmessmittel gibt es weitere Module zur Erweiterung des Funkmoduls. Das WLAN Funkmodul ist fest an der Messuhr angebracht und besitzt einen 10 poligen Systemstecker. An diesen können verschiedene weitere Module angeschlossen werden. Das WLAN Funkmodul selbst ist in verschiedenen Ausführungen erhältlich. Identisch ist jedoch der Anschluss der externen Module über den universellen Systemstecker.

Das Übersichtsbild zeigt die Anschlussmöglichkeiten an das Funkmodul.

Das Display-Modul ist optional und dient dazu, Informationen des Funkmoduls anzuzeigen.
Alle notwendigen Bedienvorgänge können auch über die Servicetaste durchgeführt werden und alle wichtigen Statusinformationen können über Blinkcodes der Status-LED abgelesen werden. Weiter können alle Konfiguration auch per Funk über MQTT ausgelesen werden. Durch die Verwendung des Display-Moduls werden jedoch Service- oder Konfigurationsaufgaben erleichtert. Das Display-Modul ist mit einem USB-Kabel versehen und versorgt das Display als auch das WLAN Modul mit Strom.

Die weiteren Module dienen zur Stromversorgung des Moduls. Der M4 Akku ist ein Schnellwechsel-Akku welcher mit einer Hand einfach und schnell am WLAN Modul aufgesteckt und ausgetauscht werden kann. Der Akku selbst kann in einer Ladestation einfach aufgeladen werden. Die Ladestationen sind in verschiedenen Ausführungen für eine unterschiedliche Anzahl von gleichzeitig ladbaren Akkus verfügbar.

Der M4 Festspannungsanschluss ermöglicht den Anschluss einer externen Stromversorgung. Dies kann eine Spannungsquelle aus dem Prozess oder auch z.B. eine Powerbank als Sammelstromversorgung für mehrere Module auf einer Messvorrichtung sein.

Die Erfolgreiche M4 Reihe für Messuhren der Fa. Mitutoyo, Mahr und Helios-Preisser wurde erweitert auf Messschieber (M4MS), Innenmikrometer und Bügelmessschraube (Mikrometerschraube, M4BM). Das bedeutet, dass auch diese Handmessmittel mit einem Funkmodul der Reihe M4 und allem zugehörigen Zubehör ausgestattet werden können.

Download der Übersicht als PDF Datei.

Anleitung zur Installation unserer MQTT-Programme auf einem Android Smartphone.

Die Installation von Software auf Smartphones mit dem Android Betriebssystem geschieht meist über einen oft über einen Android App Store. Der Store hat die Berechtigungen die dort hinterlegten Anwendungen direkt auf das Smartphone zu laden und zu installieren.
Die Bereitstellung von Anwendungen für Stores wie Google Play sind mit etwas Aufwand verbunden. Zudem sind unsere Anwendungen nicht für einen breiten Markt gedacht, sondern lediglich für die professionellen Anwender unserer Module. Daher ist es für uns zweckmäßiger diese Anwendungen direkt über unsere Internetseite zu beziehen und direkt zu installieren. Dies ist sehr einfach und wird in dieser Anleitung genau gezeigt.

Zuerst wird das Programm in der gewünschten Version auf unserer Service-Seite ausgewählt und angeklickt.

Die Programmdatei (APK-Datei) wird dann vom Browser heruntergeladen.
Nachdem die Datei heruntergeladen wurde kann sie direkt geöffnet werden.
Abhängig vom verwendeten Browser (Crome, Firefox, Opera, Vivaldi,…) kann der Downloadbereich unterschiedlich angezeigt werden. Es ist in jedem Fall möglich, die heruntergeladene Datei zu öffnen.

Wenn von diesem Internetbrowser noch nie eine Anwendung installiert wurde, kann es sein, dass die Installation zunächst verhindert wird. Über die Einstellungen können diese Berechtigungen jedoch einfach vergeben werden.

Auf älteren Android Versionen wird diese Berechtigung pauschal für das gesamte Gerät gegeben (Bereich „Sicherheit“, „Anwendungen aus unbekannten Quellen installieren“). Bei neueren Android-Versionen wird diese Berechtigung nur für eine einzelne Anwendung gegeben.
Nachdem die Einstellung verändert wurde geht es über den „Zurück“ Pfeil oben links wieder zurück zur geplanten Installation.

Nun kann mit der eigentlichen Installation des Programms begonnen werden.

Abhängig von der Android-Version und den Systemeinstellungen kann es sein, dass eine erneute Bestätigung eingeholt wird, dass diese Datei wirklich installiert werden soll.

Zusätzlich kann zur Sicherheit die Datei zu Google zur Überprüfung gesendet werden.

Spätestens nun sollte die Anwendung installiert werden.

Der Installationsvorgang selbst dauert dann nur einige Sekunden.

Nach der Installation kann die WLAN-MQTT-Anwendung direkt geöffnet werden.