Mündəricat:
- Addım 1: Lazımi Materiallar və Təchizatlar
- Addım 2: Pi mühitinin qurulması
- Addım 3: Pi qurmaq (1 -ci hissə)
- Addım 4: Pi qurmaq (2 -ci hissə)
- Addım 5: Kod yazmaq
- Addım 6: Dövrə Dizaynı
- Addım 7: Çörəyinizi yağlayın… Lövhə
- Addım 8: Test
- Addım 9: Hər hansı bir sualınız/geribildiriminiz varsa mənimlə əlaqə saxlayın
2025 Müəllif: John Day | [email protected]. Son dəyişdirildi: 2025-01-13 06:56
Fon:
Mən yeniyetməyəm və son bir neçə ildir ki, robototexnika yarışlarında iştirak etməklə yanaşı, kiçik elektronika layihələri hazırlayır və proqramlaşdırıram.
Bu yaxınlarda masamın quruluşunu yeniləmək üzərində işləyirdim və qərara aldım ki, gözəl bir əlavə əhval işıqlandırması olacaq. Əvvəlcə pultla idarə olunan 5v batareya ilə işləyən LED şeridi aldım, amma bu, çox yerinə yetirici bir proses deyildi və bir fikrim var idi. Ətrafımda bir neçə ehtiyat hissəm vardı və Milad üçün aldığım Raspberry Pi ilə əlaqəli bir şey düşünməyə çalışırdım. Elm dərsində xüsusilə darıxdırıcı bir gündə, RGB dəyərlərini çıxardığım müddətcə LED işıqlarını idarə etmək üçün Raspberry Pi -nin GPIO pinlərindən istifadə edə biləcəyimi başa düşdüm.
İlkin dizayn planım, işıqları divarımda və ya masamda quraşdırılmış bir toxunma ekranı ilə idarə etmək idi, amma bəzi düzəlişlərdən sonra getməyin ən asan yolunun başqa bir cihazla idarə edilməsinə qərar verdim. Java -da telefonum üçün bir tətbiq yazmağı düşünsəm də, kiçik bir veb sayt daha təsirli görünürdü.
Bu layihə bir çox təkmilləşdirmələrə açıqdır və mənim html + php bir növ cızıqlı olsa da, işi tamamlayırlar
Mövzular:
Bu bələdçinin vuracağı əsas məqamlar ---
- Raspberry Pi -də GPIO -ya nəzarət
- Pi -də bir Apache veb serverinə ev sahibliyi etmək
- RGB LED işıq şeridini idarə etmək üçün veb serverdən istifadə
Addım 1: Lazımi Materiallar və Təchizatlar
- 1 x Raspberry Pi (Pi 2 Model B istifadə etdim)
- MicroSD kartı
- Pi -nizi gücləndirəcək bir şey (USB kabel və AC güc adapteri)
- 1 x USB WiFi adapteri və ya Ethernet bağlantısı
- Serial Kabelə 1 x USB -
- 1 x GPIO qırılması -
- 1 x kiçik çörək taxtası -
- MicroSD -dən USB -
- Bərk nüvəli telin çoxlu rəngləri
- Bir qəfəs
- 3 x NPN tipli tranzistorlar (BC547b tranzistorlarından istifadə etdim)
- 1x 5V LED işıq şeridi
- Qadın -Kişi tullanan telləri -
Addım 2: Pi mühitinin qurulması
Rəfimdə fərqlənməmək üçün layihəni bağlamaq üçün əyilmiş plastik qutudan istifadə etdim. Serial USB kabel üçün yan delik açdım və Pi -ni çörək taxtasının və Pi Wedge -in yanında yerləşdirdim.
Addım 3: Pi qurmaq (1 -ci hissə)
Bu layihə üçün masa üstü olmayan Raspbian-ın ən son versiyasını istifadə etdim
Raspbian -ı necə quracağınıza dair bir təlimatı burada tapa bilərsiniz:
(Kompüteriniz üçün USB -dən microSD adapterə ehtiyacınız ola bilər)
Raspbian SD karta quraşdırıldıqdan sonra onu Raspberry Pi -yə qoşmağa və Ethernet kabelini və ya USB WiFi adapterini Pi -yə qoşmağa davam edə bilərsiniz.
Sonra, kompüteriniz vasitəsilə Raspberry Pi -nin terminalı ilə əlaqə qurmağa imkan verən Tera Term -i kompüterinizə quraşdırın:
Sonra, USB yuva kabelini Pi yuvasından PC -yə qoşun. Tera Term vasitəsilə əldə edilə bilər. Serial port baud dərəcəsinin 115200 olaraq təyin olunduğundan əmin olun.
Birincisi, Pi, OS düzgün qurulubsa, daxil olmaq üçün bir sorğu göndərəcək
Varsayılan istifadəçi adı və şifrə:
İstifadəçi adı: pi
Şifrə: moruq
Addım 4: Pi qurmaq (2 -ci hissə)
WiFi qurmaq
Terminalda əmri işlədin
sudo nano/etc/network/interfeysləri
Sonra bu kodu yapışdırın və routerinizin adı və şifrəsi ilə SSID və PSK -ı əvəz edin
avtomatik bax
iface lo inet loopback iface eth0 inet dhcp allow-hotplug wlan0 avtomatik wlan0 iface wlan0 inet dhcp wpa-ssid "ssid" wpa-psk "parol"
Bu fayl Pi -nin WiFi -ə qoşulmasına imkan verir
Sonra Pi ilə xətti yenidən başladın
sudo yenidən başladın
Veb Serverin Quraşdırılması
Daxil olun və sonra Apache serverini quraşdırın
sudo apt -get apache2 -y quraşdırın
və
sudo apt-get php libapache2-mod-php -y qurun
Pi -nin IP ünvanını tapmaq üçün əmri işlədin
ev sahibi -I
İşlədiyini yoxlamaq üçün göstərilən IP -yə daxil olmaq üçün gözdən keçirin.
Məsələn, Google Chrome -da ünvan çubuğuna 192.168.1.72 yazardım.
İzləməli olduğunuz sənədləri https://www.raspberrypi.org/documentation/remote-a… tapa bilərsiniz.
GPIO pinləri üzərindən göndərilən məlumatları idarə etməyə imkan verən PiGPIO kitabxanasının da quraşdırılması lazımdır.
sudo apt-get install-essential açmaq wget
və
wget https://abyz.me.uk/rpi/pigpio/pigpio.zip && unzip pigpio.zip && cd PIGPIO && sudo qurun
Addım 5: Kod yazmaq
Xətti ilə/var/www/html -ə gedin
cd/var/www/html
Kataloqda redaktə etməyiniz lazım olan standart bir html faylı olacaq.
sudo nano index.html
Nanonun içərisində olan hər şeyi silin və aşağıdakı kodla əvəz edin.
(Tera Term, kopyalamaq və yapışdırmaqla bir az əyləncəli ola bilər, amma ümumiyyətlə mətni kopyaladıqdan sonra alt+v işi görməlidir)
readRGB (color) funksiyası {if (color.length == 0) {document.getElementById ("txtHint"). innerHTML = ""; qayıtmaq; } başqa {var xmlhttp = yeni XMLHttpRequest (); xmlhttp.onreadystatechange = function () {if (this.readyState == 4 && this.status == 400) {document.getElementById ("txtHint"). innerHTML = this.responseText; }}; temp = encodeURIComponent (rəng); xmlhttp.open ("GET", "action_page.php? q =" + temp, doğru); xmlhttp.send (); }} Rəng seçin:
Sonra index.html yerinə main.html olaraq qeyd edin
Yuxarıdakı kod, basdığınız düymə və seçdiyiniz rəngi digər fayla göndərən kod kimi çıxış edir.
Sonra, əmri işə salın
sudo nano
və yapışdırın
$ r $ g $ b ;
exec ("donuz p 17 $ g"); exec ("donuzlar p 22 $ r"); exec ("donuzlar p 22 $ b"); ?>
və action_page.php olaraq qeyd edin
Bu kod RGB dəyərini alır və LED şeridində PWM dəyərlərini təyin edir.
Addım 6: Dövrə Dizaynı
İndi bütün proqramlar qurulduqdan sonra, hardware üzərində işləməyin vaxtıdır.
Dövrün məqsədi PWM (Pulse Width Modulated) siqnallarını Pi -dən LED massivinə göndərməkdir.
LED şeridin dörd sancağı var: qırmızı, yaşıl, mavi və güc (mənim vəziyyətimdə 5 volt).
Hər bir PWM pin, bir keçid rolunu oynayan bir tranzistor vasitəsilə üç rəngdən birini idarə edir.
Hər bir tranzistorda üç sancaq var: kollektor, baza və yayıcı.
PWM siqnalı iş dövrünü idarə edir (açarın nə qədər açılıb söndüyü).
İş dövrü, işıqların daha qaranlıq və ya daha parlaq olması ilə nəticələnir.
İşıqlar çox tez açıldığından və söndüyündən insanlar onu fərqli parlaqlığa malik bərk işıq kimi görürlər.
DİQQƏT: Şematik olaraq, LED simvolları LED aralığını və tel içərisindəki cərəyanı məhdudlaşdıran rezistorları təmsil edir.
Addım 7: Çörəyinizi yağlayın… Lövhə
Əlaqələr qurarkən Pi -ni söndürdüyünüzdən əmin olun.
Pi pazını bir sıra sancaqlar ilə çörək taxtasının yarısına yerləşdirin və lent kabel ilə Pi -yə bağlayın. Çörək taxtasındakı qarışıqlığı azaltmaq və təsadüfən heç bir şeyin ayrılmayacağına əmin olmaq üçün möhkəm nüvəli tel istifadə etdim.
Transistorları çörək taxtasının yuxarı yarısına (sütun A) yerləşdirin və aşağı hissədəki LED sırasını birləşdirin (H, I və ya J satırları).
Mənfi elektrik rayını pazdakı GND pininə, müsbət rayı isə 5V pininə bağlayın.
Müsbət elektrik rayını LED serialının enerji təchizatı pininə qoşun.
Hər bir tranzistor üçün, emitör pinini mənfi elektrik rayına bağlayın və kollektor pinini LED dizisinin sancaqlarına uyğun olan ayrı satırlara bağlayın (1 -ci sıranı 5v, 2, 3 və 4 -ü yaşıl, qırmızı və mavi kimi istifadə etdim, f) sütununda. Sonra, çörək taxtasından LED şeridinə dörd kişi və dişi tullanan tel bağlayın.
Nəhayət, yaşıl tranzistorun əsas pimini kəmərdəki 17 -ci pinlə, qırmızı tranzistorun əsasını 22 -ci pinlə və mavi tranzistorun əsasını 24 -cü pinlə birləşdirin.
Addım 8: Test
Veb brauzerində Pi -nin IP ünvanına gedin və sonra /main.html yazın
Bir rəng seçin və "müasir texnologiyanın möcüzələrinə" heyran olun!
Addım 9: Hər hansı bir sualınız/geribildiriminiz varsa mənimlə əlaqə saxlayın
Hər hansı bir sualınız və ya təklifiniz varsa, mənə bir şərh yazın və ya DM yazın, ən qısa zamanda cavab verməyə çalışacağam.
Uğurlar!