Segnetics

Вернуться   Segnetics > Форум Segnetics > Вопросы о SMH-2G(i)

Вопросы о SMH-2G(i) Здесь всё, что касается работы контроллера SMH-2G(i).

Ответ
 
Опции темы Поиск в этой теме
Старый 21.05.2015, 09:33   #1
smersh
Новичок
 
Регистрация: Jun 2009
Сообщения: 13
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
По умолчанию Сохранение в энергонезависимую память

Есть задача - отсчитывать заданное время в обратном порядке, по окончанию - выполнять некоторое действие.
При этом если пропало питание, то после включения счет должен продолжится с того же места. По достижению нуля - сброс, и инициализация значением заданного с панели. Не могу сообразить как решить эту задачу в SMLogix. Прошу помочь.
P.S. Я видел пример энергонезависимого счетчика, но он мне не совсем подходит.
smersh вне форума   Ответить с цитированием
Старый 21.05.2015, 11:50   #2
Arsie
Сотрудник Segnetics
 
Аватара для Arsie
 
Регистрация: Jan 2006
Адрес: Russia, SPb
Сообщения: 18 117
Благодарил(а): 15 раз(а)
Поблагодарили: 660 раз(а) в 604 сообщениях
По умолчанию Ответ: Сохранение в энергонезависимую память

Цитата:
Сообщение от smersh Посмотреть сообщение
Есть задача - отсчитывать заданное время в обратном порядке, по окончанию - выполнять некоторое действие.
При этом если пропало питание, то после включения счет должен продолжится с того же места. По достижению нуля - сброс, и инициализация значением заданного с панели. Не могу сообразить как решить эту задачу в SMLogix. Прошу помочь.
P.S. Я видел пример энергонезависимого счетчика, но он мне не совсем подходит.
Это не задача, это выбранная вами реализация задачи.

А в чём состоит задача? Зачем считать время, которое по факту не является временем?


__________________
Программа делает то что написал программист, а не то что он хотел.

Добро всегда побеждает зло. Кто победил - тот и добрый.
Arsie сейчас на форуме   Ответить с цитированием
Старый 21.05.2015, 12:34   #3
smersh
Новичок
 
Регистрация: Jun 2009
Сообщения: 13
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
По умолчанию Ответ: Сохранение в энергонезависимую память

Мне надо через заданное время перевести исполнительные механизмы в другой режим.
При этом время до конца нужно отображать на дисплее (часы-минуты), и если исчезнет питание - продолжить счет с того же места. Время может меняться оператором с панели.
Я посчитал что на счетчике минут это сделать проще. Если есть другие решения - прошу их подсказать.
P.S. Сразу оговорюсь - не хотелось бы использовать решения основанные на реальном времени, так как не хочется полагаться на батарейку.
smersh вне форума   Ответить с цитированием
Старый 21.05.2015, 13:03   #4
Arsie
Сотрудник Segnetics
 
Аватара для Arsie
 
Регистрация: Jan 2006
Адрес: Russia, SPb
Сообщения: 18 117
Благодарил(а): 15 раз(а)
Поблагодарили: 660 раз(а) в 604 сообщениях
По умолчанию Ответ: Сохранение в энергонезависимую память

Цитата:
Сообщение от smersh Посмотреть сообщение
Мне надо через заданное время перевести исполнительные механизмы в другой режим.
Если через заданное время, то останов счётчика на время выключения питания не нужен. Это противоречит вашей задаче.

Напоминаю: "Мне надо через заданное время...".

Либо вы неправильно понимаете свою задачу, либо неправильно рассказываете мне о ней.

Если не полагаться на батарейку, то вы в тупике. Любой счёт будет останавливаться при потере питания контроллером.


__________________
Программа делает то что написал программист, а не то что он хотел.

Добро всегда побеждает зло. Кто победил - тот и добрый.
Arsie сейчас на форуме   Ответить с цитированием
Старый 21.05.2015, 14:44   #5
smersh
Новичок
 
Регистрация: Jun 2009
Сообщения: 13
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
По умолчанию Ответ: Сохранение в энергонезависимую память

