DOKUMEN RESMI

SISTEM IOT KEAMANAN PANGAN MBG

Analisis Komprehensif & Rekomendasi Implementasi
Internet of Things untuk Meminimalisir Keracunan Makanan Bergizi Gratis

Dokumen No: MBG-IoT-2025-001

Versi: 1.0

Tanggal: 5 April 2025

Status: Siap untuk Presentasi & Implementasi

Klasifikasi: Internal - Program MBG Nasional

Dokumen Presentasi Resmi

Sistem Monitoring Keamanan Pangan Berbasis IoT untuk Program Makan Bergizi Gratis (MBG)

5 April 2025 Versi 1.0 Program MBG Nasional Dokumen Internal

Daftar Isi

  1. Analisis Perkembangan Bakteri & Faktor Keracunan
  2. Standar Dapur & Distribusi MBG
  3. Sistem IoT untuk Dapur MBG
  4. Sistem Tracking Kendaraan Distribusi
  5. Arsitektur Sistem IoT Komprehensif
  6. Spesifikasi Teknis & Anggaran
  7. Rencana Implementasi
  8. Kesimpulan & Rekomendasi

Bab 1: Analisis Perkembangan Bakteri & Faktor Keracunan

1.1 Patogen Utama Penyebab Keracunan MBG

Berdasarkan penelitian dari berbagai sumber terpercaya (Kompas, UGM, UIN, ahligizi.id), teridentifikasi 8 bakteri dan 2 virus sebagai penyebab utama keracunan MBG yang diungkap oleh Menteri Kesehatan.

No Patogen Sumber Kontaminasi Kondisi Pertumbuhan Efek Kesehatan
1 Salmonella Daging mentah, telur, air terkontaminasi 5-60°C, optimal 37°C Radang usus, diare, demam
2 E. coli Daging sapi, air kotor 7-50°C Keracunan parah, toksin Shiga
3 Bacillus cereus Nasi, sereal, tanah 10-50°C, spora tahan panas Muntah, diare
4 Staphylococcus aureus Kulit, hidung, rambut manusia 10-54.4°C, toksin tahan panas Mual, muntah hebat
5 Clostridium perfringens Tanah, daging mentah Lingkungan rendah oksigen, 15-55°C Kram perut, diare
6 Listeria monocytogenes Produk susu, daging olahan 0-45°C (tahan dingin!) Infeksi sistemik, berbahaya bagi anak-anak
7 Campylobacter jejuni Unggas mentah 30-45°C Gastroenteritis
8 Shigella Air terkontaminasi, hygiene buruk 10-50°C Disentri, diare berdarah
9 Norovirus/Rotavirus Air tidak steril, penularan antar manusia Berbagai kondisi Muntah, diare akut
10 Hepatitis A Air tidak steril, hygiene tangan buruk Berbagai kondisi Infeksi hati
FAKTA KRITIS

Bakteri dapat berkembang biak 2x lipat setiap 15-30 menit pada zona bahaya (5-60°C). Dalam waktu 2 jam, 100 bakteri dapat menjadi 25.600 bakteri. Dalam 6 jam, dapat mencapai 409.600 bakteri!

1.2 Zona Bahaya Suhu (Temperature Danger Zone)

Zona Bahaya Suhu (Temperature Danger Zone)
graph LR A[0C Dingin] --> B[4C Bakteri Dorman] B --> C[5C sampai 60C BAHAYA] C --> D[60C Hot Holding] D --> E[75C Bakteri Terbunuh] style A fill:#e3f2fd,stroke:#1976d2,stroke-width:2px style B fill:#e8f5e9,stroke:#43a047,stroke-width:3px style C fill:#ffcdd2,stroke:#e53935,stroke-width:4px style D fill:#e8f5e9,stroke:#43a047,stroke-width:3px style E fill:#c8e6c9,stroke:#2e7d32,stroke-width:3px
15-30 mnt
Waktu Bakteri Berkembang 2x Lipat
37°C
Suhu Optimal Pertumbuhan Bakteri
2 Jam
Batas Aman di Zona Bahaya
4 Jam+
Makanan TIDAK AMAN Dikonsumsi

1.3 Simulasi Timeline Pertumbuhan Bakteri

Contoh Perhitungan: Makanan Didiamkan di Suhu Ruang (30°C)

Jam 06:00 - Setelah Dimasak

100 bakteri - Makanan baru matang, masih aman

Jam 06:30 (30 menit)

200 bakteri - Mulai masuk zona bahaya

Jam 07:00 (1 jam)

400 bakteri - Pertumbuhan eksponensial dimulai

Jam 08:00 (2 jam) - BATAS AMAN

1.600 bakteri - Masih dalam batas aman maksimum

Jam 10:00 (4 jam) - TIDAK AMAN

25.600 bakteri - Makanan SUDAH TIDAK AMAN!

Jam 12:00 (6 jam) - SANGAT BERBAHAYA

409.600 bakteri - Risiko keracunan MASSAL!

1.4 Tujuh Faktor Penyebab Keracunan MBG

No Faktor Penyebab Tingkat Risiko Solusi IoT
1 Kesalahan Manajemen Suhu
Makanan dikemas panas, didinginkan perlahan melewati zona bahaya 12+ jam
KRITIS Sensor suhu real-time 24/7
2 Kontaminasi Silang
Peralatan tidak bersih, tangan penjamah kotor, air tidak steril
TINGGI Sensor kualitas air & udara
3 Hygiene Penjamah Buruk
Tidak pakai APD, luka terbuka, tidak cuci tangan
TINGGI Monitoring humidity (jamur)
4 Kualitas Bahan Baku Rendah
Daging/ikan tidak segar, bahan kadaluarsa
SEDANG Sensor suhu storage bahan
5 Waktu Distribusi Terlalu Lama
Makanan >4 jam tanpa kontrol suhu, transit >20 menit
KRITIS GPS tracking + ETA + suhu container
6 Produksi Besar Tanpa QC
Tidak ada SOP ketat, tidak ada monitoring rutin
SEDANG Automated monitoring system
7 Pengawasan & SDM Lemah
Pelatihan kurang, tidak ada evaluasi BPN/BPOM
SEDANG Dashboard + reporting otomatis

Bab 2: Standar Dapur & Distribusi MBG

2.1 Persyaratan Fasilitas Dapur MBG

600-1000 m²
Luas Lahan Minimum
300-800 m²
Luas Bangunan
6 km
Jarak Maks ke Sekolah (20 menit)
Jauh dari TPA
Lokasi Higienis Wajib

2.2 Standar Suhu Masak Aman

Jenis Makanan Suhu Internal Minimal Status
Unggas (ayam, bebek) 74°C WAJIB
Daging giling 71°C WAJIB
Daging utuh (steak) 63-71°C REKOMENDASI
Ikan & Kerang 63°C (Seafood: 85°C) WAJIB
Telur 71°C WAJIB

2.3 Standar Penyimpanan Makanan

Kondisi Penyimpanan Suhu Required Keterangan
Perishable / Refrigerasi ≤ 4°C Chillers ≤ 8°C
Karkas / Daging Segar ≤ 3°C Pertahankan bakteri dorman
Buah & Sayuran 5-10°C Storage terpisah
Freezer ≤ -18°C Menghambat pertumbuhan bakteri
Makanan Panas (serving) ≥ 60°C Gunakan insulated container
Makanan Dingin (transport) ≤ 4-5°C Dengan ice pack
Sisa Makanan ≤ 2 jam Harus didinginkan & disimpan

2.4 Alur Produksi Makanan MBG

Alur Produksi Makanan MBG
graph LR A["Terima Bahan Baku"] --> B["Cek Kualitas"] B --> C["Simpan Storage"] C --> D["Prep"] D --> E["Masak 75C+"] E --> F["Kemas Higienis"] F --> G["Distribusi 20mnt"] style A fill:#e3f2fd,stroke:#1976d2,stroke-width:2px style B fill:#fff3e0,stroke:#f57c00,stroke-width:2px style C fill:#e8f5e9,stroke:#388e3c,stroke-width:2px style D fill:#fff3e0,stroke:#f57c00,stroke-width:2px style E fill:#ffebee,stroke:#d32f2f,stroke-width:3px style F fill:#e3f2fd,stroke:#1976d2,stroke-width:2px style G fill:#f3e5f5,stroke:#7b1fa2,stroke-width:2px
⭐ Titik Kritikal (CCP - Critical Control Points):

1. Penerimaan Bahan: Cek suhu & kesegaran bahan baku
2. Penyimpanan: Pastikan suhu storage sesuai standar
3. Pemasakan: Pastikan suhu internal makanan tercapai
4. Hot Holding: Pertahankan suhu ≥ 60°C
5. Distribusi: Maks 20 menit, suhu terjaga

2.5 Prinsip WHO 5 Keys to Food Safety

Key 1
Jaga Kebersihan
Cuci tangan, sanitasi permukaan
Key 2
Pisahkan Mentah & Matang
Hindari kontaminasi silang
Key 3
Masak Sampai Sempurna
Suhu internal aman
Key 4
Pertahankan Suhu Aman
Panas ≥60°C, Dingin ≤4°C
Key 5
Gunakan Air & Bahan Aman
Air filter/steril, bahan segar

Bab 3: Sistem IoT untuk Dapur MBG

3.1 Sensor yang Dibutuhkan

A. SENSOR SUHU (TEMPERATURE) - SANGAT KRITIS ⭐

Tipe Sensor Model Spesifikasi Lokasi Pemasangan
Temperature Probe
(Internal Makanan)
DS18B20 Waterproof
PT100 Food Grade
• Range: -55°C s/d 125°C
• Akurasi: ±0.5°C / ±0.2°C
• Response: < 10 detik
• Tusuk ke makanan saat memasak
• Probe stainless steel food grade
Storage Temperature
(Kulkas/Freezer)
DS18B20 • Range: -55°C s/d 125°C
• Akurasi: ±0.5°C
• Setiap zona penyimpanan
• Dry, chilled, frozen storage
Hot Holding Temperature
(Warmer/Steam Table)
DS18B20
Thermocouple Type K
• Range: 0-200°C
• Continuous monitoring
• Wadah penyimpanan matang
• Steam table
Cooling Process Monitor
(Pendinginan Makanan)
DS18B20 Multiple Probe • Multiple point monitoring • Pantau pendinginan 60°C → 4°C
• Target: < 2 jam

B. SENSOR KELEMBABAN (HUMIDITY) - PENTING

DHT22 / AHT20 Sensor

• Range: 0-100% RH | Akurasi: ±2-5%
• Dipasang di: Area penyimpanan bahan kering (target < 60% RH), area dingin (deteksi kondensasi), area packaging
• Alert jika humidity > 70% (risiko jamur & bakteri)

C. SENSOR GAS & KUALITAS UDARA - PENTING

Sensor Mendeteksi Fungsi Alert Threshold
MQ-135
Air Quality
NH₃, NOₓ, alkohol, benzena, asap, CO₂ • Deteksi ventilasi buruk
• Deteksi pembakaran tidak sempurna
• Warning: AQI buruk
• Critical: Gas berbahaya
MQ-4 / MQ-5
Gas LPG Detector
Methane (CH₄), LPG, gas alam • Safety: Deteksi kebocoran gas
• Auto-trigger exhaust fan
• Critical: Kebocoran terdeteksi
MQ-2
Smoke/Gas Detector
Asap, LPG, propana, hidrogen • Fire safety
• Gas leak detection
• Critical: Asap/gas terdeteksi
MH-Z19B
CO₂ Sensor
Carbon Dioxide (CO₂) • Monitoring kualitas udara
• Safety (40,000 ppm = 4% = BAHAYA)
• Warning: > 1000 ppm
• Critical: > 5000 ppm

D. SENSOR PENDUKUNG

Sensor Fungsi Lokasi
TDS Sensor
Water Quality
• Pastikan air bersih & aman
• Deteksi kontaminasi air
• Warning jika TDS > 300 ppm
Input air untuk memasak & mencuci
Door Sensor
Magnetic Reed Switch
• Monitor lama pintu terbuka
• Alert jika pintu tidak tertutup
• Warning jika > 5 menit
Pintu kulkas, freezer, storage room
Load Cell + HX711
Timbangan Digital
• Monitoring porsi makanan
• Logging berat bahan baku
• Quality control konsistensi
Area packaging & portioning
LDR
Light Sensor
• Monitoring pencahayaan (standar > 200 lux)
• Deteksi area storage terbuka/tertutup
Area penyimpanan, area dapur

3.2 Zonasi Sensor dalam Dapur MBG

Zonasi Sensor Dapur MBG
graph LR A["ZONA 1: PENERIMAAN"] B["ZONA 2: PENYIMPANAN DINGIN"] C["ZONA 3: PERSIAPAN PREP"] D["ZONA 4: PEMASAKAN KRITIS"] E["ZONA 5: HOT HOLDING"] F["ZONA 6: PACKAGING"] G["ZONA 7: CUCI"] A --> B B --> C C --> D D --> E E --> F F --> G style D fill:#ffebee,stroke:#d32f2f,stroke-width:4px style E fill:#fff3e0,stroke:#f57c00,stroke-width:3px style B fill:#e3f2fd,stroke:#1976d2,stroke-width:2px style A fill:#e8f5e9,stroke:#388e3c,stroke-width:2px style C fill:#f3e5f5,stroke:#7b1fa2,stroke-width:2px style F fill:#e0f2f1,stroke:#00796b,stroke-width:2px style G fill:#fce4ec,stroke:#c2185b,stroke-width:2px
16
DS18B20 Temperature
6
DHT22 Humidity
3
MQ-2 Smoke/Gas
4
MQ-4/MQ-5 LPG
3
MQ-135 Air Quality
1
MH-Z19B CO₂
2
TDS Water Quality
8
Door Sensor
2
Load Cell
GRAND TOTAL: ~45 Sensor per Dapur

Total ini mencakup semua titik monitoring dari 7 zona dapur untuk memastikan keamanan pangan yang komprehensif.

Bab 4: Sistem Tracking Kendaraan Distribusi

4.1 Mengapa Tracking Kendaraan KRITIS?

20 Menit
Waktu Transit Maksimum ke Sekolah
6 km
Jarak Maksimum Dapur ke Sekolah
2 Jam
Batas Aman di Danger Zone
2x / 20min
Perkembangan Bakteri di Danger Zone

4.2 Skenario Distribusi

SKENARIO 1: Makanan Panas (≥ 60°C) dalam Insulated Container

• Waktu masak selesai: 06:00
• Mulai transit: 06:30 (suhu masih ≥ 60°C)
• Waktu transit: 15 menit
• Tiba di sekolah: 06:45 AMAN
• Suhu saat tiba: Masih ≥ 60°C (jika insulated baik)

SKENARIO 2: Makanan Dingin (≤ 4°C) dengan Ice Pack

• Waktu masak selesai: 05:00
• Pendinginan cepat: 05:00-05:30 (60°C → 4°C)
• Mulai transit: 06:30 (suhu masih ≤ 5°C)
• Waktu transit: 18 menit
• Tiba di sekolah: 06:48 AMAN

SKENARIO 3: TRANSIT TERLAMBAT - SANGAT BERBAHAYA!

• Waktu masak selesai: 05:00
• Pendinginan lambat: 05:00-07:00 (60°C → 30°C) DI ZONA BAHAYA
• Mulai transit: 07:30 (suhu 25°C) SUDAH 2.5 JAM DI DANGER ZONE
• Transit: 40 menit (macet/route salah)
• Tiba di sekolah: 08:10
Total di danger zone: 3+ jam TIDAK AMAN - BAKTERI 256x lipat!

4.3 Spesifikasi Sistem Tracking Kendaraan

Komponen Spesifikasi Fungsi
GPS Module
NEO-6M / NEO-M8N
• Akurasi: 2.5 meter
• Update rate: 1 Hz
• Tracking posisi real-time
• Menghitung ETA
• Monitoring rute
GSM/GPRS Module
SIM800L / SIM7600 (4G)
• 2G/4G LTE
• Data: ~50MB/bulan
• Kirim data ke server
• Komunikasi real-time
Temperature Sensor
DS18B20 Waterproof
• Range: -55°C s/d 125°C
• Akurasi: ±0.5°C
• Monitor suhu container makanan
• Alert jika masuk danger zone
Accelerometer
MPU6050
• 3-axis accelerometer
• 3-axis gyroscope
• Deteksi guncangan keras
• Monitoring kualitas perjalanan
Microcontroller
ESP32
• WiFi + Bluetooth + LTE
• Low power consumption
• Processing data sensor
• Komunikasi MQTT
Battery Backup
18650 × 3 (11.1V 3000mAh)
• Backup 8+ jam
• BMS protection
• Power jika kendaraan mati
• Continuous monitoring

4.4 Alert System Tracking

Level Pemicu Notifikasi
INFO • Kendaraan mulai berangkat
• Perjalanan normal
• ETA update
Log only, tidak push
WARNING • Kendaraan terlambat dari jadwal
• Suhu container naik (masih aman)
• Rute menyimpang
• Berhenti > 5 menit
Push notification + WhatsApp ke kitchen manager
CRITICAL • Suhu container masuk DANGER ZONE
• Total waktu di danger zone > 2 jam
DO NOT SERVE - Makanan berpotensi berbahaya!
Push + WhatsApp + SMS + CALL
Ke: Kitchen manager + Supervisor + Dinas Kesehatan

4.5 Kalkulator Keamanan Makanan Real-Time

Algoritma Keamanan Makanan Real-Time
flowchart TD Start(["Mulai: Data Sensor"]) Input["Input Data Sensor"] Check1{"Suhu dalam zona bahaya?"} Calc1["Hitung waktu di danger zone"] Safe1["Status: AMAN - Suhu terjaga"] Calc2["Hitung pertumbuhan bakteri"] Check2{"Durasi di danger zone?"} Safe2["AMAN - Makanan masih aman"] Warn["WARNING - Siapkan pengganti"] Danger["TIDAK AMAN - JANGAN SAJIKAN"] CalcETA["Hitung ETA"] Check3{"ETA lebih dari 20 menit?"} AlertLate["ALERT: Transit terlambat"] Output["Output: Status + Rekomendasi"] Start2(["GPS Data"]) Start --> Input Input --> Check1 Check1 -->|Ya| Calc1 Check1 -->|Tidak| Safe1 Calc1 --> Calc2 Calc2 --> Check2 Check2 -->|60 menit| Safe2 Check2 -->|60-120 menit| Warn Check2 -->|120+ menit| Danger Safe1 --> CalcETA Safe2 --> CalcETA Warn --> CalcETA Danger --> CalcETA CalcETA --> Check3 Check3 -->|Ya| AlertLate Check3 -->|Tidak| Output AlertLate --> Output Start2 --> CalcETA style Start fill:#e3f2fd,stroke:#1976d2,stroke-width:2px style Start2 fill:#f3e5f5,stroke:#7b1fa2,stroke-width:2px style Input fill:#fff3e0,stroke:#f57c00,stroke-width:2px style Check1 fill:#ffebee,stroke:#d32f2f,stroke-width:3px style Check2 fill:#fff3e0,stroke:#f57c00,stroke-width:3px style Check3 fill:#e3f2fd,stroke:#1976d2,stroke-width:2px style Safe1 fill:#e8f5e9,stroke:#388e3c,stroke-width:3px style Safe2 fill:#e8f5e9,stroke:#388e3c,stroke-width:3px style Warn fill:#fff3e0,stroke:#f57c00,stroke-width:3px style Danger fill:#ffebee,stroke:#d32f2f,stroke-width:4px style Calc2 fill:#f3e5f5,stroke:#7b1fa2,stroke-width:2px style Output fill:#e0f2f1,stroke:#00796b,stroke-width:3px

Bab 5: Arsitektur Sistem IoT Komprehensif

5.1 Diagram Arsitektur Sistem

🌐 Arsitektur Sistem IoT Keamanan MBG
graph TB subgraph "IOT DEVICES" A["Sensors x20+"] B["Vehicle Tracker GPS"] end subgraph "COMMUNICATION" C["ESP32 Gateway WiFi"] D["4G LTE Module"] end subgraph "SERVER INFRASTRUCTURE" E["MQTT Broker Mosquitto"] F["Backend API"] G["Database PostgreSQL"] H["Cache Redis"] end subgraph "USER INTERFACES" I["Dashboard Web"] J["Mobile App"] K["Alert System WA/SMS"] end A --> C B --> D C --> E D --> E E --> F F --> G F --> H F --> I F --> J F --> K style A fill:#e3f2fd,stroke:#1976d2,stroke-width:2px style B fill:#f3e5f5,stroke:#7b1fa2,stroke-width:2px style C fill:#e8f5e9,stroke:#388e3c,stroke-width:2px style D fill:#fff3e0,stroke:#f57c00,stroke-width:2px style E fill:#ffebee,stroke:#d32f2f,stroke-width:3px style F fill:#e0f2f1,stroke:#00796b,stroke-width:2px style G fill:#fce4ec,stroke:#c2185b,stroke-width:2px style H fill:#f1f8e9,stroke:#689f38,stroke-width:2px style I fill:#e8eaf6,stroke:#3f51b5,stroke-width:2px style J fill:#fff8e1,stroke:#ffa000,stroke-width:2px style K fill:#ffecb3,stroke:#ff6f00,stroke-width:3px

5.2 Komponen Hardware - Kitchen Gateway

Komponen Spesifikasi
Microcontroller ESP32-WROOM-32D | CPU: 240MHz Dual Core | RAM: 520KB | Flash: 4MB | WiFi: 802.11 b/g/n | Bluetooth: BLE 4.2
Sensor Inputs • DS18B20 × 8 (1-Wire bus, bisa parallel)
• DHT22 × 4 (Temp + Humidity)
• MQ-2/MQ-4/MQ-5 × 6 (Gas detection)
• MQ-135 × 2 (Air quality)
• TDS Sensor × 2 (Water quality)
• Door Sensor × 6 (Door monitoring)
• Load Cell HX711 × 2 (Timbangan)
Power Supply • Input: 5V 3A Adapter
• Backup Battery: 18650 × 2 (7.4V 3000mAh)
• UPS Module
Communication • WiFi: Connect to kitchen router
• MQTT: Publish data ke broker
• Fallback: SIM800L (GSM) jika WiFi down
Enclosure • IP65 Waterproof Box
• DIN Rail Mount
• Location: Control room / area kering

5.3 Komponen Software

Layer Teknologi Fungsi
Firmware
(ESP32)
• Arduino IDE / PlatformIO
• Protocol: MQTT
• Data Format: JSON
• OTA Updates
• Baca semua sensor
• Kirim data via MQTT
• Local alert (buzzer/LED)
• Buffer data jika offline
MQTT Broker • Mosquitto (Open Source)
• Port: 1883/8883 (TLS)
• Topic: kitchen/+, vehicle/+
• Message routing
• Pub/Sub communication
• Real-time data streaming
Backend API • Node.js + Express.js
• Python + FastAPI
• Database: PostgreSQL
• Cache: Redis
• REST API
• Data processing
• Alert handling
• Safety calculation
Database • PostgreSQL + TimescaleDB
• Time-series optimized
• Automated backups
• Sensor readings storage
• Alert history
• Delivery logs
• Compliance reports
Dashboard • React.js / Next.js
• Material-UI / TailwindCSS
• Recharts / Chart.js
• Leaflet / Mapbox
• Real-time monitoring
• Maps tracking
• Charts & analytics
• Alert management
Alert System • WhatsApp (Fonnte/Wablas)
• SMS (Twilio)
• Email (SendGrid)
• Telegram Bot
• Push notifications
• Escalation system
• Multi-channel alerts

5.4 MQTT Topic Structure & Data Flow

MQTT Topic Structure
graph LR subgraph "Kitchen Devices" K1["Kitchen Sensors"] end subgraph "MQTT Broker" T1["kitchen plus sensors"] T2["kitchen plus alerts"] T3["vehicle plus location"] T4["vehicle plus temperature"] end subgraph "Server Subscriptions" S1["Backend API"] S2["Alert Handler"] S3["Dashboard"] end K1 --> T1 K1 --> T2 T1 --> S1 T2 --> S2 T2 --> S3 T3 --> S1 T4 --> S3 style K1 fill:#e3f2fd,stroke:#1976d2,stroke-width:2px style T1 fill:#fff3e0,stroke:#f57c00,stroke-width:2px style T2 fill:#ffebee,stroke:#d32f2f,stroke-width:2px style T3 fill:#f3e5f5,stroke:#7b1fa2,stroke-width:2px style T4 fill:#e8f5e9,stroke:#388e3c,stroke-width:2px style S1 fill:#e0f2f1,stroke:#00796b,stroke-width:2px style S2 fill:#ffecb3,stroke:#ff6f00,stroke-width:3px style S3 fill:#e8eaf6,stroke:#3f51b5,stroke-width:2px
Topic Pattern Contoh Data Subscriber
kitchen/{id}/sensors/temperature { "zone": "cooking", "value": 76.5 } Backend API, Dashboard
kitchen/{id}/sensors/humidity { "zone": "storage", "value": 55.2 } Backend API
kitchen/{id}/alerts { "severity": "critical", "message": "..." } Alert Handler, Dashboard
vehicle/{id}/location { "lat": -6.2088, "lng": 106.8456 } Dashboard Maps
vehicle/{id}/temperature { "value": 4.2, "status": "normal" } Backend API, Alert Handler

Bab 6: Spesifikasi Teknis & Anggaran

6.1 Bill of Materials - Per Dapur

Komponen Qty Harga Satuan Total
Hardware Sensors
ESP32-WROOM-32D 2 Rp 85.000 Rp 170.000
DS18B20 Waterproof 16 Rp 25.000 Rp 400.000
DHT22 6 Rp 45.000 Rp 270.000
MQ-2 / MQ-4 / MQ-5 / MQ-135 10 Rp 35.000 Rp 350.000
MH-Z19B CO₂ 1 Rp 150.000 Rp 150.000
TDS Sensor 2 Rp 50.000 Rp 100.000
Door Sensor, LDR, Load Cell 14 Rp 15.000 Rp 210.000
Infrastructure
Router WiFi 1 Rp 350.000 Rp 350.000
UPS 1000VA 1 Rp 800.000 Rp 800.000
Enclosure IP65, Kabel, Connector 1 set Rp 300.000 Rp 300.000
SUBTOTAL HARDWARE PER DAPUR Rp 3.100.000

6.2 Bill of Materials - Per Kendaraan

Komponen Qty Harga Satuan Total
ESP32-WROOM-32D 1 Rp 85.000 Rp 85.000
GPS NEO-6M + antenna 1 Rp 120.000 Rp 120.000
SIM7600 4G LTE 1 Rp 250.000 Rp 250.000
DS18B20 Waterproof 2 Rp 25.000 Rp 50.000
MPU6050 Accelerometer 1 Rp 25.000 Rp 25.000
Battery 18650 × 3 + BMS 1 Rp 150.000 Rp 150.000
Enclosure IP67 + aksesoris 1 Rp 150.000 Rp 150.000
SIM Card + pulsa/bulan 1 Rp 100.000 Rp 100.000/bln
SUBTOTAL PER KENDARAAN Rp 830.000

6.3 Estimasi Anggaran Lengkap (10 Dapur + 50 Kendaraan)

Komponen Biaya Qty Harga Satuan Total Ket
Hardware Dapur (10 dapur) 10 Rp 3.100.000 Rp 31.000.000 One-time
Hardware Kendaraan (50 unit) 50 Rp 830.000 Rp 41.500.000 One-time
Development Sistem 1 - Rp 45.000.000 One-time
TOTAL INVESTASI AWAL Rp 117.500.000
Server/Cloud (VPS) 12 bln Rp 500.000/bln Rp 6.000.000 /tahun
Internet (10 dapur) 12 bln Rp 500.000/bln Rp 6.000.000 /tahun
SIM Card (50 kendaraan) 12 bln Rp 100.000/bln Rp 6.000.000 /tahun
WhatsApp API + Maintenance 12 bln Rp 1.200.000/bln Rp 14.400.000 /tahun
TOTAL BIAYA OPERASIONAL / TAHUN Rp 32.400.000
GRAND TOTAL (TAHUN PERTAMA) Rp 149.900.000
Analisis ROI (Return on Investment)

Biaya keracunan massal (estimasi):
• Medical costs: Rp 50.000.000 - 500.000.000+
• Program suspension: Rp 1.000.000.000+
• Legal liability: Rp 100.000.000 - 1.000.000.000+
• Reputation damage: PRICELESS

Biaya Sistem IoT (tahun pertama): Rp 149.900.000

Kesimpulan: ROI POSITIF bahkan dengan mencegah 1 insiden saja! Sistem ini membayar dirinya sendiri dengan mencegah kerugian dari 1 kejadian keracunan.

Bab 7: Rencana Implementasi

7.1 Fase Implementasi Bertahap

FASE 1: MVP (Minimum Viable Product) - Minggu 1-4

Scope:
✓ 1 Dapur pilot
✓ Sensor suhu critical points (cooking, hot holding, cold storage)
✓ Basic GPS tracking untuk 2 kendaraan
✓ Simple dashboard (web-based)
✓ WhatsApp alerts untuk critical events
✓ Database + API

Deliverables: Working prototype, Real-time monitoring, Basic alerts, Daily report (manual)

Budget: ~Rp 15.000.000 (development + hardware)

FASE 2: EXPANSION - Minggu 5-8

Scope:
✓ Expand ke 5 dapur
✓ Tambah semua sensor jenis (gas, humidity, water quality)
✓ GPS tracking untuk semua kendaraan (10+)
✓ Advanced dashboard (charts, maps, analytics)
✓ Mobile app (basic)
✓ Automated reports

Deliverables: Multi-kitchen support, Complete sensor suite, Vehicle fleet tracking, Analytics dashboard

Budget: ~Rp 30.000.000

FASE 3: OPTIMIZATION - Minggu 9-12

Scope:
✓ Predictive analytics (AI/ML untuk prediksi risiko)
✓ Automated compliance reporting
✓ Integration dengan sistem BPN/Dinas Kesehatan
✓ NFC/QR food container tracking
✓ Advanced geofencing & route optimization
✓ Full mobile app

Deliverables: AI-powered risk prediction, Regulatory compliance module, End-to-end traceability, Production-ready system

Budget: ~Rp 40.000.000

7.1.b Gantt Chart Implementasi

Timeline Implementasi 12 Minggu
gantt title Rencana Implementasi Sistem IoT MBG dateFormat YYYY-MM-DD axisFormat %W section FASE 1: MVP Setup Dev Environment :a1, 2025-04-07, 7d Hardware Procurement :a2, 2025-04-07, 7d Firmware Development :a3, 2025-04-14, 14d Backend API Development :a4, 2025-04-14, 14d Dashboard Basic :a5, 2025-04-21, 14d Testing and Deployment :a6, 2025-05-05, 7d section FASE 2: EXPANSION Expand to 5 Kitchens :b1, 2025-05-12, 14d Complete Sensor Suite :b2, 2025-05-12, 14d Vehicle Fleet Tracking :b3, 2025-05-19, 14d Advanced Dashboard :b4, 2025-05-19, 14d Mobile App Basic :b5, 2025-05-26, 14d section FASE 3: OPTIMIZATION AI ML Predictive :c1, 2025-06-09, 14d Compliance Module :c2, 2025-06-09, 14d Integration BPN Dinkes :c3, 2025-06-16, 14d NFC QR Tracking :c4, 2025-06-16, 14d Full Mobile App :c5, 2025-06-23, 14d section MILESTONES MVP Ready :milestone, 2025-05-05, 0d Production Ready :milestone, 2025-06-02, 0d System Complete :milestone, 2025-06-30, 0d

7.2 Threshold Configuration

Parameter WARNING CRITICAL
Suhu Masak - Unggas < 74°C < 70°C
Suhu Masak - Daging < 71°C < 65°C
Suhu Masak - Ikan < 63°C < 60°C
Hot Holding < 65°C < 60°C
Freezer > -15°C > -10°C
Chiller > 4°C > 8°C
Danger Zone Time 60 menit 120 menit
Gas MQ-2 (Smoke) > 300 ppm > 500 ppm
Gas LPG (MQ-4/5) > 200 ppm > 400 ppm
CO₂ > 1.000 ppm > 5.000 ppm
Water Quality (TDS) > 300 ppm > 500 ppm

7.3 Prioritas Implementasi (Budget Terbatas)

Tier Komponen Biaya per Dapur Prioritas
TIER 1 MUST HAVE:
• Temperature probes (cooking + holding + storage)
• GPS + Temperature tracking kendaraan
• WhatsApp alerts
~Rp 5.000.000 KRITIS
TIER 2 SHOULD HAVE:
• Gas detectors (MQ-2, MQ-4/5)
• Humidity sensors (DHT22)
• Door sensors (kulkas/freezer)
~Rp 3.000.000 PENTING
TIER 3 NICE TO HAVE:
• Water quality (TDS)
• CO₂ sensor (MH-Z19B)
• Air quality (MQ-135)
• Load cell (timbangan)
~Rp 2.000.000
OPTIMASI
TOTAL (SEMUA TIERS) ~Rp 10.000.000

Bab 8: Kesimpulan & Rekomendasi

8.1 Masalah Utama yang Dipecahkan

Masalah Dampak Solusi IoT
Temperature Mismanagement
(Penyebab #1 Keracunan)
Bakteri berkembang 256x lipat dalam 2 jam di zona bahaya IoT monitors suhu real-time 24/7
Alert SEBELUM makanan masuk danger zone
Logging otomatis untuk audit
Distribution Time Issues Transit > 20 menit = risiko bakteri meningkat drastis GPS tracking ETA real-time
Kalkulasi safety score berbasis waktu & suhu
Auto-alert jika transit terlalu lama
Cross-Contamination Kontaminasi silang dari peralatan, air, udara buruk Monitoring humidity (jamur/bakteri)
Gas sensors (ventilasi buruk)
Water quality monitoring
Human Error Manual checks bisa lupa/salah, tidak ada log Automated monitoring (tidak rely pada manusia)
Forced compliance (alert tidak bisa diabaikan)
Full traceability (semua tercatat)

8.2 Perbandingan: Tanpa IoT vs Dengan IoT

❌ TANPA IoT

  • Manual checks (bisa lupa/salah)
  • Tidak ada real-time visibility
  • Reaktif (setelah keracunan terjadi)
  • Sulit traceability
  • Tidak ada data untuk improvement
  • Tidak ada alert otomatis
  • Compliance reporting manual

✅ DENGAN IoT

  • Continuous 24/7 monitoring
  • Real-time alerts & visibility
  • Proaktif (prevent BEFORE happens)
  • Full audit trail & traceability
  • Data-driven decisions
  • Compliance reporting otomatis
  • Predictive analytics (AI/ML)

8.3 Rekomendasi Langkah Selanjutnya

Roadmap Implementasi
flowchart LR Step1["Langkah 1: Pilot Kitchen"] Step2["Langkah 2: Deploy MVP"] Step3["Langkah 3: Test dan Iterate"] Step4["Langkah 4: Scale Up"] Step5["Langkah 5: Advanced Features"] Step1 --> Step2 Step2 --> Step3 Step3 --> Step4 Step4 --> Step5 style Step1 fill:#e3f2fd,stroke:#1976d2,stroke-width:2px style Step2 fill:#e8f5e9,stroke:#388e3c,stroke-width:2px style Step3 fill:#fff3e0,stroke:#f57c00,stroke-width:2px style Step4 fill:#f3e5f5,stroke:#7b1fa2,stroke-width:2px style Step5 fill:#ffebee,stroke:#d32f2f,stroke-width:3px
Langkah Timeline Aktivitas Utama Deliverables
📌 Langkah 1 Minggu 1-2 Pilih dapur pilot, setup hardware, install MQTT Infrastructure ready
📌 Langkah 2 Minggu 3-4 Temperature monitoring + GPS tracking 2 kendaraan MVP live
📌 Langkah 3 Minggu 5-6 Feedback, bug fixes, tambah sensor Stable system
📌 Langkah 4 Minggu 7-8 Expand 5 dapur, fleet tracking, advanced dashboard Multi-kitchen
📌 Langkah 5 Minggu 9-12 AI prediction, NFC tracking, integration BPN Production ready
KESIMPULAN AKHIR

Sistem IoT Keamanan Pangan MBG adalah investasi kritis untuk mencegah keracunan massal. Dengan biaya implementasi ~Rp 150 juta untuk tahun pertama (10 dapur + 50 kendaraan), sistem ini dapat mencegah kerugian miliaran rupiah dari 1 insiden keracunan saja.

Value Proposition:
• Melindungi kesehatan siswa penerima MBG
• Meningkatkan kepercayaan publik terhadap program
• Memastikan compliance dengan standar keamanan pangan
• Menyediakan data audit-ready untuk evaluasi program
• ROI positif bahkan dengan mencegah 1 insiden saja

Rekomendasi: SEGERA IMPLEMENTASIKAN dimulai dari pilot kitchen dengan fokus pada temperature monitoring dan vehicle tracking sebagai prioritas utama.

8.4 Alur Data End-to-End

Alur Data Sistem IoT MBG
sequenceDiagram participant Sensor as IoT Sensors participant ESP32 as ESP32 Gateway participant MQTT as MQTT Broker participant API as Backend API participant DB as Database participant UI as Dashboard participant Alert as Alert System Sensor->>ESP32: Baca data tiap 10 detik Note over Sensor,ESP32: Temperature, Humidity, Gas ESP32->>MQTT: Publish JSON via MQTT Note over ESP32,MQTT: kitchen/id/sensors MQTT->>API: Forward message MQTT->>UI: Real-time update API->>API: Process dan Validate API->>DB: Store to TimescaleDB API->>API: Check Thresholds alt Normal Condition API->>UI: Status: AMAN else Warning Threshold API->>Alert: Warning Alert Alert->>UI: Push notification Note over Alert: WhatsApp ke Manager else Critical Threshold API->>Alert: CRITICAL Alert Alert->>UI: Red alert Note over Alert: WA, SMS, dan Call API->>DB: Log critical event end UI->>UI: Update dashboard

8.5 Lampiran - Sumber Referensi

No Sumber Topik
1 Kompas Nasional (2025) 8 Bakteri & 2 Virus Penyebab Keracunan MBG
2 UIN Sunan Gunung Djati Bandung Mengapa Terjadi Keracunan Massal MBG
3 UGM Yogyakarta Tips Pertolongan Pertama Keracunan Makanan
4 Klinik HealthMed Kontaminasi Silang & Keracunan MBG
5 Ralali Blog SOP Dapur Makan Bergizi Gratis
6 AhliGizi.id 7 Potensi Penyebab KLB, Suhu Keamanan Pangan
7 Sinar Himalaya Standar Dapur MBG
8 WHO 5 Keys to Food Safety Standar Keamanan Pangan Internasional
9 CDC Food Safety Temperature Danger Zone Guidelines
10 FoodReady AI IoT Sensors for Food Safety Monitoring