Mündəricat:

Toqquşmanın qarşısının alınması- Pi tərəfindən dəstəklənir: 6 addım
Toqquşmanın qarşısının alınması- Pi tərəfindən dəstəklənir: 6 addım

Video: Toqquşmanın qarşısının alınması- Pi tərəfindən dəstəklənir: 6 addım

Video: Toqquşmanın qarşısının alınması- Pi tərəfindən dəstəklənir: 6 addım
Video: 2021-ci il üçün 10 ən təhlükəsiz yolsuzluq avtomobili ▶ Survival 2024, Noyabr
Anonim
Toqquşmanın qarşısının alınması- Pi tərəfindən dəstəklənir
Toqquşmanın qarşısının alınması- Pi tərəfindən dəstəklənir

Bu Təlimat sizə Çarpışma Qarşısının Alınması Sisteminin qurulması üçün addım-addım bələdçi verəcək. Başlamaq üçün aşağıdakı materialların siyahısını almalısınız:

Raspberry PI 3 (güc və Ethernet akkordları ilə), 1 GPIO Uzatma Kartı və Şerit Kabeli (GPIO), Diaqramlı 1 Böyük Çörək Paneli, Diaqramlı 2 kiçik çörək paneli, 14 keçid kabeli, 3 220 Ohm müqavimət, 1 RGB LED, 3 düymə açarı, 1HB-SR04 Ultrasonik sensor

Addım 1: GPIO Uzantısı

GPIO uzantısı
GPIO uzantısı
GPIO uzantısı
GPIO uzantısı

GPIO uzatma lövhəsini böyük çörək taxtasına qoşun. GPIO, çörək taxtası olduğu kimi şaquli tərəfə baxmalıdır. Verilən diaqramı istifadə edərək GPIO-nun sol tərəfini D1-D20 çörək taxtası portlarına təyin edin. Sağ tərəf H1-H20-yə bağlanacaq. Şerit kabelini həm Raspberry Pi 3 -ə, həm də GPIO uzatma lövhəsinə bağlayın. Bu bütün komponentə indi GPIO lövhəsi (GPIO) adı veriləcək.

Addım 2: Ultrasonik Sensor

Ultrasonik Sensor
Ultrasonik Sensor
Ultrasonik Sensor
Ultrasonik Sensor

Daha kiçik bir çörək taxtası istifadə edərək, təqdim olunan diaqramdan istifadə edərək HR-SR04 ultrasəs sensorunu daha kiçik A2-5 çörək taxtası portlarına qoşun. Kiçik çörək taxtasına (BB) E2 -yə bir keçid kabeli bağlayın, digər ucunu GPIO uzatma lövhəsi J1 -ə daxil edin. Eyni şəkildə, daha üç atlayıcını aşağıdakı şəkildə bağlayın. (BB E3, GPIO B17) (BB E4, GPIO B18) (BB E5, GPIO B20)

Addım 3: LED və Rezistorlar

LED və rezistorlar
LED və rezistorlar
LED və rezistorlar
LED və rezistorlar
LED və rezistorlar
LED və rezistorlar

Əvvəlki təlimatda istifadə olunan eyni kiçik çörək taxtasında, aşağıdakı şəkildə üç 220 ohm rezistoru bağlayın. (E10, H10) (E12, H12) (E14, H14) Sonra eyni çörək taxtası E13 -dən GPIO lövhəsindəki yer elektrik rayına bir tullanan bağlayın. LED -in dörd ucunu daha kiçik çörək bortu portlarına (B13) (D14) (D12) (D10) qoşun. Daha sonra kiçik çörək taxtasından üç atlayıcını GPIO lövhəsinə təyin olunmuş qaydada bağlayın. (BB J10, GPIO J9) (BB J12, GPIO J8) (BB J14, GPIO J6). Bu çörək taxtası artıq tamamlandı.

Addım 4: Zəmin

Zəmin
Zəmin

GPIO lövhəsi J7 -ni yer elektrik rayına bağlamaq üçün başqa bir tullanan istifadə edin.

Addım 5: Düymələr

Düymələr
Düymələr

İkinci çörək taxtasından istifadə edərək E1 və D1 portundakı düymə açarının üstünə, digərini E5 və D5 -ə, üçüncüsünü isə E9 və D9 -a yerləşdirin. GPIO lövhəsindəki müsbət elektrik rayından üç atlayıcını aşağıdakı çörək taxtası portlarına (D3) (D7) (D11) bağlayın. Daha üç keçid kabeli istifadə edərək, çörək taxtasını GPIO uzadma lövhəsinə aşağıdakı malikanəyə bağlayın: (BB D1, GPIO J16) (BB D5, GPIO J18) (BB D9, GPIO J20). Nəhayət, son keçid kabelindən istifadə edərək, GPIO A1 -i müsbət elektrik rayına qoşun. Fiziki quruluş artıq tamamlandı.

Addım 6: Kod

Kod
Kod
Kod
Kod

Ethernet kabelini və elektrik kabelini Pi -yə və müvafiq mövqelərinə qoşun. MATLAB-ı açın və mikro nəzarətçini işə salmaq üçün aşağıdakı skripti işə salın:

rpi = raspi ('169.254.0.2', 'pi', 'moruq');

Daha sonra, toqquşmanın qarşısını almaq sistemini işə salmaq üçün aşağıdakıları Ping adlı yeni bir skriptə kopyalayıb yapışdırın:

dist = ping () trig = 19 funksiyası; echo = 13; test = 21; configurePin (rpi, trig, 'DigitalOutput'); configurePin (rpi, echo, 'DigitalInput'); configurePin (rpi, test, 'DigitalInput');

disp ("Məsafə ölçülməsi davam edir");

doğru yazarkənDigitalPin (rpi, trig, 0); disp ("Sensorun yerləşməsinə icazə ver"); fasilə (2);

writeDigitalPin (rpi, trig, 1); fasilə (0.002); writeDigitalPin (rpi, trig, 0);

readDigitalPin (rpi, echo) == 0 tic end

readDigitalPin (rpi, echo) == 1 T = toc; bitmək

pulse_duration = T; məsafə = pulse_duration * 17150;

open = "Məsafə ="; yaxın = "sm"; sim = [açıq, məsafə, yaxın]; disp (simli); dist = məsafə; sonu son

Yeni bir skriptdə status adlı aşağıdakı kodu işlədin:

configurePin (rpi, 21, 'DigitalInput'); configurePin (rpi, 16, 'DigitalInput'); configurePin (rpi, 12, 'DigitalInput');

status = 2; d = 10; Vəziyyət: 0-Qırmızı/Dur 1-Mavi/Yavaş 2-Yaşıl/Qaçış = doğru; %d = ping () işləyərkən; əgər readDigitalPin (rpi, 21) == 1 status = 0; elseif readDigitalPin (rpi, 16) == 1 status = 1; elseif readDigitalPin (rpi, 12) == 1 status = 2; başqa d

Tövsiyə: