So protokollieren Sie Waagen- oder Laborwaagendaten in MySQL-Datenbank
Eine vollständige Anleitung zum Abfragen von seriellen Waagengeräten und zum Exportieren der extrahierten Daten direkt in eine MySQL-Datenbank.
1. Protokollkonfiguration: RS232-Waage
Kommunikationstyp: Passives Mithören (kontinuierlich oder Druck auf Abruf)
Die meisten industriellen Waagen senden ASCII-Zeichenketten, die mit einem Wagenrücklauf (CR) und Zeilenvorschub (LF) abgeschlossen werden. Verwenden Sie das Modul „ASCII Data Parser“ der Software und setzen Sie die Datenpaketsignatur auf die Endzeichen „#0D#0A“. Sie können dann das numerische Gewicht extrahieren, indem Sie feste Spaltenpositionen angeben oder einen regulären Ausdruck verwenden. Darüber hinaus enthält der Logger vordefinierte Parser für die gängigsten Waagen.
Wenden Sie diese Basiskonfiguration für die serielle Verbindung an:
{
"port": "COM1",
"baud_rate": 9600,
"data_bits": 8,
"stop_bits": 1,
"parity": "none",
"flow_control": "hardware",
"packet_end": "#0D#0A"
}
Waagen- und Waage-Plugin-Auswahl zur Abfrage eines Geräts und zum Parsen eingehender Daten.

Waagen- und Waage-Plugin-Konfiguration: Waagentyp und Abfrageintervall.
Bereit, RS232-Waage mit MySQL zu verbinden?
2. Datenbankeinrichtung: MySQL
Sie benötigen den MySQL Connector/ODBC, der auf dem Rechner installiert ist, auf dem der Data Logger ausgeführt wird. Erstellen Sie einen System-DSN, der auf Ihre MySQL-Serverinstanz verweist.
Verwenden Sie das folgende SQL-Skript, um Ihre Zieltabelle zu erstellen. Wir empfehlen die Verwendung der InnoDB-Engine, um häufige gleichzeitige Einfügevorgänge ohne Tabellensperren zu verarbeiten.
CREATE TABLE sensor_data ( id INT AUTO_INCREMENT PRIMARY KEY, log_timestamp DATETIME DEFAULT CURRENT_TIMESTAMP, device_id VARCHAR(50), register_value FLOAT ) ENGINE=InnoDB;

MySQL-Plugin zum Exportieren von Daten.

MySQL-Datenbank-Verbindungseinstellungen.

INSERT-SQL-Anweisungen in einer Warteschlange mit benutzerdefinierten Parametern.
3. Protokollspezifische Problembehandlung
- Unverständliche Zeichen erscheinen auf dem Bildschirm: Dies deutet fast immer auf eine Abweichung der Baudrate oder Parität hin. 9600-8-N-1 ist Standard, aber ältere Mettler-Toledo- oder Ohaus-Waagen verwenden häufig 2400 Baud oder 7-Even-1-Parität. Überprüfen Sie das Hardware-Handbuch.
- Ist es möglich, nur stabile Gewichtswerte zu verarbeiten und Zwischenwerte zu ignorieren?: Verwenden Sie eines unserer Filter-Plugins und ignorieren Sie beispielsweise alle Datensätze ohne die Signatur „stable“ in einem Datenpaket.
- Ist es möglich, Gewichtswerte größer als 100,0 kg zu verarbeiten?: Das Expressions-Filter-Plugin ermöglicht Ihnen die Verwendung beliebiger mathematischer Ausdrücke. Beispielsweise der folgende Befehl: DISCARD_DATA_PACKET_IF(WEIGHT < 100).
4. Datenbankspezifische Problembehandlung
- MySQL-Server ist nicht mehr erreichbar: Wenn Ihr serielles Gerät über Nacht inaktiv ist, trennt MySQL die Verbindung. Aktivieren Sie die Einstellung 'Verbindung aufrechterhalten' im ODBC-Exportmodul des Data Loggers.
- Wie kann ich eine Datenzeile für mein Gerät einfügen oder aktualisieren?: Sie können jede SQL-Abfrage in unserem Plugin 'SQL Database Pro' verwenden. In MySQL können Sie problemlos das folgende SQL ausführen: 'INSERT INTO ....... ON DUPLICATE KEY .... UPDATE ....'.
- Ich möchte Daten von jedem meiner Geräte in eine andere Tabelle schreiben. Wie kann ich das tun?: Im Plugin 'SQL Database Pro' können Sie einen Platzhalter in Ihrem SQL verwenden. Zum Beispiel 'INSERT INTO SerialData%DEVICE_ID% (....)'. Vor der Ausführung des SQL ersetzt der Logger %DEVICE_ID% durch den entsprechenden Wert aus den analysierten Daten, und die tatsächliche Zieltabelle variiert (SerialData1, SerialData2 usw.).