RSS блога
Подписка
Arduino Micro Pro. Как построить сенсорный дисплей Wacom Cintiq
- Цена: 10.38
- Перейти в магазин
О платах Arduino, наверное, слышали все, а многие и как минимум держали их в руках, а то и создавали на них что-нибудь сами.
Сегодня мы взглянем поближе на плату на базе ATMega32U4, оживим с её помощью древний графический планшет и дадим возможность самодельному LCD монитору воспринимать написанное прямо на экране.
Добро пожаловать под кат.
В наше время самый распространенные сенсорные экраны — емкостные. Они достаточно дешевы, в отличие от резистивных — прочны, но с чувствительностью к силе нажатия у них как-то не задалось. В качестве замены мыши такое пригодно(особенно если на экране кнопки побольше нарисовать), но для работы с графикой, когда требуется имитация кисти, без электромагнитного пера не обойтись.
Эталоном таких устройств считают изделия от Wacom. Их сенсоры используют явлениие электромагнитного резонанса. Перо получает необходимую для работы энергию от самого сенсора, поэтому ему не нужны ни провода, ни элементы питания. В своё время фирма подсуетилась насчёт правильного патента и надолго закрепила свою монополию на безбатарейные перья, вынудив конкурентов утяжелять свои встроенными аккумуляторами. Ныне патент уже истёк, но планшеты с активными перьями всё ещё встречаются в продаже.
Как это работает?
Сенсором является антенна-матрица из множества приёмно-передающих катушек и магнитный отражатель, размещённый под ней. Антенна излучает электромагнитное поле с частотой 531 кГц, которое наводит ЭДС в катушке внутри пера и обеспечивает питанием его электронную схему.
Перо излучает сигнал с частотой, зависящей от степени нажатия на наконечник и состояния кнопок, который воспринимается антенной. На основе этой частоты сигнальный процессор определяет состояние пера, а на основе амплитуды сигнала на разных катушках матрицы — его положение и наклон. Всё выглядит просто, но на коленке перо с нуля не сделать, чем производитель и пользуется, заряжая на них атомные цены — а куда Вы денетесь, если работать надо?
Антенна, как правило, делается из стеклотекстолита и непрозрачна для света, но LCD-матрица прозрачна для излучения антенны и пера, поэтому антенну можно разместить под LCD-матрицей, тем более что сама по себе антенна можеть быть тонкая — до 0,5 мм толщиной.
При работе с графическим планшетом одной из проблем является разнесение в пространстве пера и изображения — некоторым в такой ситуации сложно рисовать. Совмещение планшета с дисплеем эту проблему снимает.
В настольном исполнении такие устройства давно известны под торговой маркой Cintiq, в портативных устройствах технология тоже нашла своё применение под названием Wacom Penabled. Такие ноутбуки, как правило, можно определить по специфическому шарниру крышки, позволяющему вывернуть её в обратную сторону и опустить на клавиатуру экраном наружу.
Они время от времени попадаются на вторичном рынке в различной степени работоспособности. Расцвет технологии пришёлся на времена Pentium M/Core Duo, так что даже если девайс достанется живым — при 2-4 Гб оперативной памяти работать с современным ПО будет тяжело.
Как один из вариантов решения проблемы производительности, в Интернете предлагалось установить Linux и пробросить ввод и вывод на другой ПК через локальную сеть, но это не наш метод. Тем более что изображения на экране все равно нет, поэтому ноутбук можно смело разбирать.
Вот так выглядит с обратной стороны матрица с дигитайзером. Сплошной слой металла — одновременно отражатель, формирующий диаграмму направленности антенны, и экран, защищающий её от помех со стороны платы матрицы.
А вот так выглядит открытая сторона антенны. Хотя шаг проводников матрицы порядка 3-4 мм, её сигнальный процессор позволяет определять положение пера с точностью до 1/200 мм. Кстати, будете покупать такой девайс — не забудьте убедиться в наличии пера в комплекте. Перья от разных Penabled-ноутбуков хоть и взаимозаменяемы между собой, но отдельно стоят довольно негуманных денег даже на Ebay.
Контроллер антенны расположен на отдельной плате, соединённой с антенной прикленным печатным шлейфом, и прикрыт плёнкой.
Отклеим плёнку и присмотримся к плате поближе.
На ней распаяны две большие микросхемы, одна из которых — фирменный ASIC W8003, обеспечивающий обработку принятых сигналов. Он выполнен в корпусе BGA, все выводы спрятаны от глаз, нормального описания ни на плату в целом, ни на сам чип нету, но нашлась небольшая табличка, утверждающая, что дигитайзер умеет общаться с внешним миром по интерфейсам USB и UART.
А ещё нашлась табличка с описанием сигналов 14-контактного разъёма.
Забегая вперёд: в таблице есть ошибка — перепутаны контакты 9 и 10.
Находим в запасах плату фискальной памяти от кассового аппарата. Памяти на ней уже давно не осталось, но зато там есть стабилизатор напряжения на 3,3 вольта, на которое рассчитаны внутренние устройства ноутбука.
В родном шлейфе проводов к контактам USB нет — может, экономили порт на плате? В любом случае, берём тонкий провод МГТФ и паяемся прямо к плате — расстояние между выводами разъёма примерно 1 мм, паять несложно, есть шанс легко добиться желаемого.
Откладываем в сторону паяльник и пытаемся подключить конструкцию к USB-порту ПК — «Устройство не опознано».
Возможно, мы перепутали местами линии данных? Нет, их перемена местами тоже ничего не даёт.
Вторая микросхема на плате — микроконтроллер, и похоже, что именно он занимается инициализацией ASIC при подаче питания, так что интерфейс USB хоть и есть, но не работает — потому, что команды инициализации требуют работать исключительно с UART. Прошивки для него, естественно, нет. Да и описания — тоже.
Итак, мы имеем UART с 3В логическими уровнями. Может, нас выручит переходник USB-UART?
Нет, он нам не поможет. Пока ещё были в ходу графические планшеты с RS-232, пользователи установили, что они нормально работают только через переходник на строго определённом чипе. Но на этом проблемы не исчерпываются — нормальная поддержка планшетов с последовательным интерфейсом осталась только в Linux, в Windows она закончилась вместе с WinXP(начиная с Win7, драйвер для встроенного дигитайзера Wacom проверяет ID материнской платы по белому списку)
Продолжение поиска вывело на проект под названием Waxbee.
Изначально он предназначался для продления жизни планшетов с интерфейсом ADB.
Сам интерфейс был разработан фирмой Apple в 1986 году и предназначался для подключения низкоскоростных устройств ввода типа клавиатур и мышек. В теории он должен был обеспечивать поддержку цепочки длиной до 16 устройств(на практике получалось только 3) и холодный запуск ПК с клавиатуры.
Физически он состоял из четырёх проводов — два обеспечивали питание и заземление, по третьему передавались данные и тактовый сигнал от всех устройств, четвёртый фактически выводил за пределы системного блока линию PS_ON блока питания. Такой вот предок 1-Wire. Естественно, без недостатков тут не обошлось, и если с малой пропускной способностью шины можно было мириться, то короткое замыкание в цепи подключенных устройств пережигало предохранитель на материнской плате и у компьютера разом отваливались клавиатура и мышь. Тем не менее это решение продержалось в производстве больше 10 лет, пока не было заменено на USB — а периферийные устройства начали превращаться в тыкву.
Судя по всему, проект начался с подключения ADB-клавиатур к ПК: если интерфейсы AT и PS/2 электрически идентичны и взаимопреобразуются в любую сторону простым пассивным переходником, то у ADB потомков не осталось и без активного адаптера уже не обойтись. Адаптеры, как оказывается, довольно популярны — настолько, что производятся по крайней мере мелкосерийно.
Реализованы они изначально на основе отладочной платы Teensy 2.0, появившейся в 2009 году.
Она отличалась от набиравшей популярность Arduino двумя особенностями — увеличенным объёмом памяти (целых 32 кБ вместо 8-16!) и аппаратным USB, позволявшим сэкономить место в памяти, отказавшись от программной эмуляции, и просто увеличить надёжность работы устройства с ATmega32U4 вместо ATMega8/88/168. Так что если Вы видите проект самодельной клавиатуры — с большой вероятностью в нём будет использован именно этот микроконтроллер, и его главная ценность — умение работать как USB-HID устройство. Добро пожаловать в мир самодельных клавиатур, мышек, джойстиков и прочего!
Полезно знать: фирменный загрузчик Teensy занимает 512 байт памяти, загрузчики клонов — до 2560 байт, поэтому не исключена ситуация. когда готовая прошивка чужого проекта на основе оригинальной платы не поместится в памяти платы-клона.
Одним использованием библиотеки adb2usb дело не ограничилось, и теперь Waxbee может эмулировать USB-планшет на базе оборудования с различными последовательными интерфейсами — хоть RS-232, хоть ISDV4 — в исходниках имеется немало готовых конфигурационных шаблонов, на основе которых нужную прошивку для конвертера можно скомпилировать хоть сразу, хоть после их незначительной правки. Правда, на обычной плате Arduino работать не будет — ATmega32U4, ATMega8 и ATMega88/168/328 между собой программно несовместимы. Поэтому придётся раскошелиться на плату Arduino Micro Pro.
Плата приехала в почтовом пакете морковного цвета.
Сама она упакована ещё в антистатический защитный пакет — всё ж электронное устройство, как-никак.
Размеры платы 35х18 мм. Ещё с ней в пакете есть пара однорядных гребёнок на 12 контактов.
На нижней стороне платы никаких деталей нет.
Сравнение размеров с Arduino Pro Mini(справа).
Расположение выводов:
18 цифровых вывода могут работать как входами, так и выходами. Напряжение на выводах 5 или 3,3В в зависимости от версии платы, ток до 40мА на каждом. Есть последовательный интерфейс с выводами TX и RX; I2C интерфейс с выводами SDA и SCL; SPI интерфейс с выводами MISO, MOSI и SCK и 9 аналоговых входов A0-A3 и A6-A10. Доступны 5 каналов ШИМ на выводах 3, 5, 6, 9, 10.
Принципиальная электрическая схема:
Забегая немного вперёд: оба сигнальных светодиода, распаянных на плате, одного цвета — зелёного. Видимо, кто-то оптимизировал закупку комплектующих изделий, а теперь при беглом взгляде на плату сразу и не понять, какой из них светится.
Собственно сборка аппаратной части нашего конвертера несложна.
Если есть родной шлейф для подключения дигитайзера — лучше воспользоваться им. Хотя в крайнем случае можно и прямо к плате припаяться.
Выводы 1(USBGND), 11(GRD) и 14(GND) разъёма дигитайзера соединяем с выводом GND Arduino.
Вывод 9(TXD) соединяем с выводом RX1 Arduino.
Вывод 10(RXD) соединяем с выводом TX0 Arduino.
Вывод 13(VCC) соединяем с выходом стабилизатора напряжения на 3,3В, подключенного к выводу RAW Arduino.
Вывод 6(PDCT) — сигнал захвата пера — можно использовать для управления индикаторным светодиодом через ключ на транзисторе, а можно и не задействовать.
Остальные выводы разъёма дигитайзера не используются.
Вот так всё это выглядит в собранном виде.
Теперь дело за прошивкой.
Если Вы используете дигитайзер с диагональю 12,1 дюйма и соотношением сторон 4:3, то можно сразу использовать готовую прошивку.
Как ни странно, но среда разработки Arduino IDE не умеет работать с готовыми .hex-файлами, но скачать и поставить её всё равно придётся — ради драйверов USB-Serial, потому что без них Windows 7 работать с платой не будет:
Скачиваем, ставим, открываем диспетчер устройств:
Для заливки прошивки используем широко известную в узких кругах программу AVRDude. Она консольная, но это не страшно. Кстати, не тратьте зря время на утилиты типа XLoader или ARP Uploader — работать с ATMega32U4 они не умеют.
Скачиваем последнюю версию(старые не умеют работать c ATMega32U4), распаковываем для удобства в корневую папку диска(например, С:), туда же — скачанную прошивку.
Запускаем командную строку и набираем в ней команду:
Нет, клавишу Enter пока что не трогаем.
Смотрим в открытое окно диспетчера устройств, берём в руки пинцет/отвёртку и ненадолго замыкаем на плате Arduino контактные площадки GND и RST. Кнопки RESET на плате нет, её можно было бы напаять на проводах, но вряд ли она мне понадобится больше двух раз.
Микроконтроллер уйдёт на перезагрузку и после неё в первую очередь запустит прошитую в него программу загрузки основной прошивки через виртуальный COM-порт, отобразив его в диспетчере устройств.
Эта программа включает в себя таймер, который через некоторое время её завершит, если не начнется передача основной прошивки. На ожидание этой передачи отводится несколько секунд.
Просто запомним номер порта загрузчика, переключимся в окно консоли с AVRDude, поправим номер порта в командной строке, снова замыкаем металлическим предметом контакты на плате Arduino, снова ждём обнаружения загрузчика и вот сейчас нажимаем Enter.
При этом на плате загорятся и погаснут два зелёных светодиода.
Выдёргиваем кабель из USB-порта, вставляем его снова — Windows обнаруживает новое устройство.
Скачиваем legacy-драйвер Wacom, ставим, перезагружаемся.
В диспетчере задач появляется пара новых устройств:
а в панели управления — новый значок:
Откроем его. Как и обещалось, Arduino эмулирует планшет Wacom Intuos 2.
На этих вкладках можно настроить чувствительность пера и ластика, назначение кнопок…
… активные области планшета и дисплея и их взаимный маппинг.
В принципе, графический планшет практически готов. Осталось только поместить дигитайзер и его обвязку в корпус, который защитит их от механических воздействий. Простой текстолит в качестве материала корпуса вполне подойдёт — дигитайзер воспринимает перо на расстоянии до 14 мм от своей поверхности, так что текстолитовая пластина толщиной 1,5-2 мм в это ограничение вполне укладывается.
Как, впрочем, укладывается в него и LCD матрица, на которую дигитайзер теперь можно вернуть обратно.
Если она живая — к ней можно подключить плату управления и превратить её в LCD монитор:
Экспериментальный стенд перед включением:
Оно пробуждается!
Работает пока что в штатном режиме.
Накроем матрицу родной рамкой с защитным стеклом — и можно писать специальным пером прямо на экране:
Тест чувствительности к давлению:
Итак, на выходе мы получили примерный функциональный аналог интерактивного монитора Wacom Cintiq 15X — девайса хоть и не нового, но до сих пор пользующегося спросом — примерно за 10% от его стоимости.
С донором, конечно, не очень повезло, но тем не менее для редактирования фотографий и несложного рисования девайс вполне пригоден.
Сегодня мы взглянем поближе на плату на базе ATMega32U4, оживим с её помощью древний графический планшет и дадим возможность самодельному LCD монитору воспринимать написанное прямо на экране.
Добро пожаловать под кат.
В наше время самый распространенные сенсорные экраны — емкостные. Они достаточно дешевы, в отличие от резистивных — прочны, но с чувствительностью к силе нажатия у них как-то не задалось. В качестве замены мыши такое пригодно(особенно если на экране кнопки побольше нарисовать), но для работы с графикой, когда требуется имитация кисти, без электромагнитного пера не обойтись.
Эталоном таких устройств считают изделия от Wacom. Их сенсоры используют явлениие электромагнитного резонанса. Перо получает необходимую для работы энергию от самого сенсора, поэтому ему не нужны ни провода, ни элементы питания. В своё время фирма подсуетилась насчёт правильного патента и надолго закрепила свою монополию на безбатарейные перья, вынудив конкурентов утяжелять свои встроенными аккумуляторами. Ныне патент уже истёк, но планшеты с активными перьями всё ещё встречаются в продаже.
Как это работает?
Сенсором является антенна-матрица из множества приёмно-передающих катушек и магнитный отражатель, размещённый под ней. Антенна излучает электромагнитное поле с частотой 531 кГц, которое наводит ЭДС в катушке внутри пера и обеспечивает питанием его электронную схему.
Перо излучает сигнал с частотой, зависящей от степени нажатия на наконечник и состояния кнопок, который воспринимается антенной. На основе этой частоты сигнальный процессор определяет состояние пера, а на основе амплитуды сигнала на разных катушках матрицы — его положение и наклон. Всё выглядит просто, но на коленке перо с нуля не сделать, чем производитель и пользуется, заряжая на них атомные цены — а куда Вы денетесь, если работать надо?
Антенна, как правило, делается из стеклотекстолита и непрозрачна для света, но LCD-матрица прозрачна для излучения антенны и пера, поэтому антенну можно разместить под LCD-матрицей, тем более что сама по себе антенна можеть быть тонкая — до 0,5 мм толщиной.
При работе с графическим планшетом одной из проблем является разнесение в пространстве пера и изображения — некоторым в такой ситуации сложно рисовать. Совмещение планшета с дисплеем эту проблему снимает.
В настольном исполнении такие устройства давно известны под торговой маркой Cintiq, в портативных устройствах технология тоже нашла своё применение под названием Wacom Penabled. Такие ноутбуки, как правило, можно определить по специфическому шарниру крышки, позволяющему вывернуть её в обратную сторону и опустить на клавиатуру экраном наружу.
Они время от времени попадаются на вторичном рынке в различной степени работоспособности. Расцвет технологии пришёлся на времена Pentium M/Core Duo, так что даже если девайс достанется живым — при 2-4 Гб оперативной памяти работать с современным ПО будет тяжело.
Как один из вариантов решения проблемы производительности, в Интернете предлагалось установить Linux и пробросить ввод и вывод на другой ПК через локальную сеть, но это не наш метод. Тем более что изображения на экране все равно нет, поэтому ноутбук можно смело разбирать.
Вот так выглядит с обратной стороны матрица с дигитайзером. Сплошной слой металла — одновременно отражатель, формирующий диаграмму направленности антенны, и экран, защищающий её от помех со стороны платы матрицы.
А вот так выглядит открытая сторона антенны. Хотя шаг проводников матрицы порядка 3-4 мм, её сигнальный процессор позволяет определять положение пера с точностью до 1/200 мм. Кстати, будете покупать такой девайс — не забудьте убедиться в наличии пера в комплекте. Перья от разных Penabled-ноутбуков хоть и взаимозаменяемы между собой, но отдельно стоят довольно негуманных денег даже на Ebay.
Контроллер антенны расположен на отдельной плате, соединённой с антенной прикленным печатным шлейфом, и прикрыт плёнкой.
Отклеим плёнку и присмотримся к плате поближе.
На ней распаяны две большие микросхемы, одна из которых — фирменный ASIC W8003, обеспечивающий обработку принятых сигналов. Он выполнен в корпусе BGA, все выводы спрятаны от глаз, нормального описания ни на плату в целом, ни на сам чип нету, но нашлась небольшая табличка, утверждающая, что дигитайзер умеет общаться с внешним миром по интерфейсам USB и UART.
А ещё нашлась табличка с описанием сигналов 14-контактного разъёма.
Забегая вперёд: в таблице есть ошибка — перепутаны контакты 9 и 10.
Находим в запасах плату фискальной памяти от кассового аппарата. Памяти на ней уже давно не осталось, но зато там есть стабилизатор напряжения на 3,3 вольта, на которое рассчитаны внутренние устройства ноутбука.
В родном шлейфе проводов к контактам USB нет — может, экономили порт на плате? В любом случае, берём тонкий провод МГТФ и паяемся прямо к плате — расстояние между выводами разъёма примерно 1 мм, паять несложно, есть шанс легко добиться желаемого.
Откладываем в сторону паяльник и пытаемся подключить конструкцию к USB-порту ПК — «Устройство не опознано».
Возможно, мы перепутали местами линии данных? Нет, их перемена местами тоже ничего не даёт.
Вторая микросхема на плате — микроконтроллер, и похоже, что именно он занимается инициализацией ASIC при подаче питания, так что интерфейс USB хоть и есть, но не работает — потому, что команды инициализации требуют работать исключительно с UART. Прошивки для него, естественно, нет. Да и описания — тоже.
Итак, мы имеем UART с 3В логическими уровнями. Может, нас выручит переходник USB-UART?
Нет, он нам не поможет. Пока ещё были в ходу графические планшеты с RS-232, пользователи установили, что они нормально работают только через переходник на строго определённом чипе. Но на этом проблемы не исчерпываются — нормальная поддержка планшетов с последовательным интерфейсом осталась только в Linux, в Windows она закончилась вместе с WinXP(начиная с Win7, драйвер для встроенного дигитайзера Wacom проверяет ID материнской платы по белому списку)
Продолжение поиска вывело на проект под названием Waxbee.
Изначально он предназначался для продления жизни планшетов с интерфейсом ADB.
Сам интерфейс был разработан фирмой Apple в 1986 году и предназначался для подключения низкоскоростных устройств ввода типа клавиатур и мышек. В теории он должен был обеспечивать поддержку цепочки длиной до 16 устройств(на практике получалось только 3) и холодный запуск ПК с клавиатуры.
Физически он состоял из четырёх проводов — два обеспечивали питание и заземление, по третьему передавались данные и тактовый сигнал от всех устройств, четвёртый фактически выводил за пределы системного блока линию PS_ON блока питания. Такой вот предок 1-Wire. Естественно, без недостатков тут не обошлось, и если с малой пропускной способностью шины можно было мириться, то короткое замыкание в цепи подключенных устройств пережигало предохранитель на материнской плате и у компьютера разом отваливались клавиатура и мышь. Тем не менее это решение продержалось в производстве больше 10 лет, пока не было заменено на USB — а периферийные устройства начали превращаться в тыкву.
Судя по всему, проект начался с подключения ADB-клавиатур к ПК: если интерфейсы AT и PS/2 электрически идентичны и взаимопреобразуются в любую сторону простым пассивным переходником, то у ADB потомков не осталось и без активного адаптера уже не обойтись. Адаптеры, как оказывается, довольно популярны — настолько, что производятся по крайней мере мелкосерийно.
Реализованы они изначально на основе отладочной платы Teensy 2.0, появившейся в 2009 году.
Она отличалась от набиравшей популярность Arduino двумя особенностями — увеличенным объёмом памяти (целых 32 кБ вместо 8-16!) и аппаратным USB, позволявшим сэкономить место в памяти, отказавшись от программной эмуляции, и просто увеличить надёжность работы устройства с ATmega32U4 вместо ATMega8/88/168. Так что если Вы видите проект самодельной клавиатуры — с большой вероятностью в нём будет использован именно этот микроконтроллер, и его главная ценность — умение работать как USB-HID устройство. Добро пожаловать в мир самодельных клавиатур, мышек, джойстиков и прочего!
Полезно знать: фирменный загрузчик Teensy занимает 512 байт памяти, загрузчики клонов — до 2560 байт, поэтому не исключена ситуация. когда готовая прошивка чужого проекта на основе оригинальной платы не поместится в памяти платы-клона.
Одним использованием библиотеки adb2usb дело не ограничилось, и теперь Waxbee может эмулировать USB-планшет на базе оборудования с различными последовательными интерфейсами — хоть RS-232, хоть ISDV4 — в исходниках имеется немало готовых конфигурационных шаблонов, на основе которых нужную прошивку для конвертера можно скомпилировать хоть сразу, хоть после их незначительной правки. Правда, на обычной плате Arduino работать не будет — ATmega32U4, ATMega8 и ATMega88/168/328 между собой программно несовместимы. Поэтому придётся раскошелиться на плату Arduino Micro Pro.
Плата приехала в почтовом пакете морковного цвета.
Сама она упакована ещё в антистатический защитный пакет — всё ж электронное устройство, как-никак.
Размеры платы 35х18 мм. Ещё с ней в пакете есть пара однорядных гребёнок на 12 контактов.
На нижней стороне платы никаких деталей нет.
Сравнение размеров с Arduino Pro Mini(справа).
Расположение выводов:
18 цифровых вывода могут работать как входами, так и выходами. Напряжение на выводах 5 или 3,3В в зависимости от версии платы, ток до 40мА на каждом. Есть последовательный интерфейс с выводами TX и RX; I2C интерфейс с выводами SDA и SCL; SPI интерфейс с выводами MISO, MOSI и SCK и 9 аналоговых входов A0-A3 и A6-A10. Доступны 5 каналов ШИМ на выводах 3, 5, 6, 9, 10.
Принципиальная электрическая схема:
Забегая немного вперёд: оба сигнальных светодиода, распаянных на плате, одного цвета — зелёного. Видимо, кто-то оптимизировал закупку комплектующих изделий, а теперь при беглом взгляде на плату сразу и не понять, какой из них светится.
Собственно сборка аппаратной части нашего конвертера несложна.
Если есть родной шлейф для подключения дигитайзера — лучше воспользоваться им. Хотя в крайнем случае можно и прямо к плате припаяться.
Выводы 1(USBGND), 11(GRD) и 14(GND) разъёма дигитайзера соединяем с выводом GND Arduino.
Вывод 9(TXD) соединяем с выводом RX1 Arduino.
Вывод 10(RXD) соединяем с выводом TX0 Arduino.
Вывод 13(VCC) соединяем с выходом стабилизатора напряжения на 3,3В, подключенного к выводу RAW Arduino.
Вывод 6(PDCT) — сигнал захвата пера — можно использовать для управления индикаторным светодиодом через ключ на транзисторе, а можно и не задействовать.
Остальные выводы разъёма дигитайзера не используются.
Вот так всё это выглядит в собранном виде.
Теперь дело за прошивкой.
Если Вы используете дигитайзер с диагональю 12,1 дюйма и соотношением сторон 4:3, то можно сразу использовать готовую прошивку.
Как ни странно, но среда разработки Arduino IDE не умеет работать с готовыми .hex-файлами, но скачать и поставить её всё равно придётся — ради драйверов USB-Serial, потому что без них Windows 7 работать с платой не будет:
Скачиваем, ставим, открываем диспетчер устройств:
Для заливки прошивки используем широко известную в узких кругах программу AVRDude. Она консольная, но это не страшно. Кстати, не тратьте зря время на утилиты типа XLoader или ARP Uploader — работать с ATMega32U4 они не умеют.
Скачиваем последнюю версию(старые не умеют работать c ATMega32U4), распаковываем для удобства в корневую папку диска(например, С:), туда же — скачанную прошивку.
Запускаем командную строку и набираем в ней команду:
avrdude -p atmega32u4 -c avr109 -P COMx -b 57600 -D -V -v -U flash:w:SU-040-01X-V2.hex:i
Нет, клавишу Enter пока что не трогаем.
Смотрим в открытое окно диспетчера устройств, берём в руки пинцет/отвёртку и ненадолго замыкаем на плате Arduino контактные площадки GND и RST. Кнопки RESET на плате нет, её можно было бы напаять на проводах, но вряд ли она мне понадобится больше двух раз.
Микроконтроллер уйдёт на перезагрузку и после неё в первую очередь запустит прошитую в него программу загрузки основной прошивки через виртуальный COM-порт, отобразив его в диспетчере устройств.
Эта программа включает в себя таймер, который через некоторое время её завершит, если не начнется передача основной прошивки. На ожидание этой передачи отводится несколько секунд.
Просто запомним номер порта загрузчика, переключимся в окно консоли с AVRDude, поправим номер порта в командной строке, снова замыкаем металлическим предметом контакты на плате Arduino, снова ждём обнаружения загрузчика и вот сейчас нажимаем Enter.
При этом на плате загорятся и погаснут два зелёных светодиода.
Выдёргиваем кабель из USB-порта, вставляем его снова — Windows обнаруживает новое устройство.
Скачиваем legacy-драйвер Wacom, ставим, перезагружаемся.
В диспетчере задач появляется пара новых устройств:
а в панели управления — новый значок:
Откроем его. Как и обещалось, Arduino эмулирует планшет Wacom Intuos 2.
На этих вкладках можно настроить чувствительность пера и ластика, назначение кнопок…
… активные области планшета и дисплея и их взаимный маппинг.
Если дигитайзер не 12,1 дюйма 4:3, а 12,1 дюйма 16:10
1. Скачайте Waxbee(Для работы требуется Java)
2. Запустите командную строку, перейдите в папку с файлом waxbee.jar, и выполните команду
3. Выберите пункт меню File-New from Template, выберите в диалоговом окне файл Penenabled ISDV4 to Intuos2 12x18.tmpl.txt
4. Выберите пункт меню File-Raw Config Editing
5. Введите значения с картинки:
6. Выберите пункт меню Firmware-Generate firmware .hex file
7. Загрузите полученный .hex-файл в Arduino как описано выше.
2. Запустите командную строку, перейдите в папку с файлом waxbee.jar, и выполните команду
javaw -jar waxbee.jar
3. Выберите пункт меню File-New from Template, выберите в диалоговом окне файл Penenabled ISDV4 to Intuos2 12x18.tmpl.txt
4. Выберите пункт меню File-Raw Config Editing
5. Введите значения с картинки:
6. Выберите пункт меню Firmware-Generate firmware .hex file
7. Загрузите полученный .hex-файл в Arduino как описано выше.
Если дигитайзер не 12,1 дюйма 4:3 и не 12,1 дюйма 16:10
1. Скачайте и установите драйвер от PJRC.
2. Загрузите в Arduino прошивку USB-Serial по методу, описанному выше.
3. Уточните в диспетчере устройств номер нового COM-порта.
4. Установите и запустите программу RealTerm
5. В RealTerm выберите Hex [Space] под «Display», нажмите «Change». Выберите вкладку Port, выберите на ней соответствующий номер порта и скорость передачи 19200 в соответствующих выпадающих списках. Нажмите «Change», затем «Open».
6. Введите * в окне терминала. Затем должен последовать ответ, начинающийся с C0, например, C0 30 00 24 00 7F 01 00 00 00 62
Если ответа нет:
— неверно выставлена скорость передачи( для дигитайзера с сенсорным экраном обычно 38400 бод, для обычного 19200 бод)
— дигитайзер все еще нуждается в сбросе (например, SU-040-X01 от X41t). На короткое время подключите контакт 12 на разъеме дигитайзера к земле(контакт 14). При отсутствии эффекта переключитесь на 38400 бод (не забудьте нажать «Change») и посмотрите, сможете ли вы получить ID-string с помощью *.
— перепутаны провода RX/TX. Проверьте правильность сборки.
— дигитайзер неисправен. Проверьте наличие напряжения на выводе 6 при поднесенном пере. При необходимости замените дигитайзер.
7. Дешифруйте ID-string (о её структуре здесь), всего используется 16 битов для Max_X и Max_Y. В примере:
8. Запустите Waxbee, как описано выше, отредактируйте файл Penenabled ISDV4 to Intuos2 12x18.tmpl.txt, используя полученные при расшифровке ID-string числовые константы.
9. Создайте .hex-файл прошивки и загрузите его в Arduino, как указано выше.
2. Загрузите в Arduino прошивку USB-Serial по методу, описанному выше.
3. Уточните в диспетчере устройств номер нового COM-порта.
4. Установите и запустите программу RealTerm
5. В RealTerm выберите Hex [Space] под «Display», нажмите «Change». Выберите вкладку Port, выберите на ней соответствующий номер порта и скорость передачи 19200 в соответствующих выпадающих списках. Нажмите «Change», затем «Open».
6. Введите * в окне терминала. Затем должен последовать ответ, начинающийся с C0, например, C0 30 00 24 00 7F 01 00 00 00 62
Если ответа нет:
— неверно выставлена скорость передачи( для дигитайзера с сенсорным экраном обычно 38400 бод, для обычного 19200 бод)
— дигитайзер все еще нуждается в сбросе (например, SU-040-X01 от X41t). На короткое время подключите контакт 12 на разъеме дигитайзера к земле(контакт 14). При отсутствии эффекта переключитесь на 38400 бод (не забудьте нажать «Change») и посмотрите, сможете ли вы получить ID-string с помощью *.
— перепутаны провода RX/TX. Проверьте правильность сборки.
— дигитайзер неисправен. Проверьте наличие напряжения на выводе 6 при поднесенном пере. При необходимости замените дигитайзер.
7. Дешифруйте ID-string (о её структуре здесь), всего используется 16 битов для Max_X и Max_Y. В примере:
C0 30 00 24 00 7F 01 00 00 00 62
1100 0000 0011 0000 000 0000 0 0 010 0100 0 000 0000 0 111 1111 0 00 0 0 001 0000 0000 0000 0000 0000 0110 0010
Max_X: 011 0000 000 0000 00 Max_Y: 010 0100 000 0000 00 Мax_Pressure: 001 111 1111
Max_X = 24576 Маx_Y = 18432 Мax_Pressure = 255
8. Запустите Waxbee, как описано выше, отредактируйте файл Penenabled ISDV4 to Intuos2 12x18.tmpl.txt, используя полученные при расшифровке ID-string числовые константы.
9. Создайте .hex-файл прошивки и загрузите его в Arduino, как указано выше.
В принципе, графический планшет практически готов. Осталось только поместить дигитайзер и его обвязку в корпус, который защитит их от механических воздействий. Простой текстолит в качестве материала корпуса вполне подойдёт — дигитайзер воспринимает перо на расстоянии до 14 мм от своей поверхности, так что текстолитовая пластина толщиной 1,5-2 мм в это ограничение вполне укладывается.
Как, впрочем, укладывается в него и LCD матрица, на которую дигитайзер теперь можно вернуть обратно.
Если она живая — к ней можно подключить плату управления и превратить её в LCD монитор:
Экспериментальный стенд перед включением:
Оно пробуждается!
Работает пока что в штатном режиме.
Накроем матрицу родной рамкой с защитным стеклом — и можно писать специальным пером прямо на экране:
Тест чувствительности к давлению:
Итак, на выходе мы получили примерный функциональный аналог интерактивного монитора Wacom Cintiq 15X — девайса хоть и не нового, но до сих пор пользующегося спросом — примерно за 10% от его стоимости.
С донором, конечно, не очень повезло, но тем не менее для редактирования фотографий и несложного рисования девайс вполне пригоден.
Самые обсуждаемые обзоры
+72 |
3423
141
|
+51 |
3642
66
|
+31 |
2617
50
|
+39 |
3008
42
|
+56 |
2065
37
|
Извини, случайно поставил дизлайк в телефоне. Убрать не дает
Я так понимаю, необходимо и достаточно адаптера ттл-юсб и штатной программы.
касательно статьи. чуть побольше размером планшеты для рисования стоят нехило, с монитором сзади еще больше, и выбора нет почти. крч там самоделки рулят. сам монитор какаха. ну или сейчас можно найти с бОльшей частотой, бОльшим разрешением и тд донора для переделки. а видел на просторах инета самоделки и совсем большого размера, когда несколько листов А4. а за ними еще и монитор. руки так чесались.
PS. автор, объясни, что ты имел ввиду
а то в тексте то-ли нету, то-ли не увидел…
И что в таком случае означало бы «повезло»?
Так что только если на разборе попадётся, и то размер неходовой.
А б.у. 4:3 даже у меня есть, но с другой диагональю, хоть я и не занимаюсь ремонтами. Из 17" сделал родителям телевизор. Из 9.7" от iPad1 тоже телевизор думаю сделать. А 2 шт 14.1" хоть выкидывай — цветопередача и углы не очень. Вобщем неторопясь, я думаю можно найти недорого любую диагональ.
Простой пример: ноутбук и планшет Intuos 4 не воспринимают перья друг друга, Intuos 5 отзывается на перо Intuos 4, но не наоборот, и так далее.
machollywood.com/blogs/news/wacom-pen-compatibility — статья о совместимости и взаимозаменяемости.
Разъём там 10-контактный, 1 вывод — +3,3в, 2 — RXD, 3 — TXD, 6 — GND.
Хотя, если работает, то нехай себе.
Вот это да, это интересно. Причем научившись делать такие вещи можно спокойно начинать поиски работы с годовой зарплатой 200k+ в долларах — на таких специалистов сейчас очень большой спрос, их не хватает.
Год назад тоже думал насчет монитора с дигитайзером для жены. Самоделки отмёл сразу, поскольку когда-то занимался изготовлением и ремонтом киосков и пос-систем и в курсе, что к чему. Ваком совершенно отмороженный в плане цены, проще доплатить и взять ноут с дигитайзером, но нужен был большой экран. В итоге не стал заморачиваться и открыл для себя на Али Huion, у которого тоже есть мониторы с пассивными перьями по весьма гуманной цене. Кстати, с ним заработал стилус самсунг s-pen — даже кнопку отрабатывает.
Планшет PTK-1240 там можно найти за 30 долларов(и потом заплатить ещё 130 за доставку). Там в рабочее поле влезает 21,5" монитор.
Попробовал — не нашел. 800-900 долларов с доставкой.
Резистивные матрицы не распознают силу нажатия — а она требуется от монитора с дигитайзером, наверное, в 90% случаях. Для самодельного монитора с дигитайзером не нужно резистивное стекло. Там достаточно просто тонкого калёного. Точность позиционирования у самодельного МД примерно такая же, как у планшета Wacom, ставшего донором платы-антенны(немного падает из-за помех от матрицы). Это если полным комплектом брать. Без пера — дешевле.
Прямо сейчас на Авито висит парочка таких за 10 тыр. Месяц назад продавали за 4 тыр, но без стилуса.
Не ставилась задача как у вас, распотрошить индуктивную подложку и засунуть ее под обычную матрицу — как в силу неосведомленности, так и в силу сложности. Все как-то пальцетыки конструировали, антивандальные в том числе, посему некая зашоренность присутствует.
Я писал про резистивные. Только к позифлексам претензий не было, у китайцев уже через месяц погрешность плюс-минус километр. Для пальца или ластика пофиг, а стилус — велкам отстучать 9 точек.
Те которые есть, стоят как…
НО в чем вопрос то, они вроде usb или нужно приставочный?
Toshiba Portege M200/M400 — 12.1" 1400x1050, M700/M780 — 12.1" 1280x800, Tecra M4 — 14.1" 1400x1050, M7 — 1400x900.
Во-вторых, экран в обзоре был вообще наглухо севший — инверторы в защиту уходили, поэтому его пришлось переделывать под LED подсветку.
p.s. i soldered straight to the pcb since I broke the 14 pin LVDS cable. Here's a picture of where I soldered on if anyone wants to know: