Le cause del Fault possono essere molte, intanto ti consiglio di verificare con il comando Syslog da connessione Telnet che errori hai, la descrizione degli errori la trovi qui.
Hai verificato se il tuo dispositivo 192.168.255.1 è raggiungibile dallo SlimLine, se il dispositivo risponde al ping puoi testarlo con il comando di Ping sempre da connessione Telnet.
Ma guardando il tuo programma vedo il motivo dell’errore, se leggi bene la documentazione del FB SysTCPClient, vedi questo:
- LocalAdd (@STRING) Indirizzo IP della interfaccia di rete da cui effettuare la connessione. Default ‘0.0.0.0’: l’interfaccia è scelta automaticamente in base all’IP a cui connettersi.
- LocalPort UINT) Numero porta TCP da cui parte la connessione (0 scelta automaticamente).
Tu invece hai definito sia uno che l’altro dei parametri.
Definendo LocalAdd con l’indirizzo IP dello SlimLine stai obbligando il FB ad utilizzare la connessione che ha questo indirizzo e fino a qui tutto funziona tanto la connessione con il tuo dispositivi parte proprio dalla porta ethernet dello SlimLine.
Ma definendo LocalPort a 502 stai obbligando il FB ad aprire la connessione verso la porta 502 del tuo dispositivo dalla sua porta 502 che in realtà è già utilizzata dallo SlimLine (é quella dove ci si conette in Modbus). Quindi trovandola già aperta il FB non può utilizzarla.