0,0
рейтинг
16 августа 2013 в 13:27

Киберприглашение на свадьбу или о том, как эффектно разрушить шаблоны

На Хабре уже много писали о самодельных электронных устройствах разного калибра. То, о чем хочу рассказать я, не стоит ставить в один ряд с “умным домом” или производством деревянных мышей. Наверняка, те, кто только начинает развлекаться с DIY и думают, с чего начинать, найдут для себя что-нибудь полезное. Я надеюсь, этот пост лишний раз убедит новичков в том, что в нашем деле годится любая, даже самая странная, на первый взгляд, идея.


Итак, идея


Всё началось с того, что в один прекрасный день я решил жениться! Заявление, подготовка к празднику, все дела. Но вот задача: сделать оригинальные приглашения на свадьбу. Подписывать куски картона не хотелось. Душа просила хардкорного хэндмэйда, далёкого от традиционных свадебных шаблонов. И вот на моё “и вообще, можно электронные девайсы сделать” невеста сказала: “Круто! Давай!”


К тому моменту мой опыт сводился к спаиванию Фридуины из набора деталек и ритуальному миганию светодиодом. Я с ужасом прикинул, что руками предстоит собрать не один и не два, а 33 экземпляра, заранее попрощался с предстоящими летом — и понеслась…

Февраль. Свадьба в августе, но мне уже казалось, что я ничего не успею. Потому что, чёрт его знает, где и что пойдёт не так. Однако, постепенно стал вырисовываться план: слепить в один кусок LCD-экранчик, батарейку, кнопку и какой-нибудь контроллер, чтобы по нажатию кнопки устройство показывало на экране сообщение по строкам.

Подбор компонентов


Жанр “Приглашение” тут же продиктовал свои доптребования. Важно было, чтобы батарейка не тратилась вся за один-два показа и чтобы сообщения на всех экземплярах были разные. Вдобавок (и об этом меня ежечасно умоляла невеста) хотелось, чтобы результат моих экспериментов выглядел как хоть и кустарный, но продукт. То есть не разваливался в руках и не растопыривал во все стороны петли проводов.

Экран


Подобрал в каталоге ближайшего магазинчика радиодеталей, взял сначала один на пробу. По характеристикам вышло следующее: LCD, текстовый, русские буквы, 1 строка в 16 символов, без подсветки. Называется WH1601A-NGG-CT (datasheet), стоит сто с лишним рублей. Оказался волне удачный экранчик, позже закупил их целую коробку:


Контроллер


Контроллер подобрал из каталога Atmel (на сайте Atmel давите MCU Selector). Atmel, потому что с ардуиной у меня уже был маленький опыт, а на easyelectronics есть отличный курс про AVR-контроллеры. Искал такой,
  • чтобы ног хватало, но было как можно меньше
  • чтобы DIP-корпус (SMD я ещё не паял и не хотел рисковать),
  • чтобы энергопотребление могло быть маленьким
  • и чтобы в ближайшем магазине было в наличии.


Вышло ATTiny 2313A-PU (Даташит).

Батарейка


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

Всякое другое


Как ни странно выяснилось, что мелочевку (резисторы, конденсаторы и пр.) оптимальнее покупать не в СПб, а заказывать из под Йошкар-Олы (магазинчик ekits.ru). Нашлось всё и по нормальным ценам.

Прототип


Освоил экранчик: припаял к нему провода, поэкспериментировал из Ардуины, добился, чтобы он писал буковки по очереди с заданными паузами. Библиотеками не пользовался, хотел всё сам. Вот такой код получился.

Все было готово к работе над прототипом.

Март-апрель. Долгий период написания прошивки на ассемблере (намеренно не на С, чтобы лучше прочувствовать архитектуру), рисования и разводки схемы. Показал невесте. “А давай”, — говорит она мне — “оно еще и лампочками мигать будет”. Пришлось в процессе встроить “еще и лампочки”: добавил две пары светодиодов и работу с прерываниями, разводка немного усложнилась. (Светодиоды заказывал все так же, из Йошкар-Олы). Схема в результате вышла такая:


