Registrazione di bilance su database MS SQL in tempo reale
Una guida completa per interrogare dispositivi seriali di bilance ed esportare i dati acquisiti direttamente in un database MsSQL con la propria struttura di database.
1. Configurazione del protocollo: Bilancia pesa RS232
Tipo di comunicazione: Ascolto passivo (continuo o stampa su richiesta)
La maggior parte delle bilance industriali invia stringhe ASCII terminate da un ritorno a capo (CR) e un avanzamento riga (LF). Utilizzare il modulo «ASCII Data Parser» del software e impostare la firma del pacchetto dati sui caratteri finali «#0D#0A». È quindi possibile estrarre il peso numerico specificando posizioni di colonna fisse o utilizzando un’espressione regolare. Inoltre, il logger contiene parser predefiniti per le bilance più diffuse.
Applicare questa configurazione di base per la connessione seriale:
{
"port": "COM1",
"baud_rate": 9600,
"data_bits": 8,
"stop_bits": 1,
"parity": "none",
"flow_control": "hardware",
"packet_end": "#0D#0A"
}
Selezione del plugin bilance per interrogare un dispositivo e analizzare i dati in arrivo.

Configurazione del plugin bilance: tipo di bilancia e intervallo di interrogazione.
Pronto a connettere Bilancia pesa RS232 a Microsoft SQL Server?
2. Configurazione del database: Microsoft SQL Server
Utilizzi il client nativo di SQL Server integrato o il provider OLE DB nel modulo di esportazione ODBC del Data Logger. L'autenticazione Windows è supportata senza problemi se l'account di servizio del logger ha accesso al database.
Utilizzare il seguente script SQL per creare la tabella di destinazione. Utilizzi DATETIME2 invece di DATETIME per una maggiore precisione dei timestamp, fondamentale per la registrazione seriale industriale ad alta frequenza.
CREATE TABLE SerialData ( RecordID INT IDENTITY(1,1) PRIMARY KEY, LogTime DATETIME2 DEFAULT SYSUTCDATETIME(), PortID NVARCHAR(20), SensorReading FLOAT );

Connettore Microsoft SQL Server nel nostro logger.

Impostazioni di connessione al database SQLServer. Ad esempio, SQL Express.

Coda SQL.
3. Risoluzione dei problemi specifici del protocollo
- Caratteri spazzatura visualizzati sullo schermo: Questo indica quasi sempre una discrepanza di baud rate o parità. 9600-8-N-1 è lo standard, ma le bilance Mettler Toledo o Ohaus meno recenti utilizzano spesso 2400 baud o parità 7-pari-1. Consultare il manuale hardware.
- È possibile elaborare solo il peso stabile e ignorare i valori intermedi?: Utilizzare uno dei nostri plugin di filtro e, ad esempio, ignorare tutti i record senza la firma «stable» in un pacchetto dati.
- È possibile elaborare valori di peso superiori a 100,0 kg?: Il plugin filtro Expressions consente di utilizzare qualsiasi espressione matematica. Ad esempio, il seguente comando: DISCARD_DATA_PACKET_IF(WEIGHT < 100).
4. Risoluzione dei problemi specifici del database
- Accesso non riuscito per l'utente / Accesso negato: Se esegue RS232 Data Logger come servizio Windows in background, si assicuri che il servizio venga eseguito con un account di dominio con ruoli db_datawriter, anziché con l'account predefinito 'Sistema locale'. Oppure crei un utente separato con il metodo di autenticazione 'SQL Server'.
- Cosa succede se il mio database è offline? Perderò i miei dati?: Utilizzi il plugin SQL Database Pro. Può scrivere i dati in un file temporaneo mentre il database è offline e ripristinarli in seguito.
- Il codice funziona solo quando si inviano numeri. Quando provo a inviare una lettera, non funziona.: 1. Dovrebbe dichiarare la variabile del parser come stringa. 2. La Sua tabella dovrebbe contenere la colonna con il tipo 'VARCHAR' o 'NVARCHAR'. La dimensione di questa colonna dovrebbe essere sufficiente per i Suoi dati. 3. Dovrebbe selezionare il tipo di dati 'string' per la colonna corrispondente nel plugin di esportazione dati nella pagina 'Binding'.