Оглавление:

WeatherCar: 6 шагов
WeatherCar: 6 шагов

Видео: WeatherCar: 6 шагов

Видео: WeatherCar: 6 шагов
Видео: [Катастрофа] Кемпинг в маленькой машине под проливным дождем на аварийной плотине. 2024, Июль
Anonim
ПогодаАвтомобиль
ПогодаАвтомобиль

WeatherCar, небольшой самодельный проект, который может управлять автомобилем, а также собирать полезные данные!

Я сделал этот проект заключительным за мой первый год в Ховесте Кортрейка. У этого проекта еще нет хорошей отделки, но в этом документе описываются все внутренности этого автомобиля, но без полного кадра.

Шаг 1. Требования

Для этого проекта вам понадобятся все эти компоненты:

  • Raspberry Pi
  • 2 двигателя (12 В)
  • Сервопривод
  • DHT11
  • BMP280
  • GY-NEO6MV2 GPS-модуль
  • 4 х NPN транзистора
  • 2 резистора (1 кОм и 2 кОм)
  • Драйвер мотора
  • 2 аккумулятора по 6 В
  • Макетная доска
  • Понижающий регулятор напряжения
  • Изолированный медный провод
  • Плоский кабель
  • Старый кабель Micro-USB
  • Фанера

Шаг 2: пайка / электромонтаж

Пайка / Электромонтаж
Пайка / Электромонтаж
Пайка / Электромонтаж
Пайка / Электромонтаж
Пайка / Электромонтаж
Пайка / Электромонтаж

На первом этапе мы сразу подключим все провода. (PS. Можно использовать макет для тестирования перед тем, как все паять)

Я предоставил схему, которая показывает вам, как я все подключал, хотя я не мог найти нужную деталь для своего мотора. Для своего мотора я использовал 4 транзистора NPN, чтобы преобразовать свой сигнал 3,3 В в сигнал 12 В для управления драйвером мотора. Это потому, что тот, который я использовал, поддерживает только 1 напряжение (12 В, потому что мои двигатели 12 В).

Шаг 3: Настройка Raspberry Pi

Если у вас еще нет настройки, вам нужно сделать это сначала, в противном случае вы можете пропустить этот шаг, если у вас есть необходимые программы из последнего фрагмента кода на этом шаге.

Сначала вам нужно скачать настольную версию Raspbian, которую можно найти здесь:

После того, как вы загрузили это, вам нужно будет использовать Etcher или WinDiskImager, чтобы поместить файл изображения на SD-карту с вашего raspberry Pi. (Это может занять некоторое время).

Когда программа будет завершена, откройте проводник и откройте диск под названием «boot». Здесь вы найдете текстовый файл «cmdline.txt». Откройте это и добавьте ip = 169.254.10.1 в конец файла. Будьте осторожны, не добавляйте никаких записей в файл, так как это может привести к проблемам.

Теперь, когда у PI есть IP-адрес по умолчанию, нам все еще нужно включить SSH, чтобы иметь возможность подключаться к нему. Вы можете сделать это, создав новый файл с именем «SSH» без какого-либо расширения, это скажет Raspberry Pi включить ssh при первой загрузке.

Теперь мы можем подключиться к Raspberry Pi с помощью кабеля Ethernet. Подключите кабель между вашим компьютером и raspberry PI. Теперь нам понадобится SSH-клиент. Для этого я использовал шпатлевку (https://www.putty.org/). Откройте putty и введите 169.254.10.1 в качестве имени хоста. Прежде чем вы сможете подключиться, может пройти некоторое время.

Как только вы подключитесь, войдите в систему с этими учетными данными:

Логин: piПароль: raspberry

Теперь мы можем настроить подключение к Интернету, чтобы сделать это. Выполните эту команду и замените SSID и сетевой пароль на имя и пароль вашего Wi-Fi.

эхо "пароль" | wpa_passphrase "SSID" >> /etc/wpa_supplicant/wpa_supplicant/wpa_supplicant.conf

wpa_cli -i wlan0 перенастроить

Теперь, когда у нас есть подключение к Интернету, мы можем установить python и другие необходимые программы, используя следующие команды

sudo apt update

sudo apt install -y python3-venv python3-pip python3-mysqldb mariadb-server uwsgi nginx uwsgi-plugin-python3

python3 -m pip install --upgrade pip setuptools wheel virtualenv

mkdir weathercar && cd weathercar

python3 -m venv --system-site-packages env

исходный env / bin / активировать

python -m pip install mysql-connector-python argon2-cffi Flask Flask-HTTPAuth Flask-MySQL mysql-connector-python passlib flask-socketio

Шаг 4: Настройка базы данных

Теперь, когда у вас есть все необходимые программы для raspberry pi, нам все еще нужно настроить базу данных. Что мы можем сделать, запустив сначала Mysql

судо мариадб

а потом

СОЗДАТЬ ПОЛЬЗОВАТЕЛЯ 'project1-admin' @ 'localhost' ИДЕНТИФИЦИРОВАНО 'adminpassword'; СОЗДАТЬ ПОЛЬЗОВАТЕЛЯ 'project1-web' @ 'localhost' ИДЕНТИФИЦИРОВАНО 'webpassword'; СОЗДАТЬ ПОЛЬЗОВАТЕЛЯ 'project1-sensor' @ 'localhost' ИДЕНТИФИЦИРОВАНО '' sensorpassword »;

СОЗДАТЬ БАЗУ ДАННЫХ weathercar_db;

ПРЕДОСТАВЛЯЙТЕ ВСЕ ПРИВИЛЕГИИ НА weathercar. * 'Project1-admin' @ 'localhost' С ОПЦИЕЙ GRANT; GRANT SELECT, INSERT, UPDATE, DELETE ON project1. * TO 'project1-web' @ 'localhost'; GRANT SELECT, INSERT, UPDATE, УДАЛИТЬ НА project1. * TO 'project1-sensor' @ 'localhost'; FLUSH PRIVILEGES;

Шаг 5: Код

На этом этапе мы клонируем необходимый код на ваш raspberry pi. Мы сделаем это следующим образом:

Прежде всего убедитесь, что вы находитесь в своем домашнем каталоге, введя "cd"

CD

теперь мы клонируем репозиторий, используя

git clone

Теперь мы можем импортировать настройки базы данных, используя:

sudo mariadb weathercar_db </weathercar/sql/weathercar_db_historiek.sql sudo mariadb weathercar_db </weathercar/sql/weathercar_db_sensoren.sql

Теперь, когда мы закончили работу с базой данных, мы можем продолжить и настроить нашу службу.

sudo cp weathercar / conf / project1 - *. service / etc / systemd / system / sudo systemctl daemon-reloadsudo systemctl start project1- * sudo systemctl enable project1- *

Шаг 6: Подключитесь

Соединять!
Соединять!

Мы почти у цели, еще один шаг. И это получение IP-адреса, который нам дал Wi-Fi.

Мы сделаем это, поставив

IP-адрес

появится куча дерьма, но вы сможете найти "wlan0", а затем несколько строк дальше "inet 192.168.x.x"

поместите этот IP-адрес в свой браузер и вперед. Вы подключены к сайту.

Рекомендуемые: