Baca Juga : Alat Monitoring Infus (dengan sensor berat)
1. Smart Bin
Smart bin adalah proyek IoT yang mengubah sampah biasa menjadi sampah pintar. Dengan menggunakan sensor berat, smart bin dapat memberikan pengukuran berat sampah dan kemudian mengirimkan informasi tersebut ke database yang dapat diakses secara online. Pemilik smart bin dapat memantau berapa banyak sampah yang dihasilkan setiap hari dan dapat merencanakan pengambilan sampah dengan lebih efisien.
Komponen yang dibutuhkan untuk smart bin adalah:
- Sensor beban atau Load Cell
- Mikrokontroler seperti Arduino atau Raspberry Pi
- Modul WiFi atau Bluetooth (atau bisa menggunakan mikrokontroler yang sudah include modul wifi, seperti esp32 atau nodemcu)
- Power Supply
Sensor beban sangat penting karena memungkinkan pengukuran berat sampah yang akurat dan dapat diandalkan. Arduino atau Raspberry Pi digunakan sebagai otak dari smart bin, yang akan menerima informasi dari sensor dan mengirimkan data ke database online. Modul WiFi atau Bluetooth memungkinkan smart bin untuk terhubung ke internet dan memungkinkan pemilik untuk mengakses data dengan mudah.
Teknis cara kerja smart bin adalah sebagai berikut:
- Sensor beban dihubungkan ke mikrokontroler dengan kabel.
- Mikrokontroler diprogram untuk mengambil bacaan dari sensor dan mengirimkan data ke database online.
- Pemilik dapat mengakses database online untuk melihat berapa banyak sampah yang dihasilkan setiap hari dan merencanakan pengambilan sampah dengan lebih efisien.
Berikut adalah program code untuk smart bin:
#include <Wire.h>
#include <HX711.h>
#define DOUT 3
#define CLK 2
HX711 scale(DOUT, CLK);
void setup() {
Serial.begin(9600);
scale.set_scale(2280.f); // Set scale factor
scale.tare(); // Reset scale to 0
}
void loop() {
float weight = scale.get_units();
Serial.println(weight);
delay(1000);
}
Program code ini memungkinkan mikrokontroler untuk membaca data dari sensor beban dan menampilkan berat dalam satuan gram melalui Serial Monitor.
2. Smart Shelves
Smart shelves adalah proyek IoT yang memungkinkan perusahaan untuk memantau inventaris dengan lebih efektif. Dengan menggunakan sensor berat, smart shelves dapat memberikan data tentang berat produk yang ada di rak dan memungkinkan perusahaan untuk mengetahui dengan pasti kapan produk perlu diisi ulang.
Komponen yang dibutuhkan untuk smart shelves adalah:
- Sensor beban atau Load Cell
- Mikrokontroler seperti Arduino atau Raspberry Pi
- Modul WiFi atau Bluetooth
- Power Supply
Sensor beban dan mikrokontroler memiliki peran yang sama seperti pada proyek smart bin, yaitu untuk mendapatkan data dari sensor dan mengirimkannya ke database online. Modul WiFi atau Bluetooth memungkinkan smart shelves untuk terhubung ke internet dan memungkinkan pemilik untuk mengakses data dengan mudah.
Teknis cara kerja smart shelves adalah sebagai berikut:
- Sensor beban ditempatkan di bawah rak untuk mendapatkan bacaan berat produk.
- Mikrokontroler diprogram untuk mengambil bacaan dari sensor dan mengirimkan data ke database online.
- Pemilik dapat mengakses database online untuk melihat berapa banyak produk yang tersisa dan merencanakan pengisian ulang dengan lebih efisien.
Berikut adalah program code untuk smart shelves:
#include <Wire.h>
#include <HX711.h>
#define DOUT 3
#define CLK 2
HX711 scale(DOUT, CLK);
void setup() {
Serial.begin(9600);
scale.set_scale(2280.f); // Set scale factor
scale.tare(); // Reset scale to 0
}
void loop() {
float weight = scale.get_units();
Serial.println(weight);
delay(1000);
}
Program code ini hampir sama dengan program code pada smart bin, hanya perlu menyesuaikan konfigurasi skala sensor berat yang digunakan.
3. Smart Delivery
Smart delivery adalah proyek IoT yang memungkinkan perusahaan untuk memantau pengiriman dengan lebih efektif. Dengan menggunakan sensor berat, smart delivery dapat memberikan data tentang berat paket yang dikirim dan memungkinkan perusahaan untuk mengetahui dengan pasti kapan paket sudah sampai ke tujuan.
Komponen yang dibutuhkan untuk smart delivery adalah:
- Sensor beban atau Load Cell
- Mikrokontroler seperti Arduino atau Raspberry Pi
- Modul WiFi atau Bluetooth
- GPS Module
- Power Supply
Sensor beban dan mikrokontroler memiliki peran yang sama seperti pada proyek sebelumnya, yaitu untuk mendapatkan data dari sensor dan mengirimkannya ke database online. Modul GPS memungkinkan smart delivery untuk melacak posisi paket dalam perjalanan dan memungkinkan pemilik untuk melihat status pengiriman dengan lebih mudah.
Teknis cara kerja smart delivery adalah sebagai berikut:
- Sensor beban ditempatkan di dalam paket untuk mendapatkan bacaan berat paket.
- Mikrokontroler diprogram untuk mengambil bacaan dari sensor dan mengirimkan data ke database online.
- GPS module dipasang pada paket dan mengirimkan data lokasi ke database online.
- Pemilik dapat mengakses database online untuk melihat posisi dan status pengiriman paket dengan lebih mudah.
Berikut adalah program code untuk smart delivery:
#include <WiFi.h> // Library untuk menggunakan modul WiFi ESP32
#include <PubSubClient.h> // Library untuk menggunakan protokol MQTT
#include <HX711.h> // Library untuk menggunakan sensor berat
// Inisialisasi SSID dan password WiFi
const char* ssid = "nama_ssid_wifi";
const char* password = "password_wifi";
// Inisialisasi MQTT broker dan topik
const char* mqttBroker = "broker.mqtt.com";
const char* mqttTopic = "smart_delivery";
// Inisialisasi pin sensor berat
const int LOADCELL_DOUT_PIN = 15;
const int LOADCELL_SCK_PIN = 13;
// Inisialisasi objek sensor berat
HX711 scale(LOADCELL_DOUT_PIN, LOADCELL_SCK_PIN);
// Inisialisasi objek WiFi dan MQTT client
WiFiClient wifiClient;
PubSubClient mqttClient(wifiClient);
void setup() {
// Mengatur komunikasi serial
Serial.begin(115200);
// Menghubungkan ke WiFi
WiFi.begin(ssid, password);
while (WiFi.status() != WL_CONNECTED) {
delay(1000);
Serial.println("Connecting to WiFi...");
}
Serial.println("Connected to WiFi");
// Menghubungkan ke broker MQTT
mqttClient.setServer(mqttBroker, 1883);
while (!mqttClient.connected()) {
Serial.println("Connecting to MQTT broker...");
if (mqttClient.connect("ESP32Client")) {
Serial.println("Connected to MQTT broker");
} else {
Serial.print("Failed with state ");
Serial.println(mqttClient.state());
delay(2000);
}
}
// Mengatur skala pembacaan sensor berat
scale.set_scale(2280.f);
scale.tare();
}
void loop() {
// Membaca berat pada sensor berat
float weight = scale.get_units();
// Mengirimkan berat ke broker MQTT
char weightStr[10];
dtostrf(weight, 4, 2, weightStr);
mqttClient.publish(mqttTopic, weightStr);
// Tunggu selama 1 detik
delay(1000);
}
Program ini akan membaca berat pada sensor berat setiap detiknya, dan mengirimkan hasilnya ke broker MQTT menggunakan protokol MQTT. Dengan begitu, aplikasi atau sistem lain yang terhubung dengan broker MQTT dapat memantau berat dari paket pengiriman tersebut. Program ini hanya merupakan contoh sederhana dan dapat dikembangkan lebih lanjut untuk memenuhi kebutuhan yang lebih spesifik.
4. Smart Parking
Smart parking adalah proyek IoT yang memungkinkan pengguna untuk mengetahui ketersediaan tempat parkir secara real-time. Dengan menggunakan sensor berat, smart parking dapat memberikan data tentang apakah tempat parkir kosong atau sudah terisi.
Komponen yang dibutuhkan untuk smart parking adalah:
- Sensor beban atau Load Cell
- Mikrokontroler seperti Arduino atau Raspberry Pi
- Modul WiFi atau Bluetooth
- LED
- Power Supply
Sensor beban dan mikrokontroller memiliki peran yang sama seperti pada proyek sebelumnya, yaitu untuk mendapatkan data dari sensor dan mengirimkannya ke database online. LED digunakan untuk memberikan sinyal visual tentang ketersediaan tempat parkir.
Teknis cara kerja smart parking adalah sebagai berikut:
- Sensor beban ditempatkan di bawah tempat parkir untuk mendapatkan bacaan berat kendaraan.
- Mikrokontroler diprogram untuk mengambil bacaan dari sensor dan mengirimkan data ke database online.
- LED ditempatkan di dekat tempat parkir dan menyala hijau untuk menunjukkan tempat parkir kosong dan merah untuk menunjukkan tempat parkir terisi.
- Pemilik dapat mengakses database online atau melihat LED untuk mengetahui ketersediaan tempat parkir.
Berikut adalah program code untuk smart parking:
#include <Wire.h>
#include <HX711.h>
#define DOUT 3
#define CLK 2
HX711 scale(DOUT, CLK);
void setup() {
Serial.begin(9600);
scale.set_scale(2280.f); // Set scale factor
scale.tare(); // Reset scale to 0
}
void loop() {
float weight = scale.get_units();
if (weight < 10.0) {
Serial.println("Parking space available");
digitalWrite(LED_PIN, HIGH); // Turn on LED
} else {
Serial.println("Parking space occupied");
digitalWrite(LED_PIN, LOW); // Turn off LED
}
delay(1000);
}
5. Smart Farming
- Sensor beban atau Load Cell
- Mikrokontroler seperti Arduino atau Raspberry Pi
- Modul WiFi atau Bluetooth
- Sensor suhu dan kelembaban tanah
- Power Supply
- Sensor beban ditempatkan di dekat tanaman untuk mendapatkan bacaan berat buah atau sayuran yang dipanen.
- Mikrokontroler diprogram untuk mengambil bacaan dari sensor dan mengirimkan data ke database online.
- Sensor suhu dan kelembaban tanah dipasang di tanah dan mengirimkan data kondisi tanah dan tanaman ke database online.
- Pemilik dapat mengakses database online untuk melihat kondisi tanaman dan berat panen dengan lebih mudah.
#include <ESP8266WiFi.h> // Library untuk menggunakan modul WiFi ESP8266
#include <PubSubClient.h> // Library untuk menggunakan protokol MQTT
#include <HX711.h> // Library untuk menggunakan sensor berat
#include <DHT.h> // Library untuk menggunakan sensor suhu dan kelembaban
// Inisialisasi SSID dan password WiFi
const char* ssid = "nama_ssid_wifi";
const char* password = "password_wifi";
// Inisialisasi MQTT broker dan topik
const char* mqttBroker = "broker.mqtt.com";
const char* mqttTopic = "smart_farming";
// Inisialisasi pin sensor berat
const int LOADCELL_DOUT_PIN = D3;
const int LOADCELL_SCK_PIN = D4;
// Inisialisasi pin sensor suhu dan kelembaban
const int DHT_PIN = D5;
// Inisialisasi objek sensor berat
HX711 scale(LOADCELL_DOUT_PIN, LOADCELL_SCK_PIN);
// Inisialisasi objek sensor suhu dan kelembaban
DHT dht(DHT_PIN, DHT11);
// Inisialisasi objek WiFi dan MQTT client
WiFiClient wifiClient;
PubSubClient mqttClient(wifiClient);
void setup() {
// Mengatur komunikasi serial
Serial.begin(115200);
// Menghubungkan ke WiFi
WiFi.begin(ssid, password);
while (WiFi.status() != WL_CONNECTED) {
delay(1000);
Serial.println("Connecting to WiFi...");
}
Serial.println("Connected to WiFi");
// Menghubungkan ke broker MQTT
mqttClient.setServer(mqttBroker, 1883);
while (!mqttClient.connected()) {
Serial.println("Connecting to MQTT broker...");
if (mqttClient.connect("NodeMCUClient")) {
Serial.println("Connected to MQTT broker");
} else {
Serial.print("Failed with state ");
Serial.println(mqttClient.state());
delay(2000);
}
}
// Mengatur skala pembacaan sensor berat
scale.set_scale(2280.f);
scale.tare();
}
void loop() {
// Membaca berat pada sensor berat
float weight = scale.get_units();
// Membaca suhu dan kelembaban pada sensor DHT11
float temperature = dht.readTemperature();
float humidity = dht.readHumidity();
// Mengirimkan data ke broker MQTT
char weightStr[10], temperatureStr[10], humidityStr[10];
dtostrf(weight, 4, 2, weightStr);
dtostrf(temperature, 4, 2, temperatureStr);
dtostrf(humidity, 4, 2, humidityStr);
mqttClient.publish(mqttTopic, weightStr);
mqttClient.publish(mqttTopic, temperatureStr);
mqttClient.publish(mqttTopic, humidityStr);
// Tunggu selama 1 detik
delay(1000);
}
Tidak ada komentar:
Posting Komentar