فهرست مطالب:

پیشگیری از برخورد- طراحی شده توسط Pi: 6 مرحله
پیشگیری از برخورد- طراحی شده توسط Pi: 6 مرحله

تصویری: پیشگیری از برخورد- طراحی شده توسط Pi: 6 مرحله

تصویری: پیشگیری از برخورد- طراحی شده توسط Pi: 6 مرحله
تصویری: لزبازی لیلا اوتادی چه لبی میگیره (نبینی از دستت رفته) 2024, جولای
Anonim
پیشگیری از برخورد- طراحی شده توسط Pi
پیشگیری از برخورد- طراحی شده توسط Pi

این دستورالعمل راهنمای گام به گام ساخت سیستم پیشگیری از برخورد را به شما می دهد. برای شروع باید لیست مواد زیر را بدست آورید:

Raspberry PI 3 (با آکورد قدرت و اترنت) ، 1 GPIO Extension Board and Ribbon Cable (GPIO) ، 1 Breadboard بزرگ با نمودار ، 2 نان برد کوچک با نمودار ، 14 کابل بلوز ، 3 مقاومت 220 اهم ، 1 LED RGB ، 3 کلید دکمه ، سنسور اولتراسونیک 1HB-SR04

مرحله 1: برنامه افزودنی GPIO

برنامه افزودنی GPIO
برنامه افزودنی GPIO
برنامه افزودنی GPIO
برنامه افزودنی GPIO

برد افزودنی GPIO را به تخته نان بزرگ وصل کنید. GPIO باید رو به عمودی و درست مانند صفحه نان باشد. سمت چپ GPIO را با استفاده از نمودار ارائه شده ، به پورت های ورق D1-D20 اختصاص دهید. سپس سمت راست به H1-H20 متصل می شود. کابل روبان را به Raspberry Pi 3 و برد افزودنی GPIO وصل کنید. کل این جزء اکنون به عنوان هیئت مدیره GPIO (GPIO) نامیده می شود

مرحله 2: سنسور اولتراسونیک

سنسور اولتراسونیک
سنسور اولتراسونیک
سنسور اولتراسونیک
سنسور اولتراسونیک

با استفاده از یک تخته نان کوچکتر دیگر ، سنسور اولتراسونیک HR-SR04 را با استفاده از نمودار ارائه شده ، به درگاه های کوچکتر ورق A2-5 وصل کنید. یک کابل بلوز را به تخته نان کوچکتر (BB) E2 وصل کنید ، انتهای دیگر را در درگاه برد J1 GPIO قرار دهید. به همین ترتیب ، سه پرش دیگر را به روش زیر وصل کنید. (BB E3 ، GPIO B17) (BB E4 ، GPIO B18) (BB E5 ، GPIO B20)

مرحله 3: LED و مقاومت

LED و مقاومت
LED و مقاومت
LED و مقاومت
LED و مقاومت
LED و مقاومت
LED و مقاومت

روی همان تخته نان کوچک استفاده شده در دستورالعمل قبلی ، سه مقاومت 220 اهم را به روش زیر وصل کنید. (E10 ، H10) (E12 ، H12) (E14 ، H14) سپس یک بلوز از همان تخته نان E13 را به ریل قدرت زمینی روی برد GPIO وصل کنید. چهار شاخه LED را به پورت های کوچکتر تخته نان (B13) (D14) (D12) (D10) وصل کنید. سپس سه پرنده را از ورق کوچکتر به برد GPIO وصل کنید. (BB J10 ، GPIO J9) (BB J12 ، GPIO J8) (BB J14 ، GPIO J6). این تخته نان در حال حاضر کامل است.

مرحله 4: زمین

زمین
زمین

برای اتصال برد GPIO J7 به ریل برق زمینی از یک بلوز دیگر استفاده کنید.

مرحله 5: دکمه ها

دکمه ها
دکمه ها

با استفاده از تخته دوم ، بالای کلید را روی پورت E1 و D1 قرار دهید ، یکی دیگر را در E5 و D5 و یک سوم را در E9 و D9 قرار دهید. سه پرش از ریل قدرت مثبت روی برد GPIO را به پورت های نان برد زیر (D3) (D7) (D11) وصل کنید. با استفاده از سه کابل جهنده دیگر ، نان برد را به مانیتور GPIO در مانور زیر وصل کنید: (BB D1، GPIO J16) (BB D5، GPIO J18) (BB D9، GPIO J20). در نهایت ، با استفاده از آخرین کابل بلوز ، GPIO A1 را به ریل قدرت مثبت وصل کنید. تنظیمات فیزیکی اکنون کامل شده است.

مرحله 6: کد

کد
کد
کد
کد

کابل اترنت و کابل برق را به Pi وصل کنید و در موقعیت های مربوطه خود قرار دهید. MATLAB را باز کرده و اسکریپت زیر را برای راه اندازی میکرو کنترلر اجرا کنید:

rpi = raspi ('169.254.0.2' ، 'pi' ، 'تمشک') ؛

سپس موارد زیر را در یک اسکریپت جدید به نام Ping کپی و جایگذاری کنید تا سیستم پیشگیری از برخورد اجرا شود:

تابع dist = ping () trig = 19؛ اکو = 13 ؛ تست = 21؛ configurePin (rpi ، trig ، 'DigitalOutput') ؛ configurePin (rpi ، echo ، 'DigitalInput') ؛ configurePin (rpi ، test ، 'DigitalInput') ؛

disp ("اندازه گیری فاصله در حال انجام") ؛

در حالیکه true writeDigitalPin (rpi ، trig، 0)؛ disp ("اجازه دهید سنسور ته نشین شود") ؛ مکث (2) ؛

writeDigitalPin (rpi ، trig، 1) ؛ مکث (0.002) ؛ writeDigitalPin (rpi ، trig، 0)؛

در حالی که readDigitalPin (rpi ، echo) == 0 tic end

در حالی که readDigitalPin (rpi ، echo) == 1 T = toc ؛ پایان

پالس_مدت = T ؛ فاصله = پالس_مدت * 17150؛

open = "فاصله ="؛ نزدیک = "سانتی متر" ؛ string = [باز ، فاصله ، بسته]؛ disp (رشته) ؛ dist = فاصله ؛ پایان پایان

در یک اسکریپت جدید ، کد زیر را با نام status اجرا کنید:

configurePin (rpi، 21، 'DigitalInput')؛ configurePin (rpi، 16، 'DigitalInput')؛ configurePin (rpi ، 12 ، 'DigitalInput') ؛

وضعیت = 2 ؛ d = 10 ؛ ٪ وضعیت: 0-قرمز/توقف 1-آبی/آهسته 2-سبز/رفتن در حال اجرا = true؛ در حال اجرا٪ d = ping ()؛ اگر readDigitalPin (rpi ، 21) == 1 وضعیت = 0 ؛ elseif readDigitalPin (rpi ، 16) == 1 وضعیت = 1 ؛ elseif readDigitalPin (rpi ، 12) == 1 وضعیت = 2 ؛ elseif د

توصیه شده: