перевести время в число

Простейшие вопросы в области инженерной разработки
Ответить
Аватара пользователя
JohnChaban
leader
leader
Сообщения: 669
Зарегистрирован: 18 фев 2010, 13:26
Версия LabVIEW: 2015,2016
Откуда: Город Сосновый Бор Ленинградская Область
Контактная информация:

перевести время в число

Сообщение JohnChaban »

Всем привет
Ест элемент slider его максимальное значение равно 8 часам то есть(28800000 милисекунд).
1 секунда =1000 мили секунд
1 минута = 60000 милисекунд
1 час = 360000 мили секунд
8часов = 28800000 мили секунд.
Есть элемент Get date/Time которая вырабатывает время.
Мне нужно чтобы значение ползунка слайдера было привязано ко времени.
Начальное значение у нас 0 что равно времени когда стартует программа.
Например прошло 30 минут как вот эти 30 минут перевести в число чтобы потом подать его на слайдер
Я так понимаю что слайдер надо откалибровать.
Я отколибровал по делетански:
например у меня minimum scale =0 (начало отсчета) maximum scale= 28800000
я начал отсчет например прошло 5 (или 1 минута 30 секунд) минут как мне отразить с помощью положения ползунка на слайдере?
каким прибором можно воспользоваться чтобы перевести время в часы?
Borjomy_1

Activity Professionalism Silver
doctor
doctor
Сообщения: 2210
Зарегистрирован: 28 июн 2012, 09:32
Награды: 3
Версия LabVIEW: 2009..2020
Откуда: город семи холмов
Благодарил (а): 27 раз
Поблагодарили: 26 раз

Re: перевести время в число

Сообщение Borjomy_1 »

В :labview: время считается в секундах. На слайдере устанавливаете формат относительного времени. Ваши миллисекунды делите на 1000 и подаете на слайдер.
Аватара пользователя
ladik

Silver
developer
developer
Сообщения: 275
Зарегистрирован: 18 ноя 2014, 11:45
Награды: 1
Версия LabVIEW: 2015, 2019
Откуда: Екатеринбург
Благодарил (а): 4 раза
Поблагодарили: 3 раза
Контактная информация:

Re: перевести время в число

Сообщение ladik »

JohnChaban, если я правильно понял вопрос, то вот так:
Вложения
1.png
Дорогу осилит идущий.
Аватара пользователя
JohnChaban
leader
leader
Сообщения: 669
Зарегистрирован: 18 фев 2010, 13:26
Версия LabVIEW: 2015,2016
Откуда: Город Сосновый Бор Ленинградская Область
Контактная информация:

Re: перевести время в число

Сообщение JohnChaban »

А если я хочу знать сколько прошло секунд то надо умножить на 3600 я правильно понял?
Для минут какой коэффициент?
Аватара пользователя
Kosist

Activity Gold
expert
expert
Сообщения: 1236
Зарегистрирован: 21 фев 2011, 23:44
Награды: 2
Версия LabVIEW: 2013-2020
Благодарил (а): 23 раза
Поблагодарили: 30 раз
Контактная информация:

Re: перевести время в число

Сообщение Kosist »

JohnChaban писал(а):А если я хочу знать сколько прошло секунд то надо умножить на 3600 я правильно понял?
Для минут какой коэффициент?
Для минут, или секунд? У Вас же относительное время будет в секундах, делите на 60; если в миллисекундах - делите на 60000, чтобы узнать, сколько минут прошло.
Мы делили апельсин - много наших полегло...
Аватара пользователя
JohnChaban
leader
leader
Сообщения: 669
Зарегистрирован: 18 фев 2010, 13:26
Версия LabVIEW: 2015,2016
Откуда: Город Сосновый Бор Ленинградская Область
Контактная информация:

Re: перевести время в число

Сообщение JohnChaban »

Понятно чтобы в минутах надо на 6000 разделить что-то от жары мозг распалвился
Аватара пользователя
JohnChaban
leader
leader
Сообщения: 669
Зарегистрирован: 18 фев 2010, 13:26
Версия LabVIEW: 2015,2016
Откуда: Город Сосновый Бор Ленинградская Область
Контактная информация:

Re: перевести время в число

Сообщение JohnChaban »

JohnChaban писал(а):Понятно чтобы в минутах надо на 6000 разделить что-то от жары мозг распалвился
Вот еще вопрос почему так получается у меня в программе не прошла 1 минута а посчиталось что уже прошла 1 минута после старта программы.
Для иллюстрации приведу пример.
Вложения
показывает 1 минуту почему?
показывает 1 минуту почему?
Borjomy_1

Activity Professionalism Silver
doctor
doctor
Сообщения: 2210
Зарегистрирован: 28 июн 2012, 09:32
Награды: 3
Версия LabVIEW: 2009..2020
Откуда: город семи холмов
Благодарил (а): 27 раз
Поблагодарили: 26 раз

Re: перевести время в число

Сообщение Borjomy_1 »

А о том, что результаты перевода из дробного в целое, а также при делении нацело, округляются, вы никогда не слышали?

Upd. И делить надо не на 6000. а на 60000.
Аватара пользователя
JohnChaban
leader
leader
Сообщения: 669
Зарегистрирован: 18 фев 2010, 13:26
Версия LabVIEW: 2015,2016
Откуда: Город Сосновый Бор Ленинградская Область
Контактная информация:

Re: перевести время в число

Сообщение JohnChaban »

По поводу "А о том, что результаты перевода из дробного в целое, а также при делении нацело, округляются, вы никогда не слышали?"
Слышал но как то получается странно, как можно избежать этого?
Может как то программно можно сделать?
Borjomy_1

Activity Professionalism Silver
doctor
doctor
Сообщения: 2210
Зарегистрирован: 28 июн 2012, 09:32
Награды: 3
Версия LabVIEW: 2009..2020
Откуда: город семи холмов
Благодарил (а): 27 раз
Поблагодарили: 26 раз

Re: перевести время в число

Сообщение Borjomy_1 »

Результат вычитания начала отсчета из текущего времени снова переводите обратно в таймстамп и на контроле в настройках указываете относительное время. И будут у вас и часы и минуты и секунды и миллисекунды. Как настроите отображение.
Аватара пользователя
JohnChaban
leader
leader
Сообщения: 669
Зарегистрирован: 18 фев 2010, 13:26
Версия LabVIEW: 2015,2016
Откуда: Город Сосновый Бор Ленинградская Область
Контактная информация:

Re: перевести время в число

Сообщение JohnChaban »

Мне не это надо, мне хотелось бы что бы все тютелька в тютельку то есть например что было 10:41:25 и 10:42:25 тогда становилась 1 минута.
А так получается что 1 минута не прошла.
Borjomy_1

Activity Professionalism Silver
doctor
doctor
Сообщения: 2210
Зарегистрирован: 28 июн 2012, 09:32
Награды: 3
Версия LabVIEW: 2009..2020
Откуда: город семи холмов
Благодарил (а): 27 раз
Поблагодарили: 26 раз

Re: перевести время в число

Сообщение Borjomy_1 »

Ок. Во-первых ваше желание можно и через контрол таймстампа реализовать - в формате отображения оставить только минуты. Тогда разница между текущим и началом будет отображаться в минутах (формат %<%MM>T), правда максимально будет 59 минут.
А во-вторых если вам надо округлить число не по 0.5, то вместо функции Round To Nearest (которая везде используется при неявном преобразовании) используйте функцию Round Toward -Infinity, тогда число будет округляться в меньшую сторону
Аватара пользователя
JohnChaban
leader
leader
Сообщения: 669
Зарегистрирован: 18 фев 2010, 13:26
Версия LabVIEW: 2015,2016
Откуда: Город Сосновый Бор Ленинградская Область
Контактная информация:

Re: перевести время в число

Сообщение JohnChaban »

Совсем запутался.
Не понял что вы напсиали
Borjomy_1

Activity Professionalism Silver
doctor
doctor
Сообщения: 2210
Зарегистрирован: 28 июн 2012, 09:32
Награды: 3
Версия LabVIEW: 2009..2020
Откуда: город семи холмов
Благодарил (а): 27 раз
Поблагодарили: 26 раз

Re: перевести время в число

Сообщение Borjomy_1 »

Вот варианты
Вложения
отображение минут.png
Ответить

Вернуться в «Для чайников»