Косяк при выводе временной метки на графике
Добавлено: 17 авг 2016, 21:44
Добрый день! Имею панель и последний на данный момент EasyBuilderPro v5.05.01.053.
Сделал вывод временной метки на графике. Для этого использую ваш скрипт который крутится в цикле окна графика.
метка лежит в LW, 130.
macro_command main()
unsigned int time = 0
unsigned short tmp, Hours, Minutes, Seconds
// Считываем значение времени.
// GetData( time, "Панель", "Метка времени", 1 )
GetData(time, "Local HMI", LW, 130, 1)
// Часы.
Hours = time / 3600
SetData(Hours, "Local HMI", "TrendHours", 1)
time = time % 3600
// Минуты.
Minutes = time / 60
SetData(Minutes, "Local HMI", "TrendsMinutes", 1)
time = time % 60
// Секунды.
Seconds = time
SetData(Seconds, "Local HMI", "TrendsSeconds", 1)
end macro_command
Так вот, у меня график имеет сетку 60 сек. Т.е. вертикальные линии через 60 секунд и под ними подписано время.
Когда я ставлю метку я вижу, что зачастую время метки не правильно относительно сетки и отличается на десятки секунд (в пределах одной минуты).
Так явно быть не должно! Пробовал и на имитаторе и с реальной панелью - работает странно одинаково. Может косяк в скрипте?
Сделал вывод временной метки на графике. Для этого использую ваш скрипт который крутится в цикле окна графика.
метка лежит в LW, 130.
macro_command main()
unsigned int time = 0
unsigned short tmp, Hours, Minutes, Seconds
// Считываем значение времени.
// GetData( time, "Панель", "Метка времени", 1 )
GetData(time, "Local HMI", LW, 130, 1)
// Часы.
Hours = time / 3600
SetData(Hours, "Local HMI", "TrendHours", 1)
time = time % 3600
// Минуты.
Minutes = time / 60
SetData(Minutes, "Local HMI", "TrendsMinutes", 1)
time = time % 60
// Секунды.
Seconds = time
SetData(Seconds, "Local HMI", "TrendsSeconds", 1)
end macro_command
Так вот, у меня график имеет сетку 60 сек. Т.е. вертикальные линии через 60 секунд и под ними подписано время.
Когда я ставлю метку я вижу, что зачастую время метки не правильно относительно сетки и отличается на десятки секунд (в пределах одной минуты).
Так явно быть не должно! Пробовал и на имитаторе и с реальной панелью - работает странно одинаково. Может косяк в скрипте?