Mündəricat:

Velosiped Dəbilqələri üçün Mikro: Bit İstiqamət Göstəricisi: 5 addım
Velosiped Dəbilqələri üçün Mikro: Bit İstiqamət Göstəricisi: 5 addım

Video: Velosiped Dəbilqələri üçün Mikro: Bit İstiqamət Göstəricisi: 5 addım

Video: Velosiped Dəbilqələri üçün Mikro: Bit İstiqamət Göstəricisi: 5 addım
Video: Fysetc Spider v1.1 - TMC2209 Sensorless Homing with Controller Fan 2024, Dekabr
Anonim
Velosiped Dəbilqələri üçün Mikro: Bit İstiqamət Göstəricisi
Velosiped Dəbilqələri üçün Mikro: Bit İstiqamət Göstəricisi
Velosiped Dəbilqələri üçün Mikro: Bit İstiqamət Göstəricisi
Velosiped Dəbilqələri üçün Mikro: Bit İstiqamət Göstəricisi
Velosiped Dəbilqələri üçün Mikro: Bit İstiqamət Göstəricisi
Velosiped Dəbilqələri üçün Mikro: Bit İstiqamət Göstəricisi

Yenilənmiş Versiya 2018-May-12

Aşağıda velosiped dəbilqələri (və ya bənzəri) üçün sadə bir mikro: bit əsaslı istiqamət göstəricisi qurmaq üçün təlimatlar verilmişdir. Nəzarət olaraq mikro: bitdəki akselerometrlərdən istifadə edir.

Təqdim olunan mikro python skriptləri, mikro: bit üçün xüsusi "rejimi" olan mikro python redaktoru mu üçün optimize edilmişdir. Ən son versiyasında bir serial plotter ilə gəlir və əvvəlcə ölçülmüş dəyərləri göstərmək üçün necə istifadə ediləcəyini başa düşmək istədim (işarə: məlumatları tuplar şəklində göndərin: çap ((x, y, z)), cüt mötərizədən istifadə edin).

Mikro: bitin 5x5 LED displeyində dörd nümunə göstərilir:

  • İstirahət vəziyyətində gözəl, təsadüfi bir nümunə göstərilir. Hal -hazırda 'firefly', 'yağış' və 'düşən ulduz' nümunəsi olan üç fərqli nümunə üçün skript tapa bilərsiniz. Baxın və ən çox bəyəndiyiniz birini seçin. Parametrləri düzəltməkdən, onları daha az və ya daha sıx etməkdən və ya daha sürətli və ya yavaş işlətməkdən çekinmeyin.
  • Sonra hərəkət edən oxlar şəklində "sağa dön" və ya "sola dön" göstəriciləri var. Başınızı sola və ya sağa əyərək, mikro: bit düymələrinə basaraq aktivləşdirilirlər. Skriptin xarici düymə versiyasında, 0 və 1 sancaqlar ilə əlaqəli xarici düymələrdən birinə basaraq aktivləşdirin.
  • Başınızı geriyə əysəniz və ya mikro: bitdəki hər iki düymə eyni anda aktiv olarsa "xəbərdarlıq" və ya "qırılma" nümunəsi göstərilir.

Bu nümunə göstərən mikro: bit istiqamət göstəricisi kimi istifadə edilə bilər, məsələn. velosiped sürmək, xizək sürmək və ya xizək sürmək üçün. Mikro: biti kaskanıza düzəldin və başınızın mövqeyi ilə idarə edin. Və ya velosipedinizə düzəldin, xarici düymə skriptini yükləyin və mikro: bitə bəzi kabellər vasitəsilə bağlanmış iki xarici açarla idarə edin.

MakeCode ilə işləyənlər üçün son addımda birbaşa micro: bit -ə kopyalana bilən bir blok skript əlavə etdim. Daha az zövqlüdür, lakin mu yükləməyə ehtiyac olmadan əsas funksiyanı verir.

