Вложение 79325Вложение 79326Вложение 79327
все сделал , а в самой программе что писать?
Вид для печати
Вложение 79325Вложение 79326Вложение 79327
все сделал , а в самой программе что писать?
Здравствуйте коллеги, подскажите пожалуйста, почему такие ошибки могут быть? Вложение 79328 Вложение 79330 посмотрел на форуме, они решены. но не описаны, как решены. Все решено надо сделать так: Нажать на эти кнопки Вложение 79331
Вложение 79325Вложение 79326Вложение 79327
все сделал , а в самой программе что писать?
Надо сделать очистить всё, компилировать всё и проверить нет ли ошибок.
Можете пока ничего не писать, для того чтобы проверить связь, достаточно в регистр записать число, в ОРС сервере его смотреть и наоборот.
Вы ОРС сервер настроили?
Если вы совсем ничего не знаете, то посмотрите хотя бы обучающие видео по ПЛК210. Хотя бы первые 11 штук.
https://www.youtube.com/watch?v=tm7a...kKheVx&index=3
9 и 11 видео прямо для вас
https://www.youtube.com/watch?v=M0W7...KheVx&index=10
https://www.youtube.com/watch?v=Zq1G...KheVx&index=12
у меня мастер ОРС юниверсал модбас сервер. по одному сигналу без номеров я настроил и видел и получал а вот по вашему методу настроить не смог Вложение 79332Вложение 79333Вложение 79334 видео смотрел. ВЫ здорово помогаетеВложение 79335Вложение 79336
У вас связи нет, слейв ПЛК должен быть зелёным. Вы ОРС сервер случайно слейвом не сделали? Он мастером должен быть. Вложение 79338
Я же вам написал, что биты не совпадают, вы для начала прочитайте и запишите 125 регистр и 194 регистр. Инпут регистры чтение с ПЛК,
Ходлинг регистры записть в ПЛК.
Биты позже, там 1 бит попадает в 9, а 9 в первый.
нет он мастерВложение 79341
вот связь прошла спасибо.что дальшеВложение 79342
Дальше в программе так Вложение 79343 в ОРС сервере добавляете биты Вложение 79344 Работа Вложение 79347
Биты упаковываются и распаковываются через точку,
например Wrate[69].15 - это запись 69 регистр 15 бит, после 15 бита пойдёт 0 бит ( Wrate[69].0) и т. д.
Как заработает, регистры в ОРС можете удалить, оставить только биты.
Если вы в программе указали абсолютный адрес, типа AT%IW0, то в соотнесении добавлять не надо Вложение 79349Удалите имена массивов
read AT%IW0 : ARRAY [0..69] OF WORD;// массив для чтения WORD
Wrate AT%QW0 : ARRAY [0..69] OF WORD; // массив для записи WORD
доброе утро! я добавил вроде заработало. можно вопрос на счет битов вы написали 6 бит -14,7бит-15,8 бит-0, 9-бит на 1, 10 бит -2,11 бит-3 , 12 бит 4, 13 бит 5, почему так? это где то написано?
и еще вопрос получается , что в диапазоне с 2000 до 3120 будут только БООЛ значения , а если нужно будет в промежутке добавить ворд или реал?
Переставлены байты в 16 и 17 версиях Codesys. 0 бит попадает в 8 бит, а 8 бит в 0 бит. Вложение 79377
Можно в регистре переставить байты наоборот, тогда биты будут соответствовать номерам.
Например написать функцию и вставить её между принятым регистром и новой переменной типа Маск и биты извлекать уже из маски. Биты будут уже на своих местах.Только имейте ввиду, 194 регистр начинается с 3104 бита (194*16=3104 - 0 бит в 194 рег.), 3110 бит - в 194 регистре 6 по счёту,Код:FUNCTION SW_BYTE : WORD // Перестановка байт
VAR_INPUT
In:WORD;
END_VAR
_____________________________
SW_BYTE := ROL(In, 8);
переставите байты, будет он не 14 а 6, вам легче от этого?
Со 125 регистром проще, (125*16=2000 - 0 бит в 125 регистре), 2001 бит должен быть 1 битом в 125 регистре,
после перестановки байт, вместо 9 он станет 1.