Tastimpulse per Feldbus

Beck

Level-1
Beiträge
64
Reaktionspunkte
0
Zuviel Werbung?
-> Hier kostenlos registrieren
Ich glaube, einen Schwachpunkt bei Modbus/TCP entdeckt zu haben:
Tastimpulse (wie von normalen Lichttastern, oder Zählimpulse), also Signale, die aus einer steigenden und dann innerhalb von 20-1000ms gefolgt einer fallenden Flanke bestehen, lassen sich über Modbus/TCP nicht zuverlässig übertragen. Modbus ist zyklusgesteuert und sendet in einem frei wählbarem Takt den Registerstand der I/Os über den Bus. Fällt ein Tastimpuls zwischen zwei Übertragungen, bekommt der Empfänger (die Steuerung) nichts davon mit. In jedem Fall bestimmt die Zyklusdauer die Minimallänge des erkannten Pulses.
Sehe ich das richtig?
Mit welchen Taktzyklen in der normalen Gebäudeautomation arbeitet Ihr?

Welches Bussystem sollte ich stattdessen verwenden, damit Taktimpulse sauber übertragen werden? Wenn ich es richtig verstanden habe, gibt es bei KNX ein Tastimpuls-Datagramm. Korrekt?
Aber es muss ja nicht immer KNX sein.... Welches Bussystem, das von WAGO (PFC100/200) unterstützt wird, ist zu empfehlen?

Der Hinweis auf http://www.feldbusse.de/Vergleich/loesungen_ethernet.shtml ist zwar schon ganz gut, beantwortet aber meine Frage nicht direkt.

Danke,

Beck
 
von den 112 Lesern meiner Anfrage konnte oder wollte wohl bisher niemand antworten.

Vielleicht lässt sich ja folgende Frage leichter beantworten:
Welche Busprotokolle sind eventbasiert und nicht an einen zeitlichen Takt gebunden?
Von einem solchen Protokoll würde ich erwarten, dass es das Ereignis "steigende Flanke auf Input XY" sofort auf den Bus setzt, gefolgt von einem "fallende Flanke auf Input XY", sobald diese auftritt.
Modbus/TCP erfüllt dies nach meinem Verständnis nicht?
Ist ProfiNet da die bessere und passende Wahl?

Danke,

Beck
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Ich vermute mal, in der Gebäudeautomation ist Modbus/TCP wohl nicht so verbreitet?
Vermutlich lesen die Gebäudeautomations-Profis auch nicht unbedingt am Wochenende Samstag zu Sonntag hier im Forum mit um ja keine um-Antwort-lechzende-Frage zu verpassen ;)

Als Feldbus in Industrieanlagen werden Protokolle mit zyklischer Übertragung verwendet. Will man Ereignisse übertragen, die kürzer oder schneller als die Buszykluszeit sind, dann muß man sich selber was einfallen lassen.

Harald
 
Moin
Bei KNX werden die Tastimpulse Event gesteuert über tragen. Taste drücken -> Telegramm wird verschickt.
Bei den Feldbusen hängt es in der Regel vom Master ab. Sprich zykluszeit für EVA es gibt einige Systeme die Superschnelle Eingänge als Interrupt verarbeiten
Die neusten Systeme haben aber erfassungszeiten, so schnell kannst du nicht drücken ( Tasten). In der Gebäudeautomation braucht es keine super schnellen schaltvorgänge.


Sent from my iPhone using Tapatalk
 
Zuletzt bearbeitet:
Mit welchen Taktzyklen in der normalen Gebäudeautomation arbeitet Ihr?

Der Schwachpunkt liegt an Deinem Konzept und nicht
am Modbus.

Womöglich prellt Dein Taster noch, dann hast Du
Deine Flanken gleich mehrfach.

Einweder Du nimmst eine Steuerleitung und schließt
den Taster direkt an oder Du schaust nach einem
zum Bussystem passenden Taster.
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Die neusten Systeme haben aber erfassungszeiten, so schnell kannst du nicht drücken ( Tasten). In der Gebäudeautomation braucht es keine super schnellen schaltvorgänge.