Xahiş edirik unutmayın:

  • Bu layihə təhlükəsizliyiniz üçün faydalı olsa da, zəhmət olmasa əllərinizi və qollarınızı istifadə edərək maşın sürmək istədiyiniz yerləri həmişə açıq şəkildə göstərdiyinizə əmin olun.
  • Konsepsiya yolda geniş şəkildə sınaqdan keçirilməmiş və yalnız proqramlaşdırma nümunəsi olaraq hazırlanmışdır. Öz riski ilə istifadə edin.
  • Əsas versiyanı yalnız quru hava şəraitində istifadə edin, çünki mikro: bit və batareya və ya LiPo paketləri nəmə həssasdır. Kapsüllü bir versiyanın daha aşağıda necə qurulacağının təsviri var.

Addım 1: İstifadə olunan materiallar

Mikro: bit. Mü redaktoru quraşdırılmış kompüter. Mikro: bit üçün batareya paketi və ya LiPo paketi. Velosiped dəbilqəsi. Bir LED arxa işığı olan birindən istifadə etdim. Mikro: bit və dəbilqə arasındakı məsafə olaraq 3 mm polipropilen kartondan bir parça. Mikro: biti məsafə parçasına, bu isə dəbilqəyə düzəltmək üçün iki tərəfli yapışan bant. kaskada mikro: bit və batareya paketini düzəltmək üçün bant.

Kapsüllü bir versiya üçün: 59 x 59 x 30 mm şəffaf plastik qutu, Modulor, Berlin: 0, 70 Euro Kitronic MI: elektrik lövhəsi, 5 GBP iki tərəfli yapışan bant və bir PP lövhə parçası

Xarici açarların versiyası üçün (detallar burada göstərilmir): Tullanan kabellər və iki açar, iki ağ LED, 10 kOhm rezistor, çörək taxtası. Timsah qısqacları. M3 pirinç vintlər (20 mm), M3 neylon qoz -fındıq; pin 0, pin 1, 3V və Ground üçün hər biri dörd. Vintləri mikro: bit PCB -nin deliklərindən keçirin və vintlər ilə düzəldin. Timsah sıxaclarını bağlamağı asanlaşdırırlar.

Addım 2: Cihazın Qurulması, Skriptin Quraşdırılması

Cihazın Qurulması, Skriptin Quraşdırılması
Cihazın Qurulması, Skriptin Quraşdırılması
Cihazın Qurulması, Skriptin Quraşdırılması
Cihazın Qurulması, Skriptin Quraşdırılması
  • Mu redaktorunu kompüterinizə quraşdırın.
  • Mikro: biti kompüterə qoşun.
  • İstədiyiniz skript yükləyin.
  • Skripti mikro: bitə yandırın.
  • Sürətölçən (dəbilqə) skriptləri vəziyyətində, mikro: bit və batareya paketini dəbilqəyə düzəldin, kiçik bir parça plastik kartondan istifadə etdim, bu materialı hardware mağazanızda tapa bilərsiniz. Məsafə parçası və iki tərəfli kanal mikro: biti kaskaya bağlamaq üçün hər iki tərəfə bant qoyun. Sonra mikro: bit və batareya paketini kaskanıza yapışan bantla düzəldin.
  • Hava şəraitini sübut etmək üçün sonrakı mərhələyə nəzər salın.
  • Gerekirse, x və z eşik dəyərlərini ehtiyaclarınıza uyğun olaraq tənzimləyin.

Düymə ilə idarə olunan skript vəziyyətində və xarici düymələrdən istifadə etmək istəyirsinizsə, çörək taxtasının elektrik raylarını Gnd və 3V micro: bit portlarına qoşun. Düymələri Gnd və Pin0 və Pin1 portlarına bağlayın

Addım 3: Micro Python Skriptləri

Mu və micro: bit üçün mikro python skriptlərini tapa bilərsiniz.

Dörd skript var: biri quraşdırılmış və xarici düymələrdən istifadə edərək ekranı idarə edir, üçü də micro: bit-in qurulmuş akselerometrlərindən istifadə edir. İstirahət vəziyyətində fərqli təsadüfi model generatorları var.

'Atəşböceği', 'yağış' və 'düşən ulduz' (matrisə bənzər) naxışları var. Atəşböceği/sürətölçən skript aşağıda verilmişdir. Hər üç nümunəyə sahib olan və hər dəfə bir göstərici aktiv edildikdə yeni bir seçimlə təsadüfi qaydada işləyən bir skript də var.

Akselerometr dəyərləri kompüterə göndərilir və mu redaktorunun serial monitoru vasitəsilə oxunur və ya serial plotterdə göstərilə bilər.

Skriptləri tələblərinizə və seçimlərinizə uyğunlaşdırmaq üçün parametrləri dəyişdirmək asandır.

'' 'Bucaq/sürətölçən və ya quraşdırılmış düymələr idarə olunan versiya. 2018-May-07, m-bit əsas istiqamətdə bükülürsə və ya A və ya B düymələrinə basıldıqda və ya qırılma göstəricisi/xəbərdarlıq nümunəsində, istirahət vəziyyətində "solucan" modeli, sola və ya sağa hərəkət edən oxlar istehsal edən sadə bir skript. hər iki düyməyə basılırsa və ya m-bit geriyə əyilirsə. Velosiped kaskasının arxa işığı və ya bənzəri üçün istifadə oluna bilər. Doktor H. tərəfindən yaradılan mu mikro python redaktoru üçün yaradın. 3433) # şanslı nömrənizi daxil edin de = 100 # gecikmə müddətini ms olaraq göstərin ff1 = 100 # firefly gecikmə müddətini ms -ə 1 -ə təyin edin ff2 = 50 # firefly gecikmə müddətini ms -ə 2 olaraq təyin edin fn = 3 # firefly toxum nöqtələrinin sayını təyin edin thresh_z = 80 threshold value for backwards thresh_x = 350 # threshold value for sidewards # define images image_l_1 = Şəkil ("00900:" "09000:" "97531:" "09000:" "00900") image_l_2 = Şəkil ("09000:" "90000:" "75319:" "90000:" "09000") image_l_3 = Görüntü ("90000:" "00009:" "53197:" "00009:" "90000") image_l_4 = Görüntü ("00009:" "00090: "" 31975: "" 00090: "" 00009 ") image_l_5 = Görüntü (" 00090: "" 00900: "" 19753: "" 00900: "" 00090 ") image_r_1 = Görüntü (" 00900: "" 00090: " "13579:" "00090:" "00900") image_r_2 = Şəkil ("00090:" "00009:" "91357:" "00009:" "00090") image_r_3 = Görüntü ("00009:" "90000:" "79135: "" 90000: "" 00009 ") image_r_4 = Görüntü ("90000:" "09000:" "57913:" "09000:" "90000") image_r_5 = Görüntü ("09000:" "00900:" "35791:" "00900:" "09000") image_z_1 = Image ("90009:" "00000:" "00900:" "00000:" "90009") image_z_2 = Image ("09090:" "90009:" "00000:" "90009:" "09090") # proqramı başladın isə True: print ((accelerometer.get_x (), accelerometer.get_y (), accelerometer.get_z ())) # seriya monitoru və ya eşik dəyərinin optimallaşdırılması üçün plotter ilə birlikdə istifadə ediləcək; # ("accelerometer.get_z ()> thresh_z) # baş əyilmişsə, lazım olduqda tənzimləyin və ya (button_a.is_pressed () və button_b.is_pressed ())): # istifadə edilmədikdə ' #' ilə səssiz edin: nəzarət məqsədləri üçün göstərilir. show (Image. DIAMOND_SMALL) yuxu (de) ekran.şou (Şəkil. DIAMOND) yuxu (de) display.show (image_z_2) yuxu (de) ekran.şou (image_z_1) yuxu (de) ekran.arıq () elif ((accelerometer.get_x () thresh_x) # istiqamət göstəricisi sağ; əyilmə başını təxminən 20 dərəcə sağa və ya button_b.is_pressed ()) aktivləşdirmək üçün: display.show (image_r_1) yuxu (de) display.show (image_r_2) yuxu (de) göstər. show (image_r_3) yuxu (de) display.show (image_r_4) yuxu (de) display.show (image_r_5) yuxu (de) display. anlaşılmaz () başqa: aralığında g üçün # 'firefly' model generatoru (0, fn): # toxum verilmiş piksel sayı (fn) x = təsadüfi.randint (0, 4) # təsadüfi bir mövqe seçir y = təsadüfi.randint (0, 4) v = 9 # toxum parlaqlığı maksimum # v = təsadüfi.randint (0, 9) # isteğe bağlı: təsadüfi toxum parlaqlığı göstəricisi. Set_pixel (x, y, v) # set atəşböcəyi sürəti yuxu (ff1) # ff ms # üçün ekran, bütün piksellərin intensivliyini j aralığında bir addım azaldır (0, 5): # aralığında i üçün LED dizisinin hər bir pikseli üçün (0, 5): b = display.get_pixel (i, j) # əgər (b> 0): f = b - 1 # parlaqlığı bir başqa azaldırsa cari intensivliyi əldə edin: f = 0 # icazə verilən ən aşağı dəyər olaraq 0 təyin edir. set_pixel (i, j, f) yuxu (ff2))

Addım 4: Kapsüllü, Hava Keçirməyən Bir Versiya

Kapsüllü, Hava Keçirməyən Bir Versiya
Kapsüllü, Hava Keçirməyən Bir Versiya
Kapsüllü, Hava Keçirməyən Bir Versiya
Kapsüllü, Hava Keçirməyən Bir Versiya
Kapsüllü, Hava Keçirməyən Bir Versiya
Kapsüllü, Hava Keçirməyən Bir Versiya
Kapsüllü, Hava Keçirməyən Bir Versiya
Kapsüllü, Hava Keçirməyən Bir Versiya

Yuxarıda qeyd edildiyi kimi, əsas versiya hava şəraitinə davamlı deyil. Buna görə də, kapsula çevrilmiş bir versiya hazırladım.

Mikro: biti gücləndirmək üçün burada Kitronic MI: elektrik lövhəsindən istifadə etdim. 3V sikkə hücrəsi ilə təchiz olunmuşdur və üç bolt və qoz -fındıqla mikro: bitə sabitlənə bilər. O, həmçinin güc qurğusuna malikdir. Alternativ olaraq LiPo batareyasından istifadə edə bilərsiniz.

Mənzil olaraq 59 x 59 x 30 mm şəffaf plastik qutudan istifadə edirəm. Məsafə parçası olaraq 3 tərəfli yapışqan bantla örtülmüş 3 mm plastik kartondan istifadə edilmişdir. MI -nin arxa hissəsi kimi tələb olunur: güc hətta qoz -fındıqdan qaynaqlanmır və mikro: biti yerində saxlayır.

Micro: bit olan qutu daha sonra iki tərəfli lentlə örtülmüş başqa bir plastik kartonla dəbilqəyə bərkidilir.

Addım 5: MakeCode Script

Mu qurmaq istəməyənlər və ya edə bilməyənlər üçün oxşar funksiyalara malik bir MakeCode blok skriptini əlavə etdim. İndiyə qədər o qədər də xülya deyil, amma prinsipi göstərmək üçün kifayət qədər yaxşıdır.

Yalnız faylı micro: bit -ə kopyalaya və oynaya bilərsiniz.

Tövsiyə: