Segnetics

Вернуться   Segnetics > Форум Segnetics > SMConstructor (вентиляция)

SMConstructor (вентиляция) Вопросы о работе Конструктора (Вентиляция и кондиционирование)

Ответ
 
Опции темы Поиск в этой теме Опции просмотра
Старый 13.04.2015, 08:47   #1
Max2114
Senior Member
 
Регистрация: Jun 2007
Адрес: Tyumen
Сообщения: 2 052
Благодарил(а): 20 раз(а)
Поблагодарили: 21 раз(а) в 21 сообщениях
По умолчанию Расписание по интерфейсу

Появилась необходимость задавать расписание работы по интерфейсу... очень сильная необходимость. Кто-нибудь уже реализовывал такое?
Я вижу такие пути:
1. Написать новый макрос расписания и вставлять его самостоятельно в проект. Пока концепцию не придумал.
2. Сделать механизм корректирования существующего расписания со скады.
По какому пути лучше пойти?
PS Возможно Арсений или кто-нибудь другой поделится своими мыслями или наработками
Max2114 вне форума   Ответить с цитированием
Старый 13.04.2015, 12:58   #2
Arsie
Сотрудник Segnetics
 
Аватара для Arsie
 
Регистрация: Jan 2006
Адрес: Russia, SPb
Сообщения: 18 021
Благодарил(а): 15 раз(а)
Поблагодарили: 655 раз(а) в 599 сообщениях
По умолчанию Ответ: Расписание по интерфейсу

Цитата
Сообщение от Max2114 Посмотреть сообщение
Появилась необходимость задавать расписание работы по интерфейсу... очень сильная необходимость. Кто-нибудь уже реализовывал такое?
Я вижу такие пути:
1. Написать новый макрос расписания и вставлять его самостоятельно в проект. Пока концепцию не придумал.
2. Сделать механизм корректирования существующего расписания со скады.
По какому пути лучше пойти?
PS Возможно Арсений или кто-нибудь другой поделится своими мыслями или наработками
Вариант №3: реализовать расписание в самой скаде.

А так-то да, №1. Наработок толковых нет.


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

Добро всегда побеждает зло. Кто победил - тот и добрый.
Arsie сейчас на форуме   Ответить с цитированием
Старый 13.04.2015, 15:21   #3
Max2114
Senior Member
 
Регистрация: Jun 2007
Адрес: Tyumen
Сообщения: 2 052
Благодарил(а): 20 раз(а)
Поблагодарили: 21 раз(а) в 21 сообщениях
По умолчанию Ответ: Расписание по интерфейсу

Цитата:
Сообщение от Arsie Посмотреть сообщение
Вариант №3: реализовать расписание в самой скаде.

А так-то да, №1. Наработок толковых нет.
Может кто-нибудь желает заработать? Готов заплатить за разработку такого решения. Только если кто хочет - у меня сроки - неделя Думаю что и сам справлюсь да дел много - если кто захочет, то мне проще будет заплатить...
Max2114 вне форума   Ответить с цитированием
Старый 13.04.2015, 17:05   #4
Aard
Member
 
Регистрация: Mar 2007
Сообщения: 39
Благодарил(а): 0 раз(а)
Поблагодарили: 1 раз в 1 сообщении
По умолчанию Ответ: Расписание по интерфейсу

Цитата
Сообщение от Max2114 Посмотреть сообщение
Может кто-нибудь желает заработать? Готов заплатить за разработку такого решения. Только если кто хочет - у меня сроки - неделя Думаю что и сам справлюсь да дел много - если кто захочет, то мне проще будет заплатить...
Попробуйте такой вариант.
Делалось давно, на коленке и быстро, потому как-то без комментариев в программе осталось. Но вроде как работало.

Недельный таймер на День/Ночь с указанием уставок температуры (с шагом 1 градус) и состоянием установки в это время.

Время начала периода кодируется двубайтовым словом в виде "ЧЧ*256+ММ".
Уставки и состояния кодируются двубайтовым словом в виде "УставкаДень+State_День*128+УставкаНочь*256+State_ Ночь*32768"
Все параметры передаются по Modbus и могут быть изменены из меню (ещё старое SMH-шное меню).
Вложения
Тип файла: psl Расписание Net.psl (836.3 Кбайт, 138 просмотров)
Aard вне форума   Ответить с цитированием
Старый 13.04.2015, 18:29   #5
Arsie
Сотрудник Segnetics
 
