Spisu treści:

STEM – Sterowanie głosem i obrazem: 13 kroków
STEM – Sterowanie głosem i obrazem: 13 kroków

Wideo: STEM – Sterowanie głosem i obrazem: 13 kroków

Wideo: STEM – Sterowanie głosem i obrazem: 13 kroków
Wideo: 11 ustawień w iPhonie, które POWINIENEŚ OD RAZU ZMIENIĆ 📲 2024, Listopad
Anonim
STEM - Sterowanie głosem i obrazem
STEM - Sterowanie głosem i obrazem
STEM - Sterowanie głosem i obrazem
STEM - Sterowanie głosem i obrazem
STEM - Sterowanie głosem i obrazem
STEM - Sterowanie głosem i obrazem

W ciągu ostatnich kilku lat tworzenie czegoś z rozpoznawaniem głosu lub obrazu stało się coraz łatwiejsze. Oba są obecnie coraz częściej używane. I to są popularne tematy w projektach DIY. Najczęściej tworzone za pomocą oprogramowania/API z jednej z następujących firm:

  • Głos Google.
  • Amazonka Alexa.
  • Usługi poznawcze firmy Microsoft.

Istnieje nawet kilka zestawów do samodzielnego montażu, takich jak zestaw głosowy Google AIY do wspierania hobbystów. Większość z tych produktów korzysta z Raspberry Pi lub podobnej płyty. Niestety nie jest to odpowiednie dla tych, którzy nie wiedzą, jak obsługiwać język programowania, taki jak Python.

Ta instrukcja dotyczy rozpoznawania głosu i OCR obrazu, bez znajomości języka programowania. Jednak logiczne myślenie pozostaje wymogiem. Niniejszym używany jest produkt Makeblock Neuron w połączeniu ze środowiskiem programistycznym opartym na przepływie.

Ten produkt Neuron rozpoczął się jako projekt Kickstarter w 2017 roku. Jest to elektroniczna platforma konstrukcyjna wykorzystująca wszystkie rodzaje elektronicznych "bloków", które można połączyć za pomocą złączy magnetycznych. I jest zasadniczo oznaczany jako produkt STEM (nauka, technologia, inżynieria i matematyka). Ten produkt skupia się zatem na logicznym myśleniu i (nauce) programowania.

Istnieje około 30 różnych rodzajów bloków neuronowych. Takich jak różnego rodzaju nadajniki i odbiorniki, przyciski, diody LED, czujniki i silniki. Większość bloków komunikuje się tylko ze sobą. Ale jeden z bloków, blok WiFi, może być podłączony do Internetu. Umożliwia to dostęp do aplikacji internetowych, takich jak Microsoft Cognitive Services.

Pierwsze kroki tego Instructable zaczynają się od krótkiego wprowadzenia na temat produktu Neuron i sposobu jego programowania. Obejmuje to programowanie oparte na przepływach i niektóre z dostępnych komponentów elektronicznych. Po tym następuje kilka przykładów z rozpoznawaniem wizji i głosu. I wreszcie mały robot-żółwik. Który może być zdalnie sterowany za pomocą joysticka. Z tym robotem można korzystać z rozpoznawania głosu. Należy jednak wziąć pod uwagę czasy odpowiedzi sterowania głosowego.

Ponadto istnieje kilka dodatkowych informacji technicznych. Te kroki zapewniają podstawowe informacje i zapewniają wgląd w produkt Neuron.

G o s e A d e m a

Krok 1: Zestaw Neuron Explorer

Zestaw eksploratora neuronów
Zestaw eksploratora neuronów
Zestaw eksploratora neuronów
Zestaw eksploratora neuronów

Bloki neuronowe są jak elektroniczne klocki, a kolor każdego neuronu wskazuje na jego główną funkcję. Bloki energetyczne i komunikacyjne są zielone; Bloki wejściowe są żółte; Bloki kontrolne są pomarańczowe; A bloki wyjściowe są niebieskie. Każdy neuron ma swoją własną dedykowaną funkcję i zaczynają komunikować się ze sobą, gdy są ze sobą połączone.

Produkt rozpoczął się jako projekt Kickstarter w kwietniu 2017 r. I ten instruktaż używa zestawu Explorer. Ten zestaw zawiera następujące części:

  • Wi-Fi (neurony)
  • Moc (Neuron)
  • Mikrofon i głośnik (USB)
  • Panel Led 8x8 RGB (Neuron)
  • Joystick (neuronowy)
  • Pokrętło (Neuron)
  • Sterownik taśmy Led (Neuron)
  • Taśma Led 50cm (15 diod)
  • Podwójny sterownik silnika prądu stałego (Neuron)
  • Silnik prądu stałego (2x)
  • Wspornik silnika (2x)
  • Koła (2x)
  • Mini koło
  • Podwójny sterownik silnika serwo (Neuron)
  • Silnik serwo (2x)
  • Rozpoznawanie głosu (Neuron)
  • Czujnik ultradźwiękowy (neuronowy)
  • Nadajnik bezprzewodowy (neuronowy)
  • Odbiornik bezprzewodowy (neuronowy)
  • Kamera (USB)
  • Wskaźnik laserowy
  • Tablica neuronowa (4x)
  • Drut magnetyczny 10 cm (2x)
  • Drut magnetyczny 20 cm (2x)
  • Kabel Micro USB 20 cm (2x)
  • Kabel Micro USB 100 cm (2x)

Ten zestaw zawiera wszystkie części elektroniczne do wszelkiego rodzaju projektów STEM. Wydaje się, że jej głównym celem jest tworzenie małych robotów. Ale kamera i rozpoznawanie głosu dają mu o wiele więcej możliwości niż tylko roboty.

Każdy neuron zawiera magnes. Można go umieścić na metalowych przedmiotach lub dostarczonych płytach Neuron.

Jedyną częścią, której „brakuje” w tym zestawie Explorer, jest czujnik śledzenia linii. Jest to część zestawu „Wszystko w jednym”. Ten czujnik byłby bardziej logicznym wyborem, zamiast taśmy LED lub matrycy LED.

Krok 2: Bloki neuronowe

Bloki neuronowe
Bloki neuronowe
Bloki neuronowe
Bloki neuronowe
Bloki neuronowe
Bloki neuronowe

Kilka pakietów Neuron zostało sprzedanych w ramach kampanii na Kickstarterze. I w tej chwili pierwsze opakowania dostępne są w regularnej sprzedaży.

Istnieje około 30 różnych bloków, które można ze sobą łączyć za pomocą złączy magnetycznych. Tworzy to linię bloków. Które komunikują się ze sobą za pośrednictwem aplikacji (Android, iOS).

Istnieje ładowalny blok zasilania, który zasila wszystkie połączone bloki. Wszystkie bloki komunikacyjne mają złącze micro USB, które można wykorzystać do zasilania bloków. Łańcuch zwykle zaczyna się od bloku komunikacyjnego. A jeśli nie jest zasilany przez USB, następny blok powinien być blokiem zasilania.

Energia, którą blokuje komunikacja, ma kolor zielony, a jest ich 5:

  • Moc.
  • Odbiornik bezprzewodowy.
  • Nadajnik bezprzewodowy.
  • Wi-Fi.
  • Niebieski Ząb.

Aplikacja i program Scratch wymagają połączenia Wi-Fi lub BlueTooth. 2 bezprzewodowe bloki mogą być używane do zdalnie sterowanych projektów na niewielką odległość.

Zestaw Explorer zawiera trzy pomarańczowe bloki kontrolne:

  • Pokrętło.
  • Drążek sterowy.
  • Rozpoznawanie głosu.

I dwa żółte czujniki:

  • Kamera
  • Czujnik ultradźwiękowy

Bloki sterowania i czujników zapewniają dane wejściowe dla Twojego programu. Pokrętło podaje wartość od 0 do 100 i może być używane jako ściemniacz lub do sterowania prędkością silnika. Joystick podaje dwie wartości pomiędzy -100 a 100, po jednej wartości dla każdego kierunku. Czujnik ultradźwiękowy mierzy odległość w centymetrach. Wartość wyjściowa wynosi od 0 do 400.

Pięć niebieskich bloków wyjściowych w tym zestawie to:

  • Sterownik taśmy LED + taśma LED.
  • Panel LED.
  • Sterownik silnika prądu stałego
  • Sterownik silnika serwo
  • Mikrofon i głośnik

Bloki wyjściowe są bardzo różne. Pozwala to na wiele różnych typów projektów. Jak lampa LED, poruszający się robot i/lub rejestrator dźwięku.

Wszystkie bloki Neuron są wymienione na stronie Kickstarter.

Krok 3: Programowanie neuronu

Programowanie neuronu
Programowanie neuronu
Programowanie neuronu
Programowanie neuronu

Istnieje kilka sposobów wykorzystania bloków Neuron.

  1. Offline.
  2. Online za pomocą aplikacji.
  3. Online z mBlock Scratch.

Offline oferuje łatwy sposób na wprowadzenie różnych części. To nie wymaga programowania. Programowanie online można wykonać za pomocą aplikacji (Android/iOS) lub programu komputerowego (mBlock 4.0). Blok WiFi ma możliwość zapisania programu. Ten program działa, dopóki nie zostanie zatrzymany przez aplikację.

Aplikacja jest łatwiejsza w użyciu niż oprogramowanie mBlock 4.0. I nie wszystkie bloki Neuron są obecnie obecne w oprogramowaniu mBlock.

W polu Neuron znajduje się kilka kart z przykładowymi projektami. Można je połączyć za pomocą aplikacji i pokazać podstawowe zasady różnych bloków.

Krok 4: Tryb offline

Tryb offline
Tryb offline
Tryb offline
Tryb offline
Tryb offline
Tryb offline

Ten tryb służy głównie do zapoznania się z produktem i nie wymaga żadnego programowania.

Każdy czujnik bloku wyjściowego może dostarczać dane wyjściowe do bloków dołączonych po prawej stronie. Każdy blok wyświetlacza może odbierać sygnały wejściowe z lewej strony; Daje to wyjście; I przekazuje sygnał wejściowy do dodatkowych bloków podłączonych po prawej stronie.

Dzięki temu łańcuch offline zawsze zawiera wiele bloków w ustalonej kolejności: Zielony blok mocy; Żółty lub pomarańczowy blok (wejście lub sterowanie); I jeden lub więcej niebieskich bloków wyjściowych. A ten tryb offline działa tylko od lewej do prawej (z czytelnymi literami).

Blok wejściowy lub sterujący steruje wszystkimi kolejnymi blokami wyjściowymi. A wyjście zależy od typu bloku wejściowego. Na przykład: Pokrętło działa jak ściemniacz po podłączeniu do matrycy LED. A joystick pokazuje kierunek na matrycy LED. Sygnały z wielu bloków wejściowych nie mogą być łączone w trybie offline. Do bloków wyjściowych przekazywany jest tylko sygnał z ostatniego bloku.

Łączenie bloków wejściowych i/lub sterujących wymaga trybu online (programowania).

Krok 5: Programowanie oparte na przepływie

Programowanie oparte na przepływie
Programowanie oparte na przepływie

Kiedy bloki Neuron są podłączone do tabletu (iPad), automatycznie stają się aktywne w trybie online. Teraz wszystkie połączone bloki mogą być używane do interakcji ze sobą. Podczas gdy środowisko programu dodaje operacje logiczne i matematyczne.

Dokumentacja dotycząca programowania bloków Neuron jest dostępna na stronie Makeblock. Istnieje również forum, na którym można znaleźć wiele informacji. Ponieważ ten produkt jest raczej nowy, regularnie pojawiają się aktualizacje i uzupełnienia dokumentacji na stronie Makeblock.

Aplikacja Neuron wykorzystuje programowanie oparte na przepływach. Oprócz bloków Neuron, które podają wartości wyjściowe lub wymagają wartości wejściowych, istnieją różne rodzaje węzłów programowania. Są one podzielone na kilka obszarów i umieszczone w różnych zakładkach w aplikacji. Domyślnie dostępne są 4 zakładki:

  • Podstawowy
  • Sterownica
  • Czas
  • Zaawansowany

Te węzły programowania mogą być używane bez bloków Neuron.

Dokumentacja online Makeblock pokazuje funkcje interfejsu aplikacji.

Logika i matematyka

To są podstawowe funkcje. I mieć jedno lub dwa wejścia i jedną wartość wyjściową. Istnieje kilka prostych obliczeń i porównań.

Instruktażowy robot
Instruktażowy robot

Funkcja przełączania przełącza swój stan za każdym razem, gdy otrzymuje „Y”.

Liczby

Istnieją dwa węzły numeryczne, jedna "podstawowa" i jedna "kontrolna" (są na różnych kartach). Wersja sterowania jest numerem stałym, podczas gdy numer podstawowy ma stan „włączony” i „wyłączony”. Poniższy przykład pokazuje różnicę. Interwał włącza się („Y”) i wyłącza („N”) co sekundę. Wyjście zielonej liczby to 5, gdy wejście to „Y”, w przeciwnym razie wartość to 0.

Instruktażowy robot
Instruktażowy robot

Węzeł krzywej pokazuje wykres. Jest to przydatne do pokazania różnych wartości wyjściowych. Inne przydatne wskaźniki to etykieta i węzeł wskaźnika.

Sekwencja

Sekwencja jest powtarzana lub tylko raz, gdy na wejściu jest „Y”. Pozwala to na sekwencję działań.

Instruktażowy robot
Instruktażowy robot

Sekwencja otrzymuje sygnał, gdy przełącznik jest włączony. Wynik sekwencji jest przekazywany do wskaźnika.

Zwróć uwagę na kolor linii: Niebieskie linie wskazują bieżący przepływ. A kółko po prawej stronie węzła zawsze pokazuje aktualne wyjście.

Skala

Węzeł skali tłumaczy zakres wejściowy na zakres wyjściowy. Na przykład od 0 do 100 można przetłumaczyć na wartość z zakresu od 0 do 255.

Instruktażowy robot
Instruktażowy robot

Wartości powyżej maksimum zakresu wejściowego skutkują wartością wyższą niż maksymalna skala wyjściowa! Filtr może być użyty do ograniczenia wartości.

Zawór

Jest to węzeł, który przekazuje dolną wartość wejściową, jeśli górna wartość wejściowa jest prawdziwa. Najlepiej wytłumaczyć to na przykładzie:

Instruktażowy robot
Instruktażowy robot

Zielony węzeł interwału przełącza się między 0 a 1 co pół sekundy. Wynik tego węzła jest widoczny na górnym wykresie. Fioletowy węzeł impulsowy daje wyjście sinusowe o wartościach od -255 do 255. Jest to pokazane na dolnym wykresie.

Zarówno interwał, jak i zatoka są wprowadzane dla węzła zastawki. A wartość wyjściowa wynosi 0, gdy wartość interwału wynosi „N”. Gdy wartość przedziału wynosi 'Y', wartość wyjściowa jest równa wartości wejściowej sinus. Daje to środkowy wykres.

Krok 6: Przykład przepływu

Przykład przepływu
Przykład przepływu
Przykład przepływu
Przykład przepływu

Programowanie przepływowe najlepiej pokazać na przykładzie. Ten przykład nie używa bloków Neuron. I każdy może to zaprogramować po pobraniu aplikacji. Otwórz środowisko kodu i utwórz nowy program. Wybierz '(X)', gdy zostaniesz zapytany o połączenie i rozpocznij programowanie.

Wystarczy przeciągnąć wymagane węzły do obszaru programu i połączyć linie. Kliknij na węzły, aby zobaczyć możliwości i zmienić wartości/ustawienia.

Wyjściem przycisków jest domyślnie 'N'. Naciśnięcie przycisku daje „Y” jako wyjście. To wyjście jest przekazywane do generatora liczb losowych. To generuje nową liczbę (od 0 do 100) za każdym razem, gdy wejście ma wartość 'Y' i przekazuje dane wyjściowe do następnego węzła (węzłów).

Węzły porównania wymagają 2 danych wejściowych i zwracają wartość „Y”, jeśli warunek jest spełniony. Górny węzeł porównania sprawdza, czy wartość portu A jest większa niż wartość portu B. Jeśli to prawda, lampka zmieni kolor na zielony. Obecnie dolna lampka świeci na zielono, bo 21 jest poniżej 23.

Programowanie w ten sposób wymaga pewnej praktyki. Dużą zaletą jest to, że nie musisz myśleć o składni kodu. A każdy węzeł wyświetla swoją wartość wyjściową. Ponadto niebieskie linie reprezentują przepływ danych.

Krok 7: Kontrola obrazu

Kontrola obrazu
Kontrola obrazu
Kontrola obrazu
Kontrola obrazu

Istnieją dwa bloki Neuron, które można podłączyć do bloku WiFi za pomocą kabla USB: kamera i mikrofon/głośnik. Oba urządzenia są zwykłymi urządzeniami USB i można je podłączyć do komputera. Kamera wymaga dodatkowych sterowników, ale głośnik działa jak zwykły głośnik USB.

Karta i ikona kamery pojawiają się w aplikacji, gdy kamera jest podłączona do bloku WiFi. Ikona otwiera okno podglądu z obrazem z kamery.

W zakładce aparatu znajduje się węzeł zdjęcia/kamery. Powoduje to wykonanie obrazu, gdy sygnał wejściowy ma wartość „Y” (prawda). Po umieszczeniu tego węzła w obszarze programu ma trzy opcje (kliknij na węzeł):

  • Ramka na zdjęcia
  • OCR
  • Test emotikonów

Ramka na zdjęcia pokazuje wyjście z węzła fotograficznego. Kolejne trzy węzły zapewniają „aparat fotograficzny”. Aparat robi zdjęcie po naciśnięciu przycisku (daje to „Y” jako wyjście). I to jest pokazane w ramce na zdjęcia. Obraz jest przechowywany w bloku WiFi, ale jest nadpisywany po zrobieniu nowego zdjęcia.

Instruktażowy robot
Instruktażowy robot

Możliwe jest użycie timera do wprowadzania danych do kamery, ale nie rób tego, aby interwał był zbyt krótki (> 1 sekunda). W przeciwnym razie blok WiFi nie może obsłużyć danych i zawiesza się na chwilę.

Węzeł OCR tłumaczy obrazy na tekst. Korzysta z usług kognitywnych firmy Microsoft. Blok WiFi musi być podłączony do internetu, a aplikacja musi być połączona z blokiem WiFi.

Następny program robi zdjęcie po naciśnięciu przycisku. To zdjęcie jest wyświetlane i przetwarzane przez węzeł OCR. Dane wyjściowe są porównywane przez trzy węzły porównywania tekstu. Sprawdzają one wartości „jeden”, „dwa” i „trzy”. Każda wartość pokazuje inny obraz na panelu LED. Dane wyjściowe węzła OCR są również wyświetlane przez węzeł „etykieta”. To pokazuje „Nie” (Fałsz), gdy nic nie jest rozpoznawane.

Instruktażowy robot
Instruktażowy robot

Niebieskie linie wskazują przepływ danych w programie. A „Y” i „N” po każdym węźle reprezentują jego wartość wyjściową. Upraszcza to rozwiązywanie problemów w programie. Niestety, wyjście matrycy LED nie jest wyświetlane w aplikacji.

Ostatnią opcją węzła kamery jest test emotikonów. To przekłada twarze na obrazie na emocje.

Instruktażowy robot
Instruktażowy robot

Powyższe przykłady są proste, ale pokazują podstawową zasadę. Można dodać dodatkowe bloki logiczne i neuronowe, aby tworzyć bardziej złożone programy

Krok 8: Rozpoznawanie głosu (mikrofon)

Rozpoznawanie głosu (mikrofon)
Rozpoznawanie głosu (mikrofon)
Rozpoznawanie głosu (mikrofon)
Rozpoznawanie głosu (mikrofon)

Oprócz kamery do bloku WiFi można podłączyć mikrofon/głośnik Neuron. Może to służyć do nagrywania i odtwarzania fragmentów audio. Podłączenie tego neuronu daje dodatkową zakładkę „dźwięk” w aplikacji.

Węzeł nagrywania będzie nagrywać dźwięk tylko wtedy, gdy na wejściu jest „Y”, wymaga to przycisku lub przełącznika. Nagrany fragment audio jest wyjściem węzła nagrywania. Dodanie węzła „odtwórz dźwięk” natychmiast odtwarza to wyjście. Można to wykorzystać zrobić papugę:

Instruktażowy robot
Instruktażowy robot

Kliknięcie węzła mikrofonu daje 2 opcje: „głos do tekstu” i „zapisz nagranie”.

Węzeł „zapisz rekord” zapisuje plik audio w systemie plików wewnątrz bloku WiFi. Ten plik jest nadpisywany za każdym razem, gdy rozpoczyna się nowe nagranie.

Węzeł „Odtwórz dźwięk” może odtwarzać dźwięk wejściowy, ale można również wybrać efekt dźwiękowy lub nagrany plik. Wymaga wyzwalacza wejściowego, aby uruchomić dany dźwięk. I zatrzymuje się natychmiast, gdy na wejściu jest 'N' (fałsz). Poniższy przykład to rodzaj dyktafonu. Górny przycisk tworzy nagranie, a dolny odtwarza to nagranie.

Instruktażowy robot
Instruktażowy robot

Opcja głosu na tekst węzła mikrofonu wykorzystuje usługi kognitywne firmy Microsoft do tłumaczenia nagrania na tekst. Węzeł etykiety może wyświetlać dane wyjściowe. Węzły nagrywania i odtwarzania dźwięku nie są wymagane do tłumaczenia głosu na tekst. Ale są one przydatne podczas programowania, aby sprawdzić wyjście.

Instruktażowy robot
Instruktażowy robot

Debugowanie tej funkcji można wykonać, logując się do bloku WiFi (funkcja zaawansowana).

[2018-01-19 23:00:35] [OSTRZEŻENIE] „Serwer dźwięku” obsługi żądań został nazwany:

Możliwe jest sprawdzenie wielu słów. A węzeł porównania działa tak samo jak OCR kamery.

Czasami to samo słowo daje różne wyniki. Na przykład: „do widzenia” może podać jedną z następujących wartości: „do widzenia” lub „do widzenia”. Wymaga to wielu węzłów tekstowych z tym samym wynikiem:

Instruktażowy robot
Instruktażowy robot

Uwaga: domyślnym językiem tekstu jest język angielski.

Krok 9: Rozpoznawanie głosu (Neuron)

Rozpoznawanie głosu (Neuron)
Rozpoznawanie głosu (Neuron)
Rozpoznawanie głosu (Neuron)
Rozpoznawanie głosu (Neuron)
Rozpoznawanie głosu (Neuron)
Rozpoznawanie głosu (Neuron)

Jest to dedykowany neuron do konwersji głosu na tekst. Akceptuje 22 polecenia, które są zakodowane na stałe w bloku i kodzie Neuron:

var COMMAND = {'Włącz światło': 3, „Zmień kolor na czerwony”: 4, „Zmień kolor na niebieski”: 5, „Zmień kolor na zielony”: 6, „Zmień kolor na biały”:7, „Więcej światła”:8, „Mniej światła”:9, „Światło wyłączone”:10, 'Silnik do przodu':11, 'Motor do tyłu':12, 'Przyspieszenie':13, 'Przyspieszenie':14, 'Miłość':15, 'Uśmiech':16, 'Zły':17, 'Smutny': 18, 'Rock and roll':19, 'Fire Fire':20, 'Game start':21, 'Zima nadchodzi':22, 'Start':23, 'Shut down':24};

Ten blok akceptuje tylko język angielski. I wymaga poprawnej wymowy. Nie ma zbyt wiele miejsca na błędy. A nawet głosowe tłumaczenie głosowe Google nie zawsze aktywuje odpowiednie polecenie. Jednak korzystanie z mowy Google pozostaje dobrym punktem wyjścia. Zacznij od "Hello Makeblock", "Hello Makeblok" i/lub "Helo makeblok". Następnie „zbliża się zima” lub „zmień kolor na zielony”.

Te polecenia zostały użyte w kodzie pierwszego obrazu w tym kroku. Wskaźnik po prawej stronie górnego węzła poleceń głosowych to „Y” (prawda). Oznacza to, że polecenie zostało rozpoznane.

Praca z tym neuronem wymaga pewnej praktyki. Na szczęście blok powtarza wiadomość po jej odebraniu (zawiera głośnik i mikrofon).

Krok 10: Zdalnie sterowany żółw LEGO

Zdalnie sterowany żółw LEGO
Zdalnie sterowany żółw LEGO
Zdalnie sterowany żółw LEGO
Zdalnie sterowany żółw LEGO
Zdalnie sterowany żółw LEGO
Zdalnie sterowany żółw LEGO
Zdalnie sterowany żółw LEGO
Zdalnie sterowany żółw LEGO

Zestaw Neuron Explorer zawiera 2 silniki prądu stałego i 2 serwosilniki. To wymaga robota: żółwia trójkołowego. Wykorzystuje silniki i koła z zestawu z niektórymi częściami LEGO jako ramą.

Na tej ramie zamocowanych jest 8 belek w sposób kołowy. Belki te wspierają pasek LED. Na 8 wiązkach umieszczono trzy tablice magnetyczne Neuron. Zawierają one następujące części neuronów:

  • Odbiornik bezprzewodowy
  • Moc
  • 10 cm kabel
  • Sterownik silnika serwo
  • Sterownik silnika prądu stałego
  • Sterownik taśmy LED
  • 10 cm kabel

Ostatni 10 cm kabel jest podłączony do czujnika ultradźwiękowego, który jest umieszczony na głowie żółwia. Głowica ta składa się z czwartej płytki magnetycznej Neuron. Wreszcie ogon składa się z serwomotoru z przymocowaną do niego belką lego.

Wynik wygląda jak „przewody i elektronika”, ale osłona żółwia obejmuje prawie całą elektronikę.

Robotem można sterować za pomocą joysticka. Wymaga to bloku WiFi (lub Bluetooth), joysticka i nadajnika bezprzewodowego. Pilot wymaga źródła zasilania USB. Dostępny jest tylko jeden blok zasilania, który znajduje się wewnątrz robota.

Pierwszy obraz przedstawia możliwy program dla tego robota. Joystick jest podłączony do bloku silnika prądu stałego. Góra/dół dla prędkości i lewo/prawo dla kierunku.

Wyjście czujnika ultradźwiękowego jest porównywane z wartością 100 cm. Jeśli odległość jest większa, na wszystkich diodach wyświetlany jest kolor zielony/żółty. Kolory zmieniają się na czerwono/pomarańczowo, gdy odległość spada poniżej 100 cm.

Ogon wykorzystuje węzeł impulsowy między -180 a 180. Funkcja ABS sprawia, że ujemna wartość jest dodatnia. Ta wartość jest przekazywana do serwomotoru i ogon zaczyna machać.

Łącząc bloki neuronowe i węzły funkcyjne można pisać bardziej złożone programy. Prędkość ogona może zależeć od prędkości robota lub robot może się zatrzymać, jeśli czujnik ultradźwiękowy mierzy mniej niż 30 cm.

Krok 11: Żółw 2.0

Żółw 2.0
Żółw 2.0
Żółw 2.0
Żółw 2.0
Żółw 2.0
Żółw 2.0

Poprzedniego żółwia LEGO można uprościć za pomocą kawałka tektury/drewna. Użyłem kawałka sklejki 8 mm. Za pomocą wyrzynarki utwórz okrąg o średnicy 19 cm. Wywierć wszystkie otwory wiertłem 4,8 mm. Użyj wiertła i wyrzynarki, aby utworzyć kwadratowe otwory. To są na koła i przewody.

Użyłem części LEGO, aby przymocować części Neuron do drewnianej płyty. W zestawie Explorer Kit znajduje się kilka kompatybilnych złączy. Ale możliwe jest również użycie śrub m4 do większości połączeń.

Dwa silniki prądu stałego (z kołami) są przymocowane od spodu (ciemnoczerwone kwadraty). Podobnie jak tylne koło (czarny prostokąt). Belka LEGO technic służy do zwiększenia odległości między płytą a tylnym kołem. Trzy fioletowe kwadraty to tablice magnetyczne Neuron. Czwarta tablica magnetyczna Neuron jest używana do głowicy/czujnika ultradźwiękowego (pomarańczowy prostokąt). Czerwone kółko pokazuje położenie paska LED. Użyj małych gumek (opasek do krosna), aby przymocować taśmę LED.

Ten robot działa z tym samym kodem, co żółw LEGO.

Krok 12: Wewnętrzne oprogramowanie

Wewnętrzne oprogramowanie
Wewnętrzne oprogramowanie
Wewnętrzne oprogramowanie
Wewnętrzne oprogramowanie
Wewnętrzne oprogramowanie
Wewnętrzne oprogramowanie

Programowanie bloków Neuron jest proste, nie ma potrzeby pisania żadnego kodu. Poniższe informacje są zatem przeznaczone tylko dla zaawansowanego użytkownika. Zapewnia pewien wgląd w działanie produktu Neuron.

Strona Makeblock Github zawiera kod Neuron. Możesz go pobrać i zapoznać się z kodem. Jest napisany w JavaScript i używa nodeJS.

Blok WiFi powinien być podłączony do internetu. Gdy aplikacja łączy się z identyfikatorem SID bloku WiFi, otrzymuje adres IP z bloku WiFi. Bloki WiFi działają teraz jak brama.

Adres IP bloku WiFi to 192.168.100.1. Na porcie 80 działa serwer WWW, który pokazuje interfejs konfiguracyjny (hasło = makeblock). Pozwala to na zmianę różnych ustawień i opcji.

Możesz zmienić strefę czasową i/lub SSID Wi-Fi. Ale bądź ostrożny, jest niewiele dokumentacji na temat innych ustawień.

Karta Usługi/Udziały sieciowe pokazuje wszystkie udziały sieciowe. Dodałem dodatkowy udział "Server" do folderu "/tmp/run/mountd/mmcblk0p1/neurons-server". Ten folder (i podfoldery) zawiera wszystkie pliki dzienników, dźwięków i obrazów.

Umożliwia to przeglądanie wszystkich plików za pomocą eksploratora plików systemu Windows. Otwarcie udziału "\192.168.100.1\Server" daje dostęp do odczytu do wszystkich plików silnika Neuron. W tym plik dziennika serwera:

urządzenie uuid: 6A1BC6-AFA-B4B-C1C-FED62004

spróbuj mqtt.connect podłączony do chmury iot ok… [2018-01-19 22:56:43] [OSTRZEŻENIE] serverLog - Obsługa żądań 'serwer dźwięku': {"startRecord"} [2018-01-19 22:56:43] [WARN] serverLog - rozpoczęcie zapisu [2018-01-19 22:56:45] [WARN] serverLog - Obsługa żądań 'serwer dźwięku': {"stopRecord"} [2018-01-19 22:56:45] [WARN] serverLog - zatrzymaj zapis [2018-01-19 22:56:46] [WARN] serverLog - request handler 'sound server': {"speakerRecognize"} requestWynik mowy: cześć

Plik config.js zawiera wszystkie ustawienia. Obejmuje to klucze Microsoft i bieżący poziom dziennika. Można je zmienić, ale zawsze zachowaj kopię oryginalnego pliku.

Domyślny poziom rejestrowania to „OSTRZEŻENIE”. W razie potrzeby można to zmienić:

* `loglevel`: poziom rejestrowania do ustawienia, nie drukuje dziennika o priorytecie niższym niż ustawiony.

* obecnie obsługuje loglevel * **TRACE**, * **DEBUG**, * **INFO**, * **WARN**, * **BŁĄD**, * **FATAL**

Utworzyłem udział sieciowy tylko do odczytu. Udział do odczytu i zapisu umożliwia umieszczanie obrazów-j.webp

Istnieje również serwer ssh działający na porcie 22. Umożliwia to zalogowanie się do powłoki Linuksa. Użyj Putty, aby połączyć się z 192.168.100.1 i zalogować się za pomocą użytkownika root i hasła makeblock. Ale bądź bardzo ostrożny.

Bloki WiFi uruchamiają OpenWrt. To jest dystrybucja Linuksa dla urządzeń wbudowanych. Oprogramowanie Neuron znajduje się w katalogu "/tmp/run/mountd/mmcblk0p1/neurons-server".

Większość bloków Neuron można zaprogramować za pomocą oprogramowania mBlock. Wymaga to wersji 4.0.4 oprogramowania. Usługi firmy Microsoft nie są dostępne w tej wersji podstawowej. Można użyć funkcji rozpoznawania głosu Neuron, który nie wymaga tych usług. mBlock w wersji 5 nie obsługuje obecnie bloków Neuron (styczeń 2018).

Bloki kodu Neuron są dostępne w części Robots (niebieski). A oprogramowanie mBlock ma tę zaletę, że można używać nie tylko połączonych bloków. Używanie bloków, których nie masz, nie ma sensu, ale umożliwia to pisanie kodu bez podłączonych bloków Neuron.

Domyślne hasło należy zmienić, gdy Neuron jest używany w otwartej sieci WiFi.

Krok 13: Wewnętrzne elementy sprzętu

Wewnętrzne elementy sprzętowe
Wewnętrzne elementy sprzętowe
Wewnętrzne elementy sprzętowe
Wewnętrzne elementy sprzętowe
Wewnętrzne elementy sprzętowe
Wewnętrzne elementy sprzętowe

Te informacje o sprzęcie mają jedynie charakter informacyjny. Nie został zweryfikowany przez Makeblock!

Większość sprzętu z produktów Makeblock jest dobrze udokumentowana. Ale nie ma zbyt wielu informacji o sprzęcie o produkcie Neuron. Na Kickstarterze jest kilka zdjęć, ale to pokazuje wnętrze prototypu. Ten ma tylko jedno złącze USB, a rzeczywisty produkt ma dwa złącza USB.

Serwer sieciowy wewnątrz bloku WiFi ujawnia rzeczywisty sprzęt używany w tym bloku. To MediaTek LinkIt Smart 7688. Kluczowe cechy tej płyty to:

  • Działa na OpenWrt Linux i wspiera tworzenie aplikacji w Pythonie, Node.js i natywnych językach programowania C.
  • Wykorzystuje MT7688AN jako samodzielny MPU i obsługuje dwa tryby pracy – IoT gateway i IoT device mode
  • Obsługuje Wi-Fi, host USB i karty SD.
  • Pin-out dla PWM, I2C, SPI, UART, Ethernet i I2S.
  • Obsługuje do 256 MB pamięci RAM z dodatkową pamięcią na karcie SD.

Systemy plików Linux pokazują wewnętrzną pamięć dyskową:

root@makeblock_linkit:~# df -h

Używany rozmiar systemu plików Dostępny Użyj% Zamontowany w rootfs 17,9M 644,0K 17,3M 4% / /dev/root 12,8M 12,8M 0 100% /rom tmpfs 61,7M 812,0K 60,9M 1% /tmp /dev/mtdblock6 17,9M 644,0K 17,3M 4% /overlay overlayfs:/overlay 17,9M 644,0K 17,3M 4% / tmpfs 512,0K 0 512,0K 0% /dev /dev/mmcblk0p1 1,8G 101,4M 1,7G 5% /tmp/run/mountd/mmcblk0p1/

Wewnątrz bloku znajduje się wolumin dyskowy o nazwie mmcblk01. Ta nazwa jest używana głównie w przypadku kart pamięci. Wygląda na to, że w środku znajduje się karta SD o pojemności 2 GB (1,7 GB + 256 MB dla LinkIt 7688).

Piny pogo mają 4 złącza: jedno do VCC, jedno do masy i dwa do komunikacji. Bloki Neuron prawdopodobnie komunikują się z protokołem I2c. Wewnątrz każdego neuronu musi znajdować się płytka kompatybilna z Arduino.

Zalecana: