This is topic Возможна ли такая ситуация? in forum Языки программирования в TRACE MODE 6 / Algorithm Programming Languages at Форум TRACE MODE: техническая поддержка.


To visit this topic, use this URL:
http://forum.adastra.ru/ultimatebb.php/ubb/get_topic/f/33/t/000022.html

Posted by DreamWeaver (Участник № / Member № 1485) on :
 
В узле EmbeddedRTM есть программа, которая считывает реальное значение канала "INPUT". Если значение этого канала равно "1", то она предпринимает определенные действия и на выходе эта программы заносит во Входное значение канала "INPUT" значение 0.
Из узла RTM каналом "OUPUT" заносится значение "1" в канал "INPUT".
1) Может ли получиться так, что программа начнет выполняться, приняв на входе от канала "INPUT" значение 0, во время выполнения программы из узла RTM придет от канала "OUPUT" значение 1, но по окончании выполнении программы, это значение сбросится в 0. То есть программа так и не узнает, что с узла RTM приходило значение 1.
Как с эти бороться? Если в программе просто не присваивать переменной значение, то что произойдет: значение переменной в канал не запишется или же канал обнулиться?
 
Posted by AdAstra Technical Support (Участник № / Member № 4) on :
 
Такое невозможно, если и программа и каналы обрабатываются в одном цикле, потому как в рамках цикла пересчета обработка базы производится последовательно. Если пересчет отличается - тогда такая ситуация возможна. В любом случае - чтобы предотвратить это у приемника, который имеет несколько источников данных - все источники должны централизованно обрабатываться и в результате источником все равно должно служить одно значение. В данном случае - это может быть сама программа, которая контролирует значение канала Output.
 


Новости АСУ ТП / News | SCADA / HMI | Обучение / Trainings | Свяжитесь с нами / Contact Us



Powered by Infopop Corporation
UBB.classic™ 6.7.2