Modern KORAD

Модернизация ЛБП KORAD KA3005D

С помощью недорогой отладочной платы на процессоре ESP32 можно превратить обычный ЛБП КОРАД в современный лабораторник с цветным экраном, управлением через тачскрин и удаленным управлением через WiFi и USB.

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

В проекте использована отладочная плата WT32-SC01  в которой кроме процессора ESP32 имеется TFT дисплей с разрешением 320х480 точек, ёмкостной мультитач и встроенный WiFi. Такие платы продаются на алиэкспресс, Wildberries, Ozon и стоят около 2500 рублей.

Дополнительно понадобятся:
1) Внешняя WiFi антенна
2) Преобразователь DC-DC с выходным напряжением 5 вольт и током 1 ампер
3) Разъем IPX 50 Ом папа
4) Разъемы IDC-12 папа и мама
5) Разъемы IDC-8 папа и мама

Возможно использование двух разновидностей платы:

  1. WT32-SC01 – рекомендуется
  2. WT32-SC01 PLUS – на пару миллиметров больше по высоте.
Прошивка отладочной платы осуществляется с компьютера через USB кабель, никаких специальных знаний и оборудования не требуется. Все необходимые файлы для реализации проекта находятся в открытом доступе на сайте
Так же есть прямые ссылки для скачивания архива:
 

Как прошить плату (2 способа)

1. Если вы не собираетесь вносить изменения в программную часть проекта, вы можете использовать готовые скомпилированные файлы из папки Binary. Установите приложение Flash Download Tools с официальной страницы производителя: https://www.espressif.com/en/support/download/other-tools
Подключите USB кабель к компьютеру и отладочной плате, запустите приложение, выберите правильный COM-порт и четыре скомпилированных .bin файла. После завершения загрузки перезапустите отладочную плату кнопкой RESET или откл-вкл питание.
2. Используйте Visual Studio Code + Platformio. Откройте проект из папки VSCode. Скомпилируйте и загрузите проект в плату.
 

Как это работает

Данный проект подходит для всех моделей ЛБП КОРАД, как имеющих программный интерфейс KA3005P, так и моделей без программного интерфейса KA3006D. С самыми распространенными моделями KA3006D очень интересная ситуация, так как по какой-то причине часть блоков с индексом “D” имеют прошивку от блоков с индексом “P” и имеют программный интерфейс (могут управляться через UART).

Давайте далее называть такие блоки KORAD3005DP. Внутри на основной плате имеется разъем J9 для управления по UART – этим и можно воспользоваться. Отличить такие блоки очень просто, у них разные звуковые сигналы. Посмотрите короткое видео и вы услышите разницу. Youtube video

Схема подключения

Все схемы можно найти в папке Schematics.

  • J4 (основная плата korad) соединение с плато индикаторов
  • J9 (основная плата korad) соединение с интерфейсной платой

Разъем J4 основной платы в оригинале подключен к дисплейной плате с 7-сегментными индикаторами. На этом разъёме присутствует напряжение 12 вольт для питания дисплейной платы.
Питание отладочной платы 5 вольт вырабатывается преобразователем DC-DC 12->5V/1A, который питается 12 вольтами от основной платы блока питания.
Сигналы с разъёма J4 подаются на отладочную плату, для отображения информации на экране. Таким образом отладочная плата выполняет функцию дисплея.
Сигналы с разъема J9 служат для управления блоком КОРАД с помощью тачскрина, а также для удаленного управления через WiFi или USB.  В моделях без программного интерфейса этот разъем может присутствовать, но не работать. Кроме этого, в отладочной плате реализован веб-сервер для управления блоком через веб-интерфейс. А также реализован интерфейс Modbus TCP/RTU для удаленного управления с помощью программы DPSmaster.

на схеме:
DB0 – синхроимпульс светодиодов M1,M2,M3,M4,OFF/ON,CV,CC,OCP,OVP
DB1 – синхроимпульс старшего разряда цифр

DB4 – синхроимпульс младшего разряда цифр
DATA – данные
CLK – синхроимпульсы данных

LS1 – встроенная пищалка, к которой подключаем свой транзистор (n-p-n, 25V, 0.6A), если хотим слышать кроме встроенного звука ещё и звук от отладочной платы.

Во время экспериментов запитывать отладочную плату можно от USB разъема. В окончательном варианте желательно отказаться от питания от USB, подключив только три провода к внешнему USB разъему.

ВАЖНО !!!

Не соединяйте вместе корпус (шасси) блока питания КОРАД и минусовой провод отладочной платы !!!  

При установке внешней Wi-Fi антенны обеспечивайте  изоляцию между шасси прибора и разъемом антенны !!!

Программирование (при желании)

Вы можете изменить пользовательский интерфейс с помощью SquareLine Studio. SquareLine Studio это замечательный продукт. Но если вы не планируете менять пользовательский интерфейс, вы можете обойтись без SquareLine Studio. Всё что вам нужно – этоVisual Studio Code и фреймворк Platformio.

Проект пользовательского интерфейса находится в папке SquareLine. Измените File->Project Settings, FILE EXPORT, Project Export Root и UI File Export Path в соответствии с папками вашего проекта.

Краткое описание основных экранов

Желтым цветом выделены кликабельные области. На первом экране можно переключаться между (W) ватты и (R) сопротивление.

Первый экран
Второй экран
Третий экран

На экране осциллографа можно менять режим последовательно: Только напряжение -> Только ток -> Ток впереди, напряжение сзади -> Напряжение впереди, ток сзади.

Экран настроек (Settings)

  • Wi-Fi. Включение и выключение. Если включено переход в экран подключения к роутеру.
  • Energy auto reset. Если включено обнуление счетчиков энергии и времени каждый раз при включении выхода.
  • Programmable KA3005P/DP. Если включено активен программный интерфейс.
  • Block when output is ON. Если выключено управление с тачскрина доступно когда выход включен .
  • Exterior. Переход на экран настройки внешнего вида.
  • Screensaver. Если включено яркость экрана снижается после заданных минут бездействия.
  • Beeper. Громкость звукового сигнала.

Настройка внешнего вида (Exterior)

В левой части экрана вы можете настроить цвета для разных режимов работы: CC, CV и т.д.
Справа сверху – выбор шрифта для чисел. Доступно три шрифта Segment, Electro, Roboro.
Background – яркость заднего фона.
Backlight – яркость подсветки.
Default – возврат к заводским настройкам.

Экран отладки (Debug)

  • Shift смещение цифр, зависит к какому разряду относится синхроимпульс DB.
  • Before/After edge. Данные до или после синхроимпульса DB.
  • Revers. Последовательность данных 1234 или 4321.
  • Prescaler. Делитель частоты обновления 7-сегментных индикаторв. KA3005D обновляет 7-сегментные индикаторы 200 раз в секунду, поэтому нужен делитель 10…20. Для KA3005DP и KA3005P нужен делитель 2…5.

WEB интерфейс

Когда WiFi включен, в адресной строке браузера введите локальный IP адрес КОРАДа. Можно использовать компьютер, смартфон или планшет, подключенные к локальной сети.

DPSmaster - Приложение для управления ЛБП KORAD3005 с компьютера (Windows)

WiFi: В приложении DPSmaster выберите “TCP” и введите локальный IP адрес KORADа.
USB: В приложении DPSmaster выберите правильный COM-порт. Baud rate 115200, slave address 1.

Официальная страница для скачивания DPSmaster : https://profimaxblog.ru/dpsmaster/

Полный видеообзор DPSmaster: https://youtu.be/1nZQ2FA08Fg           https://www.youtube.com/watch?v=1nZQ2FA08Fg&t=3s

Расшифровка протокола Modbus RTU/TCP: https://profimaxblog.ru/modbus-communication-protocol-2/

Вариант отладочной платы WT32-SC01 PLUS

WT32-SC01 PLUS уже содержит продвинутый процессор ESP32-S3 с параллельным RGB интерфейсом экрана. Однако этот вариант отладочной платы я бы не рекомендовал из-за не совсем подходящих габаритов. Кроме этого для связи через Modbus понадобиться дополнительный конвертер UART-USB, так как встроенный USB этой платы работает только для прошивки.

Устранение проблем компиляции

Добавьте строчку

 #include <math.h>

в автоматически генерируемый файл ui_DebugScreen.c

Как делать отладку проекта

Делать отладку можно через USB (виртуальный ком-порт на скорости 115200). В файле platformio.ini раскомментируйте и задайте нужный уровень. Уточняйте в ESP-IDF Logging library.

-DCORE_DEBUG_LEVEL=4  (означает #define CORE_DEBUG_LEVEL=4)

В файле korad.h раскомментируйте строчку

//#define DEBUG_WITH_OSCILL

чтобы отлаживать с помощью внешнего осциллографа. В этом случае пины UART Rx и TX используются как выходы для мониторинга задержки после синхроимпульса десятичного разряда.

В файле modbus.cpp раскомментируйте нужную строчку, если вы хотите видеть сообщения Modbus.

//#define MB_DEBUG 

//#define KORAD_DEBUG_TX 

//#define KORAD_DEBUG_RX

Полезные инструменты

Фото Видео галерея

Обсуждение проекта на форуме

Домашняя Forums Modern KORAD

Viewing 10 reply threads
  • Author
    Posts
    • #4537
      profi-max
      Keymaster

      Update your KORAD using the LCD display and the touch panel.

      The project is based on the low cost ESP32 development board. The board WT32-SC01 with 3.5 inch 320×480 capacitive multi-touch LCD Screen and built-in Wifi. Also you need an external wifi antenna and a DC-DC converter (12v -> 5v, 1A).

    • #4773
      hudy85
      Participant

      not working for me, cant flash board (null null null null)

    • #4774
      hudy85
      Participant

      sorry – “16 bin file overlap”

    • #4779
      glitchgear
      Participant

      Can’t get WT32-SC01 PLUS flash to work no matter what I try. Screen just remains blank

    • #4780
      glitchgear
      Participant

      src/ui_events.c:157:55: error: ‘verified_data_t’ {aka ‘struct <anonymous>’} has no member named ‘iPointPosSet’; did you mean ‘iPointPos’?

    • #4781
      glitchgear
      Participant

      Tried flashing with method one flash tool, blank screen
      tried with vscode and just get errors
      so confusfed need to get my power supply working again please help

    • #4783
      glitchgear
      Participant

      Got it working, stupid me didn’t have “0x00” and had 0x1000

    • #4784
      glitchgear
      Participant

      So far so good on Korad CA3010P, just can only turn Amps up to 5 using touch panel,

    • #4785
      glitchgear
      Participant

      DPSMaster not working over wifi for WT32-SC01 PLUS?

    • #4786
      glitchgear
      Participant

      using IP address in browser works, but dpsmaster not working. hmmm

    • #4891
      profi-max
      Keymaster

      Source code on Git Hub. Registration may be required to access content on GitHub.
      So Here it is direct links:
      https://drive.google.com/file/d/1VVUcI7C9IsPRE-6xIvnQpOMYt26HrLhk/view?usp=drive_link
      https://profimaxblog.ru/download/4864/

Viewing 10 reply threads
  • You must be logged in to reply to this topic.