Просмотр полной версии : Отсчитаное время таймера с выхода ET.
Добрый день, имеется необходимость выводить на панель сп 300 отсчитаное время таймера, как вывести минуты и секунды через цифровой дисплей? Пока что я смог только придумать такую схему: time to tod ->tod to minute, tod to second, конвертирую их в ворд и отображаю. Есть ли способ проще выдернуть минуты и секунды чтобы их отображать?
kondor3000
26.04.2023, 20:49
Добрый день, имеется необходимость выводить на панель сп 300 отсчитаное время таймера, как вывести минуты и секунды через цифровой дисплей? Пока что я смог только придумать такую схему: time to tod ->tod to minute, tod to second, конвертирую их в ворд и отображаю. Есть ли способ проще выдернуть минуты и секунды чтобы их отображать?
Вообще то TIME_TO_DWORD/1000, получаете время в секундах. Секунды делите на 3600 получаете часы, делите на 60 получаете минуты, остаток секунды.
Вообще то TIME_TO_DWORD/1000, получаете время в секундах. Секунды делите на 3600 получаете часы, делите на 60 получаете минуты, остаток секунды.
Таким образом у меня секунды идут как 0,5, а не 0,30. То есть мне нужно, чтобы отображалось конкретно 1 мин 30 сек, например. А как-то вытащить с Time нельзя секунды и минуты отдельно? Как это можно сделать c TOD?
Я себе написал такую функцию (во вложении). Работает на ура как раз для того, чтобы отображать остаток времени работы.
Может выводить в виде "Часы:Минуты" или "Минуты:Секунды"
kondor3000
26.04.2023, 22:50
Таким образом у меня секунды идут как 0,5, а не 0,30. То есть мне нужно, чтобы отображалось конкретно 1 мин 30 сек, например. А как-то вытащить с Time нельзя секунды и минуты отдельно? Как это можно сделать c TOD?
Какие 0,3 и 0,5, время в секундах идёт, минуты выделяете. Вот скрин 67555
Эдуард_Н
27.04.2023, 05:45
Я себе написал такую функцию (во вложении). Работает на ура как раз для того, чтобы отображать остаток времени работы.
Может выводить в виде "Часы:Минуты" или "Минуты:Секунды"
Как это открыть?
kondor3000
27.04.2023, 08:23
Как это открыть?
Распаковать и сделать импорт блока из любого своего проекта в 3.5 (тестового).
Перед импортом нажмите куда вставить блок (папку с блоками и программами)
Какие 0,3 и 0,5, время в секундах идёт, минуты выделяете. Вот скрин 67555
Спасибо за скрин, помогли) что за блок мод, не расскажете? Впервые с ним сталкиваюсь. Заранее спасибо)
kondor3000
27.04.2023, 09:22
Спасибо за скрин, помогли) что за блок мод, не расскажете? Впервые с ним сталкиваюсь. Заранее спасибо)
Выделяете MOD мышью и нажимаете F1, читаете)) пользуйтесь справкой почаще.
А так это выглядит на ST
TON1(IN:=b1 , PT:=PT , Q=> , ET=>ET );
w1 :=TO_WORD(TO_DWORD(ET)/1000);
Myn:=w1 / 60;
Sek :=w1 MOD 60;
Выделяете MOD мышью и нажимаете F1, читаете)) пользуйтесь справкой почаще.
А так это выглядит на ST
TON1(IN:=b1 , PT:=PT , Q=> , ET=>ET );
w1 :=TO_WORD(TO_DWORD(ET)/1000);
Myn:=w1 / 60;
Sek :=w1 MOD 60;
Читая справку я не совсем понимаю как он работает, а хотелось бы именно понять. А так как вы им пользуетесь, то, скорее всего у Вас есть понимание. Поэтому и интересуюсь у Вас) если бы вы разжевали его работу, было бы очень здорово
Добрый день, имеется необходимость выводить на панель сп 300 отсчитаное время таймера, как вывести минуты и секунды через цифровой дисплей? Пока что я смог только придумать такую схему: time to tod ->tod to minute, tod to second, конвертирую их в ворд и отображаю. Есть ли способ проще выдернуть минуты и секунды чтобы их отображать?
Без "выдергивания", с помощью ГМ на экран панели сразу в нужном формате, например, 1 мин 30 сек
67560 67561
Единственное преобразование в ПЛК - TIME_TO_DWORD. Этот DWORD читает панель, он является операндом в ГМ.
67562
ГМ, можно взять из проекта.
https://www.youtube.com/watch?v=lbIJmAkuvPo
Примеры здесь https://www.youtube.com/playlist?list=PLWZaj_ZBIvwSESDCVJhpEiuGtORbhJe6T
kondor3000
27.04.2023, 10:11
Читая справку я не совсем понимаю как он работает, а хотелось бы именно понять. А так как вы им пользуетесь, то, скорее всего у Вас есть понимание. Поэтому и интересуюсь у Вас) если бы вы разжевали его работу, было бы очень здорово
MOD 60 - это остаток от деления всего времени на 60 (Результат всегда целое число).
Из скрина время 201 сек, делим на 60, получаем 3 мин (180 сек). Остаток соответственно 201-180=21 сек.
Powered by vBulletin® Version 4.2.3 Copyright © 2024 vBulletin Solutions, Inc. All rights reserved. Перевод: zCarot