Mundarija:
- Ta'minotlar
- 1 -qadam: prototip yaratish
- 2 -qadam: Raspberry Pi tayyorlash
- 3 -qadam: ma'lumotlar bazasi
- 4 -qadam: orqa qism
- 5 -qadam: Frontend
- 6 -qadam: asboblar panelini displeyda ko'rsatish
- 7 -qadam: Elektronni lehimlash
- 8 -qadam: Elektr ta'minoti
- 9 -qadam: uy -joy
Video: Raspberry Pi mototsikllar paneli: 9 qadam (rasmlar bilan)
2024 Muallif: John Day | [email protected]. Oxirgi o'zgartirilgan: 2024-01-30 13:24
Howest Kortrijkdagi multimediya va aloqa texnologiyasi talabasi sifatida men o'zimning IoT loyihamni yaratishga majbur bo'ldim. Bu birinchi yilda kuzatilgan barcha modullarni bitta katta loyihaga birlashtiradi. Men bo'sh vaqtimda mototsiklni ko'p haydaganim uchun, men MCT tu -da olgan bilimlarimdan foydalanib, mototsiklim uchun biror narsa yasashga qaror qildim: aqlli boshqaruv paneli.
MotoDash - fanatik mototsiklchilar uchun mo'ljallangan, Raspberry Pi bilan ishlaydigan boshqaruv paneli, bu chavandozga o'z ishini kuzatish imkoniyatini beradi.
Ushbu boshqaruv paneli qanday xususiyatlarga ega?
- Hozirgi burilish burchagini ko'rish
- Joriy tezlashtirishni ko'rish
- Yog 'haroratini kuzatish qobiliyati
- Qorong'ida yurganingizda avtomatik ravishda qorong'i mavzuga o'ting
- Safaringiz haqidagi ma'lumotlarni yozib oling va o'z statistikangizni ko'ring
Ta'minotlar
Asosiy hisoblash birligi:
Raspberry Pi - bu tizimning asosiy boshqaruvchisi
Elektronika:
- 12V-5V mototsikl uchun USB zaryadlovchi RPi uchun asosiy quvvat manbai
- 4 pinli biriktirilgan o'rni 12V RPi quvvat sxemasini yoqish/o'chirish uchun almashtiring
- O'tish simlari bo'lgan non paneli (ixtiyoriy) Sinov va prototip yaratish uchun
-
Breakout Pi plus - bu sizning barcha komponentlaringizni lehimlashi mumkin bo'lgan prototip taxtasi. U to'g'ridan -to'g'ri Raspberry Pi -ning yuqori qismiga o'rnatiladi, shuning uchun loyihaning o'lchamlari minimal bo'ladi.
Rezistorlar to'plami
0,2 mm simning turli xil ranglari
Sensorlar va modullar:
- Suv o'tkazmaydigan DS18B20 1-simli harorat sensoriYog 'harorati sensori
- 3 o'qli Gyro akselerometr MPU6050Tilt/aksel sensori
- Yorug'likka bog'liq qarshilik (LDR)
MCP3008-SPI interfeysi bilan 8 kanalli 10 bitli ADC
TFT SPI displeyi (yoki sizning ehtiyojlaringizga mos keladigan boshqa LCD displey)
RGB LED
Koson:
- Plastik quti
- Raspberry pi qutisi
Asboblar:
- Lehimlash temir va lehim
- 2,5 mm vintlardek va ajratgichlar
- Suv o'tkazmaydigan kabel ulagichlari
- Super yopishtiruvchi
- …
1 -qadam: prototip yaratish
Hamma narsani doimiy qilishdan oldin, biz loyihani non taxtasida yig'amiz. Agar siz xato qilmasligingizga amin bo'lsangiz, bu qadamni o'tkazib yuborish mumkin. Elektr/non paneli sxemasini quyidagi PDF -da topish mumkin. Tarmoqni aniq ta'riflanganidek birlashtiring. RPi -dagi 5V -pinni emas, balki faqat 3.3V -ni ishlating. Bundan tashqari, malina Pi ni yoqishdan oldin, elektronni ikki marta tekshiring. Qisqa kiyimlar yo'qligiga ishonch hosil qiling!
2 -qadam: Raspberry Pi tayyorlash
Birinchidan, biz Raspberry Pi -ni o'rnatmoqchimiz. Raspberry Pi - bu o'z operatsion tizimini ishga tushirishga qodir mini kompyuter. Ushbu loyiha uchun u sensordata ma'lumotlarini qayta ishlash, veb -saytni joylashtirish, orqa va ma'lumotlar bazasini ishga tushirish uchun javobgardir …
1. Maxsus Raspbian tasvirini o'rnating
Taqdim etilgan rasmda ushbu loyihani boshlash uchun zarur bo'lgan dasturiy paketlar mavjud:
- Veb -sayt frontend uchun apache
- Ma'lumotlar bazasi uchun MariaDB
- Ma'lumotlar bazasini boshqarish uchun PhpMyAdmin
- Muammolarni oldini olish uchun maxsus ruxsatnomalar
Maxsus rasmni bu erdan yuklab olish mumkin.
Rasmlarni o'rnatish bo'yicha qo'llanmani bu erda topishingiz mumkin:
Rasm o'rnatilgandan so'ng, Raspberry Pi -ni kompyuteringizga chekilgan kabel orqali ulang. Endi siz 169.254.10.1 IP -manziliga ulanish uchun SSH mijozidan foydalanishingiz mumkin
Passwd buyrug'i yordamida darhol yangi parol o'rnatish yaxshi amaliyotdir
2. Simsiz APni sozlash
Loyiha tugagach, biz Wi -Fi orqali RPi -ga ulanishni xohlaymiz, shuning uchun uni simsiz AP -ga aylantiramiz. Buning uchun qo'llanmani bu erda topishingiz mumkin.
Siz bu darslikni 7 -bosqichgacha bajarishingiz kerak. 8 -qadam talab qilinmaydi, chunki biz Internetga ulanishni talab qilmaymiz, lekin mustaqil tarmoq yaratamiz.
3. Interfeyslarni yoqish
Raspi-config-ga o'ting
sudo raspi-config
Interfeys variantlariga o'ting va 1-simli, SPI va I2C-ni yoqing va Pi-ni qayta ishga tushiring
3. Displey uchun drayverlarni sozlash
Displeyni ishga tushirish
/Etc /modules faylini tahrirlang
sudo nano /etc /modullari
Quyidagi 2 qatorni qo'shing
spi-bcm2835fbtft_device
Endi tahrir qiling /etc/modprobe.d/fbtft.conf
sudo nano /etc/modprobe.d/fbtft.conf
Quyidagi qatorni qo'shing
variantlar fbtft_device name = tm022hdh26 gpios = reset: 25, dc: 24, led: 18 aylantirish = 90 tezlik = 80000000 fps = 60
Pi -ni qayta ishga tushiring. Agar siz displeyning orqa nuri yonayotganini ko'rsangiz, hammasi yaxshi ketmoqda. Bu har safar Pi ochilganda displeyni ishga tushiradi, lekin hozir u faqat qora ekranni ko'rsatadi. Pi tarkibini displeyda ko'rish uchun biz asosiy ekran tarkibini kichik LCD displeyga nusxalashimiz kerak. Buning uchun biz "fbcp" xizmatidan foydalanamiz.
Fbcp xizmatini o'rnatish
sudo apt-get install cmake
git klon
CD rpi-fbcp
mkdir qurish
CD yaratish/
smake..
qilmoq
sudo fbcp/usr/local/bin/fbcp ni o'rnating
Endi biz xizmatni o'rnatdik. Biroq, biz Pi -ni boshsiz ishlatganimiz uchun, tarkibni nusxalash uchun ekran yo'q. Pi -ni ekran mazmunini chiqarishga majbur qilish uchun /boot/config.txt -ni tahrir qiling
sudo nano /boot/config.txt
Bu faylga quyidagi qatorlarni toping va izohlamang yoki qo'shing:
hdmi_force_hotplug = 1
hdmi_cvt = 640 480 60 0 0 0 0
display_rotate = 0
hdmi_group = 2
hdmi_mode = 87
RPi -ni qayta ishga tushiring va konsolda fbcp yozib fbcp xizmatini sinab ko'ring. Endi siz displey tarkibini LCD displeyda ko'rishingiz kerak.
Ishga tushganda fbcp ishga tushadi
/Etc/rc.local -ni tahrirlang va quyidagi manzilni IP -manzil va chiqish chizig'i orasiga qo'shing
fbcp &
Endi displey har safar RPi ochilganda yoqilishi kerak
3 -qadam: ma'lumotlar bazasi
Sensordata -ni saqlash va saqlash uchun men 4 ta jadvaldan iborat o'z ma'lumotlar bazasini yaratdim. EER diagrammasi yuqoridagi rasmda ko'rsatilgan.
1. Qurilmalar
Jadvalda har bir sensor mavjud. Sensor nomi, tavsifi va o'lchov birligi tasvirlangan. Bu jadvalda stol harakatlari bilan birma-bir bog'liqlik bor, mening holatimda akselero sensori har xil vazifalarni bajarishi mumkin.
2. Harakatlar
Bu jadvalda har xil sensorlar uchun amallar saqlanadi. Bir harakat har doim ma'lum bir sensor bilan bog'liq. Masalan: "TEMP" harakati haroratni o'lchaydigan qurilmaga bog'langan. Bu 1 simli harorat sensori bo'ladi.
3. Tarix
Bu jadvalda barcha sensorli jurnallar mavjud. Har bir jurnalda harakat identifikatori, qiymat, vaqt tamg'asi va minish belgisi mavjud
4. Mashinalar
Bu jadvalda turli xil sayohatlar saqlanadi. Har safar foydalanuvchi yangi sayohatni boshlaganida, bu jadvalga yangi yozuv kiritiladi
Ushbu ma'lumotlar bazasini Raspberry Pi -da olish uchun mening GitHub -ga o'ting va omborni klonlang/yuklab oling. Ma'lumotlar bazasi ostida siz 2.sql faylini topasiz. Ularni PhpMyAdmin yoki MySQL ish stolida ishga tushiring. Endi ma'lumotlar bazasi sizning RPi -da bo'lishi kerak.
4 -qadam: orqa qism
Agar siz hali qilmagan bo'lsangiz, mening GitHub -ga o'ting va omborni klonlang/yuklab oling. "Backend" papkasida siz loyihaning to'liq orqa qismini topasiz.
Jildda /yordamchilar ostidagi sensorlarni o'qish uchun sinflar, ma'lumotlar bazasi bilan /omborlar bilan bog'lanish uchun fayllar mavjud va asosiy dastur app.py nomi ostida joylashgan.
Python paketlarini o'rnatish
Biror narsani ishga solishdan oldin, avval python uchun ba'zi paketlarni o'rnatishimiz kerak. RPi terminaliga kiring va quyidagi buyruqlarni kiriting:
pip3 mysql-connector-python-ni o'rnating
pip3 flask-socketio-ni o'rnating
pip3 flakon-korslarni o'rnating
pip3 gevent -ni o'rnating
pip3 gevent-websocket-ni o'rnating
MUHIM DIQQAT: agar siz Mariadb/Mysql parolingizni o'zgartirgan bo'lsangiz, config.py -da parolni o'zgartiring!
Orqa fonni sinab ko'ring
Python3 tarjimoni (/usr/bin/python3) yordamida app.py -ni ishga tushiring. Hech qanday xato yo'qligiga ishonch hosil qiling.
Yuklash paytida orqa tomonni ishga tushirish
MotoDash_backend.service -ni tahrirlang va YOURFILEPATH -ni ombor saqlanadigan yo'lga o'zgartiring.
Endi bu faylni/etc/systemd/system/ga nusxalash.
sudo cp motoDash_backend.service /etc/systemd/system/motoDash_backend.service.
Endi orqa panel har safar RPi ishga tushganda avtomatik ravishda ishga tushadi.
5 -qadam: Frontend
GitHub Repo -ga kiring. Frontend katalogining tarkibini/var/www/html -ga nusxalash.
Bu frontendning ishlashi uchun qilishingiz kerak bo'lgan narsa. Bu papkada barcha veb -sahifalar, uslublar va veb -interfeys uchun skriptlar mavjud. Shuningdek, u orqa taraf bilan aloqa qiladi. Hamma narsa kerakli darajada ishlashini tekshirish uchun, RPi -ga ulanganligingizga ishonch hosil qiling va brauzerda IP -manzilini kiriting. Siz veb -interfeysning bosh sahifasini ko'rishingiz kerak.
Eslatma: Veb -sayt javob beradi, shuning uchun siz uni ish stolida bo'lgani kabi mobil qurilmalarda ham ishlatishingiz mumkin
6 -qadam: asboblar panelini displeyda ko'rsatish
Old panelda faqat kichik displey uchun ishlatiladigan o'zining yashirin veb -sahifasi mavjud. Biz Pi -ni yuklashni avtomatik ravishda ushbu veb -saytga to'liq ekran rejimida o'tkazamiz.
RPi yuklash parametrlari ostida raspi-config ish stoli autologiniga o'rnatilganligiga ishonch hosil qiling
sudo raspi-config
Endi yashirin konfiguratsiya papkasiga o'ting va u erda yangi fayl yarating
cd.config
sudo mkdir -p lxsession/LXDE -pi
sudo nano lxsession/LXDE-pi/autostart
Ushbu faylga quyidagi qatorlarni qo'shing va saqlang
@xscreensaver -yo'q
@xset o'chirilgan
@xset -dpms
@xset s noblank
@chromium-browser-noerrors --disable-session-crash-bubble --disable-infobars --kiosk --incognitoEndi Pi har safar ushbu veb -sahifaga yuklanishi kerak
7 -qadam: Elektronni lehimlash
Kengash taxtasini oling va uning tarkibiy qismlarini tizimli ravishda joylashtiring. Men uning tarkibiy qismlarini qanday lehimlaganimni muhokama qilmayman, chunki men juda yomon ish qildim. Men bortda alohida pin sarlavhalarini ishlatardim, shunda men sensorlar va modullarni o'ng pinga ulashim kerak edi. Qaysi pin nima uchun kerakligini bilganingizga ishonch hosil qiling!
Lehimlashda ba'zi maslahatlar:
- Katta masofalarni kesib o'tishda izolyatsiyalangan simlardan foydalaning. Siz xohlagan oxirgi narsa - bu sizning davrangizdagi shortilar
- Komponent yoki simni lehimlagandan so'ng, uning uzluksizligini multimetr bilan tekshiring. Shuningdek, qisqa tutashuvlarning mavjudligini muntazam tekshirib turing.
- Juda ko'p yoki juda kam lehim ishlatmang!
- Agar siz qanday qilib lehim qilishni bilmasangiz, avval uni boshqa prototip taxtasida mashq qiling. Lehimlash bo'yicha qo'llanmani bu erda topishingiz mumkin.
Endilikda simlarni payvandlagichlarga ulang va hamma narsa qisqa va toza emasligiga ishonch hosil qilish uchun o'rab qo'ying.
Tugatganingizdan so'ng, qisqa tutashuvlar yoki noto'g'ri ulanishlarni ikki marta tekshiring va to'g'ri ulanish bo'lsa, har bir ulanishni elektr sxemasi bilan tekshiring. Hamma narsa to'g'ri bajarilganiga amin bo'lganingizdan so'ng, oldinga siljiting va RPi panelini qo'ying, uni 2,5 mm vintlar bilan mahkamlang.
8 -qadam: Elektr ta'minoti
Raspberry Pi-ni quvvatlantirish uchun biz 12V-5V usb adapteridan foydalanamiz. Ushbu adapter mototsikl batareyasiga ulanadi. Kontaktni yoqish paytida RPi kuchga kirishiga ishonch hosil qilish uchun biz o'z o'rni bilan foydalanamiz. Röle, orqa chiroqdan kuchlanishni aniqlagandan so'ng, RPi quvvat davrini yopadi (kontaktni yoqishda orqa chiroq har doim yonadi).
Bu haqda batafsil ko'rsatma olish uchun ushbu sahifaga qarang: https://www.hondagrom.net/threads/2017-gromsf-msx125sf-wire-up-auxiliary-power-for-pcv-wb2-and-other-fuel -nazoratchilar.16921/
9 -qadam: uy -joy
Ko'rgazma uyi
Displey uchun o'zingizga displey o'lchamidagi qattiq plastik qutini oling. Ekranning kattaligidagi to'rtburchaklar teshikni kesib oling va ekranni burab qo'yish uchun mos keladigan teshiklarni kesib oling. Old tomondan siz RGB LED va LDR uchun yana 2 teshik ochishingiz kerak.
Men bu qutini murvat yordamida smartfon ushlagichining tepasiga o'rnatdim.
Harorat sensori
Harorat sensori joylashtirilishi uchun men mototsiklimga mos keladigan 3D o'lchagichni bosdim.
Raspberry Pi
Malinali Pi -ni mototsikl ichidagi xavfsiz joyga o'rnating, men uni velkro tasmalar yordamida qanotlardan birining ostiga qo'ydim. Va uni korpus va plastmassadan foydalanib, elementlardan himoya qildi.
Akselerometr
Akselerometrni xavfsiz joyga, yaxshisi mototsikl ramkasiga o'rnating.
Eslatma:
Menga o'xshagan uy -joy bo'lishi shart emas, xohlaganingizcha tugatishingiz mumkin. Faqat elektron komponentlar yomg'ir va changdan himoyalanganligiga ishonch hosil qiling.
Tavsiya:
Bolalar uchun Nasa boshqaruv paneli: 10 qadam (rasmlar bilan)
Bolalar uchun Nasa boshqaruv paneli: Men buni kunduzgi parvarishlash bilan shug'ullanadigan singlim uchun qurdim. U qariyb uch yil oldin men ishlab chiqargan qurbonni ko'rdi va menga juda yoqdi, shuning uchun men uni Rojdestvo sovg'asi uchun qurdim. Mening boshqa loyihamga havola qiling: https: //www.
Non paneli bilan Makey Makey davri: 11 qadam (rasmlar bilan)
Breadboard bilan Makey Makey sxemasi: Bu bir guruh talabalarga elektronikani tanishtirishning oddiy loyihasi. 1-7 -bosqichlar - Makey Makey bilan oddiy sxemani joriy etish. 8 -qadam - Zanjirni ketma -ketlikda uzatish. 9 -qadam - Zanjirga parallel ravishda uzatish. Keling, yig'ishni yig'ishdan boshlaylik
Kosmik kemani boshqarish paneli - Arduino o'yinchog'ini lazer bilan kesish: 11 qadam (rasmlar bilan)
Kosmik kemani boshqarish paneli - Laser Cut Arduino o'yinchog'i: Bir necha oy oldin men mahalliy ishlab chiqaruvchilar makonining a'zosi bo'lishga qaror qildim, chunki men ko'p yillar davomida ishlab chiqaruvchilar savdosi asboblarini o'rganishni xohlardim. Men ozgina Arduino tajribasiga ega bo'ldim va bu erda Instructables bo'yicha Fusion kursini olganman. Biroq, men
ESP8266-01 uchun kuchlanish regulyatori bilan ishlaydigan kengash paneli: 6 qadam (rasmlar bilan)
ESP8266-01 uchun kuchlanish regulyatori bilan tarqatish paneli. yaxshimisiz deb umid qilaman. Ushbu qo'llanmada men ESP8266-01 moduli uchun moslashtirilgan non paneli uchun moslashtirilgan adapterni qanday qilib kuchlanishni to'g'ri sozlash va ESP-ning flesh rejimini yoqadigan xususiyatlarini ko'rsatdim
PSP -ni kompyuter boshqaruv paneli sifatida ishlatish va keyin kompyuterni PSP bilan boshqarish: 5 qadam (rasmlar bilan)
PSP -ni kompyuterni joystik sifatida ishlatish va keyin PSP yordamida kompyuterni boshqarish: Siz PSP homebrew -dan foydalanib juda ko'p ajoyib ishlarni bajarishingiz mumkin va men sizga bu PSP -ni o'yin o'ynash uchun joystik sifatida ishlatishni o'rgataman. sichqoncha sifatida joystikdan foydalanish imkonini beruvchi dastur. Mana, ona