Segnetics

Вернуться   Segnetics > Форум Segnetics > Вопросы о программировании

Вопросы о программировании Вопросы, касающиеся программирования на FBD

Ответ
 
Опции темы Поиск в этой теме
Старый 26.03.2013, 10:59   #1
Faster
Senior Member
 
Аватара для Faster
 
Регистрация: Jun 2012
Сообщения: 187
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Question Внешнаяя авторизация

Не буду вдаваться в подробности но скажу что появилась нужда в организации внешней авторизации, объясню...
сейчас на самом СМХ вход в меню настроек через пароль, и это верно мало ли какие шаловливые ручки накрутят что ... а вот через мод бас всё напрямую ... вот так :


Нужно в общем сделать так чтобы переменные через модбас писались только если пройдена авторизация, в нашем случае представим это как мифический сигнал "Enabled" (эта часть была с легкостью реализована на FBD для любого числа юзаров и уровня доступа) и пришол тут же вот такой вариант в голову :

но он естественно не рабочий , так как уставка по изменению тут же занулится... вариант с стробом записи в уставку так же проваливается ...

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


__________________
дайте мне компилятор ДНК и сотворю мир (с) Я
Faster вне форума   Ответить с цитированием
Старый 26.03.2013, 11:32   #2
Arsie
Сотрудник Segnetics
 
Аватара для Arsie
 
Регистрация: Jan 2006
Адрес: Russia, SPb
Сообщения: 18 117
Благодарил(а): 15 раз(а)
Поблагодарили: 660 раз(а) в 604 сообщениях
По умолчанию Ответ: Внешнаяя авторизация

Цитата:
Сообщение от Faster Посмотреть сообщение
Не буду вдаваться в подробности но скажу что появилась нужда в организации внешней авторизации, объясню...

Нужно в общем сделать так чтобы переменные через модбас писались только если пройдена авторизация, в нашем случае представим это как мифический сигнал "Enabled" (эта часть была с легкостью реализована на FBD для любого числа юзаров и уровня доступа) и пришол тут же вот такой вариант в голову :

но он естественно не рабочий , так как уставка по изменению тут же занулится... вариант с стробом записи в уставку так же проваливается ...

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


Но лучше всё же использовать вариант со стробом, т.к. в предложенном мною способе при включении контроллера будет повальная перезапись памяти.

Можно разве что так, в этом случае ситуёвина выглядит лучше:



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

Добро всегда побеждает зло. Кто победил - тот и добрый.
Arsie вне форума   Ответить с цитированием
Старый 27.03.2013, 03:40   #3
Faster
Senior Member
 
Аватара для Faster
 
Регистрация: Jun 2012
Сообщения: 187
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
По умолчанию Ответ: Внешнаяя авторизация

Цитата:
Сообщение от Arsie Посмотреть сообщение
Ай простите я забыл дорисовать линию... торопился ... да именно т акой вариант пришёл в голову

Цитата:
Сообщение от Arsie Посмотреть сообщение
Но лучше всё же использовать вариант со стробом, т.к. в предложенном мною способе при включении контроллера будет повальная перезапись памяти.

Можно разве что так, в этом случае ситуёвина выглядит лучше:

А тут возникает ботва не факт что переменная модбас уже инициализирована тоесть после массового энабледа будет массовая перезапись ...

както необходимо узнать была ли запись в мод бас переменную... паричем даже нуля
но видимо это нереально ...


__________________
дайте мне компилятор ДНК и сотворю мир (с) Я
Faster вне форума   Ответить с цитированием
Старый 27.03.2013, 10:57   #4
Arsie
Сотрудник Segnetics
 
Аватара для Arsie
 
Регистрация: Jan 2006
Адрес: Russia, SPb
Сообщения: 18 117
Благодарил(а): 15 раз(а)
Поблагодарили: 660 раз(а) в 604 сообщениях
По умолчанию Ответ: Внешнаяя авторизация

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


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

Добро всегда побеждает зло. Кто победил - тот и добрый.
Arsie вне форума   Ответить с цитированием
Старый 27.03.2013, 11:15   #5
Sergey Cherevko
Senior Member
 
Аватара для Sergey Cherevko
 
Регистрация: Jul 2007
Адрес: Калининград
Сообщения: 422
Благодарил(а): 0 раз(а)
Поблагодарили: 1 раз в 1 сообщении
По умолчанию Ответ: Внешнаяя авторизация

Делал недавно нечто подобное. Автовыбор зачения на входе MB real от двух источников: modbus или внутреннее ограничение.
Изображения
Тип файла: jpg 4.JPG (23.6 Кбайт, 27 просмотров)
Тип файла: jpg 5.JPG (72.3 Кбайт, 35 просмотров)


__________________
Автомат АК - самый распространенный преобразователь стека в очередь
Sergey Cherevko вне форума   Ответить с цитированием
Старый 28.03.2013, 03:13   #6
Faster
Senior Member
 
Аватара для Faster
 
Регистрация: Jun 2012
Сообщения: 187
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
По умолчанию Ответ: Внешнаяя авторизация

Цитата:
Сообщение от Arsie Посмотреть сообщение
Прописать правило "устанавливаем нужные переменные, даём енаблю".
А пользователь хочет поменять одну уставку ??? нахрен ему перебивать 300
Нет инициализации модбас входов и нет возможности поглядеть изменение .. я вот к чему клоню ...

Цитата:
Сообщение от Sergey Cherevko Посмотреть сообщение
Делал недавно нечто подобное. Автовыбор зачения на входе MB real от двух источников: modbus или внутреннее ограничение.
Не выйдет опять же надо инициализировать


__________________
дайте мне компилятор ДНК и сотворю мир (с) Я
Faster вне форума   Ответить с цитированием
Старый 28.03.2013, 10:46   #7
Sergey Cherevko
Senior Member
 
Аватара для Sergey Cherevko
 
Регистрация: Jul 2007
Адрес: Калининград
Сообщения: 422
Благодарил(а): 0 раз(а)
Поблагодарили: 1 раз в 1 сообщении
По умолчанию Ответ: Внешнаяя авторизация

Цитата:
Сообщение от Faster Посмотреть сообщение
Не выйдет опять же надо инициализировать
Вам никто не мешает адаптировать мой алгоритм под свои нужды


__________________
Автомат АК - самый распространенный преобразователь стека в очередь
Sergey Cherevko вне форума   Ответить с цитированием
Старый 28.03.2013, 11:21   #8
Arsie
Сотрудник Segnetics
 
Аватара для Arsie
 
Регистрация: Jan 2006
Адрес: Russia, SPb
Сообщения: 18 117
Благодарил(а): 15 раз(а)
Поблагодарили: 660 раз(а) в 604 сообщениях
По умолчанию Ответ: Внешнаяя авторизация

Цитата:
Сообщение от Faster Посмотреть сообщение
А пользователь хочет поменять одну уставку ??? нахрен ему перебивать 300
Тогда зачем он до этого трогал эти 300 переменных? А если не трогал, то на них нули и всё будет работать правильно.


Цитата:
Сообщение от Faster Посмотреть сообщение
Нет инициализации модбас входов и нет возможности поглядеть изменение .. я вот к чему клоню ...
Я тоже сходу могу нагенерить десяток разных вариантов, в которых наш контроллер будет представлен в не самом лучшем свете. И плевать что каждый из этих вариантов в реальной жизни ни разу не встретится.


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

Добро всегда побеждает зло. Кто победил - тот и добрый.
Arsie вне форума   Ответить с цитированием
Ответ


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

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



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


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