|
Вопросы о SMH2010 Работа и применение контроллеров SMH2010A, SMH2010B и SMH2010C. |
|
Опции темы | Поиск в этой теме |
02.05.2023, 10:59 | #1 |
Новичок
Регистрация: May 2023
Сообщения: 12
Благодарил(а): 0 раз(а)
Поблагодарили:
0 раз(а) в 0 сообщениях
|
SMH2010 реле времени
Добрый день!
Подскажите как правильнее поступить с задачей: Необходимо в определенную дату и время включить Дискретный выход, а после в определенную дату и время выключить Дискретный выход. Понимаю что на выходе будет RS триггер. Так же следует использовать блоки GetRealTime и GetDate и прописать синхронизацию времени с внешним сервером NTP. Вопрос следующий, как правильнее сравнивать реальное время и дату и где хранить таблицу, а так же что использовать для этого? В базе макросов не нашел нужного. Заранее спасибо |
02.05.2023, 11:03 | #2 | |
Senior Member
Регистрация: Jun 2007
Адрес: Tyumen
Сообщения: 2 056
Благодарил(а): 20 раз(а)
Поблагодарили:
22 раз(а) в 22 сообщениях
|
Ответ: SMH2010 реле времени
Цитата:
Сравнить время можно при помощи макросов CMP. Хранить уставки нужно в EEPROM контроллера. Только Вы не тот контроллер выбрали чтобы работать с меню... в SMH2010 Не работает SMART и меню Вам придется реализовывать "руками" классическим способом вывода строки и числа (есть готовые макросы - поищите на форуме). |
|
02.05.2023, 11:09 | #3 | |
Сотрудник Segnetics
Регистрация: Jan 2006
Адрес: Russia, SPb
Сообщения: 18 183
Благодарил(а): 15 раз(а)
Поблагодарили:
665 раз(а) в 607 сообщениях
|
Ответ: SMH2010 реле времени
SMH2010 и NTP - продукты очень разного класса. Одно с другим несовместимо.
Цитата:
Я бы посоветовал считать сумму отдельно для даты и отдельно для времени: HH*100 + MM и YYYY*10000 + MM*100 + DD. Так сравнивать будет удобнее. Время можно считать и хранить в int, дату в long. Сравнивать лучше интервал, а не наступление событий. Т.е. Текущие дата/время должны быть больше, чем сохранённые дата/время включения DO, но меньше, чем сохранённые дата/время отключения DO. PS. Меню делать на базе вот этих макросов: https://forum.segnetics.com/showthread.php?t=865. Либо сделать самому на базе блока inputnumber. __________________ Программа делает то что написал программист, а не то что он хотел. Добро всегда побеждает зло. Кто победил - тот и добрый. |
|
02.05.2023, 11:11 | #4 | |
Новичок
Регистрация: May 2023
Сообщения: 12
Благодарил(а): 0 раз(а)
Поблагодарили:
0 раз(а) в 0 сообщениях
|
Ответ: SMH2010 реле времени
Синхронизацию времени будем делать по RS485 с другим ПЛК, который в свою очередь будет работать с интернет NTP, у нас нет вариантов к сожалению.
Через меню нам не требуется вводить уставки, более чем достаточно хранить их в EEPROM. Выбор контроллера к сожалению не давали, нужно сделать "на том то имеем")) Вот по этому и возникли вопросы. Макрос СМР уже задействован в сравнении значений А и В, в целом тут все понятно. Не ясно как сравнивать значения в EEPROM и какой макрос использовать.... Добавлено через 1 минуту Цитата:
|
|
02.05.2023, 17:53 | #5 |
Новичок
Регистрация: May 2023
Сообщения: 12
Благодарил(а): 0 раз(а)
Поблагодарили:
0 раз(а) в 0 сообщениях
|
Ответ: SMH2010 реле времени
Просьба посмотреть и поравить, не могу добиться работы от макроса.
Это пробный макрос, по задумке должно быть переключение DO раз в 5сек 1. ARRAY при lenght=1 на выходе int висит значение 26 и не меняется 2. ARRAY при lenght=61 на выходе int происходит дублирование rd addr |
02.05.2023, 18:06 | #6 |
Сотрудник Segnetics
Регистрация: Jan 2006
Адрес: Russia, SPb
Сообщения: 18 183
Благодарил(а): 15 раз(а)
Поблагодарили:
665 раз(а) в 607 сообщениях
|
Ответ: SMH2010 реле времени
Сделать-то что хотели. объясните поблочно. А то это ну никак не тянет на то, что вы писали в первом сообщении.
__________________ Программа делает то что написал программист, а не то что он хотел. Добро всегда побеждает зло. Кто победил - тот и добрый. |
02.05.2023, 18:15 | #7 |
Новичок
Регистрация: May 2023
Сообщения: 12
Благодарил(а): 0 раз(а)
Поблагодарили:
0 раз(а) в 0 сообщениях
|
Ответ: SMH2010 реле времени
Этот макрос - "проверочный" для удобства и наглядности привязался к секундам, в EEPROM записал значения 5 сек вкл, 5 сек выкл DO, потому что при написании программы возникла сложность с блоком ARRAY(int), в частности при чтении адресов по входу EEPROM из блока происходит или обычное дублирование адреса блока на выходе int или висит значение 26 и все. Что бы не грузить весь проект сюда, я выложил проверочный макрос, написанный по тому же принципу, что и сам проект и попросил помочь разобраться, потому что я не понимаю что происходит
|
02.05.2023, 18:29 | #8 | |
Сотрудник Segnetics
Регистрация: Jan 2006
Адрес: Russia, SPb
Сообщения: 18 183
Благодарил(а): 15 раз(а)
Поблагодарили:
665 раз(а) в 607 сообщениях
|
Ответ: SMH2010 реле времени
Цитата:
__________________ Программа делает то что написал программист, а не то что он хотел. Добро всегда побеждает зло. Кто победил - тот и добрый. |
|
02.05.2023, 18:39 | #9 | |
Новичок
Регистрация: May 2023
Сообщения: 12
Благодарил(а): 0 раз(а)
Поблагодарили:
0 раз(а) в 0 сообщениях
|
Ответ: SMH2010 реле времени
Цитата:
EEPROM заполнен ячейками с блок=сек на вкл и блок=0 на выкл |
|
02.05.2023, 18:54 | #10 |
Сотрудник Segnetics
Регистрация: Jan 2006
Адрес: Russia, SPb
Сообщения: 18 183
Благодарил(а): 15 раз(а)
Поблагодарили:
665 раз(а) в 607 сообщениях
|
Ответ: SMH2010 реле времени
Значения по умолчанию в SMH2010 не работают. Это то, что у вас на картинке.
__________________ Программа делает то что написал программист, а не то что он хотел. Добро всегда побеждает зло. Кто победил - тот и добрый. |
02.05.2023, 19:02 | #11 |
Новичок
Регистрация: May 2023
Сообщения: 12
Благодарил(а): 0 раз(а)
Поблагодарили:
0 раз(а) в 0 сообщениях
|
Ответ: SMH2010 реле времени
|
02.05.2023, 19:20 | #12 |
Сотрудник Segnetics
Регистрация: Jan 2006
Адрес: Russia, SPb
Сообщения: 18 183
Благодарил(а): 15 раз(а)
Поблагодарили:
665 раз(а) в 607 сообщениях
|
Ответ: SMH2010 реле времени
Только с помощью самих блоков памяти.
__________________ Программа делает то что написал программист, а не то что он хотел. Добро всегда побеждает зло. Кто победил - тот и добрый. |
02.05.2023, 19:27 | #13 |
Новичок
Регистрация: May 2023
Сообщения: 12
Благодарил(а): 0 раз(а)
Поблагодарили:
0 раз(а) в 0 сообщениях
|
Ответ: SMH2010 реле времени
|
02.05.2023, 19:34 | #14 |
Сотрудник Segnetics
Регистрация: Jan 2006
Адрес: Russia, SPb
Сообщения: 18 183
Благодарил(а): 15 раз(а)
Поблагодарили:
665 раз(а) в 607 сообщениях
|
Ответ: SMH2010 реле времени
Правой кнопкой мыши на блоке, справка.
__________________ Программа делает то что написал программист, а не то что он хотел. Добро всегда побеждает зло. Кто победил - тот и добрый. |
02.05.2023, 19:41 | #15 |
Новичок
Регистрация: May 2023
Сообщения: 12
Благодарил(а): 0 раз(а)
Поблагодарили:
0 раз(а) в 0 сообщениях
|
Ответ: SMH2010 реле времени
Парни, вы реально меня задрочить решили? Тяжело ответить на поставленный вопрос? Вы - поддержка своего продукта, говорите загадками, ходите вокруг да около, хотя прекрасно знаете решение проблемы, мне ваше оборудование в новинку, и, как я понимаю, на этом работа с вами не будет продолжена. Инфы по вам минимум, все секреты какие то
КРАЙНИЙ ВОПРОС: ответ будет или так и будем ходить кругами? |
02.05.2023, 19:42 | #16 | |
Сотрудник Segnetics
Регистрация: Jan 2006
Адрес: Russia, SPb
Сообщения: 18 183
Благодарил(а): 15 раз(а)
Поблагодарили:
665 раз(а) в 607 сообщениях
|
Ответ: SMH2010 реле времени
Цитата:
Что инициализация в SMH2010 не поддерживается в справке написано и я вам это написал дважды. __________________ Программа делает то что написал программист, а не то что он хотел. Добро всегда побеждает зло. Кто победил - тот и добрый. |
|
02.05.2023, 20:02 | #17 | ||
Новичок
Регистрация: May 2023
Сообщения: 12
Благодарил(а): 0 раз(а)
Поблагодарили:
0 раз(а) в 0 сообщениях
|
Ответ: SMH2010 реле времени
Цитата:
Ах да, забыл сказать, прошу прощения что потревожил Техподдержку, смерт этого делать не имеет права. *поклонившись, удаляюсь гусиным шагом не смея обернуться" А ЕСЛИ ПО ДЕЛУ: 1. "Значения по умолчанию в SMH2010 не работают." - замечательно, в FAQ этого нет, есть только ARRAY || Эти блоки не поддерживаются в контроллерах SMH2010. 2. "Сравнивать блоками сравнения CMP(), хранить в блоках сохранения ARRAY()" мне кажется это Ваш ответ был. Теперь выходит что уже этот метод не работоспособен или имеет скрытые нюансы записи значений в ячейки памяти EEPROM. Знания, доступные только избранным. Дальше, не удивлюсь, то что бы вычитать блок памяти EEPROM понадобится бубен и костер. 3. Вопрос был задан многократно, на что получил игнорирование и пол капли ответов на свои вопросы, по итогу потерян день. Вынужден негодовать и не понимать причину отношения к конечному потребителю Вашего продукта Добавлено через 1 минуту Цитата:
И прошу заметить, я повторился дважды и меня это не затруднило |
||
02.05.2023, 20:39 | #18 | ||||
Senior Member
Регистрация: Aug 2013
Сообщения: 3 795
Благодарил(а): 12 раз(а)
Поблагодарили:
194 раз(а) в 190 сообщениях
|
Ответ: SMH2010 реле времени
Цитата:
Цитата:
Что бы это значило? Цитата:
Цитата:
__________________ Не являюсь сотрудником Segnetics !!! |
||||
02.05.2023, 20:57 | #19 | |
Новичок
Регистрация: May 2023
Сообщения: 12
Благодарил(а): 0 раз(а)
Поблагодарили:
0 раз(а) в 0 сообщениях
|
Ответ: SMH2010 реле времени
Цитата:
А по поводу прочитать внимательно просьба прочесть вот это еще пару раз (в закрепе). Сотрудник Техподдержки дал заведомо ложную информацию и направил по пути, в котором только тупик. Далее просто отмораживался и тянул время. Так как сотрудник Техподдержки объявил возможность использования ARRAY без доп плясок с бубном, или же не уточнил заранее что просто записать значения уставок невозможно стандартными средствами SMLogix, понимаю это как издевательство и прямую трату моего времени. по этому буду вынужден принять соответствующие меры. По поводу кучки скринов с отсутствием возможности инициализации памяти, то поясню еще раз, тыкните в FAQ так же скрином где описано как работать с ARRAY на ПЛК SMH2010, буду очень благодарен, но..... |
|
02.05.2023, 21:14 | #20 | |||||
Senior Member
Регистрация: Aug 2013
Сообщения: 3 795
Благодарил(а): 12 раз(а)
Поблагодарили:
194 раз(а) в 190 сообщениях
|
Ответ: SMH2010 реле времени
Что-то не заметно
Цитата:
Цитата:
Цитата:
С готовыми макросами. Цитата:
Цитата:
Кстати. Если бы была инициализация то для смены значений вы бы каждый раз грузили проект заново? __________________ Не являюсь сотрудником Segnetics !!! |
|||||
02.05.2023, 21:17 | #21 |
Новичок
Регистрация: May 2023
Сообщения: 12
Благодарил(а): 0 раз(а)
Поблагодарили:
0 раз(а) в 0 сообщениях
|
Ответ: SMH2010 реле времени
Даже отвечать не нужно. Явно же в подписи у Вас написано.
А по поводу готового решения есть спец ПО прям в репозитории лежит на другой ПЛК. Это и есть халявное решение. И не Вам судить кто, где и как, конфликт исчерпан, всем спасибо! |
02.05.2023, 21:23 | #22 |
Senior Member
Регистрация: May 2009
Сообщения: 1 034
Благодарил(а): 9 раз(а)
Поблагодарили:
22 раз(а) в 22 сообщениях
|
Ответ: SMH2010 реле времени
Мама дорогая
__________________ RTFM |
02.05.2023, 21:29 | #23 | |||
Senior Member
Регистрация: Aug 2013
Сообщения: 3 795
Благодарил(а): 12 раз(а)
Поблагодарили:
194 раз(а) в 190 сообщениях
|
Ответ: SMH2010 реле времени
Цитата:
Цитата:
Цитата:
__________________ Не являюсь сотрудником Segnetics !!! |
|||
02.05.2023, 21:41 | #24 |
Новичок
Регистрация: May 2023
Сообщения: 12
Благодарил(а): 0 раз(а)
Поблагодарили:
0 раз(а) в 0 сообщениях
|
Ответ: SMH2010 реле времени
|
02.05.2023, 21:45 | #25 |
Senior Member
Регистрация: Aug 2013
Сообщения: 3 795
Благодарил(а): 12 раз(а)
Поблагодарили:
194 раз(а) в 190 сообщениях
|
Ответ: SMH2010 реле времени
Ну тогда ходи голодный.
__________________ Не являюсь сотрудником Segnetics !!! |
03.05.2023, 11:21 | #26 | |
Сотрудник Сегнетикс
Регистрация: Mar 2016
Адрес: SPb
Сообщения: 4 341
Благодарил(а): 0 раз(а)
Поблагодарили:
255 раз(а) в 251 сообщениях
|
Ответ: SMH2010 реле времени
Цитата:
__________________ Если ничто другое не помогает, прочтите, наконец, инструкцию |
|
03.05.2023, 11:45 | #27 |
Сотрудник Segnetics
Регистрация: Jan 2006
Адрес: Russia, SPb
Сообщения: 18 183
Благодарил(а): 15 раз(а)
Поблагодарили:
665 раз(а) в 607 сообщениях
|
Ответ: SMH2010 реле времени
Кстати да, если ввода не подразумевается, то блоки сохранения использовать нет смысла, можно просто задавать константы напрямую на блоках сравнения.
Добавлено через 2 минуты ARRAY() и ARRAY||() - это разные блоки. Про ARRAY||() никто, кроме вас, не говорил. __________________ Программа делает то что написал программист, а не то что он хотел. Добро всегда побеждает зло. Кто победил - тот и добрый. |