Ich möchte die Taster an einen (WAGO-)Feldbuskoppler hängen und das Tastevent auf einem Controller am anderen Busende verarbeiten. Natürlich ist der Feldbuskoppler schneller als jedes Tasten.ls

Das Entprellen eines Tasters (siehe anderer Beitrag) sollte bei einer WAGO ja über entsprechende Input-Klemmen mit 3.0ms-Filter gelöst sein.

Dennoch stellt sich mir (als Laie) die Frage nach praktikablen Zykluszeiten:
Einerseits sollte der Buszyklus größer/länger sein als der SPS-Zyklus. Mehrfache Datenübertragung während eines Programmdurchlaufs macht aus meiner Sicht keinen Sinn (oder?).
Andererseits muss der Buszyklus kürzer sein, als der kürzest zu erwartende Tastimpuls, da sonst Tastimpuls zwischen zwei Buszyklen verloren gehen. Damit sind wir doch bei 100ms oder schneller oder nicht?
 
Wenn wir davon ausgehen, das Modbus ausschließlich zyklisch den in diesem Moment aktuellen Speicherzustand sendet, so kannst Du das wie die Abtastrate bei Messungen betrachten (Shannon-Theorem) - bei einem Übertragungsintervall von 100ms ist das kleinste sicher übertragbare Signal 200ms.

Man könnte den Eingang über eine Impuls-Funktion verlängern.
Wenn das zu unsicher ist, könnte man auch den Tastimpuls speichern und von der zweiten Steuerung zurücksetzen lassen.

Wird nur die positive oder auch die negative Flanke des Tasters genutzt?
 
...so kannst Du das wie die Abtastrate bei Messungen betrachten (Shannon-Theorem) - bei einem Übertragungsintervall von 100ms ist das kleinste sicher übertragbare Signal 200ms....
Auch wenn das hier im Forum immer wieder behauptet wird, ist es falsch. Bei 100ms Übertragungsintervall wird ein Impuls von z. B. 101ms sicher erkannt. Das Shannon Theorem gilt für die Bandbreite bei der Signalübertragung, das ist was anderes.
Gruß
Erich
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo,
hier mal eine kleine Milchmädchen Rechnung:
1. Allgemein Ethernet 10 mbit/s = 10 * 10^6 bit /s = 10^7 bit/s
2. Bit in 1 ms => 10^7 bit/s / (10^3 ms/s )= 10^4 bit/ms
3. Annahme: Prozessabbild ist 1020 byte groß = 8160 bit = 8,16 * 10^3 bit
4. Master Anfrage + Protokoll etc ( bin ich gerade nicht drin): runden wir das mal auf 10^4 bit auf.
5. Das heißt also, wenn die Ethernet Leitung nur für den einen Teilnehmer ist, kann dieser ein gesamtes Prozessabbild 1000 mal die Sekunde übertragen, da sollte eine Flanke erkannt werden können .

Bei mir ist die Zykluszeit, so glaube ich, auf 10 ms eingestellt (= Zykluszeit vom Main Task).
Alle "Click" Befehle der Taster werden erkannt.

Ps. ich hab einen Rasp1B+ mit einem Wago 750-352 im Einsatz.
Hoffe, das hilft ein bisschen weiter.
 
Also prellen kann ein herkömmlicher Taster schonmal deutlich länger als 3ms. Über Flanken unterhalb des Buszyklus würde ich mir bei manuell betätigten Tastern aber erstmal keine Gedanken machen (im Rahmen einer Hausautomation/EFH).
Eventbasierte Kommunikation ist so eine Sache, weil der Ausfall eines Geräts ja auch ein Event ist, bei dem kein Telegarmm verschickt wird :ROFLMAO:. Die zyklische Master-Slave Kommunikation hat den Vorteil, das eben zyklisch ein kompletter Status aller Slaves vorliegt. Für Zählimpulse gibt es dann intelligente Slave-Baugruppen mit Signalauswertung (Zähler-BG).
 
Zurück
Oben