Форум Zentec

Программное обеспечение => Вопросы по zWorkbench => Тема начата: eric от 25 января 2017, 00:22:43

Название: Не могу залить готовый код в контроллер
Отправлено: eric от 25 января 2017, 00:22:43
Заранее прошу прощения за возможно наиглупейший вопрос.
И все таки.... Поставил последнюю версию ZWB с сайта. Хочу залить программу
в контроллер. В ZWB меню "Инструменты" отсутствует. 
Похоже что нужно открывать проект через ZETFBD (где меню "инструменты" есть),
но там не открывается проект - говорит: "неправильно закодированное содержимое"
и это при том, что расширение я сменил на FBD. Расширение EXP вообще не видится.
Да и как я уже говорил в другом треде, собственно и в самом ZWB,  "коробочный" проект EX-N
открывается только через импорт и то как-то криво, с кучей ворнингов и
каких-то ошибок плагинов и проч.

Может конечно у меня руки кривые, или мозги после
всех праздников. "Но я разобраться хочу" (С)

Вроде банальнейшая процедура - залить готовый код в контроллер...
Но что-то то ли с документацией плоховато, то ли надо быть "в теме" со времен
появления Zentec для обладания "тайным знанием" :)

Выручайте новичка в Zentec. Не пинайте c порога ногами.

Название: Re: Не могу залить готовый код в контроллер
Отправлено: VoronovMaksim88 от 25 января 2017, 03:35:46
Я не поленился и записал вам видеоинструкцию ))
https://yadi.sk/i/K3VDW9MO3AkArm
Название: Re: Не могу залить готовый код в контроллер
Отправлено: mike от 25 января 2017, 07:43:12
Хе-хе.
Товарищ Воронов оказался проворнее техподдержки))

Что касается качества документации: делаем и систематизируем.
Каждый коллега может принять посильное участие в развитие проекта.

Всем новичкам крайне рекомендуется прочитать эту ветку:
http://zentec.ru/forum/index.php/board,20.0.html
В частности, там есть ответ на ваш вопрос:
http://zentec.ru/forum/index.php/topic,77.0.html

Крайне рекомендую почитать эту ветку:
http://zentec.ru/forum/index.php/board,10.0.html
Живые вопросы и ответы.
В этой части есть описание всего инструментария и что для чего предназначено.
Название: Re: Не могу залить готовый код в контроллер
Отправлено: VoronovMaksim88 от 25 января 2017, 08:23:23
Я буду ещё проворнее если удастся починить е-мэйл оповещение о новых сообщениях на форуме.
Название: Re: Не могу залить готовый код в контроллер
Отправлено: eric от 25 января 2017, 17:52:23
Вот спасибо! Все вроде теперь получается.
А можно я совсем обнаглею и спрошу еще:

-Где берут firmware для обновления и как узнать какая версия
новая, какая стоит сейчас, какие изменения и проч.?
-Существует какой-то список версий с датами выхода
и место откуда они скачиваются?
-Как теперь правильно нужно обновлять прошивку? А то
я тут прочел на форуме, что теперь появился какой-то ключ
защиты от копирования. Его где-то можно получить / узнать, или как? 
Название: Re: Не могу залить готовый код в контроллер
Отправлено: VoronovMaksim88 от 26 января 2017, 04:48:26
1. firmware для обновления встроен в ZWB. Если ядро контроллеров обновится об этом обычно сообщают в описании обновления версии. Но это крайне редко бывает.
2. Список версий опять же в разделе "начало работы", но по сути в ядре для нас как для пользователей мало чего интересного. Разработчики изредка его улучшают, оптимизируют и правят какие-то заковыристые баги, которые ещё могли остаться и спрятаться за несколько лет работы над ядром.
3. Обновлять прошивку можно двойным кликом на контроллере на карте сети. Там надо на вкладке "параметры" кликнуть "проверка связи" и увидите текущую версию ядра. Потом перейти на вкладку "обновление ядра" и там увидите надпись "доступная версия ядра". Если доступная новее текущей то жмём "старт".
4. Ключ нужен в том случае если вам попал контроллер с тестовой прошивкой, но по-хорошему он к вам попасть не должен. Если это вдруг случится, то ключ вам даст техподдержка, не беспокойтесь.
Название: Re: Не могу залить готовый код в контроллер
Отправлено: eric от 15 февраля 2017, 01:31:19
Цитата: VoronovMaksim88 от 26 января 2017, 04:48:26
4. Ключ нужен в том случае если вам попал контроллер с тестовой прошивкой, но по-хорошему он к вам попасть не должен. Если это вдруг случится, то ключ вам даст техподдержка, не беспокойтесь.