Вы меня не правильно поняли.
Цитата:
Сообщение от smersh Посмотреть сообщение
При этом если пропало питание, то после включения счет должен продолжится с того же места.
То есть например, в момент когда пропал свет до конца процесса оставалось 15 минут, то когда свет снова появится счетчик также должен продолжить работу с 15 минут. То есть в счетчик должно загрузится число 15.
smersh вне форума   Ответить с цитированием
Старый 21.05.2015, 15:09   #6
Arsie
Сотрудник Segnetics
 
Аватара для Arsie
 
Регистрация: Jan 2006
Адрес: Russia, SPb
Сообщения: 18 117
Благодарил(а): 15 раз(а)
Поблагодарили: 660 раз(а) в 604 сообщениях
По умолчанию Ответ: Сохранение в энергонезависимую память

Цитата:
Сообщение от smersh Посмотреть сообщение
Вы меня не правильно поняли.

То есть например, в момент когда пропал свет до конца процесса оставалось 15 минут, то когда свет снова появится счетчик также должен продолжить работу с 15 минут. То есть в счетчик должно загрузится число 15.
Вот две ваши фразы:

1) "Мне надо через заданное время перевести исполнительные механизмы в другой режим"

2) "в момент когда пропал свет до конца процесса оставалось 15 минут, то когда свет снова появится счетчик также должен продолжить работу с 15 минут"

Это две взаимоисключающие фразы.

Почему я заостряю на этом внимание. Всякий раз, когда человек говорит про одну задачу несколько разные вещи, это означает в 99 случаев из 100, что этот человек неправильно понимает свою задачу.

Именно поэтому я вас тут мурыжу. Что за техпроцесс? Что делает то оборудование, которое вам нужно включить? С чего вы взяли, что при выключенном питании нужно останавливать счёт?


__________________
Программа делает то что написал программист, а не то что он хотел.

Добро всегда побеждает зло. Кто победил - тот и добрый.
Arsie сейчас на форуме   Ответить с цитированием
Старый 21.05.2015, 15:23   #7
smersh
Новичок
 
Регистрация: Jun 2009
Сообщения: 13
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
По умолчанию Ответ: Сохранение в энергонезависимую память

Цитата:
Сообщение от Arsie Посмотреть сообщение
Именно поэтому я вас тут мурыжу. Что за техпроцесс? Что делает то оборудование, которое вам нужно включить? С чего вы взяли, что при выключенном питании нужно останавливать счёт?
Потому что при выключенном питании не идет нагрев ТЭНов. Они должны греться на протяжении определенного количества времени.
smersh вне форума   Ответить с цитированием
Старый 21.05.2015, 15:53   #8
младшой
Senior Member
 
Регистрация: May 2010
Адрес: Москва
Сообщения: 863
Благодарил(а): 4 раз(а)
Поблагодарили: 86 раз(а) в 67 сообщениях
По умолчанию Ответ: Сохранение в энергонезависимую память

ТЭНы без питания скорее всего будут остывать.
Вам не надо компенсировать это время дополнительным нагревом?

Можно в начале техпроцесса "запомнить" время. В процессе сравнивать текущее время с начальным. Точность будет порядка 1 секунды, но вряд ли вам нужно точнее.
младшой сейчас на форуме   Ответить с цитированием
Старый 21.05.2015, 16:06   #9
smersh
Новичок
 
Регистрация: Jun 2009
Сообщения: 13
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
По умолчанию Ответ: Сохранение в энергонезависимую память

Цитата:
Сообщение от младшой Посмотреть сообщение
ТЭНы без питания скорее всего будут остывать.
Вам не надо компенсировать это время дополнительным нагревом?
Можно это не учитывать.

Цитата:
Сообщение от младшой Посмотреть сообщение
Можно в начале техпроцесса "запомнить" время. В процессе сравнивать текущее время с начальным. Точность будет порядка 1 секунды, но вряд ли вам нужно точнее.
Как я уже писал - не хотелось бы привязываться к часам и батарейке
smersh вне форума   Ответить с цитированием
Старый 21.05.2015, 16:22   #10
младшой
Senior Member
 
