СODESYS V3.5: Repository Archive V3.5 SP4 (необходим для старых СПК) / Раздел CDS V3.5 на сайте
Форум: Вопросы и ответы / Визуализация / Настройка обмена с другими устройствами
Web-панель ВП110 / Modbus-индикатор СМИ2-М
Telegram: @JuneSmellsLikeBlood | e-mail: e.kislov@owen.ru | oscat.ru | Как обратиться в техподдержку?
Как отлаживать ошибки | Отладка проектов в CODESYS V3.5 | XY problem | Как правильно задавать вопросы | AnyDesk
Пытаюсь подключиться к виртуальному контроллеру. Делаю все по видеоинструкции (по текстовой тоже пытался). На первом этапе контроллер (имя ноутбука) он видит, то как только я хочу подключиться, то Codesys выдает окно логирования. Вводил и Owner без пароля, и нового созданного пользователя, и системного пользователя, но каждый раз появляется ошибка что никакое устройство не отвечает на запрос поиска. Подскажите пожалуйста, в чем может быть проблема? Спасибо!
01. Выбор устройства.bmp
02. Вход в систему.bmp
03. Ошибка.bmp
СODESYS V3.5: Repository Archive V3.5 SP4 (необходим для старых СПК) / Раздел CDS V3.5 на сайте
Форум: Вопросы и ответы / Визуализация / Настройка обмена с другими устройствами
Web-панель ВП110 / Modbus-индикатор СМИ2-М
Telegram: @JuneSmellsLikeBlood | e-mail: e.kislov@owen.ru | oscat.ru | Как обратиться в техподдержку?
Как отлаживать ошибки | Отладка проектов в CODESYS V3.5 | XY problem | Как правильно задавать вопросы | AnyDesk
Ну я пользователя в проекте создал (Owner без пароля для создания новых пользователей работает)
Системный пользователь, я имел ввиду пользователя windows
Да пробовал. Я на форуме находил вопрос, что выскакивает окно логирования и не подключается к контроллеру, но там речь шла о реальном контроллере, а не виртуальном (к реальному СПК у меня ноут подключается)
Я просто никогда раньше не пользовался виртуальным контроллером. Там в настройках никаких разрешений давать не надо?
Последний раз редактировалось DmitriiAnyushin; 10.02.2023 в 11:28.
СODESYS V3.5: Repository Archive V3.5 SP4 (необходим для старых СПК) / Раздел CDS V3.5 на сайте
Форум: Вопросы и ответы / Визуализация / Настройка обмена с другими устройствами
Web-панель ВП110 / Modbus-индикатор СМИ2-М
Telegram: @JuneSmellsLikeBlood | e-mail: e.kislov@owen.ru | oscat.ru | Как обратиться в техподдержку?
Как отлаживать ошибки | Отладка проектов в CODESYS V3.5 | XY problem | Как правильно задавать вопросы | AnyDesk
Здравствуйте, решил попробовать использовать библиотеку Owen Communication для настройки ПЛК210 в качестве Modbus Slave устройства и столкнулся с непривычным для себя поведением. Например, у меня есть INPUT_REGISTER с адресом 0 и HOLDING_REGISTER c адресом 0, каждый содержит переменную типа real, при использовании стандартного шаблона это будут два разных real-а, один который можно просто прочитать, второй прочитать/записать при этом при записи HOLDING_REGISTER-а, INPUT_REGISTER не изменится. Теперь не совсем понятно как добиться аналогично поведения при использовании Owen Communication, если я, например, создам два экземпляра функционального блока MB_TcpSlave и подам в них разные массивы данных, то при записи HOLDING_REGISTER_а будет меняться INPUT_REGISTER, в соответствии с этим вопрос как добиться аналогичного с шаблоном поведения? То есть иными словами, если я правильно понял, то отключить в библиотеке наложение области данных?
Последний раз редактировалось DenisV; 10.02.2023 в 15:05.
Да, когда удалил все csv в данной папке, всё загрузилось. Спасибо!
Только вот проблема из-за которой я с эмулятора на виртуальный ПЛК решил перейти не решилась - контроллер так же уходит в стоп (и порт по библиотеке ComService перестал открываться). Выяснил, что эмулятор (и виртуальный контроллер) ругаются на методы (M) и действия (A) в некоторых FB (даже если удалить из них весь код). Причём реальный СПК их выполняет как надо. Когда заменил методы и действия на обычные FUN программа на эмуляторе заработала как надо (на реальном СПК думаю проблем тоже не возникнет).
Подскажите, есть ли какие-либо ограничения в использовании действий и методов? (все проекты конвертировал из Codesys SP16 в Codesys SP17 с обновлением всех компонентов (в связи с выходом новых СПК). На Codesys SP16 таких проблем не возникало
Последний раз редактировалось DmitriiAnyushin; 10.02.2023 в 15:14.
Нет, никаких ограничений нет.
Выложите, пожалуйста, простейший проект, на котором я смогу повторить вашу проблему.
Что касается ComService - то при запуске на виртуальном контроллере нужно было указать номер виртуального COM-порта ПК.
Вообще, это устаревшая библиотека - рекомендую вместо нее использовать ФБ COM_Control из библиотеки OwenCommunication.
СODESYS V3.5: Repository Archive V3.5 SP4 (необходим для старых СПК) / Раздел CDS V3.5 на сайте
Форум: Вопросы и ответы / Визуализация / Настройка обмена с другими устройствами
Web-панель ВП110 / Modbus-индикатор СМИ2-М
Telegram: @JuneSmellsLikeBlood | e-mail: e.kislov@owen.ru | oscat.ru | Как обратиться в техподдержку?
Как отлаживать ошибки | Отладка проектов в CODESYS V3.5 | XY problem | Как правильно задавать вопросы | AnyDesk
Добрый день.
В рамках библиотеки мы осознанно реализовали модель памяти с наложением всех областей Modbus друг на друга.
Т.е. у нас все регистры сразу и HOLDING (доступны для чтения функцией 0x03 и записи функциями 0x06/0x10) и INPUT (доступны для чтения функцией 0x03).
Если вам нужно, чтобы некоторые регистры были доступны только для чтения - то это можно сделать через запрет запросов (ForbiddenRequests).
Подробнее см. в документации.
СODESYS V3.5: Repository Archive V3.5 SP4 (необходим для старых СПК) / Раздел CDS V3.5 на сайте
Форум: Вопросы и ответы / Визуализация / Настройка обмена с другими устройствами
Web-панель ВП110 / Modbus-индикатор СМИ2-М
Telegram: @JuneSmellsLikeBlood | e-mail: e.kislov@owen.ru | oscat.ru | Как обратиться в техподдержку?
Как отлаживать ошибки | Отладка проектов в CODESYS V3.5 | XY problem | Как правильно задавать вопросы | AnyDesk
Евгений, по Вашему совету все заработало. Но появился другой вопрос - можно ли получать и текст и код ошибки.
Задача в том, что когда вход не равен "0" (NO_ERRORS) - у меня происходит запись сообщения в переменную для телеграмма. И отправляется.
Получается, если я использую тип переменной - Mx210Assistant.ANALOG_SENSOR_ERRORS; - на выходе будет текст.
Если тип REAL, то он одаст число - код ошибки.
И его надо сравнивать с текстом-константой NO_ERRORS или можно как то получить его числом - "0" и использовать блок EQ?