Аватара для Arsie
 
Регистрация: Jan 2006
Адрес: Russia, SPb
Сообщения: 18 021
Благодарил(а): 15 раз(а)
Поблагодарили: 655 раз(а) в 599 сообщениях
По умолчанию Ответ: Расписание по интерфейсу

Цитата
Сообщение от Max2114 Посмотреть сообщение
Может кто-нибудь желает заработать? Готов заплатить за разработку такого решения. Только если кто хочет - у меня сроки - неделя Думаю что и сам справлюсь да дел много - если кто захочет, то мне проще будет заплатить...
Бюджет?)


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

Добро всегда побеждает зло. Кто победил - тот и добрый.
Arsie сейчас на форуме   Ответить с цитированием
Старый 14.04.2015, 07:48   #6
Max2114
Senior Member
 
Регистрация: Jun 2007
Адрес: Tyumen
Сообщения: 2 052
Благодарил(а): 20 раз(а)
Поблагодарили: 21 раз(а) в 21 сообщениях
По умолчанию Ответ: Расписание по интерфейсу

Цитата:
Сообщение от Arsie Посмотреть сообщение
Бюджет?)
Ваши предложения?
Max2114 вне форума   Ответить с цитированием
Старый 14.04.2015, 10:43   #7
Arsie
Сотрудник Segnetics
 
Аватара для Arsie
 
Регистрация: Jan 2006
Адрес: Russia, SPb
Сообщения: 18 021
Благодарил(а): 15 раз(а)
Поблагодарили: 655 раз(а) в 599 сообщениях
По умолчанию Ответ: Расписание по интерфейсу

Цитата
Сообщение от Max2114 Посмотреть сообщение
Ваши предложения?
Техзадание вперед) Нужен сам макрос с выходом в модбас или решение под ключ, с "ответкой" в скаде? Сколько событий в сутки?


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

Добро всегда побеждает зло. Кто победил - тот и добрый.
Arsie сейчас на форуме   Ответить с цитированием
Старый 14.04.2015, 10:54   #8
Max2114
Senior Member
 
Регистрация: Jun 2007
Адрес: Tyumen
Сообщения: 2 052
Благодарил(а): 20 раз(а)
Поблагодарили: 21 раз(а) в 21 сообщениях
По умолчанию Ответ: Расписание по интерфейсу

Цитата:
Сообщение от Arsie Посмотреть сообщение
Техзадание вперед) Нужен сам макрос с выходом в модбас или решение под ключ, с "ответкой" в скаде? Сколько событий в сутки?
Самый идеальный вариант - расписание как в конструкторе с возможностью задать со скады. Со стороны скады делать ничего не надо. Возможно подойдет и более простой вариант - на день задается время работы системы (время запуска и остановки) без изменения уставки температуры, с возможностью задания по дням недели.
Max2114 вне форума   Ответить с цитированием
Старый 17.04.2015, 10:24   #9
Max2114
Senior Member
 
Регистрация: Jun 2007
Адрес: Tyumen
Сообщения: 2 052
Благодарил(а): 20 раз(а)
Поблагодарили: 21 раз(а) в 21 сообщениях
По умолчанию Ответ: Расписание по интерфейсу

Цитата:
Сообщение от Arsie Посмотреть сообщение
Техзадание вперед) Нужен сам макрос с выходом в модбас или решение под ключ, с "ответкой" в скаде? Сколько событий в сутки?
Сегодня пробовал экспериментировать со штатным расписанием... и не понял - там какая-то защита стоит? Тупо не работет внутри расписания макрос bool-int.. работают ли остальные макросы пока не проверял... во вложении скрины...

Последний раз редактировалось Arsie, 17.04.2015 в 11:46
Max2114 вне форума   Ответить с цитированием
Старый 17.04.2015, 11:36   #10
Arsie
Сотрудник Segnetics
 
Аватара для Arsie
 
Регистрация: Jan 2006
Адрес: Russia, SPb
Сообщения: 18 021
Благодарил(а): 15 раз(а)
Поблагодарили: 655 раз(а) в 599 сообщениях
По умолчанию Ответ: Расписание по интерфейсу

Цитата
Сообщение от Max2114 Посмотреть сообщение
Сегодня пробовал экспериментировать со штатным расписанием... и не понял - там какая-то защита стоит? Тупо не работет внутри расписания макрос bool-int.. работают ли остальные макросы пока не проверял... во вложении скрины...
Мой вам совет. Не трогайте этот макрос. Всё там работает, но только ровно так, как захотел Конструктор.


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

Добро всегда побеждает зло. Кто победил - тот и добрый.
Arsie сейчас на форуме   Ответить с цитированием
Старый 17.04.2015, 11:39   #11
Max2114
Senior Member
 
Регистрация: Jun 2007
Адрес: Tyumen
Сообщения: 2 052
Благодарил(а): 20 раз(а)
Поблагодарили: 21 раз(а) в 21 сообщениях
По умолчанию Ответ: Расписание по интерфейсу

Цитата:
Сообщение от Arsie Посмотреть сообщение
Мой вам совет. Не трогайте этот макрос.
я так и понял. Только не понял почему. Теоретически я придумал механизм как со скады иметь возможность задавать расписание используя штатный макрос конструктора... если только нет подводных камней (как вот то, что блоки внутрь макроса помещаются но не работают)... может быть у Вас есть такой макрос расписания который можно редактировать?
Max2114 вне форума   Ответить с цитированием
Старый 17.04.2015, 12:15   #12
Max2114
Senior Member
 
Регистрация: Jun 2007
Адрес: Tyumen
Сообщения: 2 052
Благодарил(а): 20 раз(а)
Поблагодарили: 21 раз(а) в 21 сообщениях
По умолчанию Ответ: Расписание по интерфейсу

Цитата:
Сообщение от Arsie Посмотреть сообщение
Мой вам совет. Не трогайте этот макрос. Всё там работает, но только ровно так, как захотел Конструктор.
Тогда другой вопрос. Есть ли смысл делать два расписания? Одно - "местное" и второе "дистанционное"? я это к чему - чтобы не отказываться совсем от расписания, которое можно задать из контроллера... (Все-таки если делать свой макрос то совсем не хочется заморачиваться с выводом возможности его редактирования из ПЛК).
Max2114 вне форума   Ответить с цитированием
Старый 17.04.2015, 12:36   #13
Arsie
Сотрудник Segnetics
 
Аватара для Arsie
 
Регистрация: Jan 2006
Адрес: Russia, SPb
Сообщения: 18 021
Благодарил(а): 15 раз(а)
Поблагодарили: 655 раз(а) в 599 сообщениях
По умолчанию Ответ: Расписание по интерфейсу

Цитата
Сообщение от Max2114 Посмотреть сообщение
Тогда другой вопрос. Есть ли смысл делать два расписания? Одно - "местное" и второе "дистанционное"? я это к чему - чтобы не отказываться совсем от расписания, которое можно задать из контроллера... (Все-таки если делать свой макрос то совсем не хочется заморачиваться с выводом возможности его редактирования из ПЛК).
Любая задача - это набор требований и возможностей их реализации.

Если ваша задача позволяет использовать два расписания, то смысл есть. Если не позволяет, то смысла нет.

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


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

Добро всегда побеждает зло. Кто победил - тот и добрый.
Arsie сейчас на форуме   Ответить с цитированием
Старый 17.04.2015, 12:50   #14
Arsie
Сотрудник Segnetics
 
Аватара для Arsie
 
Регистрация: Jan 2006
Адрес: Russia, SPb
Сообщения: 18 021
Благодарил(а): 15 раз(а)
Поблагодарили: 655 раз(а) в 599 сообщениях
По умолчанию Ответ: Расписание по интерфейсу

Цитата
Сообщение от Max2114 Посмотреть сообщение
я так и понял. Только не понял почему. Теоретически я придумал механизм как со скады иметь возможность задавать расписание используя штатный макрос конструктора... если только нет подводных камней (как вот то, что блоки внутрь макроса помещаются но не работают)... может быть у Вас есть такой макрос расписания который можно редактировать?
Либо в библиотеке: http://forum.segnetics.com/showthread.php?t=865

Либо из старенького Конструктора: файл
Вложения
Тип файла: msl q.msl (197.2 Кбайт, 94 просмотров)


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

Добро всегда побеждает зло. Кто победил - тот и добрый.
Arsie сейчас на форуме   Ответить с цитированием
Старый 17.04.2015, 13:00   #15
Max2114
Senior Member
 
Регистрация: Jun 2007
Адрес: Tyumen
Сообщения: 2 052
Благодарил(а): 20 раз(а)
Поблагодарили: 21 раз(а) в 21 сообщениях
По умолчанию Ответ: Расписание по интерфейсу

