Mundarija:

Minecraft Raspberry Pi Edition yordamida kamalak interaktiv ko'prigini yarating: 11 qadam
Minecraft Raspberry Pi Edition yordamida kamalak interaktiv ko'prigini yarating: 11 qadam

Video: Minecraft Raspberry Pi Edition yordamida kamalak interaktiv ko'prigini yarating: 11 qadam

Video: Minecraft Raspberry Pi Edition yordamida kamalak interaktiv ko'prigini yarating: 11 qadam
Video: Playing Minecraft on a Raspberry Pi 2024, Noyabr
Anonim
Image
Image

Kecha men 8 yoshli jiyanimni Minecraft-da Raspberry Pi bilan o'ynaganini ko'rdim, shundan so'ng men kodni ishlatib, Minecraft-pi LED-bloklarini loyihalashtirishni xohladim. Minecraft Pi - bu Raspberry Pi mikrokompyuterini ishga tushirishning ajoyib usuli, Minecraft Pi - bu Minecraft -ning maxsus tayyorlangan versiyasi, bu bizga o'yin tajribasi va rekvizitlarini sozlash uchun o'lik oddiy Python API yordamida o'yin bilan muloqot qilish imkonini beradi!

Minecraft dunyosida Raspberry Pi yordamida amalga oshirishingiz mumkin bo'lgan ko'plab loyihalar mavjud, lekin biz uchun bu etarli emas edi, biz bir vaqtning o'zida qiyin va miltillovchi narsani qidirardik. Ushbu loyihada biz Minecraft -ning bir nechta bloklarini bosib o'tamiz, blokning identifikatorini aniqlaymiz va interaktiv qadamlar o'yinini yaratish uchun RGB LED -ni yoqadigan rangga qarab, biz bosgan blokning rangini aniqlaymiz!

Men effektga erishish uchun ikkita usuldan foydalanaman, birinchisi aksessuarlardan foydalanadi, bu juda tartibsiz bo'lishi mumkin …; ikkinchisi CrowPi2 dan foydalanmoqda (ko'p sensorli kompyuterni o'rganish, hozirda Kickstarter -da to'plangan: CrowPi2)

Keling, boshlaymiz va bunday ajoyib loyihani qanday arxivlashni ko'rib chiqamiz!

Ta'minotlar

CrowPi2 hozirda kickstarter -da jonli efirda, CrowPi2 loyihasi deyarli 250 ming dollar yig'di.

Havolani bosing:

1 -usul Aksessuarlardan foydalanish

1 -qadam: materiallar

● 1 x Raspberry Pi 4 modeli B

● 1 ta tasvirli TF karta

● 1 x Raspberry Pi quvvat manbai

● 1 x 10,1 dyuymli monitor

● 1 x monitor uchun quvvat manbai

● 1 x HDMI kabeli

● 1 x Klaviatura va sichqoncha

● 1 x RGB LED (umumiy katod)

● 4 x jumper (urg'ochi -ayol)

2 -qadam: ulanish diagrammasi

Ulanish diagrammasi
Ulanish diagrammasi

RGB rangli LEDda qizil chiroq, yashil va ko'k chiroq bo'lgan uchta chiroq bor. Bu uchta chiroqni har xil intensivlikdagi yorug'lik chiqarishi uchun boshqaring va aralashtirilganda ular har xil rangdagi yorug'lik chiqarishi mumkin. LED yoritgichidagi to'rtta pin mos ravishda GND, R, G va B dir. Men ishlatgan RGB LED - bu oddiy katod va Raspberry Pi -ga ulanish quyidagicha:

RaspberryPi 4B (funktsiya nomi bilan) RGB LED

GPIO0 1 RED

GPIO1 3 Yashil

GPIO2 4 moviy

GND 2 GND

Ikkinchi rasm - bu apparat aloqasi

3 -qadam: SPI uchun sozlash

SPI uchun sozlash
SPI uchun sozlash
SPI uchun sozlash
SPI uchun sozlash
SPI uchun sozlash
SPI uchun sozlash
SPI uchun sozlash
SPI uchun sozlash

Biz RGBni boshqarish uchun SPIdan foydalanishimiz kerakligi uchun avval SPI interfeysini yoqishimiz kerak, u sukut bo'yicha o'chirilgan. SPI interfeysini yoqish uchun siz quyidagi amallarni bajarishingiz mumkin:

Birinchidan, siz birinchi rasmda ko'rsatilgandek, Pi start MenupreferencesRaspberry Pi konfiguratsiyasiga o'tish orqali Desktop GUI -dan foydalanishingiz mumkin.

Ikkinchidan, "Interfeyslar" ga o'ting va SPI -ni yoqing va OK ni bosing (ikkinchi rasm).

Nihoyat, o'zgarishlar kuchga kirishi uchun Pi -ni qayta ishga tushiring. Pi -ni ishga tushirish menyusiga bosing Preferentsiyalar O'chirish. Qayta ishga tushirish kerak bo'lgani uchun, qayta yuklash tugmasini bosing.

4 -qadam: Kod

Biz o'z python kodimizni yozishdan boshlaymiz, avval kodimizni Minecraft dunyosi bilan birlashtirish uchun bizga kerak bo'lgan bir nechta kutubxonalarni import qilishdan boshlaymiz. Keyin, biz vaqt kutubxonasini, xususan, uyqu deb nomlangan funktsiyani import qilamiz. Uyqu funktsiyasi bizga funktsiyani bajarishdan oldin ma'lum vaqt oralig'ini kutishga imkon beradi. Va nihoyat, biz RPi. GPIO kutubxonasini import qilamiz, bu bizga Raspberry Pi -da GPIO -ni boshqarishga imkon beradi.

mcpi.minecraft -dan import Minecraft -dan uyquni import qilish RPi. GPIO -ni GPIO sifatida

Mana, biz kutubxonalarni import qilishni tugatdik, endi ulardan foydalanish vaqti keldi! Birinchidan, bu Minecraft kutubxonasidan foydalanish, biz o'z piton skriptimizni Minecraft dunyosiga ulamoqchimiz, buni MCPI kutubxonasining init () funktsiyasidan foydalanib, GPIO rejimini o'rnatib, ogohlantirishni o'chirib qo'yishimiz mumkin.

mc = Minecraft.create () GPIO.setmode (GPIO. BCM) GPIO.setwarnings (0)

Endi biz RGB ranglarini o'zgartirish uchun kamalak ranglarini o'n oltilikda aniqlaymiz.

Oq = 0xFFFFFF QIZIL = 0xFF0000 apelsin = 0xFF7F00 SARI = 0xFFFF00 Yashil = 0x00FF00 CYAN = 0x00FFFF moviy = 0x0000FF binafsha = 0xFF00FF MAGENTA = 0xFF00

Keyinchalik, biz jun blokining rangini yozish uchun ba'zi o'zgaruvchilarni aniqlashimiz kerak, bu allaqachon Minecraft bloklari ro'yxatida aniqlangan.

W_WHITE = 0 W_RED = 14 W_ORANGE = 1 W_YELLOW = 4 W_GREEN = 5 W_CYAN = 9 W_BLUE = 11 W_PURPLE = 10 W_MAGENTA = 2

Minecraft -dagi jun blokining identifikatori - 35. Endi biz RGB uchun pinni sozlashimiz va ular uchun sozlashimiz kerak.

qizil_pin = 17 yashil_pin = 18 ko'k_pin = 27

GPIO.setup (red_pin, GPIO. OUT, boshlang'ich = 1) GPIO.setup (green_pin, GPIO. OUT, boshlang'ich = 1) GPIO.setup (blue_pin, GPIO. OUT, boshlang'ich = 1)

Keyin, har bir pin uchun PWM-ni o'rnating, PWM qiymatining diapazoni 0-100 gacha ekanligini unutmang. Bu erda biz RGB rangini birinchi bo'lib oq (100, 100, 100) ga o'rnatdik.

qizil = GPIO. PWM (red_pin, 100)

yashil = GPIO. PWM (green_pin, 100) ko'k = GPIO. PWM (blue_pin, 100) qizil.start (100) yashil.boshlang (100) ko'k.boshlang (100)

Quyida ikkita funktsiyani yaratish mumkin, ular yordamida RGB kodini ochish va rangini ochish mumkin! E'tibor bering, map2hüzar () funktsiyasi 255 dan 100 gacha bo'lgan qiymatlarni xaritalashdir, yuqorida aytib o'tganimizdek, PWM qiymati 0-100 bo'lishi kerak.

def map2hüz (qiymat): int int (qiymat * 100/255)

def set_color (color_code): # Red_value = color_code >> 16 & 0xFF green_value = color_code >> 8 & 0xFF blue_value = color_code >> 0 & 0xFF

# Xarita qiymatlari qizil_value = map2huz (qizil_qiymat) yashil_qiymat = xarita2 yuz (yashil_qiymat) ko'k_qiymat = xarita2 yuz (ko'k_qiymat)

# Yoqmoq! qizil. ChangeDutyCycle (red_value) yashil. ChangeDutyCycle (green_value) ko'k. ChangeDutyCycle (blue_value)

Juda qoyil! Asosiy dasturni boshlash vaqti keldi, kuting, asosiy dasturdan oldin jun blokining rang kodini yozish uchun boshqa o'zgaruvchini aniqlash kerak:

last_data = 0 urinib ko'ring: x, y, z = mc.player.getPos () mc.setBlocks (x, y, z, x+1, y, z+2, 35, 14) mc.setBlocks (x+2, y+1, z, x+3, y+1, z+2, 35, 11) mc.setBlocks (x+4, y+2, z, x+5, y+2, z+2, 35, 2) mc.setBlocks (x+6, y+3, z, x+7, y+3, z+2, 35, 5) mc.setBlocks (x+8, y+4, z, x+9, y+4, z+2, 35, 4) mc.setBlocks (x+10, y+5, z, x+11, y+5, z+2, 35, 10) mc.setBlocks (x+12, y+6, z, x+13, y+6, z+2, 35, 1) mc.setBlocks (x+14, y+5, z, x+15, y+5, z+2, 35, 10) mc.setBlocks (x+16, y+4, z, x+17, y+4, z+2, 35, 4) mc.setBlocks (x+18, y+3, z, x+19, y+3, z+2, 35, 5) mc.setBlocks (x+20, y+2, z, x+21, y+2, z+2, 35, 2) mc.setBlocks (x+22, y+1, z, x+23, y+1, z+2, 35, 11) mc.setBlocks (x+24, y, z, x+25, y, z+2, 35, 14) rost.: x, y, z = mc.player.getPos () # o'yinchi pozitsiyasi (x, y, z) blok = mc.getBlockWithData (x, y-1, z) # blok identifikatori #print (blok) agar block.id == WOOL va last_data! = Block.data: if block.data == W_RED: print ("Red!") Set_color (RED) if block.data == W_ORANGE: print ("Orange!") Set_color (ORANGE) if block.data == W_ SARI: chop etish ("Sariq!") Set_color (SARI), agar block.data == W_GREEN: chop etish ("Yashil!") Set_color (Yashil) agar block.data == W_CYAN: chop etish ("Ko'k!") Set_color (CYAN)) if block.data == W_BLUE: print ("Moviy!") set_color (KO'K) agar block.data == W_PURPLE: chop etish ("Binafsha!") set_color (PURPLE) agar block.data == W_MAGENTA: chop etish (" Magenta! ") Set_color (MAGENTA) if block.data == W_WHITE: print (" White! ") Set_color (WHITE) last_data = block.data sleep (0.05), KeyboardInterruptdan tashqari: GPIO.cleanup () dan o'ting.

Asosiy dastur yuqorida ko'rsatilgandek, avval rang -barang jun bloklarni yaratish uchun ba'zi buyruqlardan foydalanish kerak, keyin biz bloklarning identifikatorini va uning rang kodini olish uchun o'yinchi o'rnini bilib olishimiz kerak. Blok haqidagi ma'lumotni olgandan so'ng, biz o'yinchi ostidagi blokning jun bloki ekanligini va uning rang kodiga ega ekanligini aniqlash uchun bayonotdan foydalanamiz. Ha bo'lsa, jun bloki qaysi rangda ekanligini baholang va set_color () funktsiyasini chaqiring, RGB ledining rangini jun bloki bilan bir xilda o'zgartiring.

Bundan tashqari, biz GPIO pinlarining chiqishini tozalash uchun dasturdan chiqmoqchi bo'lganimizda, foydalanuvchining uzilishidan tashqari holatni aniqlash uchun try/except ifodasini qo'shamiz.

To'liq kod biriktirilgan.

Yaxshi, juda ko'p aksessuarlar va juda murakkab, to'g'rimi? Xavotir olmang, loyihaga erishishning ikkinchi usulini ko'rib chiqaylik, bu sizni yanada moslashuvchan va qulay his qiladi, bu bizning CrowPi2 -dan foydalanadi!

5 -qadam: Natija

Image
Image

O'yinni oching va skriptni ishga tushiring, natijani yuqoridagi videoda ko'rasiz

Keyin CrowPi2 -dan foydalanib, Rainbow interaktiv ko'prigini quramiz

6-qadam: CrowPi2-Materiallaridan foydalanish

● 1 x CrowPi2

7-qadam: CrowPi2- ulanish diagrammasidan foydalanish

Kerak emas. CrowPi2 -da juda ko'p foydali sensorlar va komponentlar (20 dan ortiq) bor, hammasi bitta malinali noutbukda va STEM ta'lim platformasida, bu bizga bir nechta loyihalarni bemalol va hech qanday terlamasdan bajarishga imkon beradi! Bunday holda, biz CrowPi2 -da jozibali va rang -barang moduldan foydalanamiz, bu 8x8 RGB matritsali modul, bu bizga bir vaqtning o'zida 64 RGB svetodiodni boshqarishga imkon beradi!

8-qadam: CrowPi2 dan foydalanish- SPI uchun sozlash

Kerak emas. CrowPi2 o'quv tizimiga ega o'rnatilgan tasvir bilan birga keladi! Hamma narsa tayyorlangan, ya'ni siz to'g'ridan -to'g'ri dasturlashingiz va o'rganishingiz mumkin. Bundan tashqari, bizning CrowPi2 bilan bu oson va allaqachon STEAM platformasi sifatida taxtaga qo'shilgan.

9-qadam: CrowPi2-dan foydalanish- kod

Endi dasturimizni boshlash vaqti keldi! Birinchidan, Minecraft Pi Python kutubxonasi bo'lgan MCPI kutubxonasi kabi bir nechta kutubxonalarni import qiling, bu bizga Minecraft dunyosi bilan integratsiyalashish uchun juda oddiy API -dan foydalanish imkonini beradi; vaqt kutubxonasi, bu bizga uyqu funktsiyasini bajarishdan oldin ma'lum vaqtni kutish imkonini beradi; Raspi Pi GPIO pinlarini boshqarishga imkon beradigan RPi. GPIO kutubxonasi.

mcpi.minecraft -dan import Minecraft -dan uyquni import qilish RPi. GPIO -ni GPIO sifatida

Nihoyat, biz kutubxonaning ichida RGB Matrix kutubxonasi bo'lgan rpi_ws281x nomli kutubxonani import qilamiz, biz LED tasma moslamasini sozlash uchun PixelStrip va RGB rangli ob'ektni yoqish uchun Rang kabi bir nechta funktsiyalarni ishlatamiz. bizning RGB LED -larimiz

rpi_ws281x importidan PixelStrip, Color

Va bu, biz kutubxonalarni import qilishni tugatdik, endi ulardan foydalanish vaqti keldi! Xuddi shunday, birinchi narsa Minecraft kutubxonasidan foydalanish, biz o'z piton skriptimizni Minecraft dunyosiga ulashni xohlaymiz, buni MCPI kutubxonasining boshlang'ich funktsiyasini chaqirish orqali amalga oshirishimiz mumkin:

mc = Minecraft.create ()

Har safar biz minecrat dunyosida operatsiyalarni amalga oshirishni xohlasak, biz mc ob'ektidan foydalanishimiz mumkin.

Keyingi qadam, biz RGB LEDlarini boshqarish uchun foydalanadigan RGB LED matritsa sinfini aniqlash bo'ladi, biz sinfni asosiy konfiguratsiya bilan boshlaymiz, masalan, LEDlar, pinlar, yorqinlik va boshqalar.

biz "toza" deb nomlangan funktsiyani yaratamiz, u berilgan rang bilan kamroq "tozalaydi", shuningdek, biz ishlatmoqchi bo'lganimizda haqiqiy RGB LED ob'ektini ishga tushiradigan ishga tushirish funktsiyasi.

sinf RGB_Matrix:

def _init _ (o'zi):

# LED tasmasi konfiguratsiyasi:

self. LED_COUNT = 64 # LED piksellar soni.

self. LED_PIN = piksellarga ulangan 12 ta GPIO pin (18 PWMdan foydalanadi!).

self. LED_FREQ_HZ = 800000 # LED signal chastotasi (odatda 800 kHz)

self. LED_DMA = 10 # signalni ishlab chiqarish uchun DMA kanali (10 -ni sinab ko'ring)

self. LED_BRIGHTNESS = 10 # Eng qorong'i uchun 0, eng yorug 'uchun 255 ga sozlang

self. LED_INVERT = Noto'g'ri # Signalni teskari aylantirish uchun rost

self. LED_CHANNEL = 0 # GPIO 13, 19, 41, 45 yoki 53 uchun "1" ga o'rnatildi

# LEDlarni turli yo'llar bilan jonlantiradigan funktsiyalarni aniqlang. def clean (o'zini, tasmasini, rangini):

# bir vaqtning o'zida barcha LEDlarni o'chiring

i uchun diapazonda (strip.numPixels ()):

strip.setPixelColor (i, rang)

strip.show ()

def run (o'zini):

# Tegishli konfiguratsiyaga ega NeoPixel ob'ektini yarating.

strip = PixelStrip (o'zini. LED_COUNT, self. LED_PIN, self. LED_FREQ_HZ, self. LED_DMA, o'zini. LED_INVERT, o'zini. LED_BRIGHTNESS, o'zini. LED_CHANNEL)

harakat qilib ko'ring:

qaytarish chizig'i

KeyboardInterruptdan tashqari:

# uzilishdan oldin LED matritsasini tozalang

o'z -o'zidan toza (tasma)

Yuqoridagilarni bajarganimizdan so'ng, biz bu sinflarni chaqirish va o'z kodimizda foydalanishimiz mumkin bo'lgan ob'ektlarni yaratish vaqti keldi, avval RGB LED matritsali ob'ektni yaratamiz, undan oldin biz yaratgan sinf yordamida foydalanishimiz mumkin:

matrixObject = RGB_Matrix ()

Keling, ushbu ob'ektni RGB matritsasidagi individual LEDlarni boshqarish uchun foydalanadigan faol LED tasmasini yaratish uchun ishlatamiz:

strip = matrixObject.run ()

Nihoyat, bu chiziqni faollashtirish uchun biz oxirgi funktsiyani ishga tushirishimiz kerak bo'ladi:

strip.begin ()

Minecraft API ko'plab bloklarni o'z ichiga oladi, har bir Minecraft blokining o'z identifikatori bor. Bizning misolimizda biz bir qancha Minecraft bloklarini oldik va qaysi rang ularga eng mos kelishini taxmin qilishga harakat qildik.

RGB qizil, yashil va ko'kni anglatadi, shuning uchun har biriga 0 dan 255 gacha bo'lgan 3 xil qiymat kerak bo'ladi, ranglar HEX yoki RGB formatida bo'lishi mumkin, biz o'z misolimiz uchun RGB formatidan foydalanmoqdamiz.

Minecraft Pi dunyosida oddiy ID identifikatorlari va maxsus jun bloklari identifikatorlari mavjud, maxsus jun 35 -raqam ostida, lekin har xil identifikatorlarga ega bo'lgan kichik raqamlar bilan … Biz bu muammoni oddiy bloklar uchun ikkita alohida ro'yxat tuzish orqali hal qilamiz. va maxsus jun bloklari uchun bitta ro'yxat:

Birinchi ro'yxat oddiy bloklar uchun, masalan 0 havo blokini ifodalaydi, biz uni 0, 0, 0 rangini belgilaymiz, u bo'sh yoki to'liq oq, agar o'yinchi sakraganda yoki uchib ketsa, RGB o'chadi, 1 RGB rangi 128, 128, 128 va shunga o'xshash boshqa blok …

#Kamalak ranglari

kamalak_ranglari = {

"0": Rang (0, 0, 0), "1": Rang (128, 128, 128), "2": Rang (0, 255, 0), "3": Rang (160, 82, 45), "4": Rang (128, 128, 128), "22": Rang (0, 0, 255)

}

To'rtta jun bloklari biz ham xuddi shunday qilamiz, lekin shuni esda tutish kerakki, barcha bloklarning identifikatori 35, bu ro'yxatda biz jun blokli pastki turlarini aniqlaymiz. Turli xil jun turlarining ranglari har xil, lekin ularning hammasi jun bloklardir.

jun_ranglari = {

"6": Rang (255, 105, 180), "5": Rang (0, 255, 0), "4": Rang (255, 255, 0), "14": Rang (255, 0, 0), "2": Rang (255, 0, 255)

}

Endi biz asosiy dasturimiz, sinflarimiz va funktsiyalarimizni aniqlab bo'lgach, CrowPi2 RGB LED bort sensori bilan birlashish vaqti keldi.

Asosiy dastur biz ilgari aniqlagan parametrlarni oladi va uskunaga ta'sir qiladi.

Biz CrowPi2 RGB LEDini har bir blokda Minecraft Pi ichida qilgan qadamlarimiz asosida ularni yoqish uchun ishlatamiz, boshlaylik!

Biz qila oladigan birinchi narsa - biz bir nechta jun bloklarini buyruqlar yordamida yaratish va vaqtni yaratish, bu o'yinni o'ynagunimizcha dasturning ishlashini ta'minlash.

Biz o'yinchidan ba'zi ma'lumotlarni olishimiz kerak, birinchi navbatda player.getPos () buyrug'idan foydalanib, o'yinchi o'rnini olishimiz kerak, keyin biz hozirda turgan blokni olish uchun getBlockWithData () dan foydalanamiz (y koordinatasi -1 o'yinchi ostida degan ma'noni anglatadi)

x, y, z = mc.player.getPos ()

mc.setBlocks (x, y, z, x+1, y, z+2, 35, 14)

mc.setBlocks (x+2, y+1, z, x+3, y+1, z+2, 35, 11)

mc.setBlocks (x+4, y+2, z, x+5, y+2, z+2, 35, 2)

mc.setBlocks (x+6, y+3, z, x+7, y+3, z+2, 35, 5)

mc.setBlocks (x+8, y+4, z, x+9, y+4, z+2, 35, 4)

mc.setBlocks (x+10, y+5, z, x+11, y+5, z+2, 35, 10)

mc.setBlocks (x+12, y+6, z, x+13, y+6, z+2, 35, 1)

mc.setBlocks (x+14, y+5, z, x+15, y+5, z+2, 35, 10)

mc.setBlocks (x+16, y+4, z, x+17, y+4, z+2, 35, 4)

mc.setBlocks (x+18, y+3, z, x+19, y+3, z+2, 35, 5)

mc.setBlocks (x+20, y+2, z, x+21, y+2, z+2, 35, 2)

mc.setBlocks (x+22, y+1, z, x+23, y+1, z+2, 35, 11)

mc.setBlocks (x+24, y, z, x+25, y, z+2, 35, 14)

rost bo'lsa:

x, y, z = mc.player.getPos () # o'yinchi pozitsiyasi (x, y, z)

blockType, ma'lumotlar = mc.getBlockWithData (x, y-1, z) # blok identifikatori

bosib chiqarish (blockType)

Keyin biz blokning jun bloki ekanligini tekshiramiz, ID raqami 35, agar shunday bo'lsa, biz lug'at identifikatoriga asoslanib, blokining rangiga ega jun_colorsga murojaat qilamiz va shunga mos ravishda to'g'ri rangni yoritamiz.

agar blockType == 35:

# maxsus jun ranglari

matrixObject.clean (strip, jun_colors [str (ma'lumotlar)])

Agar bu jun blok bo'lmasa, biz istisnolardan qochish uchun blok hozirda kamalak ranglari lug'atida mavjudligini tekshirib ko'ramiz, agar shunday bo'lsa, biz rangni olish va RGB o'zgartirish orqali davom etamiz.

agar kamalak ranglarida str (blockType) bo'lsa:

bosib chiqarish (kamalak_ranglari [str (blockType)]))

matrixObject.clean (tasma, kamalak_ranglari [str (blockType)])

uxlash (0,5)

Siz har doim ko'proq rang va ko'proq bloklarni qo'llab -quvvatlash uchun kamalak rangiga ko'proq blok qo'shishingiz mumkin!

Zo'r! Aksessuarlar yordamida loyihalarni amalga oshirish juda murakkab, lekin CrowPi2 integratsiyalashgan sxemasidan foydalanib, ishlar ancha osonlashadi! Bundan tashqari, CrowPi2 -da 20 dan ortiq sensorlar va komponentlar mavjud, bu sizning ideal loyihalaringizga va hatto AI loyihalariga erishishga imkon beradi!

Quyida to'liq kod:

10-qadam: CrowPi2-dan foydalanish natijasi

O'yinni oching va skriptni ishga tushiring, natijani yuqoridagi videoda ko'rasiz:

11-qadam: CrowPi2-dan foydalanish- Keyingi

Endi biz CrowPi2 bilan Minecraft o'yinidagi rang -barang loyihamizni yakunladik. O'yin bilan o'ynash uchun CrowPi2 -dagi boshqa sensorlar va komponentlardan foydalanishga urinmang, masalan o'yinchining harakatini nazorat qilish uchun joystik, turli NFC kartalariga asoslangan bloklar yaratish uchun RFID va boshqalar. CrowPi2 -dagi o'yiningizdan zavqlaning va buni qila olasiz deb umid qilaman. CrowPi2 bilan yanada ajoyib loyihalar!

Endi CrowPi2 Kickstarter -da, siz ham jozibador narxdan bahramand bo'lishingiz mumkin.

Kickstarter sahifasi CrowPi2 havolasini biriktiring

Tavsiya: