Огромное спасибо за предоставленную библиотеку и консультации!!!![]()
Огромное спасибо за предоставленную библиотеку и консультации!!!![]()
Пример работы с библиотекой на языке ST.
Нужный таргет-файл внутри архива.
mdvv_input_extr.rar
У меня попутный вопрос по теме (МДВВ, MODBUS RTU): а разве нельзя считывать состояние входов и задавать состояние выходов отдельно по битам. Т.е. есть у нас входной и выходной регистры, допустим, Input : WORD и Output: WORD, Мне нужно получить состояние входов №№0, 4, 6 и подать 1 на выходs №3, 4- я делаю так:
IBit0, IBit4, IBit6 : BOOL;
IBit0 := Input.0;
IBit4 := Input.4;
IBit6 := Input.6;
Output.3 := 1;
Output.4 := 1;
Это не правильно? Так вообще можно работать, с отдельными битами?
Если говорить об обмене, то работа по битам возможна, но в 8 раз медленнее. Это Вам надо?
А в программе ПЛК можно вытворять всё что угодно, в т.ч. и обращаться к битам или накладывать маски.
С точки зрения быстродействия если нужно обработать 1 бит - работайте с ним, если группу - используйте маску.
Помогите настроить выходы в МДВВ. Подключил ПЛК100К-М и МДВВ, на входы реакция есть а выходы не реагируют. Программу написал простейшую на CFC. Что мне нужно сделать?
для включения реле присвойте соответствующему выходу МДВВ значение равное 1000 для отключения присвойте 0
Проще это можно реализовать используя ФБ "SELECT"
там 3 входа 1 дискретный и 2 числовых и один дискретный выход,
к выходу блока привяжите переменную МДВВ, 2му входу присвойте 0 а 3му 1000 и в зависимости от состояния 1 входа ФБ SELECT реле будет принимать соответствующее значение 0 или 1
в вашей программе дважды определены переменные q1, q2, q3. Либо задавайте имена выходам непосредственно в plc configuration, либо используйте адресацию %QD ... при определении переменных в программе plc_prg. Только один из вариантов, а не оба сразу. См. пример.
PLC+MDVV.rar