Mündəricat:
- Addım 1: Ehtiyac duyduğumuz Əsas Təchizat
- Addım 2: Avadanlıqların birləşdirilməsi
- Addım 3: Raspberry Pi üçün Python Kodlaması
- Addım 4: Kodun işləkliyi
- Addım 5: Tətbiqlər və Xüsusiyyətlər
- Addım 6: Nəticə
Video: Python istifadə edərək Raspberry Pi və LIS3DHTR, 3 Eksenli Akselerometr ilə Hərəkət Nəzarəti: 6 Addım
2024 Müəllif: John Day | [email protected]. Son dəyişdirildi: 2024-01-30 07:44
Gözəllik bizi əhatə edir, amma adətən bunu bilmək üçün bir bağda gəzmək lazımdır. - Rumi
Göründüyü kimi təhsilli bir qrup olaraq, enerjimizin böyük bir hissəsini kompüterlərimizdən və cib telefonlarımızdan əvvəl işə sərf edirik. Buna görə də, tez -tez rifahımızın ikinci dərəcəli bir salonda olmasına icazə veririk, heç vaxt idman zalı və ya fitness sinifinə getmək üçün ideal bir fürsət tapmır və bir qayda olaraq daha faydalı seçimlər üzərində fast food seçirik. Yüksəltmə xəbəri, ehtiyac duyduğunuz şeyin qeydiyyatla bağlı bir kömək olub-olmaması və ya irəliləyişinizi izləməkdir, bu günün yeniliklərindən istifadə edərək özünüzə kömək etmək üçün bir gadget istehsal edə bilərsiniz.
Texnologiya sürətlə inkişaf edir. Ardıcıl olaraq, dünyanı və ondan öyrənmə tərzimizi dəyişdirəcək yeni bir yenilikdən xəbər tuturuq. Kompüterlər, kodlaşdırma və robotlar ilə məşğul olanda və ya sadəcə lağ etməyi sevirsənsə, orada bir texnoloji xeyir var. Raspberry Pi, mikro, tək lövhəli Linux kompüteri, yenilikçi texnologiya ilə öyrənmə tərzinizi təkmilləşdirməklə yanaşı, dünyada təhsilin öyrənilməsini yaxşılaşdırmağın açarıdır. Yaxınlıqda bir Raspberry Pi və 3 eksenli Accelerometer varsa nə edə biləcəyimiz mümkün nəticələr hansılardır? Bunu necə tapaq! Bu işdə, Raspberry Pi və LIS3DHTR, 3 oxlu bir sürətölçəndən istifadə edərək, X, Y və Z 3 dik oxda sürətlənməni yoxlayacağıq. Beləliklə, bu səyahətdə 3 ölçülü sürətlənməni yoxlamaq və ya G-Force yoxlamaq üçün bir sistem yaratmaq üçün görməliyik.
Addım 1: Ehtiyac duyduğumuz Əsas Təchizat
İşləmək üçün çoxlu şeylər yatdığımız üçün məsələlər bizim üçün daha az idi. Hər halda, faydalı yerdən qüsursuz vaxtda doğru hissəni yığmağın başqalarının nə qədər çətin olduğunu bilirik və hər qəpiyə az əhəmiyyət verərək müdafiə olunur. Buna görə sizə kömək edərdik. Tam bir hissə siyahısı əldə etmək üçün müşayiət olunanları izləyin.
1. Moruq Pi
İlk addım bir Raspberry Pi lövhəsi əldə etmək idi. Raspberry Pi, tək əsaslı Linux əsaslı bir kompüterdir. Bu kiçik kompüter, gadget fəaliyyətinin bir hissəsi olaraq istifadə olunan hesablama gücündə və elektron tablolar, söz hazırlama, veb tarama və e -poçt və oyunlar kimi sadə əməliyyatlar aparır.
2. Raspberry Pi üçün I2C Shield
Raspberry Pi -nin həqiqətən yox olduğu əsas narahatlıq I²C portudur. Bunun üçün TOUTPI2 I²C konnektoru, hər hansı bir I²C cihazı ilə Rasp Pi istifadə etmək mənasını verir. DCUBE Mağazasında mövcuddur
3. 3 oxlu akselerometr, LIS3DHTR
LIS3DH, rəqəmsal I2C/SPI seriyalı interfeys standart çıxışı olan "nano" ailəsinə aid ultra aşağı güclü yüksək performanslı üç oxlu xətti sürətləndiricidir. Bu sensoru DCUBE Mağazasından aldıq
4. Bağlayıcı Kabel
I2C Connecting kabeliniDCUBE Store -dan əldə etdik
5. Mikro USB kabeli
Ən kiçik çaşqın, lakin gücə ehtiyac duyduğumuz qədər ən sərt Raspberry Pi -dir! Ən asan yol Micro USB kabelindən istifadə etməkdir.
6. Vebə giriş bir ehtiyacdır
İNTERNET uşaqları heç vaxt yatmaz
Ethernet (LAN) kabeli ilə əlaqəli Raspberry Pi -ni əldə edin və şəbəkə yönləndiricinizə qoşun. Seçimli, bir WiFi konnektoru axtarın və uzaq sistemə keçmək üçün USB portlarından birini istifadə edin. Sadə, kiçik və yararsız bir qərardır!
7. HDMI Kabeli/Uzaqdan Giriş
Raspberry Pi, xüsusi olaraq bir HDMI kabeli ilə bir ekrana və ya TV -yə qoşula biləcəyiniz bir HDMI portuna malikdir. Seçmə olaraq, Linux PC -dən və ya terminaldan Macintosh -dan Raspberry Pi ilə əlaqə yaratmaq üçün SSH -dən istifadə edə bilərsiniz. Eyni şəkildə, PuTTY, pulsuz və açıq mənbəli bir terminal emulatoru layiqli bir alternativ kimi səslənir.
Addım 2: Avadanlıqların birləşdirilməsi
Sxemə görə dövrə edin. Bir diaqram tərtib edin və konturdan sonra dəqiq götürün. Xəyal bilikdən daha vacibdir.
Raspberry Pi və I2C Shield bağlantısı
Hər şeydən əvvəl, Raspberry Pi götürün və üzərindəki I2C Shield -ə baxın. Qalxanı Pi -nin GPIO sancaqları üzərində incə bir şəkildə basın və biz bu irəliləyişimizi pasta kimi sadə bir şəkildə başa vurmuşuq (snapa baxın).
Sensor və Raspberry Pi -nin əlaqəsi
Sensoru və onunla birlikdə I2C Kabelini götürün. Bu Kabelin düzgün işləməsi üçün lütfən I2C Çıxışını hər zaman I2C Giriş ilə əlaqələndirin. Eyni şey, üzərinə GPIO pinləri quraşdırılmış I2C qalxanı olan Raspberry Pi üçün də edilməlidir.
I2C kabelinin istifadəsini təsdiqləyirik, çünki hətta ən kiçik vintlər nəticəsində yaranan pinouts, bərkitmə və narahatlıqları yoxlamaq zəruriliyini inkar edir. Bu əsas bağlama və oyun kabeli ilə, gadget'ları təsirli bir şəkildə təqdim edə, dəyişdirə və ya daha çox gadget əlavə edə bilərsiniz. Bu, iş çəkisini əhəmiyyətli dərəcədə asanlaşdırır.
Qeyd: Qəhvəyi tel, bir cihazın çıxışı ilə digər cihazın girişi arasındakı Ground (GND) bağlantısını etibarlı şəkildə izləməlidir
Veb Şəbəkəsi Açardır
Səyimizi qazanmaq üçün Raspberry Pi üçün İnternet assosiasiyasına ehtiyacımız var. Bunun üçün ev şəbəkəsi ilə bir Ethernet (LAN) kabelini birləşdirmək kimi seçimləriniz var. Əlavə olaraq, alternativ olaraq, uyğunlaşdırıcı bir kurs, WiFi USB konnektoru istifadə etməkdir. Bir qayda olaraq bunun işləməsi üçün bir sürücü tələb olunur. Təsvirdə Linux olana doğru meyl edin.
Enerji təchizatı
Micro USB kabelini Raspberry Pi -nin elektrik prizinə qoşun. Zərbə edin və biz hazırıq.
Ekrana keçid
HDMI kabelini başqa bir ekranla əlaqələndirə bilərik. Bəzi hallarda, bir ekrana keçmədən bir Raspberry Pi əldə etməlisiniz və ya bəzi məlumatları başqa bir yerdən görmək lazım ola bilər. Düşünmək olar ki, bunun üçün yenilikçi və maliyyə cəhətdən ağıllı yanaşmalar mövcuddur. Onlardan biri -SSH (uzaqdan əmr satırına giriş) istifadə etməkdir. Bunun üçün PUTTY proqramından da istifadə edə bilərsiniz. Bunlar qabaqcıl istifadəçilər üçündür. Buna görə detallar bura daxil edilmir.
Addım 3: Raspberry Pi üçün Python Kodlaması
Raspberry Pi və LIS3DHTR Sensorları üçün Python Kodunu GithubRepository -də əldə edə bilərsiniz.
Koda keçməzdən əvvəl, Readme arxivində verilən qaydaları oxuduğunuzdan və Raspberry Pi -ni ona uyğun olaraq qurduğunuzdan əmin olun. Düşünülmüş hər şeyi etmək üçün bir anlıq möhlət veriləcək.
Bir akselerometr, sürətlənmə qüvvələrini ölçəcək bir elektromexaniki cihazdır. Bu güclər, ayaqlarınızdan çəkilən daimi cazibə qüvvəsinə bənzər statik ola bilər və ya dəyişdirilə bilər - akselerometrin hərəkət etməsi və ya titrəməsi nəticəsində yarana bilər.
Müşayiət olunan python kodudur və kodu istədiyiniz şəkildə klonlaya və tənzimləyə bilərsiniz.
# Sərbəst iradə lisenziyası ilə paylanmışdır.# İstənilən şəkildə, mənfəət və ya pulsuz olaraq, əlaqəli işlərin lisenziyalarına uyğun olması şərtilə istifadə edin. # LIS3DHTR # Bu kod, dcubestore.com saytında mövcud olan LIS3DHTR_I2CS I2C Mini Modulu ilə işləmək üçün hazırlanmışdır # https://dcubestore.com/product/lis3dhtr-3-axis-accelerometer-digital-output-motion-sensor-i%C2 %B2c-mini-modul/
smbus idxal edin
idxal vaxtı
# I2C avtobusu alın
avtobus = smbus. SMBus (1)
# LIS3DHTR ünvanı, 0x18 (24)
# Nəzarət reyestrini seçin1, 0x20 (32) # 0x27 (39) Güc AÇMA rejimi, Məlumat dərəcəsi seçimi = 10 Hz # X, Y, Z-Axis effektiv bus.write_byte_data (0x18, 0x20, 0x27) # LIS3DHTR ünvanı, 0x18 (24) # Nəzarət reyestrini seçin4, 0x23 (35) # 0x00 (00) Davamlı yeniləmə, Tam miqyaslı seçim = +/- 2G bus.write_byte_data (0x18, 0x23, 0x00)
vaxt.yuxu (0.5)
# LIS3DHTR ünvanı, 0x18 (24)
# 0x28 (40), 2 baytdan məlumatları geri oxuyun # X-Axis LSB, X-Axis MSB data0 = bus.read_byte_data (0x18, 0x28) data1 = bus.read_byte_data (0x18, 0x29)
# Məlumatları çevirin
xAccl = data1 * 256 + data0 əgər xAccl> 32767 olarsa: xAccl -= 65536
# LIS3DHTR ünvanı, 0x18 (24)
# 0x2A (42), 2 baytdan məlumatları geri oxuyun # Y-Axis LSB, Y-Axis MSB data0 = bus.read_byte_data (0x18, 0x2A) data1 = bus.read_byte_data (0x18, 0x2B)
# Məlumatları çevirin
yAccl = data1 * 256 + data0 əgər yAccl> 32767 olarsa: yAccl -= 65536
# LIS3DHTR ünvanı, 0x18 (24)
# 0x2C (44), 2 baytdan məlumatları geri oxuyun # Z-Axis LSB, Z-Axis MSB data0 = bus.read_byte_data (0x18, 0x2C) data1 = bus.read_byte_data (0x18, 0x2D)
# Məlumatları çevirin
zAccl = data1 * 256 + data0 əgər zAccl> 32767 olarsa: zAccl -= 65536
# Ekrana məlumat çıxarın
çap "X Eksenində Sürətləndirmə: %d" %xAccl çap "Y Eksenində Sürətləndirmə: %d" %yAccl çap "Z Eksenində Sürətləndirmə: %d" %zAccl
Addım 4: Kodun işləkliyi
Github -dan kodu yükləyin (və ya git pull) və Raspberry Pi -də açın.
Kodu tərtib etmək və terminala yükləmək üçün əmrləri yerinə yetirin və ekrandakı məhsuldarlığı görün. Bir neçə dəqiqədən sonra hər bir parametr göstəriləcək. Hər şeyin zəhmət çəkmədiyinə zəmanət verdiyiniz üçün, bu cəsarətinizi daha diqqətəlayiq bir işə götürə bilərsiniz.
Addım 5: Tətbiqlər və Xüsusiyyətlər
STMicroelectronics tərəfindən istehsal edilən LIS3DHTR, dinamik olaraq istifadəçi tərəfindən seçilə bilən ± 2g/± 4g/± 8g/± 16g tam tərəzilərə malikdir və 1Hz -dən 5kHz -ə qədər məlumat ötürmə sürətləri ilə sürətlənməni ölçmək qabiliyyətinə malikdir. LIS3DHTR, Motion aktivləşdirilmiş funksiyalar və Sərbəst Düşmə Algılama üçün uyğundur. Tilt Algılama Tətbiqlərində Cazibə Statik Sürətləndirməsini və əlavə olaraq Hərəkət və ya Şok səbəbiylə Dinamik Sürətləndirməni ölçür. Digər tətbiqlərə Tıklama/Cüt Tıklama Tanıma, Əl Cihazları üçün Ağıllı Enerji Qənaəti, Pedometr, Ekran İstiqamətləndirmə, Oyun və Virtual Reallıq Giriş Cihazları, Zərbə Tanıma və Qeydiyyat və Vibrasiya İzləmə və Kompensasiya daxildir.
Addım 6: Nəticə
Bu işin daha çox sınaqlara səbəb olacağına inanın. Bu I2C sensoru fövqəladə dərəcədə uyğunlaşa bilən, təvazökar və əlçatandır. Mükəmməl dərəcədə davamlı bir çərçivə olduğundan, bu vəzifəni genişləndirmək və hətta artırmaq üçün maraqlı yollar var.
Məsələn, LIS3DHTR və Raspberry Pi istifadə edərək Pedometr fikri ilə başlaya bilərsiniz. Yuxarıdakı vəzifədə əsas hesablamalardan istifadə etdik. Sürət, yürüş qərarını təhlil etmək üçün müvafiq parametr ola bilər. İrəli (yuvarlanan, X), yan (pitch, Y) və şaquli (yaw oxu, Z) olan bir şəxs üçün hərəkətin üç komponentini yoxlaya bilərsiniz. Hər 3 oxun tipik bir nümunəsi qeyd olunur. Ən azı 1 ox nisbi böyük dövri sürətləndirmə dəyərlərinə malik olacaq. Buna görə ən yüksək istiqamət və bir alqoritm vacibdir. Bu alqoritmin Parametrini (Rəqəmsal Süzgəc, Pik Algılama, Zaman Pəncərəsi və s.) Beləliklə, bu sensordan düşünə biləcəyiniz müxtəlif yollarla istifadə edə bilərsiniz. Hamınızın bəyənəcəyinə inanırıq! Bu pedometrin işlək bir tərzini daha gec deyil, konfiqurasiya, kod, gəzinti və qaçışı ayıran vasitələri hesablayan hissə və yandırılmış kalorilər etməyə çalışacağıq.
Rahatlığınız üçün YouTube -da imtahan verməyinizə kömək edə biləcək maraqlı bir videomuz var. Güvən bu təşəbbüsü daha da araşdırmağa sövq edir. Başa vurmağa davam edin! Ardını axtarmağı unutmayın, daha çox israrla gəlir.
Tövsiyə:
Raspberry Pi - ADXL345 3 Eksenli Akselerometr Python Dərsliyi: 4 Addım
Raspberry Pi-ADXL345 3 Eksenli Akselerometr Python Dərsliyi: ADXL345, kiçik, nazik, ultralow gücə malik, 3 oxlu, yüksək qətnamə (13-bit) ölçmə qabiliyyəti olan ± 16 qr. Rəqəmsal çıxış məlumatları 16 bitlik ikili tamamlayıcı olaraq formatlanır və I2 C rəqəmsal interfeysi ilə əldə edilə bilər. Ölçür
Raspberry Pi MMA8452Q 3 Eksenli 12 bit/8 bitlik Rəqəmsal Akselerometr Python Dərsliyi: 4 addım
Raspberry Pi MMA8452Q 3 Eksenli 12 bit/8 bitlik Rəqəmsal Akselerometr Python Dərsliyi: MMA8452Q, 12 bit qətnamə ilə ağıllı, aşağı güclü, üç oxlu, tutumlu, mikromaşinli sürətləndiricidir. İstifadəçi tərəfindən proqramlaşdırıla bilən seçimlər, iki fasilə ilə konfiqurasiya oluna bilən akselerometrdə quraşdırılmış funksiyaların köməyi ilə təmin edilir
ESP8266 ilə Otaq Nəzarəti - Temperatur, Hərəkət, Pərdələr və İşıqlandırma: 8 addım
ESP8266 ilə Otaq Nəzarəti | Temperatur, Hərəkət, Pərdələr və İşıqlandırma: Bu layihə, NodeMCU ESP8266 moduluna əsaslanan bir sistemdən ibarətdir ki, bu da LED şeridin parlaqlığını və otağınızın pərdəsini idarə etməyə imkan verir, həmçinin otağınızın hərəkət hadisələri haqqında məlumat göndərə bilir. və buluddakı temperatur
Python & Thingspeak istifadə edərək Raspberry Pi Fan -ın Ağıllı Nəzarəti: 7 addım
Python & Thingspeak istifadə edərək Raspberry Pi Fan -ın Ağıllı Nəzarəti: Qısa xülasə Varsayılan olaraq, fan birbaşa GPIO -ya bağlıdır - bu onun daimi işləməsini nəzərdə tutur. Fanın nisbi sakit işləməsinə baxmayaraq, fasiləsiz işləməsi aktiv bir soyutma sisteminin effektiv istifadəsi deyil. Eyni zamanda
Python istifadə edərək Raspberry Pi ilə 3 Eksenli Akselerometr, ADXL345: 6 Addım
Python istifadə edərək Raspberry Pi ilə 3 Eksenli Akselerometr, ADXL345: Offroaderinizin uzanmaq üçün əyilmiş nöqtəsini yoxlaya bilən bir cihaz haqqında düşünmək. Çevrilmə ehtimalı olduqda birinin düzəldilməsi xoş olmazmı? Aydındır ki, bəli. Doğrudan da olardı