PDA

Просмотр полной версии : СПК207 ModBus модули ввода вывода



kholonkin
28.08.2013, 11:22
Доброго времени суток.

Не получается опросить модули, что делаю не так.
Так же пытаюсь записать в модуль вывода значение на выход, тоже не реагирует.
Кусок кода.

PLC_PRG

Click_2(Period:=T#5S);
IF NOT(OpenPort.Done) THEN OpenPort(Enable:=TRUE,PortNum:=2); END_IF; (*ОТкрываем ком порт и получаем хэндл порта*)
IF Click_2.Click THEN
IF OpenPort.Done THEN
AnalogInputs(Handle:=OpenPort.Handle, Enabl:=TRUE, Addr:=4);
END_IF;
END_IF;
Kotel_1_Temp:=AnalogInputs.inp1;
IF Click_2.CLick THEN DigitalOut(Handle:=OpenPort.Handle, Enabl:=TRUE, Addr:=3, Out1:=TRUE); END_IF;

Александр Приходько
28.08.2013, 17:23
Посмотрите этот пример. В спойлере примеры программ.
В нем работа с портом через библиотеки. Правда пример для другой спк, но принцип тот же.
http://www.owen.ru/forum/showthread.php?t=15530

kholonkin
29.08.2013, 10:18
В это ветке хоть отвечают..
имеется еще одна проблема...
http://www.owen.ru/forum/showthread.php?t=15690
Там скриншот в режиме эмуляции.....

вот фото что на контроллере выходит.....9785
т.е. то что отображалось хренописью при эмуляции, на контроллере просто не отображается.....
что делать?

Александр Приходько
29.08.2013, 16:53
С обменом вопрос решили?

kholonkin
29.08.2013, 17:11
С обменом вопрос решили?
нет, ощущаю себя парнокопытным.
в 2.3 как то сходу разобрался как с модулей читать, когда 160-ый программировал.
скачал пример для спк1хх, скачал инструкцию по модбасу для кдс3.
и такое ощущение что окончательно запутался.

с символами это еще одна проблема, пока на данный момент.

kholonkin
30.08.2013, 13:51
Начнем по порядку:
У меня стоит CDS 3.5 Path3 SP4
Репозитори архив взял с сайта вашего
Открыл инструкцию по панелям и модбасу.
Создал новый проект.
Добавил в него МодБасКом, версия согласно инструкции, компилирую, ошибок нет.
Добавляю МодБасКомМастерПорт, версии согласно инструкции, компилирую, 502 ошибки.
версия таргета 3.5.0.40

в такой ситуации как то сложно понять, а что вообще дальше делать то, если делаешь вроде по шагам учебника, а оно не работает, причем тут запутаться то негде.....

а на следующей неделе сдавать эту всю лабуду...... а считать сигналы с модулей не выходит......грустно как то

Трофимов Артем
30.08.2013, 14:05
Здравствуйте , kholonkin .
какие версии устройств Модбас СОМ и МодбасМастер Сом порт Вы добавили в проект?

kholonkin
30.08.2013, 14:42
В нем необходимо выделить порт Modbus COM версии 3.4.0.0 (она младше версии таргета СПК) и нажать кнопку добавить устройство.

Версию мастера для COM порта и Ethernet можно выбрать 3.4.3.2 или 3.5.0.0,

Вот смотрю сейчас еще один момент, при загрузке кдс ошибка вылазит, на ссылки библиотек ругается.
в окне сообщений ошибка висит
[ERROR] iodrvmodbus, 3.5.3.0 (3s - smart software solutions gmbh): Менеджер библиотек: Невозможно открыть библиотеку '#IoDrvModbusBase'. (Причина: Невозможно разрешить библиотеку заполнителя 'IoDrvModbusBase'.)

С этим наверное связано, что не выходит ничего.

kholonkin
30.08.2013, 15:15
а как побороть библиотеку что то не пойму

nikolaich
30.08.2013, 16:08
Может быть поможет,сам с этим столкнулся ( 502 ошибки и iodrvmodbus): версии всех modbus (com,master,slave) выбрал 3.4.0.0 и заработало.

kholonkin
30.08.2013, 16:21
попробовал, 502 ошибки.......

nikolaich
30.08.2013, 17:25
http://forum-ru.codesys.com/viewtopic.php?f=2&t=1851&hilit=iodrvmodbus
У меня таргет старый 3.4.0.10

kholonkin
30.08.2013, 18:12
Мдааааааааааааааааааааааааа

Остается пытать производителя....

ПРАВИЛЬНЫЙ ПУТЬ: узнать точную версию кодесис для которого был адаптирован конкретно ваш ПЛК у производителя этого ПЛК. Так же уточнить у него была ли проведена адаптация системы программирования (не рантайма, а именно системы программирования). Если была, то кроме производителя плк вам правильную версию кодесис никто официально не даст. Если же никаких адаптаций системы программирование не проводилось, то "правильную" версию кодесис (которую скажет вам только производитель ПЛК) вы сможете скачать с сайта 3s.

Почему мы ссылаемся на производителя? Ответ: потому как он сам проводит адаптацию кодесис к своему железу. И иной раз результат может быть неожиданным для классического подхода (предлагаемым 3S). К примеру существуют ПЛК для корректной работы которых требуется установки подряд трех версий кодесис. Последовательность и версии знает только производитель ПЛК.
Мдаааааааааааааааааааа....
другой протокол можно интересно использовать? Овен например, или тут модбас и все тут......................

жекон
30.08.2013, 19:36
У меня тоже было 502 пока мне не разъяснили что версии устройств должны быть ниже версии таргета то есть в вашем случае ниже 3.4.0.10,рядышком моя тема там всё это разжёвано.

kholonkin
30.08.2013, 19:36
в общем поставил кдс 35СП3П2,
использовал таргет 3.4.0.10
установил модбасКом-модбасМастер-МодбасСлейв
все весрии 3.4.0.0
компиляция ошибок не выдает, на дворе поздновато
завтра будем дальше разбираться

kholonkin
30.08.2013, 19:39
У меня тоже было 502 пока мне не разъяснили что версии устройств должны быть ниже версии таргета то есть в вашем случае ниже 3.4.0.10,рядышком моя тема там всё это разжёвано.
да я там вообще древние пробовал, не фига не вышло.

В общем поставил кдс35сп3п2
использовал таргет 3.4.0.10
поставил модбасКом-МодбасМастер-МОдбасСЛейв
ошибок нет, пара предупреждений

НА дворе уже ночь почти, тяпница, завтра будем дальше разбираться

kholonkin
31.08.2013, 17:10
так... обмен пошел, лампочка на модуле мигает.... но вот с данными что белиберда какая то...
я так понимаю нужно настройками каналов модбас слейв химичить....
в какую сторону копнуть?
из модулей имею мв110-8а, му110-16р, мв110-16д

kholonkin
31.08.2013, 17:51
вообще где то есть/нет документация по тому как каналы модулей различных прописывать через конфигурацию?
во втором кдс где то было подобное, т.к. там не испытывал подобных трудностей

жекон
31.08.2013, 19:26
Почитайте вот здесь http://www.owen.ru/forum/showthread.php?t=15481 там пример с 8А и еще с каким-то модулем, если вкратце то на чтение функция 03, на запись 16, а у 8А еще и байты в значении поменять надо, там то-же написано как

kholonkin
31.08.2013, 22:08
Жекон, спасибо, похоже на о что нужно, завтра будем разбираться.

kholonkin
02.09.2013, 10:39
Кошмар какой то.
Компилируется только с вресией таргета 3.4.0.10
Модбаском модбасмастер модбасслейв версии 3.4.0.0
В примере http://www.owen.ru/forum/attachment.php?attachmentid=9373&d=1374046584
Модбаском версии 3.4.0.0, модбасмастер 3.5.1.0, у меня подобная комбинация приводит к множественным ошибкам компиляции. В примере не указана версия таргета, типы данных в модбасслейв при добавлении канала отличаются. Т. Е. Повторить то что указано в примере не выходит.

жекон
02.09.2013, 18:23
Да не обращайте вы внимание на эти номера таргетов,устройств и пр. делайте на том на чем у вас компилируеться, рассмотрите пример в части подключения каналов и работе с показаниями 8А

kholonkin
02.09.2013, 19:08
Фух, два модуля победил.




Да не обращайте вы внимание на эти номера таргетов,устройств и пр. делайте на том на чем у вас компилируеться, рассмотрите пример в части подключения каналов и работе с показаниями 8А
Дык и делаю на том что компилируется. Просто хотелось пример воспроизвести, а он как то с моими реалиями не бьется, ну и не воспроизводится соответственно, что несколько угнетает в данной ситуации.
Пример и не бьется по модулю 8А, в примере тип данных один, у меня другой, в примере массив стоит, у меня дворд, причем его не поменять, он как по умолчанию стоит.
Это то что в каналах модбасслэйв.
Ну технология по которой пример построен и подламывается....

жекон
02.09.2013, 21:06
Я сейчас попробовал ,но у меня нет версии 3.5.1.0 у меня 3.5.2.0 вроде всё нормально 9846

kholonkin
02.09.2013, 21:46
Таргет какой в системе?

Артём Устюжанин
03.09.2013, 14:40
Доброго времени суток! Решил накидать проект в CDS 3.5 SP3 Patch 5, требуется сделать заказ на модули входов выходов.
Скачал библиотеки модулей для работы СПК 207: http://kipshop.ru/CoDeSys3.0/bibl/ver%203.7(SPC207).zip
После установки библиотеки в CDS, я не нашёл модули: "МУ110-32Р" и "МВ110-32ДН". См. скрин:9852

Вопрос - как подружить эти модули с СПК - 207 или где взять последние библиотеки с поддержкой этих модулей?
Если не затруднит, выложите заготовку отконфигурированного проекта СПК - 207 + МУ110-32Р и МВ110-32ДН.

За ранее, благодарю.

Александр Приходько
03.09.2013, 15:27
Добавьте библиотеку Modbus, и воспользуйтесь функцией 03- Read Holding Register

kholonkin
03.09.2013, 17:43
прикольно.
заработало.
с версией модбасслейв 3.5.2.0 типы данных 8А как в примере.
Причем стало компилироваться даже при добавлении модбасслейв 3.5.1.0, что приводило ранее к ошибкам компиляции.
В общем танцы с бубном, по другому ну ни как не могу назвать, к чему то все таки привели......

kholonkin
03.09.2013, 17:45
Добавьте библиотеку Modbus, и воспользуйтесь функцией 03- Read Holding Register
Через конфигурацию или через библиотеки?

vladimir_prg
03.09.2013, 21:03
С обменом вопрос решили?

Полный кандец! СПК207 не работает по modbus rs-485 с модулями МВ110, вываливается "Ошибка шины". Данные не читаются и не пишутся ни в какие модуля. Караул!!!!!!!!
Я ВЛИП ПО УШИ!!!

UYesB
03.09.2013, 21:39
Полный кандец! СПК207 не работает по modbus rs-485 с модулями МВ110, вываливается "Ошибка шины". Данные не читаются и не пишутся ни в какие модуля. Караул!!!!!!!!
Я ВЛИП ПО УШИ!!!
Аналогичная ситуация, светодиод порта подмигивает, но в шину данные не поступают, на МВ110 светодиод не промаргивает. Панель сконфигурировал на RS485 и ни какого толку. Панели 2013 г.в., 03-WEB, таргеты разные пробовал. В чем секрет? У кого заработало расскажите подробнее, может прошивать надо сразу как с коробки достал?

Александр Приходько
03.09.2013, 22:19
Полный кандец! СПК207 не работает по modbus rs-485 с модулями МВ110, вываливается "Ошибка шины". Данные не читаются и не пишутся ни в какие модуля. Караул!!!!!!!!
Я ВЛИП ПО УШИ!!!


Аналогичная ситуация, светодиод порта подмигивает, но в шину данные не поступают, на МВ110 светодиод не промаргивает. Панель сконфигурировал на RS485 и ни какого толку. Панели 2013 г.в., 03-WEB, таргеты разные пробовал. В чем секрет? У кого заработало расскажите подробнее, может прошивать надо сразу как с коробки достал?
Так, товарищи. Давайте не будем грамогласно кричать, что все не работает. Все работает, просто что-то делаете не так.
Предлагаю нам поступить так. Оставьте мне в личку ваши сотовые телефоны. Завтра в течении дня я выйду на связь, решим ваши вопросы.

vladimir_prg
03.09.2013, 23:11
Вот установил тагет новый 3.5.0.40. Но к устройству не логинится, говорит там тагет другой (насколько я знаю 3.5.0.0). Нужно прошивать?

kholonkin
04.09.2013, 17:45
у меня ошибка шины вываливалась когда сетевые настройки компорта в кдс не совпадали с сетевыми настройками самих модулей.
проверять внимательно натсройки в модуле и в кдс


.................................Я ВЛИП ПО УШИ!!!
Коллега:D

kholonkin
04.09.2013, 17:47
........................ У кого заработало расскажите подробнее, может прошивать надо сразу как с коробки достал?
у меня заработало, во всяком случае вчера работало......
модули мв110-8а, мв110-16д, му110-16р
спк207 03 веб
таргет я пользовал 3.4.0.10
сама панель прошита версия
owen2012081-2531

Такое ощущение что вся эта система рассчитана под матерых программеров.
Нужна толковая инструкция, для жирафов, пошагово че и как.
Я реально убил неделю времени, не в чистую, но все таки, чтоб связаться с модулями.
где угодно ожидал подвох, но только не тут.
Там не все комбинации версий девайсов работают я так понял.

vladimir_prg
04.09.2013, 19:31
Предлагаю временное решеньеце от доброго админа Александра Приходько, за что ему Большой жирный спасиб

1) Подрубиться к панельке по WinSCP
2) Закинуть в папку /mnt/ufs/root следующие файлики:
setup_com, uartmode - не забыв назначить им права 777
3) закинуть в папку /etc файлик rc.local
Тагеты и прошивки, соответственно, желательно должны быть последними.

Если я что-то не упустил - у вас будет работать modbus.

Удачи!

kholonkin
04.09.2013, 20:04
А что там?
Чего напильником обработали?
В чем суть?

Александр Приходько
04.09.2013, 21:33
Предлагаю временное решеньеце от доброго админа Александра Приходько, за что ему Большой жирный спасиб

1) Подрубиться к панельке по WinSCP
2) Закинуть в папку /mnt/ufs/root следующие файлики:
setup_com, uartmode - не забыв назначить им права 777
3) закинуть в папку /etc файлик rc.local
Тагеты и прошивки, соответственно, желательно должны быть последними.

Если я что-то не упустил - у вас будет работать modbus.

Удачи!
Обращаю внимание, что проблема только для spk207-03cs без web визуализации.
На сайте для этого устройства выложен некорректный таргет + косяк в прошивке, заменим/исправим в ближайшее время.

Приносим извинения за доставленные неудобства!

UYesB
04.09.2013, 21:42
Так, товарищи. Давайте не будем грамогласно кричать, что все не работает. Все работает, просто что-то делаете не так.
Предлагаю нам поступить так. Оставьте мне в личку ваши сотовые телефоны. Завтра в течении дня я выйду на связь, решим ваши вопросы.
С утра на свежую голову сделал все попорядку и заработало. У меня СПК207 CS WEB прошивка 2.531.
Краткая инструкция:
1. Устанавливаем CoDeSys v3.5 с диска из коробки последовательно все версии.
2. Устанавливаем CDS 3.5 sp3 p2(с сайта)
3. Устанавливаем CDS Repository 3.5 sp3(с сайта)
4. Конфигурируем спк порты на rs485( по инструкции из коробки)
5. Создаем проект. Таргет с диска 3.5.0.4
6. Добавляем устройства по порядку com port, modbus master, modbus slave.(по инструкции в постах выше). При добавлении устанавливаем версии как в примере.
7. Добавляем визуализацию.
8. Запускаем и радуемся. :)

vladimir_prg
04.09.2013, 22:05
Обращаю внимание, что проблема только для spk107-03cs без web визуализации
P.S СПК207-03-CS

vladimir_prg
04.09.2013, 22:06
С утра на свежую голову сделал все попорядку и заработало. У меня СПК207 CS WEB прошивка 2.531.
8. Запускаем и радуемся. :)

У вас работало в эмуляторе или реально работал опрос на реальной панели с реальными модулями ввода-вывода?

vladimir_prg
04.09.2013, 22:13
А что там?
Чего напильником обработали?
В чем суть?

Вы же знаете, что русские из поезда секретный самолет могут сделать с помощью напильника.))
А так в роде проблема, по-моему, была в том, что в свежей прошивке в скрипте автозагрузчика не был прописан корректно запуск программки обслуживающей com порты. А может и саму программку забыли в дистрибутив положить или конфигурация была не правильная.

kholonkin
05.09.2013, 14:04
Сижу конфигурацию конфигурирую у мв110-8а в кдс.
Смотрю в документацию модуля, номера регистров указаны у первого и у последнего, у промежуточных естественно считать нужно.
Считать мы привыкли в десятичной системе, вот посчитал все, записал и сижу калькулятор виндовый мучаю.... дек хекс дек хекс......
Интересно какнить это дело можно более рационально сделать?

kholonkin
05.09.2013, 19:16
Не совсем по теме......
Господа, а есть еще варианты помимо примера ModbusRTU.pdf как перевернуть байты с мв110-8а?
А то хочется с модуля считывать еще и статус измерения, а переменных в модуле не может быть больше 10, а нужно 16 тогда организовывать.
вроде как массивом можно считать регистры каналов, но вот как из массива потом выдернуть значение самого параметра в реал, затруднения вызывает.

kholonkin
05.09.2013, 19:21
Если коротко, сейчас вообще наверное фигню спрошу, возможно ли из двух переменных ворд собрать одну переменную реал?

capzap
05.09.2013, 19:30
Если коротко, сейчас вообще наверное фигню спрошу, возможно ли из двух переменных ворд собрать одну переменную реал?

собираем же

kholonkin
05.09.2013, 20:18
Класный ответ, емкий и содержательный!

Александр Приходько
06.09.2013, 13:02
Можно, пример изучайте:
9935

kholonkin
06.09.2013, 14:29
что то не понял, что могло произойти..... в регистрах все единицы, кроме 8 канала, там нули все...
вчера было нормально
модули 16р и 16д работают нормально

Александр Приходько
06.09.2013, 14:48
что то не понял, что могло произойти..... в регистрах все единицы, кроме 8 канала, там нули все...
вчера было нормально
модули 16р и 16д работают нормально

Смотрите Вашу программу, вы видимо в программе в эти архивы где то данные пишите.

kholonkin
06.09.2013, 14:54
Да там программы то еще толком нету, пара тройка строчек.
В глобал вариэйбл вот это вписал:
MV110_8A_In_1_p:POINTER TO ARRAY [0..5] OF WORD;
Result_p:POINTER TO ARRAY[0..1] OF WORD;

Result_1,Result_2:WORD;
Result:REAL;

В ПЛС_ПРГ вот это добавил...
Result_p:=ADR(Result);
MV110_8A_In_1_p:=ADR(MV110_8A_In_1);
Result_p^[0]:=MV110_8A_In_1_p^[5];
Result_p^[1]:=MV110_8A_In_1_p^[4];

И все, и вылезли единицы........
в ПЛС_ПРГ закоментировал строчки...... в регистрах 110_8А так единицы и остались...

создал новый проект, от туда регистры нормально читаются

kholonkin
06.09.2013, 15:03
Точно ведь что то где то пишет, переменные отвязываю, нормальные данные наблюдаю..... только вот где что там пишет......

kholonkin
06.09.2013, 15:34
Какой то глюк. Отвязал от канала переменную.
Появились нормальные данные.
Создал новую переменную, подвязал к каналу, опять единицы......
кошмар, что за система..... реально начинаю жалеть уже...............

kholonkin
06.09.2013, 15:45
создал девственно чистый проект..........................
та же хрень, могу выразиться по другому, только тут так нельзя выражаться..............

еще момент, пытался открыть пример, архив проекта по чтению переменных с 8а модуля, кдс ругнулся что проект сделан в кдс35 сп3 патч 5, а у меня более ранняя версия и все....
попробую переустановить кдс.
Такая шляпа под соусом, не ожидал от немцев такой системы.

kholonkin
06.09.2013, 20:11
в общем снес кдс, весь какой был на машине.
поставил заново 35сп3п2, поставил репозиторий библиотек с сайта.
та же хрень, в регистрах у модуля 110-8а единицы, убираем привязку к переменной, нормальные данные, ставим переменную обратно, опять еденицы, причем переменная новая, т.е. писаться в нее ни где ничего не может в программе, во всяком случае с моего ведома.

Вот такая вот фигня, бывает порою не до смеха, писал писал проект, потом на тебе.................. и переделывай с бубном в руках.

Александр Приходько
06.09.2013, 20:40
в общем снес кдс, весь какой был на машине.
поставил заново 35сп3п2, поставил репозиторий библиотек с сайта.
та же хрень, в регистрах у модуля 110-8а единицы, убираем привязку к переменной, нормальные данные, ставим переменную обратно, опять еденицы, причем переменная новая, т.е. писаться в нее ни где ничего не может в программе, во всяком случае с моего ведома.

Вот такая вот фигня, бывает порою не до смеха, писал писал проект, потом на тебе.................. и переделывай с бубном в руках.

Выложите пожалуйста архив проекта, посмотрю что у Вас не работает. С вероятностью в 90% вы с указателями не корректно работаете.

kholonkin
06.09.2013, 21:41
Выложите пожалуйста архив проекта, посмотрю что у Вас не работает. С вероятностью в 90% вы с указателями не корректно работаете.
Завтра постараюсь выложить. Как доберусь до компа рабочего. Только вот не пойму где можно накосячить в нулевом проекте, где только объявлена одна переменная и из устройств модбаском модбасмастер и модбасслейв.

Александр Приходько
06.09.2013, 23:42
capzap (http://www.owen.ru/forum/member.php?u=10755) и kholonkin (http://www.owen.ru/forum/member.php?u=13556) прекратите эту ругонь. Еще одно подобное высказывание от кого либо, перекрою доступ к форуму на неделю вам двоим.
Давайте соблюдать рамки приличия и уважение друг к другу.
К сожалению не все являются профессионалами в области программирования.


kholonkin (http://www.owen.ru/forum/member.php?u=13556) , жду Ваш проект. И проблема не в том одна или 2 переменных в вашем проекте. А в том как Вы с ними работаете.

kholonkin
07.09.2013, 05:55
Пока не добрался до компа.


Александр, в ответе 54 скрин от абсолютно пустого проекта. Там одна переменная. ПЛС ПРГ пустое. Там нет ничего. Кроме модбаском модбасмастер и модбасслев с двумя каналами. К одному из них соотнесена перменная.

Александр Приходько
07.09.2013, 06:11
Пока не добрался до компа.


Александр, в ответе 54 скрин от абсолютно пустого проекта. Там одна переменная. ПЛС ПРГ пустое. Там нет ничего. Кроме модбаском модбасмастер и модбасслев с двумя каналами. К одному из них соотнесена перменная.

1) Ругаться нельзя даже на скриншетах и даже на английском языке.
2) Какой тип у вашей ругательной переменной и где она объявлена?

Я кокраз дома имею на руках и СПК110 и модуль МВ110-8А.
В течении субботы посмотрю.

А вообще я выложил пример, где полный опрос данных с 8А происходит и естественно таи также используется привязка к переменным.
И проблем ни каких не надблюдал.

Есть у меня подозрение, что вы все указатели туда пытаетесь прикрутить.
Объявите в PLC_PRG обычный массив байт. И привяжите его к модбас.
Но только пока указатели не трогайте.

kholonkin
07.09.2013, 09:14
у меня спк207, могу предположить что на спк110 может заработать.
вот сегодня скидал проект, тоже самое....
уже все в архиве со скрин шотами, потому пардон, ругательная переменная таже:)

capzap
07.09.2013, 11:01
гарантировано ни кто бы не смог ничего записать в переменную, если бы она лежала не в глобальных переменных, а в ПОУ PLC_PRG
немешало бы время цикла увеличить до десяти, как пишет Александр, а я бы на 2хх до 20мс бы предложил минимум
и взять за правило нужно включать "злую собаку", очень тяжко выходить будет если случится зацикливание
ну и так для подстраховки в главном ПОУ все же минимальный символ ; поставить требуется

kholonkin
07.09.2013, 16:40
это проект пример, что в пустом глюк.
в рабочем маин таск у меня 100 мс стоит.
про собаку согласен, нужна.

capzap
07.09.2013, 18:45
вот опять ответили на несущественные мелочи, на главное предложение почему умолчали, работает или нет?

Александр Приходько
08.09.2013, 01:05
у меня спк207, могу предположить что на спк110 может заработать.
вот сегодня скидал проект, тоже самое....
уже все в архиве со скрин шотами, потому пардон, ругательная переменная таже:)


гарантировано ни кто бы не смог ничего записать в переменную, если бы она лежала не в глобальных переменных, а в ПОУ PLC_PRG
немешало бы время цикла увеличить до десяти, как пишет Александр, а я бы на 2хх до 20мс бы предложил минимум
и взять за правило нужно включать "злую собаку", очень тяжко выходить будет если случится зацикливание
ну и так для подстраховки в главном ПОУ все же минимальный символ ; поставить требуется


это проект пример, что в пустом глюк.
в рабочем маин таск у меня 100 мс стоит.
про собаку согласен, нужна.


вот опять ответили на несущественные мелочи, на главное предложение почему умолчали, работает или нет?

1) Предположение сработало. В СПК110 обмен работает и переменные корректно выводятся, но правда все устройства обновить пришлось до более новых
2) CDS 3,5 позволяет использовать не только глобальные переменные, но и переменные проекта.
Я вообще не любитель глобальных переменных, т.к. они доступны из любого места программы.
Но в данном случае это ни как не влияет на работу проекта
3) С циклом согласен на СПК2хх его надо до 15-20 мс поднять.
4) ; в CDS теперь не требуется для создания пустого POU
5) Сторожевой таймер пока погоды не сделает


Теперь, что я заметил.
1) СПК у вас с очень древним Target файлом - 3,4,0,10 и видимо и с очень древней прошивкой
В связи с этим я бы вам порекомендовал прошиться на более новую прошивку:
http://www.owen.ru/catalog/32050189

ВНИМАНИЕ! как выяснилось на сайте я выложил не корректные таргеты для новой прошивки. В понедельник перевыложу.
А вообще на этой неделе будет новая прошивка с ядром 3,5,3,40 для СПК1хх. Потом такую же прошивку сделаем для СПК2хх.
После этого проекты настраивать будет полегче. Думаю для СПК2хх прошивка выйдет не раньше чем через 1-2 недели, т.к. надо время на ее испытания.

2) Даже если пока отложить прошивку на задний план, посмотрим на девайсы, которые в вашем проекте:
SPC2xx_x.03.x-cs-web версия 3,4,0,10
Modbus_COM версия 3,4,0,0
Modbus_Master_COM_Port версия 3,4,0,0
Modbus_Slave_COM_Port версия 3,5,2,0

ПОЧЕМУ?

В трех одинаковых темах на форуме уже неоднократно сказано, что версии девайсов должны быть ниже или равны версии таргета устройства.

Я не поленился, даже сделал подробную инструкцию.
http://www.owen.ru/forum/showthread.php?t=15674&p=117771&viewfull=1#post117771


возможно это исправит ситуацию.

kholonkin
08.09.2013, 17:53
1. Таргет этот был в КДС после установки, я его туда не ставил. До этого были потуги с таргетом 3.5.. дальше не помню цифры, у меня ничего не вышло, почему, уже наверное и не выяснить. Прошивка в моих панелях 2531. Вроде как самая свежая.
Ковыряться/экспериментировать с разными прошивками и таргетами на данный момент нет времени, я его очень много потерял, у меня этот этап, на котором я сейчас нахожусь должен был быть дней 10 назад крайний срок.

2. По поводу девайсов.
Используя таргет 3.5 получал множественные ошибки компиляции.... потом ушел на таргет 3.4 и версии устройств 3.4.0.0, оно откомпилировалось и заработало.
После чего возник вопрос с получением корректных значений. Структура данных в примере, который подсказали, не совпадала с тем что я имел на Modbus_Slave_COM_Port версия 3,4,0,0.
Примеры и хелп, такое ощущение, что пишут программисты для программистов, поэтому если ты не в теме, то понять сам принцип работы с ходу не выходит.
После чего была предпринята попытка изменить версию Modbus_Slave_COM_Port с 3.4.0.0 на 3.5.2.0. структура данных в ней соответствовала примеру. Данная комбинация устройств откомпилировалась и заработала.
Затем в дебрях сети надыбал пдфник где описывалась работа указателей, форма подачи оказалась мне понятна. После чего было опробовано с одной переменной, значение вывел на панель удачно и как надо. Потом прописал все переменные всем каналам модуля. ну и собрался двигаться дальше..... как вывалились эти единицы....... потом манипуляции с удаление установкой КДС.......

На данный момент остановился на комбинации устройств версии 3.4.0.0, таргет 3.4.
Т.к. разобрался как там вертеть байты в модбасе, то мне фиолетово какая там структура данных переменных в Modbus_Slave_COM_Port.
На ней сейчас и двигаюсь дальше.

kholonkin
08.09.2013, 17:57
Мне вот интересно, после спк207 на какие грабли я могу наступить с спк107.....

Александр Приходько
08.09.2013, 19:54
Мне вот интересно, после спк207 на какие грабли я могу наступить с спк107.....
Скажем так, у меня подобных проблем не было ни разу. Думаю все сложности из за того, что надо было немного потратить времени и разобраться с теаргетами и прошивками.

Я Вам настоятельно рекомендую все же установить нормальный Target и работать с ним. Target файлы в понедельник я перевыложу.

Grey
16.09.2013, 10:15
СПК207-022.03.00-CS-WEB
прошивка OWEN-20120817-2531
таргет 3.5.0.40
СПК207 - мастер, ТРМ212 - слэйв с номером 1.

Сделал по примеру из ModBus_VS_CODESYS_V35.pdf.
Ошибка на слэйве с сообщением "Шина не запущена. Данные значения, возможно, неактуальны".
Панель соединяется через COM2 по RS485 с ТРМ212 используя Modbus RTU (9600, 8N2).
С компьютера через переходник RS232/485 опросить ТРМ212 с теми же установками получается без проблем.

Уже и с номерами портов и прочими параметрами экспериментировал, но без результата. Как быть?

Александр Приходько
16.09.2013, 14:57
СПК207-022.03.00-CS-WEB
прошивка OWEN-20120817-2531
таргет 3.5.0.40
СПК207 - мастер, ТРМ212 - слэйв с номером 1.

Сделал по примеру из ModBus_VS_CODESYS_V35.pdf.
Ошибка на слэйве с сообщением "Шина не запущена. Данные значения, возможно, неактуальны".
Панель соединяется через COM2 по RS485 с ТРМ212 используя Modbus RTU (9600, 8N2).
С компьютера через переходник RS232/485 опросить ТРМ212 с теми же установками получается без проблем.

Уже и с номерами портов и прочими параметрами экспериментировал, но без результата. Как быть?

Нареканий к программе нет, на первый взгляд настроено все верно.
1) Проверьте линию связи RS-485
2) Как вариант, возможно поможет согласующий резистор на 100 Ом
3) Попробуйте увеличить таймауты ожидания ответа.

Если не поможет, отпишитесь, попрошу наших ребят проверить.

Grey
16.09.2013, 17:22
1) Линию прозвонил. Витая пара около 1 м на столе. Норма.
2) Пробовал и с резистором 100 Ом и 120 Ом и без...
3) Увеличил таймаут слэйва до 5000, у мастера таймаут отклика до 5000, время между фреймами до 100.

Сменил подключение на порт COM3 с изменением в программе на "4" в номере порта.
Индикатор на панели моргает, а по истечении таймаута в слэйве на вкладке "Соотнесение входов/выходов" появляется "Шина не запущена. Данные значения, возможно, неактуальны".
На ТРМ212 индикатор "RS" не загорается. С компьютера опрос получается, а с СПК207 - нет, хотя индикатор отправки мигает и порты настроены как RS485.
С чем еще стоит поэкспериментировать?

Александр Приходько
16.09.2013, 18:30
1) Линию прозвонил. Витая пара около 1 м на столе. Норма.
2) Пробовал и с резистором 100 Ом и 120 Ом и без...
3) Увеличил таймаут слэйва до 5000, у мастера таймаут отклика до 5000, время между фреймами до 100.

Сменил подключение на порт COM3 с изменением в программе на "4" в номере порта.
Индикатор на панели моргает, а по истечении таймаута в слэйве на вкладке "Соотнесение входов/выходов" появляется "Шина не запущена. Данные значения, возможно, неактуальны".
На ТРМ212 индикатор "RS" не загорается. С компьютера опрос получается, а с СПК207 - нет, хотя индикатор отправки мигает и порты настроены как RS485.
С чем еще стоит поэкспериментировать?

У ребят из Технической поддержки ситуация повторилась на вашем примере. Завтра продолжат испытания, пока причины данного явления не понятны.

Трофимов Артем
17.09.2013, 10:15
Здравствуйте,Grey.
Вчера взял старый прибор, запамятовав, что у него нет протокола Modbus. Потому ситуация и повторилась.
Сегодня снял новый прибор со склада, переключил на Modbus RTU , перекинул питание и всё прекрасно заработало с Вашим проектом без каких либо изменений.
Какого года у Вас ТРМ212, перекидывали ли Вы питание на приборе после смены протокола?( он не перейдёт на модбас , если этого не сделать).


Вы можете снять лог опроса? Вчера тоже самое было, СПК стучался в дверь, но ответа так и не получил.И с грустью сообщал, что шина того...

Александр Приходько
18.09.2013, 17:31
Здравствуйте,Grey.
Вчера взял старый прибор, запамятовав, что у него нет протокола Modbus. Потому ситуация и повторилась.
Сегодня снял новый прибор со склада, переключил на Modbus RTU , перекинул питание и всё прекрасно заработало с Вашим проектом без каких либо изменений.
Какого года у Вас ТРМ212, перекидывали ли Вы питание на приборе после смены протокола?( он не перейдёт на модбас , если этого не сделать).


Вы можете снять лог опроса? Вчера тоже самое было, СПК стучался в дверь, но ответа так и не получил.И с грустью сообщал, что шина того...

Собственно видео которое подготовил Артем:

http://www.youtube.com/watch?v=tkXzTxf1HmE

Drahtor
25.09.2013, 12:22
Иду по стопам Кholonkinа. Все те же 501 ошибки компиляции. Делаю по все по руководству "Modbus_VS_Codesys_3.5".
Таргет СПК207 3.5.0.40, прошивка2.531.
Версия таргета СОМ-порта - 3.4.0.0
Модбас мастер - 3.4.1.2.
Модбас Слэйв - 3.4.0.010248

Трофимов Артем
25.09.2013, 13:35
Здравствуйте , Drahtor .
Укажите пожалуйста полностью версию кодесис, что вы используете

Drahtor
25.09.2013, 14:01
Здравствуйте , Drahtor .
Укажите пожалуйста полностью версию кодесис, что вы используете
Codesys V3.5 SP3 Patch 5

Трофимов Артем
25.09.2013, 14:31
можете выложить скриншоты ошибок? загрузил ваш проект, с обновлением таргета до WEB версии панели и без проблем загрузился

Drahtor
25.09.2013, 16:38
можете выложить скриншоты ошибок? загрузил ваш проект, с обновлением таргета до WEB версии панели и без проблем загрузился

У меня СПК207-03-00-CS.
Скриншоты:
10250102511025210253102541024910249
В случае необходимости, могу выложить скрины всех ошибок

Александр Приходько
25.09.2013, 18:41
Иду по стопам Кholonkinа. Все те же 501 ошибки компиляции. Делаю по все по руководству "Modbus_VS_Codesys_3.5".
Таргет СПК207 3.5.0.40, прошивка2.531.
Версия таргета СОМ-порта - 3.4.0.0
Модбас мастер - 3.4.1.2.
Модбас Слэйв - 3.4.0.010248

У меня Ваш проект нормально открылся и компилируется.
Рекомендую сделать следующее:
1) Из проекта удалите все устройства
2) Добавьте устройства заново, но следующих версий:

Версия таргета СОМ-порта - 3.4.0.0
Модбас мастер - 3.5.0.0
Модбас Слэйв - 3.4.0.0

3) Компиляция - очистить все
Компиляция - перекомпиляция

Должно все получиться

P.S. я щас только заметил, что прибор у вас модификации без WEB. Эта прошивка для данного контроллера плохая - в ней интерфейсы не работают.
Рекомендую пока отложить настройку обмена.
Сейчас запущена процедура обновления прошивок для СПК2хх. На следующей неделе будут прошивки с ядром 3,5,3,40.

Drahtor
25.09.2013, 19:56
У меня Ваш проект нормально открылся и компилируется.
P.S. я щас только заметил, что прибор у вас модификации без WEB. Эта прошивка для данного контроллера плохая - в ней интерфейсы не работают.
Рекомендую пока отложить настройку обмена.
Сейчас запущена процедура обновления прошивок для СПК2хх. На следующей неделе будут прошивки с ядром 3,5,3,40.

