Hallo, unsere HW-Entwicklung macht (leider) keine SW. Darum liefern SW-Entwickler laufend mundgerechte SW-Schnippsel. Ich möchte nun einen "PC-HW-Browser" definieren, der (per Ethernet oder Seriell) die HW nach festgelegten "Objekten" fragt. Typen von Objekten wären z.B. - Schalter (z.B. ein µC-steuerbarer Transistor innerhalb der HW) - binäre Eingänge - int-Eingänge (z.B. ein AD-Kanal) - int-Ausgänge (z.B. eine Frequenz oder ein Duty-Cycle) - Funktionen (z.B. RAM-Selbsttest) Objekte haben einen Typ und Klartextnamen (und weitere Atribute, z.B. Wertegrenzen etc) mit dem sie (aufgelistet) dargestellt werden. Abhängig vom Typ sind dann verschiedene Aktionen möglich. Schalter können per Checkbox Ein- oder Ausgeschaltet werden, int-Eingänge können als Histogramm, Bargraph oder Oszillogramm im neuen Fenster angezeigt werden. . Ein paar Telegramme erlauben dem PC-Programm, die Objekteliste der HW zu erfragen und Objekte zu setzen, lesen oder starten. Es soll bewusst keine "Formatierung" erfolgen oder notwendig sein. Im µC gibt es einfach eine Liste der Objekte + einen kleinen Server-Code. Ja, das ist unhandlich - ggf. riesiges Fenster bei 1000 Schalter. - ggf. müssen 7 obskure Schalter richtig stehen nur um eine LED anzusteuern auf der andere Seite sind die "Anwender" mit Oszilloskop und Schaltplan "bewaffnet" und freuen sich, wenn sie überhaupt die Möglichkeit haben (ohne Debugger, der könnte das nämlich viel schneller und besser). ---------------------------------------------- Jetzt meine Frage: Hatte schon mal jemand so eine Idee und kennt so was mit "leichtgewichtiger" Schnittstelle. Also ohne CIP oder SCADA oder so und ohne gerätespezifischer Konfiguration der Visualisierung, ...
Du hast soeben den Feldbus neu erfunden. CANopen und Konsorten machen genau so etwas.
Moin, Wie waers mit SNMP? Da sollte so gut wie alles schon erfunden worden sein. Gruss WK
"Windows 95 hat zwei Mäuse gefunden" das war mein erster Erfolg mit automatischer Hardwareerkennung Plug&Play nach mindestens einer halben Stunde Suche. Ich kam mir vor wie ein Katzenhalter, dem das Tier stolz seinen Fang vor die Füße legt.
:
Bearbeitet durch User
1 | HW steht für: |
2 | |
3 | * Citroën Typ H, Modellbezeichnung |
4 | * polnisches Kfz-Kennzeichen für Grenzschutz |
5 | * Hauptwanderweg für Fernwanderwege im Bereich von Wandervereinen |
6 | * Hardware, Oberbegriff für die mechanische und elektronische Ausrüstung eines Systems ... |
7 | * Hauptwerk, siehe Werk (Orgel)#Hauptwerk |
8 | * Hello (Fluggesellschaft) (IATA-Code), ehemalige schweizerische Fluggesellschaft |
9 | * Bahnhof Wilhelmshaven (DS100-Code) |
10 | * Heranwachsender |
11 | * Hochwasser |
12 | * Hochwert oder Höhenwert |
13 | * Hot Wheels, Modellautos der Firma Mattel |
14 | * Wolframcarbid, Kurzbezeichnung nach ISO 513 |
"Welches Schweinderl hätten's denn gern?"
Das ist ziemlich genau CANopen, wie schon erwähnt Feldbusse sind was du suchst. Und du kannst dir den Physical Layer ziemlich frei aussuchen, auch wenn CAN im Namen steht. Mit Ethernet als Physical Layer gäbe es Ethercat fertig, basierend auf CANopen. Ansonsten ist Profinet Ethernet mit Objectverzeichnissen.
Vielen Dank für Eure Zeit und Hilfe Dr. Sommer schrieb: > CANopen und Konsorten machen genau so etwas. Dergute W. schrieb: > Wie waers mit SNMP? Stefanus F. schrieb: > das nach MQTT Protokoll mukel schrieb: > Das ist ziemlich genau CANopen, wie schon erwähnt Feldbusse sind was du > suchst. Ein Feldbus ist OK, auch wenn er ggf. zu "schwergewichtig" ist (deshalb kein CIP / SCADA). Vielen Dank für Eure Zeit und Hilfe Dr. Sommer schrieb: > CANopen und Konsorten machen genau so etwas. Dergute W. schrieb: > Wie waers mit SNMP? Stefanus F. schrieb: > das nach MQTT Protokoll mukel schrieb: > Das ist ziemlich genau CANopen, wie schon erwähnt Feldbusse sind was du > suchst. Ein Feldbus als Protokoll ist OK, wenn nicht zu "schwergewichtig" (deshalb wollte ich kein CIP / SCADA). Ich möchte die interne HW testen und manipulieren. Dazu ist es wichtig, Objekte relativ einfach zu erzeugen {"T5_on", TYP_SCHALTER, 0, 100ms, SwitchT5, ...}. Die Routinen dazu (Transistor-EIN/AUS = SwitchTt(int par), ADC-auslesen, ...) wären trivial, das Protokoll relativ egal, (solange per Protokollstack zubindbar). Wichtiger ist mir die PC-Applikation, die Objekte stumpf automatisch angeordnet visualisiert, ohne Konfiguration etc.
Axel S. schrieb: > "Welches Schweinderl hätten's denn gern?" Natürlich ergibt sich aus dem Kontext der Frage (nämlich sowohl der Tatsache, dass wir uns hier in einem µC- bzw. Elektronikforum befinden, als auch dem Text der Fragestellung des TO (denn überraschenderweise hat er noch mehr geschrieben als nur die reine Überschrift; unglaublich, aber wahr!)), dass die einzig richtige "Lösung" diese hier sein kann: > * Bahnhof Wilhelmshaven (DS100-Code) Preisfrage: Für was steht das "SW" in seinem Text? Mannomann; man kann sich aber auch anstellen und extra Mäuse erfinden, die man zu Elefanten machen kann, wenn man sonst schon nix zum Thema beitragen kann...
Die Übersicht bekommt man dadurch dass man der Software Beschreibungsdateien beilegt, die eine sinnvolle Ordnung der Elemente anbietet. Das Geht entweder über "type hints" für einzelne Komponenten, damit das sinnvoll dargestellt werden kann oder über Gerätekennung plus Elementkennung. Im Endeffekt macht man da mehr das Äquivalent von Boundary Scan als von Feldbus, wobei dort ja exakte Bauteildefinitionen vorliegen. Was du beschreibst geht stark in eine Richtung wie SNMP, selbst wenn man das nicht implementieren mag, als "so haben es andere gemacht"-Spickzettel nicht unbedingt verkehrt. Wenn man ein solches System mit einer Integration in zB Python vereint erlaubt es auch sehr schnell komplexere Testcases abzubilden.
Naja, falls also jemand dazu ein Projekt kennt, wo eine (Windows-)-PC Software als Viewer existiert, die nicht konfiguriert werden muss (sondern Objekte selbstständig irgendwie anordnet), freue ich mich jederzeit (auch in Monaten) über eine Rückmeldung. SCADA, CIP, etc. haben wir im Haus.
Schau dir mal firmata oder netpp an. Das sind recht brauchbare Abstraktionsschichten für diverse registerprotokolle. Wir haben damit über LabVIEW einige Testsysteme angesteuert. Man kann damit auch CAN-Motoren ansteuern, muss das aber natürlich selber codieren.
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.