Стартовая страница › Форумы › Взаимодействие с устройствами › OPC › OPCUA Linux
- В этой теме 14 ответов, 3 участника, последнее обновление 5 лет, 3 месяца назад сделано
Mikhail.
-
АвторСообщения
-
05.03.2021 в 11:32 #18624
Andrey42
УчастникУстановил скаду на Debian 9, запустил проект HelloWorld_Linux ….. работает
Добавил несколько тегов по ModbusTCP ….. работает
Добавил несколько тегов по OPCUA ….. неработают (На винде все работает класно.
С машины сервер вижу. По лога виже что при загрузке Comm произошла ошибка. А что где непонятно КП неактивно.
У кого то есть что сказать???05.03.2021 в 13:40 #18626
manjey73Участниктолько если погадать на картах. 🙂
05.03.2021 в 16:39 #18627
MikhailМодераторСкопируйте часть лога с ошибкой в тему.
09.03.2021 в 04:19 #18648Andrey42
УчастникИзвольте
2021-03-09 08:08:31 Сеанс связи с КП 21 «opcua», тип: KpOpcUa
Задержка перед соединением 4,6 с
Ошибка при соединении с OPC-сервером: System.AggregateException: One or more errors occurred. (The type initializer for ‘Opc.Ua.ServiceMessageContext’ threw an exception.) —>
System.TypeInitializationException: The type initializer for ‘Opc.Ua.ServiceMessageContext’ threw an exception. —> System.TypeInitializationException: The type initializer for ‘Opc.Ua.EncodeableFactory’ threw an exception. —>
System.TypeLoadException: Could not load type of field ‘Opc.Ua.JsonDecoder:m_reader’ (0) due to: Could not load file or assembly ‘Newtonsoft.Json, Version=10.0.0.0, Culture=neutral, PublicKeyToken=30ad4fe6b2a6aeed’ or one of its dependencies.at (wrapper managed-to-native) System.RuntimeTypeHandle.type_is_assignable_from(System.Type,System.Type)
at System.RuntimeTypeHandle.CanCastTo (System.RuntimeType type, System.RuntimeType target) [0x00000] in <533173d24dae460899d2b10975534bb0>:0
at System.RuntimeType.IsAssignableFrom (System.Type c) [0x00020] in <533173d24dae460899d2b10975534bb0>:0
at System.RuntimeType.IsAssignableFrom (System.Reflection.TypeInfo typeInfo) [0x00012] in <533173d24dae460899d2b10975534bb0>:0
at Opc.Ua.EncodeableFactory.AddEncodeableType (System.Type systemType) [0x00034] in <46754062c86e433a8050147004074236>:0
at Opc.Ua.EncodeableFactory.AddEncodeableTypes (System.Reflection.Assembly assembly) [0x00034] in <46754062c86e433a8050147004074236>:0
at Opc.Ua.EncodeableFactory..ctor () [0x0002d] in <46754062c86e433a8050147004074236>:0
at Opc.Ua.EncodeableFactory..cctor () [0x00000] in <46754062c86e433a8050147004074236>:0
— End of inner exception stack trace —
at Opc.Ua.ServiceMessageContext..ctor () [0x00053] in <46754062c86e433a8050147004074236>:0
at Opc.Ua.ServiceMessageContext..ctor (System.Boolean shared) [0x00000] in <46754062c86e433a8050147004074236>:0
at Opc.Ua.ServiceMessageContext..cctor () [0x00000] in <46754062c86e433a8050147004074236>:0
— End of inner exception stack trace —
at Opc.Ua.DiscoveryClient.Create (System.Uri discoveryUrl, Opc.Ua.EndpointConfiguration configuration) [0x0000a] in <46754062c86e433a8050147004074236>:0
at Opc.Ua.Client.CoreClientUtils.SelectEndpoint (System.String discoveryUrl, System.Boolean useSecurity, System.Int32 operationTimeout) [0x00041] in <bdddc5532da84081a96bd9e7feb3ef1e>:0
at Scada.Comm.Devices.OpcUa.OpcUaHelper.ConnectAsync (Scada.Comm.Devices.OpcUa.Config.ConnectionOptions connectionOptions, System.Int32 operationTimeout) [0x001e9] in <b5b49f01837b4bdfb587e3056c68b991>:0
— End of inner exception stack trace —
at System.Threading.Tasks.Task.ThrowIfExceptional (System.Boolean includeTaskCanceledExceptions) [0x00011] in <533173d24dae460899d2b10975534bb0>:0
at System.Threading.Tasks.Task`1[TResult].GetResultCore (System.Boolean waitCompletionNotification) [0x0002b] in <533173d24dae460899d2b10975534bb0>:0
at System.Threading.Tasks.Task`1[TResult].get_Result () [0x0000f] in <533173d24dae460899d2b10975534bb0>:0
at Scada.Comm.Devices.KpOpcUaLogic.ConnectToOpcServer () [0x00051] in <b5b49f01837b4bdfb587e3056c68b991>:0
—> (Inner Exception #0) System.TypeInitializationException: The type initializer for ‘Opc.Ua.ServiceMessageContext’ threw an exception. —> System.TypeInitializationException: The type initializer for ‘Opc.Ua.EncodeableFactory’ threw an exception. —> System.TypeLoadException: Could not load type of field ‘Opc.Ua.JsonDecoder:m_reader’ (0) due to: Could not load file or assembly ‘Newtonsoft.Json, Version=10.0.0.0, Culture=neutral, PublicKeyToken=30ad4fe6b2a6aeed’ or one of its dependencies.
at (wrapper managed-to-native) System.RuntimeTypeHandle.type_is_assignable_from(System.Type,System.Type)
at System.RuntimeTypeHandle.CanCastTo (System.RuntimeType type, System.RuntimeType target) [0x00000] in <533173d24dae460899d2b10975534bb0>:0
at System.RuntimeType.IsAssignableFrom (System.Type c) [0x00020] in <533173d24dae460899d2b10975534bb0>:0
at System.RuntimeType.IsAssignableFrom (System.Reflection.TypeInfo typeInfo) [0x00012] in <533173d24dae460899d2b10975534bb0>:0
at Opc.Ua.EncodeableFactory.AddEncodeableType (System.Type systemType) [0x00034] in <46754062c86e433a8050147004074236>:0
at Opc.Ua.EncodeableFactory.AddEncodeableTypes (System.Reflection.Assembly assembly) [0x00034] in <46754062c86e433a8050147004074236>:0
at Opc.Ua.EncodeableFactory..ctor () [0x0002d] in <46754062c86e433a8050147004074236>:0
at Opc.Ua.EncodeableFactory..cctor () [0x00000] in <46754062c86e433a8050147004074236>:0
— End of inner exception stack trace —
at Opc.Ua.ServiceMessageContext..ctor () [0x00053] in <46754062c86e433a8050147004074236>:0
at Opc.Ua.ServiceMessageContext..ctor (System.Boolean shared) [0x00000] in <46754062c86e433a8050147004074236>:0
at Opc.Ua.ServiceMessageContext..cctor () [0x00000] in <46754062c86e433a8050147004074236>:0
— End of inner exception stack trace —
at Opc.Ua.DiscoveryClient.Create (System.Uri discoveryUrl, Opc.Ua.EndpointConfiguration configuration) [0x0000a] in <46754062c86e433a8050147004074236>:0
at Opc.Ua.Client.CoreClientUtils.SelectEndpoint (System.String discoveryUrl, System.Boolean useSecurity, System.Int32 operationTimeout) [0x00041] in <bdddc5532da84081a96bd9e7feb3ef1e>:0
at Scada.Comm.Devices.OpcUa.OpcUaHelper.ConnectAsync (Scada.Comm.Devices.OpcUa.Config.ConnectionOptions connectionOptions, System.Int32 operationTimeout) [0x001e9] in <b5b49f01837b4bdfb587e3056c68b991>:0 <—09.03.2021 в 17:19 #18662
MikhailМодераторКлючевая ошибка здесь:
Could not load type of field ‘Opc.Ua.JsonDecoder:m_reader’ (0) due to: Could not load file or assembly ‘Newtonsoft.Json, Version=10.0.0.0Проверьте версию Mono с помощью команды
mono --version
Какая у Вас версия?
Есть ли ошибки в ScadaCommSvc.log?10.03.2021 в 08:48 #18668Andrey42
УчастникВерсия Mono 6.12.0.122
2021-03-10 12:41:11 <debianscada><root><ACT> Служба ScadaCommService 5.2.1.2 запущена
2021-03-10 12:41:11 <debianscada><root><ACT> Загрузка библиотеки КП: KpSimulator.dll
2021-03-10 12:41:12 <debianscada><root><ACT> Загрузка библиотеки КП: KpModbus.dll
2021-03-10 12:41:12 <debianscada><root><ACT> Загрузка библиотеки КП: KpOpcUa.dll
2021-03-10 12:41:13 <debianscada><root><ACT> Установка соединения со SCADA-Сервером «localhost»
2021-03-10 12:41:13 <debianscada><root><EXC> Ошибка при установке соединения со SCADA-Сервером: Connection refused
2021-03-10 12:41:13 <debianscada><root><ACT> Разрыв соединения со SCADA-Сервером
2021-03-10 12:41:13 <debianscada><root><ERR> Запуск работы невозможен из-за проблем взаимодействия со SCADA-Сервером.
Задержка перед повторной попыткой
2021-03-10 12:41:24 <debianscada><root><ACT> Установка соединения со SCADA-Сервером «localhost»
2021-03-10 12:41:24 <debianscada><root><ACT> Запуск линий связи
2021-03-10 12:41:24 <debianscada><root><ACT> Запуск приёма команд10.03.2021 в 14:55 #18671
MikhailМодераторЛог нормальный. Вообще библиотеки для OPC UA по документации зависят от Newtonsoft.Json. Но при этом никогда раньше не возникала проблема при отсутствии Newtonsoft.Json.
В связи с этим вопрос: какой у Вас адрес подключения к OPC UA серверу?
Можно попробовать скачать недостающие DLL.
Newtonsoft.Json 10.0.3
Microsoft.AspNetCore.Server.Kestrel 1.1.3
Microsoft.AspNetCore.Server.Kestrel.Https
DLL нужно скопировать в /opt/scada/ScadaComm11.03.2021 в 05:42 #18681Andrey42
УчастникВсе подключения по локальной сети opc.tcp:\\192.168.0.218:49000. Через telnet к серверу подключаюсь.
Скачал пакеты там туча версий DLL, брал из папки netstandard1.3. Положил куда сказано ребутнул машину, изменений нет.11.03.2021 в 17:54 #18698
MikhailМодераторНужно брать DLL для net45
15.03.2021 в 12:07 #18735Andrey42
УчастникНепомогло
15.03.2021 в 13:08 #18736
MikhailМодераторПроверю, напишу в этой теме.
15.03.2021 в 14:05 #18742
MikhailМодераторВот эти DLL необходимо положить в /opt/scada/ScadaComm
Microsoft.AspNetCore.Hosting.Abstractions.dll
Newtonsoft.Json.dllРаньше они не требовались для работы. Что-то изменилось в Mono Framework.
16.03.2021 в 04:47 #18756Andrey42
УчастникДа все заработало. Большое спасибо.
18.03.2021 в 10:48 #18818Andrey42
УчастникМихаил, может это не по теме, но при переносе проекта на Debian не работает Веб станция. В логе:
2021-03-18 14:20:06 <debianscada><www-data><EXC> Error getting view with ID=1 from the cache or from the server: Unable to receive view file modification time.:
Scada.ScadaException: Unable to receive view file modification time.
at Scada.Client.ViewCache.LoadView (System.Type viewType, System.Int32 viewID, System.DateTime viewAge, Scada.Client.BaseView& view, System.DateTime& newViewAge) [0x0004c] in <d7fcfa6bd97240beb9c8d775ca9988d2>:0
at Scada.Client.ViewCache.GetView (System.Type viewType, System.Int32 viewID, System.Boolean throwOnError) [0x00064] in <d7fcfa6bd97240beb9c8d775ca9988d2>:0
2021-03-18 14:20:06 <debianscada><www-data><EXC> Error getting view with ID=1 from the cache or from the server: Unable to receive view file modification time.:
Scada.ScadaException: Unable to receive view file modification time.
at Scada.Client.ViewCache.LoadView (System.Type viewType, System.Int32 viewID, System.DateTime viewAge, Scada.Client.BaseView& view, System.DateTime& newViewAge) [0x0004c] in <d7fcfa6bd97240beb9c8d775ca9988d2>:0
at Scada.Client.ViewCache.GetView (System.Type viewType, System.Int32 viewID, System.Boolean throwOnError) [0x00064] in <d7fcfa6bd97240beb9c8d775ca9988d2>:0
2021-03-18 14:20:07 <debianscada><www-data><EXC> Error getting view with ID=2 from the cache or from the server: Unable to receive view file modification time.:
Scada.ScadaException: Unable to receive view file modification time.
at Scada.Client.ViewCache.LoadView (System.Type viewType, System.Int32 viewID, System.DateTime viewAge, Scada.Client.BaseView& view, System.DateTime& newViewAge) [0x0004c] in <d7fcfa6bd97240beb9c8d775ca9988d2>:0
at Scada.Client.ViewCache.GetView (System.Type viewType, System.Int32 viewID, System.Boolean throwOnError) [0x00064] in <d7fcfa6bd97240beb9c8d775ca9988d2>:0
2021-03-18 14:20:07 <debianscada><www-data><EXC> Error getting view with ID=2 from the cache or from the server: Unable to receive view file modification time.:
Scada.ScadaException: Unable to receive view file modification time.
at Scada.Client.ViewCache.LoadView (System.Type viewType, System.Int32 viewID, System.DateTime viewAge, Scada.Client.BaseView& view, System.DateTime& newViewAge) [0x0004c] in <d7fcfa6bd97240beb9c8d775ca9988d2>:0
at Scada.Client.ViewCache.GetView (System.Type viewType, System.Int32 viewID, System.Boolean throwOnError) [0x00064] in <d7fcfa6bd97240beb9c8d775ca9988d2>:0что со временем не так понять не могу
18.03.2021 в 16:20 #18826
MikhailМодераторДа, совсем не по теме. Напишите, пожалуйста, вопрос в подходящую тему или создайте новую тему.
-
АвторСообщения
- Для ответа в этой теме необходимо авторизоваться.