Mündəricat:

Raspberry Pi, Android, IoT və Bluetooth Powered Drone: 7 addım (şəkillərlə)
Raspberry Pi, Android, IoT və Bluetooth Powered Drone: 7 addım (şəkillərlə)

Video: Raspberry Pi, Android, IoT və Bluetooth Powered Drone: 7 addım (şəkillərlə)

Video: Raspberry Pi, Android, IoT və Bluetooth Powered Drone: 7 addım (şəkillərlə)
Video: Locally control Flipper Zero using Android to trigger Rubber Ducky scripts on connected device 2024, Iyul
Anonim
Raspberry Pi, Android, IoT və Bluetooth Powered Drone
Raspberry Pi, Android, IoT və Bluetooth Powered Drone
Raspberry Pi, Android, IoT və Bluetooth Powered Drone
Raspberry Pi, Android, IoT və Bluetooth Powered Drone
Raspberry Pi, Android, IoT və Bluetooth Powered Drone
Raspberry Pi, Android, IoT və Bluetooth Powered Drone
Raspberry Pi, Android, IoT və Bluetooth Powered Drone
Raspberry Pi, Android, IoT və Bluetooth Powered Drone

Daxili məntiq üçün bir Raspberry Pi istifadə edərək, bu kompakt, mobil kompüter, xüsusi bir Android tətbiqetməsinin göndərdiyi dəyərləri oxumaq üçün eyni zamanda Bluetooth prizləri yaradaraq videonu real vaxt rejimində yayımlayan yerli bir port yaradacaq. Tətbiq pilotsuz təyyarə ilə sinxronizasiya olunur və dərhal drona təlimat göndərmək üçün istifadəçi girişindən istifadə edir.

Bu layihəni sıfırdan etmək olduqca çətindir. Ümid edirik ki, aşağıdakı məlumatlar birdən çox dron tətbiqi üçün fikir verəcəkdir. Bu layihəyə aid olan bütün proqram və sxem dizaynları təmin edilir. Kodu zövqünüzə uyğun olaraq dəyişdirə və paylaşa bilərsiniz. Zəhmət olmasa verilən məlumatlardan məsuliyyətlə istifadə edin və aşağıda şərh yazmaqdan çekinmeyin.

Addım 1: Hardware

Avadanlıq
Avadanlıq
Avadanlıq
Avadanlıq
Avadanlıq
Avadanlıq
Avadanlıq
Avadanlıq

Aşağıda istifadə etdiyim aparatların siyahısı verilmişdir.

  • Raspberry Pi 3 Model B
  • Raspberry PI Kamera Modulu
  • L298N motor sürücü
  • 2, DC Motorlar
  • Klaviatura, istənilən monitor, siçan, Ethernet kabeli və HDMI kabeli (pi üçün)
  • 8 GB MicroSD Kart
  • Vintlər, lent, ect.
  • 2 Təkər
  • Android Bluetooth cihazı (Telefonum)
  • 2, 18650 Hüceyrələr
  • 5 voltluq tənzimləyici
  • Proqramı işə salmaq üçün kompüter

A Raspberry Pi: Daha yüksək axın qətnamələri üçün (və ya yeni başlayanlar üçün) B modelinin ən yeni versiyasını tövsiyə edərdim, daha yığcam versiyalar isə ən yeni Model A+ və ya Pi Zero (Kamera Versiyası) istifadə edə bilər. Unutmayın ki, bir moruq pi sıfırından istifadə edirsinizsə, bunun üçün Bluetooth və/və ya WiFi açarına ehtiyacınız olacaq. Bu təlimatda bir Raspberry Pi 3 B istifadə etdiyiniz güman ediləcək.

Bir motor sürücüsü: L298N istifadə etdim, hər hansı bir motor sürücüsü işləməlidir. Yalnız motorunuzun gərginliyini və cərəyanını idarə edə biləcəyinə əmin olun.

2 DC Motor: Dronunuzun ağırlığını idarə edə biləcəyinə əmin olun.

Gövdə: Bütün komponentləri çox tutmaq üçün istifadə olunur. Adətən sərt plastik və ya alüminium istifadə üçün davamlı, yüngül bir materialdır. Optimal nəticə əldə etmək üçün hətta 3D printerdən də istifadə etmək olar.

Güc mənbəyi: Parçaları seçərkən demək olar ki, həmişə ən çətin qərardır. Tələb olunan batareya cərəyanın gücündən asılıdır. Az işləyən tətbiqlər üçün (1 və ya 2 amper kimi) 9v batareya kifayətdir. Daha yüksək cərəyan üçün ya 18650 Lityum İon hüceyrə, ya da Lityum Polimer batareyanı məsləhət görürəm, çünki onlar yüngül, ölçülərinə görə çox güc saxlaya bilir və şarj edilə bilər.

2 Təkər: Təkərlərinizin motorun şaftı ilə eyni çuxur ölçüsünə malik olduğundan əmin olun. Təkərlərin diametrlərinin dronunuz üçün kifayət qədər böyük olduğundan əmin olun. Bu layihə üçün çoxsaylı mümkün varyasyonlar və dizaynlar olduğundan, istifadə oluna biləcək çox fərqli təkər növləri və ölçüləri var.

Gərginlik tənzimləyiciləri: 5 voltluq bir tənzimləyiciyə ehtiyac var ki, pi vasitəsilə batareya ilə işləsin. Bir LM2596 DC-DC buck çeviricisi istifadə etdim.

Bağlantılardakı məhsulların çoxu bu layihədə istifadə edildi və o vaxt tapa biləcəyim ən yaxşı təkliflər idi.

Lazım olan hər şeyə sahib olduğunuz üçün, pi qurmağa icazə verin.

Addım 2: Raspberry Pi qurmaq

Raspberry Pi qurmaq
Raspberry Pi qurmaq
Raspberry Pi qurmaq
Raspberry Pi qurmaq
Raspberry Pi qurmaq
Raspberry Pi qurmaq

Bu addım sizə kodlamaya başlaya bilmək üçün Raspberry Pi -nin necə qurulacağını göstərəcək. Zaten Raspbian ilə bir pi quruluşunuz varsa, növbəti addıma keçməkdən çekinmeyin.

Əvvəlcə moruq üçün bir əməliyyat sistemi yükləməlisiniz. Yeni başlayanlar varsa NOOBS alın. Bir moruq pi ilə artıq diqqətəlayiq bir təcrübəniz varsa, o zaman Raspbian ilə maraqlana bilərsiniz. Bu dərs üçün NOOBS istifadə etdiyinizi güman edəcəyəm.

Yükləyərkən SD kartınızı SD Formatter ilə formatlayın.

İndi yükləmə məzmununu çıxarın və SD kartınızın kökünə kopyalayın. Kök sadəcə heç bir qovluğun içində olmadığını bildirir. Bütün çıxarılan faylları saxlamaq üçün yeni bir qovluq yaradılıbsa, həmin faylı kopyalayın.

Sonra SD kartı pi -yə bağlayın. Daxil edərkən ya "tıklamalı" ya da pi -nin altına oturmalıdır.

Siçan və klaviaturanı pi -yə qoşun. Sonra bir HDMI kabelini bir monitordan pi -yə qoşun. Nəhayət, pi -yə 3 amperlik mikro USB priz adapterini qoşun. Divar prizi tövsiyə olunsa da, laptopumu enerji mənbəyi kimi istifadə etdim (dizüstü kompüterimdən USB -də olan mikro USB -yə qədər).

Qoy pi öz işini görsün. İstənirsə, Raspbian seçin və quraşdırılmasına icazə verin. Quraşdırıcıdakı təlimatları izləyin. Tamamlanması bir müddət çəkə bilər. Hər şey qaydasındadırsa, yuxarıdakı ekrana bənzər bir masa üstü ekranı görməlisiniz.

Routerinizdən Ethernet kabelini pi -yə qoşun. Sonra əmr satırını açın (Ekranın yuxarısındakı qara "qutu" işarəsi). Simsiz bir şəbəkəyə qoşulmaq üçün simli bir şəbəkə vasitəsilə pi yeniləməlisiniz.

Sonra ekranın yuxarısındakı Kabel simgesini vurun. İstədiyiniz yerdə şəbəkə məlumatlarınızı daxil edin.

Növbəti sətirdə mətni göstərildiyi kimi yazın və enter düyməsini basın. Bu pi yeniləyəcək. Bir müddət çəkə bilər. Qoy qoy öz işini görsün.

sudo apt-get yeniləməsi

Sonra kodu növbəti sətrə yazın. Bu da bir az vaxt aparacaq. İş bitənə qədər heç nə etməyin.

sudo apt-get dist-upgrade

İndi Ethernet kabelini ayırmaq, ekranın yuxarısındakı simsiz simvolu vurmaq, şəbəkə məlumatlarınızı daxil etmək və nəhayət simsiz vasitəsilə şəbəkənizə qoşulmaq lazımdır.

İndi dronun hərəkətləri idarə edən hissəsini kodlaşdıraq.

Addım 3: Hərəkətlərin idarə edilməsi (Bluetooth Server)

Hərəkətlərin idarə edilməsi (Bluetooth Server)
Hərəkətlərin idarə edilməsi (Bluetooth Server)

Hərəkətləri idarə etmək üçün "Python 3" proqramlaşdırma dili istifadə olunur. Robotun hərəkət etməsini bildirən mesajlar tətbiqdən Bluetooth vasitəsilə göndəriləcək.

Əvvəlcə Bluetooth kitabxanasını quraşdırmalısınız. Bunu etmək üçün aşağıdakı əmrləri daxil edin.

sudo apt-get yeniləməsi

sudo apt-get bluetooth quraşdırın

sudo apt-get bluez quraşdırın

sudo apt-get python-bluez quraşdırın

İndi masaüstündən başlanğıc menyusu simgesini, sonra Proqramlaşdırma, sonra Python 3 düyməsini basın. Sonra alətlər çubuğundan "Yeni" düyməsini basın. Yeni bir pəncərə görünməlidir.

"Bluetoothpi.rtf" əlavəsinin məzmununu pəncərəyə kopyalayın.

Alətlər çubuğunda Fayl, Kimi saxla düyməsini vurun. Moves.py olaraq/home/pi/Desktop/qovluğunda saxlayın.

İndi kodu sınamaq üçün ekranın sağ üst küncündəki Bluetooth simgesini vurun. Moruq pi -ni Android cihazınızla cütləşdirin. Android cihazınıza BlueTerm adlı bir tətbiq yükləyin. Sonra əmr satırına aşağıdakı kodu qalın yazın. Bu, python kodunu icra edəcək.

sudo python /home/pi/Desktop/movements.py

Pi üzərində "Bağlantılar gözləyir" yazısı görünməlidir.

BlueTerm -ə başlayın və seçimlər simgesini və sonra "əlaqələri axtar" düyməsini basın.

Tətbiqdə moruq pi adınız görünməlidir. Pi adı olan düyməni basın. "Qəbul edilən əlaqə" yazısı pi -də görünməlidir, sonra ünvanı. İndi telefonda nə yazsanız, pi -də göstərilməlidir.

Öz Bluetooth server yuvanızı uğurla kodladınız!

Addım 4: Android Tətbiqi (Bluetooth Müştəri)

Android Tətbiqi (Bluetooth Müştəri)
Android Tətbiqi (Bluetooth Müştəri)
Android Tətbiqi (Bluetooth Müştəri)
Android Tətbiqi (Bluetooth Müştəri)
Android Tətbiqi (Bluetooth Müştəri)
Android Tətbiqi (Bluetooth Müştəri)
Android Tətbiqi (Bluetooth Müştəri)
Android Tətbiqi (Bluetooth Müştəri)

Android Studio -nu buradan yükləyin. Quraşdırın və quraşdırıcıda verilən təlimatları izləyin.

Yeni bir layihəyə başlayın. MainActivity adlı boş bir fəaliyyət yaradın.

"MainActivity.java" faylındakı "Logic.txt" əlavəsinin məzmununu kopyalayın (sekmə). Bu tətbiqin arxasındakı bütün məntiqləri ehtiva edir. Faylın altındakı cihazınızın adını dəyişdirməyiniz lazım ola bilər.

Sonra "GUI" faylının məzmununu "activity_main.xml" faylına (nişana) kopyalayın. Bu tətbiq üçün çox sadə bir GUI ehtiva edir.

İndi ox düymələrini (şəkilləri) tətbiqə daxil etməlisiniz. Arrows.zip əlavəsini açın. Android studiyasının solunda, tətbiq, res, minimapı görmək üçün fayl quruluşunu açın. Ok şəkillərini-p.webp

Nəhayət "Manifest" faylının məzmununu "AndroidManifest.xml" faylınıza (nişana) kopyalayın.

Tətbiqi sınamaq üçün onu cihazınızda işə salmalısınız. Bunu etmək üçün cihazı geliştirici rejiminə qoymalı və USB ayıklamasını aktiv etməlisiniz. Əksər cihazlar üçün "Ayarlar", "Telefon haqqında" bölməsinə keçməlisiniz, aşağıya doğru gedin və "İndi geliştiricisiniz!" Mesajını görənə qədər "Nömrəni qur" düyməsini yeddi dəfə basın. Geri qayıdın və indi "Geliştirici Seçimləri" sekmesini görməlisiniz. Bunun üzərinə vurun və USB ayıklamasını aktiv edin.

Android cihazınızı USB vasitəsilə kompüterinizə qoşun, Android Studio -da işləmə simgesini vurun və cihazınızı seçin.

Pi -də, qalın hərfləri yazaraq 3 -cü addımda yaradılan python kodunu işə salın:

sudo python /home/pi/Desktop/movements.py

Sonra tətbiqdəki əlaqə düyməsini basın. Bağlandıqda bəzi oxlar artıq tətbiqdə görünməlidir. Birini tıkladığınızda, pi'nin "hərəkət" vəziyyətini yeniləyəcək.

Tətbiqin arxa planı bir səhv verərsə yaxşıdır. Bu daha sonra düzəldiləcək.

Yalnız öz tətbiqinizi və Bluetooth Müştəri yaratmısınız.

Addım 5: Avadanlıqların birləşdirilməsi

Avadanlıq Bağlanması
Avadanlıq Bağlanması
Avadanlıq Bağlanması
Avadanlıq Bağlanması
Avadanlıq Bağlanması
Avadanlıq Bağlanması

Bağlantıları yuxarıdakı diaqramda lehimləyin. Kamera modulunu da pi -yə qoşun.

Tətbiqi işə salın və hərəkəti.py faylını icra edin. Tətbiqdən istifadə edərkən mühərriklər düzgün hərəkət edərsə, bütün komponentləri pilotsuz təyyarə üçün tamamlanmış bir qabığa yerləşdirməkdən çekinmeyin. Düzgün hərəkət etməsi üçün "HIGH" və "LOW" kodlarını dəyişdirməyiniz lazım ola bilər.

Növbəti addımda dronun axın xüsusiyyətini əlavə edəcəyik.

Addım 6: Axın

Axın
Axın
Axın
Axın
Axın
Axın

Bir Pi istifadə edərək bir video yayımlamağın bir çox yolu var, ancaq uv4l istifadə etmək heç bir gecikmə olmadan ən asan yoldur.

Yalnız bir əlavə olaraq, dronunuzu bir yerə yığmısınızsa və onu monitorunuza və klaviaturanıza bağlaya bilmirsinizsə, dronunuza SSH daxil etməlisiniz. Bunu etmək üçün Putty proqramını kompüterinizə yükləyin. Açın və moruqun IP ünvanını yazın (ifconfig əmrini yazaraq IP ünvanını tapın). İstifadəçi adı və şifrənizi istəyəcək. Varsayılan istifadəçi adı və şifrə müvafiq olaraq pi və moruqdur. İndi əmr qutusuna yazdığınız hər şey birbaşa drona əmrləri daxil etmək kimi olacaq.

uv4l qurmaq

Bu əmri daxil edin:

sudo nano /etc/apt/sources.list

Faylın son sətrinə aşağıdakı sətri əlavə edin.

deb https://www.linux-projects.org/listing/uv4l_repo/raspbian/ jessie main

Ctrl-X düymələrini basaraq və sonra Bəli yazaraq fayldan çıxın və qeyd edin.

Sonra aşağıdakı sətri yazın və enter düyməsini basın.

sudo apt-get yeniləməsi

sonra bu:

sudo apt-get uv4l uv4l-raspicam quraşdırın

Aşağıdakı əmrləri sətir -sətir yazın. Növbəti sətrə yazmadan əvvəl nə etdiyini başa çatdırmasını gözləyin.

sudo apt-get uv4l-raspicam-Əlavələri quraşdırın

sudo xidməti uv4l_raspicam yenidən başladın

sudo rpi-yeniləmə

sudo apt-get uv4l-server uv4l-uvc uv4l-xscreen uv4l-mjpegstream uv4l-dummy uv4l-raspidisp qurun

sudo apt-get uv4l-webrtc quraşdırın

sudo apt-get uv4l-xmpp-körpü qurun

sudo apt-get uv4l-raspidisp-əlavələri quraşdırın

Bundan sonra, axına başlamaq üçün aşağıdakı əmri yazmaq kifayətdir ("moruq" sözünü moruqun IP ünvanı/ şəbəkənizdəki Host adı ilə əvəz edin)

cvlc https:// raspberrypi: 8080/stream/video.mjpeg

Bu, 8080 portunda real vaxtda video axınına başlayacaq. Axın indi tətbiqinizin fonunda görünməlidir. İstənilən brauzerdə axını görmək üçün bu URL -ni daxil edin (burada "raspberrypi" dronlarınızın IP ünvanıdır).

https:// raspberrypi: 8080/stream/video.mjpeg

Tebrikler, casus dronunuzu tamamladınız.

Addım 7: Sürün

Güc düyməsini çevirin və araşdırmağa başlayın.

Başqa bir şeyin necə hazırlanacağını bilmək istəyirsinizsə, məndən soruşun ki, nə edə bilərəm.

Hər hansı bir sualınız varsa, aşağıda şərh yazın və mən onlara cavab vermək üçün əlimdən gələni edəcəyəm.

Oxuduğunuz üçün təşəkkürlər!

Tövsiyə: