SIEMENS, DF&PD

Предыдущее посещение: Чт июл 07, 2016 17:43 Текущее время: Чт июл 07, 2016 17:43

Часовой пояс: UTC + 3 часа




 [ Сообщений: 25 ]  На страницу 1, 2  След.
Автор Сообщение
 Заголовок сообщения: Инвертировать дискредный входной сигнал
СообщениеДобавлено: Чт сен 11, 2014 10:58 
Не в сети
Новый писатель

Зарегистрирован: Пн май 31, 2010 8:41
Сообщения: 43
Откуда: Звенигород
Добрый день!
Подскажите как инвертировать дискретный вход (с NC на NO) не штудируя весь проект программы.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Чт сен 11, 2014 11:01 
Не в сети
Написал больше чем Вы читали

Зарегистрирован: Пн фев 20, 2012 8:35
Сообщения: 1069
не лазея в прогу - поставить реле


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Чт сен 11, 2014 11:17 
Не в сети
Новый писатель

Зарегистрирован: Пн май 31, 2010 8:41
Сообщения: 43
Откуда: Звенигород
inzhener писал(а):
не лазея в прогу - поставить реле

Я так и делаю, только это не профессионально :)


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Чт сен 11, 2014 11:18 
Не в сети
Ведущий специалист

Зарегистрирован: Вт янв 11, 2005 9:27
Сообщения: 5029
Откуда: SIEMENS I IA AS Москва
если вся работа с дискретным сигналом в программе идет через область отображения процесса и область отображения процесса не обновляется в теле программы, то в начале цикла программы в ОВ1 (например), написать
AN Ix.у
= Ix.у


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Чт сен 11, 2014 11:28 
Не в сети
Новый писатель

Зарегистрирован: Пн май 31, 2010 8:41
Сообщения: 43
Откуда: Звенигород
Кухаренко Сергей писал(а):
если вся работа с дискретным сигналом в программе идет через область отображения процесса и область отображения процесса не обновляется в теле программы, то в начале цикла программы в ОВ1 (например), написать
AN Ix.у
= Ix.у


Большое спасибо!


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Чт сен 11, 2014 11:51 
Не в сети
Известный Писатель

Зарегистрирован: Вт июл 07, 2009 14:46
Сообщения: 229
Откуда: Нижний Новгород
Кухаренко Сергей писал(а):
если вся работа с дискретным сигналом в программе идет через область отображения процесса и область отображения процесса не обновляется в теле программы, то в начале цикла программы в ОВ1 (например), написать
AN Ix.у
= Ix.у

Получается, этот вход в выполняемой программе всегда будет равен 1, не зависимо от его реального состояния на входе?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Чт сен 11, 2014 11:53 
Не в сети
Ведущий специалист

Зарегистрирован: Вт янв 11, 2005 9:27
Сообщения: 5029
Откуда: SIEMENS I IA AS Москва
Это откуда такие глубокомысленные заключения? Объясните ваши логические выводы! Только с учетом функционала обновления области отображения процесса при изменении реального состояния входа.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Чт сен 11, 2014 12:27 
Не в сети
Известный Писатель

Зарегистрирован: Вт июл 07, 2009 14:46
Сообщения: 229
Откуда: Нижний Новгород
Кухаренко Сергей писал(а):
Это откуда такие глубокомысленные заключения? Объясните ваши логические выводы! Только с учетом функционала обновления области отображения процесса при изменении реального состояния входа.

Как на мой взгляд это будет работать?
Для простоты я не буду упоминать шаги обработки цикла, не влияющие на результат.
Допустим сигнал на входе 0. В начале цикла обновляется область входов. Вход в программе 0.
В программе после Ваших 2-х строчек вход устанавливается в 1 и как 1 дальше обрабатывается.
В следующем цикле все повторяется. Пока все нормально, происходит инвертирование состояния входа.
Теперь на вход пришла 1. В начале цикла обновляется область входов. Вход в программе 1.
Поскольку условие из 1-й строки не выполняется, с состоянием входа ничего не происходит. Он остается в 1. Где же тут инвертирование?
На реальном контроллере нет возможности проверить, а симулятор какую-то ерунду показывает.
Поправьте меня, если я не прав.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Чт сен 11, 2014 12:31 
Не в сети
Написал больше чем Вы читали

Зарегистрирован: Пт апр 24, 2009 9:59
Сообщения: 1172
Откуда: Гомель
Отображение входов происходит до выполнения OB1!


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Чт сен 11, 2014 12:33 
Не в сети
Известный Писатель

Зарегистрирован: Вт июл 07, 2009 14:46
Сообщения: 229
Откуда: Нижний Новгород
Fraeser писал(а):
Отображение входов происходит до выполнения OB1!

И что?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Чт сен 11, 2014 12:34 
Не в сети
Ведущий специалист

Зарегистрирован: Вт янв 11, 2005 9:27
Сообщения: 5029
Откуда: SIEMENS I IA AS Москва
Alex_NN! Предлагаю вам пройти обучение нулевого уровня!!
Поскольку условия AN Ix.y не выполняются, то результат равен 0.
Проверте на симуляторе как будет выполняться
строчка AN M10.0=M10.1.
Вот он наглядный результат языков высокого уровня и CFC!!!


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Чт сен 11, 2014 12:41 
Не в сети
Известный Писатель

Зарегистрирован: Вт июл 07, 2009 14:46
Сообщения: 229
Откуда: Нижний Новгород
Кухаренко Сергей писал(а):
Alex_NN! Предлагаю вам пройти обучение нулевого уровня!!
Поскольку условия AN Ix.y не выполняются, то результат равен 0.
Проверте на симуляторе как будет выполняться
строчка AN M10.0=M10.1.
Вот он наглядный результат языков высокого уровня и CFC!!!

Да, правда, работает. Давно не писал в STL, подзабыл... Приятно иметь дело с профессионалами!
Про языки высокого уровня, это не про меня. Обхожусь LAD и STL.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Чт сен 11, 2014 15:45 
Не в сети
Новый писатель

Зарегистрирован: Пн май 31, 2010 8:41
Сообщения: 43
Откуда: Звенигород
Получается если только переназначить одни вход на другой, например:
AN I 0.1
=I 0.2
А как написать без переназеачения входов?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Чт сен 11, 2014 15:46 
Не в сети
Новый писатель

Зарегистрирован: Пн май 31, 2010 8:41
Сообщения: 43
Откуда: Звенигород
Кухаренко Сергей писал(а):
если вся работа с дискретным сигналом в программе идет через область отображения процесса и область отображения процесса не обновляется в теле программы, то в начале цикла программы в ОВ1 (например), написать
AN Ix.у
= Ix.у


Получается если только переназначить одни вход на другой, например:
AN I 0.1
=I 0.2
А как написать без переназеачения входов?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Чт сен 11, 2014 15:50 
Не в сети
Ведущий специалист

Зарегистрирован: Вт янв 11, 2005 9:27
Сообщения: 5029
Откуда: SIEMENS I IA AS Москва
Пишите, как я вам сказал, т.е. AN I0.1=I0.1
Просто пример с меркерами я привел такой по той причине, что иначе его работу нельзя будет проанализировать в симуляторе.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Чт сен 11, 2014 15:55 
Не в сети
Новый писатель

Зарегистрирован: Пн май 31, 2010 8:41
Сообщения: 43
Откуда: Звенигород
Кухаренко Сергей писал(а):
Пишите, как я вам сказал, т.е. AN I0.1=I0.1
Просто пример с меркерами я привел такой по той причине, что иначе его работу нельзя будет проанализировать в симуляторе.


Я так т написал и протестировал на CPU 315-2 DP

Тоесть:
AN I0.1=I0.1 и приэтом вход I 0.1 сам циклически переключаеся с 0 на 1 и так постоянно без остановки.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Чт сен 11, 2014 16:00 
Не в сети
Написал больше чем Вы читали

Зарегистрирован: Пт апр 24, 2009 9:59
Сообщения: 1172
Откуда: Гомель
Будет на входе реальный сигнал - не будет переключаться


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Чт сен 11, 2014 16:02 
Не в сети
Ведущий специалист

Зарегистрирован: Вт янв 11, 2005 9:27
Сообщения: 5029
Откуда: SIEMENS I IA AS Москва
Уважаемый Алексей!
Либо вы не поддаетесь на провакации с попыткой запутать вас некоторых форумчан и для инвертирования входа пишите то, что я вам порекомендовал (можите не писать и применить входное реле), либо я вам (как и форумчанину, который вносит смуту) предложу пройти обучение нулевого уровня!!
Fraeser!! Рекомендую проверить на реальном контроллере! Все работает правильно!!
Всем поголовно рекомендую не мутить воду, а просто взять контроллер и проверить (на симуляторе, как я уже сказал проверять не имеет смысла).


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Чт сен 11, 2014 16:07 
Не в сети
Написал больше чем Вы читали

Зарегистрирован: Пт апр 24, 2009 9:59
Сообщения: 1172
Откуда: Гомель
Я и не говорил, что это не работает, а лишь внес человеку пояснение, чтобы он не пытался с пустым входом проверять работу. Не надо идти на поводу эмоций.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Чт сен 11, 2014 16:10 
Не в сети
Новый писатель

Зарегистрирован: Пн май 31, 2010 8:41
Сообщения: 43
Откуда: Звенигород
Кухаренко Сергей писал(а):
Уважаемый Алексей!
Либо вы не поддаетесь на провакации с попыткой запутать вас некоторых форумчан и для инвертирования входа пишите то, что я вам порекомендовал (можите не писать и применить входное реле), либо я вам (как и форумчанину, который вносит смуту) предложу пройти обучение нулевого уровня!!
Fraeser!! Рекомендую проверить на реальном контроллере! Все работает правильно!!
Всем поголовно рекомендую не мутить воду, а просто взять контроллер и проверить (на симуляторе, как я уже сказал проверять не имеет смысла).


Спасибо, обещаю больше не мутить воду.


Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
 [ Сообщений: 25 ]  На страницу 1, 2  След.

Часовой пояс: UTC + 3 часа


Кто сейчас на конференции

Сейчас этот форум просматривают: Ustyugov и гости: 5


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения

Перейти:  
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group