Съдържание:

Интелигентен паркинг с помощта на Raspberry Pi: 5 стъпки
Интелигентен паркинг с помощта на Raspberry Pi: 5 стъпки

Видео: Интелигентен паркинг с помощта на Raspberry Pi: 5 стъпки

Видео: Интелигентен паркинг с помощта на Raspberry Pi: 5 стъпки
Видео: Raspberry PI 4B, installing Supervised Home Assistant on RaspiOS 64 - checking instructions 2024, Ноември
Anonim
Интелигентен паркинг с помощта на Raspberry Pi
Интелигентен паркинг с помощта на Raspberry Pi

В тези инструкции ще създадем напълно автоматична система за паркиране, свързана с уеб интерфейс. Ще можете да видите кое място е заето, да решите кой влиза и кой излиза и е оборудвано с автоматична система за осветление.

Консумативи

Хардуер

  • 2x ултразвукови сензори
  • 1x серво мотор
  • 4x бели светодиоди
  • 1x резистор, зависим от светлина
  • 1x 2*16 LCD дисплей

Изчисления

  • 1x Raspberry Pi 3 B+
  • 1x SD карта (8-16GB изборът е ваш)
  • 1x Адапрут I2S 3W Клас D усилвател - MAX98357A
  • 1x MCP3008
  • 1x резистор 2.2K Ohm
  • 9x резистори 1K Ohm

Различни

  • Кабелни проводници
  • Платка
  • UTP кабел
  • Адаптер за вашето малиново пи
  • Лист от мултиплекс (можете да използвате всякакъв вид материал, който искате за корпуса)
  • Пистолет за лепило

Софтуер

  • ПУТИ
  • Софтуер за редактиране на код (можете да използвате каквото искате, стига да поддържа: Python, HTML, CSS и java скрипт
  • Win32 Disk Imager
  • Образ на Raspbian OS
  • VNC Viewer (по избор)

Стъпка 1: Настройка на RPI

Преди да започнем с окабеляването на хардуера, напишете

софтуер и направете корпуса, ще трябва да настроим вашия PI с необходимия софтуер, който ще ви е необходим, за да стартирате проекта.

Ще ви е необходимо изображение на Raspbian, което да поставите на вашата SD карта и да го запишете на SD картата Win32 Disk Imager. По -долу можете да намерите връзки към двете.

- Win32 Disk Imager:

- Изображение на Raspbian:

Инсталацията

  1. Отворете Win32 Disk Imager

    1. Изберете изображението, което току -що сте изтеглили чрез иконата на папката
    2. Изберете вашата SD карта чрез падащото меню
    3. Щракнете върху напиши
    4. Когато процесът приключи, компютърът ви вероятно ще ви попита дали искате да форматирате SD картата, не правете това

Когато приключите с тези стъпки, ще трябва да направите някои допълнителни неща, за да имате достъп до софтуера на вашия PI.

  1. Отворете SD картата във вашия Explorer
  2. Отворете файла „cmdline.txt“
  3. Ще видите дълъг ред текст в края добавете: ip = 169.254.10.1
  4. Запазете файла
  5. Създайте файл с име ssh без разширение (ако не знаете как да направите това, просто щракнете върху нов файл, изберете нов текстов файл, изтрийте разширението и го кръстете ssh)
  6. Последната стъпка от тази част е безопасното изваждане на SD картата и поставянето й в Raspberry PI

Свързване

Когато приключите с предишните стъпки, е време да се свържете с вашия pi за първи път. Първо ще трябва да включите вашия UTP кабел, единият край на компютъра, а другият във вашия pi (важно е да включите LAN кабела, преди да го включите).

  1. Инсталирайте Putty:
  2. След като го инсталирате, отворете го и въведете 169.254.10.1 в полето IP
  3. Изберете SSH и попълнете порт 22
  4. Щракнете върху отвори
  5. Попълнете потребителското име: pi и паролата малиново, това е стандартният вход за чисто ново изображение

Raspi-config

Преди да продължим, ще трябва да промените доста настройки в менюто raspi-config, отворете го, като използвате:

sudo raspi-config

1. Активирайте I2C и SPI под опциите в категорията интерфейси

2. Изберете вашия WIFI coutry чрез категорията за локализация

3. Задайте настройката Desktop/CLI в категорията опции за зареждане на Desktop Autologin.

4. Под Разширени опции изберете A1 Разгъване на файлова система (това гарантира, че използвате пространството на цялата SD карта

5. Сега излезте и рестартирайте sudo

Wifi

Сега е време да настроите вашата wifi връзка извън курса, ще ви трябват идентификационните данни на вашия wifi.

Първо влезте в root режим, като изпълните тази команда

Sudo -i

Сега имате необходимите права за изпълнение на тези команди:

Не забравяйте да промените SSID на вашето wifi име и PASSWORD на вашата wifi парола

Wpa_passphrase “SSID” “PASSWORD” >> /etc/wpa_supplicant/wpa_supplicant.conf

Въведете WPA клиент, като изпълните тази команда:

wpa_cli

Изберете интерфейса

Интерфейс wlan0

Презаредете конфигурацията

Преконфигурирайте

Не на последно място проверете дали работи. Можете да направите това, като въведете:

Ip a

Тук можете да проверите дали имате ip под WLAN0 интерфейси, ако не sudo reboot (никога не се проваля (:).

Ако не ви е удобно да го правите чрез командния ред, винаги можете да го направите чрез графичния интерфейс на Raspbian, който е малко по -лесен за употреба.

  1. Инсталирайте VNC-viewer тук:
  2. Щракнете върху файл, нова връзка и въведете в лентата на IP адреса: 169.254.10.1 и изберете името, което искате
  3. Попълнете потребителското име: pi и паролата малинов
  4. Щракнете върху иконата на wifi и се свържете по този начин

Пакети

Сега, когато сме свързани с интернет, можем да инсталираме пакетите, от които се нуждаем, за да изпълним целия код.

Първо ще трябва да опресним списъка с пакети до най -новия, като стартираме:

sudo apt актуализация

sudo apt ъпгрейд

Apache уеб сървър

Ще се нуждаем от уеб сървър, за да стартираме нашето уеб приложение. Можем да постигнем това, като инсталираме apache уеб сървър, като изпълним тази команда:

sudo apt инсталирате apach2 -y

Пакети на Python

За да работи всичко, ще ни трябват доста пакети. Това са тези, от които ще се нуждаем.

  • Колба
  • Flask-Cors
  • Flask-Extension
  • Flask-MySQL
  • Flask-SocketIO
  • Python-socketio

Можете да ги инсталирате, като изпълните тази команда:

pip install Flask Flask-Cors Flask-Extension Flask-MySQL Flask-SocketIO python-socketio

Стъпка 2: База данни

База данни
База данни

MariaDB

Изпълнете следната команда, за да инсталирате MariaDB, това е системата от бази данни, необходима за проследяване на всички данни, които сензорите четат.

sudo apt инсталирате mariadb-сървър

Сега ще трябва да осигурим нашата инсталация

Mysql_secure_installation

След като изпълните командата, тя ще ни поиска парола за root, все още нямаме такава, така че просто натиснете enter.

Сега той ще ви попита дали искате такъв от съображения за сигурност, ние искаме такъв, така че натиснете Y на клавиатурата си и изберете каквато парола искате.

Сега той ще продължи да ви задава още няколко въпроса, просто отговорете с Y на всички тях

Добре, след като стигнахме до този момент, трябва да влезем в SQL обвивката.

За да направим това, първо трябва да станем root, за да ни предоставим привилегиите да го направим, като въведем отново тази команда:

sudo -i

Сега въведете черупката на mysql

mysql

Сега ще създадем потребител, който ще постави желаното име между кавичките преди @ и паролата, която искате след идентифициране от

Сега трябва да изчистим таблицата с разрешения, като изпълним тази команда:

ФЛУШ ПРИВИЛЕГИ;

След като изпълните тези стъпки, можете да пресъздадете db схемата от горната снимка. За съжаление не мога да ви дам дамп на базата данни, защото изпитвам някои софтуерни грешки.

Стъпка 3: Окабеляване

Електрически инсталации
Електрически инсталации
Електрически инсталации
Електрически инсталации
Електрически инсталации
Електрически инсталации

Сега е време да направим окабеляването на проекта. За да направите процеса малко по -лесен, първо направете схема в програма, наречена fritzing. Fritzing улеснява пресъздаването на кабелите ви в реалния живот и получавате ясна представа за това, което правите.

Стъпка 4: Жилища

Жилища
Жилища
Жилища
Жилища
Жилища
Жилища

Първата стъпка е да изрежете дървото във формите, както се вижда на чертежа. Направих го чрез лазерно рязане, но нормален трион ще работи също толкова добре. След това ще искате да боядисате дървото в черно, за да получите цвета на асфалта. След като боята изсъхне, можете да нарисувате белите ивици, за да усетите този паркинг. За оградата пръскам боядисани сламки, за да изглеждам като стълбове. За самата ограда прикрепих няколко гоа към стълбовете. Бариерата е направена от paer maché, която по -късно боядисвам със спрей.

Стъпка 5: Кодиране

Кодиране
Кодиране
Кодиране
Кодиране
Кодиране
Кодиране

Бекенд: Бекендът на проекта е написан на Python и TSQL. Той отчита всички данни на сензорите и ги записва в базата данни, която създадохме малко по -рано. Той също така работи с уеб сървър, за да можем да свържем нашия интерфейс с него. Написах кода, необходим за бекенда в pycharm, но извън курса можете просто да използвате каквото искате.

Можете да намерите кода за бекенда тук:

Frontend: Frontend е написан на HTML, CSS и Javascript. Използвах комбинация от визуален студиен код и phpstorm, за да напиша кода. Кодът основно записва целия уебсайт и във файловете javascript можете да намерите кода, необходим за получаване на данните от бекенда.

Можете да намерите кода за интерфейса тук:

Препоръчано: