PDA

Просмотр полной версии : ПЛК110 + СП270



Slavetc
15.03.2013, 21:20
Прошу помочь делетанту :)
Пишу первую программу, поэтому вопросов возникает масса. В частности ввиду малопонимания адресации. Сейчас столкнулся с такой проблемой. В панели создал проект, в котором несколько сигнальных ламп, индицирующих о работе оборудования. В ПЛК создал битовую маску выходов, привязал эти выходы к соответствующим сигналам (в конфигурации во время работы программы все работает). В СП270 соответствующим "лампочкам" присвоил соответствующий регистр из этой битовой маски. НО.. "лампочки" не загораются. Что я сделал не так?:confused:
Забыл уточнить ПЛК-мастер.

Amko
15.03.2013, 21:32
Конфигурацию верно настроили? В ПО адрес верно указан? Только выхода не работают, входа пробовали?

Slavetc
15.03.2013, 21:38
Да, входа работают. Цифровая индикация тоже работает. Проблема только с "лампами". Когда запускаю программу в конфигурации битовые выходы загораются. Но почему то панель их не видит. Может нужно что-то дополнительно прописать в области объявлений??

Адрей
16.03.2013, 08:41
И не увидят.
Адресацию битов и регистров на интерфейсе правильно распределите и все заработает.

Slavetc
16.03.2013, 11:28
И не увидят.
Адресацию битов и регистров на интерфейсе правильно распределите и все заработает.

А правильно, это как? Что за чем должно следовать? Или нумерация регистров должна быть по порядку?

Адрей
16.03.2013, 13:32
А правильно, это как? Что за чем должно следовать? Или нумерация регистров должна быть по порядку?
В ПЛК байты к байтам по четности почитайте мануал.

SBER
16.03.2013, 18:47
У вас сразу после 8 битового модуля идет регистр, таким образом регистр рубится пополам, в панель приходит каша. 8 битовые модули должны идти попарно.
Нумерация идет по порядку, с нуля.
Панель лучше поставить мастером.

Slavetc
16.03.2013, 19:52
У вас сразу после 8 битового модуля идет регистр, таким образом регистр рубится пополам, в панель приходит каша. 8 битовые модули должны идти попарно.
Нумерация идет по порядку, с нуля.
Панель лучше поставить мастером.

Вот теперь понятно,, спасибо за дельный совет. В понедельник переделаю.

Aleksey9952
19.03.2013, 11:30
А если все же надо чтобы плк-мастер был, можете на скринах показать одресецию записи и чтения, самую элементарную... а то на примерах программ как-то не понимаю...

Aleksey9952
19.03.2013, 13:22
нуууу ктоооо нибудь помогите))) пожалуйста))) сроки уже под хвоста дают)))

petera
19.03.2013, 14:38
Мне кажется (а кажется потому, что не работал с панелью в режиме slave), что согласно картинке в Вашем первом посте 8bit output module (*reg258*) записывает командой 0х0f информацию в 8 битовых регистров панели PSB258,259,260...265, а не в биты регистра PSW258.
Вот в этом и проблема, используйте для лампочек на экране не биты регистра PSW258, а биты PSB258,259,260...265.
Или в конфигурации ПЛК не используйте 8bit output module, а используйте Regiser output module.
Адреса в панели и команды Modbus смотреть здесь http://www.owen.ru/forum/showpost.php?p=101789&postcount=1

Slavetc
20.03.2013, 11:46
petera, Вы оказались правы. ПЛК действительно записывал не в биты PSW258 регистра, а в биты PSB258, 259 и т.д. Хотя не понимаю, почему. Настроив лампы в панели на биты PSB лампы заработали, но они почему-то мигают, хотя в настройках стоит СТОП. Попробую через Regiser output module, только сомневаюсь что получится, ведь тип данных у данного модуля WORD.

Адрей
20.03.2013, 12:46
petera, Вы оказались правы. ПЛК действительно записывал не в биты PSW258 регистра, а в биты PSB258, 259 и т.д. Хотя не понимаю, почему. Настроив лампы в панели на биты PSB лампы заработали, но они почему-то мигают, хотя в настройках стоит СТОП. Попробую через Regiser output module, только сомневаюсь что получится, ведь тип данных у данного модуля WORD.
У вас наверное старая панель.
Замечал такое в режиме слейва на панели PSB 256... битов отображаются в регистрах PSW256... но это было в овен версиях в тайч такого не замечал.

petera
20.03.2013, 13:20
petera, Вы оказались правы. ПЛК действительно записывал не в биты PSW258 регистра, а в биты PSB258, 259 и т.д. Хотя не понимаю, почему. Настроив лампы в панели на биты PSB лампы заработали, но они почему-то мигают, хотя в настройках стоит СТОП. Попробую через Regiser output module, только сомневаюсь что получится, ведь тип данных у данного модуля WORD.
Для переменной Regiser output module придется упаковать в программе ПЛК битовые переменные (те, что были отдельными битами в 8bit output module) в WORD и все должно получиться.
ЗЫ.
Хотя не понимаю, почему Потому, что в 8bit output module используется команда 0х0f, а это команда записи нескольких бит.
Вот в биты (PSB) и записывает. http://www.owen.ru/forum/showpost.php?p=101789&postcount=1

Slavetc
20.03.2013, 13:47
У вас наверное старая панель.
Замечал такое в режиме слейва на панели PSB 256... битов отображаются в регистрах PSW256... но это было в овен версиях в тайч такого не замечал.

Панель-то новая как раз. Три недели назад купили. В моем понимании было что я создаю выходной битовый модуль, привязываю к каждому биту свою лампочку и вуаля) но оказалось все не так просто))
Спасибо всем за помощь. Трудно разобраться когда никогда этим не занимался.
Тут еще один вопрос всплыл. Мне надо в уставке температуры задавать отрицательное число. Как это сделать? при попытке записать отрицательное значение возникает ошибка синтаксиса.

petera
20.03.2013, 15:54
Панель-то новая как раз. Три недели назад купили. В моем понимании было что я создаю выходной битовый модуль, привязываю к каждому биту свою лампочку и вуаля) но оказалось все не так просто))
Спасибо всем за помощь. Трудно разобраться когда никогда этим не занимался.
Тут еще один вопрос всплыл. Мне надо в уставке температуры задавать отрицательное число. Как это сделать? при попытке записать отрицательное значение возникает ошибка синтаксиса.
В конфигурации ПЛК нужно использовать Real input/output module, а не Register input/output module.

ВНИМАНИЕ: для корректной передачи в панель типа REAL, необходимо:
-со стороны ПЛК поменять параметр Byte Sequence модуля UniversalModbusDevice на "Native" ;
- в панели задать DWORD, . на вкладке вид тип Float*)
Это из примера ОВЕНА "03_10_PLC1XX+SP270[Slave].zip" http://www.owen.ru/forum/showthread.php?t=13581

petera
20.03.2013, 16:02
А все таки почему у Вас панель Slave? Чем режим Мастер не устраивает?
Учтите, что если в ПЛК создать модуль Slave, то все переменные в модуле Slave являются ретайн по умолчанию и Ваша уставка тоже.

Slavetc
25.03.2013, 16:09
А все таки почему у Вас панель Slave? Чем режим Мастер не устраивает?
Учтите, что если в ПЛК создать модуль Slave, то все переменные в модуле Slave являются ретайн по умолчанию и Ваша уставка тоже.

Во первых еще раз спасибо за помощь. На счет Slave, меня просто сбили с толку знакомые "программисты". Сказали что так будет лучше. Начинал когда делать, делал как раз панель Мастером. Теперь вот думаю, может переделать.. время вроде есть пока.

capzap
25.03.2013, 16:20
Учтите, что если в ПЛК создать модуль Slave, то все переменные в модуле Slave являются ретайн по умолчанию и Ваша уставка тоже.

:) давно правда поднимался этот вопрос, не помню кто и поиском воспользоваться затруднительно. Суть такова что панель загружаясь раньше плк каким то образом терла уставки в слейве, решение предлагалось записать панель от выхода плк.
Тоже как бы учтите такой казус