А почему об этом нигде не написано??? Я второй месяц мучаюсь с этими интерфейсами, перебирая все возможные таргеты!!!
ПРибор мой был приобретен в конце января сего года. Версия, как я понимаю, не самая свежая и "правильная". С какими еще трудностями я могу столкнуться?

Александр Приходько
26.09.2013, 10:39
Я конечно извиняюсь, но об этом в самом начале темы написано
http://www.owen.ru/forum/showthread.php?t=15703&p=118178&viewfull=1#post118178

очень рекомендую изучить эту тему с поста 35 по 38 включительно.
При использовании данного решения в конфигуратор заходить строго запрещено.

Это пока временное решение, пока обновляем прошивку.
К сожалению недоглядели, эта же прошивка в модификации с WEB работает более менее.
Я на ней проект по учету продукции делал.

По поводу того, какие трудности могут у Вас возникнуть, надеюсь подобного рода сложностей не будет.

Drahtor
26.09.2013, 10:50
Предлагаю временное решеньеце от доброго админа Александра Приходько, за что ему Большой жирный спасиб

1) Подрубиться к панельке по WinSCP
2) Закинуть в папку /mnt/ufs/root следующие файлики:
setup_com, uartmode - не забыв назначить им права 777
3) закинуть в папку /etc файлик rc.local
Тагеты и прошивки, соответственно, желательно должны быть последними.

Если я что-то не упустил - у вас будет работать modbus.

Удачи!
Все это я уже проделал, только изменений пока нет. Как модбас не работал, так и не работает

Александр Приходько
26.09.2013, 18:47
Все это я уже проделал, только изменений пока нет. Как модбас не работал, так и не работает
Подождите немного. Думаю ко вторнику среде прошивки сделаем.
Вот пока смотрите чего вам стоит ожидать от новой прошивки:

http://youtu.be/_tWkTkJBeE0


На яркие цвета внимание пока не обращайте, это еще будем редактировать.

Drahtor
26.09.2013, 20:26
Подождите немного. Думаю ко вторнику среде прошивки сделаем.
Вот пока смотрите чего вам стоит ожидать от новой прошивки:

http://youtu.be/_tWkTkJBeE0


На яркие цвета внимание пока не обращайте, это еще будем редактировать.

На видео панель с обещанным новым процессором 600 Мгц и графичесим ускорителем? Уж больно шустро она откликается на нажатия. В разы быстрее моей...

Александр Приходько
27.09.2013, 12:17
На видео панель с обещанным новым процессором 600 Мгц и графичесим ускорителем? Уж больно шустро она откликается на нажатия. В разы быстрее моей...

Не угадали ) Это на старом железе.
1) Новое ядро 3,5,3,40 оптимизировано компанией 3S и по их заверению визуализация ускорена на 100% (собственно это на лицо)
2) В новом конфигураторе для задачи визуализации используется свободный цикл это дополнительное ускорение визуализации.

В результате вы видите реальное увеличение быстродействия.

Александр Приходько
27.09.2013, 12:21
Все это я уже проделал, только изменений пока нет. Как модбас не работал, так и не работает

Пока прошивки нет, если есть желание поэксперементировать, попробуйте замените файлы по инструкции, но потом надо запустить программу Putty и выполнить перезагрузку командой reboot. Если вы делали перезагрузку питанием, то это не прокатит.

Drahtor
27.09.2013, 13:31
Пока прошивки нет, если есть желание поэксперементировать, попробуйте замените файлы по инструкции, но потом надо запустить программу Putty и выполнить перезагрузку командой reboot. Если вы делали перезагрузку питанием, то это не прокатит.

Так у меня же даже программа не компилируется, причем тут файловая система панельки? Ну заменю я файлики, перезагружу, а сам CDS я же не затрону.

Drahtor
03.10.2013, 10:57
Подождите немного. Думаю ко вторнику среде прошивки сделаем.

Ждем с большим нетерпением...

Александр Приходько
05.10.2013, 01:49
Ждем с большим нетерпением...
Прошивки почти готовы на следующие модификации:
1) СПК207-03.CS
2) СПК207-03.CS.WEB
3) СПК210-03.CS.WEB

Основные нововведения:
1) Полностью новый конфигуратор
2) Изменен алгоритм входа в режим конфигурирования, теперь он аналогичен СПК1хх:
В момент загрузки при появлении надписи - короткое нажатие - переход в конфигуратор
В момент загрузки при появлении надписи - длинное нажатие - переход в калибровку и потом в конфигуратор
при отсутствии нажатия переход в режим загрузки проекта
3) Переключатель на задней крышке не используется
4) Исправлена проблема, когда в загрузочном проекте при переходе в конфигуратор слетали тексты, картинки и Retain
5) Новое ядро системы исполнения версии 3,5,3,40, которое позволяет адекватно работать в CODESYS 3,5 SP3 Patch5 и выше (Patch4 рекомендую не использовать - проблемы с Retain)
6) Поддержка AlarmManager и Trace
7) Включены Modbus Master/Slave/TCP (до этого Slave не работал, т.к. нами не была приобретена лицензия)
8) Немного увеличено быстродействие графики - за счет оптимизации CODESYS.

В новых прошивках есть еще несколько небольших замечаний, которые необходимо устранить.
В понедельник я буду на выставке, поэтому прошивками продолжу заниматься во вторник.

Планирую вывести данные прошивки к среде.

Следом за СПК2хх выйдут аналогичные прошивки для СПК1хх.

Т.е. все СПК сейчас будут функционировать на одном ядре и будут иметь одинаковый конфигуратор.

Прошивки для СПК1хх появятся не раньше 18 октября.
Плюс в них будет реализована еще одна фишка - вертикальное расположение, которое можно будет задать в конфигураторе.

arlyn
30.10.2013, 12:27
У меня задача прочитать 100 регистров по modbus данные обновляются редко. Потому я решил использовать не циклический опрос, а rising_edge чтоб не загружать сеть и процессор зря.
Вот только возник вопрос, какую переменную из библиотеки IoDrvModbus надо считать чтоб узнать что все данные прочитались (чтоб операцию присваивания новых данных выполнить один раз)? Какую строчку в программе надо написать? modbus настроил в конфигураторе.

Александр Приходько
31.10.2013, 04:36
У меня задача прочитать 100 регистров по modbus данные обновляются редко. Потому я решил использовать не циклический опрос, а rising_edge чтоб не загружать сеть и процессор зря.
Вот только возник вопрос, какую переменную из библиотеки IoDrvModbus надо считать чтоб узнать что все данные прочитались (чтоб операцию присваивания новых данных выполнить один раз)? Какую строчку в программе надо написать? modbus настроил в конфигураторе.

Скорее всего это вопрос к Вам. Если производитель оборудования у себя заложил такой параметр, то в каком то из регистров он есть. Если не заложил, то тогда Вам надо периодически читать все параметры.

Собственно а почему боитесь обмен циклически запускать. Промжелезо собственно для этого предназначено.

arlyn
31.10.2013, 08:29
Скорее всего это вопрос к Вам. Если производитель оборудования у себя заложил такой параметр, то в каком то из регистров он есть. Если не заложил, то тогда Вам надо периодически читать все параметры.

Собственно а почему боитесь обмен циклически запускать. Промжелезо собственно для этого предназначено. Я имел ввиду параметр подобный параметру done из овеновской библиотеки comcon, но только для библиотеки IoDrvModbus( т.к. я использую конфигуратор для modbus).
У меня программа так разрослась на спк207 что я ищу любые варианты не тратить процессорные ресурсы.(одна визуализация сменяется другой 3-4с) Так если параметры редко обновляются в некоторых регистрах УБЗ-302 то хочу считывать их редко и считанные переменные приравнять к переменным в программе только один раз, а не каждый цикл. Параметр подобный done мне скажет что считывание законченно на данном канале модбас.

Александр Приходько
02.11.2013, 13:26
Я имел ввиду параметр подобный параметру done из овеновской библиотеки comcon, но только для библиотеки IoDrvModbus( т.к. я использую конфигуратор для modbus).
У меня программа так разрослась на спк207 что я ищу любые варианты не тратить процессорные ресурсы.(одна визуализация сменяется другой 3-4с) Так если параметры редко обновляются в некоторых регистрах УБЗ-302 то хочу считывать их редко и считанные переменные приравнять к переменным в программе только один раз, а не каждый цикл. Параметр подобный done мне скажет что считывание законченно на данном канале модбас.

1) какая прошивка в вашем СПК
2) Какое время цикла PLC_PRG?
3) Какой цикл у Visu_Task?

Параметра типа DONE в стандартных средствах CODESYS нет, попробую в 3S сделать запрос о добавлении данного параметра.

ttimoh
05.11.2013, 16:04
добрый день, подскажите , почему не активируются порты на СПК 207 Com2, Com3 все настроено верно через дерево, но нет даже признаков работы портов.

ttimoh
05.11.2013, 16:07
СПК 207 связываю с МДВВ по RS485 и ни как нет открытия портов. Подумываю о перепрошивке.

Александр Приходько
05.11.2013, 17:39
СПК 207 связываю с МДВВ по RS485 и ни как нет открытия портов. Подумываю о перепрошивке.
Все верно, рекомендую начать с прошивки.

arlyn
05.11.2013, 18:57
Я заметил такую вещь что после прошивки СПК207 с v2531 на версию v3302, модуль МВ110-224.8АС никак не заставить работать по modbas на скорости 115200 или 57000, получилось только на скорости 9600кбод. В программе я менял только таргет спк207 и версии модбас мастер и слейв на самые новые. А вот например модули МДВВ легко работают на 115200кбод c новой прошивкой.
В чём дело?

Александр Приходько
07.11.2013, 00:05
Я заметил такую вещь что после прошивки СПК207 с v2531 на версию v3302, модуль МВ110-224.8АС никак не заставить работать по modbas на скорости 115200 или 57000, получилось только на скорости 9600кбод. В программе я менял только таргет спк207 и версии модбас мастер и слейв на самые новые. А вот например модули МДВВ легко работают на 115200кбод c новой прошивкой.
В чём дело?
Дело видимо в версиях COM порта, мастера и слейвах. Вы их до самых последних обновляли?
Рекомендую попробовать вообще сделать новый проект на новом таргете и проверить работу Modbus.
Должно все заработать.

arlyn
07.11.2013, 08:25
Дело видимо в версиях COM порта, мастера и слейвах. Вы их до самых последних обновляли?
Рекомендую попробовать вообще сделать новый проект на новом таргете и проверить работу Modbus.
Должно все заработать.
Версии com портов обновлял до самых последних, мастер и слейв тоже до самых последних. Много раз пробовал делать абсолютно новый проект с аналогичными настройками. Ни как не получается заставить их работать на большой скорости. тока 9600кбод более менее стабильна. Может прошивка v3302 всеже сыровата?

Александр Приходько
12.11.2013, 23:09
Версии com портов обновлял до самых последних, мастер и слейв тоже до самых последних. Много раз пробовал делать абсолютно новый проект с аналогичными настройками. Ни как не получается заставить их работать на большой скорости. тока 9600кбод более менее стабильна. Может прошивка v3302 всеже сыровата?

Маловероятно. Попрошу ребят из поддержки завтра проверить.

Мурат Ахриев
14.11.2013, 10:36
Были произведены опыты в ходе которых было выявлено, что для стабильной передачи данных на высоких скоростях обмена по шине RS485 нужны терминаторы(резисторы) на обеих концах шины, в прикрепленном примере использовались сопротивления номиналом 50 Ом.


http://www.youtube.com/watch?v=JUGsE4yM7xE

arlyn
14.11.2013, 13:14
Были произведены опыты в ходе которых было выявлено, что для стабильной передачи данных на высоких скоростях обмена по шине RS485 нужны терминаторы(резисторы) на обеих концах шины, в прикрепленном примере использовались сопротивления номиналом 50 Ом.
Обычно на обоих концах ставят по 120Ом, ну да ладно.
Вопрос: почему эта проблема появилась только после прошивки с v2531 на версию v3302. Сейчас я прошил спк207 обратно на v2531 и все работает на 115200кбод, без резисторов с кратковременными сбоями, на скорости 57000кбод без сбоев и без резисторов.:)

Мурат Ахриев
15.11.2013, 12:10
Обычно на обоих концах ставят по 120Ом, ну да ладно.
Вопрос: почему эта проблема появилась только после прошивки с v2531 на версию v3302. Сейчас я прошил спк207 обратно на v2531 и все работает на 115200кбод, без резисторов с кратковременными сбоями, на скорости 57000кбод без сбоев и без резисторов.:)

На старой версии железа SPK2xx имеются проблемы с внутренним резистором RS485 шины, в новой версии SPK2xx.SOM, с обновленным железом, данная проблема решена.

vladimir_prg
18.11.2013, 17:54
На старой версии железа SPK2xx имеются проблемы с внутренним резистором RS485 шины, в новой версии SPK2xx.SOM, с обновленным железом, данная проблема решена.
Не совсем понял эту фразу. Ведь разговор идет о прошивке, а не о железе...

vladimir_prg
01.12.2013, 00:41
Маловероятно. Попрошу ребят из поддержки завтра проверить.

Александр подскажите когда решиться проблема в панели с rs-485? Ведь без rs-485 эта панель бесполезна.

На прошивке 2.5 порт вообще не работает, на 3.3 работает с постоянными сбоями. У меня на 3 панелях такая беда...

Подкупает цена и потенциальный функционал, но за эти глюки хочется шибануть панель об стенку...и забыть про нее

Александр Приходько
01.12.2013, 21:07
Были произведены опыты в ходе которых было выявлено, что для стабильной передачи данных на высоких скоростях обмена по шине RS485 нужны терминаторы(резисторы) на обеих концах шины, в прикрепленном примере использовались сопротивления номиналом 50 Ом.


http://www.youtube.com/watch?v=JUGsE4yM7xE


Обычно на обоих концах ставят по 120Ом, ну да ладно.
Вопрос: почему эта проблема появилась только после прошивки с v2531 на версию v3302. Сейчас я прошил спк207 обратно на v2531 и все работает на 115200кбод, без резисторов с кратковременными сбоями, на скорости 57000кбод без сбоев и без резисторов.:)


На старой версии железа SPK2xx имеются проблемы с внутренним резистором RS485 шины, в новой версии SPK2xx.SOM, с обновленным железом, данная проблема решена.


Не совсем понял эту фразу. Ведь разговор идет о прошивке, а не о железе...


Александр подскажите когда решиться проблема в панели с rs-485? Ведь без rs-485 эта панель бесполезна.

На прошивке 2.5 порт вообще не работает, на 3.3 работает с постоянными сбоями. У меня на 3 панелях такая беда...

Подкупает цена и потенциальный функционал, но за эти глюки хочется шибануть панель об стенку...и забыть про нее

Постараюсь немного конкретизировать.
Я не принимал участие в разработке СПК207, но как я выяснил, у СПК есть 2 разновидности плат.
Посмотреть модификацию платы можно сняв верхнюю крышку. Она указана на верхней плате и имеет название PLC...C01 или PLC...C02 (примерно так, точное название уточню в понедельник).

Если у Вас плата С01, то это однозначно проблема в аппаратной платформе.
Если у Вас плата C02, то там аппаратная проблема устранена и скорее всего проблема именно в ПО.

Уточню сразу, в СПК1хх схемотехника другая, там подобных проблем не было и нет.

Завтра я буду заниматься решением данной проблемы, думаю к концу недели дам точный ответ где именно проблема.
Пока прошу дать ответ какой модификации у Вас плата.

vladimir_prg
03.12.2013, 01:37
Пока прошу дать ответ какой модификации у Вас плата.

На панели у которой помимо rs485 стал глючить сенсор и которая валяется у меня на столе плата: PLC45C01 CL.1
Кстати эту панель вы реанимировали мне по TV и она работала с 7 модулями ввода/вывода без нареканий. То бишь дело видимо не в железе.
Но у нее начал жестко глючить сенсор и выхода не было пришлось рискнуть запустить калибровку. Все настройки слетели и ком порт я оживить самостоятельно не смог.

Привезли панель с другого объекта. На ней модификацию платы могу посмотреть завтра на объекте. Я ее смог после долгих пыток прошить на прошивку 3.3. Порт заработал, но из 7 модулей ввода/вывода я смог оставить только 2 самых критичных, посадил на разные порты, и они кое как работают на скорости 9600. больше одного модуля на порт она не тянет. Мне осталось 1-2 сроку чтобы все работало. Иначе.....3.14 Думаю как временное решение ПЛК100 (который валяется под рукой) как конвертер rs485-ethernet задействовать. Или, не знаю, запустить бы на ней порт на прошивке 2.5. Но времени возиться нет (((

Во время мучений с прошивкой 3.3 я всегда надеялся, что у меня есть запасной выход: http://www.owen.ru/forum/showthread.php?t=15703&page=4&p=118178&viewfull=1#post118178 Но когда время пришло использовать запасной выход - то вот незадача, я оказывается не уточнил по какому протоколу подрубаться к панели, (FTP?) имя лузера и пароль.

vladimir_prg
04.12.2013, 00:46
Наверное загрузили Александра здорово. Раньше и в 3 часа ночи ответить мог. А сейчас молчит. А тех. поддержка по телефону тоже ответить ничего не может.(((((

Александр Приходько
21.12.2013, 00:45
На панели у которой помимо rs485 стал глючить сенсор и которая валяется у меня на столе плата: PLC45C01 CL.1
Кстати эту панель вы реанимировали мне по TV и она работала с 7 модулями ввода/вывода без нареканий. То бишь дело видимо не в железе.
Но у нее начал жестко глючить сенсор и выхода не было пришлось рискнуть запустить калибровку. Все настройки слетели и ком порт я оживить самостоятельно не смог.

Привезли панель с другого объекта. На ней модификацию платы могу посмотреть завтра на объекте. Я ее смог после долгих пыток прошить на прошивку 3.3. Порт заработал, но из 7 модулей ввода/вывода я смог оставить только 2 самых критичных, посадил на разные порты, и они кое как работают на скорости 9600. больше одного модуля на порт она не тянет. Мне осталось 1-2 сроку чтобы все работало. Иначе.....3.14 Думаю как временное решение ПЛК100 (который валяется под рукой) как конвертер rs485-ethernet задействовать. Или, не знаю, запустить бы на ней порт на прошивке 2.5. Но времени возиться нет (((

Во время мучений с прошивкой 3.3 я всегда надеялся, что у меня есть запасной выход: http://www.owen.ru/forum/showthread.php?t=15703&page=4&p=118178&viewfull=1#post118178 Но когда время пришло использовать запасной выход - то вот незадача, я оказывается не уточнил по какому протоколу подрубаться к панели, (FTP?) имя лузера и пароль.


Наверное загрузили Александра здорово. Раньше и в 3 часа ночи ответить мог. А сейчас молчит. А тех. поддержка по телефону тоже ответить ничего не может.(((((


Я был в командировке, потом в отпуске. Извините за задержку.
Ту проблему, что мы решали уже исправили в прошивке, что на сайте:
http://www.owen.ru/catalog/32050189

После калибровки у вас запустился конфигуратор, который убил все наши нововведения.

1.Прошейтесь на новую прошивку и будет вам счастье.
2. Прочитайте это: http://www.owen.ru/forum/showthread.php?t=16184&p=126326&viewfull=1#post126326

Александр Приходько
21.12.2013, 00:46
Уважаемые Владельцы СПК207/210.
Особенно те, у кого есть нерешаемые проблемы с обменом по RS-485.
Прошу внимательно прочитать данное сообщение:
http://www.owen.ru/forum/showthread.php?t=16184&p=126326&viewfull=1#post126326

lar
10.01.2014, 18:46
Потратил полдня, но так и не смог прошить СПК207WEB на версию 3.302, поэтому решил искать выход с подключением Modbus в Codesys для версии таргета 3.5.0.40.
Рекомендация о версиях таргетов Modbus ниже чем версия устройства не прокатывает для версии таргета 3.5.0.40 в Codesys 3.5 SP3 P5 .
Перепробовал кучу комбинаций, ни одна не заработала.

Проблему решил сносом всего Кодесиса и установкой по новой до версии Codesys 3.5 SP3 P2

Работает комбинация
Owen spc2xx-03.cs-web (3.5.0.40)
Modbus COM (3.4.0.0)
Modbus Master, COM Port (3.4.0.0)
Modbus Slave, COM Port (3.4.0.0)

lar
10.01.2014, 21:38
Решил пуститься во все тяжкие- доставил Patсh5
Все работает в той же комбинации!
Шайтан-машина

Александр Приходько
11.01.2014, 22:41
Потратил полдня, но так и не смог прошить СПК207WEB на версию 3.302, поэтому решил искать выход с подключением Modbus в Codesys для версии таргета 3.5.0.40.
Рекомендация о версиях таргетов Modbus ниже чем версия устройства не прокатывает для версии таргета 3.5.0.40 в Codesys 3.5 SP3 P5 .
Перепробовал кучу комбинаций, ни одна не заработала.

Проблему решил сносом всего Кодесиса и установкой по новой до версии Codesys 3.5 SP3 P2

Работает комбинация
Owen spc2xx-03.cs-web (3.5.0.40)
Modbus COM (3.4.0.0)
Modbus Master, COM Port (3.4.0.0)
Modbus Slave, COM Port (3.4.0.0)


Решил пуститься во все тяжкие- доставил Patсh5
Все работает в той же комбинации!
Шайтан-машина

Думаю что просто вы в новом проекте все сделали по порядку, как надо, и он у Вас заработал.
Если честно, сомневаюсь, что проблема именно в более старших версиях девайсов.

Можем поставить эксперимент, выкладывайте проект, мы потестим у себя.

kholonkin
15.01.2014, 22:14
..........
Шайтан-машина
Точно! Воистину так!

kao
06.02.2014, 11:15
Помню, в видеопримерах (CoDeSys v2.3) по подключению устройств по протоколу Modbus, давались рекомендации устанавливать цикл опроса регистров 100 мс - для дискретных модулей ввода / вывода, 500 мс - для аналоговых. Как понимаю, для версии CoDeSys 3.5 установки аналогичны? В какое значение рекомендуется устанавливать "таймаут ответа" устройства Modbus, оставлять по умолчанию 1000 мс?

Мурат Ахриев
07.02.2014, 09:43
В случае если у вас обмен идет корректно, оставляйте значение по умолчанию.
Если возникают проблемы связи, таймаут ответа нужно высчитывать опытным путем, чем меньше скорость обмена AND больше количество считываемых данных, тем больше нужно выставлять таймаут ответа.

Drahtor
27.02.2014, 11:59
Опять сюда, опять с проблемой...
Подключил к СПК-207 ТРМ210. С чтением данных проблем нет, все читается. Проблема с записью. Согласно инструкции на ТРМ210 уставку прибора в Float32 только считывать. Для записи есть параметры нижней и верхней границы уставки в формате Signed INT. Код функции 0х10. Пытаюсь записывать функцией "16", прибор сразу отваливается от сети. В дебрях этого форума нарыл, что это из-за разности количества стоп-битов: в СПК-1, в ТРМ-2. В ТРМе кол-во стоп-бит не меняется ни с панели, ни через конфигуратор. Меняю стоп-бит в СПК и остальных слейвах на 2 -связь есть, записи нет. Пытаюсь писать в один регистр функцией 06 - результата нет.
Поддерживает ли СПК функцию записи 10?. Ну и извечный вопрос: что делать?

Мурат Ахриев
27.02.2014, 14:14
В руководстве к ТРМ код функции указан в шестнадцатиричном формате "0х10", в CODESYS используется десятичный формат записи т.е. "16" функция.
Попробуйте записать параметр в 0x0002 регистр "16" функцией.

Drahtor
27.02.2014, 15:32
В руководстве к ТРМ код функции указан в шестнадцатиричном формате "0х10", в CODESYS используется десятичный формат записи т.е. "16" функция.
Попробуйте записать параметр в 0x0002 регистр "16" функцией.
Хм, получилось, только для того чтобы ввести 40 надо вводить 400 (INT).

Мурат Ахриев
27.02.2014, 16:19
Для передачи уставки с дробной частью используеться масштабирование, так как передавать по modbus можно только word.
На стороне ТРМ уставка, переданная по modbus, делиться на 10,100... в зависимости от установленного параметра "положение десятичной точки" в самом ТРМ.

kao
04.03.2014, 06:41
Добрый день, у меня всё никак не получается опросить модуль МВ110-8АС, - возникает ошибка шины. С другими модулями проблем нет. В чём может быть причина?

Мурат Ахриев
04.03.2014, 10:59
Установите скорость 9600, убедитесь в том, что в МВ110-8АС четность установлена как у вас в проекте - EVEN.
Подвяжите переменную в настройках Modbus slave во вкладке "соотнесение входов/выходов".

kao
04.03.2014, 11:57
Установите скорость 9600, убедитесь в том, что в МВ110-8АС четность установлена как у вас в проекте - EVEN.
Подвяжите переменную в настройках Modbus slave во вкладке "соотнесение входов/выходов". Сделал, проверил, не помогло.

Мурат Ахриев
04.03.2014, 12:13
Можете прислать скриншот параметров последовательного интерфейса МВ110-8АС? (Конфигуратор М110)

kao
04.03.2014, 12:49
Да, конечно.

arlyn
04.03.2014, 14:39
Ранее на форуме сообщили о спк207 такое


На старой версии железа SPK2xx имеются проблемы с внутренним резистором RS485 шины, в новой версии SPK2xx.SOM, с обновленным железом, данная проблема решена.


Постараюсь немного конкретизировать.
Я не принимал участие в разработке СПК207, но как я выяснил, у СПК есть 2 разновидности плат.
Посмотреть модификацию платы можно сняв верхнюю крышку. Она указана на верхней плате и имеет название PLC...C01 или PLC...C02 (примерно так, точное название уточню в понедельник).

Если у Вас плата С01, то это однозначно проблема в аппаратной платформе.
Если у Вас плата C02, то там аппаратная проблема устранена и скорее всего проблема именно в ПО.

Уточню сразу, в СПК1хх схемотехника другая, там подобных проблем не было и нет.

Завтра я буду заниматься решением данной проблемы, думаю к концу недели дам точный ответ где именно проблема.
Пока прошу дать ответ какой модификации у Вас плата.

Мурат Ахриев
05.03.2014, 10:47
Какая версия прошивки у вас установлена в СПК?(Посмотреть можно в конфигураторе на самой панели)

Wanted
30.03.2014, 21:18
Добрый день! Впервые сталкиваюсь с СПК и Codesys 3.5, ранее работал только с 2.3. Пытаюсь для начала связать СПК207 (прошивка 3.302, таргет 3.5.3.40) и мв110-16дн. Настроил сетевые параметры блока и сконфигурировал Com порт 2 СПК на RS485. Установил Codesys 3.5 sp3 patch 5, архив репозитория, таргеты и доп. библиотеки. Добавляю Modbus COM 3.4.0.0, Modbus Master 3.5.3.50 (только такая версия имеется даже при поставленной галочке "показывать устаревшие версии") и Modbus Slave 3.5.3.0. Далее по инструкции и получаю ошибку шины.. Несколько вопросов:
1) Если это из-за версии Modbus Master, которая новее таргета, где взять более старую? Если нет, какие ещё могут быть причины?
2) Есть овеновские библиотеки для работы с блоками расширения. Как ими пользоваться?

P.S.: 1 вопрос не актуален, сделал не по инструкции и получилось. 2 вопрос в силе.

Мурат Ахриев
31.03.2014, 11:09
Набор всех библиотек ОВЕН http://www.owen.ru/forum/attachment.php?attachmentid=12015&d=1392939318
Библиотека работы с модулями - ModulsOwenLib.
Добавляете ФБ ComConn из ModulsOwenLib(открывает порт).
Далее связываете ComConn с ФБ нужного вам модуля из ModulsOwenLib.

Wanted
31.03.2014, 11:39
Спасибо большое! Библиотеки уже ранее скачал. Ещё глупый вопрос, а как связать ComConn и ФБ нужного модуля? Просто через идентификатор порта?

Мурат Ахриев
31.03.2014, 12:06
Да, он называется Handle.
Дополнение, одновременно должен работать только один ФБ модуля, т.е. нужно следить за выходом done модуля и только поле того как выход будет true запускать следующий.

S.A.D.
12.05.2014, 12:02
хотел предложить начальству попробовать сей девайс на каком нить из объектов, да почитав эту тему стал сомневаться... Ощущение что продукт ещё ох какой сырой.

Александр Приходько
12.05.2014, 18:53
хотел предложить начальству попробовать сей девайс на каком нить из объектов, да почитав эту тему стал сомневаться... Ощущение что продукт ещё ох какой сырой.
Нет, продукт не сырой. А вполне нормальный. Через пару недель состоится релиз новой прошивки с кучей новых фишек.
Я бы сказал вопросы возникают при знакомстве с новой версией среды CODESYS 3,5.
Если сомневаетесь, возьмите прибор на тестирование.

kao
23.05.2014, 15:39
Здравствуйте.
Пишу вам письмо с последней надеждой, что программируемая панель СПК207 "всё-таки работает" и её можно оставить на производстве. После долгого поиска оптимальных настроек проекта, были закрыты глаза на медленную визуализацию панели СПК207 и проблемы опроса модуля МВ110-8АС (для панели со старой платой PLC45C01). В марте этого года была приобретена ещё одна панель СПК207 (она уже опрашивала модуль МВ110-8АС) - оставалась реализовать проект.
Cитуация следующая: ежедневно возникают проблемы с отваливанием RS-485. Конфигурация железа - контроллер СПК207, частотник Delta VFD-C2000, модули МВ(У)110-16ДН/16Р/8А. Проблема возникает с обоими панелями (прошивка 3302). Заметил, что шина начинает отваливается после часа работы, во время нажатия виртуальных кнопок управления. Частотник посадил на один порт, три модуля на другой, отвалились два модуля дискретных входов/выходов; частотник и модуль МВ110-8А продолжали опрашиваться.
Есть маленькая надежда, что Вы оперативно чем-то поможете, просмотрев архив проекта. В противном случае мы для себя решим что линейка СПК207 "ни на что ни годна".
Почему пропала связь только с двумя модулями, может у них превышен таймаут? Попробую увеличить таймаут ответа, понизить скорость передачи и убрать "лишние" опрашиваемые регистры МВ110-8А. Что ещё можно попробовать?

k-rts
27.05.2014, 00:52
Была аналогичная проблема, устранили с помощью перезапуска ком порта, при обрыве связи. В итоге 2 недели контроллер работает без выключения. Порт отваливается и автоматически подключаеться.

Александр Приходько
28.05.2014, 00:06
Здравствуйте.
Пишу вам письмо с последней надеждой, что программируемая панель СПК207 "всё-таки работает" и её можно оставить на производстве. После долгого поиска оптимальных настроек проекта, были закрыты глаза на медленную визуализацию панели СПК207 и проблемы опроса модуля МВ110-8АС (для панели со старой платой PLC45C01). В марте этого года была приобретена ещё одна панель СПК207 (она уже опрашивала модуль МВ110-8АС) - оставалась реализовать проект.
Cитуация следующая: ежедневно возникают проблемы с отваливанием RS-485. Конфигурация железа - контроллер СПК207, частотник Delta VFD-C2000, модули МВ(У)110-16ДН/16Р/8А. Проблема возникает с обоими панелями (прошивка 3302). Заметил, что шина начинает отваливается после часа работы, во время нажатия виртуальных кнопок управления. Частотник посадил на один порт, три модуля на другой, отвалились два модуля дискретных входов/выходов; частотник и модуль МВ110-8А продолжали опрашиваться.
Есть маленькая надежда, что Вы оперативно чем-то поможете, просмотрев архив проекта. В противном случае мы для себя решим что линейка СПК207 "ни на что ни годна".
Почему пропала связь только с двумя модулями, может у них превышен таймаут? Попробую увеличить таймаут ответа, понизить скорость передачи и убрать "лишние" опрашиваемые регистры МВ110-8А. Что ещё можно попробовать?
kao, к сожалнию через форум не всегда можно решить вопросы оперативно. Самый оперативный способ - звонок в техническую поддержку.
Если Ваш вопрос еще актуален, то почитайте, что я писал тут:
http://www.owen.ru/forum/showthread.php?t=16792&p=138650&viewfull=1#post138650

К сожалению это огромная недоработка компании 3S. Но они обещали в будущем ее доделать. Будет дополнительная опрция в настройках, с помощью нее связь будет самовосстанавливаться.

Сейчас если по какой либо причине модуль некоторое кол-во времени не отвечает, то CODESYS его как бы блокирует, чтобы тот не мешал обмену.
Поэтому если на модуле возникает ошибка, то его надо пересбрасывать.

kao
28.05.2014, 18:27
Вопрос до сих пор актуален. Немного отредактировал свой проект, - понизил скорость опроса до 9600, повысил таймаут до 2 с, - проблема не исчезла. Выяснил, что контроллер продолжает опрос того модуля, у которого больше всего регистров. Например: первоначально конфигурация была такая, - МВ110-16ДН (1 слово), МВ110-16Р (1 слово), МВ110-8А (48 слов), - 16ДН и 16Р отваливались, 8А опрашивался; текущая конфигурация МВ110-16ДН (1 слово), МВ110-16Р (3 слова), МВ110-8А (2 слова), - 16ДН и 8А отвалились, 16Р опрашивается.
В программе предусмотрен пересброс модулей, но он не работает (см архив проекта).
И ещё два вопроса не данной темы: 1) новая прошивка СПК1хх ускорила визуализацию, когда выйдет подобная для СПК2хх?
2) будет ли дорабатываться конфигуратор CoDeSys 3 для протокола Owen?

k-rts
28.05.2014, 23:22
IF Mod_Master.xAllSlavesOk=FALSE THEN
BLL(ENABLE:= TRUE, TIMELOW:= T#1S, TIMEHIGH:= T#100MS, OUT=> );
ELSE
BLL(ENABLE:= FALSE, TIMELOW:= T#1S, TIMEHIGH:= T#100MS, OUT=> );
END_IF
(*Если нет связи, то перезапускаем мастер*)
Mod_Master.xResetComPort:=BLL.OUT;

Пользуйтесь!!! 3 недели уже работает и связь не пропадает. За 10 минут работы перезапуске мастер раз под 100.
Вставляете данный код в конце цикла 1 раз, достаточно на все модули.
Вместо Mod_Master - имя Вашего ком мастера.

k-rts
28.05.2014, 23:27
Только про такую команду я нигде на форуме не нашел, после 2х месяцев мучений с портами, перерыв весь кодесис, и нашел таки такое решение.

kukla100
01.06.2014, 05:37
В это ветке хоть отвечают..
имеется еще одна проблема...
http://www.owen.ru/forum/showthread.php?t=15690
Там скриншот в режиме эмуляции.....

вот фото что на контроллере выходит.....9785
т.е. то что отображалось хренописью при эмуляции, на контроллере просто не отображается.....
что делать?

С хренописью вопрос решился?

little_budda
07.01.2016, 02:37
IF Mod_Master.xAllSlavesOk=FALSE THEN
BLL(ENABLE:= TRUE, TIMELOW:= T#1S, TIMEHIGH:= T#100MS, OUT=> );
ELSE
BLL(ENABLE:= FALSE, TIMELOW:= T#1S, TIMEHIGH:= T#100MS, OUT=> );
END_IF
(*Если нет связи, то перезапускаем мастер*)
Mod_Master.xResetComPort:=BLL.OUT;

Пользуйтесь!!! 3 недели уже работает и связь не пропадает. За 10 минут работы перезапуске мастер раз под 100.
Вставляете данный код в конце цикла 1 раз, достаточно на все модули.
Вместо Mod_Master - имя Вашего ком мастера.

Пришел к аналогичному решению. Через отдельный POU анализирую xAllSlavesOk, и через xResetComPort с задержкой реинициализирую Modbus_Master_COM_Port. Только от проблем с линией (качество) это не спасает. Хотелось бы в ioDrvModbus увидеть счетчик ошибок что ли, или иной анализатор качества работы линии (можно и лучше по каждому ведомому), чтобы понять чего отваливается то. Иначе контроллер вместо обмена только и будет делать, что перегружать драйвер...

firetester
09.01.2016, 17:45
Здравия! Может, кто поможет.... Проект СПК207 с 2хМК110+МВ110+МУ110. Через 10-20 сек после старта отваливается МВ110 стабильно. При этом обмен временно прекращается (индикатор на панели) и после того как МВ110 отвалился, благополучно продолжается. Никто не сталкивался? Как бороться?

UPD: На 115200 они все время от времени, как оказалось, отваливаются. На этой скорости не работает стабильно ничего. На 19200 не отваливаются. Провод хороший, между модулями не менее 40 см. Чего это?

UPD2: Продолжил танцы с бубном. Если убрать МВ, то сеть работает стабильно. Значт, МВ сам...