Регистрация: May 2010
Адрес: Москва
Сообщения: 863
Благодарил(а): 4 раз(а)
Поблагодарили: 86 раз(а) в 67 сообщениях
По умолчанию Ответ: Сохранение в энергонезависимую память

Цитата:
Как я уже писал - не хотелось бы привязываться к часам и батарейке
Извините, невнимательно читал.

Тогда попробуйте блок Device (Kernel). На нем есть выход PowerTrouble. По сигналу с него сохраняйте состояние счетчика в память.
Ну или чтоб совсем надежно, сохраняйте каждую секунду (или 2, или 5, или... в зависимости от требуемой точности).

А еще можно организовать для контроллера ИБП и подавать на вход контроллера сигнал, если случилась беда с питанием, чтобы контроллер точно успел все сохранить, корректно завершить счет.
младшой сейчас на форуме   Ответить с цитированием
Старый 21.05.2015, 16:35   #11
smersh
Новичок
 
Регистрация: Jun 2009
Сообщения: 13
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
По умолчанию Ответ: Сохранение в энергонезависимую память

Я планирую сохранять каждую минуту - когда изменяется значение счетчика.
Мне непонятно другое - как заставить счетчик при старте инициализироваться этим значением. Кроме того, как я уже писал мне нужно чтобы значение счетчика после сброса (то есть когда запустится новый цикл сушки) инициализировалось бы значением вводимым оператором с панели.
Не могли бы вы набросать пример такой схемы?
smersh вне форума   Ответить с цитированием
Старый 21.05.2015, 17:45   #12
Arsie
Сотрудник Segnetics
 
Аватара для Arsie
 
Регистрация: Jan 2006
Адрес: Russia, SPb
Сообщения: 18 117
Благодарил(а): 15 раз(а)
Поблагодарили: 660 раз(а) в 604 сообщениях
По умолчанию Ответ: Сохранение в энергонезависимую память

Цитата:
Сообщение от smersh Посмотреть сообщение
Я планирую сохранять каждую минуту - когда изменяется значение счетчика.

Мне непонятно другое - как заставить счетчик при старте инициализироваться этим значением.

Давайте так. Я один раз сделаю за вас вашу работу. Но сделаю это только один раз. Если вы плохо опишете нужное вам действие - винить никого, кроме себя не останется. Договорились?

Что именно мне для вас сделать?


__________________
Программа делает то что написал программист, а не то что он хотел.

Добро всегда побеждает зло. Кто победил - тот и добрый.

Последний раз редактировалось Arsie, 21.05.2015 в 18:20
Arsie сейчас на форуме   Ответить с цитированием
Старый 22.05.2015, 09:32   #13
smersh
Новичок
 
Регистрация: Jun 2009
Сообщения: 13
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
По умолчанию Ответ: Сохранение в энергонезависимую память

Если упрощенно, то задача - сохранять значения счетчика при выключении питания, и загружать последнее значение при запуске. При сбросе, счетчик должен инициализироваться значением заданным оператором.
Я примерно понял как решить эту задачу - скриншот в приложении. Прошу посмотреть верно ли сделано.
Изображения
Тип файла: png 2015-05-22_8-31-56.png (21.9 Кбайт, 137 просмотров)
smersh вне форума   Ответить с цитированием
Старый 22.05.2015, 12:30   #14
Arsie
Сотрудник Segnetics
 
Аватара для Arsie
 
Регистрация: Jan 2006
Адрес: Russia, SPb
Сообщения: 18 117
Благодарил(а): 15 раз(а)
Поблагодарили: 660 раз(а) в 604 сообщениях
По умолчанию Ответ: Сохранение в энергонезависимую память

Цитата:
Сообщение от smersh Посмотреть сообщение
Если упрощенно
Сама загрузка счётчика из памяти выполнена корректно. Счёт в этой схеме хоть и возможен, но полностью отсутствует предзагрузка счётчика, что может поставить под угрозу правильность выдержки времени, если предыдущий цикл не закончен. Также будет проблема при изменении время выдержки - в любом случае придётся ждать окончания предыдущего цикла, т.к. цикл энергонезависим.

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

------------------