Цитата:
Сообщение от Arsie Посмотреть сообщение
Любая задача - это набор требований и возможностей их реализации.

Если ваша задача позволяет использовать два расписания, то смысл есть. Если не позволяет, то смысла нет.

Вашей задачей владеете только вы. Соответственно, любые решения можете принять исключительно вы.
Ладно, рассуждаем дальше. Просто интересно мнение. Я пока вижу 2 способа реализации расписания. 1 - "в лоб". Каждая точка - набор переменных со скады. Как сделано в примере, выложенным пользователем Aard. 2 - сделать наподобии конструкторского. Все точки хранятся в нескольких блоках памяти и переключаются при помощи выбора дня недели и номера точки. В таком случае пользователь со скады перебирает дни недели номера точек и задает нужные значения. Такой способ довольно сильно уменьшит количество переменных, передаваемых со скады и имеет смысл при большом количестве контроллеров.
Я начал реализовывать этот второй способ и вот задумался над такими вопросами:
1. Не будет ли это слишком нудно для пользователя - настраивать такое расписание.
2. Встает проблема того, как организовывать запись в память. Есть несколько вариантов, пока "красивого" я не придумал. Тут разговор о чем... Выбираю я день недели, скажем понедельник, и точку.. скажем 1. ДАлее без проблем подгружаются данные из памяти и я вижу то, что сейчас там установлено. Теперь мне надо отокорректировать значения, и вот тут встает проблема...такие есть варинаты:
- Либо я при нажатии на соответсвующую переменную (скажем время) ввожу значения и нажимаю кнопку "задать". При этом программа смлоджика отлавливает изменение переменной и проводит запись в память. Но данный способ имеет некие проблемы - если я в прошлой точке задал такое же значение, то изменения не произойдет и записи в память не будет.... Тут как варинт, можно попробовать внутри контроллера сравнить задаваемое значение и считываемое и на основании этого сформировать импульс записи. Однако такой механизм может начать срабатывать когда я просто перещелкиваю дни недели...
- Еще один способ - делать 2 столбца. Считываемы значения и задаваемые значения. В одном столбце автоматически обновляются данные при изменении точки и дня недели, а такде обновляются при перезаписи. Второй столбец - значения которые будут заданы в контроллер. Сначала выбираем нужные значения, затем нажимаем кнопку "записать". Такой способ должен корректно работать, но боюсь что редактирование расписания тогда будет крайне муторным занятием...

Может у кого есть мысли по этому поводу?
Max2114 вне форума   Ответить с цитированием
Старый 17.04.2015, 13:44   #16
Arsie
Сотрудник Segnetics
 
Аватара для Arsie
 
Регистрация: Jan 2006
Адрес: Russia, SPb
Сообщения: 18 021
Благодарил(а): 15 раз(а)
Поблагодарили: 655 раз(а) в 599 сообщениях
По умолчанию Ответ: Расписание по интерфейсу

Цитата
Сообщение от Max2114 Посмотреть сообщение
Может у кого есть мысли по этому поводу?
Я вообще не вижу проблем ни в чём.

Всё, что вы озвучили, решаемо программно. И решаемо несложно.

Вплоть до выполнения "нудной работы" по перебору точек самим компьютером со скадой.


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

Добро всегда побеждает зло. Кто победил - тот и добрый.
Arsie сейчас на форуме   Ответить с цитированием
Старый 17.04.2015, 14:09   #17
Max2114
Senior Member
 
Регистрация: Jun 2007
Адрес: Tyumen
Сообщения: 2 052
Благодарил(а): 20 раз(а)
Поблагодарили: 21 раз(а) в 21 сообщениях
По умолчанию Ответ: Расписание по интерфейсу

Цитата:
Сообщение от Arsie Посмотреть сообщение
Я вообще не вижу проблем ни в чём.

Всё, что вы озвучили, решаемо программно. И решаемо несложно.

Вплоть до выполнения "нудной работы" по перебору точек самим компьютером со скадой.
Я понимаю что все решаемо и реализуемо. Хочется сделать оптимальным образом.
Ваш макрос расписания из старенького конструктора я переработал и в принцпе все работает. Только вот я не понял одной вещи. Загрузил в контроллер программу только с одним расписанием и больше ничего и сделал так, чтобы это окно отображалось постоянно. И при включении контроллера выдает вот такое окно (см. приложение). Если пощелкать вправо/влево то потом окно оторажатеся нормально. Т.е. при включении контролелра вместо надписи "(1) понедельник" отображается то, что на фото. Если уйти во вторник а потом обратно то все нормально. Если во время выполнения прогрраммы отключить отображение окна расписания и включить обратно то тоже все в норме. Если выключить/включить контроллер - история повторяется.
Миниатюры
Нажмите на картинку для увеличения

