- Обязательно представиться на русском языке кириллицей (заполнить поле "Имя").
- Фиктивные имена мы не приветствуем. Ивановых и Пупкиных здесь уже достаточно.
- Не писать свой вопрос в первую попавшуюся тему - вместо этого создать новую тему.
- За поиск, предложение и обсуждение пиратского ПО и средств взлома - бан без предупреждения.
- Рекламу и частные объявления "куплю/продам/есть халтура" мы не размещаем ни на каких условиях.
- Перед тем как что-то написать - читать здесь и здесь, а студентам - обязательно здесь.
- Не надо писать в ЛС администраторам свои технические вопросы. Администраторы форума отлично знают как работает форум, а не все-все контроллеры, о которых тут пишут.
Нахождение среднего большого количества данных
-
- здесь недавно
- Сообщения: 14
- Зарегистрирован: 07 окт 2022, 14:55
- Имя: Александр Никулин
- Страна: Россия
- город/регион: Алтайский край, г Рубцовск
- Благодарил (а): 8 раз
Нахождение среднего большого количества данных
Приветствую, коллеги!
Начинающий инженер АСУ ТП, поэтому вопрос может показаться глупым, а также возможно повторяется.
Установили плотномер, подключил его к ПЛК (S7 300).
Нужно написать программу, которая будет вычислять среднее значение плотности от начала подачи раствора до текущего момента.
Помню была такая формула, но не помню как называется и не представляю как её реализовать в TIAportal 12 sp1.
Помогите, пожалуйста, разобраться.
Заранее благодарю за помощь.
Начинающий инженер АСУ ТП, поэтому вопрос может показаться глупым, а также возможно повторяется.
Установили плотномер, подключил его к ПЛК (S7 300).
Нужно написать программу, которая будет вычислять среднее значение плотности от начала подачи раствора до текущего момента.
Помню была такая формула, но не помню как называется и не представляю как её реализовать в TIAportal 12 sp1.
Помогите, пожалуйста, разобраться.
Заранее благодарю за помощь.
-
- здесь недавно
- Сообщения: 14
- Зарегистрирован: 07 окт 2022, 14:55
- Имя: Александр Никулин
- Страна: Россия
- город/регион: Алтайский край, г Рубцовск
- Благодарил (а): 8 раз
-
- эксперт
- Сообщения: 1112
- Зарегистрирован: 09 фев 2011, 11:32
- Имя: Дитрих Евгений Линусович
- город/регион: Донецк
- Благодарил (а): 323 раза
- Поблагодарили: 218 раз
Нахождение среднего большого количества данных
Конец расчета чем-то ограничен (бесконечный массив)? Или скользящее среднее на заданное к-во выборок устроит? Второе существенно снижает загрузку процессора (время цикла практически не меняется, если сделать правильно).nikulin_aleks писал(а): ↑07 окт 2022, 15:17...будет вычислять среднее значение плотности от начала подачи раствора до текущего момента
_______________________________________________
Узкая специализация в широком смысле этого слова ведет к широкой идиотизации в узком смысле этого слова . (С) Бернард Шоу
Узкая специализация в широком смысле этого слова ведет к широкой идиотизации в узком смысле этого слова . (С) Бернард Шоу
-
- здесь недавно
- Сообщения: 14
- Зарегистрирован: 07 окт 2022, 14:55
- Имя: Александр Никулин
- Страна: Россия
- город/регион: Алтайский край, г Рубцовск
- Благодарил (а): 8 раз
Нахождение среднего большого количества данных
Не совсем Вас понимаю :(
Данные с плотномера будут приходить с интервалом 1 секунда, соответственно каждую секунду необходимо получать среднее значение плотности с начала работы и по текущий момент, работа длится от 15 минут до нескольких часов (2-6)
Не судите строго - я только учусь!
-
- осмотрелся
- Сообщения: 166
- Зарегистрирован: 24 янв 2018, 11:18
- Имя: Антон
- Страна: Россия
- город/регион: Калининград
- Благодарил (а): 26 раз
- Поблагодарили: 27 раз
Нахождение среднего большого количества данных
А далее это вычисляемое среднее значение будет как-то использоваться в ПЛК?nikulin_aleks писал(а): ↑09 ноя 2022, 12:09 Данные с плотномера будут приходить с интервалом 1 секунда, соответственно каждую секунду необходимо получать среднее значение плотности с начала работы и по текущий момент, работа длится от 15 минут до нескольких часов (2-6)
-
- почётный участник форума
- Сообщения: 1041
- Зарегистрирован: 29 апр 2014, 09:57
- Имя: Рыбкин Владимир Геннадьевич
- Страна: Россия
- город/регион: Тверь
- Благодарил (а): 55 раз
- Поблагодарили: 134 раза
Нахождение среднего большого количества данных
Изначально всё просто: считаете сумму всех приходов, количество приходов и делите одно на другое. Главное - чтобы не было переполнения сумматора. Но подозреваю, что есть нюансы требований к результату расчёта, которые вы пока от нас скрываете.nikulin_aleks писал(а): ↑09 ноя 2022, 12:09 Данные с плотномера будут приходить с интервалом 1 секунда, соответственно каждую секунду необходимо получать среднее значение плотности с начала работы и по текущий момент, работа длится от 15 минут до нескольких часов (2-6)
-
- эксперт
- Сообщения: 1621
- Зарегистрирован: 06 янв 2016, 19:45
- Имя: Петров В.Л.
- Страна: Россия
- город/регион: Красноярск
- Благодарил (а): 70 раз
- Поблагодарили: 190 раз
Нахождение среднего большого количества данных
Не все так просто. С ростом базы (количества значение) изменения среднего становятся все менее и менее заметными. В приведенном выше топике, я выкладывал формулу рекурсивного вычисления среднего СРi = F(СРi-1). Там товарищ, заявил, что она какая то не такая, хотя с точки зрения математики эти формулы абсолютно эквивалентны. Просто человек нарвался на эффект большой базы и удивился. Поясняю на пальцах, если у вас значение лежит в диапазоне 0 - 10, и вы уже обработали 1000 значений, получив скажем среднее значение 7. То 1001 значение сможет внести изменение в уже накопленное среднее грубо говоря в 0.5%, а если 10000 значение, то 0.05%. И тут определяющим является - для чего Вам это среднее нужно. Если для оперативного контроля плотности, то велком - скользящее среднее на выборке 10 - 20 значений например, если для проверки справочник физических свойств - ну тогда чем больше тем лучше, если для оценки плотности конкретной партии продукта - где то посредине, ближе ко времени использования данного объема.
Извиняюсь за много букв.
Отправлено спустя 15 минут 27 секунд:
Пардон, оптимистично прикинул, на самом деле получается еще меньше 0.1% и 0.01%
Извиняюсь за много букв.
Отправлено спустя 15 минут 27 секунд:
Пардон, оптимистично прикинул, на самом деле получается еще меньше 0.1% и 0.01%
-
- здесь недавно
- Сообщения: 14
- Зарегистрирован: 07 окт 2022, 14:55
- Имя: Александр Никулин
- Страна: Россия
- город/регион: Алтайский край, г Рубцовск
- Благодарил (а): 8 раз
Нахождение среднего большого количества данных
На данный момент только передача в WinCC, а дальше неизвестноNewOrdered писал(а): ↑10 ноя 2022, 10:56 А далее это вычисляемое среднее значение будет как-то использоваться в ПЛК?
Отправлено спустя 2 минуты 25 секунд:
Нюансы требований к результату расчёта возможно есть, но мне они пока неизвестны
Отправлено спустя 4 минуты 7 секунд:
Это понятно, тем более плотность примерно одна +/-
Не судите строго - я только учусь!
-
- осмотрелся
- Сообщения: 166
- Зарегистрирован: 24 янв 2018, 11:18
- Имя: Антон
- Страна: Россия
- город/регион: Калининград
- Благодарил (а): 26 раз
- Поблагодарили: 27 раз
Нахождение среднего большого количества данных
Я к тому что если эти расчеты не требуются для оперативного управления линией/установкой, то может и нет смысла городить их в ПЛК. Архивируйте мгновенные значения плотности (или что у вас там) из ПЛК на верхний уровень. А потом уже в статике занимайтесь обработкой этого массива (среднее по часам, за смену и пр) например экселем или каким-либо другим средством построения отчетов.nikulin_aleks писал(а): ↑13 ноя 2022, 06:01 На данный момент только передача в WinCC, а дальше неизвестно