Siemens AG
Список форумов SIEMENS, Россия. IA&DT
   FAQFAQ   ПоискПоиск   ПользователиПользователи   ГруппыГруппы   РегистрацияРегистрация 
 ПрофильПрофиль   Войти и проверить личные сообщенияВойти и проверить личные сообщения   ВходВход 
Наверное простой вопрос про условие и таймер.

 
Начать новую тему   Ответить на тему    Список форумов SIEMENS, Россия. IA&DT -> Промышленное программное обеспечение
Предыдущая тема :: Следующая тема  
Автор Сообщение
LewAleks
Начинающий писатель


Зарегистрирован: 23.07.2010
Сообщения: 60

Сообщение Добавлено: Ср Апр 06, 2011 11:17    Заголовок сообщения: Наверное простой вопрос про условие и таймер. Ответить с цитатой

Здравствуйте!

Нужно написать программу.
В зависимости от состояния входов I 1.0 и I 1.1 нужно выполнять разные условия. В случае AN I 1.0 и A I 1.1 должен запускаться таймер и после прохождения времени указанного в нем на выход Q 0.0 подается 1. При первом выполнении так и происходит. А во второй раз и далее Q 0.0 загорается сразу же без задержки. Если использовать отдельно таймер (не внутри условия), то все срабатывает замечательно.

A I 1.0
A I 1.1
JCN m1
= Q 0.0
m1: NOP 0

AN I 1.1
A I 1.0
JCN m2
= Q 0.0
m2: NOP 0

AN I 1.0
A I 1.1
JCN m3

A I 1.1
FR T 1
A I 1.1
L S5T#5S
SD T 1

A T 1
= Q 0.0

L T 1
T MW 2
LC T 1
T MW 4

m3:
NOP 0

AN I 1.0
AN I 1.1
JCN m4
R M 0.3
A M 0.3
= Q 0.0

m4: NOP 0

Пробовал внутри условия использовать вход не I 1.1, а другой например I 1.7 и вручную включать выключать его - работает так как нужно.
Но мне требуется чтобы при указанном выше условии автоматически запускался таймер.
Как это можно реализовать?
Если можно поподробнее опишите, так как с STL пока на ВЫ...

Заранее спасибо.


Последний раз редактировалось: LewAleks (Ср Апр 06, 2011 12:52), всего редактировалось 2 раз(а)
Вернуться к началу
Посмотреть профиль Отправить личное сообщение
Алексей Дмитриев
Известный Писатель


Зарегистрирован: 17.08.2006
Сообщения: 320
Откуда: Ярославль

Сообщение Добавлено: Ср Апр 06, 2011 11:44    Заголовок сообщения: Ответить с цитатой

Долго разглядывал Ваш сумбурный код, ничего не понял.
Соблюдите одно правило - выход в программе должен быть описан только 1 раз! Все сразу упростится.
Вернуться к началу
Посмотреть профиль Отправить личное сообщение Отправить e-mail
Худанов Егор
Новый писатель


Зарегистрирован: 25.06.2010
Сообщения: 19

Сообщение Добавлено: Ср Апр 06, 2011 12:40    Заголовок сообщения: Ответить с цитатой

Код:
AN I 1.0
A I 1.1
JCN m3

AN I 1.0
A I 1.1
JCN m3


ерунда какая-то

Код:
A I 1.1
FR T 1
A I 1.1
L S5T#5S
SD T 1

таймер запустится только по положительному фронту I 1.1, а учитывая что перед этим у вас каждый цикл переход на метку m3 - фронт не виден
Вернуться к началу
Посмотреть профиль Отправить личное сообщение
LewAleks
Начинающий писатель


Зарегистрирован: 23.07.2010
Сообщения: 60

Сообщение Добавлено: Ср Апр 06, 2011 12:51    Заголовок сообщения: Наверное простой вопрос про условие и таймер. Ответить с цитатой

Цитата:
ерунда какая-то

ошибся при копировании.
Цитата:
таймер запустится только по положительному фронту I 1.1, а учитывая что перед этим у вас каждый цикл переход на метку m3 - фронт не виден

Про фронт я догадался. Как реализовать запуск таймера при выполнении условия?
Вернуться к началу
Посмотреть профиль Отправить личное сообщение
Худанов Егор
Новый писатель


Зарегистрирован: 25.06.2010
Сообщения: 19

Сообщение Добавлено: Ср Апр 06, 2011 13:03    Заголовок сообщения: Ответить с цитатой

Код:
AN I 1.0
A I 1.1
L S5T#5S
SD T 1


вот этого достаточно

метки перехода тут вообще нигде не нужны

если я правильно понял задачу, то вот ваше решение:
Код:
      AN    I      1.0
      A     I      1.1
      L     S5T#5S
      SD    T      1

      A     I      1.0
      A     I      1.1
      O     
      A     I      1.0
      AN    I      1.1
      O     
      A     T      1
      =     Q      0.0

      AN    I      1.0
      AN    I      1.1
      R     Q      0.0

      L     T      1
      T     MW     2
      LC    T      1
      T     MW     4
Вернуться к началу
Посмотреть профиль Отправить личное сообщение
Hemo
Известный Писатель


Зарегистрирован: 19.03.2008
Сообщения: 124

Сообщение Добавлено: Ср Апр 06, 2011 20:30    Заголовок сообщения: Re: Наверное простой вопрос про условие и таймер. Ответить с цитатой

Думается, Егор предложил хорошо читаемый и понимаемый код.

LewAleks писал(а):
...
R M 0.3
A M 0.3
= Q 0.0
...
А вот это что было?
Вы сбрасываете М0.3, а потом пытаетесь дождаться от М0.3 взведённого состояния. И откуда этот М0.3 вообще взялся? Остатки экспериментов?
Вернуться к началу
Посмотреть профиль Отправить личное сообщение
LewAleks
Начинающий писатель


Зарегистрирован: 23.07.2010
Сообщения: 60

Сообщение Добавлено: Чт Апр 07, 2011 5:15    Заголовок сообщения: Наверное простой вопрос про условие и таймер. Ответить с цитатой

Цитата:
вот ваше решение:

Спасибо! Действительно все просто и работает. А я куда-то в дебри полез...
Цитата:
А вот это что было?

Ну здесь я сбрасывал м0,3 чтобы на выход q0.0 записался 0. Теперь вижу что можно по другому сделать.
Спасибо всем!
Вернуться к началу
Посмотреть профиль Отправить личное сообщение
Hemo
Известный Писатель


Зарегистрирован: 19.03.2008
Сообщения: 124

Сообщение Добавлено: Чт Апр 07, 2011 6:07    Заголовок сообщения: Ответить с цитатой

Очень полезно поразбираться с кодами демо-примеров или с кодами реальных программ.
Будете иметь представление, "что такое хорошо и что такое плохо".
Вернуться к началу
Посмотреть профиль Отправить личное сообщение
LewAleks
Начинающий писатель


Зарегистрирован: 23.07.2010
Сообщения: 60

Сообщение Добавлено: Чт Апр 07, 2011 6:54    Заголовок сообщения: Наверное простой вопрос про условие и таймер. Ответить с цитатой

Спасибо за совет. Не подскажете где их взять?
Вернуться к началу
Посмотреть профиль Отправить личное сообщение
Hemo
Известный Писатель


Зарегистрирован: 19.03.2008
Сообщения: 124

Сообщение Добавлено: Чт Апр 07, 2011 9:23    Заголовок сообщения: Re: Наверное простой вопрос про условие и таймер. Ответить с цитатой

LewAleks писал(а):
Не подскажете где их взять?
Наберите в Гугле: "Бергер программирование S7"

Почитайте вот тут.
Вернуться к началу
Посмотреть профиль Отправить личное сообщение
Показать сообщения:   
Начать новую тему   Ответить на тему    Список форумов SIEMENS, Россия. IA&DT -> Промышленное программное обеспечение Часовой пояс: GMT + 3
Страница 1 из 1

 
Перейти:  
Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете голосовать в опросах


Powered by phpBB 2.0.11 © 2001, 2002 phpBB Group