Segnetics

Вернуться   Segnetics > Форум Segnetics > Вопросы о программировании

Вопросы о программировании Вопросы, касающиеся программирования на FBD

Ответ
 
Опции темы Поиск в этой теме
Старый 16.08.2022, 14:09   #1
asu_tech
Member
 
Регистрация: Aug 2019
Сообщения: 43
Благодарил(а): 14 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
По умолчанию Как вычислить количество циклов (решено)

Добрый день!

Подскажите пожалуйста, как точнее задать время в минутах для
CTU-T (32).msl?

Какие преобразования нужно сделать с переменной?

Long * 60 * 1000 ?
(минуты * секунлы * миллисекунды)

Нужно ли при этом задействовать Тик программы?

Какое максимальное ограничение установить на ввод количества минут в меню Pixel в SMArt?

Под рукой нет Pixel для теста пока всё в SMLogix.

Спасибо!
asu_tech вне форума   Ответить с цитированием
Старый 16.08.2022, 15:07   #2
Arsie
Сотрудник Segnetics
 
Аватара для Arsie
 
Регистрация: Jan 2006
Адрес: Russia, SPb
Сообщения: 18 098
Благодарил(а): 15 раз(а)
Поблагодарили: 660 раз(а) в 604 сообщениях
По умолчанию Ответ: Суточный таймер (нет проблемы)

Цитата:
Сообщение от asu_tech Посмотреть сообщение
Под рукой нет Pixel для теста пока всё в SMLogix.

Спасибо!
Под рукой нужен калькулятор, а не контроллер. Время в минутах задаётся как DI = Х * 60 * (1000 / ТИК), где Х - это минуты. Если 1000 не делится на тик нацело, будут ошибки расчётов.

Для счётчика в LONG границы должны быть такими, чтобы DI получился не больше, чем 2 миллиарда.


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

Добро всегда побеждает зло. Кто победил - тот и добрый.
Arsie вне форума   Ответить с цитированием
Благодарность от:
Старый 16.08.2022, 15:27   #3
asu_tech
Member
 
Регистрация: Aug 2019
Сообщения: 43
Благодарил(а): 14 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
По умолчанию Ответ: Как вычислить количество циклов

Спасибо Арсений!
asu_tech вне форума   Ответить с цитированием
Старый 16.08.2022, 17:21   #4
ATS
Senior Member
 
Регистрация: Aug 2013
Сообщения: 3 784
Благодарил(а): 12 раз(а)
Поблагодарили: 194 раз(а) в 190 сообщениях
По умолчанию Ответ: Суточный таймер (нет проблемы)

Цитата:
Сообщение от Arsie Посмотреть сообщение
Время в минутах задаётся как DI = Х * 60 * (1000 / ТИК), где Х - это минуты.
Могу ошибиться, но там вроде все в миллисекундах было.


__________________
Не являюсь сотрудником Segnetics !!!
ATS вне форума   Ответить с цитированием
Старый 16.08.2022, 17:55   #5
Arsie
Сотрудник Segnetics
 
Аватара для Arsie
 
Регистрация: Jan 2006
Адрес: Russia, SPb
Сообщения: 18 098
Благодарил(а): 15 раз(а)
Поблагодарили: 660 раз(а) в 604 сообщениях
По умолчанию Ответ: Суточный таймер (нет проблемы)

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


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

Добро всегда побеждает зло. Кто победил - тот и добрый.
Arsie вне форума   Ответить с цитированием
Старый 16.08.2022, 18:56   #6
asu_tech
Member
 
Регистрация: Aug 2019
Сообщения: 43
Благодарил(а): 14 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
По умолчанию Ответ: Как вычислить количество циклов (решено)

Вход макроса в миллисекундах. Ввод уставки в pixel в минутах, соответственно перемножаем на 60 чтоб пересчитать из минут в секунды и на 1000 из секунд в миллисекунды и подаём на вход макроса.
Не верно?
asu_tech вне форума   Ответить с цитированием
Старый 16.08.2022, 19:06   #7
Arsie
Сотрудник Segnetics
 
Аватара для Arsie
 
Регистрация: Jan 2006
Адрес: Russia, SPb
Сообщения: 18 098
Благодарил(а): 15 раз(а)
Поблагодарили: 660 раз(а) в 604 сообщениях
По умолчанию Ответ: Как вычислить количество циклов (решено)

Цитата:
Сообщение от asu_tech Посмотреть сообщение
Вход макроса в миллисекундах. Ввод уставки в pixel в минутах, соответственно перемножаем на 60 чтоб пересчитать из минут в секунды и на 1000 из секунд в миллисекунды и подаём на вход макроса.
Не верно?
Если вход макроса в миллисекундах, то нужно минуты умножить на 60 - получаются секунды. Затем умножить на 1000. Это миллисекунды.


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

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


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

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



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


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