Прилагаю верную программу. Она не сохраняет значение счётчика при выключении питания, но она помнит последнее значение счётчика и при включении питания продолжает счёт.

При этом счётчик загружается заново при новом сигнале "Счёт". Отсчитав выдержку, счётчик останавливается, выдаёт сигнал окончания счёта и ждёт нового запуска. Прохождение ложного сигнала окончания счёта заблокировано.
Изображения
Тип файла: png Безымянный.PNG (22.1 Кбайт, 140 просмотров)
Вложения
Тип файла: psl Untitled.psl (15.0 Кбайт, 53 просмотров)


__________________
Программа делает то что написал программист, а не то что он хотел.

Добро всегда побеждает зло. Кто победил - тот и добрый.
Arsie сейчас на форуме   Ответить с цитированием
Старый 22.05.2015, 14:32   #15
smersh
Новичок
 
Регистрация: Jun 2009
Сообщения: 13
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
По умолчанию Ответ: Сохранение в энергонезависимую память

Цитата:
Сообщение от Arsie Посмотреть сообщение
Счёт в этой схеме хоть и возможен, но полностью отсутствует предзагрузка счётчика, что может поставить под угрозу правильность выдержки времени, если предыдущий цикл не закончен.
Не могли бы вы пояснить это. Что значит "предзагрузка счетчика"?
Под циклом вы имеете ввиду технологический цикл или цикл контроллера?

Цитата:
Сообщение от Arsie Посмотреть сообщение
Прилагаю верную программу. Она не сохраняет значение счётчика при выключении питания, но она помнит последнее значение счётчика и при включении питания продолжает счёт.
Спасибо. Если мой вариант счетчика не заработает, то я воспользуюсь вашим.
smersh вне форума   Ответить с цитированием
Старый 22.05.2015, 14:37   #16
Arsie
Сотрудник Segnetics
 
Аватара для Arsie
 
Регистрация: Jan 2006
Адрес: Russia, SPb
Сообщения: 18 117
Благодарил(а): 15 раз(а)
Поблагодарили: 660 раз(а) в 604 сообщениях
По умолчанию Ответ: Сохранение в энергонезависимую память

Цитата:
Сообщение от smersh Посмотреть сообщение
Не могли бы вы пояснить это. Что значит "предзагрузка счетчика"?
Под циклом вы имеете ввиду технологический цикл или цикл контроллера?
Цикл счёта. От начала выдержки времени до её окончания.


__________________
Программа делает то что написал программист, а не то что он хотел.

Добро всегда побеждает зло. Кто победил - тот и добрый.
Arsie сейчас на форуме   Ответить с цитированием
Старый 22.05.2015, 15:56   #17
smersh
Новичок
 
Регистрация: Jun 2009
Сообщения: 13
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
По умолчанию Ответ: Сохранение в энергонезависимую память

Теперь понял.
Вариант который вы предложили - как я заметил он использует обращение к текущему времени. Но я так понимаю если батарея сядет, то он все равно будет работать? Часы обнуляться, но будут продолжать считать?
smersh вне форума   Ответить с цитированием
Старый 22.05.2015, 16:02   #18
Arsie
Сотрудник Segnetics
 
Аватара для Arsie
 
Регистрация: Jan 2006
Адрес: Russia, SPb
Сообщения: 18 117
Благодарил(а): 15 раз(а)
Поблагодарили: 660 раз(а) в 604 сообщениях
По умолчанию Ответ: Сохранение в энергонезависимую память

Цитата:
Сообщение от smersh Посмотреть сообщение
Теперь понял.
Вариант который вы предложили - как я заметил он использует обращение к текущему времени. Но я так понимаю если батарея сядет, то он все равно будет работать? Часы обнуляться, но будут продолжать считать?
Естественно.


__________________
Программа делает то что написал программист, а не то что он хотел.

Добро всегда побеждает зло. Кто победил - тот и добрый.
Arsie сейчас на форуме   Ответить с цитированием
Ответ


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

BB code is Вкл.
[IMG] код Вкл.
HTML код Выкл.



Часовой пояс GMT +4, время: 16:40.


Версия vBulletin: 3.8.7
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Segnetics 2005 - 2024