Server Data Maritim adalah server Data Pusat (Cloud) untuk data maritim. Ini menyimpan data yang berasal, untuk Exmaple MDC (Kolektor Data Maritim atau Lora-Bootsmonitor atau perangkat lain), ke dalam database dan memberi pengguna GUI untuk menampilkan data dan melakukan beberapa konfigurasi.
Gagasan awalnya adalah, memiliki kemungkinan untuk dapat melihat beberapa data maritim (suhu, tegangan baterai, alarm lambung kapal) saat Anda tidak berada di kapal.
MDC itu papan kecil dengan ESP32 dan beberapa sensor, yang mengumpulkan data sensor dan mentransfer data ini ke MDS. Anda akan menemukan dokumentasi MDC di bawah https://github.com/bytecrusher/maritimedatacollectorsmall
Server data maritim adalah aplikasi web untuk menyimpan data dan menampilkan data untuk pengguna. Ini mengubah database MySQL untuk menyimpan data dan server web dengan dukungan PHP untuk menampilkan informasi dengan data. MDS dapat menampilkan data dari sensor dalam grafik/pengukur atau bagan. Juga dimungkinkan untuk mengonfigurasi papan dan sensor Anda.
Server diatur dalam backend (API untuk menerima data dari Collector dan TTN, kirim email) dan frontend untuk menampilkan data di browser pengguna.
Backend menyimpan data ke DB. Ini juga memeriksa apakah data valid dan papan dan sensor ada di DB, jika tidak catatan DB baru akan dibuat.
Untuk frontend, pengguna perlu masuk. Sekarang pengguna dapat melakukan beberapa konfigurasi atau menampilkan beberapa data.
Salin semua file MDS dari folder "SRC" ke DIR HTDOCS Anda. Buat database baru (dengan phpMyAdmin) dan buat pengguna baru dengan hak istimewa tulis ke database ini. Buka http: //yourdomain/maritimedataserver/install/index.php di browser Anda dan melangkah melalui langkah -langkah instalasi. Setelah pemasangan selesai, lepaskan Dir bernama "Instal" (untuk alasan keamanan).
Sekarang MDS tersedia di bawah http: // YourDomain/MaritimedataServer



Untuk menjalankan MDS , Anda memerlukan server web (Apache) dengan dukungan PHP dan DB MySQL.
Jika Anda menjalankan MDC di luar jaringan lokal kami, MDS Anda harus publik (TTN harus dapat mencapai server ini).
Untuk pengembangan saya menggunakan solusi yang berbeda. Pertama adalah wadah Docker lokal yang berjalan di komputer pengkodean saya. Kedua saya memiliki webhosting subdomain, yang menarik cabang "perkembangan" saya dari Guthub di sana.
####### KETIKA SAAT SAAT SAAT INI GELOMBANG Pertama: Saya mengatur 4 kontainer (satu untuk setiap layanan):
Saya mengonfigurasi VSC saya untuk dapat bekerja langsung di folder HTDOCS jika Apache. Jadi tidak ada sinkronisasi file manual yang diperlukan.
Gelombang Kedua: Di subdomain webhosting saya, saya mengatur resositori saya, jadi saya dapat menjalankan permintaan tarik dari panel Plesk dan memiliki cabang pengembangan terbaru di ruang web.
Untuk debugging php saya menggunakan xdebug. Konfigurasi dalam MAMP dilakukan di **/Applications/XAMPP/XAMPPFILES/etc/php.ini dan terlihat:
[xdebug]
zend_extension = "/usr/local/cellar/php/8.1.1/PECL/20210902/xdebug.so"
xdebug.mode = debug
xdebug.client_host = 127.0.0.1
xdebug.client_port = "9000"
Di Firefox saya menggunakan "XDebug Helper" (Kunci IDE: VScode).
Di Safari saya menggunakan "xdebugtoggleextension 1.2".
Untuk debug, Anda harus pergi ke "Ausführen" - "Debugger Starte" dan The Green Play Button (F5).
Karena berbagai jenis sensor dan mencoba mengurangi jumlah data yang ditransfer melalui WiFi (dan kemudian LORA) adalah ide yang baik untuk memiliki skema bagi sensor untuk mentransfer data. Juga tidak perlu memberikan nama nilai.
Jika semua nilai memberikan dalam urutan yang benar, jelas nilai mana yang mana yang mana.
Skema #: 1
Nama: DS18B20
Deschription: Tempsensor
NR sensor (yang terhubung): 1
Hitungan Nilai: 1
Nama Nilai: #1 Suhu
Jenis Nilai: #1 UInt8 (?)
Skema #: 2
Nama: DS2438
Deschription: adonan
NR sensor (yang terhubung): 1
Hitungan Nilai: 4
Nama Nilai: #1 CH1 Voltage, 2 #CH1 Current, #3 CH2 Voltage, #4 CH2 Arus
Jenis Nilai: #1 UInt8 (?), #2 UInt8 (?), #3 UInt8 (?), #4 UInt8 (?)
Skema #: 3
Nama: DHT11
Deschription: tempsensor & kelembaban
NR sensor (yang terhubung): 1
Hitungan Nilai: 2
Nama Nilai: #1 Suhu, #2 Kelembaban
Jenis Nilai: #1 UInt8 (?), #2 UInt8 (?)
Skema #: 4
Nama: Input Digital
Deschription: Input Digital
NR sensor (yang terhubung): 1
Hitungan Nilai: 1
Nama Nilai: #1 Input Digital
Jenis Nilai: #1 Bool (?)
Skema #: 5
Nama: GPS
Deschription: Data dari penerima GPS
NR sensor (yang terhubung): 1
Hitungan Nilai: 4
Nama Nilai: #1 Latitude, #2 Longitude, #3 Kursus, Kecepatan #4
Jenis Nilai: #1 UInt8 (?), #2 UInt8 (?), #3 UInt8 (?), #4 UInt8 (?)