AWS IoT-Implementierung auf einem Low-End-Controller wie Atmega328, nrf51822?

8

Ich verwende AWS IoT seit einiger Zeit in einem RPi. Ich habe mich gefragt, ob ich einen Controller wie Atmega328 oder einige NRF-basierte Controller oder STM32 zum Veröffentlichen und Abonnieren des AWS IoT MQTT-Brokers verwenden könnte.

Ich habe ein bisschen darüber recherchiert und bin nicht sicher, wie ich die Authentifizierung mit dem Server mit den Zertifikaten durchführen soll.

Wie integriere ich diese Controller in AWS IoT?

A. Rajib Kumar Gupta
quelle
1
Keiner von diesen hat die entsprechende Konnektivität; Um dies wirtschaftlich zu erreichen, werden Sie wahrscheinlich etwas verwenden, das ein leistungsfähigerer Computer ist. Sie können dies also genauso gut verwenden und diese Chips überhaupt nicht. In anderen Fällen könnten Sie dies tun, wenn Sie sich genug Mühe geben würden, um einen Umweg zu finden, aber es wäre eine grundsätzlich schlechte Idee.
Chris Stratton
1
Dies könnte von Nutzen sein github.com/copercini/esp8266-aws_iot
cujo
Vielen Dank für Ihren Vorschlag @ChrisStratton. Glauben Sie, dass dies mit anderen mqtt-Brokern mit eingeschränkten Authentifizierungsanforderungen möglich sein wird?
A. Rajib Kumar Gupta
2
Sie scheinen den Punkt zu verfehlen - ein Arduino selbst hat keine drahtgebundene oder drahtlose Netzwerkschnittstelle, die es ihm ermöglichen würde, mit diesem Dienst zu kommunizieren . Im Gegensatz dazu können die wirtschaftlichen Vorgänge (ESP8266, Linux-WLAN-Router-Chip usw.) die erforderlichen Vorgänge leichter ausführen als ein Arduino. Lösen Sie also das Kommunikationsproblem, und Sie werden wahrscheinlich eine Lösung für das Protokoll finden.
Chris Stratton

Antworten:

4

AWS IOT setzt voraus, dass Ihr Gerät TCP / IP und Verschlüsselung versteht.

Der ATMega328 verfügt über 2 KB RAM, Ethernet-Frames können jedoch bis zu 1500 Byte lang sein. Selbst wenn Sie ein Paket erhalten könnten, wäre kein Platz mehr, um es zu verarbeiten.

Der nRF51822 verfügt über 16 KB RAM, was für Ethernet ausreichend ist, aber nicht für TCP / IP und WiFi ausreicht. (Für beide muss viel Staat gespeichert werden.)

Das kleinste praktische Gerät mit WiFi + TCP / IP ist der ESP8266 mit 96 KB RAM. Selbst dann können Sie im Allgemeinen immer nur eine TCP-Verbindung gleichzeitig haben. Sie werden immer billiger (2 Dollar). Wenn Sie versuchen, einem AtMega WLAN hinzuzufügen, bedeutet dies, dass Sie einen Prozessor hinzufügen, der mindestens so groß ist wie der ESP8266. Einige Arduino WiFi-Adapter haben die 10-fache Leistung eines ESP8266 (und das 10-fache des Preises).

BraveNewCurrency
quelle
4

Vielleicht möchten Sie Amazon FreeRTOS ausprobieren .

Amazon FreeRTOS (a: FreeRTOS) ist ein Betriebssystem für Mikrocontroller, mit dem kleine Edge-Geräte mit geringem Stromverbrauch einfach programmiert, bereitgestellt, gesichert, verbunden und verwaltet werden können. Amazon FreeRTOS basiert auf dem FreeRTOS-Kernel, einem beliebten Open-Source-Betriebssystem für Mikrocontroller, und erweitert es um Softwarebibliotheken, mit denen Sie Ihre kleinen Geräte mit geringem Stromverbrauch einfach sicher mit AWS-Cloud-Diensten wie AWS IoT Core oder leistungsstärkeren verbinden können Edge-Geräte mit AWS Greengrass.

Es gibt Unterstützung für das Verbinden (und Einrichten von Anmeldeinformationen) mehrerer kleiner Mikrocontroller mit AWS, einschließlich eines STM32-Geräts .

Rose
quelle
Dieses verknüpfte STM32- "Gerät" ist tatsächlich eine Karte, die ein STM32 und dann ein anderes STM32 innerhalb des Inventek-Submodul-Moduls für serielles WLAN enthält. Eine effiziente Lösung würde die Anwendung nur innerhalb des seriellen WLAN-Moduls (oder seines Ersatzschaltbilds) ausführen, anstatt zwei Prozessoren zu verwenden, um die Arbeit eines zu erledigen.
Chris Stratton