Название:  20150417_145559.jpg
Просмотров: 200
Размер:  479.3 Кбайт  
Max2114 вне форума   Ответить с цитированием
Старый 17.04.2015, 14:14   #18
Max2114
Senior Member
 
Регистрация: Jun 2007
Адрес: Tyumen
Сообщения: 2 052
Благодарил(а): 20 раз(а)
Поблагодарили: 21 раз(а) в 21 сообщениях
По умолчанию Ответ: Расписание по интерфейсу

Цитата:
Сообщение от Arsie Посмотреть сообщение
Я вообще не вижу проблем ни в чём.

Всё, что вы озвучили, решаемо программно. И решаемо несложно.

Вплоть до выполнения "нудной работы" по перебору точек самим компьютером со скадой.
В принципе за 20 минут я доработал макрос так, что можно задавать расписание через сеть и при этом его можно задавать и с контроллера. Только пока осталась проблема, описанная в посте от 13.09. Во вложении то, что получилось.
Вложения
Тип файла: rar Расписание_сеть.rar (49.3 Кбайт, 80 просмотров)
Max2114 вне форума   Ответить с цитированием
Старый 17.04.2015, 14:21   #19
Arsie
Сотрудник Segnetics
 
Аватара для Arsie
 
Регистрация: Jan 2006
Адрес: Russia, SPb
Сообщения: 18 021
Благодарил(а): 15 раз(а)
Поблагодарили: 655 раз(а) в 599 сообщениях
По умолчанию Ответ: Расписание по интерфейсу

Цитата
Сообщение от Max2114 Посмотреть сообщение
Я понимаю что все решаемо и реализуемо. Хочется сделать оптимальным образом.
Так вы задачу-то целиком так и не озвучили. Откуда же мне и всем остальным знать, что для вас оптимально?



Цитата
Сообщение от Max2114 Посмотреть сообщение
Ваш макрос расписания из старенького конструктора я переработал и в принцпе все работает. Только вот я не понял одной вещи. Загрузил в контроллер программу только с одним расписанием и больше ничего и сделал так, чтобы это окно отображалось постоянно. И при включении контроллера выдает вот такое окно (см. приложение).
Поймите меня правильно. Даже не хочу рассматривать работу этого макроса вне меню. Это никогда никому не пригодится. Ни мне, ни вам, ни кому-либо другому.


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

Добро всегда побеждает зло. Кто победил - тот и добрый.
Arsie сейчас на форуме   Ответить с цитированием
Старый 17.04.2015, 14:29   #20
Max2114
Senior Member
 
Регистрация: Jun 2007
Адрес: Tyumen
Сообщения: 2 052
Благодарил(а): 20 раз(а)
Поблагодарили: 21 раз(а) в 21 сообщениях
По умолчанию Ответ: Расписание по интерфейсу

Цитата:
Сообщение от Arsie Посмотреть сообщение
Так вы задачу-то целиком так и не озвучили. Откуда же мне и всем остальным знать, что для вас оптимально?
Как это не описал? А это:
Цитата Самый идеальный вариант - расписание как в конструкторе с возможностью задать со скады. Со стороны скады делать ничего не надо. Возможно подойдет и более простой вариант - на день задается время работы системы (время запуска и остановки) без изменения уставки температуры, с возможностью задания по дням недели.
Да, четкого техзадания не дал - но в этом есть простор для творчества
Цитата:
Сообщение от Arsie Посмотреть сообщение
Поймите меня правильно. Даже не хочу рассматривать работу этого макроса вне меню. Это никогда никому не пригодится. Ни мне, ни вам, ни кому-либо другому.
Я так понимаю, что этот макрос изначально не должен отображаться... сейчас засуну его в основную программу и посмотрю что из этого выйдет.
Max2114 вне форума   Ответить с цитированием
Старый 17.04.2015, 14:56   #21
Arsie
Сотрудник Segnetics
 
Аватара для Arsie
 
Регистрация: Jan 2006
Адрес: Russia, SPb
Сообщения: 18 021
Благодарил(а): 15 раз(а)
Поблагодарили: 655 раз(а) в 599 сообщениях
По умолчанию Ответ: Расписание по интерфейсу

Цитата
Сообщение от Max2114 Посмотреть сообщение
Как это не описал? А это:
Да, четкого техзадания не дал - но в этом есть простор для творчества
Это не задача. Это реализация какой-то задачи, выбранная вами. Критерии выбора вы также не озвучивали.

Простор остался только в конкретном способе реализации.



Цитата
Сообщение от Max2114 Посмотреть сообщение
Я так понимаю, что этот макрос изначально не должен отображаться... сейчас засуну его в основную программу и посмотрю что из этого выйдет.
Конечно не должен.


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

Добро всегда побеждает зло. Кто победил - тот и добрый.
Arsie сейчас на форуме   Ответить с цитированием
Старый 17.04.2015, 15:11   #22
Max2114
Senior Member
 
Регистрация: Jun 2007
Адрес: Tyumen
Сообщения: 2 052
Благодарил(а): 20 раз(а)
Поблагодарили: 21 раз(а) в 21 сообщениях
По умолчанию Ответ: Расписание по интерфейсу

Цитата:
Сообщение от Arsie Посмотреть сообщение
Конечно не должен.
Вроде бы как все работает. Сейчас тестирую. Еще не разобрался со статусами "пуск/стоп" но это дело недолгое. Как будет готово - выложу сюда программу со встроенным расписанием... только вот мне непонятно - реализовывается это все довольно просто - почему Вы отказываетесь предусмотреть такую возможность в конструкторе?
Max2114 вне форума   Ответить с цитированием
Старый 17.04.2015, 15:27   #23
Arsie
Сотрудник Segnetics
 
Аватара для Arsie
 
Регистрация: Jan 2006
Адрес: Russia, SPb
Сообщения: 18 021
Благодарил(а): 15 раз(а)
Поблагодарили: 655 раз(а) в 599 сообщениях
По умолчанию Ответ: Расписание по интерфейсу

Цитата
Сообщение от Max2114 Посмотреть сообщение
Вроде бы как все работает. Сейчас тестирую. Еще не разобрался со статусами "пуск/стоп" но это дело недолгое. Как будет готово - выложу сюда программу со встроенным расписанием... только вот мне непонятно - реализовывается это все довольно просто - почему Вы отказываетесь предусмотреть такую возможность в конструкторе?
потому что то, что вы сделали, называется "полуфабрикат". Вы его сделали, вы и будете объяснять далее, как им пользоваться и именно вам будет выедать мозг программист скады. Либо ответную часть на скаде вы сделаете самостоятельно.

Мы, как производитель, не можем дать полуфабрикат. Мы даём либо способ решить вашу задачу, либо готовое решение задачи.

Способ мы дали, способ достаточно несложный, чтобы вы смогли им воспользоваться.


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

Добро всегда побеждает зло. Кто победил - тот и добрый.
Arsie сейчас на форуме   Ответить с цитированием
Старый 17.04.2015, 15:37   #24
Max2114
Senior Member
 
Регистрация: Jun 2007
Адрес: Tyumen
Сообщения: 2 052
Благодарил(а): 20 раз(а)
Поблагодарили: 21 раз(а) в 21 сообщениях
По умолчанию Ответ: Расписание по интерфейсу

Цитата:
Сообщение от Arsie Посмотреть сообщение
потому что то, что вы сделали, называется "полуфабрикат". Вы его сделали, вы и будете объяснять далее, как им пользоваться и именно вам будет выедать мозг программист скады. Либо ответную часть на скаде вы сделаете самостоятельно.

Мы, как производитель, не можем дать полуфабрикат. Мы даём либо способ решить вашу задачу, либо готовое решение задачи.

Способ мы дали, способ достаточно несложный, чтобы вы смогли им воспользоваться.
А для меня ваш софт в итоге полуфабрикат. Я переделываю входы\выходы на интерфейс и формирую слова аварий для скады каждый раз вручную, потому что то, что получается в конструкторе меня не устраивает....
Max2114 вне форума   Ответить с цитированием
Старый 17.04.2015, 15:51   #25
Max2114
Senior Member
 
Регистрация: Jun 2007
Адрес: Tyumen
Сообщения: 2 052
Благодарил(а): 20 раз(а)
Поблагодарили: 21 раз(а) в 21 сообщениях
По умолчанию Ответ: Расписание по интерфейсу

