Оглавление:
- Шаг 1. Соберите материал
- Шаг 2. Используйте потенциометр для регулировки светодиода RGB
- Шаг 3. Интегрируйте NFC
- Шаг 4: Возможные адаптации
Видео: Сохранение и восстановление предустановленных значений с помощью NFC (TfCD): 4 шага
2024 Автор: John Day | [email protected]. Последнее изменение: 2024-01-30 11:52
Мы хотим проверить, как это работает, чтобы настроить определенное значение или настройку, а затем вызвать эту настройку. В этом эксперименте мы использовали тег NFC для чтения и сохранения значения на нем. Позже тег можно отсканировать еще раз и отправить значение обратно для восстановления определенной настройки. Для имитации взаимодействия мы использовали Arduino Uno в качестве контроллера и светодиодное кольцо RGB в качестве регулируемой части. С помощью потенциометра можно установить оттенок RGB. Связь между Arduino и тегом NFC была настроена с помощью щита NFC.
(Этот проект был упражнением для Делфтского технического университета, Интегрированное проектирование продуктов, курс: TfCD)
Шаг 1. Соберите материал
Для этого проекта мы использовали следующий материал:
- Arduino uno - NFC экран и тег (https://www.elecrow.com/wiki/index.php?title=NFC_Shield) - Mokugi t-WS2812B-8LED - Потенциометр (10 3B 42 5V) - Переключатель - резистор 10 кОм - (Макет)
Шаг 2. Используйте потенциометр для регулировки светодиода RGB
Сначала убедитесь, что светодиод, с которым вы работаете, функционирует, запустив другой тестовый код. Затем вы можете подключить потенциометр для регулировки RGB светодиода. Для этого соберите схему, как показано на картинке. Подключите к источнику питания (5 В) и земле и подключите потенциометр к контакту A0.
Если вы хотите увеличить модель и позже сохранить несколько различных значений, вы уже можете использовать другие потенциометры на этом этапе.
Код этого теста также прилагается. Чтобы код заработал, вам необходимо скачать библиотеку Adafruit_NeoPixel.h.
Мы смешиваем оттенки RGB-светодиода следующим образом: мы выбрали постоянное включение красного цвета и отрегулировали его в сторону пурпурного путем добавления синего. Если потенциометр высокий, синий полностью включен, когда он низкий, синий выключен. сопоставляем показания потметра:
недействительным ReadPot () {val = analogRead (Pot); val = карта (val, 0, 1023, 0, 255);
Чтобы избежать дрейфа входного значения потенциометра, мы изменяем новое значение синего светодиода только тогда, когда разница между текущим и предыдущим значением потенциометра достаточно велика:
int diff = abs (val-oldVal);
если (разность> ДОПУСК) {ChangeLED ();
Шаг 3. Интегрируйте NFC
Следующим шагом будет интеграция NFC. Сначала подключите экран NFC к Arduino.
Также добавьте переключатель, как показано на фотографиях. Переключатель используется для переключения между чтением и записью в тег NFC.
Загрузите библиотеку PN532.h для щита NFC. Прилагаемый код представляет собой адаптацию примеров кодов, представленных в библиотеке. Он изменяется таким образом, что передается значение RGB светодиода.
Вы также можете сначала протестировать только чтение или запись с двумя кодами, которые прилагаются отдельно.
Пояснение окончательного кода
Сначала инициализируются все используемые переменные.
Затем в настройке void настраивается соединение nfc.
Пустой цикл начинается с чтения состояния переключателя.
Случай 0 - это когда кнопка находится в ВЫСОКОМ состоянии. В этом случае сначала вызывается функция Reading (). Это считывает значение RGB, сохраненное в блоке 8 тега NFC, на первое место массива (Blue = block [0];). Затем вызывается функция ChangeLEDRead (), которая изменяет оттенок светодиода на значение, которое только что было считано из тега NFC.
Случай 1 - состояние кнопки НИЗКОЕ. В этом случае сначала вызывается функция ReadPot (), что означает, что теперь вы можете вручную регулировать оттенок светодиодов с помощью потенциометра. Этот вход от потенциометра затем отображается на значение от 0 до 255. Функция ChangeLEDPot () затем управляет цветом светодиода, используя вход от потенциометра. В этом случае также вызывается функция Writing (). Это гарантирует, что как только метка NFC будет помещена близко к щиту, текущее значение синего цвета будет записано на нем на первом месте блока 8.
Шаг 4: Возможные адаптации
Тот же принцип может использоваться и в других случаях и не ограничивается только NFC. Существует множество возможных реализаций, в которых вы хотите настроить определенные значения в соответствии с вашими предпочтениями, сохранить их и восстановить свои личные настройки, а затем снова в более поздний момент.
Подумайте, например, об общем рабочем месте, где вы регулируете высоту своего стула, угол наклона спинки и высоту стола в соответствии с вашими личными предпочтениями. Вы сохраняете свои предпочтения, быстро сканируя с помощью тега NFC. Когда вы вернетесь в другой день, вы снова сканируете свой ярлык, и на рабочем месте изменятся ваши настройки.
Вместо чипа NFC вы также можете использовать свой смартфон. В качестве интерфейса можно использовать специальное приложение или сайт.
Другой реализацией может быть, например, сканирование отпечатка пальца вместо сканирования тега NFC. Затем отпечаток пальца можно связать с определенным профилем пользователя, в котором сохранены настройки.
Рекомендуемые:
Как считывать несколько аналоговых значений с помощью одного аналогового вывода: 6 шагов (с изображениями)
Как считывать несколько аналоговых значений с помощью одного аналогового вывода: в этом уроке я покажу вам, как считывать несколько аналоговых значений, используя только один аналоговый входной вывод
7-сегментный для отображения значений АЦП #Arduino, #Arduino: 4 шага
7 сегментов для отображения значений АЦП #Arduino, #Arduino: в этой статье я сделаю проект, который все еще связан с предыдущей статьей. А именно обработка данных АЦП. Поэтому вам не нужен последовательный монитор, чтобы увидеть значение данных АЦП. В этой статье я сделаю дисплей для просмотра значений ADC. так что ты не
Автоматическое сохранение снимков экрана в Windows с помощью скрипта Python: 4 шага
Автоматическое сохранение снимков экрана в Windows с помощью сценария Python: обычно в Windows для сохранения снимка экрана (экрана печати) сначала нужно сделать снимок экрана, затем открыть Paint, затем вставить его и, наконец, сохранить. Теперь я научу вас, как создать программу на Python для ее автоматизации. Эта программа создаст папку
Считывание значений АЦП с потенциометров: 4 шага
Считывание значений АЦП с потенциометров: в этой статье я покажу вам, как считывать значения АЦП с потенциометра. Это основа программирования Arduino. который считывает аналоговые значения с помощью аналогового вывода, предоставленного Arduino. Помимо потенциометра, есть несколько датчиков, которые
Сохранение данных датчика Arduino в MYsql с помощью обработки: 6 шагов
Сохранение данных датчика Arduino в MYsql с помощью обработки: честно говоря, трудно хранить данные Arduino в MySQL напрямую, поэтому, пристрастившись к IDE Arduino, я использовал IDE обработки, которая похожа на IDE Arduino, но с большим количеством различных вариантов использования, и вы можете закодировать ее в java.Note: не запускайте серийный мони Arduino