Low-Power-Videoübertragung für IoT

Ich entwickle derzeit einen Apparat, um meinen Hund aus der Ferne zu füttern und zu überwachen. Die Grundidee besteht darin, dies mit 2 Hauptkomponenten zu machen:

  • Die erste Komponente besteht aus einer Kamera, die auf den Teller meines Hundes zeigt, und einem Mikrocontroller mit einem Servomotor, der die Futtertür vom Futterbehälter öffnet und schließt. An diesem Ort gibt es weder WLAN noch Steckdosen, daher wird es mit Batterien betrieben. Ich hoffe, dass die Rechenleistung in dieser Komponente so niedrig wie möglich ist, also wäre es großartig, wenn es ohne Linux oder ein anderes Betriebssystem möglich wäre.

  • Die zweite Komponente kommuniziert mit der ersten und mit meinem Router, sodass ich über das Internet remote darauf zugreifen kann. Dieser kann an eine Steckdose angeschlossen werden.

Die Verwendung davon würde darin bestehen, dass ich mich mit meinem Telefon (mit einer von mir erstellten App) bei der zweiten Komponente anmelden kann, damit es mir das Live-Video zeigt und ein Signal sendet, um die Tür des Lebensmittelbehälters für einen festgelegten Betrag zu öffnen von Zeit. Ich habe einen BeagleBone Black, den ich für dieses Projekt verwenden kann, und ich denke, ich werde ihn auf die zweite Komponente anwenden.

Meine Fragen:

1) Welches Protokoll wäre für die Kommunikation zwischen beiden Komponenten geeignet (Bluetooth, Zigbee, 6lowpan, etc)? Die Kamera wird wahrscheinlich 640 * 480 oder höher sein und es gibt kein Problem mit Verzögerungen (~ 15 s - 20 s), solange ich ein relativ kontinuierliches Live-Video ansehen kann, um zu überprüfen, ob mein Hund frisst und es ihm gut geht. Es sollte möglichst wenig Strom verbrauchen, damit die Batterien lange laufen.

2) Gibt es eine Möglichkeit, die erste Komponente dazu zu bringen, das Video zu streamen, ohne dass ein Betriebssystem darauf läuft?

Ich weiß, dass es einige logischere Lösungen gibt (das WLAN-Netzwerk erweitern, eine bereits auf dem Markt befindliche Lösung kaufen usw.), aber ich möchte dieses Projekt auch als Lerninstanz für IoT verwenden. Ich habe recherchiert, konnte aber keine überzeugenden Schlussfolgerungen ziehen. Ich hoffe ihr könnt mir dabei helfen oder mich zumindest in die richtige Richtung weisen. Ich (und mein Hund) werden sehr dankbar sein.

Vielen Dank.

Antworten (1)

Das Senden von Streaming-Videos neigt dazu, einige Ressourcen zu verbrauchen. Ich habe Videos auf einem Intel Galileo gestreamt und das hat ungefähr 0,5 Ampere verbraucht. Es gibt eine Möglichkeit, ohne Betriebssystem zu streamen, aber die Integration in Ihr digitales System wäre nicht sehr kohärent. Ich habe eine dieser drahtlosen Videokameras für meine Rückfahrkamera von eBay , aber die Reichweite ist nicht sehr gut. Ich denke, Sie müssen an diesem Ende mit einem Himbeer-Pi oder so etwas verarbeiten.

Wenn Sie dies jedoch ohne Batteriestrom betreiben, möchten Sie eine kleine Solaranlage damit. Sie könnten dieses Gerät im lokalen Netzwerk haben, wo es das Video einspeist. Ich weiß, Sie sagten, es wird kein WIFI haben, aber seien wir ehrlich. Sie senden kein Live-Video über Bluetooth. Sie können vielleicht ein oder zwei Bilder senden, aber ein Stream würde einige intensive Programmierkenntnisse erfordern (es ist möglich, aber sehr langsam).

Was das Beaglebone betrifft, sollten Sie es als Server einrichten. Es ist ziemlich einfach mit Raspi, Intel Galileos, aber ich habe noch nie einen Beaglebone als Server verwendet. Von dort aus möchten Sie diese Bluetooth-Befehle an das Servo senden.