Цитата:
Сообщение от Arsie Посмотреть сообщение
потому что то, что вы сделали, называется "полуфабрикат". Вы его сделали, вы и будете объяснять далее, как им пользоваться и именно вам будет выедать мозг программист скады. Либо ответную часть на скаде вы сделаете самостоятельно.

Мы, как производитель, не можем дать полуфабрикат. Мы даём либо способ решить вашу задачу, либо готовое решение задачи.

Способ мы дали, способ достаточно несложный, чтобы вы смогли им воспользоваться.
А как же это:
Цитата Не самая простая задача, переделать этот макрос.

Правильнее управлять со скады, реализовав расписание силами самой скады.
Тут Вы говорите что это не самая простая задача...
Max2114 вне форума   Ответить с цитированием
Старый 17.04.2015, 16:14   #26
Arsie
Сотрудник Segnetics
 
Аватара для Arsie
 
Регистрация: Jan 2006
Адрес: Russia, SPb
Сообщения: 18 021
Благодарил(а): 15 раз(а)
Поблагодарили: 655 раз(а) в 599 сообщениях
По умолчанию Ответ: Расписание по интерфейсу

Цитата
Сообщение от Max2114 Посмотреть сообщение
А как же это:

Тут Вы говорите что это не самая простая задача...
На фоне остальных вопросов на форуме - действительно не самая простая


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

Добро всегда побеждает зло. Кто победил - тот и добрый.
Arsie сейчас на форуме   Ответить с цитированием
Старый 20.04.2015, 07:14   #27
Max2114
Senior Member
 
Регистрация: Jun 2007
Адрес: Tyumen
Сообщения: 2 052
Благодарил(а): 20 раз(а)
Поблагодарили: 21 раз(а) в 21 сообщениях
По умолчанию Ответ: Расписание по интерфейсу

Цитата:
Сообщение от Arsie Посмотреть сообщение
На фоне остальных вопросов на форуме - действительно не самая простая
Однако, когда я спрашивал про веб-сервер и получение данныех из PHP Напрямую из шаредмемори, Вы мне писали что мол это просто и дня за 3 можно и самому разобраться и мол любой программист под PHP это напишет легко и просто... однако ниукого так и не получилось.. а тут - столько раз Вы писали о том, что сделать расписание из скады сложно и не нужно, что я даже в это поверил... а на деле оказалось дело на полчаса - час...
Max2114 вне форума   Ответить с цитированием
Старый 20.04.2015, 09:13   #28
Max2114
Senior Member
 
Регистрация: Jun 2007
Адрес: Tyumen
Сообщения: 2 052
Благодарил(а): 20 раз(а)
Поблагодарили: 21 раз(а) в 21 сообщениях
По умолчанию Ответ: Расписание по интерфейсу

Цитата
Сообщение от Max2114 Посмотреть сообщение
Появилась необходимость задавать расписание работы по интерфейсу... очень сильная необходимость. Кто-нибудь уже реализовывал такое?
Я вижу такие пути:
1. Написать новый макрос расписания и вставлять его самостоятельно в проект. Пока концепцию не придумал.
2. Сделать механизм корректирования существующего расписания со скады.
По какому пути лучше пойти?
PS Возможно Арсений или кто-нибудь другой поделится своими мыслями или наработками
В итоге пошел по второму пути. Только вот расписание из текущего конструктора работает хитрым образом и его откорректировать не получилось. Пришлось взять расписание более старой версии. Прикладываю программу, и описание работы, может еще кому пригодится:
Имеем 4 входные переменные и 4 выходные. Все переменные типа 16-ти битовый целочисленный (int).
Bit_input_schedule - упакованные в слово два бита. Бит 0 - Если выставляем его в "1" - включается разрешение производить корректировку расписания из скада-системы. При этом расписание должно быть закрыто на экране контроллера. Иначе редактирование запрещено.
Бит 1 - импульс записи. При установке его в 1 происходит перезапись выбранного параметра в память контроллера. Для последующей перезаписи этот бит необходимо сбросить в 0 и опять установить в 1.

Адрес - Задается день недели. 0 - понедельник, 1 - вторник и т.д.

Курсор - задается положение курсора для редактирования переменной. 0 - время первой точки, 1 - уставка Т первой точки, 2 - занчение "пуск/стоп" первой точки, 3 - время второй точки и т.д.

