Редактор драйверов

Драйвер — программа на JavaScript, которая объясняет U-Logic, как «разговаривать» с конкретным устройством: какие у него есть команды, как их отправлять и как понимать ответы. Что такое драйвер и как из него получается управление устройством — на странице «Dynamic Driver».

Редактор драйверов — вкладка боковой панели U-Logic, в которой драйверы создают, правят и удаляют, не выходя из программы. Там же скачивается и загружается проект целиком: все потоки (рабочие листы программы) и все драйверы контроллера. Если драйвер нужен, а писать его самому не хочется, обратитесь к странице «Драйвер с помощью ИИ».

Как открыть редактор

  1. В U-Logic нажмите значок меню справа вверху и выберите «Вид» (1 на снимке).

  2. В подменю выберите «Редактор драйверов» (2).

../../_images/dd-menu.png

Меню U-Logic: 1 — «Вид», 2 — «Редактор драйверов»

Тот же пункт есть в списке вкладок боковой панели: нажмите стрелку ▾ справа от значков вкладок (1) и выберите «Редактор драйверов» (2).

../../_images/editor-open.png

Список вкладок боковой панели: 1 — стрелка ▾, 2 — пункт «Редактор драйверов»

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

Примечание

Боковая панель по умолчанию узкая, и нижний ряд кнопок в ней обрезается. Потяните за левый край панели и расширьте её, чтобы все кнопки встали в один ряд.

Что есть в окне редактора

Окно устроено сверху вниз. Номера на снимке совпадают с пунктами списка под ним.

../../_images/editor-panel.png

Редактор в режиме «Создать новый»: 1 — «Режим», 2 — «Имя файла», 3 — «Информация о драйвере», 4 — окно кода, 5 — строка «Статус:» и кнопка «Перейти»

  1. «Режим» — список из двух вариантов. «Загрузить из списка» — править драйвер, который уже есть; в этом режиме появляется список «Драйвер». «Создать новый» — написать новый драйвер. Сразу после открытия редактор показывает режим «Загрузить из списка».

  2. «Имя файла» — поле для имени нового драйвера; видно только в режиме «Создать новый». Правила имени — в разделе «Как добавить драйвер».

  3. «Информация о драйвере» — карточка с полями «Название», «Производитель», «Версия», «Описание». Редактор берёт их из описания в самом коде драйвера; если поле в коде не заполнено, в карточке стоит «-». Те же сведения вы увидите, выбирая драйвер в окне подключения.

  4. Окно кода — редактор кода с номерами строк, подсветкой JavaScript и автодополнением.

  5. Строка «Статус:» — результат проверки кода на лету, примерно через полсекунды после последнего нажатия клавиши. «Готов» — ошибок нет; «Найдены ошибки» и «Найдены предупреждения» показываются со счётчиками (красный — ошибки, оранжевый — предупреждения). Кнопка «Перейти» переводит курсор к первой ошибке.

Чтобы выбрать драйвер для правки, переключите «Режим» на «Загрузить из списка». Выбор драйвера в списке «Драйвер» сразу загружает его код в окно и заполняет карточку.

../../_images/editor-list.png

Режим «Загрузить из списка»: 1 — список «Драйвер» (выбран учебный драйвер), 2 — «Информация о драйвере» выбранного драйвера

Первый пункт списка — «– Выберите драйвер –»: пока он выбран, окно кода пустое.

Кнопки внизу окна

Под окном кода и строкой «Статус:» — ряд из пяти кнопок.

../../_images/editor-buttons.png

Кнопки редактора: 1 — «Сохранить», 2 — «Форматировать», 3 — «Удалить», 4 — «Скачать проект», 5 — «Загрузить проект»

  1. «Сохранить» (зелёная) записывает драйвер на контроллер. После сохранения появляется зелёное уведомление «Сохранено», список драйверов обновляется, а вкладка потоков помечается как изменённая, и кнопка «Развернуть» (она запускает правки программы в работу) становится активной. Нажмите её, чтобы узлы (блоки программы), которые уже работают, начали использовать новую версию: само по себе сохранение их не обновляет. Пока в коде есть синтаксические ошибки, кнопка недоступна.

  2. «Форматировать» приводит текст к аккуратному виду: убирает пробелы в конце строк и заменяет каждый знак табуляции двумя пробелами. Это не полноценный форматтер кода: он не расставляет отступы и не переносит строки. Заодно из кода могут пропасть пустые строки. Если они между блоками для вас важны, не нажимайте эту кнопку.

  3. «Удалить» (красная, справа) удаляет драйвер, выбранный в списке «Драйвер». Подтверждения нет: драйвер исчезает сразу, появляется уведомление «Драйвер удалён», окно кода очищается. Если в списке ничего не выбрано, редактор отвечает «Выберите драйвер для удаления».

  4. «Скачать проект» сохраняет на ваш компьютер один архив dynamic-driver-project.zip с потоками и драйверами контроллера. Если скачать не удалось, редактор покажет «Ошибка скачивания проекта» и причину.

  5. «Загрузить проект» (без рамки, как обычный текст-ссылка) открывает выбор архива на вашем компьютере. Загрузка начинается сразу после выбора файла, без вопроса и без слияния. После успеха редактор пишет «Проект успешно загружен, перезагрузите страницу» — обновите вкладку браузера с U-Logic. Если не получилось, будет сообщение «Ошибка загрузки» с причиной.

Предупреждение

«Загрузить проект» не добавляет драйверы и потоки к имеющимся, а заменяет весь проект: вкладки и драйверы, которых нет в архиве, пропадут. Прежде чем загружать архив, скачайте свой проект кнопкой «Скачать проект» и сохраните файл: если что-то пойдёт не так, вернёте проект, загрузив эту копию тем же способом. Пошаговый пример загрузки готовой программы — на странице «Программа «Демо-зал»: обзор». Чем проект отличается от flow.json и где загружается проект интерфейсов — на странице «Проекты: загрузить и скачать».

Как добавить драйвер

Зачем. Чтобы U-Logic начал работать с устройством, у которого ещё нет драйвера.

  1. Откройте редактор драйверов (раздел «Как открыть редактор»).

  2. В списке «Режим» выберите «Создать новый». В окне кода появится заготовка драйвера.

  3. В поле «Имя файла» введите имя драйвера. Допустимы буквы, цифры, дефис и подчёркивание; расширение к имени добавлять не нужно. Проверьте по списку «Загрузить из списка», что такого имени ещё нет: редактор не спрашивает подтверждения.

  4. Замените заготовку кодом своего драйвера. Как его написать — на странице «Как написать драйвер»; там же образец драйвера.

  5. Убедитесь, что в строке «Статус:» написано «Готов». Если там «Найдены ошибки», нажмите «Перейти» и исправьте код: иначе «Сохранить» не включится.

  6. Нажмите «Сохранить».

Что вы увидите. Уведомление «Сохранено», а драйвер появится в списке режима «Загрузить из списка». Чтобы им пользоваться, выберите его в окне подключения (раздел «Где драйвер виден»).

Как изменить драйвер

  1. Откройте редактор драйверов и в списке «Режим» выберите «Загрузить из списка».

  2. В списке «Драйвер» выберите нужный драйвер. Его код и сведения появятся в окне и в карточке «Информация о драйвере».

  3. Внесите изменения в код. Следите за строкой «Статус:».

  4. Нажмите «Сохранить» и дождитесь уведомления «Сохранено».

  5. Нажмите «Развернуть» в верхней части U-Logic, чтобы узлы, которые уже работают, начали использовать новую версию драйвера.

Что вы увидите. После шага 4 кнопка «Развернуть» стала активной; после шага 5 работающие узлы используют новую версию.

Совет

Перед крупной правкой нажмите «Скачать проект»: в редакторе нет отмены сохранения, прежний код можно вернуть только из копии.

Как удалить драйвер

  1. В режиме «Загрузить из списка» выберите драйвер в списке «Драйвер».

  2. Нажмите «Удалить».

Что вы увидите. Уведомление «Драйвер удалён», окно кода станет пустым, драйвер пропадёт из списка. Подтверждения нет: если сомневаетесь, сначала скачайте проект. Прежде чем удалять, убедитесь, что драйвер не выбран ни в одном подключении.

Где драйвер виден

Сохранённый драйвер появляется в списке «Драйвер» окна подключения device-connection (узел, который связывает драйвер с устройством). Развёртывание для этого не нужно: список обновляется сразу после «Сохранить». Но список загружается при открытии окна подключения: если окно уже было открыто, закройте его и откройте заново. Порядок такой:

  1. Откройте окно подключения и в списке «Драйвер» выберите свой драйвер (первый пункт — «– Выберите драйвер –»).

  2. Под списком появятся «Название», «Производитель», «Версия» и «Описание» — те же, что в карточке «Информация о драйвере» редактора. Если их нет или они не те, проверьте описание в коде драйвера.

Подробно об окне подключения, его полях и транспортах — на странице «Узлы Dynamic Driver».

Частые ошибки

Что происходит

Причина и что сделать

«Сохранить» недоступна

В коде есть синтаксическая ошибка. В строке «Статус:» написано «Найдены ошибки»: нажмите «Перейти» — курсор встанет на первую, исправьте и дождитесь «Готов». Если сохранение всё же дошло до проверки, редактор пишет «Синтаксические ошибки, сохранение отменено».

«Укажите имя драйвера»

Поле «Имя файла» пусто. Впишите имя.

«Имя драйвера может содержать только буквы, цифры, дефис и подчёркивание»

В имени есть пробел, точка или другой знак. Оставьте буквы, цифры, «-» и «_».

«Не нужно указывать расширение .js в имени драйвера»

В конце имени дописано расширение. Уберите его: редактор добавит всё сам.

«Выберите драйвер для удаления»

Кнопка «Удалить» берёт драйвер из списка «Драйвер» — выберите его в режиме «Загрузить из списка».

После «Сохранить» устройство работает по-старому

Узлы, которые уже работают, не знают о новой версии, пока вы не нажмёте «Развернуть».

Драйвера нет в окне подключения

Драйвер не сохранён: проверьте, что вы нажали «Сохранить» и увидели «Сохранено», а драйвер есть в списке режима «Загрузить из списка». Если сохранили, а окно подключения было открыто, закройте его и откройте заново: список драйверов загружается при открытии окна.

После «Загрузить проект» пропали вкладки или драйверы

Загрузка заменяет весь проект. Загрузите свою копию, скачанную перед этим кнопкой «Скачать проект».