Mundarija:
- 1 -qadam: Raspberry PI va Xbee RC transmitteri
- 2 -qadam: Raspberry Pi UART -ni sozlang
- 3 -qadam: O'yin boshqaruvchisi qiymatlarini o'qish uchun Python skriptini yozing
- 4 -qadam: Xulosa
- 5 -qadam: Raspberry Pi Zero -ni XBee Radio -ga ulang
Video: Raspberry Pi + Xbee RC uzatuvchi: 5 qadam
2024 Muallif: John Day | [email protected]. Oxirgi o'zgartirilgan: 2024-01-30 13:28
Bu ko'rsatma sizga o'z Raspberry Pi Zero + Xbee RC transmitterini yaratish uchun nima qilganimni ko'rsatib beradi.
1 -qadam: Raspberry PI va Xbee RC transmitteri
2 -qadam: Raspberry Pi UART -ni sozlang
Salom!
Raspberry Pi (barcha variantlar) juda ko'p qirrali va hozirda bu qurilmalarni haqiqatan ham qulay qiladigan lehimlanishi oson bo'lgan qo'shimchalarning ekotizimining asosidir. Afsuski, Raspberry Pi -da etishmayotgan narsa (hozirda) - bu XBee (ZigBee) radiosi uchun kalit taxtasi yoki kalitli GPIO interfeysi. XBee qurilmalari - har xil turdagi qurilmalar o'rtasida juda ko'p kesish va kesish protokollari yoki ma'lumotlar formatisiz aloqa qilishning ajoyib usuli va USB qurilmalarini birlashtirish va ularning ma'lumotlarini boshqa masofaviy qurilmalarga yuborishni osonlashtiradi. Boshlash uchun, Raspberry Pi -ning har qanday versiyasidan boshlang. Ushbu yo'riqnomada men Raspberry Pi nolini ishlatdim va UARTni ushbu ko'rsatma yordamida bo'shatish uchun ketma -ket konsolni sozladim.
3 -qadam: O'yin boshqaruvchisi qiymatlarini o'qish uchun Python skriptini yozing
Python kodining bu qismi o'yin boshqaruvchisi tomonidan ko'tarilgan hodisalarga javob beradi va voqeani ko'targan boshqaruv elementining qiymatini uzatadi. Bu kod ma'lumotlarni XBee radiolarida o'rnatilgan tezlik tezligida yuboradi. Bu misolda radiolar 57600 ga o'rnatildi, lekin ularning eng yuqori uzatilish tezligiga o'rnatilishi mumkin edi. O'yin boshqaruvchisi - Logitech USB o'yin boshqaruvchisi. Amaldagi kod quyida keltirilgan:
pygame import qilish
serialni import qilish
sOut = ""
ser = serial. Serial {
port = '/dev/ttyAMA0', bod tezligi = 57600, tenglik = serial. PARITY_NONE, stopbits = serial. STOPBITS_ONE, bayt = serial. EIGHTBITS, tanaffus = 1
}
pygame.init ()
bajarilgan = noto'g'ri
bajarilganda == noto'g'ri:
joystik = pygame.joystick.joystik (0)
joystick.init ()
#HAQIQATDA ISHLAB CHIQISH
pygame.event.get () dagi voqea uchun:
agar event.type == pygame. JOYAXISMOTION:
sOut = "Eksa:" + str (event.axis) + "; Qiymat:" + str (voqea.qiymati)
chop etish (chiqish)
ser.write (sOut)
ser.flush ()
sOut = ""
agar event.type == pygame. JOYHATMOTION:
sOut = "Shlyapa: + str (hodisa.hat) +"; Qiymati: " + str (voqea.qiymati)
chop etish (chiqish)
ser.write (sOut)
ser.flush ()
sOut = ""
agar event.type == pygame. JOYBUTTONDOWN:
sOut = "Pastga tugma:" + str (voqea tugmasi)
chop etish (chiqish)
ser.write (sOut)
ser.flush ()
sOut = ""
agar event.button == 8:
chop etish ("Chiqish")
bajarilgan = To'g'ri
agar event.type == pygame. JOYBUTTONUP:
sOut = "Tugma yuqoriga:" + str (voqea tugmasi)
chop etish (chiqish)
ser.write (sOut)
ser.flush ()
sOut = ""
ser.close ()
pygame.quit ()
4 -qadam: Xulosa
Oxirgi qurilishda XBee va Logitech o'yin boshqaruvchisini quvvatlaydigan Raspberry Pi -ni quvvatlantirish uchun yordamchi telefon batareyasi ishlatiladi. Kelgusi loyihada men Raspberry PI Zero, XBee Radio va quvvat manbaini o'z ichiga oladigan vakuumli plastik qopqoqni qo'shaman, hammasi o'yin boshqaruvchisiga bitta chiroyli to'plamda. Ushbu RC transmitterining tuzilishi deyarli har qanday narsaga boshqaruv ma'lumotlarini yuborishni juda osonlashtiradi. Keyingi qurilishda men ma'lumotlarni yaxshi niyatdan qutqargan olti burchakli robotga yuboraman. Umid qilamanki, bu sizga yordam beradi. Baxtli bino!
5 -qadam: Raspberry Pi Zero -ni XBee Radio -ga ulang
Diagrammada ko'rsatilgandek, Pi GPIO pin 1 (3.3v) ni XBee pin 1 ga ulang. Pi GPIO pin 6 (Gnd) ni XBee pin 10 ga, Pi GPIO pin 8 (TX) ni XBee pin 3 (Din) ga ulang.. Bundan tashqari, siz Pi GPIO pin 2 (5v) ni kesish platasidagi 5v piniga ulashni talab qiladigan XBee uzilish taxtasidan foydalanishingiz mumkin.
Tavsiya:
MicroPython kodini XBee 3: 18 bosqichlariga qanday yuklab olish mumkin (rasmlar bilan)
MicroPython kodini XBee 3 -ga qanday yuklab olish mumkin: MicroPython - bu Python 3.0 -dan ilhomlangan dasturlash tili, u XBee 3 kabi mikrokontrolderlarda ishlaydi, MicroPython sizning loyihangiz ta'minotining hajmini va umumiy hajmini kamaytirishga yordam beradi va ishni ancha osonlashtiradi. . Biroq, men f