среда, 30 марта 2011 г.

Сказ о том, как из ПК часы делались

Как-то в этом месяце, на работе, было принято решение повесить в цехе красивые часы, которые будут показывать единое время для работников цеха, и оповещать их сигналом о началах и окончаниях перерыва. Занимались этим я и MAG_delta.Деньги были выделены, комплектующие были куплены, и тут началось самое интересное...

Сборка ПК

При сборке были использованы следующие комплектующие:
  • Мат. плата ASUS "AT3IONT-I Deluxe"
  • Дешевый 23" монитор от Samsung, собранный в России
  • Простенький корпус mini-ITX
  • VESA крепление для монитора
  • харды, CD-ROM'ы, периферия, прочее...

Монитор

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

VESA крепление

Предыстория: так как в нашем любимом Ф-центре мы VESA креплений не нашли, то было решено купить его перед поездкой на работу. Приехав на савок, не долго ища, мы нашли магазин "Другой Мир" (или как-то так), в котором был богатый выбор креплений. Не долго думая, было решено купить самое-самое большое крепление, чтобы хоть одно из отверстий подошло. А продавец всё хотел втюхать какое то маленькое. Убедив продавца, что нам отлично подойдёт именно самое большое, купили его и поехали на работу )
Приехав на работу, и помучившись с монитором, мы взялись за крепление. И тут всё началось с fail'а - крепление, внезапно, оказалось слишком большим, и закрывало отверстие для VGA кабеля и кабеля питания. В общем, пришлось идти в цех и просить отрезать лишнюю часть крепления. Заодно, показали куда это всё надо вешать. В итоге, крепление было красиво отрезано и хорошо прикручено. На чем эпопея с ним закончилась. Параллельно с этим мы занимались установкой и настройкой системного блока...

Системный блок

Тут началось самое интересное. Был распакован маленький mini-ITX корпус, безжалостно вынут оттуда встроенный блок питания. Была распакована маленькая mini-ITX материнская плата, которая выглядела очень заманчиво, на первый взгляд. Было всё это собрано, подключен НЖМД на 500Гб от сигейта, CD-ROM для установки, 2Гб памяти (меньше не было :) ), включен внешний блок питания для материнской платы, и всё было к решительному моменту включения. Кнопка включения была нажата и... 0 реакции. Еще раз - тот же результат. Пришлось задуматься, что бы это могло быть. Через некоторое время раздумий мы решили, что не хватает питания. Было решено отключить жёсткий диск, оставить только CD-ROM. Со второго раза всё включилось и... вся серверная провоняла первым за этот день убитым CD-ROM'ом. Немного почесав в затылке, было решено проверить всё это на еще одном CD-ROM'е. Скажу сразу, это была плохая идея, так как серверная снова провоняла горелой проводкой. Прошло еще немного времени, мы уже вовсю прорабатывали метод установки ОС с флешки на флешку, возможность использования старого-древнего компа уже, на крайний случай, но MAG_delta было мало - он решил убить еще и жесткий диск :) Хитро подключив питание во время работы злополучного компа, это ему удалось. Так кровожадная материнка приняла очередную, и последнюю, жертву. Мы перешли к следующему шагу...

Установка ОС

Установить на эти кровожадные часы-убийцу было решено самый знакомый и близкий мне дистрибутив - AgiliaLinux. Также он поддерживает легкую установку на флешку, что было очень важно для нас. Так как флешка была всего одна (и та - моя), наш хитрый план был примерно таким: записать установщик на флешку, загрузиться с неё, установить Агилию на эту же флешку, дальше - по обстоятельствам. Внезапно, оказалось, что всё это вполне реально и возможно, и даже работает. Загрузившись с флешки, мы смогли лицезреть приглашение логина. Теперь немного о программной части...

Программное обеспечение

Для самого показа часов было испробовано множество вариантов, даже conky, но мы остановились на xdaliclock, который был в репозитории (правда, только для 64-х битного варианта, но собрать пакет - дело не долгое). Были подобраны опции запуска, настроен автостарт. При помощи пользователя "medved" jabber конференции agilialinux был быстро настроен автовход в иксы под нужным пользователем, в общем, всё это само запускалось и работало. Дальше, мы собрали вместе системный блок, монитор, кучу проводов и ИБП и понесли всё это в цех.

Сборка всего вместе и установка

Придя на место, мы еще раз подивились красиво установленному и отрезанному креплению, водрузили туда монитор, поставили в соседнее помещение системник с ИБП, соединили всё это и включили... загрузка пошла, как это не удивительно :) AgiliaLinux загрузился, но максимальное разрешение экрана было - 1024х768. Как оказалось, проблема была в предварительно заказанном VGA кабеле, который брался "с запасом". В общем, его длина была 30 метров, это говорит само за себя). Плюнув на это дело, поставили разрешение (пришлось бегать за клавой-мышью) 800х600, чтобы наверняка, поправили параметры запуска часов и взялись за протягивание сетевого кабеля. Но через 10 минут было обнаружено, что благодаря настройкам энергосбережения монитор выключается сам через эти самые 10 минут. В спешке настроив сеть, я записал магические строчки

xset s off &
xset -dpms &
xset s noblank &

в autostart.sh, и эту проблему тоже удалось решить. На этом можно считать первую часть настройки компочасов оконченной. Ждите новостей на следующей неделе.

Итоги

В итоге, потратив не более 8 часов, нам удалось собрать, настроить и установить отличные часы, которые синхронизируются с ntp сервером каждый час, показывают большое, видно на всей территории цеха, время, поддерживают удаленное управление и предоставляют кучу других возможностей. Причем всё это собрано в компактном, бесшумном корпусе (из движущихся частей - только маленький кулер на корпусе, который почти не шумит).
Из еще не решенных задач: создание аудио оповещений, доработка часов под себя.

"Слайды" :)







С этими, некоторыми другими фото Вы можете ознакомиться по этой ссылке :)

9 комментариев:

MAG_delta комментирует...
Этот комментарий был удален автором.
MAG_delta комментирует...

Да уж. день прожит не зря! но это был худший и лучший день в моей жизни. Худший потому что столько ФЭЙЛ в час это уж слишком.
А лучший, так как все же МЫ победили все и вся и "часы" заработали как нужно.
оригинал фоток
https://www.facebook.com/album.php?aid=34825&id=100001613121427&l=402ac56857

Leart комментирует...

прямо зачитался))))))) теперь можете звать себя цеховыми
повелителями времени

ex1l комментирует...

Прям таки эпопея про часы с люной))
-1 CD-ROM ...
-2 CD-ROM DOUBLE KILLLL!
-3 HARD MOOOONSTER KILLL!

MAG_delta комментирует...

да печально, новенькие DVD ушли в мир иной....
но не беда купим еще))

igron комментирует...

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

Drakmail комментирует...

обошлись примерно в 15-20к :)

slamd64 комментирует...

А чего не сделали сетевую загрузку? Раз уж всё-равно сеть тащили...

А почему дату и день недели не показывает, а только время?

Вообще, для таких целей очень удобно использовать неттопы с VESA монтажем. Например, вот такие: http://www.3-q.ru/products/nettops/qoo-nettop/
У них есть возможность покупать "платформу" (без винтов и памяти).

"был быстро настроен автовход в иксы под нужным пользователем"
В данном случае было бы лучше делать напрямую загрузку иксов+софтинки из инит-скриптов. Без "автовходов".
Изучите возможности команд sudo и nohup в применении к rc.local :)

Ну и плюс мониторинг. Вы про него тоже забыли?

Drakmail комментирует...

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

Задачи показывать дату и день недели не было. Поэтому только часы.

К сожалению, неттопов не было в наличии.

Опять же, задача была сделать как можно быстрее это всё, поэтому тупо сделали автовход через gdm. Профита от прямого запуска иксов я не вижу в данном случае, а время лишнее занимает.

Лучший мониторинг - начальник, звонящий по телефону :) На самом деле да, надо бы munin туда поставить хотя бы.