Guten Tag, ich bin Student für Elektrotechnik und Informationstechnik mit der Vertiefung Automatisierung und Informationstechnik und hätte eine Bachelorarbeit in Aussicht, bei der ich eine Kommunikation über Profinet zwischen einem µC und einer S7 SPS herstellen soll. Mein Chef würde ganz gerne den ESP32 mit dem Arduino Framework nehmen. Hierfür gibt es einen Treiber der einen UART - Ethernet Controller dazu befähigt mit der S7 zu kommunizieren. Hier bei gibt es aber Geschwindigkeitsprobleme. Als alternative habe ich vorgeschlagen einen µC von STM (STM32F7508-DK) zu nehmen, der bereits einen Ethnernet Treiber für das Ethnernet Modul schon hat. Meine Frage ist nun: Was ist besser? Eine vorgefertigte Library zu verwenden, oder eine Lib selber schreiben? Würde ich das Dev Board von STM nehmen, hätte ich schon alle Komponenten (ein großes Display und Ethernet-Modul)? Würde ich den ESP32 nehmen hätte ich aber einen schnelleren µC und einen Kern mehr aber weitaus schlechterer Doku und ohne integriertem Ethernetmodul. Meine persöhnlicher Favorit wäre Variante 2 weil es sich für mich professioneller Anfühlt als sich Quellcode aus dem Internet zusammenkopieren. MFG
Geht denn Profinet ueber Standardethernet? Typischerweise hat doch ein Profinet-Slave ('Device') zwei Ports mit integriertem Switch. Braucht ihr das nicht?
Maxe schrieb: > Typischerweise hat doch ein > Profinet-Slave ('Device') zwei Ports mit integriertem Switch Unsinn: Siemens S7-1200 hat auch nur einen Port. Und ja: Es geht über normales Ethernet.
Unterschätze nicht den Aufwand, ein Profinet Stack selber zu schreiben. Ich denke, ist für dich unmöglich. Alternative 1: Zusätzlich zur MCU einen fertigen Profinet Chip (z.B. HMS Anybus IC) verwenden Alternative 2: Einen fertigen Proinet Stack für STM F4 von PORT kaufen (ca. € 30.000)
blusser schrieb: > bei der ich eine Kommunikation über Profinet zwischen einem µC und einer > S7 SPS herstellen soll Mach das. ProfiNet ist zwar ziemlich mies designter Scheiss, mit dämlichen Konfigurationsdateien und einer Hülle und Fülle von Möglichkeiten die zu unerklärlichen Fehlern führen, aber: blusser schrieb: > Eine vorgefertigte Library zu verwenden Macht weniger Arbeit, aber wenn die fehlerhaft oder unflexibel ist oder schlechte Performance bringt ist man ihr auf Gedeih und Verderb ausgeliefert > oder eine Lib selber schreiben? Bringt mehr Verständnis, mehr Flexibilität, aber man darf erst mal selber alle Fehler machen, die Andere schon hinter sich haben. Ob das Ergebnis also BESSER wird loegt dann ganz an dir..Teurer wird es auf jeden Fall und Dumm bleiben wie bei fertigen Libs wirst du auf die Art nicht. blusser schrieb: > Hier bei gibt es aber Geschwindigkeitsprobleme. ProfiBus ist nicht besonders anfordernd, auch ein ESP kann da problemlos mithalten. WENN die Software ordentlich geschrieben wurde. Performanceprobleme mit fertigen Libs deuten also eher auf schlechte Implementation der Lib als auf unzureichende Hardware hin. Wenn man mit der miesen Software leben muss weil man nicht in der Lage ist sie selber besser zu schreiben, muss man also in Hardware nachlegen. Gute Software kostet EIN MAL Entwicklungskosten, performantere Hardware kostet bei jeder verkauften Stückzahl. Es ist also ausrechenbar, was sich mehr lohnt.
>Alternative 1: >Zusätzlich zur MCU einen fertigen Profinet Chip (z.B. HMS Anybus IC) >verwenden >Alternative 2: >Einen fertigen Proinet Stack für STM F4 von PORT kaufen (ca. € 30.000) Ich denke das ist beides keine Option weil der Übersetzer kostet auch 600€? Am besten wird das Problem halt so günstig und so einfach wie möglich gelöst (siehe Arduino IDE und darf muss so wenig wie möglich kosten)... Wo würde man den Informationen dazu finden, wie man sich so nen Stack selber schreibt? Gibt's da irgend einen Standard oder schaffe ich das nur durch trial and error? Der ESP32 hat auch ein integriertes Ethernetmodul und TWAI, aber ich würde halt immer dazu tendieren die Peripherie einzusetzen (genau dafür hat man sie ja) anstatt irgendwelche Zustatzmodule für 500€ zu kaufen, die dann das System langsamer machen, nach jahren nicht mehr erhältlich sind. Ich habe aber auch sehr wenig praktische Erfahrung (Student).
blusser schrieb: [...] Schau Dir die TI Sitara Prozessoren an. Die haben neben dem ARM-Kern sogenannte PRUs (Programmable Realtime Unit), auf denen man auch Kommunikationsprotokolle wie Ethercat oder Profinet laufen lassen kann. https://www.ti.com/lit/wp/spry252d/spry252d.pdf https://www.ti.com/lit/ug/tiduak0/tiduak0.pdf Das wäre eine geeignete Hardwareplattform. fchk
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.