Страница 7 из 8 ПерваяПервая ... 5678 ПоследняяПоследняя
Показано с 61 по 70 из 78

Тема: ПЛК 110-60 [M02] - ограничение по Modbus через конфигуратор?

Комбинированный просмотр

Предыдущее сообщение Предыдущее сообщение   Следующее сообщение Следующее сообщение
  1. #1

    По умолчанию

    А зачем? Откуда Вы берете данные на 1000 dword?
    Это как минимум (если ПЛК работает как тупой коуплер) - 125 8-ми канальных аналоговых модулей или 1000 32-х канальных дискретных?
    Реальные задачи (а не забить лицензию мастерскады) на 1 ПЛК с таким количеством данных - это нонсенс. Даже крупные крейтовые системы стараются сделать с меньшим количеством I/O.
    32000 дискретных сигналов, это весть конвейер Автоваза раз 10 туда поместится! или 3-4 Ростовские АЭС (по 4 блока).

    Мало получить эти 1000 двордов/флоатов - надо ещё их обработать. если условно взять 20 операций на дворд (что соответствует простейшей аварийной логике), получается 20000 операций или 80 кБайт кода.
    Учитывая размер данных и кода в кэш мы не попадаем - 250мкс на обработку всех I/O только в режиме если дворд!=0 - включить сирену.
    А ежели 1000 ПИД-регуляторов запустить? Тут и Corei7 может поплохеть.

    Так что границы применимости ПЛК по конфигурации и размеру I/O и так находятся далеко за пределами здравого смысла.
    А уж ежели ПЛК, работающий с 32к DI/DO или с 1000 AI/AO вдруг откажет (топор в щит прилетит), последствия увидят на орбите.

    Не надо делать таких монстров, стройте распределённую систему.

    Ведь сейчас, сделав 1-й шаг и выведя 2к двордов в скаду вы получите ТЗ на их обработку, опрос и т.п. и внезапно окажется, что ПЛК не тянет такое количество лог. операций.
    Последний раз редактировалось Филоненко Владислав; 30.08.2017 в 19:34.
    Тролль-наседка, добрый, нежный и ласковый

  2. #2
    Пользователь
    Регистрация
    10.11.2014
    Адрес
    Санкт-Петербург
    Сообщений
    1,040

    По умолчанию

    Цитата Сообщение от Филоненко Владислав Посмотреть сообщение
    А зачем? Откуда Вы берете данные на 1000 dword?
    Это как минимум (если ПЛК работает как тупой коуплер) - 125 8-ми канальных аналоговых модулей или 1000 32-х канальных дискретных?
    Реальные задачи (а не забить лицензию мастерскады) на 1 ПЛК с таким количеством данных - это нонсенс. Даже крупные крейтовые системы стараются сделать с меньшим количеством I/O.
    32000 дискретных сигналов, это весть конвейер Автоваза раз 10 туда поместится! или 3-4 Ростовские АЭС (по 4 блока).

    Мало получить эти 1000 двордов/флоатов - надо ещё их обработать. если условно взять 20 операций на дворд (что соответствует простейшей аварийной логике), получается 20000 операций или 80 кБайт кода.
    Учитывая размер данных и кода в кэш мы не попадаем - 250мкс на обработку всех I/O только в режиме если дворд!=0 - включить сирену.
    А ежели 1000 ПИД-регуляторов запустить? Тут и Corei7 может поплохеть.

    Так что границы применимости ПЛК по конфигурации и размеру I/O и так находятся далеко за пределами здравого смысла.
    А уж ежели ПЛК, работающий с 32к DI/DO или с 1000 AI/AO вдруг откажет (топор в щит прилетит), последствия увидят на орбите.

    Не надо делать таких монстров, стройте распределённую систему.

    Ведь сейчас, сделав 1-й шаг и выведя 2к двордов в скаду вы получите ТЗ на их обработку, опрос и т.п. и внезапно окажется, что ПЛК не тянет такое количество лог. операций.


    Владислав, эта тема уже ни раз обсуждалась.

    Поясняю.

    На каждый аналоговый вход в СКАДе я создаю 10 тэгов:
    1. Текущее значение;
    2. Минимум диапазона датчика;
    3. Максимум диапазона датчика (п. 2-3 позволяют менять датчик например с 0-6 атм на 0-10 атм и ничего не перепрошивать, только в СКАДе поменять диапазон);
    4. Верхняя критическая граница;
    5. Верхняя предупредительная граница;
    6. Нижняя предупредительная граница;
    7. Нижняя критическая граница (п. 4-7 позволяют мне в контроллере формировать признаки выхода за границы и по ним строить технологические алгоритмы);
    8. Гистерезис снятия тревог;
    9. Тревога (битовая маска тревог выработанных в ПЛК и переданных на ВУ);
    10. Маска ввода/вывода технологических границ.

    Таким образом 1000 тэгов - это все лишь 100 аналоговых датчиков.
    У меня в системе, о которой идет речь, их 57.

    Но зато еще есть 14 насосов с частотными преобразователями, для каждого из них я передаю в СКАДу 10 тэгов:
    1. Состояние (включен, выключен, включается, выключается);
    2. Режим (Автоматический, ручной, от пульта ЧП и т.п.);
    3. Текущая частота;
    4. Заданная частота;
    5. Наработка насоса;
    6. Тревога (ошибки ЧП и прочее);
    7. Команда (включить, выключить, сбросить тревоги);
    8. Коэф. П;
    9. Коэф. И;
    10. Коэф. Д (п. 8-10 для работы ПИД-регулятора).

    Таким образом у меня 57 датчиков и 14 насосов - это уже 710 тэгов.
    Цикл старого ПЛК110 при обработке 57 датчиков, 14 насосов и прочей технологической логики - 7 мс.

  3. #3

    По умолчанию

    Цитата Сообщение от Спорягин Кирилл Посмотреть сообщение
    Владислав, эта тема уже ни раз обсуждалась.

    На каждый аналоговый вход в СКАДе я создаю 10 тэгов:
    1. Текущее значение;
    .....
    10. Маска ввода/вывода технологических границ.

    ....
    Реализую термоцикл: один шаг это - температура, время выхода, выдержка - и того 3 ворда (это если без влаги и битовой маски комутаций, тогда еще 2 ворда).
    99 программ и 99 шагов в одной программе и того - 3 х 99 х 99 = 29403 слова.

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

    вместо этого я за раз предоставляю доступ к пяти шагам и у меня получается: 3 х 5 + 1 номер страницы + 1 номер программы = 17 регистров вместо 29403.
    ранее делал реализацию где за раз доступ предоставляется тока к одному шагу и того получалось: 3 регистра шага + 1 номер шага +1 номер программы= 5 регистров...

  4. #4
    Пользователь
    Регистрация
    10.11.2014
    Адрес
    Санкт-Петербург
    Сообщений
    1,040

    По умолчанию

    Дополню.

    Есть проекты, которые успешно работают, когда в конфигурации в Modbus Slave у меня создано 230 Dword.
    Я не ожидал, что увеличение с 230 до 950 будет проблемой.

  5. #5
    Пользователь
    Регистрация
    10.11.2014
    Адрес
    Санкт-Петербург
    Сообщений
    1,040

    По умолчанию

    А то как же Владислав, я Союзом-то управлять буду (http://www.owen.ru/forum/showthread....l=1#post207260).

  6. #6
    Пользователь Аватар для capzap
    Регистрация
    25.02.2011
    Адрес
    Киров
    Сообщений
    10,620

    По умолчанию

    Цитата Сообщение от Спорягин Кирилл Посмотреть сообщение
    А то как же Владислав, я Союзом-то управлять буду (http://www.owen.ru/forum/showthread....l=1#post207260).
    в показанных Вами структурах половина тегов будет менятся раз в жизни. Даже если датчик какой то решили сменить, его диапазоны не поменяются от запроса к запросу, чтоб постоянно их передавать. Часть показаний вобще дальше скады может не уходить, архивирование, сигнализация всё это гораздо удобнее делать на ПК, а не в контроллере.
    Вам пытаются объяснить что путешествовать из Москвы во Владивосток удобнее на самолете, а не пешком, а Вы доказываете что мы вживем в свободной стране что хочу то и делаю
    Bad programmers worry about the code. Good programmers worry about data structures and their relationships

    среди успешных людей я не встречала нытиков
    Барбара Коркоран

  7. #7
    Пользователь
    Регистрация
    10.11.2014
    Адрес
    Санкт-Петербург
    Сообщений
    1,040

    По умолчанию

    Capzap, Вы не правы.

  8. #8
    Пользователь Аватар для capzap
    Регистрация
    25.02.2011
    Адрес
    Киров
    Сообщений
    10,620

    По умолчанию

    Я работаю через бибки, в моем распоряжении чуть больше 65 тысячи регистров для тегов, продолжайте искать свой предел через конфигуратор. За это время уже можно давно было перестроить свою программу и иметь ограничения только стандарта протокола

    ЗЫ обед закончился, продолжу
    в конфигураторе можно держать одну структуру для аналогово входа и одну для ПСЧ, дополнительно два регистра. В плк создать два массива структур, в скаде открыв окно для редактирования входа или псч, в контроллер посылается сигнал, изменяющий соответствующий регистр, по нему в слейв из программы пишется требуемый элемент массива, после редактирования либо по кнопке сохранить(подтверждение всегда являлось дополнительной безопасностью, защитой от дурака), либо по закрытию окна посылается обнуление регистра, по которому в программе плк из слейва записывается измененная структура в массив. Подобным способом я сокращу Ваш конфигуратор как минимум в 50 раз

    Как видите можно пойти как по сокращению элементов, так и увеличению
    Последний раз редактировалось capzap; 31.08.2017 в 11:41.
    Bad programmers worry about the code. Good programmers worry about data structures and their relationships

    среди успешных людей я не встречала нытиков
    Барбара Коркоран

  9. #9
    Пользователь
    Регистрация
    10.11.2014
    Адрес
    Санкт-Петербург
    Сообщений
    1,040

    По умолчанию

    Цитата Сообщение от capzap Посмотреть сообщение
    Я работаю через бибки, в моем распоряжении чуть больше 65 тысячи регистров для тегов, продолжайте искать свой предел через конфигуратор. За это время уже можно давно было перестроить свою программу и иметь ограничения только стандарта протокола

    ЗЫ обед закончился, продолжу
    в конфигураторе можно держать одну структуру для аналогово входа и одну для ПСЧ, дополнительно два регистра. В плк создать два массива структур, в скаде открыв окно для редактирования входа или псч, в контроллер посылается сигнал, изменяющий соответствующий регистр, по нему в слейв из программы пишется требуемый элемент массива, после редактирования либо по кнопке сохранить(подтверждение всегда являлось дополнительной безопасностью, защитой от дурака), либо по закрытию окна посылается обнуление регистра, по которому в программе плк из слейва записывается измененная структура в массив. Подобным способом я сокращу Ваш конфигуратор как минимум в 50 раз

    Как видите можно пойти как по сокращению элементов, так и увеличению
    Способ известный. Помню, когда был ограничен лицензией WinCC, использовал его. Хотя он имеет свои недостатки и дополнительные усилия при создании системы.
    Но сейчас уже проект сделан под другую структуру (идеологию).

  10. #10

    По умолчанию

    1. 99% всех задаваемых параметров легко упаковываются
    2. Выносить всё в скаду - зачем Вам ПЛК тогда, управляйте из скады напрямую модулями расширения.
    Любая система управления - это пирамида и на вершину идёт 3-5% информации. Для настроек лучше иметь доступ к проекту, чем рулить горой параметров по ModBus.
    Ну и как правильно заметили, для таких объёмов воспользуйтесь библиотекой, не придётся сканировать каждый цикл все 2000 параметров в поисках "что же поменялось..."
    Тролль-наседка, добрый, нежный и ласковый

Страница 7 из 8 ПерваяПервая ... 5678 ПоследняяПоследняя

Похожие темы

  1. Конфигуратор vs modbus.lib
    от Спорягин Кирилл в разделе ПЛК1хх [М02]
    Ответов: 156
    Последнее сообщение: 07.09.2016, 11:10
  2. Ответов: 5
    Последнее сообщение: 03.03.2016, 14:54
  3. Modbus TCP через конфигуратор
    от Newcomer в разделе Сетевые технологии
    Ответов: 11
    Последнее сообщение: 25.10.2015, 13:13
  4. Ответов: 4
    Последнее сообщение: 18.09.2012, 21:16
  5. Ответов: 10
    Последнее сообщение: 28.08.2012, 13:05

Ваши права

  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения
  •