Komunikacja w C# za pomocą protokołów Modbus i SCPI

Pytania w tym artykule pojawiły się podczas szkolenia Komunikacja w C# za pomocą protokołów Modbus i SCPI realizowanego w dniach 27.06.2016r. - 17.07.2016r.


Czy biblioteka nmodbus4 działa na .NET Core?

Niestety nie jest kompatybilna. W przypadku .NET Core polecam bibliotekę nmodbus (bez czwórki) https://github.com/NModbus/NModbus

Przygotowałem przykład:
https://github.com/sulmar/modbus-dotnetcore-sample/blob/master/ModbusDotnetCoreDemo/Program.cs


Czy istnieje biblioteka do obsługi protokołu SCPI dla .NET?

Nie znalazłem darmowej biblioteki, ale wystarczy utworzyć klienta TCP i wysyłać odpowiednie komunikaty według specyfikacji SCPI. Protokół jest tekstowy, dobrze udokumentowany, więc nie powinien sprawić trudności.

Różne mierniki zwracają różne informacje. W jaki sposób zapisywać to do bazy danych bez potrzeby modyfikacji struktury tabel?

W przypadku relacyjnej bazy danych SQL Server proponuję zserializować pomiar do formatu xml lub json a następnie zapisać do kolumny typu string albo xml lub json. Polecam również wzięcie pod uwagę nierelacyjnej bazy danych NoSQL, np. MongoDB.