lampiran a pedoman penggunaan alat peraga sistem...
TRANSCRIPT
50
LAMPIRAN A
PEDOMAN PENGGUNAAN
“Alat Peraga Sistem Pemantauan Energi Menggunakan
TEG (Thermo Electric Generator) dan TEC (Thermo Electric
Cooler)”
51
PEDOMAN PENGGUNAAN
“Alat Peraga Sistem Pemantauan Energi Menggunakan
TEG (Thermo Electric Generator) dan TEC (Thermo Electric Cooler)”
1. Tujuan
a. Melatih praktikan agar dapat melakukan pemantauan energi.
b. Memantau pemanenan energi listrik yang ramah lingkungan yang
dihasilkan dari TEG (Thermo Electric Generator) dan TEC (Thermo
Electric Cooler) dalam bentuk grafik.
2. Dasar Teori
Konsep energi terbarukan mulai dikenal pada tahun 1970-an. Energi
terbarukan adalah sumber energi yang dapat dengan cepat dipulihkan kembali
secara alami, dan prosesnya berkelanjutan. Energi yang di hasilkan dari gradien
temperatur adalah salah satu contoh dari energi terbarukan tersebut. TEG
(Thermo Electric Generator) dan TEC (Thermo Electric Cooler) merupakan
modul yang dapat digunakan dalam pemanenan energi dengan menggunakan
prinsip pemanenenan gradient temperature tersebut.
Untuk menghasilkan tegangan dari gradient temperatur menggunakan modul
TEG /TEC yaitu dengan cara menempatkan kedua sisi permukanan TEG/TEC
tersebut di 2 temperatur yang berbeda, dengan begitu maka akan dihasilkan
tegangan.
a. Thermoelectric Generator
Thermoelectric generator didasarkan pada efek Seebeck. Jika panas
diterapkan pada rangkaian di persambungan dari dua konduktor yang berbeda,
arus listrik akan dihasilkan. Ini adalah perangkat solid state, tidak seperti dinamo
yang mempunyai bagian bergerak sehingga tidak menimbulkan suara saat
bekerja[7].
52
Thermoelectric generator sederhana terdiri dari thermocouple yang terdiri
dari tipe – n (bahan dengan kelebihan elektron) dan tipe – p (bahan dengan
kekurangan elektron) elemen yang terhubung listrik secara seri dan panas
secara paralel. Masukan panas dari satu sisi dan ditolak dari sisi yang lain,
menghasilkan tegangan di seluruh pasangan thermoelectric. Besarnya tegangan
yang dihasilkan sebanding dengan gradient temperatur [8].
Gambar 2.1. Konstruksi elemen TEG [9].
b. Thermoelectric Cooling
Perangkat thermoelectric cooling didasarkan pada efek Peltier.
Jika arus listrik melewati rangkaian dari dua konduktor yang tidak sama,
maka akan terjadi kenaikan atau penurunan temperatur di persambungan
tergantung dari arah aliran arus listrik. Lenz menyimpulkan bahwa arah dari
aliran arus listrik menentukan apakah panas diserap atau dihasilkan pada
persambungan. Ketika masukan listrik diterapkan pada thermocouple,
elektron bergerak dari bahan tipe – p ke bahan tipe – n menyerap energi panas
pada persambungan dingin. Elektron – elektron membuang kelebihan energi
pada persambungan panas karena elektron mengalir dari tipe – n kembali ke
bahan tipe – p melalui konektor listrik. Membuang panas dari sisi panas akan
menurunkan temperatur pada sisi dingin dengan cepat, besarnya penurunan
bergantung dari arus lisrik yang diberikan [8].
53
Gambar 2.2 Cara kerja TEC berdasar efek Peliter [10].
3. Praktikum
Pada praktikum kali ini akan dilaksanakan secara 2 tahap. Tahap yang pertama
penulisan program yang bertujuan untuk pengambilan data dan membuat User
Interface berupa grafik untuk menampilkan hasil dari pembacaan modul TEG/TEC.
Dan yang ke2 yaitu pengaturan perangkat keras.
Langsung saja kita mulai tahap 1 :
a. Buka program ARDUINO, klik ( )
b. Lalu klik New Project ( ) atau klik FILENew Project, maka
akan tampil seperti ini:
54
c. Lalu ketik program di bawah ini pada lembar yang sudah tersedia:
#include <Wire.h>
#include <OneWire.h>
#include <DallasTemperature.h>
#define ONE_WIRE_BUS 2
#define ONE_WIRE_BUS 3
OneWire oneWire(ONE_WIRE_BUS);
OneWire oneWire2(ONE_WIRE_BUS);
DallasTemperature
sensorSuhu(&oneWire);
DallasTemperature
sensorSuhu2(&oneWire);
float suhuSekarang;
float suhuTepat;
float suhuSekarang2;
float suhuTepat2;
double temp_amp = 0.0;
float temps, adcVolt, cal_value;
float Volt1;
float Volt;
float dayatotal;
float ampere;
float deltaT;
float resistor;
void setup()
{
Serial.begin(9600);
sensorSuhu.begin();
sensorSuhu2.begin();
}
void loop()
{
volt();
amper();
daya();
suhu();
AT();
tampil();
}
void volt()
{
unsigned int datav[100];
float volt2 =0;
for(int i=0 ;i<100; i++)
{
datav[i]= analogRead(1);
delay(10);
volt2 = volt2 + datav[i];
}
volt2= volt2/100;
Volt=((volt2*0.00489)*5);
}
1
void amper()
{
resistor =10;
adcVolt = Volt/resistor;
}
void daya()
{
dayatotal = Volt * adcVolt;
}
void suhu()
{
suhuSekarang = ambilSuhu();
suhuTepat = suhuSekarang;
suhuSekarang2 = ambilSuhu2();
suhuTepat2 = suhuSekarang2;
}
float ambilSuhu()
{
sensorSuhu.requestTemperatures();
float suhu=
sensorSuhu.getTempCByIndex(0);
return suhu;
}
float ambilSuhu2()
{
sensorSuhu2.requestTemperatures();
float suhu2
=sensorSuhu2.getTempCByIndex(1);
return suhu2;
}
void AT()
{
deltaT = suhuTepat - suhuTepat2;
}
void tampil()
{
Serial.print(Volt);
Serial.print("| ");
Serial.print(adcVolt);
Serial.print("| ");
Serial.print(dayatotal);
Serial.print("| ");
Serial.print(suhuTepat);
Serial.print("| ");
Serial.print(suhuTepat2);
Serial.print("| ");
Serial.println(deltaT);
}
2
55
d. Pada program arduino ini, nilai pada variable yang bernama ”resistor” dapat di
ubah-ubah nilainya dari range 1 – 100 ohm. Nilai variable ”resistor” merupakan
nilai beban yang diinginkan sehingga nilai arus dan daya dapat ditampilkan
dalam grafik. Program dibawah adalah program untuk mengubah nilai resistor
: void amper()
{ resistor =10;
adcVolt = Volt/resistor;
}
e. Sambungkan USB Arduino dengan komputer, lalu atur alamat Com Arduino
yang digunakan. Klik TOOLSPORTPilih COM yang digunakanOK
f. Lalu klik Upload ( ) untuk menjalankan program yang telah di tulis.
g. Bila program sudah di upload dan tidak terjadi error selanjutnya buka serial
monitor pada
Arduino. Klik TOOLSSERIAL MONITOR OK. Atau klik ( ) untuk
melihat serial monitor. Maka tampilan akan seperti ini:
Gambar 3.1 Gambar Serial Monitor
h. Selanjutnya Buka program PROCESSING. Klik simbol ( ) untuk masuk
pada lembar Processing, maka tampilan akan seperti ini:
56
i. Lalu ketik program di bawah ini pada lembar yang sudah tersedia:
import processing.serial.*;
Serial myPort;
PrintWriter output;
String val;
float inBytesDaya,inByteValue;
int xPosDaya = 500;
int lastheightDaya =500;
int xPosLastDaya = 500;
PFont f,F;
float w = 900;
float h = 690;
float w1 = 900;
float h1 = 690;
float inByteVoltage1;
String inStringVoltage;
float inByteVoltage;
int xPosVoltage = 40;
float lastheightVoltage =40;
float xPosLastVoltage = 40;
String inStringCurrent;
float inByteCurrent;
int xPosCurrent = 500;
int lastheightCurrent =500;
int xPosLastCurrent = 500;
String inStringDaya;
String inStringsuhuhot;
String inStringsuhucold;
float inBytesuhuhot, inBytesuhucold;
String inStringsuhucold;
String inStringsuhuAT;
float inBytesuhuAT;
float MAX_OF_VOLTAGE_INPUT = 1.5;
float MAX_OF_CURRENT_INPUT = 0.150 ;
float MAX_OF_DAYA_INPUT = 0.125;
void setup(){
size(900,690);
myPort = new
Serial(this,"COM18",9600);
output = createWriter(
“F:/arduino_project_2017data.txt" );
// alamat simpan file
myPort.bufferUntil('\n');
f = createFont("Arial",12,true);
F = createFont("Arial",18,true);
stroke(127,34,255);
background(70);}
void draw(){
stroke(127,34,255);
tampil();
suhuhot();
suhucold();
suhuAT();
drawTableVoltage();
drawTableCurrent();
drawTableDaya();
}
void serialEvent (Serial myPort) {
stroke(127,34,255);
if(myPort.available() > 0)
{ String inString =
myPort.readStringUntil('\n');
if (inString != null)
{ String[]inStringValue =
splitTokens(inString,"|");
inStringVoltage = inStringValue[0];
inStringCurrent = inStringValue[1];
inStringDaya = inStringValue[2];
inStringsuhuhot = inStringValue[3];
inStringsuhucold = inStringValue[4];
inStringsuhuAT = inStringValue[5];
inStringVoltage =
trim(inStringVoltage);
inStringCurrent =
trim(inStringCurrent);
inStringDaya = trim(inStringDaya);
inStringsuhuhot =
trim(inStringsuhuhot);
inStringsuhucold =
trim(inStringsuhucold);
inStringsuhuAT = trim(inStringsuhuAT);
inByteVoltage = float(inStringVoltage);
inByteCurrent = float(inStringCurrent);
inBytesuhuhot = float(inStringsuhuhot);
inBytesuhucold =
float(inStringsuhucold);
inBytesuhuAT = float(inStringsuhuAT);
inBytesDaya = float(inStringDaya);
inByteVoltage = map(inByteVoltage, 0,
MAX_OF_VOLTAGE_INPUT, 140, height - 300);
inByteCurrent = map(inByteCurrent, 0
,MAX_OF_CURRENT_INPUT, 140,height -300 ); inBytesDaya = map(inBytesDaya, 0
,MAX_OF_DAYA_INPUT , 0 ,height - 389 );
}
}
}
void drawTableVoltage(){
stroke(127, 34, 255);
stroke(175);
line(40,height-40,40,380);
stroke(175);
line(40,height-40,width-500,h-40);
textFont(F);
fill(255);
textAlign(RIGHT);
text("Voltage (mV)",110,370);
textAlign(RIGHT);
text("^",44,392);
textAlign(RIGHT);
text(">",400,657); //(sumbu y, sumbu x)
textAlign(RIGHT);
text("TIME (m/s)",270,670);
fill(240);
textFont(f);
textAlign(RIGHT);
text("1.50 ---",40,3925);
textAlign(RIGHT);
text("1.25 -",40,437.2);
textAlign(RIGHT);
text("1.00 -",40,480.4);
textAlign(RIGHT);
text("0.75 ---",40,523.4);
textAlign(RIGHT); 1 2
57
text("0.50 -",40,566.6);
textAlign(RIGHT);
text("0.25 -",40,609.8);
textAlign(RIGHT);
text("0.00 -",40,653);
line(xPosLastVoltage,
lastheightVoltage, xPosVoltage, height -
inByteVoltage + 100);
xPosLastVoltage = xPosVoltage;
lastheightVoltage= height-inByteVoltage
+ 100;
println("last voltage :" +
lastheightVoltage );
if (xPosVoltage >= width - 500)
{
xPosVoltage = 40;
xPosLastVoltage = 40;
stroke(127,34,255);
background(70);
}
else
{ stroke(127,34,255);
xPosVoltage++; }
}
void drawTableCurrent(){
stroke(175);
line(500,h-310,500,648);
stroke(175);
line(500,h-40,850,h-40);
textFont(F);
fill(255);
textAlign(RIGHT);
text("Current (mA)",550,370);
textAlign(RIGHT);
text("^",504,392); //(sumbu y, sumbu x)
textAlign(RIGHT);
text(">",850,657); //(sumbu y, sumbu x)
textAlign(RIGHT);
text("TIME (m/s)",750,670);
fill(240);
textFont(f);
textAlign(RIGHT);
text("150 ---",500,394);
textAlign(RIGHT);
text("125 -",500,437.2);
textAlign(RIGHT);
text("100 -",500,480.4);
textAlign(RIGHT);
text("75 ---",500,523.4);
textAlign(RIGHT);
text("50 -",500,566.6);
textAlign(RIGHT);
text("25 ---",500,609.8);
textAlign(RIGHT);
text("0.0 ---",500,653);
stroke(127,200,255);
line(xPosLastCurrent,
lastheightCurrent,
xPosCurrent,height-inByteCurrent + 100);
println("lst cusrrent :"
+lastheightCurrent);
xPosLastCurrent = xPosCurrent;
lastheightCurrent= int(height-
inByteCurrent + 100);
if (xPosCurrent >= width - 40)
{
xPosCurrent = 500;
xPosLastCurrent = 500;
stroke(127,34,255);
background(70);
}
else
{
stroke(127, 34, 255);
xPosCurrent++;
}
}
void drawTableDaya(){
stroke(127, 34, 255);
stroke(175);
line(500,height-350,500,15);
stroke(175);
line(500,height-350,850,height-
350);
textFont(F);
fill(255);
textAlign(RIGHT);
text("Daya (mW)",480,20);
textAlign(RIGHT);
text("^",504,30);
textAlign(RIGHT);
text(">",851,347);
textAlign(RIGHT);
text("TIME (m/s)",750,360);
fill(240);
textFont(f);
textAlign(RIGHT);
text("250 ----",500,30);
textAlign(RIGHT);
text("175 --",500,106.5);
textAlign(RIGHT);
text("100 ----",500,187);
textAlign(RIGHT);
text("25 --",500,263);
textAlign(RIGHT);
text("0.0 ----",500,344);
stroke(127,1200,255);
line(xPosLastDaya, lastheightDaya,
xPosDaya, height - inBytesDaya - 350
);
xPosLastDaya= xPosDaya;
lastheightDaya= int( height -
inBytesDaya - 350);
if (xPosDaya >= width - 40)
{ xPosDaya = 500;
xPosLastDaya = 500;
background(70);
}
else
{ xPosDaya++; }
}
3 4
58
j. Agar program Arduino yang telah kita tulis sebelumnya dapat diakses oleh
Processing, maka kita harus menyamakan alamat Com yang terdapat pada
Arduino dan Processing. Potongan program dibawah adalah program untuk
menyamakan Com kedua Aplikasi:
myPort = new Serial(this,"COM18",9600);
“COM18” adalah alamat Arduino.
k. Lalu klik RUN( ) untuk menjalankan program yang telah di tulis.
Maka akan tertampil User Interface seperti ini:
Gambar 3.2 Gambar User Interface
void tampil()
{
textFont(F);
fill(255);
textAlign(RIGHT);
text("TRAINER ENERGI BARU DAN
TERBARUKAN",400,100);
}
void suhuhot()
{
textFont(F);
fill(255);
textAlign(RIGHT);
text("SUHU PANAS",150,150);
text("=",200,150);
text(inBytesuhuhot + " ᵒC",300,150);
}
void suhucold()
{
textFont(F);
fill(255);
textAlign(RIGHT);
text("SUHU DINGIN",152,200);
text("=",200,200);
text(inBytesuhucold + " ᵒC",300,200);
}
void suhuAT()
{
textFont(F);
fill(255);
textAlign(RIGHT);
text("SUHU ∆T",110,250);
text("=",200,250);
text(inBytesuhuAT + " ᵒC",300,250);
} 5 6
59
l. Pada Processing ini selain menampilkannya dalam bentuk grafik, nilai akan
tersimpan pula dalam bentuk .txt, potongan program di bawah merupakan
program yang digunakan untuk menunjuk lokasi dan nama file yang akan
digunakan sebagai penyimpanan file:
output=createWriter(“F:/arduino_project_2017/data.txt" );
pada program diatas menunjukan bawa file akan disimpan dengan nama
“data.txt” yang terletak pada folder bernama “arduino_project_2017” yang
berlokasi di “F”. Sehingga lokasi dan nama file dapat diubah- ubah sesuai
kebutuhan.
Selanjutnya kita mulai pada tahap 2 :
Pada tahap 2 ini kita akan mengatur setpoint pada pemanas sistem dan
pendingin sistem. Gambar di bawah adalah bagian perangkat keras yang telah
direalisasikan.
Gambar 3.3 Gambar Perangkat Keras Sistem dan keterangan
Keterangan Gambar :
1. Bagian pemanas sistem.
2. Slot modul TEG/TEC.
3. Bagian pendingin sistem.
4. Bagian Modul Thermostat pemanas sistem.
5. Bagian Modul Thermostat pendingin sistem.
6. Bagian panel Arduino
7. Panel input.
1
2
3
4
5
6
7
60
Langkah untuk praktikum :
1. Naikan bagian pemanas sistem, kencangkan dengan baut yang telah tersedian.
2. Atur setpoint suhu yang diinginkan pada Thermostat pemanas dan pendingin.
Cara mengatur setpoint pada modul themostat :
a. Tekan tombol “Set” untuk dapat mengatur suhu, tampilan akan
berkedip.
b. Selanjutnya tekan tombol naik “ + ” atau turun “ – “ untuk
menambah atau menguranggi suhu sesuai dengan kebutuhan.
c. Apabila suhu telah sesuai dengan yang diinginkan tekan tombol
“Set” untuk menyimpan suhu yang telah diset.
3. Selanjutnya buka kembali User interface pada Processing. Apabila pembacaan
suhu pada User Interface Processing telah menunjukan nilai setpoint yang
dimasukan sebelumnya pada kedua sistem. Masukan modul TEG/TEC pada
slot yang telah tersedia.
4. Turunkan kembali pemanas sistem. Kencangkan baut yang terdapat pada
pemanas sistem, pastikan pemanas sistem, modul TEG/TEC, dan pendingin
sistem telah menempel dengan baik.
5. Sambungkan kedua kaki modul TEG/TEC kepanel input yang sudah tersedia.
6. Amati nilai outputan yang tergambar pada grafik.
62
ANGKET
Alat Peraga Sistem Pemantauan Energi Menggunakan
TEG (Thermo Electric Generator) dan TEC (Thermo Electric Cooler).
• Berilah tanda check list ( √ )pada kotak penilaian yang sesuai dengan kenyataan
yang ada.
No. Aspek yang di opservasi Penilaian
Baik Cukup Buruk
1. Apakah alat peraga sistem ini mudah
digunakan?
2. Apakah alat peraga sistem ini bekerja dengan
baik?
3. Apakah alat peraga sistem ini membantu anda
dalam mengerjakan praktikum?
4. Apakah alat peraga sistem ini membantu anda
dalam memahami cara kerja Thermocopel?
5. Apakah alat peraga sistem ini membantu anda
dalam memahami karakteristik Thermocopel?
6. Apakah pedoman penggunaan alat peraga
sistem ini mudah dimengerti?
7. Apakah pedoman penggunaan alat peraga
sistem ini membantu dalam menggunakan alat
peraga sistem ini?
8. Apakah alat peraga sistem ini lebih efektif
dari alat peraga yang digunakan sebelumnya?
9. Apakah hasil percobaan yang dihasilkan alat
peraga sistem ini lebih mudah dipahami dari
alat peraga yang digunakan sebelumnya?
10. Apakah alat peraga sistem ini lebih
memudahkan anda dalam mendapat hasil
praktikum?