Advantech:Контроллеры и УСПД

# Что такое PAC в понятии Advantech? Для чего предназначены?

Классический PLC - устройство с закрытой ОС, предназначенное для работы с I/O в режиме жесткого реального времени.

PAC "по-адвантековски" - устройство с открытой (доступной пользователю) ОС, предназначенное для работы с I/O в режиме более-менее жесткого реального времени ПЛЮС исполнения задач, требующих программирования на языках высокого уровня (работа с внешними БД, формирование отчетов "на месте", распознавание изображений и т.п.)

В данном случае под "более-менее жестким реальным временем" имеются ввиду минимальные циклы порядка 5...10 мс. Достигается при помощи softlogic-движков, работающих на уровне ядра. При этом, например, CoDeSys имеет возможность "отжать" одно из ядер многоядерного ЦПУ исключительно под себя.

# Какие основные линейки продукции?

* ADAM-3600 = Cortex A8 + Linux RT + KW (на 01.11.2017)
* ADAM-5510 = 80188 + ROM-DOS (опционально +KW) - снимается с производства с 1 января 2016
* ADAM-5550 = Geode + CE5 (опционально +KW) - снят с производства
* ADAM-5560 = Atom Z510 + CE5 или XPE (опционально +KW или +Codesys3.5 или +WebAccess)
* ADAM-5630 = Cortex A8 + Linux - на 01.11.2017 готов инженерный образец
* APAX-5520/5620 = Marvell PXA520 + CE5 (опционально +KW) - предположительно снимается с производства с 1 января 2016
* APAX-5570/5571 = Celeron M + CE5 (опционально +KW) - снят с производства
* APAX-6572 = Atom D510 + CE5 или XPE (опционально +KW)
* APAX-5580 = Celeron 2980 или Core Gen4 + WES7 или Linux (опционально +Codesys)

# Чем программировать?

Для "голой" ОС:

Версии с DOS - Borland C for DOS Версии с CE5 - MS Visual Studio for Embedded Версии с XPE, WES7 - MS Visual Studio Версии с Linux - gcc toolchain. Вроде, есть подтверждения успешного использования Eclipse. API должны быть доступны на http://www.advantech.ru в разделе загрузок на странице соответствующего изделия. Если не доступны - пишите на саппорт, дам отдельно.

Для softlogic:

KW = среда исполнения ProConOs (вделывается в образ ОС на заводе, лицензируется ключевым файлом) + среда разработки KW Multiprog (доступен 30-дневный триал, потом лицензирование серийным номером). Примечание: компания KW Software Gmbh куплена компанией Phoenix Contact. В результате, с 1 января 2016 будет прекращена разработка новых изделий с движком KW. Новых версий софта не будет. То, что уже разработано - будет продаваться до конца жизненного цикла.

Codesys = движок (для винды - версия RTE) вделывается в образ на заводе, лицензируется ключевым файлом + среда разработки и аддон для компиляции бесплатны.

# Что такое ADAM-3600-C?

ADAM-3600-C представляет собой помесь RTU (=УСПД) и маленького PLC в одном флаконе. Местный I/O, два LAN, два RS-485, два miniPCIe под разную беспроводку. По два - потому что аплинк и даунлинк. Помимо - есть местный логгинг на SD, встроенный вебсервер на базе lighthttpd.

Со входами-выходами можно работать как напрямую (только gcc), так и через API TagLink (gcc, iRTU, KW).

TagLink - API, выполняющий отвязку данных от конкретного входа (местного или на даунлинке), именование, масштабирование. Конфигурируется через бесплатную TagLink Studio (ранее iRTU Studio).

iRTU Studio - умеет искать устройства, конфигурировать входящие и исходящие (Modbus и DNP3 сервера) теги, логгинг (начиная с FW1.1 и утилиты 1.1.1.53), конфигурировать модемные и WiFi-соединения.

KW - здесь используется софтлоджик-движок для языков IEC61131-3, работающий с бесплатной средой KW Multiprog Express.

# Как собираются модульные бекплейны для моделей APAX-55/56/65?

Сначала основа.

Основная шина для общения со стандартными модулями ввода-вывода - APAXBus. Электрически (OSI level 1) представляет собой Fast Ethernet (выше - проприетарная составляющая). Обеспечивает (по крайней мере, для APAX-5520) цикл обновления образа входов-выходов для максимального количества модулей в 1 мс. При построении образуется элементами APAX-5001, 5002. Контроллеры 5520/5620 используют только эти кусочки.

Варианты: APAX-5002 - двухместный проходной со вводом питания. (...)

# В чем отличие блоков питания APAX-5343 и APAX-5343E? Что для чего?

Всё просто.

1. APAX-5343 предназначен для питания контроллеров APAX-5570, 5580. Стыкуется напрямую к контроллеру, справа разъем "большой феникс". Есть доп.разъем на левой стенке, т.к. несколько 5343 можно собирать друг за другом.

2. APAX-5343E предназначен для питания реек, собранных на базе APAX-5001/5002. Справа разъем "маленький DB", левая стенка глухая.

Визуально. Правая сторона (...)

# Варианты ADAM-5560?

* ADAM-5560CE = SQF 1G SLC (-40…70) + CE5 MUI

* ADAM-5560KW = SQF 1G SLC + CE5 MUI + KW4

* ADAM-5560CDS = SQF 1G SLC + CE5 MUI + Codesys 3.5.6/3.5.7
Комментарий: наименование условное, правильный артикул - CDS-ADAM5560-#####

* ADAM-5560WA = SQF 4G SLC (0…70C) +WES2009 Eng + WebAccess 7.2.2 – отличается аппаратно отсутствием MRAM

* ADAM-5560KW – WA = ADAM-5560KW + WebAccess for CE

# Обновление прошивки ADAM-3600

Обновление прошивки ADAM-3600 может быть выполнено двумя вариантами.

## Обновление через веб-интерфейс

Для обновления необходима прошивка в виде BIN-файла (он не должен быть заархивирован). В веб-интерфейс можно попасть через утилиту или при помощи браузера (начиная с прошивок 2.1.0 зайти только через https; http закрыт). Обновление находится в меню Configuration / Image Update, там же можно посмотреть текущие версии компонентов прошивки.

## Обновление при помощи SD-карточки

Прошивки для этого варианта распространяются в виде ZIP-архива.
Для реализации этого варианта необходимо отформатировать SD-карточку в FAT16, размер кластера стандартный. Настоятельно рекомендуется сделать *полное* форматирование (не "быстрое"). Содержимое архива распаковывается на пустую карточку, она ставится в верхний слот (устройство рекомендуется иметь выключенным в этот момент). Если бутлоадер устройства обнаруживает ключевой файл - выполняется копирование системных файлов с SD-карточки во внутреннюю память устройства. **Данный процесс подтверждается двойными вспышками светодиода PROG** (при обычной загрузке светодиод не горит). Если процесс прошел успешно - на консоли появляется приглашение.

## Структура прошивки

На деле, BIN-файл представляет собой тот же переименованный ZIP; следовательно преобразовать файл из одного варианта в другой можно простым переименованием.

Следует обратить внимание на следующие файлы в этом архиве:

* Файл ADVUPDATE.TXT запускает процесс обновления прошивки при загрузке устройства. После использования он удаляется (это даёт возможность предотвратить повторное обновление с одного и того же носителя, вставленного в SD-слот). Внутри находится конфигурация этапов обновления.
* Файл ADVUP.TXT является "запасной копией" ADVUPDATE. Назначение: если необходимо удаленно выполнить процедуру сброса к заводскому состоянию и карточка с прошивкой уже стоит в слоте (например, после предыдущего обновления) - достаточно зайти на устройство через SSH и скопировать ADVUP.TXT в ADVUPDATE.TXT
* Файлы ADAM###MCU.BIN и ADAM###AIO.BIN являются прошивками измерительных компонентов (как набортных, так и дополнительных модулей). Если эти файлы присутствуют в архиве И при обновлении этот модуль физически установлен в системе - производится обновление прошивки компонента.

ВНИМАНИЕ! Если прошивка дополнительного модуля сильно отличается от прошивки основного устройства - возможны проблемы обмена из-за несовпадения адресов регистров!

# Восстановление прошивки ADAM-3600

Есть два варианта восстановления, выбираемые в зависимости от состояния устройства.

## Обновление прошивки

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

## Внутренняя microSD

Если бутлоадер не отрабатывается - остается один вариант восстановления. Фактически внутренняя память ADAM-3600 реализована в виде microSD карточки, слот находится внутри корпуса на основной плате устройства (он виден за вентрешеткой рядом со входами DI3 / DI4). Необходимо вскрыть корпус (6 винтов "под крест" на обратной стороне корпуса), снять фениксовские клеммники, аккуратно разъединить защелки, соединяющие половинки пластика. Карточку microSD снять, поставить во внешний ридер. Далее появляется возможность работать с диском напрямую. В частности, есть возможность заранее снять образ с этого диска и при необходимости его восстановить.