|
Вопросы о программировании Вопросы, касающиеся программирования на FBD |
|
Опции темы | Поиск в этой теме |
10.03.2015, 11:15 | #1 |
Новичок
Регистрация: Mar 2015
Сообщения: 4
Благодарил(а): 0 раз(а)
Поблагодарили:
0 раз(а) в 0 сообщениях
|
про организацию массива для SMH 2G
Доброго времени суток, форумчане!
вопрос заключается в следующем: есть необходимость примерно раз в секунду обновлять массив с числами, который в последующем используется программно (размерность относительно небольшая - порядка 30 значений). Но (как я понял из мануала к SMH 2G) при использовании блока ARRAY / ARRAYII значения массива при отсутствии доп. модуля памяти (а его как раз нет) записываются в энергонезависимую память. И такие частые перезаписи могут быстро убить память. Конкретно суть вопроса: правильно ли я понимаю особенность работы блока ARRAY? если да (т.е. при каждом обновлении значения массива записываются в ПЗУ), то как решить озвученную проблему силами оперативной памяти без доп. модуля памяти? p.s. под рукой имеется так же ПЛК SMH 2Gi. Может у него как-то отличаются принципы аппаратного функционирования? из мануала к нему отличий не нашел... p.p.s. я новичок в сфере программирования на ПЛК, поэтому буду очень признателен подробным ответам) |
10.03.2015, 12:14 | #2 |
Сотрудник Segnetics
Регистрация: Jan 2006
Адрес: Russia, SPb
Сообщения: 18 160
Благодарил(а): 15 раз(а)
Поблагодарили:
665 раз(а) в 607 сообщениях
|
Ответ: про организацию массива для SMH 2G
Каким образом вы планируете обновлять массив? Что за данные в нём содержатся?
__________________ Программа делает то что написал программист, а не то что он хотел. Добро всегда побеждает зло. Кто победил - тот и добрый. |
10.03.2015, 14:51 | #3 | |
Новичок
Регистрация: Mar 2015
Сообщения: 4
Благодарил(а): 0 раз(а)
Поблагодарили:
0 раз(а) в 0 сообщениях
|
Ответ: про организацию массива для SMH 2G
Цитата:
имеется датчик влажности, опрос которого ведется через фиксированные промежутки времени (условно - 1 раз в секунду). Далее определяется линейный коэффициент угла наклона прямой изменения влажности: [(значение_новое - значение_предыдущее)/1сек]. после вычисления необходимо записать полученное значение в массив угловых коэффициентов каждого из N последних интервалов. N - постоянно и определяется параметрами объекта управления. Запись происходит по типу стека: на вершину положили новый элемент; элемент, находящийся на дне стека - удалился. (пока наиболее подходит для реализации блок EEPROM). Далее необходимо вычислить средний коэффициент: среднее арифметическое всех хранящихся элементов. После чего идет ряд вычислений, которые я уже сам смогу реализовать на блоках. Главный вопрос - получение этого среднего коэффициента. В конце после ряда вычислений необходимо реализовать управление на основе двухпозиционного реле с гистерезисом (но по-моему нечто похожее я увидел в разделе справки "Построение регуляторов") p.s. спасибо за ответ! |
|
10.03.2015, 15:28 | #4 | |
Сотрудник Segnetics
Регистрация: Jan 2006
Адрес: Russia, SPb
Сообщения: 18 160
Благодарил(а): 15 раз(а)
Поблагодарили:
665 раз(а) в 607 сообщениях
|
Ответ: про организацию массива для SMH 2G
Цитата:
Для получения дискретности в 1 сек при цикле программы в 100 мсек вам нужно на входе dt этого блока задать число 10. Для реализации формулы Fn = F + Fn-1 / X сделайте обратную связь с предыдущим шагом. __________________ Программа делает то что написал программист, а не то что он хотел. Добро всегда побеждает зло. Кто победил - тот и добрый. |
|
12.03.2015, 12:02 | #5 |
Новичок
Регистрация: Mar 2015
Сообщения: 4
Благодарил(а): 0 раз(а)
Поблагодарили:
0 раз(а) в 0 сообщениях
|
Ответ: про организацию массива для SMH 2G
СПАСИБО!
все действительно получилось! |