Nfc ntag213 что это
Прошёл год после прошлой публикации, и мне часто задают вопрос, что изменилось с тех пор. Если кратко, то был произведён переход на чипы Ntag, сделаны небольшие изменения в схеме для обеспечения лучшей чувствительности, громкости сигнала и корректного хода часов, создано программное обеспечение для работы с системой. В целом, система стабилизировалась и готова для воспроизведения и использования. Более подробно ниже.
Прежде всего, расскажу про RFID чипы, почему был сделан переход в сторону Ntag. Напомню, что память Mifare Classic 1K содержит 1024 байт, из которых доступны для хранения информации 752 байта. Структура памяти разбита на 16 блоков, которые содержат по 4 страницы из 16 байт, одна из которых зарезервирована для шифрования. Если использовать в качестве служебной одну страницу, то ещё оставалось 46 страниц для записи отметок.
Один из возможных вариантов – использовать чипы Mifare 4K, структура которых отличается от 1К только вчетверо большим объемом памяти. Но такие чипы и подороже и длительность очистки, отметки с их использованием возросла бы. Другой вариант – использовать чипы серии Ntag (213/215/216). Структура памяти чипов Ntag довольно проста – память разбита на страницы по 4 байта, первые 4 и последние 5 страниц зарезервированы под хранение служебной информации, остальные можно использовать. Чипы серии Ntag различаются объемом памяти, у Ntag213 свободно для использования 36 страниц (144 байта), у Ntag215 – 126 страниц (504 байта), у Ntag216 – 222 страницы (888 байт). Поддержку всех чипов данной серии, в итоге, я и реализовал, хотя оптимальными можно считать Ntag215, памяти которых хватает на 120 отметок, а цена при этом довольно низкая (порядка 0.2$ за чип в виде наклейки или 0.4$ в виде брелка). Также по совету SFR решил отказаться от хранения критически важной информации – номера последней свободной страницы в пользу её бинарного поиска. Это увеличило время отметки, но повысило надежность работы.
Использование Ntag позволило решить вопрос с безопасной записью большого числа отметок на чип, однако возникла другая проблема. Чипы Ntag требуют большей мощности передатчика чем Mifare при той же площади антенны, и чипы в виде брелков, в которых антенна порядка 2 см^2, могут плохо срабатывать на модуле RC522 в стандартной комплектации. Решением проблемы оказалось перепайка индуктивностей на модуле на более мощные. При этом дальность срабатывания значительно повысилась, для Ntag чипов до 2 см, а для Mifare до 3 см. Но некоторые модули из-за такой перепайки стали работать плохо: запись чипов происходила только при определенном и довольно непредсказуемом диапазоне расстояний от передающей антенны. Пришлось залезть в ардуиновскую библиотеку RC522 и найти там параметр gain, который отвечает за мощность антенны, его правка для отдельных станций решила проблему. Также освоил ручное изготовление чипов на браслет из наклеек. В продаже на алибабе есть уже готовые и красивые, но площадь антенны у них почти в два раза меньше, отметка проходит менее стабильно. Отмечу также, что поддержку Mifare 1K чипов я оставил, с ними можно работать, но для этого нужно использовать отдельные прошивки, а емкость чипов ограничена 42 отметками, зато они идут в комплекте с RC522 модулями.
Ещё одна проблема, которую пришлось решать в ходе разработки – некорректный ход часов. В части станций часы начинали отставать или спешить вплоть до 5 минут в сутки. Долго не мог понять в чем причина, потом обнаружил, что глючат только станции с печатной платой, выполненной на заводе, тогда как на вытравленных вручную все работает нормально. Задумался с чем это может быть связано. На вытравленных вручную довольно толстые дорожки из-за их обильного лужения, меньше сопротивление. Оказалось, что конденсатора на выходе со стабилизатора не хватает для развязки питания часов на тонких заводских дорожках. Поставил ещё один конденсатор вплотную к часам, и проблема, большей частью, разрешилась. Небольшая часть часов по-прежнему сбоит, но это я уже связываю с браком дешевых часов с али, нужно искать надежных поставщиков.
Ну и последнее изменение в схеме – усиление звукового сигнала. Ранее контроль и питание пищалки в схеме осуществлялось с ножки микроконтроллера, поэтому было довольно ограниченным по мощности. Теперь питание идёт напрямую от батарей, а контроль через транзистор, что существенно усилило громкость сигнала. Все эти изменения теперь учтены и внесены в Gerber файлы, а я же вручную переделывал порядка 40 станций, пришлось расковыривать компаунд, резать дорожки, вешать транзистор на проводах, не обошлось без поломанных станций.
Из-за перехода на другие чипы прошивку базовых станций пришлось существенно изменить, но принцип и логика работы, по большей части, осталась прежней. Те же режимы энергосбережения, сна, работы, настройка с помощью мастер-чипов. А вот прошивку станции сопряжения переработал полностью. Предыдущий протокол связи, когда в COM-порт сыпались данные сплошным потоком, показался уязвимым: пропущенный байт, и все данные превращаются в тыкву. Адаптировать к уже имеющимся протоколам передачи данных показалось скучным, поэтому изобрел свой велосипед.
Передача и получение информации происходит последовательно с помощью передачи пакетов до 32 байт. Если передаваемые данные не помещаются в пакет, то передача производится последовательной пересылкой пакетов. Пакет начинается со стартового байта 0xFE, далее идет номер команды, длинна пакета, данные, и в конце контрольная сумма. Команды проходят только при верном значении контрольной суммы и стартовых байтов. Довольно просто и достаточно надежно.
Связь была налажена, но требовалась написание нормального программного обеспечения для компьютера, мои поделки на Processing для этого не годились. За это взялся Семён Якимов, который создал модуль на Python для работы с системой, за что ему большая благодарность. Модуль позволяет связываться со станцией сопряжения, передавать и получать данные в удобном формате. Уже после я освоил в первом приближении Python и написал на основе данного модуля и PyQt простенькое GUI приложение, которое можно использовать для настройки системы, а также для сбора данных с чипов в виде JSON файла. Ну а далее данные можно обрабатывать с помощью небольших скриптов для соревнований с самыми разными условиями и правилами, выдавать в удобном виде (туристическое ориентирование, рогейн). Но, все равно, это подразумевает некоторые навыки, и счастье было бы неполным, если бы не разработчики программы SportOrg, которые добавили поддержку Sportiduino (помимо Sportident и SFR). Программа активно развивается и много что умеет для судейства стартов по спортивному ориентированию.
Заключение
Таким образом, на данный момент есть стабильно работающее железо и софт. Считаю, что цель затеи достигнута: появилась дешевая система электронной отметки. Что-то изменять в рамках данной схемы не собираюсь, разве что, если найдется какой-то баг. Система отметки развивалась и прошла испытания уже на большом числе различных соревнований: ориентирование, рогейн, марш-бросок, трейл, туристические этапы. Помимо меня её используют несколько людей в разных местах. Кто-то воспроизвёл систему, кто-то внёс туда дополнения, например, радиомодуль или использование литиевых батарей и Mifare чипов как основных.
Разработка является открытой и носит некоммерческий характер, лицензия GNU GPLv3. Любой может свободно её скопировать, воспроизвести, изменить и использовать. За последний год мне пришло достаточно много вопросов делаю ли я на продажу станции. Нет, этим мне заниматься не хочется. С другой стороны, я не против, если кто-нибудь восполнит эту нишу. Я же только готов дать советы по сборке и использованию, благо там все довольно просто.
Проект доступен на гитхабе, там же расположены схемы, инструкции и другой полезный материал. Благодарю за внимание.
Принцип работы
Просто опускаете телефон на:
- Тумбочку и, тем самым даёте команду — переключить телефон в бесшумный режим, включить обновление, синхронизацию и будильник.
- Рабочий стол и запускаете список дел, и приятную музыку в наушниках.
- Автомобильный держатель — включается навигатор.
Таких сценариев достаточно. NFC метка является якорем, облегчающим подобную автоматизацию. Небольшой чип, с антенной в форм-факторе наклейки, который позволяет записать сценарий, информацию и, в последствии, воспроизвести его на читающем устройстве.
Благодаря этому становятся возможны — визитка, открывающая в браузере страницу портфолио, наклейка на мебель с само-вводящимся паролем Wi-Fi, транспортный билет и бесконтактные карты и ключи.
Это возможность записать любое действие ассоциированное с местом и запускать его выполнение просто считав метку. В процессе считывания смартфон получает текст или инструкции и запускает выполнение сценария.
Устройство и стандарты
NFC является частным случаем RFID , это открытый протокол радиосвязи на частоте 13,56 МГц.
Метка состоит из чипа, соединённого с антенной, антенна является одновременно источником питания. Ёмкость памяти разнится от 50 байт до 2-4 Кбайта , скорость обмена от 100 Кбит/с что обеспечивает очень быстрое считывание. Дальность связи до 10 см.
В зависимости от реализации метка может быть с жёсткой или мягкой (бумага, пластик) основой. Многие белые метки с мягкой основой пригодны для печати на них принтером. Жёсткие метки могут быть выполнены в формате брелока.
Метки предполагающие наклеивание на металлическую поверхность имеют нижний слой из ферритовой фольги. Использование обычной метки в таких условиях сильно снизит расстояние связи.
Метка способна на: чтение, запись информации; эмуляцию платёжной карты или RFID метки; и двусторонний обмен данными.
Виды чипов NFC меток
Чип определяет как базовые свойства метки, так и, удобство работы с ней. Как и в любом другом открытом стандарте конкретные реализации несколько разнятся и нужно учитывать, что не все устройства могут понимать некоторые чипы.
Где купить NFC метку и как её использовать
С покупкой метки вопросов не возникает. По запросу в Гугле , Яндекс Маркете, али экспресс множество приложений по цене от 50 рублей.
Для использования понадобится приложение в телефон удобный вариант на андроид NFC Tools и NFC Tasks . С помощью приложения можно записать в метку, как сценарий действий так и просто текст.
Память метки перезаписываемая и в случае необходимости вы всегда сможете изменить записанные данные.
При записи метки для множества устройств стоит учитывать разную реализацию взаимодействия производителями.
Метка на двери с текстом “ключ под ковриком”, скорее всего, одинаково считается на любом устройстве, а вот, например, подключение к Wi-Fi сети на андроид и iPhone отработает по-разному, яблоко предложит самостоятельно ввести пароль.
Выводы
NFC метки являются удобным, недорогим средством автоматизации рутинных действий. При выборе метки стоит учитывать объём памяти, реализацию вендором работы с этой моделью чипа, отличия в позволенных действиях для iPhone , тип поверхности для наклеивания метки.
Та же самая история, как с эрой появления возможности фотографировать телефоном. Пока телефон этого не умел (и еще период, пока телефон делал это совсем плохо) фотографов было мало, а как настала эра смартфонов, то каждый первый его и использует, и даже не думает покупать себе "мыльницу", потому что удобно и под рукой. RFID метки то же уже давно применимы, я помню собирал ридер карточек, но дело на том и встало — не нашлось применения. А вот купил себе смартфон с поддержкой NFC и применение нашлось. NFC отлично подходит для маркировки запасов радиодеталей. Сама наклейка — метка мала, телефон всегда под рукой, что еще нужно для счастья?
Купил наклеек ленту:
Брал на алиэкспресс, ссылку давать не буду (они порой умирают), ищется по слову "NFC sticker" там их уйма. Отличаются они по размеру памяти. Чем более емкая, тем более дорогая. У меня наклейки ISO14443A 13.56 МГц на чипе Ntag213 от NXP Semiconductors, емкостью в 144 байта или оно же 144 буквы, обошлась ценою 7 рублей 60 копеек за наклейку. С виду обычная круглая наклейка, на просвет видна начинка:
Для работы с этими чипами есть на гугловском плэй маркете софт от производителя чипов NXP под названием "TagWriter" его и использовал:
Метки можно читать, стирать, писать и ставить защиту, так же можно делать свою базу стикеров с данными. Это на первом скриншоте. На втором видно чтение пустой метки -137 байт . Можно создавать много форматов типа наклеек, я выбрал гиперссылку на сайт с именем — третий скрин. Далее нужно приложить смартфон к метке и данные запишутся на метку. Ставить защиту не стал — нет необходимости. Теперь достаточно поднести телефон к метке и автоматически откроется ссылка к примеру на сайт магазина или даташит
NFC-метки получают всё большую популярность. Тем не менее, многие люди до сих пор не знают всех их преимуществ.
Сейчас многие смартфоны оснащаются активным NFC-чипом. Он позволяет сделать использование устройства чуть-чуть удобнее. Особенно если у владельца устройства имеется набор NFC-меток.
Конструкция и предназначение меток
Преимущество технологии NFC в том, что она может быть заключена как в активном чипе, так и в пассивной метке. Для работы последней не требуется энергия, о регулярной подзарядке можно забыть. При этом NFC-метки имеют минимальные размеры, что позволяет им находиться даже в каком-нибудь брелке. По сути каждая такая метка представляет собой маленькую антенну толщиной с бумажный лист. Её диаметр сравним с 5-рублевой монетой. Обмен данными занимает 0,1 с. Для этого к метке нужно приложить смартфон так, чтобы воздушный промежуток не превышал 5 см. Точнее говоря, расстояние измеряется между чипом и меткой — первый обычно находится где-то в области аккумулятора устройства.
Использование NFC-меток может быть в самых разных целях. Чаще всего их можно встретить в банковских картах. В таком случае метка применяется для бесконтактной оплаты — нужно лишь убедиться, что это поддерживает терминал. Это существенно ускоряет процесс оплаты, ведь в большинстве случаев от вас не потребуют ввода пин-кода.
Также NFC-метки продаются в виде отдельных аксессуаров. Они могут класться на стол, либо подвешиваться к связке ключей. Такие метки используются для управления «умным домом». А ещё с их помощью можно заставить смартфон автоматически переходить в определенный режим работы. Например, метка может находиться на торпеде автомобиля. В таком случае прикосновение к ней смартфона включит Bluetooth, после чего водитель будет общаться со звонящими посредством беспроводной гарнитуры. И не обязательно должно быть запрограммировано лишь одно действие. Помимо Bluetooth, может включиться любимая радиостанция, а также запуститься GPS-навигатор. Словом, всё зависит от фантазии пользователя!
Где купить NFC-метки?
Если вас интересуют метки в виде наклеек, которые использовать проще всего, то для этого придется посетить AliExpress. Именно здесь их выбор больше всего. Например, вы можете приобрести набор из десяти разных наклеек Ntag213 — стоимость такого комплекта не превышает 220 рублей.
Вы спокойно можете покупать NFC-метки от разных производителей. На их работе это никак не отразится, ведь ими используется один протокол. Фактически друг от друга такие изделия отличаются лишь формой и изображенным рисунком.
Если вам хватит шести меток, то предлагаем ознакомиться с несколько усечённым набором от AnyNFC. Однако его покупка обойдется даже дороже — за комплект из шести стикеров стоит 312 рублей. Но зато эти наклейки выполнены на более плотной бумаге, повредить их заметно сложнее.
Рассмотренные выше варианты имеют специфические рисунки. Если же вы вознамерились запрограммировать какие-то необычные команды, то вам нужны стикеры без всяких домиков, самолетов и прочих изображений. Например, 6 разноцветных наклеек, продающиеся примерно за 83 рубля (без учета доставки) располагают лишь логотипом беспроводной технологии NFC. При использовании таких стикеров вы будете ориентироваться на их цвет и местоположение.
Существует и ещё более упрощенный вариант. Вы можете купить 10 меток без рисунков. Это будут упомянутые в самом начале статьи тоненькие антенны. Далее вы можете своими руками изготовить какое-либо изображение, нанеся его на антенну, превратив её в полноценную NFC-метку. Проще всего для этой цели использовать принтер и самоклеящуюся бумагу.
Но не всегда требуется метка в виде стикера. В некоторых случаях она должна быть выполнена в виде аксессуара, который крепился бы к связке с ключами. Тогда необходима покупка набора из брелков NTAG215. Антенны в них заключены внутрь пластикового корпуса. К ключам брелок крепится при помощи металлического кольца. На корпус можно наклеить любое нужное вам изображение.
Как записать NFC-метку?
Многие пользователи считают, что запись NFC-меток — это удел профессионалов. А без соответствующих команд такие изделия являются бесполезными — прикосновение к ним не будет вызывать никаких действий. Как же запрограммировать ту или иную команду, используя смартфон на базе Android? Неужто это действительно сложно? Спешим вас порадовать, всё намного легче, чем вы думаете.
Записать то или иное действие, которое будет совершаться смартфоном после прикосновения к NFC-метке, помогает специальная программа. Подобные приложения легко находятся в Google Play. Мы рекомендуем установить на свой девайс NFC Tools и NFC Tasks. Их интерфейс выполнен на английском языке. Но для работы с этими программами вполне хватает даже базовых знаний языка. В крайнем случае, можно воспользоваться онлайн-переводчиком.
Работать, например, с NFC Tools очень просто. Достаточно перейти во вкладку «Tasks», после чего остается лишь выбрать задачу, которую будет выполнять смартфон при его поднесении к конкретной NFC-метке. И не забудьте затем прикоснуться к стикеру или брелку.
Само собой, NFC-связь должна быть активирована в настройках устройства. Подробнее об использовании технологии NFC читайте в отдельной статье.
Аналогичным образом устроены практически все программы, служащие для связи с NFC-метками. Какие-то предлагают на выбор простые команды. Другие — более сложные и составные. Не забывайте, что не все они являются бесплатными. Однако и дорогими такие приложения не бывают.
Подведение итогов
Можно смело заявить, что NFC-метки являются очень полезными. Они могут автоматизировать действия смартфона. Также такие метки можно похвалить за универсальность — какие именно команды будет выполнять девайс, зависит только от вас. Словом, NFC-метки делают использование телефона более удобным.
Читайте также: