Крикун А.В.
г.Бровары, Киевская обл., Украина

 

Ситуация, которая привела меня к необходимости использовать продукцию Мастер Кит оказалась в проблеме выбора места работы сервера в однокомнатной квартире, который должен работать в режиме 24/7. Сначала самым идеальным вариантом была установка его на на площадку к провайдеру, но в последний момент провайдер передумал со своим решением и мне пришлось оставить его у себя. Спать в одной комнате с вечно гудящим сервером меня абсолютно не радовало, поэтому я решил перенести его на балкон.

Но тут стал вопрос о регулировании температурного режима работы сервера, потому как балкон хоть и утеплен, но без батареи разница температур между улицой и балконом у меня составляет всего 7-8 градусов, поэтому в морозы температура там может опускаться ниже нуля, а это для дорогостоящей аппаратуры не приемлемо. Отапливать всю зиму балкон мне не очень хотелось и поэтому я решил сделать на балконе мини-серверную. Из ДСП была сооружена коробка, внутри утепленная пенопластом, на ее торцевых стенках были прикреплены два кулера диаметром 120 мм.

 

Рис.1.

 

Для удобства перемещения к низу мини-серверной были прикручены колесики.

Теперь при низких температурах достаточно было отключать вентиляторы мини-серверной и сервер начинал обогревать воздух внутри за счет собственного выделения тепла.

Для контроля за температурой внутри мини-серверной и управления внешними вентиляторами я решил использовать связку цифрового термометра MP707 и BM146 для управления внешними устройствами. Для контроля за температурой на балконе был прикуплен дополнительный датчик DS18B20.

Первой проблемой, с которой я столкнулся, стало отсутствие программного обеспечения для работы с цифровым термометром в ОС Линукс. Попытка запустить Windows-приложение через wine-эмулятор успехом не увенчалась. Но так как сдаваться так сразу не хотелось, то я взялся писать программу самостоятельно. Не знаю сколько бы для этого мне понадобилось времени и сколько бы мне еще пришлось терпеть по ночам гул вентиляторов сервера, если бы мне не помог в этом деле разработчик данного устройства. В результате совместных усилий было создано консольное приложение bmcontrol, позволяющее управлять всеми основными функциями USB-термометра.

Теперь мне оставалось только подключить все устройства между собой и настроить их работу так, как я задумал.

Следующий вопрос перед которым я остановился был выбор проводов, которыми надо было соединить устройства MP707 с BM146 и термодатчиком. Покопавшись в своем электронном барахле я нашел не использованный шлейф для подключения usb-разъемов на передней панели корпуса компьютера.

С одной стороны шлейфа был цельный разъем, а с другой стороны на каждом проводе находились отдельные разъемы, которые как нельзя кстати подходили для подключения к выходам на цифровом термометре МР707.

 

Рис.2.

 

Так как на устройстве управления внешними нагрузками BM146 уже имелись спец. зажимы для проводов, то подключение его к МР707 уже не вызывало затруднений.

 

Рис.3.

 

Оставалось только подключить внешний датчик температуры. Я сам не сторонник припаивания проводов и контактов, поэтому покопавшись еще немного в своих проводах я нашел отрезанный когда-то от старого кулера разъем с тремя входами, как раз для моего термодатчика! Ножки термодатчика отлично зашли в этот разъем, который я быстренько прикрутил к проводам от шлейфа и подключил к МР707.

 

Рис.4.

 

Первые замеры температуры на температурных датчиках прошли успешно! Но после успехов всегда бывают поражения, что и произошло. Оказалось, что устройство МР707 имеет свой внутренний таймер и если на устройство не подаются какое-то время сигналы, то оно отключается и автоматически отключает свои порты управления внешними устройствами. А это значит, что если сервер не дай бог зависнет, запросы к устройству перестанут поступать и оно отключится вместе с вентиляторами мини-серверной со всеми вытекающими последствиями. Выключить этот таймер можно только в устройствах MP707 со второй версией прошивки, но и тут мне не повезло, т.к. у меня оказалась прошивка первой версии.

Поэтому я решил, что пусть лучше вентиляторы работают при выключенном состоянии порта MP707, а при его включении вентиляторы наоборот бы останавливались. Для этого внешняя нагрузка была подключена к устройству ВМ146 через нормально-замкнутые раз]емы реле.

Но и на этом проблемы не закончились. Оказалось, что устройство ВМ146 имеет одну существенную недоработку, при которой реле при подаче управляющего напряжения не срабатывает. Покопавшись на форуме Мастер КИТ и пообщавшись с людьми я узнал, что всему виной резистор с неправильным сопротивлением. Конечно ехать за одной маленькой деталькой через весь город, а потом ее еще и перепаивать у меня желания не было никакого, поэтому я решил просто замкнуть контакты на резисторе, припаяв к нему маленькую часть скобки от степплера. Реле заработало, но при этом светодиод на устройстве начал гореть вместо зеленого ярко оранжевым и стал сильно греться. Так как мне светодиод особо нужен не был, то его контакты я тоже замкнул, скрутив ему между собой ножки (светодиод к плате был припаян на длинных ножках). Наконец-то все заработало!

Теперь я мог удаленно контролировать температуру в мини-серверной и включать/отключать вентиляторы. Но без автоматизации этих процессов вся моя работа сводилась на нет. Поэтому вооружившись знаниями в PHP и MySQL, а также использовав идеи с блога ab-log.ru я решил сделать скрипты для автоматизации управления портами внешней нагрузки, а также организовать веб-интерфейс для статистики изменения температур и настройки параметров работы управляющих скриптов. Не буду вдаваться в подробности реализации фронтенда и управляющих скриптов, но в результате у меня получился довольно информативный интерфейс SmartHome с отображением изменений за последние сутки температур всех системных датчиков (CPU, SYS, HDD), а также подключенных внешних датчиков.

 

Рис.5. - Посмотреть

 

В настройках я реализовал возможность автоматического управления внешними нагрузками при превышении максимальных или минимальных значений температуры любого датчика, а 20 последних включений/отключений внешних нагрузок отобразил на отдельном графике.

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

Вы недавно смотрели

              
Рейтинг@Mail.ru Яндекс.Метрика