Просмотр полной версии : Как реализовать журнал с датой и счетчиком на ПР200?
Добрый день! Только вот вникаю в среду программирования, очень удобно. Купил себе для экспериментов ПР200. Логику реализовать очень просто, а вот с пониманием битов плохо.
И некоторые задачи для меня пока не решаемые.
Задача:
а) Необходимо вести журнал количество нажатий на педаль станка;
б) Необходимо вести журнал часов работы двигателя станка в день;
в) Необходимо объединить в один датированный журнал событий два значения время работы станка и количество нажатий.
Реально ли это реализовать на ПР 200 и сколько таких событий можно хранить в памяти прибора? Есть ли примеры, помогите новичку!?
55097
в памяти можно хранить мало. Ставьте Scada систему
на сколько мал? на три дня можно реализовать? пусть будет на три дня! На сколько мал?
23.05-18ч; 5200
23.05-18ч; 5200
23.05-18ч; 5200
Посмотрите в руководстве, сколько там энергонезависимых переменных вообще можно использовать.
На три дня точно можно. Но у вас будет на один день, 3 ячейки примерно памяти примерно. Если захотите выводить в Scada со временем, то 4-ре ячейки.
Вам надо. считать количество нажатий, количество включений и выключений двигателя для подсчета времени работы и триггер при переходе на начало суток для сохранения в журнал.
Ищите варианты реализации под ПР Журнал Аварий и пилите под себя. Можно сделать с выводом на экран соответственно.
Если задача только в этом стоит и основная программа управления не большая, то может влезет до 2-х месяцев, но скорее нет, но месяц должен гарантировано влезть.
Да, подобный журнал будет отъедать память и ресурсы и не слабо так. У меня журнал всего на 16-ть записей, программа практически никакая, выполняется примерно 7 мс
Сергей0308
16.05.2021, 20:47
на сколько мал? на три дня можно реализовать? пусть будет на три дня! На сколько мал?
23.05-18ч; 5200
23.05-18ч; 5200
23.05-18ч; 5200
Если определится с необходимой точностью для времени и диапазоном для количества нажатий и тщательно упаковать, чтобы энергонезависимая память без толку не расходовалась, например для сохранения значение номера месяца(диапазон 1-12) хватит четырёх бит(диапазон 0-15), а внутренние переменные 32-х битные, то есть в 8 раз больше значений можно поместить, короче, я так полагаю, на полгода может хватить энергонезависимой памяти ПР!
Вот один из проектов, где я плотно упаковывал данные:
55098
Но я сомневаюсь, что он Вам поможет, даже в соответствующих темах(была не одна подобная тема), где я подробно всё описывал, и Вы сначала с битами разберитесь, что к чему, только потом можно идти дальше!
Сергей0308 в один регистр можно упаковать время только игнорируя год, насколько помню.
Сергей0308
16.05.2021, 21:25
Сергей0308 в один регистр можно упаковать время только игнорируя год, насколько помню.
Неоднократно это расписывалось и не в одной теме, но здесь(насколько смог понять) не надо время с точностью до секунды писать, ежесуточно нужно писать день и месяц, всего 9 бит потребуется(4 бита для номера месяца и 5 бит для числа месяца), оставшиеся 23 бита можно на что-то другое потратить!
Если далее посчитать: если достаточно, точности измерения времени(минимальная ступенька) до десятых долей часа, то диапазон составит 0-240, ещё 8 бит потребуется(диапазон 0-255), останется 15 бит для счётчика нажатий, это диапазон 0-32767, мне так кажется достаточно одной внутренней переменной для хранения ежесуточных данных, в моём проекте(что выложил) матрица памяти на 32 ячейки, короче на месяц хватит и в проекте 6 таких макросов поместятся, то есть, как я и предполагал на полгода вполне хватает памяти ПР, точнее если её экономно использовать, если даже ничего не упаковывать и не экономить, всё равно без проблем хватит на месяц!
Или можно время писать с точностью(ступенькой) до минуты, потребуется 11 бит, для счётчика количества нажатий остаётся 12 бит, диапазон 0-4095, этого хватит на 3 нажатия в минуту на протяжении суток, надеюсь ТС этого хватит?!
Vladimir F
23.05.2021, 20:37
Подскажите пожалуйста как можно реализовать следующие. Работа насоса длится 10 минут затем на 10 минут останавливается. Как реализовать возможность корректировки времени с панели оператора.
Vladimir F использовать таймеры или Blink в которые можно вводить данные через блок записи в FB, блок записи пишет значения в блоки в миллисекундах.
Vladimir F
24.05.2021, 07:20
Спасибо попробуем. Тогда отпишусь.
Powered by vBulletin® Version 4.2.3 Copyright © 2025 vBulletin Solutions, Inc. All rights reserved. Перевод: zCarot