Агуулгын хүснэгт:
- Хангамж
- Алхам 1: Rasbian -ийг тохируулна уу
- Алхам 2: Кодыг барьж, тохируулах
- Алхам 3: Arduino харилцаа холбоо
- Алхам 4: Утсыг асаах
- Алхам 5: Кодыг ажиллуулах
- Алхам 6: (Нэмэлт) орон сууц
Видео: Бодит цагийн гүйдлийн хэмжилт бүхий автомат залгуур: 6 алхам
2024 Зохиолч: John Day | [email protected]. Хамгийн сүүлд өөрчлөгдсөн: 2024-01-30 11:01
Автоматжуулалт, ямар нэгэн зүйл тохиолдохыг хянах чадвар надад үнэхээр таалагддаг. Энэ бол намайг өөрийн гараар хийсэн автомат залгуур гэсэн санааг гаргахад хүргэсэн зүйл юм. Үүнийг гэрэл асаах, утас цэнэглэх, дэлгэц асаах шаардлагатай үед төлөвлөхөд ашиглаж болно. Энэ бүхнээс гадна гарцаар хичнээн их гүйдэл урсаж байгааг харах чадвартай болно.
Энэхүү төсөлд шаардлагатай бүрэлдэхүүн хэсгүүд нь:
Хангамж
Бид эхлэхээс өмнө эдгээр нь над шиг Switch-IT хайрцгийг бүтээхэд зайлшгүй шаардлагатай зүйлүүд юм. Эдгээр хангамж нь таны бүс нутаг, одоогийн үнээс хамааран 50-100 еврогийн үнэтэй байх болно.
Техник хангамж
Электроник
- Бөөрөлзгөнө pi 4
- 16gb (ба түүнээс дээш) Micro SD карт
- Ардуино Уно
- 5V-3.3V Түвшин шилжүүлэгч
- 5V реле модуль
- ACS712 20A - одоогийн модуль
- 1838 IR-хүлээн авагч 37.9 кГц модуль
- IR алсын удирдлага (би Elegoo ашигладаг)
- нийтлэг катодын RGB
- 3 * 330Ω эсэргүүцэл
- дарах товчлуур
- RFID-RC522
- LCD 1602A-1
- Niko хананы залгуур
- 10К Ω хэмжээтэй
- 230 -аас 5V - 7А цахилгаан хангамж
Кабель
- USB-B-USB-A кабель
- USB-C цахилгаан кабель
- Ethernet кабель
Янз бүрийн
- Эрэгтэй, эмэгтэй холбогч утас
- Эрэгтэй, эрэгтэй холбогч утас
- Гагнуурын цагаан тугалга
- Хумих хоолой
Кейсийн тодорхой хэсгүүд (Нэмэлт)
- 50 * самар, тод
- 40x40x5 см хэмжээтэй металл хайрцаг
- хоёр талт соронзон хальс
- 6 * 1 см өндөр зайтай
- удирдагч
- Velcro соронзон хальс
- кабелийн хөтөч
Програм хангамж
- balenaEtcher:
- PuTTy
- расбиан
- Visual Studio код
- Arduino IDE
Алхам 1: Rasbian -ийг тохируулна уу
Юуны өмнө бид Rasbian-ийг SD карт руу оруулах болно. Бид үүнийг balenaEtcher ашиглан хийх болно.
- Нээлттэй balenaEtcher
- Rasbian дүрсийг сонгоно уу
- SD картаа сонгоно уу
- Flash товчлуурыг дарах хүртэл хэдэн минут хүлээнэ үү
Ачаалах лавлахад APIPA нэмэх: Бид APPA хаягийг ашиглан RPI дээрх тохиргоог програмчилж, тохируулах болно. Үүнийг хийхийн тулд:
- SD карт дээрх ачаалах лавлах санд орно
- "Cmdline.txt" -ийг нээнэ үү.
- Баримт бичгийн төгсгөлд "169.254.10.1" гэж нэмээд хадгална уу
- Ачаалах лавлах санд "ssh" нэртэй файл нэмнэ үү (ЭНЭ ФАЙЛД ӨРГӨТГӨЛИЙГ ӨГӨХГҮЙ)
- Үүнийг хийсний дараа та SD картыг компьютерээс гаргаж авах боломжтой.
PuTTy ашиглан RPI -д ордог
Одоо бид SD картаа RPI -д холбож, RPI -ийг компьютертээ ethernet кабель ашиглан холбож болно.
RPI-тэй холбогдохын тулд бид PuTTy-ийг APIPA хаягаар ашиглах болно.
- PuTTy -ийг нээнэ үү
- Манай APIPA хаягийг хост нэрээр бөглөнө үү (169.254.10.1)
- Порт 22, SSH сонгогдсон эсэхийг шалгаарай
- Одоо та холболтыг нээж болно
- Анхдагч хэрэглэгчийн нэр нь: pi
- Анхдагч нууц үгээр: бөөрөлзгөнө
raspi-тохиргооны тохиргоо
Raspi-config-ийг нээнэ үү:
sudo raspi-config
- Хэрэглэгчийн нууц үгийг өөрчлөх
- Орон нутгийн тохиргоонд цагийн бүсээ сонгоно уу
- Сүлжээний сонголтыг ашиглан Wi-Fi-г тохируулж, дараа нь SSID болон нууц үгээ бөглөх ёстой Wi-Fi сонголтыг ашиглана уу.
Python 3 -ийг суулгана уу
Энэ төсөлд бид Python ашиглаж байгаа тул бид дараах тушаалуудыг ашиглан Python2 -ийн Python3 инстагратыг анхдагчаар тохируулах болно.
update-alternatives-install/usr/bin/python python /usr/bin/python2.7 1
update-alternatives-install/usr/bin/python python/usr/bin/python3 2
Python багцууд
Бүх зүйлийг зөв ажиллуулахын тулд бидэнд хэд хэдэн багц хэрэгтэй болно, голчлон Flask багцууд, мөн манай DataBase -тай холбогдохын тулд. Бид эдгээр багцуудыг дараах тушаалуудыг ашиглан суулгаж болно.
pip колбыг суулгана уу
pip install Flask_cors pip install Flask_socketio pip суулгах Python-mysql-connecton
Мэдээллийн сан
Дараа нь бид мэдээллийн баазын менежментийн системээ (MariaDB) суулгах гэж байгаа бөгөөд үүнийг дараах байдлаар хийх болно.
sudo apt install mariadb-server
Үргэлжлүүлэхийн тулд "Y" гэж бичээд Enter дарна уу. Хэдэн секундын дараа суулгах процесс дуусч, MariaDB ашиглахад бараг бэлэн боллоо.
Өгөгдлийн санд нууц үгээ тохируулахын тулд дараах тушаалыг ашиглана уу:
sudo mysql_secure_installation
Дараа нь одоогийн нууц үг хоосон байгаа тул Enter дарна уу. Дараа нь нууц үгээ тохируулахын тулд "Y" товчийг дарна уу, та хүссэн нууц үгээ бөглөх боломжтой бөгөөд үүнийг санах хэрэгтэй, учир нь энэ нь арын болон урд талын хооронд зөв холболт хийх шаардлагатай байна.
"Y" товчийг 3 удаа дарна уу: нэргүй хэрэглэгчдийг устгах, root нэвтрэлтийг алсаас зөвшөөрөхгүй байх, туршилтын мэдээллийн санг устгах. Эцэст нь давуу эрхээ дахин ачаалахын тулд "Y" товчийг дарна уу.
Одоо MariaDB болон шаардлагатай бүх багцыг амжилттай суулгасан болно.
Алхам 2: Кодыг барьж, тохируулах
Одоо бүх багцыг суулгасны дараа бид кодыг авах боломжтой.
Кодыг Github дээр ашиглах боломжтой тул та үүнийг ашиглан клон хийх боломжтой.
git clone
Энэ бол урд талын хэсэг юм
git clone
Энэ бол арын хэсэг юм
Өгөгдлийн санг өөрөө суулгаж байна
Өгөгдлийн санг суулгахын тулд дараах тушаалуудыг ашиглан арын хавтсанд байгаа.sql файл руу очно уу.
mysql
өгөгдлийн сангийн шилжүүлэг үүсгэх mysql -u root -p switchit <Your_Path_to_Backend_Repo/switchit.sql
Apache -ийг суулгаж байна
Бидэнд бүх код, өгөгдлийн сангийн тохиргоо байгаа тул бид Apache-ийг суулгаж, арын дэвсгэрээ ажиллуулж болно. Бид үүнийг ашиглан үүнийг хийх болно:
apt -get apache2 -y суулгана уу
Дараа нь/var/ww/html дээрх файлуудыг урд талын фолдероос хавтсанд байгаа файлуудаар солино.
Хэрэв бүх зүйл сайн болсон бол та хөтөч дээрээ APIPA хаягийг ашиглан вэбсайт руугаа холбогдох боломжтой байх ёстой: 169.254.10.1.
Алхам 3: Arduino харилцаа холбоо
Одоогийн мэдрэгч болон RFID мэдрэгчээ уншихын тулд бид arduino ашиглаж байгаа бол доорх arduino кодыг ашиглана уу. USB-A-аас USB-B кабель болон arduino IDE програмыг ашиглан байршуулна уу. Байршуулах үед arduino хэсэг дууссан.
Одоо бид PI дээрээс цуваа төхөөрөмжийн нэрийг олох ёстой. Үүнийг хийхийн тулд /boot/config.txt дотор "enable_uart = 1" зөв тохируулагдсан эсэхийг шалгаарай. Мөн "console = serial0, 115200" нь cmdline.txt -ээс хасагдсан эсэхийг шалгаарай.
Дараа нь портуудыг ашиглан шалгана уу
ls -l /dev
Дараа нь сериал нэрсийн нэг нь Arduino байх ёстой. Энэ нэрийг app.py дахь arduinocom функц дээр бөглөнө үү
сер = цуваа. Цуваа ('/dev/ttyS0', 9600)
Зөвхөн цуваа холбоо ажиллахгүй бол үүнийг хийх хэрэгтэй.
Алхам 4: Утсыг асаах
Бүх зүйлийг холбох нь маш энгийн боловч та дараахь зүйлийг санаж байх хэрэгтэй.
- Хананы залгуурт болгоомжтой байгаарай, 230 вольт нь үхэлд хүргэж болзошгүй юм.
- RPI болон Arduino хоорондох харилцааны хувьд түвшний хөрвүүлэгчийг ашиглахаа мартуузай.
- RGB -ийг гагнахаасаа өмнө Улаан, Ногоон тээглүүр ашиглаж байгаа эсэхээ шалгаарай. Үүнийг урьдчилан туршиж үзээрэй!
- Хэлхээг асаахаас өмнө юу ч богино холболтгүй эсэхийг шалгаарай.
Алхам 5: Кодыг ажиллуулах
Одоо бүх зүйл зөв холбогдсон байгаа тул бид програмаа ажиллуулж болно.
Үүнийг эхлүүлэх үед автоматаар ажиллуулахын тулд дараах файлыг ашиглана уу.
sudo nano myscript.service
Дараа нь оо (өөрийн app.py лавлахыг ашиглахаа мартуузай:
[Unit] Description = After Switchit = network.target [Service] ExecStart =/usr/bin/python3 -u app.py WorkingDirectory = // app.py директор руу шилжих // StandardOutput = удамшуулах StandardError = өвлөх Restart = үргэлж User = pi [Суулгах] WantedBy = multi-user.target
Дараа нь "ctrl + X" товчлуурыг дарж/etc/systemd/system рүү хуулна уу.
Дараа нь үүнийг автоматаар ажиллуулахын тулд дараах тушаалыг өгнө:
sudo systemctl нь myscript.service -ийг идэвхжүүлнэ
Та энэ талаар дэлгэрэнгүй мэдээллийг RaspBerry Pi сайтаас авах боломжтой.
Дахин ачаалж, хийлээ
Одоо PI -ийг дахин ачаална уу:
sudo дахин ачаална -h одоо
Та Switch-it-ийг ингэж хийдэг!
Дагаж байгаад баярлалаа, энэ нь тусалсан гэж найдаж байна. Хэрэв танд ямар нэгэн зөвлөгөө, санал хүсэлт байвал сэтгэгдэл бичихээс бүү эргэлзээрэй.
Алхам 6: (Нэмэлт) орон сууц
Та орон сууцыг өөрийн үзэмжээр барьж болно. Би 40x40x5 см хэмжээтэй тагтай тагийг ашигласан. Би металлыг ашигласан тул цооног өрөмдөж, тусгаарлагч ашиглан бүх зүйлийг газрын хавтан дээрээс авах шаардлагатай болсон. Би 5V, 3.3V ба gnd байдаг төв цэгийг ашиглахаар шийдсэн. Цахилгаан холболт бүрийг агшилтын хоолойгоор гагнаж байна. Кабелийн менежмент хийхийн тулд би зөөгч оосортой дэвсгэр ашигласан.
Зөвлөмж болгож буй:
Бодит цагийн цагийн модулийг (DS3231) хэрхэн ашиглах вэ: 5 алхам
Бодит цагийн цагны модулийг (DS3231) хэрхэн ашиглах вэ: DS3231 бол өртөг багатай, туйлын нарийвчлалтай I2C бодит цаг (RTC) бөгөөд температурыг нөхсөн болор осциллятор (TCXO), болортой. Төхөөрөмж нь батерейны оролттой бөгөөд үндсэн хүчдэлийн үед цагийг зөв хэмждэг
Бөөрөлзгөнө Pi ба OpenCV ашиглан бодит цагийн Рубик шоо нүдийг нь тагласан уусгагч: 4 алхам
Бөөрөлзгөнө Pi болон OpenCV ашиглан бодит цагийн Rubik's Cube нүдний боолттой уусгагч: Энэ бол нүдний харцаар шийдэхэд зориулагдсан Рубикийн шоо хэрэгслийн 2 дахь хувилбар юм. Эхний хувилбарыг javascript боловсруулсан бөгөөд та RubiksCubeBlindfolded1 төслийг харах боломжтой.Өмнөх хувилбараас ялгаатай нь энэ хувилбар нь өнгийг илрүүлэхийн тулд OpenCV номын санг ашигладаг
Бодит цагийн худгийн усны түвшин хэмжигч: 6 алхам (зурагтай)
Бодит цагийн худгийн усны түвшин хэмжигч: Эдгээр заавар нь ухсан худагт ашиглахын тулд хямд үнэтэй, бодит цагийн усны түвшний тоолуурыг хэрхэн бүтээх талаар тайлбарласан болно. Усны түвшин хэмжигч нь ухсан худгийн дотор өлгөх, усны түвшинг өдөрт нэг удаа хэмжих, WiFi эсвэл үүрэн холболтоор дамжуулан өгөгдлийг илгээх зориулалттай
LightMeUp! Бодит цагийн хөндлөн платформ бүхий LED зурвасын хяналт: 5 алхам (зурагтай)
LightMeUp! Бодит цагийн хөндлөн платформ бүхий LED зурвасын хяналт: LightMeUp! нь миний зохион бүтээсэн систем бөгөөд RGB LED-Strip-ийг бодит цаг хугацаанд хянаж, өртөг багатай, гүйцэтгэлийг өндөр байлгадаг. Сервер нь Node.js дээр бичигдсэн бөгөөд үүнийг платформ хэлбэрээр ашиглах боломжтой. Миний жишээн дээр би Raspberry Pi 3B-ийг удаан хугацаагаар ашиглахад ашигладаг
Raspberry Pi RF алсын удирдлагатай сүлжээний залгуур (цахилгаан залгуур): 6 алхам
Raspberry Pi RF-ийн алсын удирдлагатай сүлжээний залгуур (цахилгаан залгуур): Raspberry Pi ашиглан 433 МГц-ийн хямд залгууруудыг (хананы залгуур) удирдах. Pi нь сокетуудын алсын удирдлагаас гаргадаг хяналтын кодыг сурч, програмын хяналтан дор бүх байшингийн алсын эсвэл бүх залгуурыг идэвхжүүлэх боломжтой