Was ist das einfachste programmierbare IoT-Gerät, das eine Verbindung zu Wi-Fi herstellen kann?


44

Ich versuche, einen billigen Asset-Tracker zu bauen, der mit einem Akku betrieben werden kann. Ich muss das IoT-Gerät lediglich mit bekannten WiFi-Netzwerkzugangspunkten verbinden. Ich habe Zugriff auf das Back-End-System, das die WLAN-Zugangspunkte verwaltet.

Ich habe einen CHIP-Computer oder PiZero W in Betracht gezogen, aber beide verfügen über Prozessorleistung, die ich nicht benötige. Auf der Suche nach einem kompletten Board mit Wi-Fi.


5
Wenn Ihr Hauptanliegen in Bezug auf den Raspberry Pi Zero W der Stromverbrauch ist, besuchen Sie diese Website:
Dan Esparza

3
@DanEsparza Danke für den Link. Obwohl der Stromverbrauch ein Problem darstellt, benötige ich keine Rechenleistung. Es ist ein Overkill für meine Bedürfnisse. Ich benötige nur ein kleines IoT-Gerät, das ich programmieren kann, um eine Verbindung zu bekannten WiFi-Zugangspunkten herzustellen. Ähnlich wie Tile oder TrackR, nur eine Verbindung zu WiFi herstellen.
Widder

7
@DanEsparza Ich würde alles, was über 5 mA liegt, als sehr stromhungrig für ein Gerät betrachten, das in etwa keine Arbeit leistet (dh gelegentliche Telefonanrufe, die durch die Sensoraktivität begrenzt sind).
Sean Houlihane

2
Warum interessiert es Sie nicht, ob neben dem Stromverbrauch mehr Prozessorleistung zur Verfügung steht, als Sie benötigen?
user253751

3
@immibis - Genau für den Stromverbrauch. Wenn auf Ihrer Plattform Linux ausgeführt wird, ist der Stromverbrauch nicht gering. Ein Teil mit <200 MHz, auf dem ein RTOS ausgeführt wird, ist hier die geeignete Wahl, und der Schwerpunkt für eine gute Antwort sollte auf der Auswahl eines guten Geräts (und nicht auf einem bestimmten Teil) liegen.
Sean Houlihane

Antworten:


38

Schauen Sie sich ESP-Module an. Ich habe 3 NodeMCU-Boards, die zu Hause laufen, um Temperatur und Luftfeuchtigkeit zu prüfen und Steckdosen und LED-Streifen zu steuern. NodeMCU kann für ungefähr 4-5 $ gefunden werden.

Wenn Sie die richtige Unterstützung und die Möglichkeit haben möchten, den Code von jedem Ort aus zu ändern, schauen Sie sich Particle Photon an , es ist ein bisschen mehr (ungefähr 20 $), aber es funktioniert wirklich sehr, sehr gut.

Wenn du günstig sein willst, besorg dir die NodeMCU, aber das Photon ist ein großartiges Board, an dem du basteln kannst.


6
Wenn Sie eine Referenz zum ESP8266 suchen (wahrscheinlich eines der bekanntesten ESP-Module), ist das Internet der Dinge mit ESP8266 eine nützliche Lektüre mit vielen Details zu
Kauforten

4
Es ist nichts wert, dass ESP8266 (die üblichen Boards, die Sie bekommen können) in der Lage ist, eine modifizierte Version von Arduino zu betreiben - was wesentlich dazu beiträgt, dass sie leicht zugänglich sind.
Knetic

4
Naked ESP8266 Boards kosten weniger als 2 $.
Codo

2
@codo - hängt natürlich von der Qualität des Boards ab. Das ESP01 ist spottbillig, vielleicht so günstig wie 1 US-Dollar, wenn Sie es in großen Mengen kaufen. Es verfügt jedoch nur über 2 GPIOs und beide müssen während des Startvorgangs auf bestimmte Werte gebracht werden. OTOH, ich habe gerade ein paar ESP201 gekauft, die viel besser sind: 7 GPIOs, von denen einer als ADC verwendet werden kann, und ein optionaler externer Antennenanschluss. Außerdem verwenden sie einreihige Stiftleisten, sodass sie problemlos in Steckbrettern verwendet werden können, was die ESP01s nicht können. Ich habe für sie jeweils etwa drei Dollar bezahlt, und sie sind es definitiv wert.
Jules

2
Es gibt kleine Boards mit einem ESP8266-Modul, 22 Lötpunkten und einer Antenne für weniger als 2 US-Dollar.
Codo

18

Es gibt Omega2 von der Firma Onion . Sie kosten 5 $. Sie finanzieren immer noch Crowdfunding, daher bin ich mir nicht sicher, ob sie zuverlässig sind, und habe noch keine verwendet. .

Wie @ Aurora0001 hervorhob, beendete Onion das Crowdfunding und es gelang ihnen, eine Finanzierung zuzusagen, die 45-mal höher war als ihr ursprüngliches Ziel, was IMO zuverlässig macht.

Es verfügt über eine 580-MHz-CPU, 64 MB DDR2-Speicher und b / g / n Wi-Fi. Sie beschreiben das Board in ihrem Kickstarter als einen IoT-Computer :

Vorstellung des Omega2, des 5-Dollar-IoT-Computers.

Was zum Teufel ist ein IoT-Computer? Es handelt sich um einen Linux-Computer, der speziell für die Erstellung verbundener Hardwareanwendungen entwickelt wurde. Es kombiniert den winzigen Formfaktor und die Energieeffizienz des Arduino mit der Leistung und Flexibilität des Raspberry Pi.


5
Das 45-fache ihres ursprünglichen Ziels besagt nur, dass viele Leute das Produkt für sexy hielten. Es sagt nichts darüber aus, wie zuverlässig sie es tatsächlich produzieren können, wenn sie das Geld haben. Die Zano-Mikrodrohne ist ein berühmtes Beispiel: Sie war der größte Kickstarter Europas und brachte 2.300.000 GBP (~ 3 Mio. USD bei aktuellen Wechselkursen) ein, etwa das 18-fache ihres ursprünglichen Ziels. Das Unternehmen scheiterte und es wurde nie ein Produkt ausgeliefert, das den angegebenen Spezifikationen entsprach.
David Richerby

1
@DavidRicherby Stimmt, aber der Omega2 ist für den sofortigen Kauf über Amazon-Warenhäuser vorrätig. Sie haben also ein Versandprodukt. Das Erreichen dieses Meilensteins ist keine Garantie dafür, dass sie in einigen Jahren noch verfügbar sind. Aber die einzige Möglichkeit, das zu beantworten, besteht darin, mehrere Jahre zu warten und zu sehen, was passiert. Wenn die OPs nur planen, eine begrenzte Anzahl von Geräten mit diesen zu bauen, ist es möglicherweise sinnvoll, Wetten abzusichern, um alles zu bestellen, was jetzt in einer einzigen Transaktion benötigt wird.
Dan Neely

1
Lesen Sie ihre eigenen Foren und Sie werden feststellen, dass diese Boards - und insbesondere ihre Software - viele Probleme hatten. Sie sind auch völlig ungeeignet für lange Batterielaufzeiten.
Chris Stratton

Ein tolles kleines Board mit Linux in Flash und nicht auf SD-Karte. Es gibt auch Benutzer-Flash für Ihre Programme, und Sie können Modelle mit SD-Karte erhalten.
Mawg

Ich liebe diese Boards, ABER sie basieren nicht auf ARM, und das Einrichten der C / C ++ - Toolchain ist ein echtes Problem. Sie eignen sich jedoch hervorragend für Python oder HTML & JS.
Mawg

13

Eine, die ich beobachtet, aber noch nicht ausprobiert habe, ist VoCore . Es wurde auch Crowdfunding wie der Omega2.

Es verspricht ein Gerät für 4 bis 18 US-Dollar, aber die verfügbaren beginnen bei 17,99 US-Dollar. Was für VoCore relevant ist, ist, dass es vollständig Open-Source-Hardware und -Software enthält . So können Sie theoretisch einen niedrigen Stückpreis erzielen. Technische Details und Quelle finden Sie hier .

Winzige Größe: Ein Quadratzoll, leicht in Geräte einzubetten.

OpenWrt / LEDE: Einfach zu codieren, zu kompilieren; stabiles System.

Niedrige Kosten: 4 bis 18 US-Dollar für jede unübertroffene Leistung.

Schnittstellen: Hardware-Unterstützung USB, Ethernet, I2C, SPI usw.

OpenSource: Sowohl Software als auch Hardware, KOSTENLOS


Dies ist aufgrund des hohen Verbrauchs im laufenden Betrieb und der langen Startzeit, die selbst dann auftreten würde, wenn eine Art Ruhebatterie hinzugefügt werden könnte, um sie regelmäßig zu aktivieren, nicht für eine lange Batterielebensdauer geeignet.
Chris Stratton

13

Als noch günstigere Alternative zur NodeMCU von Luis answer möchte ich das nackte ESP-12E oder ESP-12F * erwähnen , das Modul, das auf der NodeMCU verwendet wird. Sie sind sogar billiger als die NodeMCU, verbrauchen weniger Strom (weil ihnen der USB-Konverter fehlt) und können direkt von einer 3-V-Batterie gespeist werden. Sie benötigen einen USB-Seriell-Wandler (3,3 V **, z. B. einen CP2102) und müssen Drähte (oder Stifte, wenn Sie die Adapterplatine erhalten) anlöten, um sie zu programmieren.

* Der einzige Unterschied scheint die Form der Antenne zu sein
** Im Moment kann ich nicht bestätigen, dass es mit einer 5V funktioniert


1
Ja, die Verwendung eines nackten ESP ist billiger, aber es ist auch schwieriger und Sie müssen sich mit dem Löt- und Leiterplatten-Design (zumindest auf einem Steckbrett oder Perfboard) befassen, aber danke, dass Sie darauf hingewiesen haben
Luis Diaz

1
"Sie benötigen einen USB-Seriell-Wandler" - Beachten Sie, dass Sie einen benötigen, der 3,3 V-Ausgänge unterstützt, da der ESP8266-Chip nicht ttl-freundlich ist.
Jules

1
@LuisDiaz - Sie können den ESP-12F fertig montiert auf einem Steckbrett-kompatiblen Breakout-Board für etwa die Hälfte der Kosten der NodeMCU erwerben.
Jules

1
@Jules Cool! Ich habe das noch nie gesehen! Gut zu wissen :)
Luis Diaz

1
Obwohl die ESP8266 erscheinen 5V-tolerant zu sein, die CP2102 ich benutze ist ein 3,3 V - Wandler, so dass ich die Informationen so lange zugesetzt , wie ich sonst nicht bestätigt haben.
AndreKR

10

Wenn Sie die Akkulaufzeit (und möglicherweise die Größe des Akkus) festlegen, erfahren Sie, wie lange Ihr Ding halten muss. Das kann dann dazu führen, dass Sie sich entscheiden, es nur dann einzuschalten, wenn (a) Sie eine Messung durchführen müssen und (b) wann Daten übertragen werden sollen.

Wenn Sie beispielsweise nur stündlich aufwachen möchten, möchten Sie etwas mit einer Echtzeituhr (Real Time Clock, RTC) oder etwas, das entweder Sekunden zählt, an Bord haben oder als Slave-Einheit verfügbar sein, um Ihnen mitzuteilen, dass der Mikrocontroller arbeiten soll.

Die Echtzeituhr kann dann das WLAN anweisen, sich einzuschalten, festzustellen, ob es sich in Reichweite seines zulässigen Netzwerks befindet, sich anzumelden und Daten zu übertragen.

Die andere Seite dieser Medaille ist, dass man so etwas wie ein GPS ständig (jede Sekunde) reparieren und das WLAN ständig abfragen lässt. Mit diesem Szenario könnte eine kleine Batterie nur Stunden anstelle von Wochen oder Monaten halten, wenn Sie Ihren Strom mit Bedacht verwendet hätten.

