Sadržaj:

WeatherCar: 6 koraka
WeatherCar: 6 koraka

Video: WeatherCar: 6 koraka

Video: WeatherCar: 6 koraka
Video: Korda Carp Fishing Masterclass Vol 6: Weedy Lakes | Danny Fairbrass 2019 2024, Juli
Anonim
WeatherCar
WeatherCar

WeatherCar, mali domaći projekt koji može voziti, a istovremeno prikuplja korisne podatke!

Napravio sam ovaj projekat kao završni za svoju prvu godinu u Howest -u u Kortrijku. Ovaj projekt još uvijek nije dobro završen, ali ovaj dokument govori o svim unutrašnjostima ovog automobila, bez stvaranja punog kadra.

Korak 1: Zahtjevi

Za ovaj projekt trebat će vam sve ove komponente:

  • Raspberry PI
  • 2 x motor (12v)
  • Servo
  • DHT11
  • BMP280
  • GY-NEO6MV2 GPS modul
  • 4 x NPN tranzistora
  • 2 x otpornika (1k i 2k)
  • Vozač motora
  • 2 x 6v baterije
  • Ploča za izradu prototipa
  • Regulator napona
  • Izolirana bakrena žica
  • Ravni kabel
  • Stari Micro-USB kabel
  • Šperploča

Korak 2: Lemljenje / ožičenje

Lemljenje / ožičenje
Lemljenje / ožičenje
Lemljenje / ožičenje
Lemljenje / ožičenje
Lemljenje / ožičenje
Lemljenje / ožičenje

Za prvi korak idemo ravno u povezivanje svih žica. (PS. Možete koristiti ploču za testiranje prije nego što sve zalemite)

Ponudio sam shemu koja vam pokazuje kako sam sve povezao, iako nisam mogao pronaći pravi dio za moju upravljačku jedinicu. Za svoj glavni upravljač koristio sam 4 NPN tranzistora za pretvaranje signala od 3,3 V u signal od 12 V za kontrolu upravljačkog programa motora. To je zato što onaj koji sam koristio podržava samo 1 napon (12v jer su moji motori 12v).

Korak 3: Postavljanje Raspberry Pi

Ako već nemate postavljanje, morat ćete to učiniti prvo, inače možete preskočiti ovaj korak ako imate potrebne programe iz zadnjeg isječka koda u ovom koraku.

Prvo ćete morati preuzeti Raspbian desktop verziju, koju možete pronaći ovdje:

Nakon što preuzmete ovo, morat ćete upotrijebiti Etcher ili WinDiskImager da biste datoteku slike stavili na SD karticu sa svog malina Pi. (Ovo bi moglo potrajati).

Kada je program gotov, otvorite File Explorer i otvorite pogon pod nazivom "boot". Ovdje ćete pronaći tekstualnu datoteku "cmdline.txt". Otvorite ovo i dodajte ip = 169.254.10.1 na kraj datoteke. Budite oprezni da u datoteku ne unosite nikakve unose jer bi to moglo dovesti do problema.

Sada kada PI ima zadanu IP adresu, i dalje ćemo morati omogućiti SSH da se može povezati s njim. To možete učiniti tako što ćete napraviti novu datoteku pod nazivom "SSH" bez ikakvih ekstenzija, to će reći malini pi da omogući ssh pri prvom pokretanju.

Ovim se sada možemo povezati s malinom pi pomoću Ethernet kabela. Priključite kabl između računara i malina PI. Sada će nam trebati SSH klijent. Za ovo sam koristio kit (https://www.putty.org/). Otvorite kit i stavite 169.254.10.1 kao ime hosta. Može proći neko vrijeme prije nego što se budete mogli povezati.

Nakon što se povežete, prijavite se s ovim vjerodajnicama:

Prijava: piPassword: malina

Sada smo u mogućnosti postaviti internetsku vezu, kako bismo to učinili. Izvršite ovu naredbu i zamijenite SSID i mrežnu lozinku imenom i lozinkom svog WiFi -ja.

echo "lozinka" | wpa_passphrase "SSID" >> /etc/wpa_supplicant/wpa_supplicant/wpa_supplicant.conf

wpa_cli -i wlan0 ponovno konfigurirajte

Sada kada imamo internetsku vezu, možemo instalirati python i druge potrebne programe pomoću sljedećih naredbi

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

izvor env/bin/aktiviraj

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

Korak 4: Postavljanje baze podataka

Sada kada ste na malini pi i imate sve potrebne programe, i dalje ćemo morati konfigurirati bazu podataka. Što možemo učiniti ako prvo pokrenemo Mysql

sudo mariadb

i onda

CREATE USER 'project1-admin'@'localhost' IDENTIFIED BY 'adminpassword'; CREATE USER 'project1-web'@'localhost' IDENTIFIED BY 'webpassword'; CREATE USER 'project1-sensor'@'localhost' IDENTIFIED BY 'sensorpassword';

CREATE DATABASE weathercar_db;

ODOBRITE SVE PRIVILEGIJE NA weathercar-u.* Na 'project1-admin'@'localhost' SA GRANT OPCIJOM; GRANT SELECT, INSERT, UPDATE, DELETE ON project1.* TO 'project1-web'@'localhost'; GRANT SELECT, INSERT, UPDATE, DELETE ON project1.* TO 'project1-sensor'@'localhost'; FLUSH PRIVILEGES;

Korak 5: Kodirajte

U ovom koraku klonirat ćemo potreban kôd na vašu malinu pi. Ovo ćemo učiniti na sljedeći način:

Prije svega provjerite jeste li u svom kućnom direktoriju unošenjem "cd"

cd

sada ćemo klonirati spremište pomoću

git clone

Sada možemo uvesti postavke baze podataka koristeći:

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

Sada kada smo završili bazu podataka, možemo nastaviti s postavljanjem naše usluge

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

Korak 6: Povežite se

Connect!
Connect!

Skoro smo stigli, samo još jedan korak. I to je dobijanje IP adrese koju nam je dao WiFi.

To ćemo učiniti stavljanjem

ip addr

hrpa sranja će se pojaviti, ali trebali biste moći pronaći "wlan0", a zatim nekoliko redaka dalje "inet 192.168.x.x"

stavite tu IP adresu u svoj preglednik i krenite. Povezani ste s web lokacijom.

Preporučuje se: