Spisu treści:
2025 Autor: John Day | [email protected]. Ostatnio zmodyfikowany: 2025-01-13 06:58
Cześć wszystkim, dzisiaj chcę podzielić się z wami projektem, który ostatnio wykonałem, szukałem urządzenia do podłączenia go wewnątrz / na zewnątrz i umożliwienia ludziom łączenia się z nim za pomocą smartfona i dać im możliwość odwiedzenia określonej strony internetowej lub reklamować dla nich produkt.
najlepszym rozwiązaniem było użycie czegoś o nazwie „Eddystone”, które umożliwia wysyłanie adresu URL do urządzenia klienckiego „Smartfon/Tablet”.
więc w tym artykule pokażę Ci krok po kroku, czego użyłem i jak połączyłem wszystko razem oraz oprogramowanie / aplikacje, których użyłem w tym projekcie.
Po pierwsze: zilustruj problem
aby korzystać z dowolnego urządzenia wewnątrz / na zewnątrz należy to zrobić:
- wodoodporny.
- zasilaj go z baterii
- żywotność baterii tak długo, jak to możliwe
- łatwo naładować baterię "na przykład przez micro USB"
aby był wodoodporny, najlepszym rozwiązaniem było znalezienie przedmiotu drukowanego w 3D, który utrzyma urządzenie w środku i łatwo go otworzyć i ponownie zamknąć, a na pewno zapobiec przedostaniu się wody do wnętrza urządzenia i jego uszkodzeniu.
użycie akumulatora polimerowego Li-ion było najlepszym wyborem, małe rozmiary, duża pojemność i łatwość ładowania, ponieważ Adafruit nRF52 pióro ma wbudowaną ładowarkę akumulatorów litowo-jonowych.
zacznijmy od obiektu wydrukowanego w 3D, znalazłem ten projekt na stronie internetowej thingiverse, zaprojektowany przez:Jorg Jorgensen "dziękuję Jorg" Wydrukowałem w skali 100%, ale był bardzo mały, aby zmieścić wszystkie elementy w środku, więc drukuję go w skali 200% i daj mi dokładnie to, czego chcę
Podoba mi się ten projekt, ponieważ jeśli dobrze go zamkniesz, woda nie dostanie się do środka.
pobierz projekt z tego linku poniżej
https://www.thingiverse.com/thing:2246144
Krok 1: Komponenty do tego projektu
tylko kilka komponentów potrzebnych do wykonania tego projektu:
- Deska z piór Adafruit nRF52, dostarczana z nRF52832 BE.
- Nagłówek pin, nagłówek żeński lub męski "i to opcjonalne".
- Akumulator polimerowy litowo-jonowy, użyłem akumulatora 3,7 V / 1000 mA, jeśli akumulator jest dostarczany bez złącza, upewnij się, że kupiłeś gniazdo JST 2pin.
- mini deska do krojenia chleba.
- Klej samoprzylepny UHU.
Krok 2: Przygotowanie sprzętu / oprogramowania
nie jest trudno połączyć wszystko razem, ale najpierw musimy zamontować mini płytkę stykową i baterię wewnątrz urządzenia za pomocą kleju UHU, zapewnić mu co najmniej godzinę wyschnięcia.
naładować akumulator Li-ion, w moim przypadku przylutowałem przewody do akumulatora aby podłączyć go do złącza JST.
Przejdźmy teraz do oprogramowania:
najpierw musisz mieć Arduino IDE "pobierz go stąd", a następnie przejdź do pliku >> Preferencje
Dodaj https://www.adafruit.com/package_adafruit_index.js… jako „Additional Board Manager URL” (patrz obrazek poniżej).
Następnie przejdź do narzędzi >> tablica >> menedżer tablic i wyszukaj nRF52 i zainstaluj go
teraz zrestartuj arduino IDE, a z płyt wybierz adafruit nRF52.
oprogramowanie jest gotowe do użycia i możesz przesyłać szkice na płytkę nRF52
Krok 3: Tryb Beacon
z Wikipedii, cytuję " Beacony Bluetooth to sprzętowe nadajniki - klasa urządzeń Bluetooth o niskim poborze energii (LE), które transmitują swój identyfikator do pobliskich przenośnych urządzeń elektronicznych. Technologia umożliwia smartfonom, tabletom i innym urządzeniom wykonywanie akcji w bliskiej odległości od beacona ", dzięki czemu możemy przesłać UUID "uniwersalnie unikalny identyfikator" do pobliskich urządzeń
możesz wysłać UUID, Major i Minor Number oraz ustawić moc tx i RSSI @ 1 metr.
prześlij ten kod na swoją kartę nRF52
możesz go POBRAĆ z github
/************************************************** ******************** Licencja MIT, sprawdź LICENCJA, aby uzyskać więcej informacji Cały tekst powyżej i poniższy ekran powitalny muszą być uwzględnione w każdej redystrybucji
Oryginalny kod zaczerpnięty z Adafruit Bluefruit Przykład
Zmodyfikowany przez: Mohannad Rawashdeh https://mb-raw.blogspot.com/ ten kod będzie działał na urządzeniach z systemem Android/IOS
Nazwa aplikacji na Androida: skaner Beacon
nazwa aplikacji apple: podstawowe sygnały nawigacyjne przejdź do aplikacji beacon i zobaczysz nazwę urządzenia (ibeacon /Rawashdeh) UUID: B3D6F818-DA71-09ED-EA80-F3C45FB19A50 Major=0x01 Minor=0x08 Beacon_RSSI -73db; ************************************************** *******************/ #włączać
#define MANUFACTURER_ID 0x004C // Prawidłowy identyfikator producenta Apple
int Główny=0x01;
int Minor=0x08; int Beacon_RSSI=-73; int Moc_Tx=4; // UUID AirLocate: B3D6F818-DA71-09ED-EA80-F3C45FB19A50 uint8_t beaconUuid[16] = { 0xB3, 0xD6, 0xF8, 0x18, 0xDA, 0x71, 0x09, 0xED, 0xEA, 0x1,0,0xA4, 0xF, 0x50, }; BLEBeacon beacon(beaconUuid, Major, Minor, Beacon_RSSI);
pusta konfiguracja()
{ Błękitny owoc.początek(); Bluefruit.autoConnLed(fałsz); Bluefruit.setTxPower(Tx_power); Bluefruit.setName("Rawaszdeh"); beacon.setProducent(ID_PRODUCENTA); Bluefruit. ScanResponse.addName(); Bluefruit. Reklama.setBeacon(beacon); Bluefruit. Advertising.restartOnDisconnect(prawda); Bluefruit. Advertising.setInterval(160, 160); // w jednostce 0,625 ms Bluefruit. Advertising.setFastTimeout(15); // liczba sekund w trybie szybkim Bluefruit. Advertising.start(0); // 0 = Nie przestawaj rozgłaszać po n sekundach // Zawieś Loop(), aby zaoszczędzić energię suspendLoop(); }
pusta pętla()
{ }
jeśli masz urządzenie z Androidem
Przejdź do sklepu Play i pobierz aplikację skanera beaconów „Użyłem 2 aplikacji tutaj i tutaj”
łatwo podłącz baterię do urządzenia i otwórz aplikację, a zobaczysz wynik "sprawdź obrazek powyżej"
jeśli masz urządzenie IOS "iphone/ipad"
najlepszą aplikacją, jaką znalazłem, są sygnały nawigacyjne Core, pobierz ją ze sklepu z aplikacjami
inna aplikacja "tylko dla beaconów" to beacon Ranging", niezbyt dobra, ale użyłem jej do szybkiego testu.
dla urządzeń IOS, jeśli używasz beacon Ranging, musisz najpierw dodać UUID, a następnie połączyć się z urządzeniem co nie jest niezawodne, więc zamiast tego użyj Core beacon
Krok 4: Eddystone, udostępnij swoją witrynę / produkt / usługę wszystkim
z eddystone możesz wysłać adres URL do pobliskiego urządzenia i skierować go do swojej witryny lub strony internetowej, a nawet adresu URL lokalizacji…itp
prześlij kod, możesz go pobrać z github
/************************************************** ******************** Licencja MIT, sprawdź LICENCJA, aby uzyskać więcej informacji Cały tekst powyżej i poniższy ekran powitalny muszą być uwzględnione w każdej redystrybucji
Oryginalny kod zaczerpnięty z Adafruit Bluefruit Przykład
Zmodyfikowany przez: Mohannad Rawashdeh https://mb-raw.blogspot.com/ ten kod będzie działał na urządzeniach z systemem Android/IOS
Nazwa aplikacji na Androida: skaner Beacon
nazwa aplikacji apple: podstawowe sygnały nawigacyjne przejdź do aplikacji beacon i zobaczysz nazwę urządzenia (ibeacon /Rawashdeh) url: https://mb-raw.blogspot.com Beacon_RSSI -56db; ************************************************** *******************/ #włączać
// URL mojego bloga
#define URL "https://mb-raw.blogspot.com" //#define URL "https://www.instructables.com" int Tx_power=4; int Beacon_RSSI=-56; EddyStoneUrl eddyUrl(Beacon_RSSI, URL);
pusta konfiguracja()
{ Błękitny owoc.początek(); Bluefruit.setTxPower(Tx_power); Bluefruit.setName("Rawaszdeh"); Bluefruit. ScanResponse.addName(); Bluefruit. Reklama.setBeacon(eddyUrl); Bluefruit. Advertising.restartOnDisconnect(prawda); Bluefruit. Advertising.setInterval(320, 320); // w jednostce 0,625 ms Bluefruit. Advertising.setFastTimeout(15); // liczba sekund w trybie szybkim Bluefruit. Advertising.start(0);
}
pusta pętla()
{
}
jeśli masz urządzenie z Androidem Przejdź do sklepu Play i pobierz aplikację skanera beaconów „Użyłem 2 aplikacji tutaj i tutaj” łatwo podłącz baterię do urządzenia i otwórz aplikację, a zobaczysz wyniki „sprawdź obraz powyżej”
jeśli masz urządzenie IOS „iphone/ipad”, najlepszą aplikacją, którą znalazłem, są sygnały nawigacyjne Core, pobierz ją ze sklepu z aplikacjami.
możesz zobaczyć wideo do mojego szybkiego testu kodu.