PDA

Просмотр полной версии : кратчайший путь к логической единице



Columbariy
05.04.2010, 22:31
PLC63 соединен с ПК кабелем КС1,через Codesys в контроллер заливаю LD программу следующего содержания(1544b):
|---|/|--------------()---- | ,контакт A,обмотка B
В PLC Congiguration дискретному входу с подключенным датчиком назначаю "имя" A.Выходу 1 - имя b.
Контроллер не реагирует на изменение состояния входа.
Состояние ВУ 0.00
Щелчков реле не слышно
В чем проблема?Что сделано неверно?
Компетентных прошу строго не судить.
Спасибо.

brat
06.04.2010, 08:47
добрый день!
посмотри пример который приложен и поймёшь.

magirus
06.04.2010, 09:24
online - run...

Columbariy
06.04.2010, 21:20
Следую советам,но на выходе по прежнему 0.00
Также во время коннекта между пк и плк выскакивает ошибка:communication problem ^ logout perfomed.
Прикрепляю архив со скринами(см. выше). В чем проблемЫ?

brat
07.04.2010, 09:06
добрый день!
уточните модификацию плк 63р-???

Николаев Андрей
07.04.2010, 10:00
Пока у Вас Logout perfomed программа и не будет рабоать - Вы просто не можете записать её в ПЛК. Добейтесь устойчивой связи.

Columbariy
07.04.2010, 14:11
модификация:рррруу-l
Программа записана в память контроллера(индикация загрузки проходит успешно),
подключение стабильно,ошибки связи не возникают.
При открытии файла Primer A&B комп информирует о нехватке двух библиотек и предлагает сменить их директорию???
Не обнаруженные библиотеки:
syslibtime
systaskinfo
Затем Codesys информирует о изменении библиотек с момента их последнего открытия
В результате программа контроллером не выполняется

brat
07.04.2010, 16:14
в приложенном архиве пример в исполнении для вашей версии плк, и скриншот с изображением библиотек задействованные в этом примере. проверял этот пример на такой же модификации

Columbariy
07.04.2010, 16:58
поставил библиотеки,теперь на выходе всегда 1, вне зависимости от состояния датчика а.

brat
08.04.2010, 09:01
можно выложить ваш проект?! которы вы загружает в плк

Columbariy
08.04.2010, 13:51
Brat,огромное спасибо за поддержку,загружаю Ваш проект. Все работает,но только в том случае если датчик подключен к входу 1 и ему присвоено имя A,если имя А присвоить другому входу-не работает.
PROGRAM PLC_PRG
VAR
END_VAR
VAR_INPUT
a AT%IX0.0.0.0: BOOL;
END_VAR
VAR_OUTPUT
b: BOOL;
b1 AT%QD0.1.0: REAL;
END_VAR


a AT%IX0.0.0.0: BOOL;- насколько я понимаю дело в этой строке.
как изменить номер входа\выхода ,которым соответствуют переменные?

brat
08.04.2010, 15:35
Не за что.
Да вы правильно поняли дело в этой строке AT%IX0.0.0.0:bool; . Первый вход так обозначается, а другие по аналогии AT%IX0.0.0.1:BOOL; это в торой дискретный вход. Ну а последующие я думаю, вам самому понятно будет. Аналогично с выходами.

Николаев Андрей
10.04.2010, 01:29
To all:
Если у Вас одна программа, ну и в PLC_PRG нет смысла объявлять переменные как var_in var_out.
Объявлять переменные таким типом стоит только тогда, когда Вы создаете свою подпрограмму (программу, ФБ и т.д.) и ему на входы будете что то подавать, и с входов что то снимать. А в PLC_PRG просто
var
...
end_var