Просмотр полной версии : Чтение входов ПЛК
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
Я, конечно, не ясновидящий, но тенденция прослеживается весьма чёткая: следующая тема будет называться "как управлять выходами ПЛК в зависимости от состояния входов?".
Вход не читается , я не ожидал...
Не могу передать информацию внутрь контроллера
Все там читается, только с утра, а не в три часа ночи..;)
pwm100558
16.04.2017, 07:40
нет, не читается
нет, не читается
Вы, что принципиально ответы игнорируете
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
пытаюсь разобраться, почему не работает
Вам уже объясняли - потому, что Вы не даете ему работать.
pwm100558
16.04.2017, 19:18
Вам уже объясняли - потому, что Вы не даете ему работать.
Покажите как
Вам уже показали как. Но на другом языке.
Вы решили не нытьем, так катаньем?
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 остается до сброса
Не совсем понятно, чего вы хотите. Таймер TOF - это таймер с задержкой отключения. Его выход включается, когда на входе логическая 1, и отключается через некоторое время после того, как на входе получился 0.
И не стоит вставлять таймер внутрь условий. Лучше условие вставить в таймер.
pwm100558
17.04.2017, 13:17
Не совсем понятно, чего вы хотите. Таймер TOF - это таймер с задержкой отключения. Его выход включается, когда на входе логическая 1, и отключается через некоторое время после того, как на входе получился 0.
Нужен TOF на 30с работающий
Пришлите работ пример НА ST
Надо включать выход на 30с
Нужен TOF на 30с работающий
Пришлите работ пример НА ST
Надо включать выход на 30с
http://www.kipshop.ru/CoDeSys/steps/codesys_v23_ru.pdf разве нет примера на ST?
Чтобы включить выход на 30 секунд, нужен таймер ТР. По переднему фронту сигнала на входе включает выход на нужное время.
TimerTP: TP;
TimerTP(in:=InVar, pt:=t#30s);
OutVar:=TimerTP.Q;
pwm100558
17.04.2017, 13:44
Не работает этот пример
pwm100558
17.04.2017, 14:30
Программу покажите.
Смотрите выше несколько вариантов присылал
Берите последний
Посмотрите. А лучше расскажите, что хотите получить.
pwm100558
17.04.2017, 15:00
Посмотрите. А лучше расскажите, что хотите получить.
Надо вкл Y3 на 30с, если ZIKL1 & rK &RABOTA
Вот 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
Мне вчера человек работающий таймер отдал ,сделанный на 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
Извините, нашел на диске Овен пример
после переделки он заработал
И в чем же заключается переделка?
Powered by vBulletin® Version 4.2.3 Copyright © 2024 vBulletin Solutions, Inc. All rights reserved. Перевод: zCarot