Mündəricat:

[Docker Pi Seriyası] Raspberry Pi -də IoT Node (A) Modulundan necə istifadə olunur: 18 addım
[Docker Pi Seriyası] Raspberry Pi -də IoT Node (A) Modulundan necə istifadə olunur: 18 addım

Video: [Docker Pi Seriyası] Raspberry Pi -də IoT Node (A) Modulundan necə istifadə olunur: 18 addım

Video: [Docker Pi Seriyası] Raspberry Pi -də IoT Node (A) Modulundan necə istifadə olunur: 18 addım
Video: Desktop OS in Docker on Raspberry PI 2024, Noyabr
Anonim
[Docker Pi Seriyası] Raspberry Pi -də IoT Node (A) Modulundan necə istifadə olunur
[Docker Pi Seriyası] Raspberry Pi -də IoT Node (A) Modulundan necə istifadə olunur

IoT Node (A) modulu nədir?

IoT Node (A), Docker Pi seriyalı modullardan biridir.

IOT Node (A) = GPS/BDS + GSM + Lora.

I2C, Loranı birbaşa idarə edir, məlumat göndərir və alır, SC16IS752 vasitəsilə GSM/GPS/BDS modulunu idarə edir, anakartın yalnız I2C dəstəyinə ehtiyacı var.

Raspberry Pi və digər oxşar məhsulları dəstəkləyin.

Təchizat

1x Raspberry Pi 2B/3B/3B+/4B/3A+/Sıfır/Sıfır W

1x Docker Pi seriyası məhsulu: IoT Node (A) modulu

1x 16GB sinif 10 TF kartı

1x 5V/2.5A enerji təchizatı (Pi 4B üçün 5V@3A)

Addım 1: Xüsusiyyətlər

Xüsusiyyətlər
Xüsusiyyətlər
Xüsusiyyətlər
Xüsusiyyətlər
Xüsusiyyətlər
Xüsusiyyətlər
  • Docker Pi Seriyası
  • Proqramlaşdırıla bilən
  • Birbaşa nəzarət (proqramlaşdırmadan)
  • GPIO pinlərini genişləndirin
  • GPS/BDS dəstəyi
  • GSM dəstəyi
  • Lora dəstəyi
  • Digər Stack lövhəsi ilə yığa bilərsiniz
  • Anakartın aparatından asılı olmayaraq (I2C dəstəyi tələb olunur)

Addım 2: Addım 1: IoT (A) lövhəsi haqqında məlumat əldə edin

Addım 1: IoT (A) Board haqqında məlumat əldə edin
Addım 1: IoT (A) Board haqqında məlumat əldə edin
Addım 1: IoT (A) Board haqqında məlumat əldə edin
Addım 1: IoT (A) Board haqqında məlumat əldə edin
Addım 1: IoT (A) Board haqqında məlumat əldə edin
Addım 1: IoT (A) Board haqqında məlumat əldə edin

IoT Node (A), Docker Pi seriyalı modullardan biridir.

IOT Node (A) = GPS/BDS + GSM + Lora.

I2C, Lora'ya birbaşa nəzarət edir, məlumat göndərir və alır, SC16IS752 vasitəsilə GSM/GPS/BDS modulunu idarə edir, anakart yalnız I2C dəstəyinə ehtiyac duyur. Raspberry Pi və digər oxşar məhsulları dəstəkləyin.

Beləliklə, ikisindən istifadə edərək orta mənzilli bir əlaqə cihazı edə bilərsiniz.

və həmçinin GPS modulundan istifadə edərək cihazınızın yerini tapa bilərsiniz.

SİM kartı daxil edin, SMS mesajı ilə ötürücü stansiyaya çevriləcək.

Addım 3: Addım 2: Necə yığılır

Addım 2: Onu necə yığmaq olar
Addım 2: Onu necə yığmaq olar
Addım 2: Onu necə yığmaq olar
Addım 2: Onu necə yığmaq olar

"Şapka" dizaynına görə onu yığmaq çox asandır, sadəcə moruq pi -yə taxıb GPIO sancaqları ilə bağlayırsınız, moruq pi üzərində "şapka" kimidir, buna görə kütlə əlavə etməyəcəksiniz. tel

Addım 4: Adım 3: Anteni bağlayın

Addım 3: Antenanı bağlayın
Addım 3: Antenanı bağlayın
Addım 3: Antenanı bağlayın
Addım 3: Antenanı bağlayın
Addım 3: Antenanı bağlayın
Addım 3: Antenanı bağlayın

Bu IoT (A) modulu üçün 3 ədəd anten var, onlardan biri loar modulu üçündür, SMA tipli bir antenadır və bunlardan biri GPS üçün yaxşıdır, IPX portu olan kvadrat qutulu bir antenadır. və sonuncusu SIM modulu (A9G) üçündür, IPX portu olan kiçik bir antenadır. antenanı bağlayın və papağı moruq pi -yə bağlayın.

Iot Node (A) lövhəsini Raspberry Pi -yə necə yığmaq olar

Hookup GPS antana və Lora antana IPX portuna.

  • E1: GPS-ANTANA-IPX
  • E3: LoRa-ANTANA-IPX

SMA portundakı GPRS antanasını vintlər.

Addım 5: Addım 4: Ətraf Mühit və Proqram Konfiqurasiyaları

Bu addımda bunları etməlisiniz:

1. Ən son şəkil faylını buradan yükləyin: www.raspberrypi.org/downloads

2. Açın.

3. TF kartınızı etcher vasitəsi ilə ən son görüntü ilə yandırın

4. /boot/config.txt faylını dəyişdirin və bu paraqrafı əlavə edin.

dtoverlay = sc16is752-i2c

5. /boot/overlay/sc16is752-i2c.dtbo faylını bu faylla əvəz edir:

wiki.52pi.com/index.php/File:Sc16is752-i2c…

PS: Unutmayın ki,/boot/overlay/qovluğuna qoyun və köhnəsini əvəz edin.

6. Raspberry Pi -ni yenidən başladın.

Addım 6: Addım 5: I2C (Raspberry Pi) konfiqurasiyası

Addım 5: I2C (Raspberry Pi) konfiqurasiyası
Addım 5: I2C (Raspberry Pi) konfiqurasiyası
Addım 5: I2C (Raspberry Pi) konfiqurasiyası
Addım 5: I2C (Raspberry Pi) konfiqurasiyası
Addım 5: I2C (Raspberry Pi) konfiqurasiyası
Addım 5: I2C (Raspberry Pi) konfiqurasiyası
Addım 5: I2C (Raspberry Pi) konfiqurasiyası
Addım 5: I2C (Raspberry Pi) konfiqurasiyası

Sudo raspi-config proqramını işə salın və ARM nüvəsi və linux nüvəsi üçün i2c dəstəyi quraşdırmaq üçün göstərişlərə əməl edin.

Addım 7: Addım 6: Qeyd məlumatları haqqında məlumat əldə edin

GPRS bölməsi

Aşağı enerji istehlakı, yuxu axını <1mA2.

850, 900, 1800, 1900MHZ daxil olmaqla GSM/GPRS dörd tezlik diapazonunu dəstəkləyin

GPRS Sinif 10

GPRS məlumat xidmətini dəstəkləyin, maksimum məlumat sürəti, 85.6Kbps yükləyin, 42.8Kbps yükləyin

Standart GSM07.07, 07.05 AT əmrlərini dəstəkləyin və I2C interfeysi çevrilməsi ilə serial portuna daxil olun

AT əmrləri standart AT və TCP/IP əmr portlarını dəstəkləyir

GPS bölməsi BDS/GPS birgə yerləşdirilməsini dəstəkləyin

A-GPS, A-BDS dəstəyi

Standart SİM kartı dəstəkləyin

LORA bölməsi Göndərmə məsafəsi: 500 Metr (RF parametrləri: 0x50 @ China City)

FSK, GFSK, MSK, GMSK, LoRaTM və OOK modulyasiya metodlarını dəstəkləyin

Ultra yüksək alıcı həssaslığı -141 dBm qədər aşağıdır

Giriş hissəsinin aşkarlanmasını dəstəkləyin

CRC ilə paket mühərriki, 256 bayta qədər

LORA ötürücü göstəricisi

Docker Pi tərəfindən Easy TX/RX

Addım 8:

A9G modulu

A9G modulu iki seriyalı port təklif edir.

Ünsiyyət üçün I2C UART körpüsündən istifadə edin.

Serial Port Modulunun adı

  • /dev/ttySC0 GSM
  • /dev/ttySC1 GPS/BDS

Xəritə Qeydiyyat

  • Ünvan Function Dəyərini Qeyd edin
  • 0x01 LORA_TX1 Lora TX Tampon 1 - İstifadəçi Məlumatları
  • 0x02 LORA_TX2 Lora TX Tampon 2 - İstifadəçi Məlumatları
  • 0x03 LORA_TX3 Lora TX Tampon 3 - İstifadəçi Məlumatları
  • 0x04 LORA_TX4 Lora TX Tampon 4 - İstifadəçi Məlumatları
  • 0x05 LORA_TX5 Lora TX Tampon 5 - İstifadəçi Məlumatları
  • 0x06 LORA_TX6 Lora TX Tampon 6 - İstifadəçi Məlumatları
  • 0x07 LORA_TX7 Lora TX Tampon 7 - İstifadəçi Məlumatları
  • 0x08 LORA_TX8 Lora TX Tampon 8 - İstifadəçi Məlumatları
  • 0x09 LORA_TX9 Lora TX Tampon 9 - İstifadəçi Məlumatları
  • 0x0a LORA_TX10 Lora TX Tampon 10 - İstifadəçi Məlumatları
  • 0x0b LORA_TX11 Lora TX Tampon 11 - İstifadəçi Məlumatları
  • 0x0c LORA_TX12 Lora TX Tampon 12 - İstifadəçi Məlumatları
  • 0x0d LORA_TX13 Lora TX Tampon 13 - İstifadəçi Məlumatları
  • 0x0e LORA_TX14 Lora TX Tampon 14 - İstifadəçi Məlumatları
  • 0x0f LORA_TX15 Lora TX Tampon 15 - İstifadəçi Məlumatları
  • 0x10 LORA_TX16 Lora TX Tampon 16 - İstifadəçi Məlumatları
  • 0x11 LORA_RX1 Lora RX Tampon 1 - İstifadəçi Məlumatları
  • 0x12 LORA_RX2 Lora RX Tampon 2 - İstifadəçi Məlumatları
  • 0x13 LORA_RX3 Lora RX Tampon 3 - İstifadəçi Məlumatları
  • 0x14 LORA_RX4 Lora RX Tampon 4 - İstifadəçi Məlumatları
  • 0x15 LORA_RX5 Lora RX Tampon 5 - İstifadəçi Məlumatları
  • 0x16 LORA_RX6 Lora RX Tampon 6 - İstifadəçi Məlumatları
  • 0x17 LORA_RX7 Lora RX Tampon 7 - İstifadəçi Məlumatları
  • 0x18 LORA_RX8 Lora RX Tampon 8 - İstifadəçi Məlumatları
  • 0x19 LORA_RX9 Lora RX Tampon 9 - İstifadəçi Məlumatları
  • 0x1a LORA_RX10 Lora RX Tampon 10 - İstifadəçi Məlumatları
  • 0x1b LORA_RX11 Lora RX Tampon 11 - İstifadəçi Məlumatları
  • 0x1c LORA_RX12 Lora RX Tampon 12 - İstifadəçi Məlumatları
  • 0x1d LORA_RX13 Lora RX Tampon 13 - İstifadəçi Məlumatları
  • 0x1e LORA_RX14 Lora RX Tampon 14 - İstifadəçi Məlumatları
  • 0x1f LORA_RX15 Lora RX Tampon 15 - İstifadəçi Məlumatları
  • 0x20 LORA_RX16 Lora RX Tampon 16 - İstifadəçi Məlumatları
  • 0x01 - 0x10 Yalnız Yaz.
  • 0x11 - 0x20 Yalnız Oxu.

