JurasskPark

Созданные ответы форума

Просмотр 15 сообщений - с 721 по 735 (из 1,003 всего)
  • Автор
    Сообщения
  • в ответ на: DrvOPCClassicJP #28594
    JurasskPark
    Участник

    Какая именно переменная подменялась?
    Она не была static случайно?

    Путь до файла. А соответственно и всё что в нем. 🙂
    Не она, а они. Их было несколько.

    
            #region Variables
            /// <summary>
            /// The application directories
            /// <para>Каталоги приложения</para>
            /// </summary>
            private readonly AppDirs appDirs;
            /// <summary>
            /// The driver code
            /// <para>Код драйвера</para>
            /// </summary>
            private readonly string driverCode;
            /// <summary>
            /// The device number
            /// <para>Номер устройства</para>
            /// </summary>
            private readonly int deviceNum;
            /// <summary>
            /// Name configuration file
            /// <para>Название файл конфигурации</para>
            /// </summary>
            public string shortFileName;
            /// <summary>
            /// Path configuration file
            /// <para>Путь до файла конфигурации</para>
            /// </summary>
            public string projectFileName;
            /// <summary>
            /// Project configuration
            /// <para>Конфигурация проекта</para>
            /// </summary>
            private static Project project;
            /// <summary>
            /// Channel
            /// <para>Канал</para>
            /// </summary>
            private static ProjectChannelDevice channel;
            /// <summary>
            /// Devices
            /// <para>Устройства</para>
            /// </summary>
            public static List<ProjectDevice> devices;
            /// <summary>
            /// Commands Group
            /// <para>Группа команд</para>
            /// </summary>
            private static List<ProjectDeviceGroupCommand> deviceGroupCommands;
            /// <summary>
            /// Command
            /// <para>Команда</para>
            /// </summary>
            private static List<ProjectDeviceCommand> deviceCommands;
            /// <summary>
            /// Tags Group
            /// <para>Группа тегов</para>
            /// </summary>
            private static List<ProjectDeviceGroupTag> deviceGroupTags;
            /// <summary>
            /// Tag
            /// <para>Тег</para>
            /// </summary>
            private static List<ProjectDeviceTag> deviceTags;
            /// <summary>
            /// Driver Tag
            /// <para>Тег драйвера</para>
            /// </summary>
            private static List<CnlPrototypeGroup> driverTags;
            /// <summary>
            /// Error counter
            /// <para>Счетчик ошибок</para>
            /// </summary>
            public ushort countError { get; private set; }
    
            /// <summary>
            /// List driver сlient
            /// <para>Список клиентов</para>
            /// </summary>
            public static List<DriverClient> lstClient = new List<DriverClient>();
    
            /// <summary>
            /// Driver сlient
            /// <para>Клиент</para>
            /// </summary>
            public static DriverClient driverClient;
    
            #region OPC
            /// <summary>
            /// Item Value Result 
            /// </summary>
            private static TsCDaItemValueResult[] resultsValue;
            public static TsCDaItemValueResult[] ResultsValue
            {
                get { return resultsValue; }
                set { resultsValue = value; }
            }
            #endregion OPC
    
            private CancellationTokenSource cancelTokenSource = new CancellationTokenSource();
    
            public bool SessionStop = false;
    
            #endregion Variables
    
    в ответ на: DrvOPCClassicJP #28585
    JurasskPark
    Участник

    Чтение несколько OPC серверов из одного проекта тоже работает 🙂
    Проверил заодно проверку на ошибки 🙂 если режим неправильный и сыпаться ошибки, то после 10 ошибок идет реинициалмзация подключения)
    Я снова довольный как слон! ?

    в ответ на: DrvOPCClassicJP #28581
    JurasskPark
    Участник

    Перенёс чтение конфигурации в создании класса и всë заработало!

    в ответ на: DrvOPCClassicJP #28578
    JurasskPark
    Участник
    
    2023-05-18 12:15:16 Линия связи [27] BZ_DLG_ARM остановлена
    --------------------------------------------------------------------------------
    2023-05-18 12:16:15 [Driver Device Config Num][39]
    2023-05-18 12:16:15 [Driver Device Num][39]
    2023-05-18 12:16:15 [Driver Line Num][27]
    2023-05-18 12:16:15 [Driver Device Driver Code][DrvOPCClassicJP]
    2023-05-18 12:16:15 [Driver Device Code][DrvOPCClassicJP]
    2023-05-18 12:16:15 [Driver Device Short File Name][DrvOPCClassicJP_039.xml]
    2023-05-18 12:16:15 [Driver Device Config DirC:\SCADA6\ScadaComm\Config\]
    2023-05-18 12:16:15 [Driver Device Project File Name][C:\SCADA6\ScadaComm\Config\DrvOPCClassicJP_039.xml]
    --------------------------------------------------------------------------------
    2023-05-18 12:16:15 Запуск линии связи [27] BZ_DLG_ARM
    2023-05-18 12:16:15 [Driver v.0008]
    2023-05-18 12:16:15 [Запуск приложения]
    2023-05-18 12:16:15 [Пауза][100]
    2023-05-18 12:16:15 [Таймаут][200]
    2023-05-18 12:16:15 [Период][00:00:05]
    2023-05-18 12:16:15 [Проект][C:\SCADA6\ScadaComm\Config\DrvOPCClassicJP_022.xml]
    2023-05-18 12:16:15 [OPC серверов][1]
    2023-05-18 12:16:15 [Driver Device Name][OPC сервер]
    2023-05-18 12:16:15 [Группы тегов][1]
    2023-05-18 12:16:15 [Driver Device Group Name][Группа тегов]
    2023-05-18 12:16:15 [Теги][15]
    

    Т.е. когда идёт public DevOPCClassicJPLogic(ICommContext commContext, ILineContext lineContext, DeviceConfig deviceConfig): base(commContext, lineContext, deviceConfig), то название файл правильное, а когда public override void OnCommLineStart() ему имя уже подменили! (

    • Этот ответ был изменен 2 года, 2 месяца назад от JurasskPark.
    в ответ на: DrvOPCClassicJP #28577
    JurasskPark
    Участник

    Не помогло! ???

    в ответ на: DrvOPCClassicJP #28576
    JurasskPark
    Участник

    Сейчас обнаружил (^__^) что у меня переменные публичные и сам проект. И список клиентов тоже. Перевёл их в private. Сейчас закончится часовня, заменяю библиотеку и смотрю что будет.

    в ответ на: DrvOPCClassicJP #28574
    JurasskPark
    Участник

    Удалил конфигурацию. Снова добавил.
    Такая же проблема.
    Только Перезапустить линию помогает корректно считать конфигурацию.

    в ответ на: DrvOPCClassicJP #28572
    JurasskPark
    Участник

    Ещё раз… После перезапуска (Перезапустить Линию) — он читает правильный конфиг, а когда стартует коммуникатор чужой…

    в ответ на: DrvOPCClassicJP #28571
    JurasskPark
    Участник

    Короче…
    Я в шоке…
    В логах добавил все все параметры.
    Имя драйвер генерирует правильно, я его отправляю в Project.Load, а вот эта уже сволочь (прошу прощения) возвращается настройки из другого конфигурации…
    Ищу чего там нахимичил.

    в ответ на: DrvOPCClassicJP #28568
    JurasskPark
    Участник

    Нужно изучать подробности.

    https://www.youtube.com/watch?v=7EI5r-bVltU
    Дома тоже самое.
    Я сначала создаю клиенты и добавляю в list, а потом через for их читаю.
    Хотел, чтобы несколько OPC серверов можно было добавлять.

    Пока думаю, что упростить драйвер до 1 устройства и точка. 🙂
    Убрать все деревья и посмотреть что будет.

    в ответ на: DrvOPCClassicJP #28560
    JurasskPark
    Участник

    Действительно…
    Система правильно показывает и указывает, что за файл считала и с какими настройками, а вот при создании клиента получает чужие и продолжает с ними работать… ?
    Понятно, что типо защиту поставить… Но первый раз такой вижу 🙂

    в ответ на: Web клиент #28559
    JurasskPark
    Участник

    Поставил версию 6. Сделал всё аналогично, но уже предположил, что с первого раза не запустится, так и получилось. В настройках IIS уже 2 сайта. Один по умолчанию :80, второй это скада с :10008. Локально всё работает, а вот из вне ну никак, хотя правило уже было Внеш_IP:XXXXX — >>> ВнутрIP:10008.

    В итоге, зашёл в настройки -> безопасность windows -> браундмаур и безопасность сети -> Дополнительные параметры. Далее создается правило для входящих подключений, порт TCP, номер порта 10008, профиль для Всех (частный доменный и т.д.), Имя RapidScada. Сохраняется и Вуаля. Есть доступ из вне.

    Ну все правильно. При создании нужно было изменить в инсталяторе порт веба с 10008 на 80. Вы этого не сделали.
    Чем вы недовольны?

    в ответ на: DrvOPCClassicJP #28558
    JurasskPark
    Участник

    Короче… Мы строили, строили… И устали.)

    Долго бился пока смог понять что и как…

    Из текущих проблем.
    При перезапуске коммуникатора, канал через dll во время создания клиента, умудряется увидеть свойства другого канала…
    Пока думаю, что еще из 100500 условий channelhandle OPC DA нужно делать.
    Пока думаю ему давать номер девайса…

    JurasskPark
    Участник

    Если честно… Я в шоке…
    Давайте разделять тогда подходы.
    1. Автоматизация промышленного уровня
    2. Домашняя автоматизация

    а. SCADA работает на ПК
    б. SCADA работает на контроллере.

    В случае 1а — речи об отключении логов вообще не ведём.
    В случае 1б — в драйвере! возможна опция уровня логирования сообщений: Критичные Ошибки, Отладка, Информация. Тогда нужно понимать, а в каком драйвере это так необходимо.
    В случае 2а — неужели так жалко жесткий диск или проблема с его покупки?
    В случае 2б — тут возможно отключение логирования в ПЗУ, чтобы не убивать контроллер. Осталось договориться с разработчиками драйверов. 🙂

    JurasskPark
    Участник

    Драйвер интерфейса XYE 6.0.0.0
    ——————————
    Создать в таблице ‘Вспомошательные таблицы’ — ‘Форматы’
    перечисления для каналов с индексами

    2 (Oper Mode) — Off; Auto; Cool; Dry; Heat; Fan
    3 (Fan) — Auto; High; Medium; Low
    14 (Mode Flags) — Normal; ECO; Turbo; Swing; Vent

Просмотр 15 сообщений - с 721 по 735 (из 1,003 всего)