23 апреля 2021 года компания Apple представила один из своих продуктов под названием AirTag. По сути это кнопка, похожая на устройство, под которым вы можете найти свои ключи или другие вещи, а также вы можете хранить их в своем кошельке или сумочке как брелок и как монета. И когда мы нажимаем кнопку воспроизведения звука, издается звук, благодаря которому мы находим эту потерянную вещь.
В данной статье мы рассмотрим создание аналога Apple AirTag на основе платы NodeMCU ESP8266. Ранее на нашем сайте мы уже рассматривали проект умного искателя ключей на ESP8266.
Принципы работы и создания проекта
Шаг 1: Сначала нам понадобится плата NodeMCU Esp8266. Теперь некоторые из вас могут подумать, почему только NodeMCU - это потому что у него уже есть модуль Wi-Fi, поэтому кроме него для создания проекта понадобятся только соединительные провода для подключения пьезозуммера. Удобно их соединить вместе используя макетную плату, либо же спаять.
Шаг 2: Итак, отрицательный провод зуммера будет подключен к контакту GND платы NodeMCU Esp8266, а положительный провод — к ее контакту D8. Вы можете использовать любой контакт для передачи данных, просто тогда измените номер контакта в коде программы.
Шаг 3: Теперь вам нужно загрузить приложение Blynk. Оно было разработано для Интернета вещей. Blynk может удаленно управлять оборудованием, отображать данные датчиков, хранить данные, визуализировать их и делать много других интересных вещей. Более подробно про работу с приложением Blynk можно прочитать в этой статье.
Шаг 4: После загрузки приложения Blynk все, что вам нужно, это войти в приложение через Google или Facebook, или вы также можете создать учетную запись на одной из этих платформ (если у вас ее еще нет).
Шаг 5: После этого нажмите на новый проект, появится всплывающее меню и будет написано, что токен аутентификации был отправлен на ваш адрес электронной почты.
Шаг 6: Вам нужно будет вставить полученный токен в свой код в разделе с аутентификацией.
Шаг 7: Потом, когда вы нажмете на новый проект в своем приложении Blynk, вам будет задан еще один вопрос, в котором вам нужно выбрать плату, а также подключение. В качестве платы необходимо поставить NodeMCU, а Wi-Fi оставить в качестве способа подключения.
Шаг 8: Затем вам нужно провести по экрану справа налево, появится меню, в котором вы получите разные виджеты, вам нужно будет выбрать из них кнопку.
Шаг 9: Теперь нажмите на кнопку, которую вы добавили, один раз, при этом вам нужно будет выбрать контакт кнопки, к которой подключен ваш зуммер, вы увидите часть контакта в разделе вывода, после этого вам нужно выбрать "switch" (переключить) вместо "Push" (Нажать) и имейте в виду следующее: при выборе контакта (пина) пусть он будет цифровым, не меняйте его. При желании вы также можете изменить название кнопки.
Шаг 10: Загрузите код программы в NodeMCU. Убедитесь, что вы ввели свой SSID (имя вашей сети Wi-Fi) и пароль вашей точки доступа, а также добавьте в код свой токен аутентификации.
Шаг 11: После всего этого соедините ваш AirTag с любым объектом, который вы не хотите потерять.
Необходимые компоненты
Аппаратное обеспечение
- NodeMCU ESP8266 (купить на AliExpress) (Реклама: ООО "АЛИБАБА.КОМ (РУ)" ИНН: 7703380158).
- Пьезо-зуммер.
Программное обеспечение
- Arduino IDE.
- Blynk.
Выбор аппаратного и программного обеспечения
Для создания этого проекта мы использовали NodeMCU, потому что NodeMCU — это платформа с открытым исходным кодом, основанная на ESP8266, которая может соединять объекты и обеспечивать передачу данных по протоколу Wi-Fi. Для написания программы для NodeMCU ESP8266 мы использовали Arduino IDE и Blynk, потому что Blynk — самая популярная платформа Интернета вещей для подключения ваших устройств к облаку. Он хорошо известен тем, что позволяет пользователям создавать приложения для управления своими устройствами Интернета вещей, анализировать данные телеметрии и управлять развернутыми продуктами в любом масштабе. На нашем сайте вы можете посмотреть все проекты, в которых был использован Blynk.
Схема проекта
Схема аналога Apple AirTag на основе платы NodeMCU ESP8266 приведена на следующем рисунке.
Как видите, схема проекта очень простая, вся его "соль" заключается в коде программы.
Исходный код программы
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 |
#define BLYNK_PRINT Serial #include <ESP8266WiFi.h> #include <BlynkSimpleEsp8266.h> // You should get Auth Token in the Blynk App. // Go to the Project Settings (nut icon). char auth[] = "YourAuthToken"; // Your WiFi credentials. // Set password to "" for open networks. char ssid[] = "YourNetworkName"; char pass[] = "YourPassword"; void setup() { // Debug console Serial.begin(9600); Blynk.begin(auth, ssid, pass); // You can also specify server: //Blynk.begin(auth, ssid, pass, "blynk-cloud.com", 80); //Blynk.begin(auth, ssid, pass, IPAddress(192,168,1,100), 8080); } void loop() { Blynk.run(); } |