Mundarija:
- Ta'minotlar
- 1 -qadam: RPIni sozlash
- 2 -qadam: ma'lumotlar bazasi
- 3 -qadam: simlarni ulash
- 4 -qadam: uy -joy
- 5 -qadam: kodlash
Video: Raspberry Pi yordamida aqlli avtoturargoh: 5 qadam
2024 Muallif: John Day | [email protected]. Oxirgi o'zgartirilgan: 2024-01-30 13:25
Ushbu qo'llanmada biz veb -interfeysga ulangan to'liq avtomatik to'xtash tizimini yaratamiz. Siz qaysi joyni olganingizni ko'rishingiz, kim kirishi va kim chiqishini aniqlashingiz mumkin va u avtomatik yoritish tizimi bilan jihozlangan.
Ta'minotlar
Uskuna
- 2 x Ultrasonik sensorlar
- 1x servo dvigatel
- 4x oq LED
- 1x Yorug'likka bog'liq qarshilik
- 1x 2*16 LCD displey
Hisoblash
- 1x Raspberry Pi 3 B+
- 1 x SD-karta (8-16 Gb-tanlov sizniki)
- 1x Adafruit I2S 3W D sinfidagi kuchaytirgichning uzilishi - MAX98357A
- 1x MCP3008
- 1x rezistor 2.2K Ohm
- 9x rezistorlar 1K Ohm
Har xil
- Jumper simlari
- Non paneli
- UTP kabeli
- Sizning malina pi uchun adapter
- Multipleks varag'i (siz korpus uchun xohlagan materialdan foydalanishingiz mumkin)
- Yelimli qurol
Dasturiy ta'minot
- PuTTY
- Kodni tahrirlash uchun dasturiy ta'minot (Python, HTML, CSS va java skriptlari qo'llab -quvvatlansa, xohlagan narsani ishlatishingiz mumkin).
- Win32 disk qidiruvchisi
- Raspbian OS tasvir
- VNC Viewer (ixtiyoriy)
1 -qadam: RPIni sozlash
Uskunani ulashni boshlashdan oldin, uni yozing
dasturiy ta'minot va korpusni tayyorlang, biz sizning PI -ni loyihani ishga tushirish uchun zarur bo'lgan dasturiy ta'minot bilan sozlashimiz kerak bo'ladi.
SD kartani qo'yish va uni Win32 Disk Imager SD kartasiga yozish uchun sizga Raspbian tasviri kerak bo'ladi. Siz ikkalasiga havolalarni quyida topishingiz mumkin.
- Win32 Disk Imager:
- Raspbian tasviri:
O'rnatish
-
Win32 disk qidiruvchisini oching
- Yangi yuklangan rasmni papka belgisi orqali tanlang
- Ochiladigan ro'yxat orqali SD -kartangizni tanlang
- Yozishni bosing
- Jarayon tugagandan so'ng, sizning kompyuteringiz, agar siz SD -kartani formatlamoqchi bo'lsangiz, buni qilmang
Ushbu qadamlarni bajarganingizdan so'ng, siz PI dasturiy ta'minotiga kirishingiz uchun qo'shimcha narsalarni qilishingiz kerak bo'ladi.
- Explorer -da SD -kartani oching
- "Cmdline.txt" faylini oching.
- Oxirida matnning uzun qatorini ko'rasiz: ip = 169.254.10.1
- Faylni saqlang
- Kengaytmasi bo'lmagan ssh nomli fayl yarating (agar buni bilmasangiz, yangi faylni bosing, yangi matnli faylni tanlang, kengaytmani o'chirib tashlang va uni ssh deb nomlang)
- Ushbu qismning oxirgi bosqichi - SD -kartani xavfsiz chiqarib, Raspberry PI -ga joylashtirish
Ulanmoqda
Oldingi qadamlarni bajarishni tugatganingizdan so'ng, pi -ga birinchi marta ulanish vaqti keldi. Birinchidan, siz UTP kabelini, bir uchini kompyuterning ikkinchi uchini pi -ga ulashingiz kerak (uni ulashdan oldin LAN kabelini ulash muhim).
- Putty -ni o'rnating:
- O'rnatgandan so'ng uni oching va IP maydoniga 169.254.10.1 kiriting
- SSH -ni tanlang va 22 -portni to'ldiring
- Ochish -ni bosing
- Foydalanuvchi nomini kiriting: pi va malina - bu yangi rasmdagi standart login
Raspi-config
Davom etishdan oldin siz raspi-config menyusidagi bir nechta sozlamalarni o'zgartirishingiz kerak bo'ladi:
sudo raspi-config
1. I2C va SPI ni interfeyslar toifasiga kiriting
2. Mahalliylashtirish toifasi orqali WIFI -ni tanlang
3. Yuklash imkoniyatlari toifasidagi Desktop/CLI sozlamalarini Desktop Autologin -ga o'rnating.
4. Kengaytirilgan variantlar ostida A1 kengaytirilgan fayl tizimini tanlang (bu butun SD -kartaning bo'sh joyidan foydalanganingizga ishonch hosil qiladi
5. Endi chiqish va sudo -ni qayta ishga tushirish
Wifi
Endi Wi -Fi ulanishini sozlash vaqti keldi, sizga Wi -Fi ma'lumotlari kerak bo'ladi.
Avval ushbu buyruqni ishlatib, ildiz rejimiga o'ting
Sudo -i
Endi siz ushbu buyruqlarni bajarish uchun zarur bo'lgan huquqlarga egasiz:
SSID -ni Wi -Fi nomiga va parolni parolga o'zgartirganingizga ishonch hosil qiling
Wpa_passphrase "SSID" "PASSWORD" >> /etc/wpa_supplicant/wpa_supplicant.conf
Ushbu buyruqni bajarish orqali WPA mijozini kiriting:
wpa_cli
Interfeysni tanlang
Interfaol wlan0
Konfiguratsiyani qayta yuklang
Qayta sozlash
Oxir -oqibat, u ishlaganligini tekshirib ko'ring. Buni kiritish orqali qilishingiz mumkin:
Ip a
Bu erda siz WLAN0 interfeyslari ostida ip borligini tekshirishingiz mumkin, agar sudo qayta yuklanmasa (hech qachon bajarilmaydi (:).
Agar siz buni buyruq satri orqali bajarishni xohlamasangiz, uni har doim Raspbian GUI orqali qilishingiz mumkin, bu foydalanuvchilar uchun qulayroq.
- VNC-tomoshabinni bu erga o'rnating:
- Faylni, yangi ulanishni bosing va IP-manzil satriga kiring: 169.254.10.1 va kerakli nomni tanlang
- Foydalanuvchi nomini kiriting: malina va pi
- Wi -Fi belgisini bosing va shu tarzda ulaning
Paketlar
Endi Internetga ulanganimizdan so'ng, biz barcha kodni ishga tushirishimiz kerak bo'lgan paketlarni o'rnatishimiz mumkin.
Birinchidan, biz ishga tushirish orqali paketlar ro'yxatini yangilashimiz kerak bo'ladi.
sudo apt yangilash
sudo apt upgrade
Apache veb -server
Veb -ilovani ishga tushirish uchun bizga veb -server kerak bo'ladi. Bunga apache veb -serverini o'rnatish orqali erishish mumkin:
sudo apt install apach2 -y
Python paketlar
Hamma ishni bajarish uchun bizga bir nechta paket kerak bo'ladi. Bular bizga kerak bo'ladi.
- Shisha
- Flask-Cors
- Shishani kengaytirish
- Flask-MySQL
- Shisha-rozetka
- Python-soket
Siz ularni quyidagi buyruq yordamida o'rnatishingiz mumkin:
pip o'rnatish Flask Flask-Cors Flask-Extension Flask-MySQL Flask-SocketIO python-socketio
2 -qadam: ma'lumotlar bazasi
MariaDB
MariaDB -ni o'rnatish uchun quyidagi buyruqni bajaring - bu sensorlar o'qigan barcha ma'lumotlarni kuzatib borish uchun zarur bo'lgan ma'lumotlar bazasi tizimi.
sudo apt install mariadb-server
Endi biz o'rnatishni xavfsiz qilishimiz kerak
Mysql_secure_installation
Siz buyruqni bajarganingizdan so'ng, bizdan root parolini so'raydi, bizda hali yo'q, shuning uchun Enter tugmasini bosing.
Endi u sizdan xavfsizlik nuqtai nazaridan xohlaysizmi, deb so'raydi, shuning uchun biz klaviaturadagi Y tugmachasini bosing va kerakli parolni tanlang.
Endi u sizga yana bir nechta savol berishni davom ettiradi, hammasiga Y ga javob bering
Xo'sh, biz hozir etib kelganimizdan so'ng, SQL qobig'iga o'tishimiz kerak.
Buni amalga oshirish uchun, avvalo, biz bu buyruqni qayta kiritish orqali bizga imtiyozlar berish uchun yana ildiz otishimiz kerak:
sudo -i
Endi MySQL qobig'iga kiring
mysql
Endi biz foydalanuvchini yaratmoqchi bo'lamiz, siz xohlagan ismni @ oldidagi tirnoq orasiga va kerakli parolni belgilaganidan keyin qo'ying.
Endi biz ushbu buyruqni bajarish orqali ruxsatnomalar jadvalini tozalashimiz kerak:
YUQARISH IMKONIYATLARI;
Ushbu qadamlarni bajarganingizdan so'ng, yuqoridagi rasmdagi db sxemasini qayta tiklashingiz mumkin. Afsuski, men sizga ma'lumotlar bazasini tashlay olmayman, chunki men dasturiy ta'minotdagi ba'zi xatolarga duch kelyapman.
3 -qadam: simlarni ulash
Endi loyihaning simlarini ulash vaqti keldi. Fritzing deb nomlangan dasturda sxemani tuzib, jarayonni biroz osonlashtirish uchun. Fritzing simlarni real hayotda qayta tiklashni osonlashtiradi va siz nima qilayotganingiz haqida aniq tasavvurga ega bo'lasiz.
4 -qadam: uy -joy
Birinchi qadam, rasmda ko'rinib turganidek, yog'ochni kesishdir. Men buni lazer kesish orqali qildim, lekin oddiy arra ham xuddi shunday ishlaydi. Shundan so'ng siz asfalt rangini olish uchun yog'ochni qora rangga bo'yashni xohlaysiz. Bo'yoq quriganidan so'ng, siz oq chiziqlarni bo'yashingiz mumkin, shunda mashinalar joyini his qilishingiz mumkin. Devorga men ustunlarga o'xshash bo'lishi uchun bo'yalgan somon sepaman. Qilichbozlik uchun men qutblarga bir nechta goa qo'ydim. To'siq, men keyinroq bo'yalgan purkagichdan qilingan.
5 -qadam: kodlash
Orqa tomon: Loyihaning orqa qismi Python va TSQL -da yozilgan. U sensorlarning barcha ma'lumotlarini o'qiydi va biz biroz oldin yaratgan ma'lumotlar bazasiga yozib qo'yadi. Bundan tashqari, u veb -serverni ishga tushiradi, shuning uchun biz unga frontendni ulashimiz mumkin. Men pycharmda orqa qism uchun kerakli kodni yozdim, lekin siz xohlagan narsani ishlatishingiz mumkin.
Orqa fon kodini bu erda topishingiz mumkin:
Frontend: frontend HTML, CSS va Javascript -da yozilgan. Kodni yozish uchun Visual studio kodi va phpstorm kombinatsiyasidan foydalandim. Kod asosan butun veb -saytni yozadi va javascript fayllarida siz ma'lumotni orqa tomondan olish uchun kerakli kodni topishingiz mumkin.
Siz frontend kodini bu erda topishingiz mumkin:
Tavsiya:
Avtoturargoh yordami oson ta'mirlash / diagnostika: 4 qadam
Avtoturargoh yordami oson ta'mirlash / tashxis: OK, boshlaylik, menda 2010 yildagi Chevrolet ko'chki bor va uning orqa tamponida 4 ta to'xtash joyi sensori bor. Men bilganimdek, mashinada ham, mashinada ham foydalanish mumkin, ob -havo sizning oldingizda yoki Rea yoki ikkalasida ham. Shunday qilib, men sevimlilarimga bordim
SONOFF aqlli kalitlari yordamida aqlli rolikli pardalarni qanday yasash mumkin ?: 14 qadam
SONOFF aqlli kalitlari yordamida aqlli rolikli pardalarni qanday yasash mumkin?: SONOFF aqlli kalitlarida interlok rejimidan foydalaning, oddiy rolikli pardalarni aqlli ko'rinishga aylantirish uchun ko'pchiligingiz rozi bo'lasizmi, siz ertalab rolikli pardalarni tortib olasiz. va kechqurun uni pastga tushirmoqchimisiz? Qanday bo'lmasin, men
Avtoturargoh sensori: Kirish: 23 qadam
Avtoturargoh sensori: Kirish: IQ -qabul qilgich va LM324 yordamchisidan foydalangan holda, bu mashinalar to'xtash sensori davri, mashinangizni teskari to'xtash paytida har qanday shikastlanishdan himoya qilishi mumkin. Bu mashinaning har qanday narsadan masofasini ko'rsatadi va u devorga yoki narsaga yaqinlashganda signal beradi
Teskari muhandislik va avtoturargoh sensorlarini yangilash: 7 qadam
Teskari muhandislik va avtoturargoh sensorlarini takomillashtirish: Bu ko'rsatma sizga teskari muhandislik, ma'lumotlarni tahlil qilish va ushbu ma'lumotlar yordamida yangi mahsulot ishlab chiqarishni tushunishingizni ko'rsatadi
Ir sensori yordamida Arduino yordamida aqlli ko'cha chiroqlari: 4 qadam (rasmlar bilan)
Arduino yordamida Ir Sensor yordamida Smart Street Light: Iltimos, boshqa loyihalar uchun mening kanalimga OBUNA BO'LING. Bu loyiha Smart ko'cha yoritgichi haqida, avtomobil o'tayotganda ko'cha chiroqlari yonadi, bu erda biz 4 IQ sensorini ishlatamiz. avtomobil, har bir IQ sensori boshqaradi