Professional Documents
Culture Documents
6a Bunga Diva Camilla 2042201009 p4 Sister
6a Bunga Diva Camilla 2042201009 p4 Sister
DEPARTEMENT:
LABORATORIUM:
PROJECT COURSE:
TITLE :
PEMODELAN RTOS (REAL-TIME OPERATING SYSTEM) MENGGUNAKAN
KONTROLER ESP32
DATE SIGNATURE SCALE SHEET OF
DRAWN 01/05/2023 IDS
NONE 1 OF 19
JOB NO. Bunga Diva Camilla – 2042201009
DOC NO. VI190629 – 04 REV 0
INT. REV. 0A
SHEET 2 OF 27
REV
JOB NO. : BUNGA DIVA C
P4 SISTER
01-05-2023
REV
JOB NO. : BUNGA DIVA C
P4 SISTER
01-05-2023
REV
JOB NO. : BUNGA DIVA C
P4 SISTER
01-05-2023
DAFTAR ISI
DAFTAR ISI........................................................4
DAFTAR GAMBAR.....................................................5
1. DASAR TEORI....................................................6
2 METODE PERCOBAAN..............................................11
3 HASIL PERCOBAAN...............................................18
4 ANALISA.......................................................20
5 KESIMPULAN....................................................21
LAMPIRAN.........................................................22
REV
JOB NO. : BUNGA DIVA C
P4 SISTER
01-05-2023
DAFTAR GAMBAR
REV
JOB NO. : BUNGA DIVA C
P4 SISTER
01-05-2023
1. DASAR TEORI
RTOS atau biasa disebut dengan Real-Time Operating System adalah sistem operasi
yang dirancang khusus untuk mengelola dan menjalankan aplikasi pada sistem tertanam
(embedded systems) dengan kebutuhan waktu respons yang ketat. Berbeda dengan sistem
operasi umum yang digunakan pada komputer desktop atau server, RTOS dioptimalkan untuk
menjalankan tugas-tugas dalam waktu yang telah ditentukan (real-time) dengan tingkat
prioritas yang ditetapkan.
RTOS dirancang untuk memberikan respons yang deterministik terhadap kejadian
yang terjadi. Ini berarti bahwa sistem mampu menjalankan tugas dalam waktu yang telah
ditentukan secara konsisten, dengan tingkat ketepatan waktu yang tinggi. Hal ini sangat
penting dalam sistem tertanam yang menghadapi batasan waktu yang ketat, seperti dalam
sistem kontrol industri atau sistem kendali pesawat terbang.
RTOS sangat cocok untuk diterapkan pada embedded system karena memiliki
beberapa keunggulan. Keunggulan tersebut diantaranya:
Dapat berjalan pada perangkat keras dengan sumber daya yang terbatas.
Memiliki tingkat modularitas yang tinggi.
Dapat dikembangkan dan digunakan ulang (dalam hal ini kode dari RTOS).
Memiliki beberapa fitur yang terdokumentasi lengkap seperti:
- Strategi scheduling.
- Maksimal waktu eksekusi untuk setiap proses
- Mekanisme internal untuk mengatur latency
- Memiliki sistem pengaturan interrupt untuk proses-proses penting
- Konfigurasi kernel dapat diatur secara detail oleh pengembang.
REV
JOB NO. : BUNGA DIVA C
P4 SISTER
01-05-2023
1.2 ESP 32
REV
JOB NO. : BUNGA DIVA C
P4 SISTER
01-05-2023
REV
JOB NO. : BUNGA DIVA C
P4 SISTER
01-05-2023
1.5 DHT 11
REV
JOB NO. : BUNGA DIVA C
P4 SISTER
01-05-2023
REV
JOB NO. : BUNGA DIVA C
P4 SISTER
01-05-2023
2 METODE PERCOBAAN
REV
JOB NO. : BUNGA DIVA C
P4 SISTER
01-05-2023
REV
JOB NO. : BUNGA DIVA C
P4 SISTER
01-05-2023
#define LED1 21
#define LED2 19
REV
JOB NO. : BUNGA DIVA C
P4 SISTER
01-05-2023
#define LED3 17
SemaphoreHand1e_t xSerialSemaphore;
void Loop(){}
void Task_LED1(void*pvParameters_attribute_((unused)))
{ pinMode(LED1, OUTPUT);
for(;;){
digitalWrite(LED1,!digitaLRead(LED1)); vTaskDeIay(30);
}
}
REV
JOB NO. : BUNGA DIVA C
P4 SISTER
01-05-2023
void Task_LED2(void*pvParameters_attribute_((unused)))
{ pinMode(LED2, OUTPUT);
for(;;){
digitalWrite(LED2,!digitaLRead(LED2)); vTaskDeIay(60);
}
}
void Task_LED3(void*pvParameters_attribute_((unused)))
{ pinMode(LED2, OUTPUT);
for(;;){
digitalWrite(LED3,!digitaLRead(LED3)); vTaskDeIay(90);
}
}
b. Sensor DHT11 dengan LCD I2C 16x2
#include <stdio.h>
#include <freertos/FreeRTOS.h> #include
<freertos/task.h> #include "esp_system.h" #include
"dht.h"
#include <Wire.h>
#include <LiquidCrystal_I2C.h>
REV
JOB NO. : BUNGA DIVA C
P4 SISTER
01-05-2023
while (1) {
if (dht_read_data(&sensor) == ESP_OK) { lcd.setCursor(0,
0); lcd.print("Temp: "); lcd.print(sensor.temperature);
lcd.print(" C");
REV
JOB NO. : BUNGA DIVA C
P4 SISTER
01-05-2023
3 LED
REV
JOB NO. : BUNGA DIVA C
P4 SISTER
01-05-2023
3 HASIL PERCOBAAN
3. 1 Percobaan 1
Setelah melakukan praktikum, didapat hasil percobaan 1,
yaitu rangkaian 3 LED untuk menghidupkan dan mematikan LED
dengan frekuensi yang berbeda menggunakan kontroler ESP32. LED
yang digunakan adalah berwarna hijau, kuning, merah. Dimana
tiap LED dirangkai secara seri dan membutuhkan resistor untuk
tiap LED agar LED dapat hidup.
REV
JOB NO. : BUNGA DIVA C
P4 SISTER
01-05-2023
REV
JOB NO. : BUNGA DIVA C
P4 SISTER
01-05-2023
4 ANALISA
REV
JOB NO. : BUNGA DIVA C
P4 SISTER
01-05-2023
5 KESIMPULAN
Berdasarkan analisis yang dilakukan, dapat diambil beberapa kesimpulan sebagai berikut:
1. Pada percobaan pertama praktikan berhasil menyalakan LED merah, hijau, dan kuning
dengan beda frekuensi sesuai perintah pada kode program
2. Pada percobaan kedua praktikan berhasil membuat sensor DHT 11 melakukan sensing
temperatur dan kelembaban serta menampilkan hasilnya pda LCD
3. Pada percobaan ketiga praktikan berhasil memvariasikan percobaan satu dan dua,
sehingga didapatkan sensor DHT 11 yang dapat mensensing temperatur dan kelembaban,
lalu menampilakn hasil pada LCD dan LED merah akan menyala sebagai safety apabila
suu dan kelembaban melabihi set poin yang telah diatur dalam source code
4. Penggunaan RTOSS (Real-Time Operating System Scheduler) dalam library dan source
code program ESP32 memberikan keuntungan signifikan. RTOSS memungkinkan
program untuk memilih prioritas tugas yang harus dikerjakan terlebih dahulu,
meningkatkan kinerja perangkat, dan mengoptimalkan penggunaan memori.
5. Pada percobaan ketiga menunjukkan fleksibilitas dan kemudahan dalam menjalankan
program berkat penggunaan kontroler ESP32 yang didukung dengan RTOSS sehingga
program yang lebih kompleks dan berat dapat dijalankan jauh lebih efisien.
LAMPIRAN
Pelaksanaan Praktikum Hari Rabu, 31 Mei 2023
REV
JOB NO. : BUNGA DIVA C
P4 SISTER
01-05-2023
Percobaan 1
REV
JOB NO. : BUNGA DIVA C
P4 SISTER
01-05-2023
Percobaan 2
REV
JOB NO. : BUNGA DIVA C
P4 SISTER
01-05-2023
Variasi
REV
JOB NO. : BUNGA DIVA C
P4 SISTER
01-05-2023
#define DHT_PIN 4
// Alamat I2C untuk LCD I2C (sesuaikan dengan alamat LCD I2C Anda)
#define LCD_ADDRESS 0x27
while (1) {
// Baca suhu dan kelembaban dari sensor DHT
float temperature = dht.readTemperature();
float humidity = dht.readHumidity();
lcd.setCursor(0, 1);
lcd.print("Humidity: ");
lcd.print(humidity);
lcd.print("%");
REV
JOB NO. : BUNGA DIVA C
P4 SISTER
01-05-2023
void setup() {
// Inisialisasi Serial
Serial.begin(115200);
// Inisialisasi LCD
lcd.begin(16, 2);
lcd.backlight(); // Hidupkan backlight LCD
REV
JOB NO. : BUNGA DIVA C
P4 SISTER
01-05-2023
void loop() {
// Tidak ada yang perlu dilakukan di loop utama
}