Addım 9: Təlimatlar:

Təlimatlar
Təlimatlar

L_SET (Yalnız Yaz)

  • 0x22 -dən LORA Moduluna parametrləri təyin etmək üçün 1 yazın.
  • 0 effekti yazmayın

G_RESET (Yalnız Yaz)

  • A9G Modulunu yenidən qurmaq üçün 1 yazın
  • 0 yazın təsir etməz

L_RXNE (Oxu və Yaz)

  • Səhv 1 səbəb yazın
  • Silmək üçün 0 yazın
  • 1 oxuyun, məlumatların alındığını bildirir, zəhmət olmasa məlumatları 0x11 - 0x20 reyestrindən alın.
  • 0 -u oxuyun, indi heç bir məlumat yoxdur.

L_SET (Yalnız Yaz)

  • Məlumat göndərmək üçün 1 yazın, göndərmədən əvvəl 0x01 - 0x10 reyestrindəki məlumatları doldurun.
  • 0 yazın təsir etməz

Addım 10: GPS Modulunu Gpsd (Raspberry Pi) ilə necə istifadə etmək olar

GPS Modulunu Gpsd (Raspberry Pi) ilə necə istifadə etmək olar
GPS Modulunu Gpsd (Raspberry Pi) ilə necə istifadə etmək olar
GPS Modulunu Gpsd (Raspberry Pi) ilə necə istifadə etmək olar
GPS Modulunu Gpsd (Raspberry Pi) ilə necə istifadə etmək olar
GPS Modulunu Gpsd (Raspberry Pi) ilə necə istifadə etmək olar
GPS Modulunu Gpsd (Raspberry Pi) ilə necə istifadə etmək olar

GPS Modulunu gpsd (Raspberry Pi) ilə necə istifadə etmək olar

Əvvəlcə /boot/overlays/sc16is752-i2c.dtbo dəyişdirin və I2C-nin düzgün işlədiyinə əmin olun.

  • Sc16is752-i2c.dtbo dəyişdirin
  • I2C konfiqurasiya olunur
  • Gpsd alətlərini quraşdırın.

Bir terminal açın və bu əmri yazın:

sudo apt install gpsd gpsd-clients

/Etc/default/gpsd faylını dəyişdirin və aşağıdakı parametrləri əlavə edin:

  • CİHAZLAR = "/dev/ttySC1"
  • GPSD_OPTIONS = "-F /var/run/gpsd.sock"

GPRS modulunu sıfırlamaq üçün i2cset -y 1 0x16 0x23 0x40 əmrini daxil edin.

Açıq GPS üçün Python Script:

serialimport os idxal zamanı # gpsd xidmətini yenidən başladın. os.system ("sudo systemctl restart gpsd.socket") # Ser seriyalı portu açın = serial. Serial ('/dev/ttySC0', 115200) i = 0 əgər ser.isOpen == False: ser.open () cəhd edin: çap edərkən ("GPS -i yandırın …") Doğru: ser.write (str.encode ("AT+GPS = 1 / r")) size = ser.inWaiting () əgər ölçü! = 0: ticks = time.time () cavab = ser.read (ölçüsü) gps = str (cavab, kodlaşdırma = "utf -8") əgər (gps.find ("OK")! = -1): os.system ("sudo cgps -s") exit () else: i = i + 1 print ("GPS Aktivləşdirilməsini Gözləyirik, Vaxt çox uzundursa, Zəhmət olmasa açıq havada sınayın:" + str (i)) ser.flushInput () time.sleep (1) KeyboardInterrupt istisna olmaqla: ser.flushInput () ser.close ()

Saxla və icra et:

python3 GPS.py

Addım 11: GPS Modulunu C (Raspberry Pi) ilə necə istifadə etmək olar

Gpsd alətlərini quraşdırın

sudo apt-get libgps-dev qurun

Mənbə kodu yaradın və "gps.c" adlandırın

#daxil edin #daxil edin #daxil edin

#daxil edin

#daxil edin

int main ()

{int rc; vaxt quruluşlu televizor; struktur gps_data_t gps_data; if ((rc = gps_open ("localhost", "2947", & gps_data)) == -1) {printf ("kod: %d, səbəb: %s / n", rc, gps_errstr (rc)); EXIT_FAILURE qaytar; } gps_stream (& gps_data, WATCH_ENABLE | WATCH_JSON, NULL);

vaxt (1)

{ / * məlumatları almaq üçün 2 saniyə gözləyin * / if (gps_waiting (& gps_data, 2000000)) { / * data oxu * / if ((rc = gps_read (& gps_data)) == -1) {printf ("oxunuşda xəta baş verdi") gps məlumatları. kod: %d, səbəb: %s / n ", rc, gps_errstr (rc)); } başqa { /* GPS qəbuledicisindən məlumatları göstərin. */ if ((gps_data.status == STATUS_FIX) && (gps_data.fix.mode == MODE_2D || gps_data.fix.mode == MODE_3D) &&! isnan (gps_data.fix.latitude) &&! isnan (gps_data.fix. uzunluq)) { /* gettimeofday (& tv, NULL); EDIT: tv.tv_sec əslində zaman damgası deyil! */

printf ("enlem: %f, uzunluq: %f, sürət: %f, zaman damgası: %lf / n", gps_data.fix.latitude, gps_data.fix.longitude, gps_data.fix.speed, gps_data.fix.time);

// EDIT: tv.tv_sec gps_data.fix.time} ilə əvəz olundu} else {printf ("GPS məlumatı yoxdur / n"); }}} yuxu (3); } / * İşiniz bitdikdə… * / gps_stream (& gps_data, WATCH_DISABLE, NULL); gps_close (& gps_data); EXIT_SUCCESS qayıt; }

Addım 12: Bunu tərtib edin

Bunu tərtib edin
Bunu tərtib edin

Tərtib et!

gcc gps.c -lm -lgps -o gps

İcra et!

./GPS

Addım 13: GPS Modulunu Python (Raspberry Pi) ilə necə istifadə etmək olar

Python (Raspberry Pi) ilə GPS Modulundan necə istifadə olunur
Python (Raspberry Pi) ilə GPS Modulundan necə istifadə olunur

Aşağıdakı kodun Python 3 istifadə edərək yerinə yetirilməsi və gpsd-py3 kitabxanasının və GPS 2D/3D Fix-in quraşdırılması tövsiyə olunur:

gpsd idxal edin

# Yerli gpsd -ə qoşulun

gpsd.connect ()

# GPS mövqeyi əldə edin

paket = gpsd.get_current ()

# Mövcud məlumatlar üçün GpsResponse üçün daxili sənədlərə baxın

çap (packet.position ())

Addım 14: PPPd (Raspberry Pi) ilə GSM Modulundan necə istifadə olunur

GSM Modulunu PPPd (Raspberry Pi) ilə necə istifadə etmək olar
GSM Modulunu PPPd (Raspberry Pi) ilə necə istifadə etmək olar
GSM Modulunu PPPd (Raspberry Pi) ilə necə istifadə etmək olar
GSM Modulunu PPPd (Raspberry Pi) ilə necə istifadə etmək olar
GSM Modulunu PPPd (Raspberry Pi) ilə necə istifadə etmək olar
GSM Modulunu PPPd (Raspberry Pi) ilə necə istifadə etmək olar

A) Əvvəlcə /boot/overlays/sc16is752-i2c.dtbo dəyişdirin və I2C-nin düzgün işlədiyinə əmin olun.

  • Sc16is752-i2c.dtbo dəyişdirin
  • I2C konfiqurasiya olunur

B) GPRS modulunu yenidən qurmaq üçün i2cset -y 1 0x16 0x23 0x40 əmrini daxil edin.

Komandanı işə saldıqdan sonra bir az, təxminən 10 saniyə gözləmək lazımdır

Sıfırlamaq üçün aşağıdakı üsuldan da istifadə edə bilərsiniz.

C) Əmr daxil edin

sudo apt quraşdırma ppp

ppp alətləri quraşdırmaq.

D)/etc/ppp/peers/provider/etc/ppp/peers/gprs -ə kopyalayın

E)/etc/ppp/peers/gprs dəyişdirin

  • Satır 10: İstifadəçi üçün xidmət təminatçınıza müraciət edin (Məsələn: cmnet).
  • Satır 15: Apn üçün xidmət təminatçınızla məsləhətləşin (Məsələn: cmnet).
  • 18 -ci sətir - 24 -cü sətir: Tövsiyə olunan parametr

F)/etc/chatscripts/gprs dəyişdirin (34 -cü sətri 35 -ci sətrə dəyişin, əlaqə nömrəsi *99#ola bilməz)

G) Yığmaq üçün sudo pppd gprs əmrini daxil edin.

H) İnternet provayderinizdən ppp konfiqurasiyanızı yoxlayın.

I) ping əmrini daxil edin -I ppp0 8.8.8.8 şəbəkənizi sınayın (İnternet varsa və marşrut cədvəli düzgündürsə)

J) Zəhmət olmasa GSM siqnalını yaxşı saxlayın, əks halda aşağıdakılar olacaq.

Addım 15: GSM Modulumu necə tanıya bilərəm (Raspberry Pi)

GSM Modulumu necə tanıya bilərəm (Raspberry Pi)
GSM Modulumu necə tanıya bilərəm (Raspberry Pi)
GSM Modulumu (Raspberry Pi) necə tanıya bilərəm
GSM Modulumu (Raspberry Pi) necə tanıya bilərəm
GSM Modulumu necə tanıya bilərəm (Raspberry Pi)
GSM Modulumu necə tanıya bilərəm (Raspberry Pi)
GSM Modulumu (Raspberry Pi) necə tanıya bilərəm
GSM Modulumu (Raspberry Pi) necə tanıya bilərəm

Aşağıdakı kodun Python 3 istifadə edərək icra edilməsi və smbus kitabxanasının quraşdırılması tövsiyə olunur:

idxal serialimport vaxt idxal smbus idxal operatoru idxal os

çap et ("Başlanğıc gözləyir …")

avtobus = smbus. SMBus (1)

bus.write_byte_data (0x16, 0x23, 0x40)

ser = serial. Serial ('/dev/ttySC0', 115200)

əgər ser.isOpen == Yanlış:

ser.open () cəhd edin: çap edin ('-'*60) çap ("A9G GPRS modulu işə salınır.") çap edin ("GSM qoşulur…") time.sleep (3) i = 0 isə True: ser.write (str.encode ("AT+CCID / r")) size = ser.inWaiting () əgər size! = 0: ticks = time.time () cavab = ser.read (size) ccid = str (cavab, kodlaşdırma = "utf -8 ") çap (ccid) başqa: i = i + 1 ser.flushInput () time.sleep (1) KeyboardInterrupt istisna olmaqla: ser.close ()

Exec Test Script, tətbiqin nəticələrinə əsasən, GSM modulunu diaqnoz edə bilərik. Məsələn, aşağıdakı qayıdış, CME ERROR 53 xətası bizə Gücün yaxşı olmadığını bildirir. CME Kodu = GSM avadanlığı ilə əlaqədar səhvlər

Əlbəttə ki, skriptin sıfırlama funksiyası da var. CCID -ni düzgün göstərə bilsəniz, sıfırlama tamamlandı.

Addım 16: C (Raspberry Pi) ilə Lora TX & RX necə istifadə olunur

Aşağıdakı kodun Python 3 istifadə edərək yerinə yetirilməsi və smbus kitabxanasının quraşdırılması tövsiyə olunur.

İki IOT Node (A) arasında köçürülməlidir. Öz -özünə göndərilən məzmun öz -özünə qəbul edilə bilməz. Zəhmət olmasa icra üçün py skript olaraq qeyd edin.

Necə Göndərilir: Məlumatları 0x01 - 0x10 reyestrinə doldurduqdan sonra, məlumat göndərməyə başlamaq üçün L_TX bitini təyin edin.

idxal vaxtimport smbus idxal os idxal sys

avtobus = smbus. SMBus (1)

cəhd edin:

data_list = [170, 85, 165, 90] # qeydiyyatdan keçmək üçün məlumat yazın və sonra məlumatlar göndəriləcək. aralığındakı indeks üçün (1, len (data_list) + 1): bus.write_byte_data (0x16, index, data_list [index - 1]) çap ("LORA %d qeydiyyatdan %d data" məlumat göndərmək " %(indeks, data_list [index - 1])) bus.write_byte_data (0x16, 0x23, 0x01) KeyboardInterrupt istisna olmaqla: sys.exit ()

Qəbulu Necə Göndərmək olar: L_RXNE bitini yoxlayın, təyin olunarsa yeni məlumatlar gəldi, bu bayraq əl ilə silinməlidir

idxal vaxt idxal smbus idxal sy id

avtobus = smbus. SMBus (1)

recv_data =

cəhd edin:

if bus.read_byte_data (0x16, 0x23) & 0x02: # L_RXNE əl ilə silin bus.write_byte_data (0x16, 0x23, 0x00) register_list = [0x11, 0x12, 0x13, 0x14] # indeks aralığında məlumatları oxuyun (0x11, len (register_list) + 0x11): recv_data.append (bus.read_byte_data (0x16, register_list [index - 0x11]))

çap et ("Alınan məlumatlar:")

print (recv_data) else: print ("Henüz heç bir məlumat alınmadı ~") KeyboardInterrupt istisna olmaqla: sys.exit ()

Addım 17: I2C Bant Genişliyinin Xüsusi Təsviri

I2C protokolu səbəbiylə I2C sürətinin həddi 400 kHz -dir, buna görə də bir cihazın təsirli bant genişliyi 320 kbit / s -dən, çox cihazlı təsirli bant genişliyi 160 kbps -dən aşağıdır. I2C UART Körpü sürətinin həddi 115200 b / s -dir. Eyni zamanda, I2C bant genişliyi qeyri -kafidir, çünki 115.2kbps * 2 = 230.4kbps, bəzi məlumatlar daşacaq. GPS və GSM rabitəsinin ötürmə sürətinin azaldılması rabitə bant genişliyi çatışmazlığını yaxşılaşdıra bilər. Əlavə I2C bant genişliyi Adətən şəbəkə məlumat sürəti yavaş olduğundan GSM bant genişliyi dolmadığı üçün daşma problemi yoxdur.

Addım 18: Bitdi

Ümid edirəm bəylər xoşunuza gəlir və bunu bacarırsınız.

burada tapa bilərsiniz:

Amazon

Gecə işığı: https://www.amazon.com/GeeekPi-Night-Light-WS2812-Raspberry/dp/B07LCG2S5S 4kanallı Röle lövhəsi: https://www.amazon.co.uk/dp/B07MV1TJGR?ref=myi_title_dp: Https: //www.amazon.co.uk/dp/B07TD595VS? Ref = myi_title_dp IoT Node (A) : https://www.amazon.co.uk/dp/B07TY15M1C Sensor HUB: https:// www. amazon.co.uk/dp/B07TZD8B61 buz qülləsi:

Tövsiyə: