Хотя, конечно, можно и любую другую скаду брать!
Вид для печати
Хотя, конечно, можно и любую другую скаду брать!
Добрый день, подскажите новичку пожалуйста.
Какой я адрес должен указать в EasyBuilder на кнопке старт (Вентилятора В1) ? Если в codesys у меня Start_Main_Fan_V1 AT %QX8 29.0.0: BOOL Вложение 73073 Вложение 73072
Адрес зависит не от AT %QX8 29.0.0, а от расположения модулей в конфигурации слейва
Адреса начинаются с 0
https://owen.ru/forum/attachment.php...5&d=1395648726
Камрады, подскажите и мне!
Подозреваю, что нарвался на выравнивание адресов в структуре и туплю, так как в другом проекте всё было нормально, и никаких глюков с выравниванием не было.
Вот что у меня есть:
1. Структура с описанием полей панели. Там всякие WORD или структуры из WORD. FLOAT и DWORD нет ВООБЩЕ.
2. Конфигурация ПЛК, где вбита пачка элементов по "4 Bytes".
3. ИП320.
Что наблюдаю: Начиная с регистра 26 данные съезжают на 1 регистр вперёд.
При этом панель читает правильно: если вручную в конфигурации ПЛК задать "2" на регистре 27 - то панель этот статус читает верно, чёрт побери.
Как будто моя структура сдвигается в регистрах 26-27 на 1 слово.
В CodeSys 2.3 как-то можно структуру выровнять по 2 байта, а не по 4 байта?
Вложение 73165 Вложение 73166 Вложение 73167 Вложение 73168
А где у меня 32 бита? У меня везде всё по WORD - по 16 бит же.
И панель всё читает как 16-битные. Какая ей разница, как в ПЛК ЭТО вбито? В прошлом проекте такого не было, и начало регистров с нечётными данными читались на ура.
То, что я тут поменял - так это сделал вложенные структуры из 2х WORD на 4 WORD.
4 BYTE, это DWORD, а структуру вы пытаетесь поместить во 2 регистр предыдущего DWORD.