Просмотр полной версии : Очень странная ошибка в кодесит с тригером.
Serhioromano
24.06.2016, 14:32
Предположим у меня есть код который включает и выключает переменную по нажатии одной и тойже кномки.
25136
Где envKey это системная переменная ПЛК73 для кнопок а keyStart это бит кнопки Старт. Это полностью рабочая схема. Но вот если я захочу однообразную задачу нажатия на кнопку вынести в функцию получается функция.
25137
То тогда в программе я использую это
25138
Но это уже не работает. В первом варианте у меня пульс только проходит а тут из функции выходит сигнал постоянный и он бывает включит бывает нет, зависит от того в какой момент отпустил кнопку или нажал не знаю.
Что не так делаю?
Предположим у меня есть код который включает и выключает переменную по нажатии одной и тойже кномки.
25136
Где envKey это системная переменная ПЛК73 для кнопок а keyStart это бит кнопки Старт. Это полностью рабочая схема. Но вот если я захочу однообразную задачу нажатия на кнопку вынести в функцию получается функция.
25137
То тогда в программе я использую это
25138
Но это уже не работает. В первом варианте у меня пульс только проходит а тут из функции выходит сигнал постоянный и он бывает включит бывает нет, зависит от того в какой момент отпустил кнопку или нажал не знаю.
Что не так делаю?
Нужно не функцию делать, а функциональный блок.
Ни какой ошибки нет. Внутренние переменные функций не запоминаются.
Serhioromano
24.06.2016, 14:55
Я так и думал, но не хотел блок что бы не плодить переменные в основной программе.
Но у меня вопрос. Какая именно переменная не запоминается? У меня вроде одна глобальная, одна входная, и одна входная. Внутри нет ни каких переменных. Можно поподробнее на каком именно этапе все рушится?
Я правильно сделал вывод из функции? В переменнуд одноименнуд функции? Просто там есть еще один блок называется return я думал сначала его нужно использовать. Он тогда зачем.
Я так и думал, но не хотел блок что бы не плодить переменные в основной программе.
Но у меня вопрос. Какая именно переменная не запоминается? У меня вроде одна глобальная, одна входная, и одна входная. Внутри нет ни каких переменных. Можно поподробнее на каком именно этапе все рушится?
Я правильно сделал вывод из функции? В переменнуд одноименнуд функции? Просто там есть еще один блок называется return я думал сначала его нужно использовать. Он тогда зачем.
Как это нет внутри переменных?
А это
25139
что по Вашему не переменная?
Вот ее состояние и не запоминается.
ЗЫ.
А ведь вся фишка реализации МОЕГО импульсного реле именно в R_TRIG http://www.owen.ru/forum/showthread.php?t=13655&p=94449&viewfull=1#post94449
Serhioromano
24.06.2016, 18:08
Поня. Значит буду делать блок. Спасибо за пояснение.
Powered by vBulletin® Version 4.2.3 Copyright © 2025 vBulletin Solutions, Inc. All rights reserved. Перевод: zCarot