MicroLogix 1400-Online-Bearbeitungsfehler mit MUL-Anweisung
Beheben Sie einen MUL-Fehler bei der Online-Bearbeitung einer MicroLogix 1400, indem Sie Ursachen in den Bereichen Operandentyp, Datendatei, Speicher, Software und Kommunikation voneinander trennen...
Ein MicroLogix 1400 kann ein Projekt offline überprüfen und dennoch eine MUL-Zeile bei einer Online-Bearbeitung ablehnen. Es ist verlockend, EtherNet/IP dafür verantwortlich zu machen oder anzunehmen, dass immer eine Dezimalkonstante die Ursache ist. Die Fehlermeldung allein beweist keine dieser Schlussfolgerungen. Die Laufzeitbearbeitung unterliegt Einschränkungen, die offline nicht gelten, und die Rechenanweisung muss außerdem kompatible Quell- und Zieldatentypen innerhalb der vorhandenen Datendateien des Controllers auflösen können.
Die praktische Lösung ist eine kontrollierte Diagnose. Sichern Sie das aktuelle Programm, notieren Sie die genauen Controller- und Softwareversionen, ermitteln Sie, was sich in der Zeile geändert hat, und stellen Sie fest, ob der Fehler zum Bearbeitungsmechanismus oder zur Mathematik selbst gehört. So verhindern Sie, dass eine Fehlersuche im laufenden Betrieb zu einer Folge voneinander unabhängiger Änderungen wird, die sich nur schwer abbrechen oder überprüfen lassen.
Ändern Sie jeweils nur einen Operanden und halten Sie die ursprüngliche Zeile zum Vergleich verfügbar, bis die Änderung getestet und assembliert wurde.
Beginnen Sie mit den Grenzen der Online-Bearbeitung des Controllers
Das Benutzerhandbuch des MicroLogix 1400 von Rockwell Automation unterscheidet zwischen Offline- und Online-Bearbeitung. Online können keine Programmdateien erstellt oder gelöscht, Datentabellendateien in ihrer Größe geändert, die I/O-Konfiguration geändert oder mehrere Schutzeinstellungen verändert werden. Das Handbuch weist außerdem darauf hin, dass das Akzeptieren, Assemblieren oder Abbrechen von Änderungen die Scanzeit und die Latenz von Unterbrechungen verlängern kann und dass der verfügbare Programmspeicher begrenzt, wie viel geänderte Logik vor dem Assemblieren gleichzeitig bestehen kann.
Diese Einschränkungen wirken sich direkt auf eine geplante Reparatur mit Gleitkommazahlen aus. Wenn das Programm bereits eine ausreichend große F-Datei enthält, kann ein Techniker auf ein vorhandenes Element verweisen. Wenn die Float-Datei nicht vorhanden ist oder mehr Elemente benötigt, muss sie offline geändert und anschließend heruntergeladen werden. Der Versuch, ein Operandenproblem durch das Erfinden von F8:7 während einer Laufzeitbearbeitung zu lösen, schlägt aus einem anderen Grund fehl, selbst wenn das arithmetische Konzept ansonsten korrekt ist.
Beweisen Sie, ob der Fehler der Zeile oder der Verbindung folgt
Bevor Sie die Mathematik ändern, akzeptieren Sie in einem Testbereich eine harmlose, zulässige Änderung oder bestätigen Sie, dass eine andere geplante Änderung im Rahmen desselben Wartungsverfahrens akzeptiert werden kann. Wenn jede Änderung fehlschlägt, prüfen Sie die Kompatibilität der Programmiersoftware, den Controller-Modus, den Programmspeicher, die Bearbeitungsberechtigung und die Stabilität der Kommunikation. Eine Netzwerkunterbrechung kann eine Bearbeitungssitzung beenden, aber eine stabile Online-Verbindung garantiert nicht, dass die angeforderte Zeile zulässig ist.
Erfassen Sie den vollständigen Fehlertext sowie den Zustand der Einfüge- und Ersetzungsbereiche. Brechen Sie fehlgeschlagene Änderungen ordnungsgemäß ab, bevor Sie einen weiteren Versuch starten. Stellen Sie sicher, dass mindestens ein bekanntermaßen fehlerfreier Download die im Benutzerhandbuch beschriebene Grundlage für die Online-Bearbeitung geschaffen hat, und überprüfen Sie, ob das an der Arbeitsstation geöffnete Projekt mit dem Abbild des Controllers übereinstimmt.
Behandeln Sie Bruchteilsfaktoren bewusst
Ein Multiplikator wie 0.7 stellt einen Bruchwert dar. Wenn dieser Faktor in einem vorhandenen Float-Element gespeichert wird, ist sein Typ eindeutig und das Wartungspersonal kann den Faktor über eine kontrollierte Datenadresse dokumentieren oder anpassen. Die Änderung des Quelloperanden ist jedoch nur die Hälfte der technischen Entscheidung. Das Ziel bestimmt, ob das Bruchergebnis erhalten bleibt oder in eine Ganzzahldarstellung umgewandelt wird.
Wenn das Ziel eine Ganzzahl in einer N-Datei ist, testen Sie das Konvertierungsverhalten des Controllers über den gesamten Betriebsbereich. Leiten Sie das Ergebnis nicht aus einem einzigen Beispiel wie zehn multipliziert mit 0.7 ab. Prüfen Sie positive, negative, nahezu null, maximale und minimale Werte und sehen Sie sich die in der Anwendung verwendete Behandlung des Mathematikstatus an. Wenn nachgelagerte Logik eine Auflösung mit Bruchteilen benötigt, verwenden Sie ein geeignetes Float-Ziel und konvertieren Sie erst an der Stelle, an der tatsächlich eine Ganzzahl erforderlich ist.
Eine vorhandene Float-Adresse kann den Dezimalfaktor eindeutig machen, doch Zieltyp und Wertebereich müssen weiterhin vollständig getestet werden.
Verwenden Sie eine sichere Korrekturabfolge
Laden Sie zunächst das laufende Programm hoch oder sichern Sie es anderweitig und notieren Sie Katalognummer, Serie, Firmwareversion, RSLogix-500-Version, freien Speicher und Betriebsmodus des Controllers. Ermitteln Sie anschließend ein vorhandenes Float-Element, das ungenutzt, dokumentiert und verfügbar ist, ohne dass die Dateigröße geändert werden muss. Initialisieren Sie es über das genehmigte Verfahren am Standort mit dem erforderlichen technischen Faktor und bestätigen Sie den Wert online.
Ändern Sie nur den MUL-Quelloperanden, der den Faktor darstellt. Lassen Sie das ursprüngliche Ziel für den ersten Kompilierungstest unverändert, sofern die Genauigkeitsanforderungen nicht bereits ein Float-Ziel erfordern. Akzeptieren und testen Sie die Änderung, während sich die Maschine in einem sicheren Zustand befindet. Vergleichen Sie das Ergebnis über mehrere Eingangswerte mit einer unabhängigen Berechnung, bevor Sie die Änderung assemblieren. Wenn ein Float-Ziel eingeführt wird, verfolgen Sie jeden Verbraucher des alten Ganzzahlwerts, bevor Sie Adressen ändern.
Wenn kein geeignetes Float-Element vorhanden ist, beenden Sie die Laufzeitbearbeitung. Fügen Sie die Datendatei offline hinzu oder vergrößern Sie sie, überprüfen Sie das vollständige Projekt, planen Sie den Download und legen Sie einen Rücksetzplan fest. Diese Unannehmlichkeit ist geringer, als eine ungeprüfte arithmetische Behelfslösung in eine laufende Maschine zu erzwingen.
Ziehen Sie eine Ganzzahlverhältnisskalierung nur bei passendem Wertebereich in Betracht
Manche Anwendungen können 0.7 als Verhältnis von sieben zu zehn darstellen. Die Multiplikation mit dem Zähler und die Division durch den Nenner kann eine Float-Abhängigkeit vermeiden, doch Reihenfolge der Operationen, Zwischenwertebereich, Vorzeichen und Rundung werden dadurch zu Konstruktionsentscheidungen. Eine zuerst ausgeführte Multiplikation erhält mehr Auflösung, kann jedoch zu einem Überlauf der ganzzahligen Zwischenvariable führen. Eine zuerst ausgeführte Division verringert das Überlaufrisiko, verwirft Informationen jedoch früher.
Verwenden Sie einen Zwischen-Datentyp mit geeignetem Wertebereich, der vom Controller unterstützt wird, und bestätigen Sie das genaue Verhalten der Anweisungen im Referenzhandbuch des MicroLogix. Verhältnisarithmetik ist nicht automatisch sicherer als Gleitkommaarithmetik; sie ist nur dann sinnvoll, wenn die erforderliche Auflösung und der vollständige Messbereich dokumentiert und getestet sind.
Validieren Sie die Maschine, nicht nur den Compiler
Eine akzeptierte Zeile beweist die Syntax und die Zulässigkeit der Änderung, nicht die Prozesskorrektheit. Trendaufzeichnungen sollten die Quelle, den Faktor, den Zwischenwert, das Ziel, die relevanten Statusbits und die von der Berechnung beeinflusste physikalische Größe umfassen. Testen Sie Grenzwerte und den Ausfall der Datenquelle. Bestätigen Sie, dass Alarme, Verriegelungen, HMI-Skalierung, Historian-Werte sowie PID- oder Vergleichslogik das Ergebnis wie vorgesehen interpretieren.
Beobachten Sie die Scanzeit während des Tests und Assemblierens. Vermeiden Sie eine Kette von Änderungen, während sich der Prozess schnell verändert, und verwenden Sie Forces nicht als Ersatz für einen kontrollierten Testplan. Wenn die Kommunikation instabil bleibt, stellen Sie einen bekannten Zustand wieder her und beheben Sie das Netzwerkproblem, bevor Sie Online-Änderungen fortsetzen.
Eine passende Controller-Referenz ist im MicroLogix-1400-Produktangebot verfügbar, während verwandte Plattformen unter SPS- und PAC-Systeme zusammengefasst sind. Stimmen Sie Katalognummer, Stromversorgungskonfiguration, I/O, Firmware und Projektanforderungen genau ab, bevor Sie Ersatzhardware einsetzen.
Technische Bewertung
Die zuverlässigste Reparatur lautet nicht „Ersetzen Sie jedes Dezimalliteral durch F8“. Entscheidend ist festzustellen, ob die Änderung eine Datendateiänderung erfordert, die Zahlentypen eindeutig zu machen und das Ergebnis über seinen gesamten technischen Wertebereich nachzuweisen. Dieser Ansatz behebt das Kompilierungsproblem, ohne einen Skalierungsfehler zu verbergen, der schwerwiegender sein könnte als die abgelehnte Zeile.