Ini adalah Proyek Akhir Sarjana saya Gelar Sarjana tentang Ilmu Komputer di Fundação Universidade Regional de Blumenau (FURB).
Ini adalah sistem untuk mengelola transportasi logistik/rantai pasokan dan melacak, menggunakan WiFi Lora 32 untuk mendapatkan geolokasi kendaraan dan mengirim melalui Lorawan ke Kore Network Server yang akan meneruskan muatan ke aplikasi tersebut.
Artikel | Sumber Daya | Prasyarat | Pengaturan | Berlari | Techs | Lisensi
Aplikasi Web

Perangkat


Artikel
Sumber daya
Aplikasi ini memiliki lebih banyak fungsi seperti login, membuat produk, pengguna, perangkat, dan yang lainnya, tetapi yang utama tercantum di bawah ini:
- Alamat pengguna CRUD, mendapatkan koordinat secara otomatis saat menambahkan yang baru
- Pengguna melakukan pesanan
- Buat Cargo
- Hasilkan Daftar Paket Kargo (PDF)
- Kirim jaringan lemparan geolokasi kendaraan
- Pindai Barcode Pesanan
- Lacak Cargo
Prasyarat
Di bawah ini adalah softwares terdaftar yang harus Anda instal untuk menjalankan aplikasi:
- Git
- Benang
- Node.js
- PostgreSQL
- Mongodb
- Ide Arduino
- Reactotron (opsional)
Untuk menampilkan peta di frontend dan alamat pengguna geocoding, ini digunakan MapBox API, jadi Anda harus membuat akun dan token akses di MapBox.
Lorawan Network Server yang digunakan adalah dari Kore Wireless Company. Untuk pengguna layanan mereka, Anda harus menghubungi mereka dan memilih/mengontrak rencana yang lebih masuk akal untuk aplikasi Anda. Di sini, itu digunakan yang terbesar, rencana G.
Untuk membangun perangkat, komponen di bawah ini diperlukan:
- WiFi Lora 32 (v2)
- GPS GY-NEO6MV2
- Pin Protoboard 400
- 4 jumper pria ke pria
- Charger portabel (atau hal lain ke perangkat daya)
Pengaturan
Ide Arduino
- Seperti yang dikatakan sebelumnya, perangkat yang digunakan adalah WiFi Lora 32, untuk itu Anda perlu mengatur IDE Arduino Anda mengikuti instruksi Helctec Docs
- Instal TinyGPS ++
- Dapatkan Heltec Chipid dan Lisensi untuk perangkat Anda mengikuti instruksi
- Dengan Chipid, Anda harus "mencekik" ke deveui, berubah dari 6 byte menjadi 8 byte
- EG: Jika chipid Anda adalah: 123456781122, deveui Anda akan menjadi: 0x12, 0x34, 0x56, 0xff, 0xff, 0x78, 0x11, 0x22
- Buka perangkat perangkat/lorawan_example.ino dan atur nilai ke variabel Deveui, appeui dan appkey (dua terakhir yang bisa Anda dapatkan di Kore)
Lorawan Network Server (Kore)
Dengan akses ke Kore, Anda perlu membuat "organisasi", "aplicação" dan dua http "encaminhamentos" (titik akhir yang akan mengirim muatan):
- URL: https://deggautcc.loca.lt/cargos/geolocation (pilih Uplink, Lora dan Radio)
- Titik akhir ini akan menghemat geolokasi kendaraan di postgresql
- Url: https://deggautcc.loca.lt/lora (pilih semua opsi kecuali duplikat)
- Titik akhir ini akan menyimpan semua pesan di MongoDB, untuk memiliki riwayat/log pesan
- Buat Perangkat (Perangkat EUI Anda harus mengatur dengan nilai yang Anda dapatkan sebelumnya)
- Atur config sebagai OtaA, Contador sebagai 2, NS Security dan Kelas A
Backend dan Frontend
- Duplikat file .env.example dan ganti nama menjadi .env di folder backend dan frontend
- Atur API_KEY_MAPBOX dengan Token Akses yang Anda dapatkan di MapBox
- Buat database di PostgreSQL dan atur data koneksi di backend/.env
- Buat database di MongoDB dengan nama TCC
- Buat akun/proyek di Sentry dan atur properti Sentry_DSN di backend/.env (tidak perlu, digunakan untuk pemantauan kesalahan)
Berlari
Backend
# Repository clone
$ git clone https://github.com/gdeggau/logistical_management_and_monitoring_with_LoRa.git
# Acccess backend folder
$ cd logistical_management_and_monitoring_with_LoRa/backend/
# Dependence install
$ yarn
# Run
$ yarn dev
# Open a new terminal (script responsable to set API public)
$ yarn tunnel
Frontend
# Acccess frontend folder
$ cd logistical_management_and_monitoring_with_LoRa/frontend/
# Dependence install
$ yarn
# Run
$ yarn start
Perangkat
- Kompilasi dan unggah file lorawan_example.ino ke perangkat
Teknisi
| Backend | Frontend | Perangkat |
|---|
| Node.js | Bereaksi JS | ESP32 Lorawan Heltec |
| Cepat | Komponen gaya | Tinygps ++ |
| Sekejap | Reactstrap | |
| Localtunnel (dev) | Redux & Redux-Saga | |
| Mapbox | React-map-gl | |
| Postgressql | Reactotron (dev) | |
| Mongodb | Formik | |
| Jwt | janji CEP | |
| Penjaga | Table Bereaksi | |
Lisensi
Mit