Showing posts with label CERHost. Show all posts
Showing posts with label CERHost. Show all posts

October 10, 2019

Программная активация удаленного доступа

В новых ПЛК по умолчанию отключен удаленный доступ. Во имя безопасности, конечно же. И вот когда ты подключаешься удаленно через эр-ди-пи, ви-пи-эн и прочие тим-виверы, запускаешь CERHost, а на контроллере не активен Remote Display... На помощь приходит Beckhoff Device Manager.

Что делать, если не приходит?

Найти контроллер через System Manager, подключиться к ПЛК и залить в него хитрую программу, которая в свою очередь активирует удаленный доступ.


Автостарт через реестр


Реестре содержит раздел Launch90, в который можно записать имена программ для автостарта. Название ключа явно позаимствовано из Linux, но нам нужно активировать удаленный доступ, а за него на стороне ПЛК отвечает сервис CeRDisp.exe. Теперь всё готово, осталось подать материал в жерло FB_RegSetValue из TcUtilities.lib.

После добавления записи в реестр, необходимо перезагрузить ПЛК. Для этого воспользуемся функцией NT_Reboot из той же библиотеки. Результат:

PROGRAM MAIN
VAR
    Reboot: NT_Reboot;
    RegSetValue: FB_RegSetValue;

    newValue: STRING := 'CeRDisp.exe';
END_VAR
VAR CONSTANT
    HKLM_INIT_SUBKEY: STRING := 'init';
    REG_LAUNCH90_VALUE: STRING := 'Launch90';
END_VAR

(* @END_DECLARATION := '0' *)

RegSetValue(
    sNetId   := '',
    sSubKey  := HKLM_INIT_SUBKEY,
    sValName := REG_LAUNCH90_VALUE,
    eValType := REG_SZ,
    cbData   := LEN(newValue) + 1,
    pData    := ADR(newValue),
    bExecute := TRUE
);

IF NOT RegSetValue.bBUSY THEN
    Reboot( NETID := '', START := TRUE);
END_IF

END_PROGRAM


Что-то еще про автостарт приложений можно прочитать в Automatic start of CE applications. И автозапустить что-нибудь еще полезное.

October 4, 2018

Веб-конфигуратор для CX8090

Последнее время Бекхофф встраивает в свои контроллеры веб-интерфейс для начальной настройки ПЛК. Это хорошо, потому что через ADS-роутер можно кое-как выяснить IP и AmsNetId -адреса ПЛК, но для запуска FTP-сервера или сервиса удаленного доступа — этого уже мало. В умный по сути коплер CX8090 просто некуда воткнуть святую троицу монитор-клавиатура-мышь. Разъемы для них не предусмотрены и не поддерживаются. Надо изгаляться... надо было, так как теперь все это делается через веб-интерфейс. По крайней мере первый шаг, который, как известно, чего-то-там для человечества.

Находим контроллер через TC2 System Manager или роутер TwinCAT 3: иконка TC3 в системном лотке (traybar) → Router → Edit Routes → TwinCAT Static Routes. В колонке Address видим IP-адресс ПЛК. Открываем любимый браузер. Для разнообразия, и чтобы показать, что никакой разницы нет, я взял нелюбимый в народе Edge.

Вводим в адресную строку: IP-адресс-ПЛК/config. Логин по умолчанию: webguest, пароль: 1.



Есть на что посмотреть и с чем поработать. И сразу же, чтобы не забыть потом, включаем удаленный доступ для работы с ПЛК через CERHost. А дальше уже не проблема запустить FTP-сервер, "залить" русские шрифты и поправить настройки в реестре Windows CE.