Spisu treści:

Wskaźnik kierunkowy Micro:bit do kasków rowerowych: 5 kroków
Wskaźnik kierunkowy Micro:bit do kasków rowerowych: 5 kroków

Wideo: Wskaźnik kierunkowy Micro:bit do kasków rowerowych: 5 kroków

Wideo: Wskaźnik kierunkowy Micro:bit do kasków rowerowych: 5 kroków
Wideo: Outfity za ponad 200.000zł! 2024, Listopad
Anonim
Wskaźnik kierunkowy Micro:bit do kasków rowerowych
Wskaźnik kierunkowy Micro:bit do kasków rowerowych
Wskaźnik kierunkowy Micro:bit do kasków rowerowych
Wskaźnik kierunkowy Micro:bit do kasków rowerowych
Wskaźnik kierunkowy Micro:bit do kasków rowerowych
Wskaźnik kierunkowy Micro:bit do kasków rowerowych

Zaktualizowana wersja 2018-maj-12

Poniżej znajduje się instrukcja, jak zbudować prosty wskaźnik kierunku oparty na technologii micro:bit do kasków rowerowych (lub podobnych). Wykorzystuje akcelerometry wbudowane w micro:bit jako elementy sterujące.

Dostarczone skrypty micro python są zoptymalizowane dla mu, edytora micro python z określonym "trybem" dla micro:bit. W najnowszej wersji jest wyposażony w ploter szeregowy i początkowo chciałem tylko zrozumieć, jak używać go do wyświetlania zmierzonych wartości (podpowiedź: wyślij dane jako krotki: print((x, y, z)), używając podwójnych nawiasów).

Na wyświetlaczu LED 5x5 urządzenia micro:bit wyświetlane są cztery wzory:

  • W stanie spoczynku wyświetlany jest ładny, losowy wzór. Obecnie można znaleźć skrypty dla trzech różnych wzorców, wzorca „świetlik”, „deszcz” i „spadająca gwiazda”. Zajrzyj i wybierz ten, który najbardziej Ci się podoba. Możesz swobodnie dostosować parametry, aby były bardziej lub mniej gęste lub działały szybciej lub wolniej.
  • Dalej znajdują się wskaźniki „skręć w prawo” lub „skręć w lewo” w postaci poruszających się strzałek. Aktywuje się je przechylając głowę w lewo lub w prawo, naciskając przyciski na micro:bit. W wersji skryptu z przyciskami zewnętrznymi aktywuj, naciskając jeden z przycisków zewnętrznych podłączonych do pinów 0 i 1.
  • Jeśli pochylisz głowę do tyłu lub oba przyciski na micro:bit zostaną aktywowane w tym samym czasie, wyświetli się wzór „alert” lub „break”.

Ten wyświetlający wzorzec micro:bit może być używany jako wskaźnik kierunkowy, np. do jazdy na rowerze, jazdy na łyżwach lub na nartach. Zamocuj micro:bit na kasku i kontroluj go za pomocą pozycji głowy. Lub napraw go na swoim rowerze, załaduj skrypt przycisku zewnętrznego i steruj nim za pomocą dwóch zewnętrznych przełączników podłączonych do micro:bit za pomocą kilku kabli.

Dla osób pracujących z MakeCode dodałem w ostatnim kroku skrypt blokowy, który można skopiować bezpośrednio do micro:bit. Jest mniej wyszukany, ale zapewnia podstawową funkcjonalność bez konieczności instalowania mu.

Proszę pamiętaj:

  • Chociaż ten projekt może być pomocny dla twojego bezpieczeństwa, upewnij się, że zawsze jasno wskazujesz, gdzie chcesz prowadzić, używając rąk i ramion.
  • Koncepcja nie była intensywnie testowana na drodze i miała służyć jedynie jako przykład programowania. Używaj go na własne ryzyko.
  • Z wersji podstawowej korzystaj tylko w suchych warunkach pogodowych, ponieważ micro:bit i akumulator lub pakiety LiPo są wrażliwe na wilgoć. Poniżej znajduje się opis, jak zbudować enkapsulowaną wersję.

Krok 1: Użyte materiały

Micro:bit. Komputer z zainstalowanym edytorem mu. Akumulator lub pakiet LiPo do micro:bit. Kask rowerowy. Użyłem takiego, który miał podświetlenie LED. Kawałek polipropylenowej tektury o grubości 3 mm, jako element dystansowy między micro:bit a hełmem. Dwustronna taśma klejąca do mocowania micro:bita do elementu dystansowego, a ten do kasku. taśma do mocowania micro:bit i akumulatora w kasku.

W przypadku wersji zamkniętej: pudełko z przezroczystego tworzywa sztucznego 59 x 59 x 30 mm, Modulor, Berlin: 0,70 Euro Kitronic MI:płyta zasilająca, dwustronna taśma klejąca za 5 GBP i kawałek płytek PP

Dla wersji z przełącznikami zewnętrznymi (szczegóły nie pokazane tutaj):Przewody połączeniowe i dwa przełączniki, dwie białe diody LED, rezystor 10 kOhm, płytka stykowa. Zaciski krokodylkowe. śruby mosiężne M3 (20 mm), nakrętki nylonowe M3; po cztery, dla pinu 0, pinu 1, 3V i masy. Przełóż wkręty przez otwory w płytce drukowanej micro:bit i przykręć je wkrętami. Ułatwiają mocowanie zacisków krokodylkowych.

Krok 2: Konfiguracja urządzenia, instalacja skryptu

Konfiguracja urządzenia, instalacja skryptu
Konfiguracja urządzenia, instalacja skryptu
Konfiguracja urządzenia, instalacja skryptu
Konfiguracja urządzenia, instalacja skryptu
  • Zainstaluj edytor mu na swoim komputerze.
  • Podłącz micro:bit do komputera.
  • Załaduj żądany skrypt.
  • Flash skrypt do micro:bit.
  • W przypadku skryptów akcelerometru (hełmu) przymocuj micro:bit i akumulator do kasku. Jako element dystansowy i przewód dwustronny taśmę po obu stronach, aby przymocować micro:bit do kasku. Następnie przymocuj micro:bit i akumulator taśmą klejącą do kasku.
  • Aby sprawdziła się pogoda, spójrz na późniejszy krok.
  • W razie potrzeby dostosuj wartości progowe x i z zgodnie z własnymi potrzebami.

W przypadku skryptu sterowanego przyciskami i jeśli chcesz używać przycisków zewnętrznych, podłącz szyny zasilające płytki stykowej do portów Gnd i 3V micro:bit. Podłącz przyciski do Gnd oraz portów Pin0 i Pin1

Krok 3: Skrypty Micro Pythona

W załączeniu znajdują się skrypty micro python dla mu i micro:bit.

Istnieją cztery skrypty: jeden kontrolujący wyświetlacz za pomocą wbudowanych i zewnętrznych przycisków, trzy za pomocą wbudowanych akcelerometrów micro:bit. Mają różne generatory losowych wzorców dla stanu spoczynku.

Istnieje wzór „świetlika”, wzór „deszczu” i wzór „spadającej gwiazdy” (w stylu matrycy). Skrypt świetlika/akcelerometru znajduje się poniżej. Istnieje również skrypt, który ma wszystkie trzy wzorce i uruchamia je w losowej kolejności, z nowym wyborem za każdym razem, gdy wskaźnik został aktywowany.

Wartości akcelerometru są przesyłane do komputera i można je odczytać za pomocą monitora szeregowego edytora mu lub wyświetlić na ploterze szeregowym.

Łatwo jest zmienić parametry, aby dostosować skrypty do własnych wymagań i preferencji.

'''Wersja sterowana kątem/akcelerometrem lub wbudowanymi przyciskami. 2018-Maj-07 Prosty skrypt, który tworzy wzór "świetlika" w stanie spoczynku, poruszające się strzałki w lewo lub w prawo, jeśli bit m jest skręcony w odpowiednim kierunku, lub przyciski A lub B są naciśnięte lub wskaźnik przerwania/alert jeśli oba przyciski są wciśnięte lub bit m jest wygięty do tyłu. Może być używany do podświetlenia kasku rowerowego lub podobnego. Kompilacja dla edytora mu micro Python autorstwa dr H. https://www.instructables.com/id/A-Microbit-Direction-Indicator-for-Biking-Helmets/ ''' z importu microbit * import random random.seed(3433) # wpisz swoją szczęśliwą liczbę de = 100 # ustawia czas opóźnienia wyświetlania w ms ff1 = 100 # ustawia czas opóźnienia świetlika 1 w ms ff2 = 50 # ustawia czas opóźnienia świetlika 2 w ms fn = 3 # ustawia liczbę punktów nasion świetlika thresh_z = 80 # wartość progowa dla wstecznego thresh_x = 350 # wartość progowa dla bocznych # zdefiniuj obrazy image_l_1 = Image("00900:" "09000:" "97531:" "09000:" "00900") image_l_2 = Image("09000:" "90000:" "75319:" "90000:" "09000") image_l_3 = Obraz("90000:" "00009:" "53197:" "00009:" "90000") image_l_4 = Obraz("00009:" "00090:" "31975:" "00090:" "00009") image_l_5 = Obraz("00090:" "00900:" "19753:" "00900:" "00090") image_r_1 = Obraz("00900:" "00090:" "13579:" "00090:" "00900") image_r_2 = Obraz("00090:" "00009:" "91357:" "00009:" "00090") image_r_3 = Obraz("00009:" "90000:" "79135:" "90000:" "00009") image_r_4 = Image("90000:" "09000:" "57913:" "09000:" "90000") image_r_5 = Image("09000:" "00900:" "35791:" "00900:" "09000") image_z_1 = Image("90009:" "00000:" "00900:" "00000:" "90009") image_z_2 = Image("09090:" "90009:" "00000:" "90009:" "09090") # uruchom program while True: print((accelerometer.get_x(), accelerometer.get_y(), accelerometer.get_z())) # do użycia z monitorem szeregowym lub ploterem w celu optymalizacji wartości progowej; # wycisz klawiszem '#', jeśli nie jest używany if ((accelerometer.get_z() > thresh_z) # głowa odgięta do tyłu, dostosuj w razie potrzeby lub (button_a.is_pressed() i button_b.is_pressed())): # do celów kontrolnych wyświetl. show(Image. DIAMOND_SMALL) sleep(de) display.show(Image. DIAMOND) sleep(de) display.show(image_z_2) sleep(de) display.show(image_z_1) sleep(de) display.clear() elif ((accelerometer.get_x() thresh_x) # wskaźnik kierunku w prawo; aby aktywować zgięcie głowicy około 20 stopni w prawo lub button_b.is_pressed()): display.show(image_r_1) sleep(de) display.show(image_r_2) sleep(de) display. show(image_r_3) sleep(de) display.show(image_r_4) sleep(de) display.show(image_r_5) sleep(de) display.clear() else: # generator wzorców 'firefly' dla g w zakresie(0, fn): # inicjuje podaną liczbę (fn) pikseli x = random.randint(0, 4) # wybiera losową pozycję y = random.randint(0, 4) v = 9 # maksymalna jasność inicjatora # v = random.randint(0, 9) # opcjonalnie: losowe wyświetlanie jasności nasion.set_pixel(x, y, v) # ustaw prędkość uśpienia świetlika (ff1) # display for ff ms # zmniejsza intensywność wszystkich pikseli o jeden krok dla j in range(0, 5): # dla każdego piksela tablicy LED dla i in range(0, 5): b = display.get_pixel(i, j) # pobierz natężenie prądu, jeśli (b > 0): f = b - 1 # zmniejsz jasność o jeden inny: f = 0 # ustawia 0 jako najniższą dozwoloną wartość display.set_pixel(i, j, f) sleep(ff2)

Krok 4: Hermetyzowana, odporna na warunki pogodowe wersja

Zamknięta, odporna na warunki pogodowe wersja
Zamknięta, odporna na warunki pogodowe wersja
Zamknięta, odporna na warunki pogodowe wersja
Zamknięta, odporna na warunki pogodowe wersja
Zamknięta, odporna na warunki pogodowe wersja
Zamknięta, odporna na warunki pogodowe wersja
Zamknięta, odporna na warunki pogodowe wersja
Zamknięta, odporna na warunki pogodowe wersja

Jak wspomniano powyżej, podstawowa wersja nie jest odporna na warunki atmosferyczne. Dlatego zbudowałem wersję hermetyczną.

Do zasilania micro:bit tutaj użyłem płyty Kitronic MI:power. Zasilany jest baterią monetową 3 V i może być przymocowany do micro:bit za pomocą trzech śrub i nakrętek. Posiada również wbudowany wyłącznik zasilania. Alternatywnie możesz użyć baterii LiPo.

Jako obudowę używam przezroczystego plastikowego pudełka o wymiarach 59 x 59 x 30 mm. Jako element dystansowy użyto kawałka plastikowej tektury o grubości 3 mm pokrytej dwustronną taśmą klejącą. Jest to wymagane, ponieważ tył MI:power nie jest nawet spowodowany nakrętkami i utrzymuje micro:bit na miejscu.

Pudełko z micro:bit jest następnie mocowane do hełmu za pomocą kolejnego kawałka plastikowego kartonu pokrytego dwustronną taśmą.

Krok 5: Skrypt MakeCode

Dla tych, którzy nie chcą lub nie mogą zainstalować mu, dodałem skrypt blokowy MakeCode o podobnych funkcjonalnościach. Zdecydowanie nie tak wyszukane, ale wystarczająco dobre, aby pokazać zasadę.

Możesz po prostu skopiować plik do swojego micro:bit i grać.

Zalecana: