Zum Inhalt

F_MOD

F_MOD


F_MOD

Einführung

Der F_MOD ist ein arithmetischer Funktionsbaustein zur Berechnung des Divisionsrests, entwickelt unter EPL-2.0 Lizenz. Version 1.0 ermöglicht die Modulo-Operation für ganzzahlige Datentypen gemäß IEC 61131-3 Standard.

Schnittstellenstruktur

Ereignis-Eingänge

  • REQ: Berechnungsanforderung (mit Dividend und Divisor)

Ereignis-Ausgänge

  • CNF: Berechnungsbestätigung (mit Restwert)

Daten-Eingänge

  • IN1 (ANY_INT): Dividend (ganzzahlig)
  • IN2 (ANY_INT): Divisor (ganzzahlig)

Daten-Ausgänge

  • OUT (ANY_NUM): Rest der Division (IN1 mod IN2)

Funktionsweise

  1. Aktivierung:
  2. Durch REQ-Ereignis ausgelöst
  3. Verarbeitet zwei ganzzahlige Werte

  4. Modulo-Operation:

  5. Berechnet IN1 modulo IN2
  6. Formel: OUT = IN1 - (IN1 / IN2) * IN2
  7. Unterstützte Typen: INT, DINT, UINT, UDINT

  8. Ergebnisausgabe:

  9. CNF-Ereignis mit Restwert
  10. Vorzeichen entspricht Dividend (IN1)

Technische Spezifikationen

Ganzzahlige Modulo-OperationUnterstützung für vorzeichenbehaftete und -lose TypenIEC 61131-3 konformDeterministische Ausführung

Anwendungsbeispiele

  • Zyklische Zählung: Ringpuffer-Indizes
  • Zeitberechnungen: Wochentagsbestimmung
  • Nachrichtenverarbeitung: Prüfsummenberechnung
  • Positionierung: Schrittmotorsteuerung

Fehlerbehandlung

  • Division durch Null:
  • OUT = IN1 (Originalwert bleibt erhalten)
  • Kein Abbruch der Ausführung

  • Typinkompatibilität:

  • Automatische Typanpassung
  • Keine Exception-Generierung

Besondere Hinweise

  • Vorzeichenbehandlung:
  • Ergebnis hat Vorzeichen des Dividenden
  • Beispiel: (-7 mod 3) = -1

  • Performance:

  • Optimierte Berechnung für alle ganzzahligen Typen
  • Ein Zyklus Latenzzeit

⚖️ Vergleich mit ähnlichen Bausteinen

Merkmal F_MOD F_DIV F_REM
Operation Modulo Division Remainder
Eingangstypen ANY_INT ANY_NUM ANY_NUM
Ausgangstyp ANY_NUM ANY_NUM ANY_NUM

Fazit

Der F_MOD-Baustein bietet essentielle Funktionen für zyklische Berechnungen:

  • Effiziente Restwertberechnung
  • Flexible Typunterstützung
  • Zuverlässige Fehlerbehandlung

Unverzichtbar für Steuerungsanwendungen mit periodischen Mustern oder Indexberechnungen. Die standardkonforme Implementierung ermöglicht den Einsatz in Echtzeitsystemen mit deterministischen Anforderungen.