INFO: Dieses Forum nutzt Cookies...
Cookies sind für den Betrieb des Forums unverzichtbar. Mit der Nutzung des Forums erklärst Du dich damit einverstanden, dass wir Cookies verwenden.

Es wird in jedem Fall ein Cookie gesetzt um diesen Hinweis nicht mehr zu erhalten. Desweiteren setzen wir Google Adsense und Google Analytics ein.


Antwort schreiben 

Publish-Subscriber



Wenn dein Problem oder deine Frage geklärt worden ist, markiere den Beitrag als "Lösung",
indem du auf den "Lösung" Button rechts unter dem entsprechenden Beitrag klickst. Vielen Dank!

07.05.2007, 20:36
Beitrag #1

eg Offline
LVF-SeniorMod


Beiträge: 3.868
Registriert seit: Nov 2005

2016
2003
kA

66111
Deutschland
Publish-Subscriber
Kennt jemand diese Programmiermethodik? Hat jemand Design Pattern dazu? Zumindest irgendwelche nutzliche Links oder PDFs.

Danke, Eugen

Webseite des Benutzers besuchen Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
08.05.2007, 07:47
Beitrag #2

IchSelbst Offline
LVF-Guru
*****


Beiträge: 3.697
Registriert seit: Feb 2005

11, 14, 15, 17, 18
-
DE

97437
Deutschland
Publish-Subscriber
' schrieb:Kennt jemand diese Programmiermethodik? Hat jemand Design Pattern dazu? Zumindest irgendwelche nutzliche Links oder PDFs.
Schon mal bei WikiPedia gekuckt?

Jeder, der zur wahren Erkenntnis hindurchdringen will, muss den Berg Schwierigkeit alleine erklimmen (Helen Keller).
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
08.05.2007, 08:30
Beitrag #3

eg Offline
LVF-SeniorMod


Beiträge: 3.868
Registriert seit: Nov 2005

2016
2003
kA

66111
Deutschland
Publish-Subscriber
' schrieb:Schon mal bei WikiPedia gekuckt?


Ja, habe ich. Da ist es allgemein erklärt, aber ich wollte den Bezug zu LabVIEW haben. Klar kann ich versuchen es selber zu Programmieren, aber vielleicht hat jemand einen Beispielcode oder Design Pattern dazu, dass ich es leichter nachvollziehen kann.

eg

Webseite des Benutzers besuchen Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
17.08.2007, 18:04
Beitrag #4

eg Offline
LVF-SeniorMod


Beiträge: 3.868
Registriert seit: Nov 2005

2016
2003
kA

66111
Deutschland
Publish-Subscriber
Hat denn keiner sich damit beschäftigt? Gibt es irgendwelche Links/Tutorials/Literatur dazu?

Danke, eg

Webseite des Benutzers besuchen Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
18.08.2007, 07:22
Beitrag #5

cb Offline
LVF-SeniorMod


Beiträge: 1.731
Registriert seit: Feb 2006

2018SP1
2001
EN

40xxx
Deutschland
Publish-Subscriber
' schrieb:Hat denn keiner sich damit beschäftigt? Gibt es irgendwelche Links/Tutorials/Literatur dazu?

Danke, eg

so direkt nicht. wenn ich Geräte verbinden muss, dann mach ich das immer über TCP als Peer to Peer

Die neuen Shared Variables verwenden das Publisher, Subscriber Modell, wenn du also sowas brauchst, dann kannst du auch gleich die nehmen.

Design-Pattern, hmmm. du brauchst einen "Bahnhof", die Publisher senden immer an den "Bahnhof" und der "Bahnhofsvorsteher" kenn alle Subscriber an den die Daten gehen sollen und schickt sie da hin.

Ich würd das entweder mit UDP (Broadcast) oder Queues aufbauen, Queues aber nur, wenn eine die Anzahl der Subscriber nicht zu groß wird ...

http://www.rotabench.com - rotierende Prüfstände nach dem Baukasten-Prinzip
Webseite des Benutzers besuchen Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
20.08.2007, 07:59
Beitrag #6

eg Offline
LVF-SeniorMod


Beiträge: 3.868
Registriert seit: Nov 2005

2016
2003
kA

66111
Deutschland
Publish-Subscriber
' schrieb:so direkt nicht. wenn ich Geräte verbinden muss, dann mach ich das immer über TCP als Peer to Peer

Die neuen Shared Variables verwenden das Publisher, Subscriber Modell, wenn du also sowas brauchst, dann kannst du auch gleich die nehmen.

Design-Pattern, hmmm. du brauchst einen "Bahnhof", die Publisher senden immer an den "Bahnhof" und der "Bahnhofsvorsteher" kenn alle Subscriber an den die Daten gehen sollen und schickt sie da hin.

Ich würd das entweder mit UDP (Broadcast) oder Queues aufbauen, Queues aber nur, wenn eine die Anzahl der Subscriber nicht zu groß wird ...


Was das überhaupt ist, weiss ich auch schon. Und ich will es mit Queues aufbauen. Es bleibt auch bei mehreren Subscriber sehr übersichtlich.

Meine konkrete Fragen wären:
wie setzt man das in LabVIEW praktisch um? Wie soll ich die Themen (Subscriber-Topics) am besten verwalten? Wahrscheinlich in einer Tabelle (also 2D Array). Wie kann ich am besten den Verteiler (Dispatcher) projektunabhängig gestalten? Reicht der Aufbau mit Queues oder muss/kann ich da auch User Events und Notifiers einmischen. Wie soll das allgemeine Interface am besten aussehen?

eg

Webseite des Benutzers besuchen Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
20.08.2007, 17:46
Beitrag #7

cb Offline
LVF-SeniorMod


Beiträge: 1.731
Registriert seit: Feb 2006

2018SP1
2001
EN

40xxx
Deutschland
Publish-Subscriber
' schrieb:Was das überhaupt ist, weiss ich auch schon. Und ich will es mit Queues aufbauen. Es bleibt auch bei mehreren Subscriber sehr übersichtlich.

Meine konkrete Fragen wären:
wie setzt man das in LabVIEW praktisch um? Wie soll ich die Themen (Subscriber-Topics) am besten verwalten? Wahrscheinlich in einer Tabelle (also 2D Array). Wie kann ich am besten den Verteiler (Dispatcher) projektunabhängig gestalten? Reicht der Aufbau mit Queues oder muss/kann ich da auch User Events und Notifiers einmischen. Wie soll das allgemeine Interface am besten aussehen?

eg

ich würde mit einem notifyer synchronisieren und dann in die einzelnen queues "weiterschieben" ...

http://www.rotabench.com - rotierende Prüfstände nach dem Baukasten-Prinzip
Webseite des Benutzers besuchen Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
20.08.2007, 17:57 (Dieser Beitrag wurde zuletzt bearbeitet: 20.08.2007 20:39 von eg.)
Beitrag #8

eg Offline
LVF-SeniorMod


Beiträge: 3.868
Registriert seit: Nov 2005

2016
2003
kA

66111
Deutschland
Publish-Subscriber
' schrieb:ich würde mit einem notifyer synchronisieren und dann in die einzelnen queues "weiterschieben" ...


Ich verstehe leider gar nicht was du damit meinst.

Aber weitergekommen bin ich. Hier meine Topictabelle (diese wird fast projektunabhängig und programmatisch ausgefüllt, NICHT HÄNDISCH) für den Anfang. Und den Dispatcher habe ich es wie folgt realisiert (ShowStatus erstmal zum Debuggen, später als eigene Task).

Gruß


Angehängte Datei(en) Thumbnail(s)
       

Webseite des Benutzers besuchen Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
21.08.2007, 08:18
Beitrag #9

eg Offline
LVF-SeniorMod


Beiträge: 3.868
Registriert seit: Nov 2005

2016
2003
kA

66111
Deutschland
Publish-Subscriber
Habe gerade dieses Buch

http://www.LabVIEWforum.de/index.php?showtopic=6863

in der Hand. Scheint genau das Richtige für mich zu sein.

Gruß, eg

Webseite des Benutzers besuchen Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
30
Antwort schreiben 


Gehe zu: