OPCUA Linux

Просмотр 15 сообщений - с 1 по 15 (из 15 всего)
  • Автор
    Сообщения
  • #18624
    Andrey42
    Участник

    Установил скаду на Debian 9, запустил проект HelloWorld_Linux ….. работает
    Добавил несколько тегов по ModbusTCP ….. работает
    Добавил несколько тегов по OPCUA ….. неработают (На винде все работает класно.
    С машины сервер вижу. По лога виже что при загрузке Comm произошла ошибка. А что где непонятно КП неактивно.
    У кого то есть что сказать???

    #18626
    manjey73
    Участник

    только если погадать на картах. 🙂

    #18627
    Mikhail
    Модератор

    Скопируйте часть лога с ошибкой в тему.

    #18648
    Andrey42
    Участник

    Извольте

    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 <—

    #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?

    #18668
    Andrey42
    Участник

    Версия 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> Запуск приёма команд

    #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/ScadaComm

    #18681
    Andrey42
    Участник

    Все подключения по локальной сети opc.tcp:\\192.168.0.218:49000. Через telnet к серверу подключаюсь.
    Скачал пакеты там туча версий DLL, брал из папки netstandard1.3. Положил куда сказано ребутнул машину, изменений нет.

    #18698
    Mikhail
    Модератор

    Нужно брать DLL для net45

    #18735
    Andrey42
    Участник

    Непомогло

    #18736
    Mikhail
    Модератор

    Проверю, напишу в этой теме.

    #18742
    Mikhail
    Модератор

    Вот эти DLL необходимо положить в /opt/scada/ScadaComm
    Microsoft.AspNetCore.Hosting.Abstractions.dll
    Newtonsoft.Json.dll

    Раньше они не требовались для работы. Что-то изменилось в Mono Framework.

    #18756
    Andrey42
    Участник

    Да все заработало. Большое спасибо.

    #18818
    Andrey42
    Участник

    Михаил, может это не по теме, но при переносе проекта на 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

    что со временем не так понять не могу

    #18826
    Mikhail
    Модератор

    Да, совсем не по теме. Напишите, пожалуйста, вопрос в подходящую тему или создайте новую тему.

Просмотр 15 сообщений - с 1 по 15 (из 15 всего)
  • Для ответа в этой теме необходимо авторизоваться.