1. Обязательно представиться на русском языке кириллицей (заполнить поле "Имя").
  2. Фиктивные имена мы не приветствуем. Ивановых и Пупкиных здесь уже достаточно.
  3. Не надо писать свой вопрос в первую попавшуюся тему - всегда лучше создать новую тему.
  4. За поиск, предложение и обсуждение пиратского ПО и средств взлома - бан без предупреждения. Непонятно? - Читать здесь.
  5. Рекламу и частные объявления "куплю/продам/есть халтура" мы не размещаем ни на каких условиях.
  6. Перед тем как что-то написать - читать здесь, а затем здесь и здесь.
  7. Не надо писать в ЛС администраторам свои технические вопросы. Администраторы форума отлично знают как работает форум, а не все-все контроллеры, о которых тут пишут.

Массивы в TIA Portal

ПЛК SIMATIC (S7-200, S7-1200, S7-300, S7-400, S7-1500, ET200)

Модератор: Глоб.модераторы

Ответить
Аватара пользователя

Nicolayy
не первый раз у нас
не первый раз у нас
Сообщения: 318
Зарегистрирован: 14 фев 2014, 11:55
Имя: Николай
Страна: Россия
Благодарил (а): 16 раз
Поблагодарили: 72 раза

Массивы в TIA Portal

Сообщение Nicolayy »

Михайло писал(а): 10 авг 2021, 09:27 Я ж вижу, что вы не имели опыта
...........
VADR писал(а): 09 авг 2021, 17:39 Вот читаю и думаю: это холивар или изящный троллинг? :)
+100 :good:

Михайло
эксперт
эксперт
Сообщения: 3643
Зарегистрирован: 10 ноя 2009, 04:58
Имя: Толмачев Михаил Алексеевич
город/регион: г. Чехов, МО
Благодарил (а): 8 раз
Поблагодарили: 286 раз

Массивы в TIA Portal

Сообщение Михайло »

Вот он, троллинг только начался, а до этого был холивар. :lol:

Автор темы
ZETs
здесь недавно
здесь недавно
Сообщения: 55
Зарегистрирован: 14 июл 2020, 04:29
Имя: Евгений
Страна: Россия
город/регион: Чита
Благодарил (а): 14 раз

Массивы в TIA Portal

Сообщение ZETs »

Nicolayy писал(а): 08 авг 2021, 21:28 И да, циклы - это не есть хорошо, потому что это притормаживает время выполнения общего цикла программы.
Т.е. если надо перебирать какой-то большой массив данных, то нужно уйти от цикла в его классическом представлении.
На ПК можно задействовать параллельные (поточные) вычисления или таймер (т.е. прерывание по времени по сути), на ПЛК можно использовать прерывания или же использовать просто сам основной цикл программы для перебора элементов (что еще проще в реализации).
Спасибо за совет.
Интересный момент "использовать просто сам основной цикл программы для перебора элементов"
Не поделитесь каким нибудь не большим примером?
Век живи век учись !!!
Очень интересно посмотреть. Раньше так не делал ))) может просто не было в моей практике больших массивов )))
Аватара пользователя

Nicolayy
не первый раз у нас
не первый раз у нас
Сообщения: 318
Зарегистрирован: 14 фев 2014, 11:55
Имя: Николай
Страна: Россия
Благодарил (а): 16 раз
Поблагодарили: 72 раза

Массивы в TIA Portal

Сообщение Nicolayy »

ZETs писал(а): 01 окт 2021, 00:41 Интересный момент "использовать просто сам основной цикл программы для перебора элементов"
Не поделитесь каким нибудь не большим примером?
Так это же самый простой способ. Т.е. просто хранишь в каком-нибудь DB переменную типа int - это текущий индекс массива, и один раз за цикл программы делаешь этот индекс на единицу больше. А действия, которые должны выполняться в цикле FOR, выполняешь без всяких циклов, а просто применительно к одному элементу - тому, который под тем текущим индексом. Т.е. получается, что ты перебираешь элементы массива по одному за цикл программы.

Автор темы
ZETs
здесь недавно
здесь недавно
Сообщения: 55
Зарегистрирован: 14 июл 2020, 04:29
Имя: Евгений
Страна: Россия
город/регион: Чита
Благодарил (а): 14 раз

Массивы в TIA Portal

Сообщение ZETs »

Клёвая идея )))
Ни разу так не делал. Век живи век учись!!!
На следующей неделе на насосной опробую ))))

На циклах 3 насоса (основной, дополнительный, резервный ) работа по уровню с отключением по аварии и бла бла бла вышла приблизительно 20 строчек.
Сейчас код можно будет подрезать )))
Аватара пользователя

Nicolayy
не первый раз у нас
не первый раз у нас
Сообщения: 318
Зарегистрирован: 14 фев 2014, 11:55
Имя: Николай
Страна: Россия
Благодарил (а): 16 раз
Поблагодарили: 72 раза

Массивы в TIA Portal

Сообщение Nicolayy »

ZETs, ну, я не думаю, что для задачи с насосными станциями это особо актуально. Я обычно так делаю в задачах, где DB является по сути хранилищем таблиц баз данных, инужно получить по ним какой-то результат или выборку сделать. Т.е. когда в DB массив на тысячи элементов, их невозможно перебирать в простом цикле, не нарушив нормальное выполнение основного алгоритма программы.

Автор темы
ZETs
здесь недавно
здесь недавно
Сообщения: 55
Зарегистрирован: 14 июл 2020, 04:29
Имя: Евгений
Страна: Россия
город/регион: Чита
Благодарил (а): 14 раз

Массивы в TIA Portal

Сообщение ZETs »

Я просто обкатаю этот способ )))

Andreywys
освоился
освоился
Сообщения: 299
Зарегистрирован: 15 сен 2016, 18:47
Имя: Андрей
Страна: Россия
город/регион: Вологда
Благодарил (а): 20 раз
Поблагодарили: 78 раз

Массивы в TIA Portal

Сообщение Andreywys »

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

POV
авторитет
авторитет
Сообщения: 800
Зарегистрирован: 12 авг 2008, 11:05
Имя: Патрушев Олег Валерьевич
Страна: Россия
город/регион: г. Н.Новгород
Благодарил (а): 110 раз
Поблагодарили: 158 раз

Массивы в TIA Portal

Сообщение POV »

Andreywys писал(а): 01 окт 2021, 16:31 Нужно учитывать, что в процессе обработки могут измениться состояния входов.
Простите, а это тут при чем?

Andreywys
освоился
освоился
Сообщения: 299
Зарегистрирован: 15 сен 2016, 18:47
Имя: Андрей
Страна: Россия
город/регион: Вологда
Благодарил (а): 20 раз
Поблагодарили: 78 раз

Массивы в TIA Portal

Сообщение Andreywys »

POV писал(а): 01 окт 2021, 18:54
Andreywys писал(а): 01 окт 2021, 16:31 Нужно учитывать, что в процессе обработки могут измениться состояния входов.
Простите, а это тут при чем?
Имею ввиду, что нужно не забывать, что в процессе расчетов данные могут измениться, поэтому так можно обрабатывать нечувствительные к этому данные или строить алгоритм так, чтобы это не приводило к неправильной работе программы.

Pvalp
здесь недавно
здесь недавно
Сообщения: 26
Зарегистрирован: 25 фев 2014, 13:10
Имя: Прокопенко Владимир Алексеевич
Поблагодарили: 2 раза

Массивы в TIA Portal

Сообщение Pvalp »

Добрый день.
Есть рабочая программа, созданная в tia portal, есть в программе DB-шка, в ней находится массив данных array [0...30], необходимо увеличить этот массив - array [0...40], после перекомпиляции DB-шки и загрузки в контроллер не повлияет ли это на работоспособность рабочей программы? В блоке DB лучше при этом снять флажок "Optimized block access", или оставить блоке DB оптимизированным?
Аватара пользователя

VADR
администратор
администратор
Сообщения: 4903
Зарегистрирован: 25 июл 2008, 07:12
Имя: Диев Александр Васильевич
Страна: Россия
город/регион: г. Сегежа, Карелия
Благодарил (а): 236 раз
Поблагодарили: 425 раз

Массивы в TIA Portal

Сообщение VADR »

Как минимум - всё, что ссылается на эту DB надо будет перекомпилировать и перезаливать в контроллер.
Повторное использование кода не отменяет повторного использования мозга при его повторном использовании.

Pvalp
здесь недавно
здесь недавно
Сообщения: 26
Зарегистрирован: 25 фев 2014, 13:10
Имя: Прокопенко Владимир Алексеевич
Поблагодарили: 2 раза

Массивы в TIA Portal

Сообщение Pvalp »

VADR писал(а): 24 окт 2024, 16:05 Как минимум - всё, что ссылается на эту DB надо будет перекомпилировать и перезаливать в контроллер.
:thankyou:
Ответить

Вернуться в «Simatic TIA Portal»