Powercom SMK-800A, NUT, и другие прелестиПодписка на Комментарии к "Powercom SMK-800A, NUT, и другие прелести"

Аватар zenon

Листал yandex.market на предмет источников бесперебойного питания... вроде и выбор большой, да и с финансами проблем не испытываю, но! руки у меня всегда под любую железку подходили, ни разу не было такой, которая не поддалась бы...., почесав затылок открыл avito.ru, увидел объявление о продаже Powercom SMK-800A на запчасти (500р), в скобках было указано что наверняка рабочие, просто севшие аккумуляторы. Позвонил. Оказалось их там аж десяток...
Взял (один, не солить же их), сабж мне аж к подъезду подвезли :_)

Подключил. Так и есть батареи разряжены в хлам. Подключил свои - ИБП ожил. Дальнейшая проверка показала полную его работоспособность.
Отличительной особенностью этого UPS является возможность долгой работы от батарей, и хоть на заднюю панель не выведен разъем для подключение дополнительного аккумулятора, внутри на плате разъем распаян, также есть два коннектора для подключения вентиляторов, думаю от старших моделей отличия не большие - ключи и трансформатор.
С подключением к COM порту вышла загвоздка - тут не обычный интерфейсный кабель, а свой powercom`овский, специальный, которого в комплекте не оказалось, из загажника был извлечён обычный rs-232rs-232 разрезан и перепаян.
Распиновку найти удалось тут.
Перебои с электричеством бывают редко, но метко, поэтому вывел провода подключения дополнительных батарей, нагрузка у меня небольшая, да и напряжение батарей 24 вольта, поэтому ограничился сечением в 4 кв мм.
Поставил аккумуляты Delta DTM 1217, это не совсем та серия, которая нужна для UPS, но они у меня просто были, для бесперебойников из моделей Delta лучше подходят из серии HR, HR-W, HRL, HRL-W, несмотря на это время работы от батарей составило почти 2 часа, при нагрузке ~150 ватт, для сравнения APC Smart-UPS 1000VA при 130 ваттах работает 1 час.
Еще одна досадная штука - БИПЕР! - его можно выключить, но только до первого выключения ИБП, поэтому проблему решил кардинально - выпаял.
NUT:
Gentoo, установка:

# emerge sys-power/nut -pv
These are the packages that would be merged, in order:
Calculating dependencies... done!
[ebuild   R    ] sys-power/nut-2.6.5-r1  USE="avahi cgi snmp ssl tcpd usb xml -ipmi" 0 kB
Total: 1 package (1 reinstall), Size of downloads: 0 kB
/etc/nut/ups.conf
# cat /etc/nut/ups.conf | grep -v '#'
[SMK]
   driver = blazer_ser
   port = /dev/ttyS3
   default.battery.voltage.high = 28
   default.battery.voltage.low = 20.80
   offdelay = 20
   ondelay = 0
   norating
   novendor
   runtimecal = 1800,50,3600,25
   idleload = 10

driver - найден в списке совместимых на оффициалном сайте, для всех SMK моделей - драйвер - blazer.
Подключен к COM порту (/dev/ttyS3).
offdelay - в секуднах - время выключения самого UPS после подачи сигнала о разряде батарей.
ondelay - время в МИНУТАХ! - включения и подачи питания на нагрузку.
Остальное в принципе не важно.
Запуск:
# /etc/init.d/upsdrv start
 * Starting UPS drivers ...
Network UPS Tools - UPS driver controller 2.6.5-Unversioned directory
Network UPS Tools - Megatec/Q1 protocol serial driver 1.55 (2.6.5-Unversioned directory)
Supported UPS detected with megatec protocol                      

/etc/nut/upsd.conf
# cat /etc/nut/upsd.conf | grep -v '#'
LISTEN 127.0.0.1
LISTEN 192.168.0.1

/etc/nut/upsd.users
# cat /etc/nut/upsd.users
[admin]
password = pass
actions = SET
instcmds = ALL

Запуск:
# /etc/init.d/upsd start
 * Starting upsd ...
fopen /var/lib/nut/upsd.pid: No such file or directory
listening on 192.168.0.1 port 3493
listening on 127.0.0.1 port 3493
Connected to UPS [SMK]: blazer_ser-SMK

/etc/nut/upsmon.conf
# cat /etc/nut/upsmon.conf | grep -v '#'
RUN_AS_USER root
MONITOR 1 admin pass master
MINSUPPLIES 1
SHUTDOWNCMD "/sbin/shutdown -Ph +0"
POLLFREQ 5
POLLFREQALERT 5
HOSTSYNC 15
DEADTIME 15
POWERDOWNFLAG /etc/killpower
RBWARNTIME 43200
NOCOMMWARNTIME 300
FINALDELAY 15

Что тут интересно? - Конечно же комманда шатдауна - SHUTDOWNCMD, при желании вместо неё можно прописать любой собственный скрипт завершения работы.
Запуск:
# /etc/init.d/upsmon start
 * Starting upsmon ...
UPS: (master) (power value 1)
Using power down flag file /etc/killpower

Добавляем сервисы в инит:
# rc-update add upsdrv default
# rc-update add upsd default
# rc-update add upsmon default

Для того чтобы после завершения работы выключался сам ИБП необходимо добавить nut.powerfail в уровень shutdown:
# rc-update add nut.powerfail shutdown

Смотрим состояние:
# upsc
battery.charge: 100
battery.runtime: 6000
battery.voltage: 28.00
battery.voltage.high: 28
battery.voltage.low: 20.8
device.type: ups
driver.flag.norating: enabled
driver.flag.novendor: enabled
driver.name: blazer_ser
driver.parameter.chargetime: 21600
driver.parameter.idleload: 10
driver.parameter.offdelay: 20
driver.parameter.ondelay: 0
driver.parameter.pollinterval: 2
driver.parameter.port: /dev/ttyS3
driver.parameter.runtimecal: 1800,50,3600,25
driver.version: 2.6.5-Unversioned directory
driver.version.internal: 1.55
input.frequency: 50.0
input.voltage: 213.0
input.voltage.fault: 213.0
output.voltage: 213.0
ups.beeper.status: disabled
ups.delay.shutdown: 18
ups.delay.start: 0
ups.load: 15
ups.status: OL
ups.temperature: 30.0
ups.type: offline / line interactive

Команды отсылать на UPS можно так:
# upscmd -uadmin -ppass test.battery.start.start

Список доступных команд (зависит от модели бесперебойника и соответственно драйвера):
# upscmd -uadmin -ppass -l
Instant commands supported on UPS [SMK]:

beeper.toggle - Toggle the UPS beeper
load.off - Turn off the load immediately
load.on - Turn on the load immediately
shutdown.return - Turn off the load and return when power is back
shutdown.stayoff - Turn off the load and remain off
shutdown.stop - Stop a shutdown in progress
test.battery.start - Start a battery test
test.battery.start.deep - Start a deep battery test
test.battery.start.quick - Start a quick battery test
test.battery.stop - Stop the battery test

Тестирование отключений:
Прежде чем оставить сервер без присмотра, нужно проверить его выключение.
Сначала нужно посмотреть, как будет вести себя upsdrvctl без фактического отключения системы. Для этого используется параметр -t:
# upsdrvctl -t shutdown

Далее необходимо проверить работает ли принудительное завершение системы:
# upsmon -c fsd

Если все работает правильно, ОС завершит работу, компьютер будет принудительно отключен от электросети, ИБП выключится. В зависимости от ondelay, ИБП будет оставаться выключенным несколько минут, затем включится.
###
Пост.скриптум:
Для понимания процесса про дополнительные аккумуляторы и их емкость - смотрите их зарядно - разрядные характеристики, к примеру если на батареи написано 17Ah - это совсем не значит что при токе 17 ампер она проработает час, скорее всего мунут 5-10, всё почему? Потому что ёмкость 17Ah верна при токе разряда в 0.5-1 ампер...
Вот примерный график зависимости скорости разряда от тока:

Фото:





Обсудить можно здесь, или на форуме.
###
Документы PCM http://www.pcm.ru/support/download/docs/
Коммуникационные кабели к ИБП Powercom. (Таблица с распиновкой всех коммуникационных кабелей к ИБП производства POWERCOM).
Копия.
Руководство пользователя моделей Powercom SMK (рус).
Ещё раз распиновка интерфейсного кабеля Powercom:

Service Manual на PCM SMK.
Аватар zenon

График разряда / заряда этого UPS с батареями Delta DTM 1217, нагрузка - примерно 15-25%.

Аватар PL

Дружище указанная распайка , на картинке, несколько не сходится с описанием выходов ИБП ? 7 ногу с ИБП четко предупреждение в описании только на 5 GND. У меня родной 101 кабель. В нем 9 на 2 (RxD), 6 на 3 (TxD), 7 на 5 (GND). Не могу победить под Ubuntu 16.04 server. Толи драйвер то ли чего то не хватает в распайке.

Аватар zenon

У меня родного кабеля вообще не было. Нашёл эту распиновку, её и использовал.

Добавить комментарий