1% Regel: Unterschied zwischen den Versionen
Zeile 39: | Zeile 39: | ||
2013.10.03 13:41:18 2: HMLAN_Parse: HMLAN1 new condition ERROR-Overload | 2013.10.03 13:41:18 2: HMLAN_Parse: HMLAN1 new condition ERROR-Overload | ||
Ab diesem Moment werden eben auch keine anderen Befehle mehr an weitere HM-Geräte geschickt, da das Funkkontigent aufgebraucht ist. Erst nach einer Stunde kann erneut gesendet werden. Als '''Notbehelf''' kann die | Ab diesem Moment werden eben auch keine anderen Befehle mehr an weitere HM-Geräte geschickt, da das Funkkontigent aufgebraucht ist. Erst nach einer Stunde kann erneut gesendet werden. Als '''Notbehelf''' kann die Funkschnittstelle resetted oder ([[HMLAN Konfigurator]]) kurz stromlos gemacht werden. Dann wird der Zähler wieder auf Null gesetzt. | ||
Alternativ können so viele HM-Geräte wie möglich auf ''autoReadReg 0_off'' gesetzt werden. | Alternativ können so viele HM-Geräte wie möglich auf ''autoReadReg 0_off'' gesetzt werden. |
Version vom 6. Mai 2014, 13:27 Uhr
1% Relative Frequenzbelegungsdauer
Die Bundesnetzagentur schreibt für die Nutzung verschiedener ansonsten frei nutzbarer Frequenzbereiche sogenannte maximale relative Frequenzbelegungsdauern fest. Sinn dieser Maßnahme ist es, die Nutzung der Frequenzbänder durch mehrere Nutzer auch bei Reichweitenüberlagerung zu ermöglichen. Für 868,35 MHz, also der Frequenz, in dem das HM, FS20 und FHT System arbeitet, sind ≤ 1% vorgeschrieben. Dies ergibt 36 Sekunden Sendedauer je Stunde. Besonders bei der eher langsamen Datenübertragung der FHT und FS20 Protokolle kann es zu Engpässen kommen.
Details
Um einen Kommunikationskanal durch mehrere Teilnehmer effektiv zu nutzen, bieten sich mehrere Verfahren an. Im Wesentlichen sind dies:
- Token Verfahren. Senden darf nur, wer gerade eine von Teilnehmer zu Teilnehmer herumgereichtes "Pfand" (=Token) besitzt. Tokenverfahren sind aufwändig zu implementieren und erfordern bidirektionale Kommunikation.
- LBT Verfahren. Senden darf ein Teilnehmer nur, wenn er sich vorher durch "lauschen" vergewissert hat, dass sonst niemand sendet, der Kanal also frei ist. (LBT = Listen before talk). Es ist theoretisch jedoch denkbar, dass zwei Sender zugleich lauschen, den Kanal frei vorfinden und zugleich anfangen zu senden. LBT Verfahren sind in frei nutzbaren Kanälen mit vielen Teilnehmern schwierig zu implementieren. (Die Kommunikation zwischen CUL/CUNO und RFR CUL arbeitet aber z.b. nach diesem Verfahren.)
- Zeitbeschränkung. Jeder Teilnehmer darf nur sehr kurz senden. Die Sendedauer ist so zu wählen, dass jeder Teilnehmer eine signifikante Chance hat, zufällig auf einen freien Kanal zu treffen. Dies ist beispielsweise gegeben, wenn der Kanal zu 90 oder mehr Prozent frei ist.
Bei LBT und Zeitbeschränkung sind außerdem Verfahren zu implementieren, die greifen wenn der Kanal nicht frei war, die Aussendung also durch Überlagerung einer anderen Sendung gestört wurde. In der Regel wird man den erfolglosen Sendeversuch nach einer zufälligen Zeit wiederholen.
Die Verfahren sind in der obigen Reihenfolge weniger aufwändig zu implementieren, d.h. Zeitbeschränkung erfordert den geringsten Aufwand.
Die Bundesnetzagentur schreibt vor, dass im Frequenzbereich von 868,000 bis 868,600 MHz 1% "Duty cycle" ODER die Nutzung von LBT-Verfahren implementiert sind, wobei sie definiert:
- Die relative Frequenzbelegungsdauer (duty cycle) in % kennzeichnet die Dauer der Aussendungen eines Senders auf einer Frequenz bezogen auf 1 Stunde. Die Gesamtsendezeit kann auf mehrere Intervalle aufgeteilt werden.
und
- LBT: Verfahren, mit dem die Kanalbelegungssituation vor Beginn und während der Aussendung geprüft wird. Aussendung erfolgt nur bei freiem Kanal.
Zumindest wegen des geringen Implementierungsaufwandes hat ELV als Entwickler der FS20 / FHT / HomeMatic Funkkomponenten kein LBT verwendet, sondern beachtet vielmehr die maximale Frequenzbelegungsdauer.
Bedeutung für das FS20 / FHT Funksystem
Aus der relativen Frequenzbelegungsdauer von 1% je Stunde, also nur 36 Sekunden je Stunde, ergeben sich für das FS20 / FHT System deutliche Einschränkungen. Insbesondere ist die Maximal nutzbare Geräte stark eingeschränkt. Wegen der umfangreichen bidirektionalen Kommunikation zwischen Raumreglern und der Zentrale mit einer im Vergleich zu HomeMatic eher geringen Bandbreite lassen sich beispielsweise sinnvoll nur etwa 10-12 Räume mit FHT über Funk steuern.
Problematisch kann die 1% Regel auch in Debuggingphasen sein, wenn also neue FHEM Konfigurationen mehrfach in kurzer Folge ausprobiert werden.
Praktisch umgesetzt ist das 1% Sendelimit z.b. im LOVF (= Limit-overflow). Eine FS20 Übertragung benötigt mindestens ca. 220ms also ca. 22 Sendeeinheiten. Ist die maximale Frequenzbelegungsdauer erreicht, dauert es also mindestens 22 Sekunden, bis erstmals wieder gesendet werden kann.
Daraus ergibt sich, dass maximal 163 FS20 Kommandos pro Stunde gesendet werden können. Wird dieser Wert überschritten, meldet FHEM CUL TRANSMIT LIMIT EXCEEDED. Eine weitere Schaltung von FS20 Komponenten ist dann nicht mehr möglich. Dies ist insbesondere auch beim Einsatz von Bewegungsmeldern von Bedeutung, wenn deren Sendeabstand sehr kurz eingestellt ist.
Bedeutung für das HomeMatic Funksystem
HomeMatic verwendet eine höhere Datenübertragungsrate, sodass die Kommunikation wesentlich schneller abläuft und die Grenzen wesentlich weiter sind. Dennoch kann es auch bei HomeMatic vorkommen, dass die Grenzen erreicht werden.
Insbesondere ist bei FHEM Versionen ab Oktober 2013 das Attribut autoReadReg auf "4_reqStatus" gesetzt. Damit wird für jedes HM-Device mit diesem so gesetzten Attribut beim Fhem-Start ein getConfig durchgeführt, was viel Funkverkehr erfordert.
Je nach Anzahl der Geräte kann dazu führen, dass insgesamt zu viel Funklast erzeugt wird, im Logfile erscheint dann eine Meldung wie:
2013.10.03 13:41:18 2: HMLAN_Parse: HMLAN1 new condition ERROR-Overload
Ab diesem Moment werden eben auch keine anderen Befehle mehr an weitere HM-Geräte geschickt, da das Funkkontigent aufgebraucht ist. Erst nach einer Stunde kann erneut gesendet werden. Als Notbehelf kann die Funkschnittstelle resetted oder (HMLAN Konfigurator) kurz stromlos gemacht werden. Dann wird der Zähler wieder auf Null gesetzt.
Alternativ können so viele HM-Geräte wie möglich auf autoReadReg 0_off gesetzt werden.
Links
Bundesnetzagentur [1] Vfg. 20 / 2006 [2] Vfg 30 / 2006, geändert mit Vfg. 39/2009