Алексей

Ответы в темах

Просмотр 15 сообщений - с 1 по 15 (из 17 всего)
  • Автор
    Записи
  • Алексей
    Участник

    @mikhail

    Спасибо за понятное объяснение по задержкам и повторам.

    С уважением Алексей !

    Алексей
    Участник

    @manjey73

    Огромное спасибо, заработало !

    Все кому не понятно, в настройках почтового профиля Яндекс отключаем портальный пароль и создаем пароль для приложения. Приложение назвал Scada.

    В настройках КП выставляем сервер smtp.yandex.ru , порт 25, SSL — галочку ставим. В качестве пароля указываем пароль именно приложения, который создали а не от пользователя почты — не перепутайте !

    Всем спасибо, с уважением Алексей !

    Алексей
    Участник

    Доброго времени суток !

    Пытаюсь отправить через yandex, выставил настройки как на скриншоте в сообщении выше , то есть 25 порт, использовать SSL, сервер smtp.yandex.ru все равно не получается , в журнале линии пишет :

    Ошибка при отправке письма на xxxxxx0@yandex.ru: Неправильная последовательность команд. Отклик сервера: 5.5.4 Error: send AUTH command first. 1659428067-WgR98EfBqY-ERhKYMkU

    если выставлять 465 порт как по инструкции от самого Яндекса , тогда в журнале пишет :

    Ошибка при отправке письма на хххххх@yandex.ru: Время ожидания операции истекло.

    В настройках профиля почты ничего не запрещено, стоит портальный пароль. Почтовый клиент Thunderbird работает без затыков. Есть у кого идеи ?

    Спасибо, с уважением Алексей

    Алексей
    Участник

    Всем привет , аналогичная ситуация. Хочу написать как я решил такую проблему. Может кто и подскажет как по другому более просто это сделать. Пишу своими словами, я не особо про в этом, прошу не пинать. В общем имеем :

    Гараж с освещением и сигнализацией. Имеем мониторинг освещения и мониторинг снятия и установки на охрану. И имеем управление включением\выключением освещения.

    Задача : если забыл выключить свет в гараже, то при постановке на охрану свет выключается автоматически.

    Имеем входные каналы :

    Канал 100 — контроль освещения ( приходит 0 если свет включен, приходит 1 если свет выключен)
    Канал 200 — контроль сигнализации ( приходит 1 если охрана взята, приходит 0 если охрана снята)

    Имеем канал управления 150 — включить или выключить свет, стоит импульсное реле, поэтому в любом случае отправляем 1.

    Так как модуль автоматического управления не может брать данные с разных каналов и применять к ним логическое «И» я сделал следующее :

    Создал на пустом КП входной до расчетный канал 170 и использовал на нем формулу :
    Val(100) — Val(200). Зразу вопрос, правильно ли я сделал что использовал такой канал на пустом КП, так как каналы 100 и 200 используются на разных КП.

    В общем у меня получилась в моем условии что при установленной охране и включенном освещении канал 170 выдает значение (-1). В модуле автоматического управления я добавил триггер на данные канал , указал канал 170 и в значении указал значение =-1 после добавил команду ТУ и отправил на канал 150 значение 1. В общем все работает. Правильный ли этот метод ? Так же хотель узнать параметры Задержка и период повтора. Что под этим подразумевается ? Задержка я так понял он отправляет команду ТУ не сразу а с задержкой. Повтор — он повторно проверяет данные канала и уже анализируя значение отправляет команду ТУ или просто повторно отправляет команду ТУ ???

    Собственно как то так, всем Спасибо. Если есть другие предложения обязательно, прочитаю и проверю . Всем с уважением Алексей

    Алексей
    Участник

    Реализация удержания кнопки в любом случае не должна быть на уровне веб-интерфейса, т.к. связь между веб-приложением и SCADA-Сервером не является надёжным звеном. Команда 0 через заданное время удобно настраивается с помощью Модуля автоматического управления — триггер на команду.

    Спасибо за разъяснение, то есть Вы предполагаете что может случайно возникнуть обрыв связи после отправки команды 1 ? Ну да, я с Вами согласен. Но это на страх и риск каждого. Кому важно чтоб кнопка обязательно отпустилась, пусть применяют триггеры. Но есть и много вариантов отпустить кнопку потом без нанесения ущерба. Это было лишь мое пожелание .. Нет дак нет.. Обидно, досадно, но ладно 🙂

    Алексей
    Участник

    Какая причина использовать именно шлюз Modbus?

    В моем случае шлюз исполняет доставку пакетов до сервера СКАДА. У меня имеются 5 устройств с ModBus-RTU и находятся далеко от сервера, но там имеется сеть. Я просто эти все устройства подключил к одной шине RS-485 а шлюзом передаю пакеты по сети как ModBus-TCP Master . Очень удобно.

    А что делает Moxa NPort ? По поиску интернета я так понял она просто конвертирует из RS-485 в RS-232 и так же передает по сети . Но в этом случае мне придется брать 2 штуки — 1 как передатчик и 2 — как приемник, при этом на сервере придется задействовать физически COM порт. Или я чего то не допонимаю ???

    С уважением Алексей

    • Ответ изменён 5 лет, 10 месяцев назад пользователем Алексей.
    Алексей
    Участник

    Доброго времени суток. Итак, я немного сам разобрался и вот что я сделал.

    Установил эмулятор МодБас от ARDSOFT и создал точно-такую же картину как и у меня, только вместо шлюза использовал свой рабочий комп. Запустил и пробовал всяко, полет нормальный и в логах не разу не увидел ничего про MBAP и прочего …

    Тут я понял что дело походу в шлюзе. Залез в настройки шлюза и стал играться с переменными временных тайм-оутов. В итоге я нашел переменную, от которой зависит появление ошибки «Некорректные данные MBAP Header!» , а именно :

    MSG TimeOut(ms) — которая по дефолту стояла 2000

    Что она означает я не в курсе — может из Вас кто — что подскажет. В итоге игрался и нашел значение в 700 — самый оптимал. 600 Ставишь вообще связь со шлюзом постоянно отваливается, 800 начинает появляться ошибка по MBAP .. Как то так.

    Думаю менять шлюз … На данный момент использую шлюз NetCom-6000 от китайской компании Fineco Electric, который достался мне с ихним же эл. счетчиком. Думаю купить tGW-725i от компании ICP DAS (https://ipc2u.ru/catalog/tgw-725i) — НЕ РЕКЛАМА, как Вы думаете или что посоветуете ?

    Всем спасибо ! Может кому помог, а может нет. Но причины я так и не выяснил, как бы такая же проблема не начла вываливать с новыми шлюзами …

    С уважением Алексей

    Алексей
    Участник

    Пожелание, я думаю оно многим поможет решить уйму проблем, а именно в редактор схем добавить кнопку с возвратом, которая будет содержать в себе 3 основных настриваемых параметра :

    1. При нажатии что и куда отправить
    2. Время удержания (до 10 сек , можно и больше) — некоторое оборудование требует нажатия до 10 сек, для того что бы что-то активизировалось.
    3. При отпускании что и куда отправить

    Примеров куча, но могу привести реальный :

    Имеется привод промывки фильтров холодной воды. установленный где-то в насосной и имеется релейный модуль, который работает по MD-BUS TCP.
    Для того что бы запустить привод нужно замкнуть его сухие контакты на 4 секунды минимум . Делать это удаленно можно чрез модуль, который замыкает контакты при отправке «1» и держит замкнутым пока не пошлешь на него «0» и привод не запуститься пока не отожмешь кнопку 🙂 Собственно вырисовывается алгоритм:

    1. При нажатии отправляем «1»
    2. Ждем 5 сек
    3. Отпускаем и отправляем «0»

    Как то так, спасибо за внимание . С уважением Алексей

    Алексей
    Участник

    Доброго времени суток дорогие формучане. Дабы не плодить темы по ошибке «Некорректные данные MBAP Header!» я решил написать свою проблему сюда.

    Имеются 2 КП. При работе одного КП (Насос №3) все хорошо, ответ приходит и так далее. Вот лог линии связи :

    2020-09-17 16:35:56 Установка TCP-соединения с 192.168.0.228:502
    
    2020-09-17 16:35:05 Сеанс связи с КП 4 "Насос №3", тип: KpModbus, адрес: 12
    Запрос значений группы элементов "Чтение"
    Отправка (12): 03 02 00 00 00 06 0C 03 00 66 00 01
    Приём (7/7): 03 02 00 00 00 05 0C
    Приём (4/4): 03 02 00 00
    OK!
    Запрос значений группы элементов "Чтение 2"
    Отправка (12): 03 03 00 00 00 06 0C 03 00 D3 00 03
    Приём (7/7): 03 03 00 00 00 09 0C
    Приём (8/8): 03 06 00 37 00 E7 02 EF
    OK!
    Запрос значений группы элементов "Чтение 3"
    Отправка (12): 03 04 00 00 00 06 0C 03 00 D7 00 02
    Приём (7/7): 03 04 00 00 00 07 0C
    Приём (6/6): 03 04 0F A5 00 EE
    OK!
    Запрос значений группы элементов "Чтение 4"
    Отправка (12): 03 05 00 00 00 06 0C 03 00 DB 00 03
    Приём (7/7): 03 05 00 00 00 09 0C
    Приём (8/8): 03 06 00 14 00 A9 00 49
    OK!

    Как только я добавляю второй КП (Насос №4), но его физически еще не подключив у меня соответственно валиться ошибка связи — это нормально . Вот продолжение лога все той же линии связи :

    2020-09-17 16:35:57 Сеанс связи с КП 6 "Насос №4", тип: KpModbus, адрес: 24
    Запрос значений группы элементов "Чтение"
    Отправка (12): 02 C5 00 00 00 06 18 03 00 66 00 01
    Приём (0/7): 
    Ошибка связи!
    Запрос значений группы элементов "Чтение"
    Отправка (12): 02 C6 00 00 00 06 18 03 00 66 00 01
    Приём (7/7): 02 C6 00 00 00 03 18
    Приём (2/2): 83 0A
    Ошибка устройства: [0A] GATEWAY PATH UNAVAILABLE!
    Запрос значений группы элементов "Чтение"
    Отправка (12): 02 C7 00 00 00 06 18 03 00 66 00 01
    Приём (0/7): 
    Ошибка связи!
    
    2020-09-17 16:36:01 Отключение от 192.168.0.228

    Но беда в другом ! Почему то показания первого КП (Насос №3) начинают давать сбой, а именно все в той же линии связи пишет следующее :

    2020-09-17 16:36:02 Установка TCP-соединения с 192.168.0.228:502
    
    2020-09-17 16:36:02 Сеанс связи с КП 4 "Насос №3", тип: KpModbus, адрес: 12
    Запрос значений группы элементов "Чтение"
    Отправка (12): 03 26 00 00 00 06 0C 03 00 66 00 01
    Приём (7/7): 03 26 00 00 00 03 18
    Некорректные данные MBAP Header!
    Запрос значений группы элементов "Чтение"
    Отправка (12): 03 27 00 00 00 06 0C 03 00 66 00 01
    Приём (7/7): 83 0A 03 27 00 00 00
    Некорректные данные MBAP Header!
    Запрос значений группы элементов "Чтение"
    Отправка (12): 03 28 00 00 00 06 0C 03 00 66 00 01
    Приём (7/7): 05 0C 03 02 00 00 03
    Некорректные данные MBAP Header!
    
    2020-09-17 16:36:04 Отключение от 192.168.0.228

    В этот момент соответственно я не вижу показаний. Пройдя несколько кругов с ошибкой связи второго КП, показания первого КП встают в норму . Пройдя пару циклов с нормальными показаниями, опять сбиваются.

    То есть получается что если в одной линии RS-485 будет подключено допустим 5 КП и одно из этих устройств будет отключено, то у меня будут вставать показания остальных 4 . Самое интересное, что если 2 КП подключены — то и показания все хорошо опрашиваются. Стоит только одно из них отключить, начинается свистопляска.

    Использую RTU устройства через ШЛЮЗ. Помогите пожалуйста решить проблему. Все выше советы я перепробовал. Пробовал заменить тестовый файл в данной теме выше KpModbus.dll — не работает. Использую версию SCADA 5.8.0

    С уважением Алексей

    в ответ на: Ошибка работы кнопки #14266
    Алексей
    Участник

    manjey73 , Спасибо. Так и сделаю наверно.

    в ответ на: Ошибка работы кнопки #14257
    Алексей
    Участник

    manjey73 , Спасибо . Значит буду приобретать плагин.

    в ответ на: Ошибка работы кнопки #14255
    Алексей
    Участник

    Ребята Всем огромнейшее спасибо, респект и уважуха. Все заработало, применил формулу : Val(301) > 0 ? 0 : 1
    Я просто нуб в этом языке С# , я так понимаю он смотрит значение входного канала , в моем случае 301 и если больше 0, то значение 0 становится 1 … Знак вопроса «?» это ответ условию я так понимаю .

    Дабы не плодить тему, хотелось бы усовершенствовать кнопку, а именно добавить функцию
    «автовозврата» , то есть при нажатии кнопки:

    1. Отправить команду «1»
    2. Сделать паузу 1 секунду
    3. Отправить команду «0»

    То есть с имитировать физическое нажатие кнопки на пульте 🙂

    Как нибудь можно такую формулу сделать ? Ну или в моем случае с применением вышеупомянутой формулы Val(301) > 0 ? 0 : 1

    1. Нажать кнопку
    2. Сделать паузу 1 секунду
    3. Нажать кнопку

    Спасибо всем !

    в ответ на: Ошибка работы кнопки #14238
    Алексей
    Участник

    Спасибо за ответы .

    manjey73 Проверял, я даже скрины приложил. С паролем все хорошо проходит в том то и дело, я уже не знаю куда копать.

    Romiros а можно по подробней ? Какую формулу писать ? Я Скрин с каналом управления скинул. Канал управления 301, при нажатии кнопки должно отправляться значение 1 . Рубильник справляется на ура.

    Есть еще идеи ?

    в ответ на: Настройка Шлюза с программой #8399
    Алексей
    Участник

    Да Михайл, сейчас все работает. Спасибо огромное всем за помощь. Щас буду продолжать, надо вывести теперь получаемое в нормальные цифры . Если что-то получаться не будет, можно в этой теме продолжить обсуждение или новую создать ?
    С уважением Алексей

    в ответ на: Настройка Шлюза с программой #8367
    Алексей
    Участник

    Romiros , да было добавлено RTU . Поменял на TCP и все заработало. Спасибо огромнейшее, что вы подтолкнули меня в эту сторону.

    С уважением Алексей

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