Kurz gesagt, das wäre Ihr anfängliches Dilemma.

Ich habe, was ich für gewissenhaft hielt, vor dem Beginn einer ähnlichen Sache eine sorgfältige Prüfung durchgeführt, und ich empfehle Ihnen, sich den Espruino- Mikrocontroller anzuschauen . Wenn Sie bereits über JS-Kenntnisse verfügen, können Sie sehr schnell Ergebnisse erzielen - Sie werden sich wie zu Hause fühlen. Espruinos haben RTCs, sind bereits 3,3 V und verbrauchen von Haus aus wenig Strom. Ein GPS zu benutzen ist lächerlich einfach.

Ich würde vorschlagen, dass Sie sich einen normalen grünen Espruino zulegen und dann das neue Espruino Wifi ausprobieren, anstatt selbst zu kämpfen, um einen ESP8266 hinzuzufügen (ich habe diese übrigens nicht ausprobiert). Espruinos sind nicht die billigsten, aber sie sind gut gemacht (IMO) und genießen gute Unterstützung. In ihrem Forum bekommt man normalerweise eine Bestätigung von dem Typ, der sie erstellt.

Diese Informationen sind wahrscheinlich hilfreicher für Sie, wenn Sie über JS-Kenntnisse und vernachlässigbare EE-Kenntnisse verfügen (wie ich).


3
Dies ist der entscheidende Teil der Antwort - die Beschreibung der Funktionen, die zur Unterstützung der Auswahl erforderlich sind. Leerlauf ist das Wichtigste - und das bedeutet wahrscheinlich, dass Sie wirklich so viel wie möglich in einen einzelnen SoC integrieren möchten. Suchen Sie nach neueren Geräten - dies ist eine wachsende Nachfrage.
Sean Houlihane

9

AWS IoT-Taste

Der AWS IoT Button ist ein programmierbarer Button, der auf der Amazon Dash Button-Hardware basiert. Dieses einfache Wi-Fi-Gerät ist einfach zu konfigurieren und wurde entwickelt, damit Entwickler mit AWS IoT, AWS Lambda, Amazon DynamoDB, Amazon SNS und vielen anderen Amazon Web Services beginnen können, ohne gerätespezifischen Code schreiben zu müssen.

Ich denke, dies wäre das einfachste programmierbare Iot-Gerät für mich

In diesem Artikel spricht Ted Benson darüber, wie er eine Amazon Dash-Schaltfläche im Wert von 5 US-Dollar gehackt hat, um Dinge zu tun, als das Gerät gestartet und mit dem Netzwerk verbunden wurde (per Mausklick).

Das Gerät schaltet sich jedoch nur ein und verbindet sich mit WLAN, wenn es gedrückt wird, und es enthält einen Akku, der nicht einfach ausgetauscht werden kann.


Sie müssen es (offensichtlich) hacken. Und verlassen Sie sich nicht auf eine zukünftige Versorgung. Der Dash geht an [End Of Life] ( cnet.com/news/amazon-is-going-to-kill-your-dash-button) (in 9 Tagen, Ende August 2019.
Mawg

1

Ich empfehle Ihnen, FireBeetle ESP32 Board von DFRobot zu verwenden. Dies wurde speziell für das Internet der Dinge entwickelt. NodeMCU kann zwar auch verwendet werden, verbraucht aber auch im Tiefschlafmodus mehr Strom. Ich habe Probleme beim Reduzieren des Stromverbrauchs im Tiefschlafmodus mit NodeMCU. Während FireBeetle für Low Power IoT-Geräte geeignet ist , ist es speziell für diesen Zweck optimiert. Sie brauchen also keine zusätzlichen Anstrengungen. Schließen Sie einfach den Akku an und versetzen Sie ihn in einen tiefen Schlaf, wenn keine Erfassung erforderlich ist. Es ist auch einfach zu programmieren.

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.