Это старая версия документа.


Контроллер UPS Nano v3

Контроллер питания UPS «Nano» является вспомогательным устройством, работающем совместно с ПЛК на базе jroboplc. Основное назначение устройства - мониторить работу блока питания и в случае, если идет работа от батареи, информировать об этом ПЛК, чтобы тот корректно завершил свою работу, а по завершении работы ПЛК устройство также отключает батарею, переводя тем самым блок питания полностью в выключенное состояние.

Дополнительно устройство может:

  • измерять температуру
  • опрашивать один логический вход (сухой контакт)
  • управлять одним логическим выходом (реле)

Устройство контактирует с ПЛК посредством обмена данными по последовательной связи RS232 (9600, 8N1).

Со стороны ПЛК для работы с устройством необходимо использовать перефирийный модуль promauto.upsnano.

клеммы

ИмяТипОписание
Сторона 1
1 InpGND вход БП -
2 InpVDD вход БП + 12В
3 - - Не используется
4 LedCmn выход Общий выход для светодиодов
5 Led3 выход Выход светодиода PLC
6 Led2 выход Выход светодиода Bat
7,8 BatCtrl выход Реле батареи. Нормально-разомкнутые выходы. Включается между Bat+ блока питания и + аккумулятора
9,10 AuxCtrl выход Реле вспомогательное. Нормально-разомкнутые выходы. Управляется командой по последовательному порту
11,12 АсCtrl выход Реле питания БП. Нормально-замкнутые выходы. Включается в разрыв L питания БП
Сторона 2
13 RX rs-232
14 TX rs-232
15 GND rs-232
16 TrmGND выход Термодатчик
17 TrmDQ вход Термодатчик
18 TrmVDD выход Термодатчик
19,20 AuxInp вход Вспомогательный вход для сух/конт
21,22 BatLow вход Подключается к одноименным клеммам БП
23,24 AcOk вход Подключается к одноименным клеммам БП

подключение

протокол обмена

Параметры последовательного подключения: 9600, 8N1.

Запрос:

<ver> <BatTimeout>  <SerTimeout>  <резерв>   <Aux>  <Beep>      <crc32>
  0       1   2         3  4       5 6 7 8     9      10       11 12 13 14
  • BatTimeout - время отключения батареи при отсутствии опроса и AcOk=0 (сек)
  • SetTimeout - время определения отсутствия опроса (сек)
  • Aux - управления реле:
    • = 0 - выкл
    • = 1 - вкл
  • Beep
    • b5-b4 - Режим работы звукоизлучателя: 0-нормальный, 1-тихий, 2-без звука

Значения BatTimeout, SetTimeout сохраняются в EEPROM.

Ответ нормальный:

0 <IO_state> <T>    <crc32>
0     1      2  3   4 5 6 7
  • IO_state - состояние входов и выходов:
    • b0 - вход AcOk
    • b1 - вход BatLow
    • b2 - вход AuxInp
  • T - текущая измеренная температура

Порядок записи слова - сначала старший байт, затем младший.

Ответ ошибочный:

FF <ver> 0 0  <crc32>
 0   1   2 3  4 5 6 7

светодиоды

Светодиод Plc, синий. Отображает состояние опроса от ПЛК:

  • Горит прерывисто (1s) - есть опрос.
  • Горит прерывисто (3 коротких 100ms, пауза 1s) - нет опроса.

Светодиод Bat, красный. Отображает состояние работы от батареи.

  • Не горит - работа от сети.
  • Горит постоянно - работа от батареи, AcOk=0.
  • Горит прерывисто (100ms) - работа от батареи, AcOk=0 и BatLow=1.

реле

BatCtrl служит для разрывания цепи подключения аккумулятора к БП.

  • замыкается при AcOk = 1
  • размыкается, если одновременно:
    • AcOk = 0;
    • нет опроса от компьютера в течение SerTimeout+BatTimeout секунд.

AcCtrl служит для разрывания цепи питания БП. Является нормально-замкнутым.

  • размыкается, если одновременно:
    • AcOk = 0;
    • нет опроса от компьютера в течение SerTimeout секунд.

прошивка

версия 3

версия 4 - оптимизирована запись в EEPROM

Для прошивки использовать Arduino IDE

В Arduino IDE установить библиотеки:

  • CRC32 by Christopher Baker (ver >= 2.0.0)
  • DallasTemperature by Miles Burton (ver >= 3.9.0)

Настройка доступа к COM-порту в ubuntu:

sudo apt install avrdude
sudo usermod -a -G dialout $USER

Драйвер CH340 для Windows

файлы для воспроизводства

посылка для проверки

00 00 3C 00 03 00 00 00 00 00 00 92 6A 98 B7
doc/jroboplc/ups_devices/ups_nano3.1680850026.txt.gz · Последние изменения: 2023/04/07 09:47 — denis
Driven by DokuWiki Recent changes RSS feed Valid CSS Valid XHTML 1.0