Sensortelemetrie 2.0.1
Sensor Telemetry 2.0.1 Übertragen Sie Temperaturdaten in Microsoft Azure IoT Hub und überwachen Sie die Daten aus der Ferne über eine universelle Windows-Anwendung. Digital überarbeitet!
Geschichte
AKTUALISIERT:Das Sensor Telemetry-Projekt wurde digital überarbeitet. Aktualisiert am 17. Mai 2017 und umbenannt in Sensor Telemetry 2.0.1
Einführung
Übersicht
In diesem Projekt werden wir einen Temperatursensor (MCP9808 ) und senden Sie Telemetriemesswerte an einen Microsoft Azure IoT Hub wobei ein Stream Analytics Job verarbeitet die Nachrichten und schreibt sie in ein Azure SQL Datenbank Tabelle. Wir verwenden Mobile Apps um den Verlauf der Sensormesswerte anzuzeigen.
Die Anwendung
Das Projekt enthält zwei Universelle Windows-Anwendungen (auf der universellen Windows-Plattform, UWP), die etwa 99 % des Codes gemeinsam nutzen. Einer ist auf den Raspberry Pi (oder ARM) ausgerichtet und der andere auf die x86- oder x64-Plattformen.
Die IoT-Version der Anwendung läuft auf dem Raspberry Pi und liest die Temperatur vom MCP9808. Die Anwendung sendet Telemetrieereignisse an Azure IoT Hub und das SignalR Hub. Diese Version lauscht auch auf Befehle von Azure IoT Hub.
Die auf einem Computer gestartete Client-Version hört auf Sensor-Updates vom SignalR-Hub und zeigt sie auf dem Bildschirm an. Diese Version sendet auch Befehle über den Azure IoT Hub an die IoT-Version.
Technologien
Die Anwendung in diesem Projekt basiert auf der MVVM (Model-View-ViewModel)-Muster und wurde mit dem Prisma . erstellt Bibliothek und verwendet Prism.Unity für das IoC (Inversion of Control)-Container. Zusätzlich zu diesen Bibliotheken verwendet die Anwendung den Ereignisaggregator gefunden im Prism.Event Bibliothek, um bestmöglich eine rein ereignisgesteuerte Architektur zu schaffen. Die Anwendung verwendet diese Bibliothek, um den internen Modulen die Kommunikation zu ermöglichen, während sie lose gekoppelt bleiben.
Die Anwendung verwendet auch SignalR in der mobilen Azure-App, damit mehrere Instanzen der Anwendung miteinander kommunizieren können. Die Temperaturmesswerte werden an alle remote ausgeführten Clients „gesendet“, sodass diese Temperatursensormesswerte zur Anzeige in der Hauptansicht empfangen können.
Architektur
Das Herzstück der Anwendung ist die MCP9808-Bibliothek, die als separates Projekt erstellt wurde und in anderen Anwendungen wiederverwendet werden kann. Dieses Projekt wurde als UWP-Bibliothek entwickelt, die in jeder Windows 10-Anwendung verwendet werden kann. Wenn die Bibliothek auf einem Gerät ohne I2C . verwendet wird bus gibt die Bibliothek kein Geräteobjekt zurück. Dieser Ansatz kann verwendet werden, um einen Sensor zu „erkennen“ und die Bibliothek elegant zu ignorieren, wenn ein Sensor nicht gefunden wird.
In der UWP-Clientanwendung gibt es mehrere Blöcke, aus denen die Gesamtanwendung besteht. Die Ansichten sind die sichtbaren Seiten und jede Ansicht hat ein Ansichtsmodell, das für den Status der Ansicht verantwortlich ist. Es gibt drei Repositorys:Anwendungseinstellungen (IApplicationSettingsRepository ), Debugging-Informationen (IDebugConsoleRepository ) und Lesen und Schreiben des MCP9808 (ITemperatureRepository ). Es gibt zwei konkrete Klassen, die um ITemperatureRepository herum aufgebaut sind; Einer umschließt die MCP9808-Bibliothek und einer ist ein Null-Gerät, das verwendet wird, wenn die Anwendung nicht auf dem Raspberry Pi läuft.
Die Klasse Mcp9808TemperatureRepository überwacht den MCP9808 mithilfe des Timer-Dienstes und veröffentlicht Temperaturinformationen über den internen Ereignis-Aggregator jedes Mal, wenn sich der Temperaturmesswert oder der Alarmstatus ändert. Ein neues Ereignis wird nur gesendet, wenn sich der aktuelle Messwert vom vorherigen Messwert unterscheidet.
Es gibt auch eine Reihe von Diensten, die von IBackgroundService . definiert werden die im Hintergrund für verschiedene Aktivitäten laufen.
Das Diagramm unten zeigt eine allgemeine Ansicht der Architektur und der Konnektivität zwischen den verschiedenen Blöcken und Diensten.
Telemetriedienst
Dieser Dienst überwacht das Temperaturänderungsereignis (über ein Abonnement) und sendet bei jeder Temperaturänderung eine Nachricht an den Azure Service Bus Event Hub.
Timer-Dienst
Dieser einfache Dienst ist ein Timer, der alle 500 Millisekunden ein Ereignis veröffentlicht und von den Ansichtsmodellen verwendet wird, um die aktuelle Uhrzeit in einer Ansicht anzuzeigen. Es wird auch vom Mcp9808TemperatureRepository . verwendet um den Sensor einmal pro Sekunde auszulesen. Die Timer-Ereignisargumente enthalten einen Zähler, der mit der mod-Funktion verwendet werden kann, um das Timer-Intervall einfach in die gewünschte Länge zu unterteilen. Es gibt eine Methode namens IsMyInterval(TimeSpan interval) für das Ereignisargument, die die Berechnungen für Sie erledigt. Sie müssen lediglich das Intervall als TimeSpan . angeben Objekt.
Alarm-Pin-Überwachungsdienst
Dieser Dienst überwacht den Zustand des GPIO-Pins, der mit dem Alert-Pin des MCP9808 verbunden ist. Wenn der Wert des GPIO geändert wird, veröffentlicht dieser Dienst ein Ereignis.
LED-Service
Dieser Dienst ist für das Ein- und Ausschalten der LEDs verantwortlich. Dies erfolgt durch Überwachung (über Abonnement) des Temperaturänderungsereignisses, das auch den Alarmstatus des MCP9808 umfasst. Wenn sich der Alarmstatus ändert, werden die LEDs entsprechend aktualisiert.
Überwachungsdienst auf Knopfdruck
Dieser Dienst überwacht den mit dem Taster verbundenen GPIO-Pin und veröffentlicht ein Ereignis, wenn der Taster losgelassen wird. Dieses Ereignis wird vom Mcp9808TemperatureRepository . aufgenommen wenn sich das Gerät im manuellen Alarm-Reset-Modus (MCP9808-Interrupt-Modus) befindet. Debug-Ereignisse werden auch veröffentlicht, damit der Status der Schaltfläche in der Debug-Konsole angezeigt werden kann.
Benachrichtigungs-Relay-Dienst
Der Dienst überwacht den SignalR-Hub und den internen Ereignisaggregator und leitet Nachrichten zwischen den beiden basierend auf einer vordefinierten Zuordnung weiter (unter Verwendung der EventRelayMap Klasse). Dadurch kann die Anwendung im Wesentlichen nur das interne Ereignissystem erkennen und trotzdem Nachrichten mit anderen Instanzen der Anwendung senden und empfangen.
Konsolendienst debuggen
Dieser Dienst überwacht die Anwendungen (per Abonnement) auf Debugging-Ereignisse und fügt sie einer internen Sammlung hinzu. Es implementiert auch DebugConsoleRepository , wodurch die Debug-Konsolenansicht diese Ereignisse in der Anwendung über das Ansichtsmodell anzeigen kann.
Anwendungsinitialisierung
Wenn die Anwendung startet, startet sie die StartPage zuerst anzeigen, wodurch automatisch das StartPageViewModel . aufgerufen wird . Dieses Ansichtsmodell bringt alles zum Laufen, bevor es in die Hauptansicht gestartet wird.
Erste Schritte
Schaltkreisanforderungen
Die Schaltung erfordert ein großes, lötfreies Steckbrett und optional einen T-förmigen Schuster und ein Flachbandkabel (ich verwende die von Vilros verkaufte Version). Das Steckbrett kann an einer Vielzahl von Orten bezogen werden (ich habe in lokalen Geschäften und bei Amazon gekauft). Die Schaltung verwendet auch einen kurzzeitigen taktilen Druckknopfschalter mit vier Stiften. Es gibt viele Arten; jeder wird tun. Schließlich verwende ich für den Temperatursensor das MCP9808 High Accuracy I2C Temperature Sensor Breakout Board von Adafruit.
Die Schaltung kann ohne Schuster gebaut werden. Folgen Sie einfach dem alternativen Steckbrettdiagramm am Ende des Projekts.
Schaltungsbaugruppe
Verwenden Sie diese Anleitung, um die Schaltung zusammenzubauen, und verwenden Sie das Diagramm unten auf der Seite als Richtlinie (Hinweis:Die Farbe der Drähte ist optional und wurde ausgewählt, um die Schaltung zu vereinfachen folgen, wenn es gebaut wird).
- Legen Sie jede der vier LEDs auf das Steckbrett.
- Verbinde ein Ende eines 220 Ω Widerstand an die Anode jeder LED und das andere Ende des Widerstands an den 3V3 (Pin 1 oder 17) auf dem Raspberry Pi. Alle vier LED-Anoden sollten an 3V3 . angeschlossen werden über eine 220 Ω Widerstand. Verwenden Sie am besten eines der + Schienen auf Ihrem Steckbrett für die 3V3-Anschlüsse.
- Verbinden Sie die Kathode der blauen LED mit GPIO 18 (Pin 12) auf dem Raspberry Pi.
- Verbinden Sie die Kathode der grünen LED mit GPIO 23 (Pin 16) auf dem Raspberry Pi.
- Verbinden Sie die Kathode der roten LED mit GPIO 12 (Pin 32) auf dem Raspberry Pi.
- Verbinden Sie die Kathode der gelben LED mit GPIO 16 (Pin 36) auf dem Raspberry Pi.
- Setzen Sie den MCP9808 auf das Steckbrett.
- Verbinden Vdd auf dem MCP9808 zum 3V3 auf dem Raspberry Pi.
- Anschließen GND am MCP9808 an GND auf dem Raspberry Pi. Masse auf dem Raspberry Pi kann einer der folgenden Pins sein:6, 9, 14, 20, 25, 30, 34 und 39.
- Verbinden SCL auf dem MCP9808 an SCL auf dem Raspberry Pi (Pin 5).
- Verbinden SDA auf dem MCP9808 zu SDA auf dem Raspberry Pi (Pin 3).
- Verbinde ein 10 K Ω Widerstand zwischen der Warnung Pin auf MCP9808 und 3V3 auf dem Raspberry Pi.
- Verbinden Sie die Benachrichtigung stecken Sie den MCP9808 an den GPIO 6 (Pin 31) auf dem Raspberry Pi.
- Setzen Sie den Druckknopfschalter auf das Steckbrett.
- Verbinden Sie eine Seite des Schalters mit GPIO 5 (Pin 29) auf dem Raspberry Pi.
- Verbinden Sie die andere Seite des Schalters GND auf dem Raspberry Pi.
- Verbinde ein 10 K Ω Widerstand zwischen GPIO 5 und 3V3 auf dem Raspberry Pi.
Unten sind einige Fotos von der Schaltung, die ich mit dem Schuster gebaut habe.
Microsoft Azure-Anforderungen
Wenn Sie kein Azure-Konto haben, müssen Sie eines erstellen. Sie können ein Guthaben von 200 USD erhalten, wenn Sie Ihr Konto eröffnen. Gehe zu azure.com und klicken Sie auf den Link KOSTENLOSES KONTO . Wenn Sie bereits ein Konto haben, melden Sie sich beim Portal unter portal.azure.com an .
HINWEIS:Dieses Handbuch ist kein vollständiger Leitfaden zum Konfigurieren von Azure. Möglicherweise müssen Sie sich mit dem Portal vertraut machen, wenn Sie es noch nie zuvor verwendet haben. Ich werde die für dieses Projekt erforderlichen Schritte so gut ich kann durchgehen.
Lassen Sie sich während des gesamten Einrichtungsprozesses beim Azure-Portal angemeldet. Sie müssen oft darauf zurückgreifen.
Azure IoT Event Hub-Setup
- Auswählen Neu im linken Menü des Portals.
- Wählen Sie Internet der Dinge . aus
- Wählen Sie Iot Hub . aus
- Geben Sie einen eindeutigen Namen für Ihren Hub ein.
- Wählen Sie ein Abonnement aus.
- Unter Ressourcengruppe Wählen Sie Neu erstellen und geben Sie einen Namen für Ihre Gruppe ein. Beachten Sie, dass Sie diese Gruppe für alle während dieses Projekts erstellten Azure-Ressourcen verwenden.
- Wählen Sie einen Standort (Versuchen Sie, alle Ressourcen in derselben Region zu halten, um die Gebühren niedrig zu halten ).
- Wenn dies Ihr erster IoT-Hub ist, wählen Sie Preise und Skalierungsstufe aus. Wählen Sie dann F1 Kostenlos . aus . Sie können eine kostenlose Stufe in Ihrem Konto haben.
- Klicken Sie abschließend auf Erstellen und warten Sie, bis der IoT Hub erstellt wurde.
- Klicken Sie im linken Menü auf IoT Hub, um den neuen Hub anzuzeigen.
- Klicken Sie auf den neuen Hub, um eine Übersicht der Details anzuzeigen. Sie müssen diese Ansicht später erneut aufrufen.
Gerät erstellen
Für Azure IoT Hub muss jedes Gerät aus Sicherheitsgründen eindeutig identifiziert und im Hub registriert werden. Ein Gerät kann mit dem Azure SDK und Code registriert werden, aber für dieses Projekt verwenden wir den Geräte-Explorer, der im Azure SDK verfügbar ist.
- Laden Sie das Azure SDK von GitHub von https://github.com/Azure/azure-iot-sdk-csharp herunter, indem Sie entweder die ZIP-Datei abrufen oder das Repository klonen.
- Wenn Sie die ZIP-Datei heruntergeladen haben, erweitern Sie sie in einen Ordner auf Ihrer Festplatte.
- Öffnen Sie den Ordner azure-iot-sdk–csharp-master\tools\DeviceExplorer .
- Öffnen Sie das DeviceExplorer-Projekt in Visual Studio.
- Führen Sie die Anwendung aus.
- Kehren Sie zum Azure-Portal zurück und wählen Sie Ihren IoT Hub aus. Klicken Sie auf die Richtlinien für den gemeinsamen Zugriff Link und wählen Sie iothubowner . Klicken Sie auf Kopieren Schaltfläche neben der Verbindungszeichenfolge – Primärschlüssel .
- Fügen Sie diese Zeichenfolge im Fenster des Geräte-Explorers in das Textfeld mit der Bezeichnung IoT Hub-Verbindungszeichenfolge ein .
- Klicken Sie auf Aktualisieren Taste.
- Wechsel zur Verwaltung Tab im Geräte-Explorer und klicken Sie auf Erstellen .
- Geben Sie einen Namen für Ihr Gerät ein (z. B. TemperatureDevice1 ).
- Stellen Sie sicher, dass die Schlüssel automatisch generieren das Kontrollkästchen ist aktiviert und klicke auf Erstellen .
- Klicken Sie auf Fertig .
- Sie müssen später zu dieser Anwendung zurückkehren, um die Geräteverbindungszeichenfolge abzurufen.
Azure SQL-Datenbankeinrichtung
Die Telemetriedaten werden in einer Azure SQL-Datenbank gespeichert. Verwenden Sie das Portal, um die Datenbank zu erstellen.
- Klicken Sie auf SQL-Datenbanken im Portalmenü.
- Klicken Sie auf Hinzufügen Taste.
- Geben Sie einen Namen für die Datenbank ein (z. B. SensorTelemetry)
- Wählen Sie ein Abonnement aus.
- Für Ressourcengruppe Wählen Sie Vorhandenes verwenden und wählen Sie Sensortelemetrie aus dem Dropdown.
- Klicken Sie auf den Serverlink, um einen neuen Server einzurichten.
- Geben Sie einen Namen für den Server ein.
- Geben Sie einen Benutzernamen ein (Diesen benötigen Sie später, also merken Sie sich ihn ).
- Geben Sie ein Passwort ein (Sie benötigen es später, also merken Sie es sich ).
- Wählen Sie einen Standort (Versuchen Sie, alle Ressourcen in derselben Region zu halten, um die Gebühren niedrig zu halten ).
- Klicken Sie auf Auswählen .
- Klicken Sie auf Preisstufe .
- Wählen Sie Einfach . aus .
- Klicken Sie auf Auswählen .
- Klicken Sie auf Erstellen .
- Klicken Sie auf den neuen Server in der SQL Server-Liste,
- Klicken Sie auf Server-Firewall festlegen um den Zugriff von Ihrem Computer auf den SQL Server zu ermöglichen.
- Geben Sie einen Namen für die Verbindung und Ihre externe IP-Adresse in den Start-IP- und End-IP-Bereich ein.
- Klicken Sie auf die Auslassungspunkte, um den Eintrag zu speichern.
- Klicken Sie auf Speichern um die IP-Adresse zu speichern.
Datenbanktabelle erstellen
Die verwendete Tabelle wird manuell erstellt. Die Code First-Bereitstellung kann in mobilen Apps verwendet werden, die erstellte Tabelle ist jedoch nicht mit Stream Analytics kompatibel.
- Öffnen Sie Visual Studio.
- Wählen Sie SQL Server-Objekt-Explorer . aus aus der Ansicht Menü.
- Klicken Sie mit der rechten Maustaste auf SQL Server -Objekt und wählen Sie SQL Server hinzufügen .
- Durchsuchen Sie die Azure-Datenbanken und wählen Sie die Datenbank aus, die Sie im vorherigen Schritt erstellt haben.
- Geben Sie Ihren Nutzernamen und Ihr Passwort ein und klicken Sie auf Verbinden .
- Erweitern Sie die Objekte des Objekt-Explorers, bis Sie die von Ihnen erstellte Datenbank sehen.
- Klicken Sie mit der rechten Maustaste auf diese Datenbank und wählen Sie Neue Abfrage .
- Kopieren Sie das SQL-Skript vom unteren Rand dieser Projektseite und fügen Sie es in das Codefenster von Visual Studio ein.
- Auswählen Ausführen aus SQL Menü, um das Skript auszuführen.
- Wenn Sie das Tabellenobjekt im Explorer erweitern, wird die neu erstellte Tabelle mit dem Namen SensorReadings . angezeigt .
App Service-Plan erstellen
Der App Service Plan ist zum Erstellen eines App Service erforderlich.
- Wählen Sie App Service-Pläne im Portalmenü aus.
- Geben Sie einen Namen für den Plan ein.
- Für Ressourcengruppe Wählen Sie Vorhandenes verwenden und wählen Sie Sensortelemetrie aus dem Dropdown.
- Wählen Sie einen Ort aus.
- Klicken Sie auf Preisstufe und wählen Sie B1 Basic . aus .
- Klicken Sie auf Erstellen .
App Service erstellen ( Mobile App )
Die Website und der SignalR-Hub werden mit einem App Service ausgeführt.
- Klicken Sie auf Neu aus dem Portalmenü.
- Wählen Sie Web+Mobil aus der Liste.
- Wählen Sie Mobile App .
- Geben Sie einen Namen für die Anwendung ein.
- Wählen Sie ein Abonnement aus.
- Für Ressourcengruppe Wählen Sie Vorhandenes verwenden und wählen Sie Sensortelemetrie aus dem Dropdown.
- Wählen Sie den App Service-Plan aus, den Sie im vorherigen Schritt erstellt haben.
- App Insights ist optional.
- Klicken Sie auf Erstellen .
Azure Stream Analytics-Setup
Der Stream Analytics-Auftrag überwacht Datenereignisse auf dem IoT Hub und schreibt sie in eine SQL Server-Datenbank. Der Job besteht aus einer Eingabe (dem IoT Hub) und einer Ausgabe (der SQL-Tabelle) und einer Abfrage, die auswählt, welche Felder verwendet werden sollen.
- Wählen Sie Neu .
- Wählen Sie Daten + Analytics aus aus dem Menü.
- Wählen Sie Stream Analytics-Auftrag aus dem Menü.
- Geben Sie einen eindeutigen Namen für den Job ein.
- Wählen Sie ein Abonnement aus.
- Wählen Sie für die Ressourcengruppe die Option Vorhandene verwenden und wählen Sie Sensortelemetrie aus dem Dropdown-Menü.
- Wählen Sie einen Standort (Versuchen Sie, alle Ressourcen in derselben Region zu halten, um die Gebühren niedrig zu halten ).
- Klicken Sie auf Erstellen .
- Wählen Sie Weitere Dienste> aus dem Menü.
- Scrollen Sie nach unten zu Stream Analytics und klicke auf den Stern . Dadurch wird es an das Portalmenü angeheftet.
- Klicken Sie auf Stream Analytics-Jobs im Portalmenü.
- Wählen Sie den gerade erstellten Job aus.
- Klicken Sie auf Eingaben .
- Klicken Sie auf Hinzufügen .
- Geben Sie einen Namen für den Eingang ein (z. B. SensorTelemetry-Input).
- Ändern Sie die Quelle in IoT Hub .
- Akzeptieren Sie die verbleibenden Standardwerte.
- Klicken Sie auf Erstellen .
- Klicken Sie auf Ausgaben .
- Klicken Sie auf Hinzufügen .
- Geben Sie einen Namen für den Ausgang ein (z.B. SensorTelemetry-Output).
- Wählen Sie SQL-Datenbank . aus als Spüle.
- Wählen Sie die Sensortelemetrie-Datenbank aus.
- Geben Sie den Benutzernamen ein, den Sie beim Erstellen des Datenbankservers angegeben haben.
- Geben Sie das Passwort ein, das Sie beim Erstellen des Datenbankservers festgelegt haben.
- Geben Sie Sensormesswerte ein für den Tabellennamen.
- Klicken Sie auf Erstellen .
- Auswählen Abfrage .
- Ersetzen Sie den Text [YourOutputAlias] mit dem Namen der Ausgabe (unter Beibehaltung der eckigen Klammern).
- Ersetzen Sie den Text [YourInputAlias] mit dem Namen des Eingangs (beibehalten der eckigen Klammern).
- Ersetzen Sie das Sternchen (* ) mit diesem Text: [TimestampUtc], Source, Temperature, IsCritical, IsAboveUpperThreshold, IsBelowLowerThreshold
- Klicken Sie auf Speichern und klicken Sie dann auf Ja wenn Sie dazu aufgefordert werden.
- Klicken Sie auf Übersicht im Stream Analytics-Auftragsmenü.
- Klicken Sie auf Start Taste.
- Jetzt auswählen.
- Klicken Sie auf Start .
Konfiguration der Software
Laden Sie über den Repository-Link unten auf der Seite entweder den Code als ZIP-Datei herunter oder klonen Sie das Repository auf Ihren Computer und öffnen Sie das Projekt in Visual Studio .
Mobile App konfigurieren und veröffentlichen
Die Webanwendung (im Webordner) muss im Azure App Service veröffentlicht werden.
- Klicken Sie mit der rechten Maustaste auf das Projekt in Visual Studio und wählen Sie Veröffentlichen .
- Click Microsoft Azure App Service .
- Select your App Service from the list (you may need to log in if this is the first time).
- Click OK .
- Click Next .
- Go to the Azure portal
- Select SQL Databases from the portal menu.
- Select your database.
- Click the Show database connection strings link.
- Click the copy button next to ADO.NET string.
- Go back to Visual Studio and paste this string into the text box labeled MS_TableConnectionString .
- Change the user name and password to the values you set when you created the SQL Server.
- Click Next .
- Click Publish .
- When the publish has completed, a browser will be launched pointed at your new web site.
Enter the IoT Hub Credentials
Before running the application, you will need to enter your IoT Hub device credentials into the code.
- Open the project in Visual Studio.
- Expand the Sensor Telemetry project under the UWP folder and open the code behind for the App.xaml .
- Scroll down to the section with the definition for IIotHubConfiguration .
- Open the Device Explorer project in another instance of Visual Stduio.
- Click to the Management tab.
- Right-click the device you created previously.
- Click the Copy connection string for selected device option in the menu.
- Go back to the Sensor Telemetry prject and paste the connection string over the text {YOUR CONNECTION STRING HERE} .
- Enter the name of the device over the text {YOUR DEVICE ID HERE} .
- Save this file.
- Expand the Sensor Telemetry IoT project and find the code behidn for App.xaml .
- Scroll down to the section with the definition for IIotHubConfiguration .
- Copy and paste the same configuration from the previous app.cs file.
Enter the Mobile App URL
The Mobile App URL also needs to be entered into the code.
- Open the project in Visual Studio.
- Expand the Shared project.
- Open the UnityConfiguration.cs .
- Scroll down to the section containng the IMobileServicesConfiguration definition.
- Open the Azure portal.
- Click App Services .
- Select the App Service you created for this project.
- Hover the mouse over the URL and click the Copy icon.
- Goback to Visual Studio and paste the URL over the text {YOUR MOBILE SERVICES URL HERE} .
Read More Detail :Sensor Telemetry 2.0.1
Herstellungsprozess
- Was ist Sensorkalibrierung – Definition und Anwendung
- Herzschlagsensor – Funktion und Anwendung
- Was ist ein O2-Sensor?
- TMP006-Temperatursensor-Python-Bibliothek mit Raspberry Pi,
- Bewegungssensor mit Raspberry Pi
- Raspberry Pi Bodenfeuchtigkeitssensor
- DS18B20-Sensor testen
- Raspberry Pi-Temperatursensor
- Sensortelemetrie 2.0.1
- Emotionssensor / EEG