Не везет, так не везет:(
Мне попал контроллер именно с тестовой версией 1.8.
При запросе регистрации - ругается и ничего не делает.
Видимо новичку нужно обязательно на все грабли наступить.
Иначе не спортивно как-то будет :)

У кого этот золотой ключик-то просить?
Название: Re: Не могу залить готовый код в контроллер
Отправлено: VoronovMaksim88 от 15 февраля 2017, 04:26:56
mike владелец всех золотых ключей ))
Название: Re: Не могу залить готовый код в контроллер
Отправлено: mike от 15 февраля 2017, 08:57:08
Цитата: eric от 15 февраля 2017, 01:31:19
Цитата: VoronovMaksim88 от 26 января 2017, 04:48:26
4. Ключ нужен в том случае если вам попал контроллер с тестовой прошивкой, но по-хорошему он к вам попасть не должен. Если это вдруг случится, то ключ вам даст техподдержка, не беспокойтесь.

Не везет, так не везет:(
Мне попал контроллер именно с тестовой версией 1.8.
При запросе регистрации - ругается и ничего не делает.
Видимо новичку нужно обязательно на все грабли наступить.
Иначе не спортивно как-то будет :)

У кого этот золотой ключик-то просить?

Так быть не должно.
У кого вы приобретали ПЛК?
Вы не оставили номер своего мобильного при регистрации. Свяжитесь, пожалуйста с нами.
Спасибо.
Название: Re: Не могу залить готовый код в контроллер
Отправлено: eric от 15 февраля 2017, 19:13:12
Буду признателен, если еще подскажете куда этот ключ втыкать....
Спасибо.
Название: Re: Не могу залить готовый код в контроллер
Отправлено: mike от 15 февраля 2017, 19:22:16
Настройки-Обновление
Название: Re: Не могу залить готовый код в контроллер
Отправлено: eric от 16 февраля 2017, 12:13:18
Спасибо. Все получилось.
Скажите, а панельку принято вешать на COM1 и в режиме brige?
Как топологически правильно размещать контроллеры и панельки
в сети ModBus? Если в дальнейшем планируется иметь под сотню
контроллеров и соответственно столько же панелек к ним.
Ну чтоб потом было можно все это хозяйство  настраивать и диспетчеризировать.
Вопрос возник, поскольку порта два. Насколько они "прозрачны" непонятно.

Будет идеально если раскажете как правильно цеплять панельку в случаях:
- один контроллер, одна панелька
-много контроллеров, одна/две панельки
-много контроллеров, столько же панелек.   
Название: Re: Не могу залить готовый код в контроллер
Отправлено: serge197a от 16 февраля 2017, 12:41:34
о какой панельке речь?
Вообще в сети больше 32 устройств не получится по физическим причинам.
и то смотря по расстоянию. для увеличения нужно ставить повторители.
Название: Re: Не могу залить готовый код в контроллер
Отправлено: eric от 16 февраля 2017, 14:43:44
Цитата: serge197a от 16 февраля 2017, 12:41:34
о какой панельке речь?
Вообще в сети больше 32 устройств не получится по физическим причинам.
и то смотря по расстоянию. для увеличения нужно ставить повторители.

-Речь о панельках Z033.
-Откуда ограничение в 32 ноды?
-Контроллер в режиме бриджа разьве не может быть повторителем?
Название: Re: Не могу залить готовый код в контроллер
Отправлено: serge197a от 16 февраля 2017, 14:50:46
панель z033 может быть только слейвом.
т.к. в сети модбас может быть только 1 мастер, получается 1 панель- 1 контроллер.
что такое режим бридж я не знаю.
(не разу не слышал про такое)
Название: Re: Не могу залить готовый код в контроллер
Отправлено: eric от 16 февраля 2017, 17:26:31
В ZWB смотрим -> свойства контроллера -> режим моста -> установить режим моста

Один контроллер - одна панелька - в принципе устраивает.
Из Вашего поста не ясно - если один контроллер будет единственным мастером, а панелька слейвом,
то как тогда остальные контроллеры в эту сеть цеплять? По вашему тогда получается - никак?
Не понятно почему только 32 устройства? Где это ограничение?
Впрочем говорить об этом ограничении бессмысленно, если в сети может быть всего 2 устройства ;)
Название: Re: Не могу залить готовый код в контроллер
Отправлено: serge197a от 16 февраля 2017, 18:08:54
в сети может быть только 1 мастер.
панель z033 может только отвечать на его запросы.
Чтобы в сети было много контроллеров нужно использовать панель с возможностью быть мастером сети.
К примеру так:
каждый ПЛК соединен по одному порту со своей местной панелью.
В сеть контроллеры соединяются по второму порту, при этом мастером можно сделать
панель, ОРС сервер (скада) или контроллер.
Для расширения сети можно использовать к примеру Z450
(32 устройства- гальваническое ограничение технологии RS 485)
можно больше, но через повторители или Z450
Название: Re: Не могу залить готовый код в контроллер
Отправлено: mike от 16 февраля 2017, 19:10:52
Не успел))) Сергей все сказал правильно.
В сетях RS485 используется адресация от 1 до 247.
Количество контроллеров на линии может быть от 1 до 247.
Но.
1. сеть из 247 контроллеров будет страшенно тормозной.
2. + к этому будет очень капризной
3. + к этому "обычные" девайсы в нее не впихнуть.
по третьему пункту. Есть драйверы (микросхемы) 485 скажем, стандартные, а есть не стандартные.
Последние крайне редки на рынке, но могут отдать в сеть 485 большой ток.
Так вот, если вся сеть построена с использованием спец драйверов, то она (теоретически) сможет "прокачать" 247 девайсов на линии.
Но правильный вопрос "а нафига?" ставит все на свои места.
Ибо, как я говорил: тормоза, капризы линии и использование только специализированных драйверов в линейных устройствах.

Поэтому принято использовать от 1 до 32 адресов в одной линии.
Название: Re: Не могу залить готовый код в контроллер
Отправлено: mike от 16 февраля 2017, 19:17:12
Что касается как подключать слейвы.
В прикреплении "классическая" схема. Все контроллеры висят на общей линии своими COM0
В качестве рабочей станции может выступать N450EV / Компьютер, SCADA. Любой мастер.
Название: Re: Не могу залить готовый код в контроллер
Отправлено: mike от 16 февраля 2017, 19:32:45
Структура посложнее.
У одного слейва есть подчиненная подсеть.
В качестве подчиненных подсети могут быть контроллеры, двигатели с ModBUSом, панели.

Например, вы используете контроллер M120 и управляете 2я двигателями EBM по модбасу.
Два двигателя у вас встают в подчиненную сеть контроллера.
Вы все собрали, все здорово, но вот неудача:
Движки то надо сконфигурировать.
Вы идете и разрываете связь от контроллера до двигателей, подключаете адаптер 485 и запускаете программу настройки двигателей на ПК. Нашли, насторили, потом восстанавливаете соединение с M120.

Второй пример.
M120 имеет в качестве подсети еще 3 M120 в качестве модулей расширения. Внутришкафная сеть собрана.
А вам надо запрограммировать 3 контроллера. Или еще лучше - отладить. Что делать? Рвать сеть?
А вот и нет. Вы выставляете на первом контроллере (отмечен красным) режим моста и работаете с подчиненной сетью так, как будто бы красного контроллера и нет в помине.
Название: Re: Не могу залить готовый код в контроллер
Отправлено: mike от 16 февраля 2017, 19:39:43
Что касается загрузки большого кол-ва контроллеров.
Есть свойства порта Рабочей станции (то есть ПК, с которого идет программирование) "Загрузить программы"
В этом случае автоматически будет загружена вся сеть, подключенная к данному порту рабочей станции.
Исключение составляют подсети - их придется загружать в полуавтоматическом режиме. Ограничение связано с критически малым объемом памяти исполняющего процессора - всего 64кБ из которых половина - ваши программы.
Название: Re: Не могу залить готовый код в контроллер
Отправлено: eric от 17 февраля 2017, 01:15:34
Спасибо Михаил и Сергей.
Теперь все более менее становится на свои места.
Но все же  если предположить, что в сети есть 96 контроллеров Z400
Следуя вашему примеру:
Делим их на три группы (по 32). COM0 первого контроллера каждой группы
подключаем к  единственному  мастеру (компьютеру), а COM1 к оставшемуся 31 контроллеру этой группы (по COM0 на каждом).
Когда нам нужно администрировать первую группу - первый контроллер первой группы включаем в режим моста
и администрируем всю группу. Аналогично поступаем с двумя другими группами. То есть централизованно управляем 31-им контроллером за раз. Или можно сразу первые три контроллера включить навсегда в режим моста (потеряв их функциональность и используя их просто как репитеры) Но при этом мы опять будем иметь тормозную сеть при нормальных электрических параметрах. Поэтому скорее первый вариант предпочтительнее.

Вопрос - будет оно вообще так работать?

Второй и не менее важный вопрос, который так и остался в стороне:
При таком построении сети, возможно ли COM1 каждого из 93-х оставшихся  контроллеров
подключить к своей панельке Z033 для локального управления каждым контроллером по отдельности?

Чувствую напрашивается ответ - НЕТ, но все же......

Собственно весь этот ворох вопросов родился из за наличия 2-х COM портов на контроллере.
Не очень понятно зачем их два, при таких ограничениях. В чем была изначально идея двух портов на Z400?

Моя идея использовать ваши контроллеры в общем схожая с упралением 93 фанкойлами в 93-х комнатах с централизованным контролем и наличием  локальных панелек, для индивидуальной подстройки комфорта в каждой отдельной комнате. Как-то так.








Название: Re: Не могу залить готовый код в контроллер
Отправлено: VoronovMaksim88 от 17 февраля 2017, 04:04:45
Если у вас так много контроллеров, то бейте их в группы по 32 устройства.
В каждой группе соединяем сом0.
Каждую группу вешайте на свой порт ПК, сколько групп столько понадобится и портов.
А на сом1 каждого ПЛК вешаем панель 033 в качестве слэйва.
Всё просто, всё надёжно всё красиво.

2 сом порта это прекрасно!
По одному загружаем и отлаживаем по другому вешаем слэйвы: модули расширения, панели, частотники, датчики.
Название: Re: Не могу залить готовый код в контроллер
Отправлено: mike от 17 февраля 2017, 07:16:54
Доброе утро, друзья!
Максим сказал все правильно.
Добавлю:
Мостовой режим нужен только для технических нужд. При сбросе питания он сбрасывается.
Что касается создания топологии сети.
Это практически религиозная сторона нашего с вами общего ремесла.
Но, в любом убеждении надо руководствоваться здравым смыслом.

Максим правильно объяснил вашу топологию. Вы меня невнимательно прочитали.
Давайте попробуем еще раз:
У контроллера 400 есть два порта. Каждый из этих портов может работать независимо друг от друга, в разных режимах, на разных скоростях.
Если оба порта работают в режиме подчиненного, то пространство регистров доступно по двум портам.
COM0 контроллера - главный порт. Его рекомендуется держать на "внешней" стороне.

Посмотрите проект для 400 контроллера для приточной установки (на сайте в готовых решениях).
Там реализован опрос панели по COM1 (то есть контроллер работает по этому порту в режиме мастера). А по порту COM0 он работает в режиме подчиненного и производит синхронизацию параметров между панелью и верхним уровнем.

Возвращаясь к здравому смыслу.
Если в сети 32 контроллера и скорость 9600 и у каждого по 20 переменных 2байта, то время отклика сети будет около 20-40 сек.
На мой взгляд это уже страшные тормоза (причём это специфика работы любого модбас устройства).
Что бы сеть откликалась моментально, в качестве шлюзов рекомендуется использовать N450EV.
Название: Re: Не могу залить готовый код в контроллер
Отправлено: serge197a от 17 февраля 2017, 10:11:50
Для работы с верхнем уровнем можно увеличить скорость к примеру до 115200 бит.
теоретически это ок 560 2-х байтных переменных в секунду.
Вы собираете данные с группы на коммуникационный контроллер,
а коммуникационный контроллер опрашиваете верхним уровнем.
не нужно ждать ответа от каждого из устройств в сети,
а к примеру все читается сразу в одном запросе с одного устройства.
получаете приемлемую скорость обмена данными без тормозов.
Название: Re: Не могу залить готовый код в контроллер
Отправлено: eric от 17 февраля 2017, 10:18:46
Друзья,

ОГРОМНОЕ СПАСИБО!
Вы сняли все мои сомнения.
Значит  все будет работать именно так как я задумал. Ура!
Теперь буду понемногу учиться программировать контроллер под свои нужды
и вперед к выполнению поставленной задачи. На самом деле задача -
- подключить около 200 контроллеров, но после ваших объяснений
думаю это не станет проблемой.  Должно замечательно все получиться.

Еще раз БОЛЬШУЩЕЕ спасибо.
Название: Re: Не могу залить готовый код в контроллер
Отправлено: mike от 17 февраля 2017, 10:36:08
Добро пожаловать в наш тесный уютный коллектив!
Название: Re: Не могу залить готовый код в контроллер
Отправлено: serov от 20 февраля 2017, 19:17:55
Добавлю свои 5 копеек. 2 порта это очень нужная штука для контроллера, которых иногда даже не хватает. Сейчас всё чаще появляются различные датчики и устройства на RS-485, но одни могут работать на одних настройках (скорость, четность и т.д.), а вторые на других, а ещё одни выступают мастером, а вторые слэейвом.  А ещё есть панель управления, которую лучше повесить на отдельный интерфейс.
Название: Re: Не могу залить готовый код в контроллер
Отправлено: Dmitriy от 29 июля 2017, 17:47:26
Добрый день.

Пишу вопрос в форум первый раз, поэтому не обессудьте.
При загрузке программы в контроллер Диспетчер выдал такие сообщение:
"29-07-2017   19:18:46.671   Ошибка при проверке устройства перед программированием - Устройство не содержит ядро интерпретатора
29-07-2017   19:18:47.000   Ошибка программирования контроллера Контроллер.
29-07-2017   19:18:47.500   Программирование устройства завершилось с ошибкой."

Пробовал несколько раз.
Вопрос - в чём может быть проблема.
Весной уже заливал контроллеры и проблем не возникло.

Кстати, Большое Спасибо, Воронову Максиму за видеоинструкцию, по ней всё и делал.
Название: Re: Не могу залить готовый код в контроллер
Отправлено: VoronovMaksim88 от 29 июля 2017, 19:07:29
В контроллере нет ядра. Пишите в техподдержку они пришлют вам специальный код для активации.