Для начинающих, как я, пояснения к схеме:
Пояснения к схеме
Посередине контроллер, справа экранчик. Семь проводов от контроллера к экранчику это три управляющих и четырёхбитная шина данных. Всё по даташиту. Питается экранчик не напрямую, а с ножки PD2 (контакт V-LCD), это оттого, что большую часть времени девайс не работает, контроллер уходит в sleep, и на питание экранчика батарейку тоже не тратит. Ещё там есть VO-LCD, который подаётся на контакт VO экранчика. Согласно даташиту туда надо подавать некоторое напряжение больше нуля, но меньше VCC, этим напряжением регулируется контраст экранчика. Даташит предлагает пихать туда реостат и регулировать на ходу. Но не в каждую же плату реостат пихать! Так что подобрал напряжение экспериментально и соорудил делитель напряжения, чтоб его получить. Это вот конструкция из двух резисторов внизу. Ещё внизу нарисовано, что питание изначально берётся с батарейки и что в питание вставлен конденсатор для защиты, например, от дребезга при вставлении свежих батареек. Ну, собственно и всё. Ещё там есть кнопка ресета и четыре светодиода, включённые попарно.


А вот такая прошивка.

Разводка для первого раза вышла непростая, так что вполне вероятно, что я нарушил какие-то каноны. Пришлось уживаться с кучей условий:
  • Плата по размерам должна была быть чуть больше экранчика, чтобы удобно было жать на кнопку старта.
  • Коннектор и крепёжные дырки — соответствовать коннектору и дыркам на плате экранчика. (Дырки я потом соединил винтами).
  • Светодиоды (по дизайнерской задумке) — непременно смотреть в разные стороны.


В результате обошёлся двумя перемычками, на схеме они синие:


Собрал всё на макетке, долго отлаживал, добился чтоб работало… Да, прошивал Ардуиной по схеме, разжёванной тут.Схема требует соединить ресет с питанием через резистор: я резистор подвесил прямо в провод.

И да, важно было, чтобы в каждом девайсе был персонализированный текст (приглашение же!). Текст хранился в прошивке в виде дампа (“.db 0xa2, 0xa3...”). Причём таблица кодировки у экранчика своя и с особенностями. Она, например, экономит и содержит только те буквы кириллицы, для которых нет аналога на латинице. Для удобной перекодировки сделал утилитку на java.

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


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

На финальной плате разъёма для программирования не делал. Просто вставлял очередную микросхему в кроватку на макетке, прошивал и впаивал в плату. Негибко, но экономит отверстия и компоненты. И время, конечно.

Производство


Шёл май. Я начал делать первый экземпляр. Расписывать ЛУТ и травление не буду, мануалы DiHALT`а все читали. Расскажу только об отдельных особенностях и отличиях от мануала.
  • Травил в смеси медного купороса и поваренной соли. Это менее едко и ингредиенты лежат в ближайшем строительном супермаркете.
  • Сверлил сверлом в 1мм по металлу (меньше в том супермаркете не было) и дрелью, настоящей, полноразмерной. Рука оказалась достаточно тверда, чтобы не поломать сверло и не смазать отверстие. А шуруповёрт оказался, хоть и легче, но слишком медленный. Кстати, совершенно верна рекомендация о том, что надо беречься пыли! Она очень мелкая, белая и почти не видна, если не ссыпать кучкой. Но если окажется в воздухе, горло дерёт страшно.
  • Сначала лудил, а потом сверлил, хотя все везде рекомендуют наоборот. Но так же проще! Ободок отверстия становится толще и в начале сверления дополнительно поправляет прицел.
  • Делал партиями — так быстрее. То есть, десяток плат проходят первую стадию, потом вторую и т.д. Получается меньше переключений контекста, меньше перекладываний инструмента и, соответственно, быстрее работа. Стадии такие:
    1. Отрезать кусок платы и пошкурить
    2. Пригладить бумажку с рисунком и отмыть её
    3. Протравить плату
    4. Залудить дорожки
    5. Насверлить отверстий
    6. Припаять всё кроме контроллера
    7. Вставить контроллер в макетку и прошить
    8. Впаять контроллер
    9. Соединить с экранчиком винтами



Получилось вот так. На видео, правда, пока без винтов.


Вот и всё. Устройства были готовы.


Последние штрихи


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

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

А инструкция, которая видна на фотографии, вот так



В общем, эффект достигнут! Гости в восторге, свадьба удалась, у нас — по плюс-много к опыту и желание продолжать эксперименты…
Александр Замышляев @alexzzam
карма
73,8
рейтинг 0,0
Java-разработчик
Реклама помогает поддерживать и развивать наши сервисы

Подробнее
Реклама

Самое читаемое

Комментарии (52)

  • +61
    Живите долго и счастливо. А то сейчас свадьбы играют по полмиллиона минимум, а потом каждая третья пара через полгода разводятся.
    Как говорится, удивите людей не свадьбой, а жизнью.
    • +31
      Спасибо. И да, наш аптайм уже больше полугода. 8)
      • +2
        Идею можно использовать и в качестве визиток, кстати. Для особо важных клиентов.
      • 0
        Вообще то сейчас август, а свадьба вроде как в августе была. Значит аптайм — год.
        • +21
          Ну, без пяти дней, да.
          Но это же больше полугода!
          • +8
            Скажите спасибо, что напомнили )))
            Постоянно про годовщину забываю, за что был неоднократно ритуально бит )
            • +11
              поставить напоминалку в каледарь не? я ставлю всякие банальные напоминалки «первый раз увидел», «первый поцелуй», «первый ...», а потом тролю подругу, тем что сегодня 100 дней с того момента как мы первый раз сходили в кино, а она не помнит )
              • +2
                Слабый аптайм :)
        • –1
          Автор забыл уже :).
          • 0
            Неверно. Мы в 2012 поженились, сейчас уже почти год со свадьбы.
  • +1
    Я бы посоветовал попробовать что-то вроде этого:
    dx.com/p/tsr-mini-programmable-scrolling-led-name-message-advertising-tag-badge-red-light-1-x-cr2032-81073
    Когда-то читал, что в них установлен то ли pic то ли тот-же avr и можно легко перепрограммировать устройство.
    • +3
      Ну, самим-то сделать интереснее.
      Травить, паять, гостей удивлять! 8)
      • +1
        Это да.
        В любом случае получилось интересно и оригинально :)
  • +1
    Вот это охрененно! И вам повезло уже с женой, раз она поддержала ваши идеи.
    И удочка милая, и инструкция — все отлично.
    Единственное, я бы покрыл цапонлаком плату для красоты).
    • +2
      Если будущая жена не поддерживает идеи будущего мужа, то есть о чем задуматься. Наоборот тоже верно.
  • +11
    И фамилия у Вас говорящая. Подстать. :)
  • +3
    На будущее — в китае достаточно много контор которые делают печатные платы на заказ. Цена — от 9 долларов за 10 штук. Зато заводское изготовление, можно выбрать любой цвет печатных плат, шелкография, количество слоёв до 4-ех, есть возможность изготовить гибко-жесткие платы. Вы высылаете гербер файлы, через неделю готовые платы высылают вам. В этом случае у вас получилось бы практически заводской вид устройства, никакой кустарщины =)
    • +4
      Ну только учитывая, что связь с Китаем через ПР, то можно и не успеть к свадьбе с приглашениями)
    • +3
      А можете поделиться ссылочками на такие конторы?
      • +1
        Ответил в ЛС. Открыто ссылку давать не хочу, так как боюсь что та компания с которой я работаю не справится с нагрузкой от хабраэффекта, сроки безбожно увеличатся и придётся искать другую)
        • 0
          И со мной поделитесь, пожалуйста.
  • +3
    Интересно =)

    Хотя, я вот глядя на своих друзей чувствую, что свадьбы будут организовывать как встречи Вконтакте — и через него же приглашать.
    А подарок для молодожёнов будут выбирать в специально созданном диалоге…
  • 0
    Хорошая идея на на нашу свадьбу! +100 баллов!
  • +9
    Очень круто! Завидую терпению автора — всё-таки спаять 33 экземпляра…
    Мои приглашения на свадьбу были поскромнее — на свитках под старину написаны программы. Каждому кто на чём пишет.
    P.S. присоединяюсь к поздравлениям! Долгих и счастливых лет вместе!
    • 0
      Спасибо!
    • +2
      Вот это здорово! А много ваших друзей пишет на Brainfuck? :-)
      • 0
        Это приглашение предназначалось дружку. Видимо, я переборщил, так как он сбежал от меня куда подальше :( Пришлось срочно искать замену :)
  • +5
    А почему именно удочка, она что-то символизирует? Просто связи не вижу между удочкой, браком или электроникой :)
    • 0
      Идея невесты. Ассоциативный ряд: лес, походы, рыбалка, поймать на удочку, ценная железяка, выловленная на удочку, поймать удачу и т.д.
      Ну и вообще, почему бы и нет. 8)
      • +3
        Об этом должно быть написано мелким шрифтом в инструкции, для любознательных. Я сначала думал, что леску привязали к кнопке и нужно «поудить» чтобы девайс активизировался.
  • +2
    Очень достойный результат для начала.
    Успешного прохождения всех сложных порогов в совместной жизни, электронике и на любимых реках!
    Сколько всего сделали экземпляров? В начале истории намечалось 33, но смущает номер прошивки 35.
    • +2
      Спасибо!
      А в начале у нас была пара-тройка отбракованных экземпляров.
      Контроллер не той стороной припаянный, оторванные дорожки, всё такое. 8)
  • +1
    Поздравляю!

    Главное не забывать апдейтиться через 1 год, 3 года и 7 лет, а на 10-ти летие пропачить уже существующие форки, если будут.

    В общем щастья и любви!
    • 0
      Спасибо!
  • –1
    Ох, вашу бы энергию да в мирных целях…
    • +7
      Да куда уж более мирных? :)
      • +2
        В смысле в полезных )
  • +1
    Как замечательно, что у вас получилась пара не только по любви, но и по интересам: моя мечта :) Удачи в семейной жизни!

    Шикарные получились приглашения, ооочень оригинальные!
  • +1
    Сразу вспомнилось:
    www.exler.ru/novels/wife.htm
  • +1
    Февраль. Свадьба в августе

    Неужели так бывает?
    • 0
      Э… А почему нет?
  • 0
    И сколько таких открыток было сделано всего?
    • 0
      В статье написано, что 33
    • 0
      Всё верно, 33.
      • 0
        Тогда платы можно было и фабричные заказать.
        • 0
          Можно, конечно. Но тут два момента:
          — Просто интереснее сделать всё самому на первый раз.
          — Не факт, что с первого же раза плата заработает. (Она и не заработала) Опыта же никакого. То есть, вначале пара экземпляров оказались нерабочими по разным причинам. И потом уже в процессе производства я и дорожки переставлял, чтобы перемычек меньше было, и форму площадок для микросхемы менял, чтобы паять удобнее, и выяснил ещё, что изначально лажанул с размерами кнопки и её не впаять… И ещё там что-то.
          • 0
            От габаритных косяков спасет 3Д моделирование :)
            • 0
              А от размера кнопки моделирование бы не спасло. Я просто не тот компонент из списка выбрал. Ну и не те размеры, не то расстояние между ножками. Хотя тоже тактовая кнопка с четырьмя контактами.
              Энивей. Считайте, что «сделать всё самому» входило в постановку задачи. 8)
  • 0
    А ещё на pouët была свадебная демка. :)
  • НЛО прилетело и опубликовало эту надпись здесь
    • +1
      Ммм.

Только зарегистрированные пользователи могут оставлять комментарии. Войдите, пожалуйста.