Forum: Mikrocontroller und Digitale Elektronik PocketBeagle oder Beaglebone Black


Announcement: there is an English version of this forum on EmbDev.net. Posts you create there will be displayed on Mikrocontroller.net and EmbDev.net.
von Lukas (Gast)


Bewertung
0 lesenswert
nicht 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)


Bewertung
0 lesenswert
nicht 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)


Bewertung
0 lesenswert
nicht 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)


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

Sind sie nicht.

von Lukas L. (lueq)


Bewertung
0 lesenswert
nicht 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)


Bewertung
-1 lesenswert
nicht 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)


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

Klaus

von Lukas L. (lueq)


Bewertung
0 lesenswert
nicht 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:

Bewertung
1 lesenswert
nicht 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:

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.