Int - Задаем значение переменной для записи в память. Формат переменных:
Время - ЧЧММ (где ЧЧ - часы, ММ - минуты) задается единым числом (к примеру 2210 = 22:10).
Уставка Т - задается в грудсах цельсия
Пуск/стоп - задаем "1" если точка типа "Пуск" и 0 если точка типа "стоп".

Переменные для чтения:
Время Текущее заданное в выбранной точке время.
Уставка уставка температуры в текущей точки
Выкл/вкл - упакованное слово состояний точек выбранного дня. 0 - стоп, 1 - пуск. в итоге если 2 точки пуск а 2 стоп то будет так: 0011(Bin)=3(dec).
Выкл/вкл_bit - состояние текущей выбранной точки (пуск/стоп) 0 - стоп, 1 - пуск.

Принцип работы с расписанием:
Со скады переменной "адрес" выбираем нужный день. При этом в поля для отображения данных выкидываем значения переменных для чтения. При изменении дня недели автоматически будут изменяться и значения этих переменных.
Переменной "курсор" выбираем переменную для редактирования. С помощью этой переменной также перемещаемся по точкам внутри одного дня недели. 0 - время первой точки, 1 - уставка Т первой точки, 2 - пуск/стоп первой точки, 3 - время второй точки и т.д.
С помощью переменной "int" задаем значение выбранного параметра расписания. Для записи посылаем импульс в бит 1 слова Bit_input_schedule. После проведения записи переменные для отображения автоматически обновятся.
Вложения
Тип файла: rar Тест_расписание_скада.rar (701.0 Кбайт, 123 просмотров)
Max2114 вне форума   Ответить с цитированием
Благодарность от:
Старый 20.04.2015, 10:29   #29
Arsie
Сотрудник Segnetics
 
Аватара для Arsie
 
Регистрация: Jan 2006
Адрес: Russia, SPb
Сообщения: 18 021
Благодарил(а): 15 раз(а)
Поблагодарили: 655 раз(а) в 599 сообщениях
По умолчанию Ответ: Расписание по интерфейсу

Цитата
Сообщение от Max2114 Посмотреть сообщение
Однако, когда я спрашивал про веб-сервер и получение данныех из PHP Напрямую из шаредмемори, Вы мне писали что мол это просто и дня за 3 можно и самому разобраться и мол любой программист под PHP это напишет легко и просто... однако ниукого так и не получилось.. а тут - столько раз Вы писали о том, что сделать расписание из скады сложно и не нужно, что я даже в это поверил... а на деле оказалось дело на полчаса - час...
Вы сделали макрос, работающий с модбасом, а не полноценное расписание на скаде. Я правильно понимаю?


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

Добро всегда побеждает зло. Кто победил - тот и добрый.
Arsie сейчас на форуме   Ответить с цитированием
Старый 20.04.2015, 11:43   #30
Max2114
Senior Member
 
Регистрация: Jun 2007
Адрес: Tyumen
Сообщения: 2 052
Благодарил(а): 20 раз(а)
Поблагодарили: 21 раз(а) в 21 сообщениях
По умолчанию Ответ: Расписание по интерфейсу

Цитата:
Сообщение от Arsie Посмотреть сообщение
Вы сделали макрос, работающий с модбасом, а не полноценное расписание на скаде. Я правильно понимаю?
Естествено. Как сделать редактирование этого расписания в скаде я уже придумал и все вполне реализуемо. Также еще вытащу его в ЖК-панелях вайнтек... там тоже проблем не вызовет.
PS еще пару часов уйдет на реализацию в скаде... не такая уж и сложная задача...
PPS скады бывают разные. Кому надо реализует в той скаде в которой ему удобно работать... главное иметь возможность редактировать по модбасу...

Последний раз редактировалось Max2114, 20.04.2015 в 11:59
Max2114 вне форума   Ответить с цитированием
Ответ

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск
Опции просмотра

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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Простое расписание для Trim5 / SMH5 Arsie Библиотека макросов 1 06.10.2021 12:11
Отсутствует пункт расписание Tihn Вопросы о Pixel 3 17.09.2018 16:06
(2016 год) Windows 7 x86: Не находятся контроллеры по Ethernet интерфейсу pronux Сообщения об ошибках 0 04.04.2016 09:59
Расписание с большим количеством точек 5144 Вопросы о программировании 1 27.02.2015 19:21
Расписание Max2114 SMConstructor (вентиляция) 17 03.10.2012 10:52


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


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