Еще один сервер из подручных средств с претензией на красоту

в 8:42, , рубрики: diy или сделай сам, Железо, микроконтроллеры, самолюбования пост, своими руками, стекло

Еще один сервер из подручных средств с претензией на красоту - 1

Сейчас уже никого не удивить статьей о том, как собрать домашний сервер в коробке из-под чего-либо, но я все же попытаюсь это сделать. За подробностями прошу под кат.

P.S. много фото.

Вступление

Мысль собрать что-то вроде маленького сервера витала давно. Сначала были идеи сделать его без корпуса и убрать куда-нибудь подальше, лишь бы выполнял свою роль. Этот подход хорош в том плане, что при минимальных затратах усилий и времени он дает свой результат, но было одно «но»: просто соединить проводки и установить систему совсем не интересно. Так и родилась идея сделать все максимально красиво и функционально.

Хотелки были следующие:

  • полноценная х86 система;
  • наличие как минимум 3 жестких дисков: 2 в зеркале и 1 под торренты;
  • возможность использования в качестве медиацентра;
  • компактность (относительно ATX корпусов);
  • внешний вид, который бы радовал глаз;
  • небольшой бюджет.

Исходя из этих целей, была выбрана материнская плата форм-фактора Mini-ITX с распаянным процессором и встроенным видео. Это и стало отправной точкой постройки корпуса.

Постройка корпуса

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

Максимальная ширина была продиктована шириной жесткого диска 2.5 дюйма и составила 80 мм, глубина – габаритами материнской платы, с запасом было взято 180 мм. Высота же напрямую зависела от компоновки, впустую раздувать габариты не хотелось, поэтому все располагалось максимально компактно. В конечном итоге высота, не считая подставки, была выбрана 500 мм. Чертежей не было, только набросок на листке бумаги, все остальное делалось по месту, ввиду невысокой сложности проекта.

Еще один сервер из подручных средств с претензией на красоту - 2

Каркас собирался из алюминиевого уголка со стороной 10 мм и толщиной стенки 1.2 мм. Материал легкий, прочный, удобный в обработке, стоил на момент покупки около 15 рублей за метр. Для того чтобы все размеры были точными, отпиливались вместе сразу 4 уголка при помощи болгарки, закрепленной в стойке, таким способом удалось легко избежать кривизны конструкции из-за разной длины деталей.

Для соединений уголков между собой использовался заклепочник. Сверление отверстий под заклепки производилось, предварительно совместив 2 уголка друг с другом и зафиксировав их под прямым углом, после сверловки сразу производилась клепка. Таким образом были получены 2 боковых рамки.

Еще один сервер из подручных средств с претензией на красоту - 3

Потом они приклепались к основанию из металлической пластины нужного размера (коих в любых количествах полно в строительных магазинах), а сверху были добавлены 2 связывающих уголка.

Еще один сервер из подручных средств с претензией на красоту - 4

Затем добавились крепления для платы блока питания, от корпуса которого отказался еще на этапе компоновки. Под блоком питания располагается материнская плата, ниже – крепление для двух жестких дисков 3.5 дюйма, расположенных вертикально на боку, а под ними – корзина на 4 диска форм-фактора 2.5 дюйма. Все эти элементы значительно увеличили жесткость конструкции.

Еще один сервер из подручных средств с претензией на красоту - 5

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

Также был укорочен шлейф проводов от блока питания до материнской платы, а не востребованные линии просто выкусил.

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

Раз было решено все сделать красиво, то понадобились соответствующие материалы для отделки. Идей было много: от листового металла до цельной коробки из искусственного камня, но вес и трудоемкость процесса были неоправданно высоки. Многие советовали не париться и сделать из оргстекла. По эстетическим причинам это было неприемлемо, да и как-то попсово, чего не скажешь об обычном стекле. Первый вариант был из бесхозного стекла толщиной 2.5-3 мм, правда, пока вырезал 4 стенки нужного размера, побил пару квадратных метров, чтобы научиться, но это все мелочи. После раскроя – обработка краев наждачкой и сверловка отверстий.

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

Еще один сервер из подручных средств с претензией на красоту - 6

Еще один сервер из подручных средств с претензией на красоту - 7

Как однажды сказал Генри Форд: «Машина может быть любого цвета, при условии, что он черный». А чем это не машина? Так что однозначно черный!

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

И вот все это было установлено на раму и выглядело даже прикольно, но возникли проблемы: краска в местах соприкосновения с рамой из-за слабой агдезии стекла царапалась, и появлялись некрасивые просветы. Ко всему прочему стекло 2.5 мм выглядело совсем хлипким, хоть за год с ним ничего и не случилось, также крепежные винты требовали замены на что-то более эстетичное.

Спустя год пришло время переосмысления внешнего вида: теперь стенки изготовлены из стекла толщиной 6 мм и имеют вес, не уступающий всей конструкции в сборе. В этот раз все было заказано в стекольной мастерской и выглядело просто отлично, правда, отверстия все же пришлось сверлить уже по месту.

Еще один сервер из подручных средств с претензией на красоту - 8

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

Еще один сервер из подручных средств с претензией на красоту - 9

Также была покрашена ножка и другие менее значимые элементы конструкции. И еще один из плюсов крашеного стекла: оно все-таки пропускает свет, о чем и пойдет речь дальше.

Индикация и контроль

Исходя из требований красоты и функциональности был просто необходим свой контроллер со следующими требованиями:

  • управление 4 группами RGB-светодиодов;
  • управление 4 кулерами;
  • считывание 4 датчиков температуры; возможность отключать систему;
  • USB-соединение с сервером.

Под все это была разведена простенькая односторонняя печатка на чипе STM32F103.

Еще один сервер из подручных средств с претензией на красоту - 10

Светодиоды управляются через полупрограммный ШИМ. С кулерами все немного сложнее: первые попытки управления были также с помощью полупрограммного ШИМа, но при низкой частоте появлялся неприятный писк из-за совпадения частоты ШИМа с несущей частотой мотора кулера, т.е. была необходима высокая частота. В связи с этим был использован аппаратный ШИМ с частотой 32 кГц. Правда, повезло в том, что выводы аппаратного ШИМа частично попадали на те же ноги, что и программный, а частично на резервные линии, что были рядом.

В качестве термодатчиков использованы терморезисторы, подключенные по мостовой схеме.

Изначально в качестве силовых драйверов были использованы ULN2003, как на светодиоды, так и на кулеры, с той разницей, что первые питались от 5 В, а вторые – от 12 В. Но как оказалось, 3.3 В не хватает для полного открытия ключа при 12 В, и все уходит в нагрев, в этот момент пришлось приколхозить 2 сборки из полевых транзисторов, рассчитанных именно на низковольтный ШИМ (N6302). Еще один нюанс с USB: подтяжки контроллера не хватило на то, чтобы произошло определение устройства, поэтому пришлось сверху напаять еще дополнительный резистор с линии D+ к +3.3В.

Еще один сервер из подручных средств с претензией на красоту - 11

Питание микроконтроллера происходит от шины дежурного напряжения блока питания, светодиоды и кулеры же запитываются от основных линий +5 В и +12 В.

Дальше из картона была сделана маска для светодиодов, вырезаны отверстия, остальное заклеено пищевой фольгой, чтобы не было просветов там, где не требуется. После этого на всякий случай пропитал все клеем.

Еще один сервер из подручных средств с претензией на красоту - 12

Система и софт

Так как все должно быть легким и шустрым, то в качестве системы был выбран Puppy Linux. Основными критериями стали малый размер и размещение всей системы в оперативной памяти, все это загружается с флешки в качестве LiveCD и при необходимости изменений сохраняется в файл. По софту все просто: программный Raid0, SMB-сервер, Transmission в качестве торрента, связка MPD + IceCast2 для интернет-радио и XBMC как оболочка медиацентра. Управляется все при помощи китайской AirMouse со встроенной клавиатурой.

Микроконтроллер определяется как HID-устройство и общается с управляющей программой, написанной на Python. Обмен двунаправленный, хост получает значения температур и управляет скоростью вращения кулеров.

Также при помощи светодиодов можно следить за общим состоянием системы. Когда все в пределах нормы, то все индикаторы монотонно зеленые, но при нехватке оперативной памяти или места на дисках, перегреве, или отказе Raid-массива индикаторы будут менять свой цвет. В тех случаях, когда хост долго не отвечает контроллеру, система принудительно отключается, а если контроллер не отвечает хосту, то происходит штатное выключение.

Фото процесса сборки

Еще один сервер из подручных средств с претензией на красоту - 13

Еще один сервер из подручных средств с претензией на красоту - 14

Еще один сервер из подручных средств с претензией на красоту - 15

Еще один сервер из подручных средств с претензией на красоту - 16

Еще один сервер из подручных средств с претензией на красоту - 17

Еще один сервер из подручных средств с претензией на красоту - 18

Еще один сервер из подручных средств с претензией на красоту - 19

Еще один сервер из подручных средств с претензией на красоту - 20

Еще один сервер из подручных средств с претензией на красоту - 21

Еще один сервер из подручных средств с претензией на красоту - 22

Еще один сервер из подручных средств с претензией на красоту - 23

Еще один сервер из подручных средств с претензией на красоту - 24

Еще один сервер из подручных средств с претензией на красоту - 25

Еще один сервер из подручных средств с претензией на красоту - 26

Еще один сервер из подручных средств с претензией на красоту - 27

Еще один сервер из подручных средств с претензией на красоту - 28

Еще один сервер из подручных средств с претензией на красоту - 29

Еще один сервер из подручных средств с претензией на красоту - 30

Еще один сервер из подручных средств с претензией на красоту - 31

Еще один сервер из подручных средств с претензией на красоту - 32

Еще один сервер из подручных средств с претензией на красоту - 33

Еще один сервер из подручных средств с претензией на красоту - 34

Еще один сервер из подручных средств с претензией на красоту - 35

Еще один сервер из подручных средств с претензией на красоту - 36

Еще один сервер из подручных средств с претензией на красоту - 37

Еще один сервер из подручных средств с претензией на красоту - 38

Еще один сервер из подручных средств с претензией на красоту - 39

Еще один сервер из подручных средств с претензией на красоту - 40

Еще один сервер из подручных средств с претензией на красоту - 41

Еще один сервер из подручных средств с претензией на красоту - 42

Еще один сервер из подручных средств с претензией на красоту - 43

Еще один сервер из подручных средств с претензией на красоту - 44

Еще один сервер из подручных средств с претензией на красоту - 45

Заключение

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

Надеюсь, что все кто дочитал до сюда не потратили времени зря и вынесли для себя что то полезное или интересное.
Если остались какие то нераскрытые темы, то постараюсь осветить их в комментариях.

Автор: emptiness_rain

Источник

* - обязательные к заполнению поля


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js