Segnetics

Вернуться   Segnetics > Форум Segnetics > SMLogix > SMArt

SMArt Разработка интерфейсов пользователя

Ответ
 
Опции темы Поиск в этой теме
Старый 22.01.2024, 15:31   #91
Arsie
Сотрудник Segnetics
 
Аватара для Arsie
 
Регистрация: Jan 2006
Адрес: Russia, SPb
Сообщения: 18 112
Благодарил(а): 15 раз(а)
Поблагодарили: 660 раз(а) в 604 сообщениях
По умолчанию Ответ: Хотелки для SMart-a

Цитата:
Сообщение от Пятница Посмотреть сообщение
День добрый!
В меню настроек в проекте есть две переменные:
Уставка макс. температуры и Уставка мин. температуры.

Как сделать так, чтобы пользователь не мог накрутить уставку минимальной температуры выше максимальной?
Типа
Тмин <= Тмах-1° и Тмах >= Тмин+1
Не могу понять.....
SMArt не позволяет использовать внешнее задание min/max для меню.

Но данную функцию можно реализовать через запись корректного значения в уставку, если человек задал значение за пределами границ. Уставка должна быть двунаправленной.


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

Добро всегда побеждает зло. Кто победил - тот и добрый.
Arsie вне форума   Ответить с цитированием
Старый 22.01.2024, 15:43   #92
Пятница
Senior Member
 
Регистрация: Sep 2016
Адрес: Первоуральск
Сообщения: 104
Благодарил(а): 2 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
По умолчанию Ответ: Хотелки для SMart-a

Вот получается ограничение для минимальной переменной работает.
Тмин не делается выше Тмах-1.
А вот когда Тмах делаю меньше Тмин - меняются обе уставки.
Изображения
Тип файла: png Ввод.png (22.8 Кбайт, 18 просмотров)
Пятница вне форума   Ответить с цитированием
Старый 22.01.2024, 16:32   #93
Arsie
Сотрудник Segnetics
 
Аватара для Arsie
 
Регистрация: Jan 2006
Адрес: Russia, SPb
Сообщения: 18 112
Благодарил(а): 15 раз(а)
Поблагодарили: 660 раз(а) в 604 сообщениях
По умолчанию Ответ: Хотелки для SMart-a

Цитата:
Сообщение от Пятница Посмотреть сообщение
Вот получается ограничение для минимальной переменной работает.
Тмин не делается выше Тмах-1.
А вот когда Тмах делаю меньше Тмин - меняются обе уставки.
Логику записи значит нужно делать посложнее. Или логику сравнения.


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

Добро всегда побеждает зло. Кто победил - тот и добрый.
Arsie вне форума   Ответить с цитированием
Старый 22.01.2024, 20:37   #94
Пятница
Senior Member
 
Регистрация: Sep 2016
Адрес: Первоуральск
Сообщения: 104
Благодарил(а): 2 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
По умолчанию Ответ: Хотелки для SMart-a

Спасибо за совет.
В общем получилось как то так. Заработало корректно.
Может кому ещё пригодиться.
Изображения
Тип файла: png Ввод2.png (27.3 Кбайт, 33 просмотров)
Пятница вне форума   Ответить с цитированием
Старый 31.01.2024, 09:03   #95
Пятница
Senior Member
 
Регистрация: Sep 2016
Адрес: Первоуральск
Сообщения: 104
Благодарил(а): 2 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
По умолчанию Ответ: Хотелки для SMart-a

Цитата:
Сообщение от Пятница Посмотреть сообщение
Спасибо за совет.
В общем получилось как то так. Заработало корректно.
Может кому ещё пригодиться.
Нифига не корректно! После выключения питания минимальная уставка сама сбрасывается на 0.
Пятница вне форума   Ответить с цитированием
Старый 31.01.2024, 09:24   #96
младшой
Senior Member
 
Регистрация: May 2010
Адрес: Москва
Сообщения: 863
Благодарил(а): 4 раз(а)
Поблагодарили: 86 раз(а) в 67 сообщениях
По умолчанию Ответ: Хотелки для SMart-a

Тогда добавьте в условие для записи сигнал "Экран активен".
младшой вне форума   Ответить с цитированием
Старый 31.01.2024, 09:31   #97
Пятница
Senior Member
 
Регистрация: Sep 2016
Адрес: Первоуральск
Сообщения: 104
Благодарил(а): 2 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
По умолчанию Ответ: Хотелки для SMart-a

Цитата:
Сообщение от младшой Посмотреть сообщение
Тогда добавьте в условие для записи сигнал "Экран активен".
Пробовал - не помогло.
Как то, наверное, надо задействовать сигнал "Редактирование"....
Пятница вне форума   Ответить с цитированием
Старый 31.01.2024, 10:19   #98
младшой
Senior Member
 
Регистрация: May 2010
Адрес: Москва
Сообщения: 863
Благодарил(а): 4 раз(а)
Поблагодарили: 86 раз(а) в 67 сообщениях
По умолчанию Ответ: Хотелки для SMart-a

Ну смотрите.

В момент включения на входе "С" верхнего регистра находится 0 (bool).
Следовательно, на выходе "Q" этого же регистра тоже 0 (real), который подается на вход "max" верхнего блока MIN MAX.

Когда контроллер считал из памяти уставку Min (пусть сохраненное значение было 20), это значение попадает на вход "in" верхнего блока MIN MAX.

Этот блок сравнения видит, что его вход "in" (равен 20) больше входа max (равен 0), дает на выход ">max" значение 1 (bool), а на выход "out" значение 0 (real).

Эти значения улетают на входы меню настроек и записывают 0 в уставку Min.


Обойти это можно разными способами.
В частности, ограничить запись, если экран не активен.
Можно попробовать задействовать сигнал ~Редактирование.
Можно вообще переделать весь этот кусок.
На вкус и цвет...

Да, попробовал зайти в экран уставок и Min тут же обнулился. Ну, собственно, надо другой сигнал использовать для блокировки записи.
Либо записывать в верхний регистр значение максимальной уставки сразу после того, как контроллер считает её из памяти.
Изображения
Тип файла: png 2024-01-31_09-19-06.png (63.0 Кбайт, 10 просмотров)

Последний раз редактировалось младшой, 31.01.2024 в 10:35
младшой вне форума   Ответить с цитированием
Старый 31.01.2024, 10:45   #99
Пятница
Senior Member
 
Регистрация: Sep 2016
Адрес: Первоуральск
Сообщения: 104
Благодарил(а): 2 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
По умолчанию Ответ: Хотелки для SMart-a

Получилось. Всё сохраняется в EEPROM!
Изображения
Тип файла: png Ограничение уставок.png (27.5 Кбайт, 15 просмотров)
Пятница вне форума   Ответить с цитированием
Старый 31.01.2024, 10:52   #100
Пятница
Senior Member
 
Регистрация: Sep 2016
Адрес: Первоуральск
Сообщения: 104
Благодарил(а): 2 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
По умолчанию Ответ: Хотелки для SMart-a

В Smart надо выставить начальные значения уставок в допустимых пределах. А подаваться на сравнение будут уже ограниченные значения. При попытке ввода - сначала мелькает то, что было введено, а затем меняется на значение по условию ограничения.

Последний раз редактировалось Пятница, 31.01.2024 в 11:03
Пятница вне форума   Ответить с цитированием
Старый 31.01.2024, 11:13   #101
Arsie
Сотрудник Segnetics
 
Аватара для Arsie
 
Регистрация: Jan 2006
Адрес: Russia, SPb
Сообщения: 18 112
Благодарил(а): 15 раз(а)
Поблагодарили: 660 раз(а) в 604 сообщениях
По умолчанию Ответ: Хотелки для SMart-a

Цитата:
Сообщение от Пятница Посмотреть сообщение
В Smart надо выставить начальные значения уставок в допустимых пределах. А подаваться на сравнение будут уже ограниченные значения. При попытке ввода - сначала мелькает то, что было введено, а затем меняется на значение по условию ограничения.
Используйте сигнал "Редактирование". Вам же ограничить ввод надо, вот и ограничивайте именно в момент окончания ввода, а не всегда. Пропадут и ненужные спецэффекты.


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

Добро всегда побеждает зло. Кто победил - тот и добрый.
Arsie вне форума   Ответить с цитированием
Старый 31.01.2024, 19:07   #102
Пятница
Senior Member
 
Регистрация: Sep 2016
Адрес: Первоуральск
Сообщения: 104
Благодарил(а): 2 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
По умолчанию Ответ: Хотелки для SMart-a

Пробовал. И прямой и инверсный сигнал. Без изменений. Схема выше работает. Уставки редко (никогда, некому) меняются. Меня устраивает.
Пятница вне форума   Ответить с цитированием
Ответ


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

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



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


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