Spisu treści:

Sztuczna inteligencja i rozpoznawanie obrazu za pomocą HuskyLens: 6 kroków (ze zdjęciami)
Sztuczna inteligencja i rozpoznawanie obrazu za pomocą HuskyLens: 6 kroków (ze zdjęciami)

Wideo: Sztuczna inteligencja i rozpoznawanie obrazu za pomocą HuskyLens: 6 kroków (ze zdjęciami)

Wideo: Sztuczna inteligencja i rozpoznawanie obrazu za pomocą HuskyLens: 6 kroków (ze zdjęciami)
Wideo: Jaki Prezent dla Programisty? ESP32, AIY Vision Kit, kursy, gadżety? 2024, Listopad
Anonim
Image
Image

Hej co tam u was! Akarsh tutaj z CETech.

W tym projekcie przyjrzymy się HuskyLens firmy DFRobot. Jest to moduł kamery zasilany sztuczną inteligencją, który jest w stanie wykonać kilka operacji sztucznej inteligencji, takich jak rozpoznawanie twarzy, rozpoznawanie obiektów i rozpoznawanie linii itp. Jest nieco podobny do modułu MatchX, który omawialiśmy jakiś czas temu w tym projekcie. Ponieważ moduł MatchX był trochę drogi, postanowiłem zrobić coś podobnego na własną rękę i do tego uznałem HuskyLens jako świetny wybór, ponieważ jest tańszy w porównaniu z modułem MatchX i może zrobić wszystko, co potrafi MatchX z wyjątkiem jednego, tj. transmisji danych iw tym celu sprzęgniemy moduł Huskylens z modułem RYLR907 LoRa firmy Reyax i będziemy gotowi. Po połączeniu użyjemy tego HuskyLens do wykrycia obiektu i wyślemy wykryte dane za pomocą modułu LoRa do innego modułu LoRa po stronie odbiornika.

Przejdźmy teraz do zabawnej części.

Kieszonkowe dzieci

Używane części:

Obiektyw Husky:

Reyax RYLR907:

Firebeetle ESP8266:

Arduino:

Krok 1: Uzyskaj płytki drukowane do swoich projektów

O module HuskyLens
O module HuskyLens

Musisz sprawdzić PCBWAY, aby zamówić tanie PCB przez Internet!

Otrzymujesz 10 dobrej jakości płytek PCB wyprodukowanych i wysłanych na wyciągnięcie ręki za tanią cenę. Otrzymasz również zniżkę na wysyłkę przy pierwszym zamówieniu. Prześlij swoje pliki Gerber na PCBWAY, aby były produkowane z dobrą jakością i szybkim czasem realizacji. Sprawdź ich funkcję przeglądarki Gerber online. Dzięki punktom nagrody możesz otrzymać darmowe rzeczy z ich sklepu z pamiątkami.

Krok 2: O module HuskyLens

O module HuskyLens
O module HuskyLens
O module HuskyLens
O module HuskyLens

HuskyLens to łatwy w użyciu czujnik wizji maszynowej AI z 6 wbudowanymi funkcjami: rozpoznawanie twarzy, śledzenie obiektów, rozpoznawanie obiektów, śledzenie linii, wykrywanie kolorów i wykrywanie tagów. Jest to całkiem zgrabny moduł, który jest wyposażony w kamerę z przodu i wyświetlacz LCD z tyłu oraz 3 diody LED (2 białe i 1 RGB) na pokładzie, którymi można sterować za pomocą oprogramowania. Ma na sobie dwa przyciski, jeden przełącznik suwakowy do przełączania między trybami działania i przycisk do przechwytywania i poznawania obiektów przed kamerą. Im więcej się uczy, tym jest mądrzejszy. Zastosowanie chipu AI nowej generacji pozwala HuskyLens na wykrywanie twarzy z prędkością 30 klatek na sekundę. Poprzez port UART / I2C HuskyLens może łączyć się z Arduino, Raspberry Pi lub micro:bit, aby pomóc Ci w tworzeniu bardzo kreatywnych projektów bez zabawy ze złożonymi algorytmami.

Jego specyfikacje techniczne to:

  • Procesor: Kendryte K210
  • Czujnik obrazu:

    • SEN0305 HuskyLens: OV2640 (kamera 2,0 megapiksela)
    • SEN0336 HuskyLens PRO: OV5640 (kamera 5.0 megapikseli)
  • Napięcie zasilania: 3,3 ~ 5,0 V
  • Pobór prądu (TYP): 320 mA przy 3,3 V, 230 mA przy 5,0 V (tryb rozpoznawania twarzy; jasność podświetlenia 80%; światło wypełniające wyłączone)
  • Interfejs połączenia: UART; I2C
  • Wyświetlacz: 2,0-calowy ekran IPS o rozdzielczości 320*240
  • Wbudowane algorytmy: rozpoznawanie twarzy, śledzenie obiektów, rozpoznawanie obiektów, śledzenie linii, rozpoznawanie kolorów, rozpoznawanie znaczników
  • Wymiar: 52 mm 44,5 mm / 2,051,75"

Link do produktu:

Krok 3: Informacje o module LoRa RYLR907

O module LoRa RYLR907
O module LoRa RYLR907
O module LoRa RYLR907
O module LoRa RYLR907

Moduł nadawczo-odbiorczy RYLR907 wyposażony jest w modem dalekiego zasięgu Lora, który zapewnia komunikację z bardzo dużym zasięgiem w widmie rozproszonym i wysoką odporność na zakłócenia przy jednoczesnym minimalizowaniu poboru prądu. Jest wyposażony w silnik Semtech SX1262, który jest potężny i ma doskonałą odporność na blokowanie. RYLR907 ma niski prąd odbioru i może wykrywać ruch w kanale, aby włączyć energooszczędny tryb odbioru CAD. Jest bardzo czuły i można go łatwo kontrolować za pomocą poleceń AT. Oprócz wszystkich wyżej wymienionych cech posiada wbudowaną antenę i wykorzystuje szyfrowanie danych AES128. Wszystkie te cechy sprawiają, że nadaje się do aplikacji IoT, sprzętu mobilnego, bezpieczeństwa domowego itp.

Może być używany do przesyłania danych na odległość rzędu km, bez internetu lub innych rzeczy. Więc użyjemy tego modułu LoRa do przesyłania danych zebranych przez HuskyLens od strony nadajnika do strony odbiornika. Aby uzyskać szczegółowe informacje na temat specyfikacji technicznych modułu RYLR907, możesz przejść do jego arkusza danych stąd.

Link do produktu:

Krok 4: Konfiguracja sekcji nadajnika i odbiornika

Image
Image
Konfiguracja sekcji nadajnika i odbiornika
Konfiguracja sekcji nadajnika i odbiornika

Na tym etapie wykonamy część projektu dotyczącą połączeń. Najpierw połączymy HuskyLens z modułem RYLR907 LoRa, to będzie strona nadajnika, a następnie połączymy moduł LoRa z ESP8266, aby odbiornik był na końcu, który odbierze dane wysłane przez nadajnik i wyświetli je na Serial Monitor Arduino IDE.

Kroki, aby połączyć HuskyLens z modułem LoRa są następujące:

  • Podłącz pin Vcc i GND HuskyLens odpowiednio do 5V i GND Arduino.
  • Podłącz styki R i T HuskyLens odpowiednio do styków nr 11 i 10 Arduino.
  • Teraz weź moduł LoRa i podłącz jego pin Vcc do wyjścia 3.3 V Arduino i pin GND do GND Arduino.
  • Podłącz pin Rx RYLR907 do pinu Tx Arduino przez rezystor, jak pokazano na powyższym schemacie obwodu. Sieć rezystorów jest wymagana, ponieważ Arduino działa na poziomie logicznym 5 V, podczas gdy RYLR907 działa na poziomie logicznym 3,3 V, więc aby obniżyć napięcie 5 V do 3,3 V, używane są te rezystory.

W ten sposób kończy się sekcja nadajnika, czyli połączenia HuskyLens.

Teraz dla sekcji odbiornika potrzebujemy ESP8266 do sterowania modułem LoRa do odbioru przesyłanych danych. Połączenia do wykonania na tym końcu są następujące:

  • Podłącz piny Vcc i GND modułu LoRa do pinu 3.3V i GND ESP8266.
  • Podłącz pin GPIO 15 do pinu Rx LoRa i pin GPIO 13 do pinu Tx modułu RYLR907.

W ten sposób połączenia po stronie odbiornika są zakończone, wystarczy teraz podłączyć moduły do naszego komputera i wgrać kody projektu. Szczegółowy opis zastosowanego modułu LoRa i połączeń, które należy wykonać po stronie odbiornika, można obejrzeć na powyższym filmie.

Krok 5: Kodowanie modułów

Kodowanie modułów
Kodowanie modułów

Ponieważ połączenia dla obu sekcji są wykonane. Teraz pozostaje już tylko podłączyć Arduino i ESP do komputera i wgrać kody do projektu jeden po drugim. Możesz uzyskać kody do projektu, przechodząc do strony Github stąd.

  • Pobierz bibliotekę HuskyLens dostępną na stronie GitHub i zainstaluj ją na swoim Arduino IDE.
  • Teraz otwórz plik o nazwie „Arduino Husky Lens Lora Code.ino” jest to kod, który należy wgrać do Arduino, aby uzyskać dane z HuskyLens i wysłać je do odbiornika. Skopiuj ten kod i wklej go do swojego Arduino IDE.
  • Podłącz Arduino do komputera, wybierz odpowiednią płytkę i port COM i naciśnij przycisk przesyłania, gdy tylko kod zostanie przesłany, możesz odłączyć Arduino.

W ten sposób część kodująca po stronie nadajnika jest zakończona. Teraz możesz podłączyć moduł ESP, który w połączeniu z LoRa będzie używany jako odbiornik.

  • Po podłączeniu ESP do komputera ponownie otwórz stronę Github i skopiuj kod z pliku o nazwie "ESP8266 LoRa Text.ino" to jest ten, który należy wgrać do ESP8266.
  • Wklej kod do IDE. Wybierz odpowiedni port COM i płytę, a następnie naciśnij przycisk przesyłania.

Gdy kod zostanie przesłany, jesteś gotowy do użycia konfiguracji.

Krok 6: Testowanie łącza

Testowanie łącza
Testowanie łącza
Testowanie łącza
Testowanie łącza

Gdy tylko kod zostanie przesłany do obu modułów, możemy sprawdzić łącze, otwierając monitor szeregowy, początkowo wyświetli komunikat „Brak bloku lub strzałki na ekranie”. Oznacza to, że HuskyLens nie dowiedział się o pokazywanym przedmiocie. Obiekt jest widziany po raz pierwszy i nie jest rozpoznawany przez Obiektyw. Tak więc, aby rozpoznał pokazany mu przedmiot lub twarz. Musimy pokazać HuskyLens obiekt i jak tylko potwierdzi on pokazany mu obiekt, naciśnij przycisk uczenia (przycisk), to sprawi, że HuskyLens nauczy się o obiekcie i rozpozna obiekt, gdy coś podobnego do wyuczonego obiektu jest pokazane. Teraz, gdy HuskyLens dowiedział się o obiekcie, wyśle dane o obiekcie, który widzi, a dane odebrane przez LoRa po stronie odbiorcy są wyświetlane na monitorze szeregowym.

W ten sposób możemy wykorzystać oparte na sztucznej inteligencji HuskyLens do rozpoznawania obiektów, zbierania o nich danych, a za pomocą modułu LoRa przesyłać zebrane dane do innego modułu LoRa umieszczonego kilka kilometrów dalej.

To tyle, jeśli chodzi o samouczek, mam nadzieję, że Ci się spodobał.

Zalecana: