
Оглавление:
2025 Автор: John Day | [email protected]. Последнее изменение: 2025-01-23 15:05

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-адрес в свой браузер и вперед. Вы подключены к сайту.
Рекомендуемые:
Дизайн игры в Flick за 5 шагов: 5 шагов

Дизайн игры в Flick за 5 шагов: Flick - это действительно простой способ создания игры, особенно чего-то вроде головоломки, визуального романа или приключенческой игры
Счетчик шагов - Micro: Bit: 12 шагов (с изображениями)

Счетчик шагов - Микро: Бит: Этот проект будет счетчиком шагов. Мы будем использовать датчик акселерометра, встроенный в Micro: Bit, для измерения наших шагов. Каждый раз, когда Micro: Bit трясется, мы добавляем 2 к счетчику и отображаем его на экране
Играйте в Doom на своем IPod за 5 простых шагов !: 5 шагов

Играйте в Doom на своем IPod за 5 простых шагов!: Пошаговое руководство по двойной загрузке Rockbox на iPod, чтобы играть в Doom и десятки других игр. Это действительно легко сделать, но многие люди до сих пор удивляются, когда видят, как я играю дум на своем iPod, и путаются с инструкциями
Кормушка для рыбы Arduino Uno за 6 простых и простых шагов !: 6 шагов

Arduino Uno Fish Feeder за 6 простых и дешевых шагов !: Итак, для этого проекта может потребоваться немного предыстории. Людям с домашними рыбками, вероятно, приходилось сталкиваться с той же проблемой, что и мне: отпуск и забывчивость. Я постоянно забывала покормить рыбу и всегда старалась это сделать, пока она не упала
Акустическая левитация с Arduino Uno, шаг за шагом (8 шагов): 8 шагов

Акустическая левитация с Arduino Uno Пошаговая инструкция (8 шагов): ультразвуковые преобразователи звука L298N Женский адаптер питания постоянного тока с штыревым контактом постоянного тока Arduino UNOBreadboard Как это работает: сначала вы загружаете код в Arduino Uno (это микроконтроллер, оснащенный цифровым и аналоговые порты для преобразования кода (C ++)