PDA

Просмотр полной версии : Чтение входов ПЛК



pwm100558
15.04.2017, 20:24
быстрые дискретные входы читаются отлично,
а вот обычные входы (битовые) пока что не могу прочитать никак
типа
if (rK)
THEN
....
END_IF
где rK- переменная, присвоенная входу первого бита Diskrete Inputs- первого байта
входного
КАК ПРОЧИТАТЬ rK--Diskrete Inputs ???

Джорда́но Бру́но
15.04.2017, 20:48
Я, конечно, не ясновидящий, но тенденция прослеживается весьма чёткая: следующая тема будет называться "как управлять выходами ПЛК в зависимости от состояния входов?".

pwm100558
16.04.2017, 02:21
Я, конечно, не ясновидящий, но тенденция прослеживается весьма чёткая: следующая тема будет называться "как управлять выходами ПЛК в зависимости от состояния входов?".

Вход не читается , я не ожидал...
Не могу передать информацию внутрь контроллера

alex55
16.04.2017, 07:12
Все там читается, только с утра, а не в три часа ночи..;)

pwm100558
16.04.2017, 07:40
нет, не читается

petera
16.04.2017, 08:15
нет, не читается
Вы, что принципиально ответы игнорируете
http://www.owen.ru/forum/showthread.php?t=26562&p=244408&viewfull=1#post244408

Вам уже было сказано, что если Вы присвоили имена переменным(входы или выходы ПЛК) прямо в конфигурации, то больше нигде объявлять их не нужно!!!
30608
Потому, что переменные объявленные в шапке программы - локальные, а те, что в конфигураторе -глобальные. Если в программе встречается имя переменной то всегда будет использоваться локальная переменная. И Ваша
VAR
rK:BOOL;
...........
END_VAR
никакого отношения к входу с именем "rK" иметь не будет.
Или Вы считаете, что это правило работает только для быстрых входов?

pwm100558
16.04.2017, 16:20
не могу запустить таймер
надо если point1=1 &ZIKL1=1
то вкл Y3 на 30 сек
пришлите, если можно , хоть какой-нибудь рабоющий вариант таймера

Василий Кашуба
16.04.2017, 16:37
не могу запустить таймер
надо если point1=1 &ZIKL1=1
то вкл Y3 на 30 сек
пришлите, если можно , хоть какой-нибудь рабоющий вариант таймера
Таймеры в библиотеке все рабочие, просто нужно их правильно вызывать.

Василий Кашуба
16.04.2017, 16:52
Например вот так.
30620

pwm100558
16.04.2017, 17:39
я библиотек еще не подключал
делал как F1 рекомендует

Пример объявления:

TOFInst : TOF ;
.................................................. ...

TOFInst(IN := VarBOOL1, PT:= T#5s);

VarBOOL2 :=TOFInst.Q;
у меня подключена стандартная библиотека, она содержит FB TOF
пытаюсь разобраться, почему не работает

ASo
16.04.2017, 17:49
Вам уже объясняли - потому, что Вы не даете ему работать.

pwm100558
16.04.2017, 19:18
Вам уже объясняли - потому, что Вы не даете ему работать.

Покажите как

ASo
16.04.2017, 20:06
Вам уже показали как. Но на другом языке.
Вы решили не нытьем, так катаньем?

pwm100558
16.04.2017, 21:42
На других языках-я и сам сталкивался не помню сколько раз
Интересунет язык ST и конкретный таймер TOF
Почему не работает

Василий Кашуба
16.04.2017, 22:11
На других языках-я и сам сталкивался не помню сколько раз
Интересунет язык ST и конкретный таймер TOF
Почему не работает
Напишите так:
IF var1 AND var2 THEN TOFInst(IN := TRUE, PT:= T#5s);

pwm100558
17.04.2017, 09:50
Напишите так:
IF var1 AND var2 THEN TOFInst(IN := TRUE, PT:= T#5s);
Ваш вариант пока что не заработал
var1 & var2 is false
ит.д.
мой вариант меняет IN из 0 в 1 и обратно
осталось сделать чтобы Q одновременно с IN прыгал из 0 в 1
тогда все будет соответствовать циклограмме из HELPa
но как этого достичь????
Q ведет себя так :
при старте и после сброса FALSE
при IN из 0->1 Q тоже 0->1 и в 1 остается до сброса

KSergey
17.04.2017, 11:53
Не совсем понятно, чего вы хотите. Таймер TOF - это таймер с задержкой отключения. Его выход включается, когда на входе логическая 1, и отключается через некоторое время после того, как на входе получился 0.

KSergey
17.04.2017, 11:55
И не стоит вставлять таймер внутрь условий. Лучше условие вставить в таймер.

pwm100558
17.04.2017, 13:17
Не совсем понятно, чего вы хотите. Таймер TOF - это таймер с задержкой отключения. Его выход включается, когда на входе логическая 1, и отключается через некоторое время после того, как на входе получился 0.

Нужен TOF на 30с работающий
Пришлите работ пример НА ST
Надо включать выход на 30с

capzap
17.04.2017, 13:25
Нужен TOF на 30с работающий
Пришлите работ пример НА ST
Надо включать выход на 30с

http://www.kipshop.ru/CoDeSys/steps/codesys_v23_ru.pdf разве нет примера на ST?

KSergey
17.04.2017, 13:34
Чтобы включить выход на 30 секунд, нужен таймер ТР. По переднему фронту сигнала на входе включает выход на нужное время.
TimerTP: TP;

TimerTP(in:=InVar, pt:=t#30s);
OutVar:=TimerTP.Q;

pwm100558
17.04.2017, 13:44
Не работает этот пример

KSergey
17.04.2017, 13:47
Программу покажите.

pwm100558
17.04.2017, 14:30
Программу покажите.
Смотрите выше несколько вариантов присылал
Берите последний

KSergey
17.04.2017, 14:54
Посмотрите. А лучше расскажите, что хотите получить.

pwm100558
17.04.2017, 15:00
Посмотрите. А лучше расскажите, что хотите получить.

Надо вкл Y3 на 30с, если ZIKL1 & rK &RABOTA

KSergey
17.04.2017, 16:14
Вот TP вам в помощь.
TimerTP(in:=ZIKL1 & rK & RABOTA, pt:=t#30s);
Y3:=TimerTP.Q;
Каждый раз, когда выражение (ZIKL1 & rK & RABOTA) будет переходить в истину, Y3 будет включаться на 30 секунд.

pwm100558
18.04.2017, 10:34
Мне вчера человек работающий таймер отдал ,сделанный на LADDER
он сказал, чтобы таймер работал , его надо брать из стандартной библиотеки.
Я так думаю, в языке ST таймер должен начать фигурировать при этом как функциональный блок.
Вот этот момент у меня пока "не пляшет"
когда подключаю через ассистент ввода FB TOF ,то компилятор дает oшибку или несколько.
Таймер на LADDER смогу выложить здесь только сегодня вечером
заинтересовала теория и практика FB

capzap
18.04.2017, 10:55
Мне вчера человек работающий таймер отдал ,сделанный на LADDER
он сказал, чтобы таймер работал , его надо брать из стандартной библиотеки.
Я так думаю, в языке ST таймер должен начать фигурировать при этом как функциональный блок.
Вот этот момент у меня пока "не пляшет"
когда подключаю через ассистент ввода FB TOF ,то компилятор дает oшибку или несколько.
Таймер на LADDER смогу выложить здесь только сегодня вечером
заинтересовала теория и практика FB

здесь везде лежат рабочие проекты с таймерами или чем то еще, по крайней мере большинство http://www.owen.ru/forum/showthread.php?t=13588

pwm100558
18.04.2017, 11:49
Извините, нашел на диске Овен пример
после переделки он заработал

zendo057
18.04.2017, 21:57
Извините, нашел на диске Овен пример
после переделки он заработал

И в чем же заключается переделка?