Forum: Mikrocontroller und Digitale Elektronik PocketBeagle oder Beaglebone Black


von Lukas (Gast)


Lesenswert?

Hallo zusammen

Ich bin gerade am Erstellen eines Sensorknoten, der über Ethernet mit 
einem MQTT Broker kommuniziert. Der Sensorknoten wird verschiedene 
Aufgaben erledigen:

- min. 2 UART
- min. 2 analoge Eingänge
- diverse Digitale
- vielleicht CAN

Die Speisung muss über PoE erfolgen. Ethernet wird über M12 D codiert 
angeschlossen.
PoE nach Standard 802.3af Modus A.

Das ganze kommt dann noch in ein Gehäuse.

Ich bin nach Vergleichen und Suchen  auf die Beaglebones gestossen.
Mir persönlich hat das PocketBeagle gut gefallen.

+ klein
+ relativ viele Anschlüsse
+ viel Rechenleistung gegenüber einem µC
+ Quelloffen
- noch nicht so viele Projekte als Referenz

Nun zu meiner Frage:
Ich brauche eine Ethernet- Verbindung. Diese müsste ich beim 
Pocketbeagle über einen IC realisieren, z.B. Wiznet W5500. Gibt es da 
irgendwelche Beschränkungen gegenüber einer "nativen" Lösung, so wie es 
der BBB hat?
Ja, die beschränkten Sockets sind mir bewusst (beim W5500 8 sockets) Der 
Treiber zu diesem IC ist für Linux auch vorhanden.

Ein PCB muss ich sowieso erstellen, da am Sensorknoten bis zu 43V 
anliegend sind.

von Beagle3 (Gast)


Lesenswert?

Lukas schrieb:

> Ich brauche eine Ethernet- Verbindung. Diese müsste ich beim
> Pocketbeagle über einen IC realisieren, z.B. Wiznet W5500. Gibt es da
> irgendwelche Beschränkungen gegenüber einer "nativen" Lösung, so wie es
> der BBB hat?

Kein VLAN.(This chip doesn't support VLAN packets with normal MTU..)

-1x SPI

> Ja, die beschränkten Sockets sind mir bewusst (beim W5500 8 sockets)

Hat er die beschränkten Sockets auch mit MACRAW?

von Niklas Gürtler (Gast)


Lesenswert?

Lukas schrieb:
> Wiznet W5500

Auf dem PocketBeagle wird man wahrscheinlich ein Linux nutzen, welches 
bereits einen TCP/IP Stack enthält, weshalb es eher nutzlos ist ein 
externes IC mit zusätzlichem Stack anzuschließen. Sinnvoller wäre z.B. 
ein USB-Ethernet-Adapter, wie auch beim Raspberry-PI üblich.
Der beim PocketBeagle genutzte TI AM3358 SoC hat übrigens auch Ethernet 
integriert, sogar mit Unterstützung für Industrie-Protokolle wie 
EtherCAT. Du müsstest nur einen PHY IC via RMII anschließen und hättest 
maximale Performance bei minimalem Hardware-Aufwand. Ob die nötigen Pins 
frei sind darfst du aber selber raussuchen :)
Der SoC und Linux sind ein schwerer Tanker (nicht echtzeitfähig,  lange 
Hochfahr-Zeit, hohe Leistungsaufnahme) - überleg dir mal, ob das für 
einen Sensorknoten wirklich sinnvoll ist. Die Integrierten PRU sind zwar 
echtzeitfähig, aber welchen Zweck hat dann noch der Rest vom System... 
Viele STM32 erfüllen die gewünschten Anforderungen, mir ist aber leider 
auch kein kompaktes Board mit allem bekannt (ließe sich aber bauen).

von Blechbieger (Gast)


Lesenswert?

Niklas Gürtler schrieb:
> Ob die nötigen Pins frei sind darfst du aber selber raussuchen :)

Sind sie nicht.

von Lukas L. (lueq)


Lesenswert?

Ich danke schon mal für die Antworten.

Wie schon gesagt, der PocketBeagle hat keine RMII Pins ausgeführt, sonst 
hätte ich wohl schon die Wahl dafür getroffen ;-) Die Idee mit dem USB- 
Ethernet ist eine gute Idee, darauf wäre ich gar nicht gekommen.Einige 
bieten dann auch noch die Möglichkeit eines USB-HUB, zB LAN9514 vom 
Microchip.

MACRAW kanne ich bisher gar nicht, kann also dazu noch keine weiteren 
Angaben machen. Der W5500 würde dies jedenfalls auch unterstützen.

Wieso ich auf ein Linux / PocketBeagle tendiere:
Die Software ist so mit relativ wenig Aufwand aus der "Ferne" wartbar. 
Geht auch mit einem µC, ist aber nicht ganz so praktisch wie bei einem 
Linux. Der Sensorknoten kann unter Umständen nicht so gut zugänglich 
sein.

Soo viel Power verbratet das BB auch nicht, ca 2-4W, je nach Aufgabe.
https://learn.adafruit.com/embedded-linux-board-comparison/power-usage

von No Y. (noy)


Lesenswert?

Du solltest nochmal genau schauen... 1. Die verschiedenen Muxing 
Optionen  der am335 kann sogar 2 rgmii busse...
Und bei den Pru Pins ist meißt einer hinter...

von Klaus B. (Gast)


Lesenswert?

Was ist den aus dem Projekt geworden? ...stehe vor einem "ähnlichen" 
Problem!

Klaus

von Lukas L. (lueq)


Lesenswert?

Hallo.
Ich habe mich für ein Pocket-Beagle entschieden.

Zum RMII Interface:
Beim PocketBeagle scheiden beide RMII-Busse aus, da diese nicht 
herausgeführt sind. Das Muxing bringt hier auch keine Verbesserung ;-)


*Hier einige Anforderungen zu meinem Projekt:*
- ich brauche PoE auf einem M12-D Stecker.
- Ethernet
- Analoge und digitale Eingänge
- RS232, mindestens zweimal
- evtl. CAN, wird mal drauf getan, wenn ich es nicht brauche ist auch 
gut.

Das PocketBeagle bietet dies alles.


Kanditaten
Gekauft habe ich ein 
[ETH-Wiz-Click](https://download.mikroe.com/documents/add-on-boards/click/eth-wiz/eth-wiz-click-manual-v100.pdf) 
gebraucht, welches sich problemlos aktivieren lässt.
Digikey hat hierzu einen recht Brauchbaren Leitfaden geschrieben: 
(https://www.digikey.com/eewiki/display/linuxonarm/PocketBeagle)
Als gegenstück habe ich zwei verschiedene USB-Eth Adapter versucht.


Resultate WIZ vs USB-Eth
mit dem W5500 ergeben sich Geschwindigkeiten von max 0.5MB/s
mit dem USB-ETH Adapter ergeben sich Geschwindigkeiten von bis zu 
3.5MB/s
beides sind die effektiven ankommenden Daten. Übertragen wurde eine mp3 
Datei mit der Grösse von 12MB. Dazu wurde wget verwendet um die mp3 per 
FTP zu übertragen.

Bei dieser Gelegenheit habe ich auch noch die CPU-Last angeschaut:

Bei der kleinen MP3 konnte ich bei der Übertragung per USB keinen 
nennenswerten Anstieg erkennen (Linux Kommando top).
Bei der Übertragung per SPI ist zusätzlich der Prozess spi2 mit 10% CPU 
Time vorhanden. mit der USB Übertragung wurde keine weitere Last 
gefunden, ausser die erhöhte Last von Wget, was sich aus dem höheren 
Durchsatz zurückführen lässt.


Meine Meingung
Willst du eine extrem einfache Lösung: nimm einen W5500 oder ENC28J60 
der über SPI angesteuert wird.
Willst du etwas mehr Performance und etwas weniger CPU-Last: nimm einen 
USB-Eth adapter. Dann hast du auch zwei SPI-Schnittstellen frei.


Projektstatus
Momentan bin ich am erstellen des Schemas. Es ist mit dem PoE doch eine 
recht umfangreiche Arbeit.
Bei weiteren Fragen: melde dich.

von Lukas L. (lueq)


Angehängte Dateien:

Lesenswert?

Nur so als keines Update:

Der Print ist bestückt, und alles funktioniert:
PoE
Parallelspeisung
Digitale Eingänge 6x
Digitale galvanisch getrennte Ausgänge 3x, 60V 1.2A
Analoge Eingänge 5x
Serielle Schnittstellen RS232 2x
Ethernet über USB
CAN

Hier noch ein Bild davon:

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.