Segnetics

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

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

Ответ
 
Опции темы Поиск в этой теме Опции просмотра
Старый 06.08.2020, 04:28   #1
SlavikP
Member
 
Регистрация: May 2019
Сообщения: 50
Благодарил(а): 2 раз(а)
Поблагодарили: 1 раз в 1 сообщении
По умолчанию Как правильно работать с "двунаправленными" элементами SMArt

В смарте можно создать переменные, которые могут и читаться из программы и записываться.
При этом в лоджике они видятся, как 2 разных объекта: отдельно для чтения, и отдельно для записи.
Возникла у меня потребность использования такой переменной: надо получить некий параметр, который будет доступен для редактирования персоналом, и при необходимости, может быть изменен из программы.
Как правильно сделать обвязку данного объекта?
Ведь вхоящая переменная каждый цикл передает свое значение по связи, а исходящая - каждый цикл получает свое значение из связи.
Как сделать, чтобы связь работала не каждый цикл, а по команде?
Кто работал с "двухголовыми" переменными, покажите пример реализации, плиз!
SlavikP вне форума   Ответить с цитированием
Старый 06.08.2020, 11:09   #2
Arsie
Сотрудник Segnetics
 
Аватара для Arsie
 
Регистрация: Jan 2006
Адрес: Russia, SPb
Сообщения: 18 019
Благодарил(а): 15 раз(а)
Поблагодарили: 655 раз(а) в 599 сообщениях
По умолчанию Ответ: Как правильно работать с "двунаправленными" переменными

Цитата
Сообщение от SlavikP Посмотреть сообщение
Как сделать
Можете описать задачу в терминах лоджика? А лучше попробуйте что-нибудь сделать и приложите к вопросу, станет хоть понятно, что за переменная у вас связывается по связи, работающей каждый цикл.


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

Добро всегда побеждает зло. Кто победил - тот и добрый.

Последний раз редактировалось Arsie, 06.08.2020 в 11:35
Arsie сейчас на форуме   Ответить с цитированием
Старый 06.08.2020, 11:22   #3
Ilya J.
Сотрудник Сегнетикс
 
Аватара для Ilya J.
 
Регистрация: Mar 2016
Адрес: SPb
Сообщения: 4 302
Благодарил(а): 0 раз(а)
Поблагодарили: 254 раз(а) в 250 сообщениях
По умолчанию Ответ: Как правильно работать с "двунаправленными" переменными

И о каком конкретно элементе смарта идет речь?


__________________
Если ничто другое не помогает, прочтите, наконец, инструкцию
Ilya J. сейчас на форуме   Ответить с цитированием
Старый 06.08.2020, 11:24   #4
Arsie
Сотрудник Segnetics
 
Аватара для Arsie
 
Регистрация: Jan 2006
Адрес: Russia, SPb
Сообщения: 18 019
Благодарил(а): 15 раз(а)
Поблагодарили: 655 раз(а) в 599 сообщениях
По умолчанию Ответ: Как правильно работать с "двунаправленными" переменными

Цитата
Сообщение от SlavikP Посмотреть сообщение
При этом в лоджике они видятся, как 2 разных объекта: отдельно для чтения, и отдельно для записи.
Вы про этот два объект?

Нажмите на картинку для увеличения

Название:  Безымянный.png
Просмотров: 18
Размер:  1.7 Кбайт


Видите, там есть название. "Ввод числа". Использование названий элементов делает ваши вопросы более конкретными.


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

Добро всегда побеждает зло. Кто победил - тот и добрый.
Arsie сейчас на форуме   Ответить с цитированием
Старый 07.08.2020, 00:57   #5
andre
Senior Member
 
Регистрация: Jun 2015
Сообщения: 551
Благодарил(а): 25 раз(а)
Поблагодарили: 9 раз(а) в 9 сообщениях
По умолчанию Ответ: Как правильно работать с "двунаправленными" элементами SMArt

как то так делаю, предварительно проверяя на тестовом контролере
Вложения
Тип файла: psl как то так.psl (121.9 Кбайт, 24 просмотров)
andre вне форума   Ответить с цитированием
Старый 07.08.2020, 04:40   #6
SlavikP
Member
 
Регистрация: May 2019
Сообщения: 50
Благодарил(а): 2 раз(а)
Поблагодарили: 1 раз в 1 сообщении
По умолчанию Ответ: Как правильно работать с "двунаправленными" элементами SMArt

Вот быстро нарисовал тестовый проект, в котором обозначил непонятное.
И у меня переменная из смарта выглядит, как 2 различные - одна для чтения и одна для записи. Но это одна и та же переменная.
Вложения
Тип файла: rar _test.rar (26.0 Кбайт, 13 просмотров)
SlavikP вне форума   Ответить с цитированием
Старый 07.08.2020, 11:38   #7
Ilya J.
Сотрудник Сегнетикс
 
Аватара для Ilya J.
 
Регистрация: Mar 2016
Адрес: SPb
Сообщения: 4 302
Благодарил(а): 0 раз(а)
Поблагодарили: 254 раз(а) в 250 сообщениях
По умолчанию Ответ: Как правильно работать с "двунаправленными" элементами SMArt

Цитата Как сделать, чтобы связь работала не каждый цикл, а по команде?
У элемента-экрана "меню настроек" в свойствах есть пункт "запись значения в память".


__________________
Если ничто другое не помогает, прочтите, наконец, инструкцию
Ilya J. сейчас на форуме   Ответить с цитированием
Старый 07.08.2020, 11:51   #8
Arsie
Сотрудник Segnetics
 
Аватара для Arsie
 
Регистрация: Jan 2006
Адрес: Russia, SPb
Сообщения: 18 019
Благодарил(а): 15 раз(а)
Поблагодарили: 655 раз(а) в 599 сообщениях
По умолчанию Ответ: Как правильно работать с "двунаправленными" элементами SMArt

Цитата
Сообщение от SlavikP Посмотреть сообщение
Вот быстро нарисовал тестовый проект, в котором обозначил непонятное.
И у меня переменная из смарта выглядит, как 2 различные - одна для чтения и одна для записи. Но это одна и та же переменная.
Нажмите на картинку для увеличения

Название:  Безымянный.png
Просмотров: 105
Размер:  16.2 Кбайт

Нажмите на картинку для увеличения

Название:  Безымянный1.png
Просмотров: 81
Размер:  59.8 Кбайт

Это делается так.

Но у вас сам подход к алгоритму "не очень" - вы почём зря изнашиваете память контроллера. Надо делать хотя бы так:

Нажмите на картинку для увеличения

Название:  Безымянный2.png
Просмотров: 99
Размер:  18.3 Кбайт


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


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

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

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

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

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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Как правильно пользоваться ArrayII() (решено) dp38 SMLogix 29 03.04.2018 10:46
Как правильно подключить реле HD-1025.DD3 dsboss Форум Segnetics 2 03.10.2016 18:08
Как правильно настроить Moxa Uport 1150 Arsie ЧаВо - Часто задаваемые Вопросы 1 27.04.2016 13:47
Как создавать пиксельные рисунки для SMArt MAXIM Вопросы о программировании 5 04.03.2014 00:22
Элемер EL-4019: как правильно прочитать данные dima Связь с внешним миром 3 06.03.2012 16:40


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


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