Your browser doesn't support the video tag

Seven Segment Display (7 Segment Display) dalam bahasa Indonesia disebut dengan Layar Tujuh Segmen adalah komponen Elektronika yang dapat menampilkan angka desimal melalui kombinasi-kombinasi segmennya. Seven Segment Display pada umumnya dipakai pada Jam Digital, Kalkulator, Penghitung atau Counter Digital, Multimeter Digital dan juga Panel Display Digital seperti pada Microwave Oven ataupun Pengatur Suhu Digital . Dan sekarang saya akan membuat Jam Digital dari Seven Segment Display.
Jam Digital adalah suatu alat yang dirancang untuk mengukur waktu. Rangkaian Jam digital menggunakan komponen dan juga program yang disusun sedemikian rupa sehingga proses kerjanya seperti pada jam yang ada di pasaran.
Buat sesuai rangkaian diatas menggunakan arduino uno atau nano. Cukup mudah dengan beberapa komponen berikut:
1) 6 buah Sevent Segment (CA).
2) 15 buah NPN Transistor.
3) 20 buah resistor 1K
4) DS1307 real time clock IC.
5) one coin cell battery holder.
7) 4 Push Button
8) ATMega328 with arduino bootloader.
9) Arduino IDE
10) 7805 voltage regulator.
11) 16MHz crystal.
12) 2 buah capasitor 22pF.
13) IC soket 28 pin.
14) Capasitor 10 uF
15) Capasitor 0.1 uF.
17) IC 4017 counter
18) 32.768KHz crystal

Setelah dirangkai maka saatnya membuat Coding Arduino.
http://www.instructables.com/files/orig/FE5/9Z19/GLGCJGTV/FE59Z19GLGCJGTV.txt
Dari link diatas silahkan ketik atau copas. Jangan lupa masukkan library RTC agar program Jam Digitalmu bekerja dengan baik.
Selamat Berkarya
Best Regard...
Friday, 15 January 2016
Jam Digital Seven Segment
Monday, 11 January 2016
Dokumentasi J-Creator Electronics
Friday, 1 January 2016
Pulse Width Modulation (PWM)
Pulse Width Modulation (PWM) merupakan suatu teknik untuk mendapatkan hasil output analog dengan pendekatan secara digital. Teknik PWM ini mengendalikan lebar pulsa berdasarkan modulator. Meski bapat diterapkan dalam penyandian informasi komunikasi, penerapan utamanya lebih pada kendali daya perangkat listrik, semisal motor. Kendali digital digunakan untuk membentuk sebuah gelombang kotak (square wave), sebuah gelombang signal untuk switch antara kondisi on dengan off. Pola kondisi on dan off tersebut merepresentasikan suatu nilai full on pada Arduino (5 volt) dan kondisi off (0 volt) dengan mengubah perbandingan ratio antara waktu kondisi on dengan kondisi off dalam satu periode. Durasi waktu on disebut dengan istilah lebar pulsa, pulse width. Untuk mendapatkan suatu variasi hasil output nilai analog, dapat dilakukan dengan mengubah lebar pulsa tersebut. Perbandingan antara waktu signal on dengan waktu satu periode disebut dengan duty cycle.
Duty Cycle
Duty cycle dapat diartikan sebagai perbandingan antara waktu signal on dengan waktu keseluruhan untuk satu periode. Besarnya nilai duty cycle dinyatakan dalam percent. Nilai duty cycle dapat bervariasi mulai dari 0% tidak ada signal on, hingga 100% tidak ada signal off, atau selalu dalam kondisi signal on.

Sebagai contoh duty cycle 60% dengan durasi 1000 ms. Maka waktu saat signal on ialah 60% dari 1000 ms, yakni 600 ms. Sedangkan untuk waktu signal off ialah selisih antara durasi keseluruhan dengan waktu signal on, yakni 400 ms.
Implementasi
Dengan melakukan pengulangan pola duty cycle tersebut terus-menerus secara cepat pada sebuah LED, dapat digunakan untuk mengatur nyala terangnya. Pengulangan pola duty cycle tersebut seolah-olah membuat LED menyala dengan nilai tegangan yang tetap (steady) antara 0 volt hingga 5 volt. Padahal sebenarnya terjadi kondisi perubahan signal on-off secara cepat. Bila digunakan pada motor DC, semakin besar nilai PWM maka semakin cepat laju putaran motor DC tersebut, dan demikian sebaliknya.
Nilai rata-rata tegangan dan juga arus yang diberikan ke rangkaian beban dikendalikan melalui duty cycle tersebut. Semakin besar duty cycle (semakin lama waktu signal on) maka semakin besar nilai daya yang diberikan ke rangkaian beban.
Penerapan PWM dalam Arduino Uno dapat dilakukan dengan menggunakan analogWrite() dengan nilai antara 0 hingga 255, resolusi ADC 8 bit. Dimana analogWrite(255) memiliki nilai duty cycle 100% atau selalu menyala, analogWrite(127) memiliki nilai duty cycle 50%, dan lain sebagainya. Untuk pin pada board Arduino Uno yang dapat digunakan menghasilkan output PWM ialah pin 3, 5, 6, 9, 10, dan 11.
Best Regard
Duty Cycle
Duty cycle dapat diartikan sebagai perbandingan antara waktu signal on dengan waktu keseluruhan untuk satu periode. Besarnya nilai duty cycle dinyatakan dalam percent. Nilai duty cycle dapat bervariasi mulai dari 0% tidak ada signal on, hingga 100% tidak ada signal off, atau selalu dalam kondisi signal on.

Sebagai contoh duty cycle 60% dengan durasi 1000 ms. Maka waktu saat signal on ialah 60% dari 1000 ms, yakni 600 ms. Sedangkan untuk waktu signal off ialah selisih antara durasi keseluruhan dengan waktu signal on, yakni 400 ms.
Implementasi
Dengan melakukan pengulangan pola duty cycle tersebut terus-menerus secara cepat pada sebuah LED, dapat digunakan untuk mengatur nyala terangnya. Pengulangan pola duty cycle tersebut seolah-olah membuat LED menyala dengan nilai tegangan yang tetap (steady) antara 0 volt hingga 5 volt. Padahal sebenarnya terjadi kondisi perubahan signal on-off secara cepat. Bila digunakan pada motor DC, semakin besar nilai PWM maka semakin cepat laju putaran motor DC tersebut, dan demikian sebaliknya.
Nilai rata-rata tegangan dan juga arus yang diberikan ke rangkaian beban dikendalikan melalui duty cycle tersebut. Semakin besar duty cycle (semakin lama waktu signal on) maka semakin besar nilai daya yang diberikan ke rangkaian beban.
Penerapan PWM dalam Arduino Uno dapat dilakukan dengan menggunakan analogWrite() dengan nilai antara 0 hingga 255, resolusi ADC 8 bit. Dimana analogWrite(255) memiliki nilai duty cycle 100% atau selalu menyala, analogWrite(127) memiliki nilai duty cycle 50%, dan lain sebagainya. Untuk pin pada board Arduino Uno yang dapat digunakan menghasilkan output PWM ialah pin 3, 5, 6, 9, 10, dan 11.
Best Regard
Monday, 28 December 2015
Sunday, 1 November 2015
Membuat Arduino Sendiri
Sudah lama sekali ingin posting tutorial membuat arduino sendiri, karena maraknya dunia Mikrokontroler dengan kehadiran mikrokontroler mungil bernama Arduino. Marilah kita belajar membuat Arduino dengan cara yang cukup mudah. Bagi yang menyukai project mikrokontroller dengan Arduino, tentu sudah tahu dengan istilah ‘bootloader’. Kalau diibaratkan dalam sebuah OS (Operating System), bootloader ini adalah semacam ‘kernel’ sederhana, yakni sekumpulan fungsi dasar yang menangani input output yang berhubungan dengan hardware, dan sekumpulan pustaka dasar yang menjembatani fungsi kompleks yang berjalan di atasnya. Di Arduino, bootloader ini berfungsi untuk menangani proses input output data saat Anda ‘mengisi’ program (istilah dalam Arduino adalah ‘sketch’), ke dalam Arduino melalui software IDE (Integrated Development System) Arduino. Mengisi sketch ke Arduino dengan burning program mikrokontroller (misalnya AVR/ATMega) adalah berbeda pengertiannya. Jika mengisi sketch adalah mengisi program yang berjalan di atas bootloader, burning program ke mikrokontroller adalah mengisi program yang benar-benar berdiri sendiri tanpa ketergantungan bootloader. Untuk detail perbedaan keduanya nanti akan saya tulis dalam artikel yang berbeda.
Kembali ke bootloader, jika Anda membeli board Arduino, bootloader sudah terprogram di dalam IC mikrokontroller Arduino (ATmega 8/168/328). Dengan demikian Anda bisa langsung mengisi ‘sketch’ (program Arduino) ke IC mikrokontroller Arduino. IC mikrokontroller yang telah terprogram Arduino ini kemudian dapat dipindah ke PCB lain yang memenuhi system minimum mikrokontroller. Jadi sebenarnya Arduino ini dapat berdiri sendiri tanpa harus dipasang di board Arduino. Nah, saat seperti inilah dibutuhkan pengetahuan untuk melakukan burning bootloader Arduino sendiri ke IC ATMega. Dengan demikian Anda tidak perlu membeli board Arduino lagi, cukup membeli IC ATMega saja yang nantinya akan diisi bootloader Arduino. Berikut ini adalah langkah-langkah mengisi bootloader Arduino menggunakan board Arduino Uno (bisa juga dengan board yang lain). Saya anggap sudah memiliki IDE Arduino terinstal dalam komputer Anda (dapat diunduh di www.arduino.cc) dan sudah familiar dengan burning sketch di board Arduino.
1. Buka IDE Arduino dan loading sketch ‘ArduinoISP’ di menu File | Examples | ArduinoISP.
Catatan untuk pengguna software Arduino 1.0, Anda harus mengubah script ‘delay (40)’ menjadi ‘delay (20)’ di bawah void heartbeat(). Cara mudah untuk mencari script tersebut adalah menggunakan menu Edit | Find atau melalui shortcut ctrl+F. Jika Anda tidak mengganti script tersebut akan muncul error ‘sync error (xxxx)’.
2. Pilih board ‘Arduino Uno’ di menu Tools | Board | Arduino Uno, pilih port serial yang terinstal dalam computer Anda di menu Tools | Serial Port, kemudian upload sketch ‘ArduinoISP’ di board Arduino melalui menu File | Upload. Jika Anda berhasil melakukannya, maka board Arduino Uno Anda sekarang sudah berfungsi board ISP (In System Programming), yakni board yang bisa mengisi program ke mikrokontroller lain melalui port MISO/MOSI
3. Kemudian siapkan IC ATMega 8/168/328 yang akan diisi bootloader Arduino, dan buatlah rangkaian sistem minimum sederhana sebagai berikut (bisa menggunakan breadboard/protoboard atau dijumper di PCB matriks)

4. Kembali ke software IDE Arduino, pilih tipe board yang nantinya akan digunakan IC tersebut di menu Tools | Board. Contoh, jika IC yang akan diburn boatloader ini akan dimasukkan ke board Arduino Uno, maka pilihlah ‘Arduino Uno’ di menu Tools | Board.
Catatan : untuk IC ATMega 8 hanya kompatibel diisi dengan tipe board ‘Arduino NG or older w/ Atmega8’
5. Pilih tipe programmer sebagai ‘Arduino as ISP‘ di ‘Tools | Programmer‘. Mulailah mengisi bootloader ke IC ATMega dengan memilih menu Tools | Burn Bootloader. Tunggu beberapa saat, sampai muncul notifikasi bahwa proses pengisian bootloader sudah selesai di jendela bawah di IDE Arduino.
Selamat, kini IC ATMega Anda yang sebelumnya blank sudah terisi bootloader Arduino. Untuk selanjutnya Anda bisa meletakkan IC ATMega ini ke board Arduino (Uno, Duemilanove, Nano, dsb sesuai settingan program tadi) atau ke dalam PCB buatan sendiri.
sumber : http://arduino.cc/en/Tutorial/ArduinoISP
Kembali ke bootloader, jika Anda membeli board Arduino, bootloader sudah terprogram di dalam IC mikrokontroller Arduino (ATmega 8/168/328). Dengan demikian Anda bisa langsung mengisi ‘sketch’ (program Arduino) ke IC mikrokontroller Arduino. IC mikrokontroller yang telah terprogram Arduino ini kemudian dapat dipindah ke PCB lain yang memenuhi system minimum mikrokontroller. Jadi sebenarnya Arduino ini dapat berdiri sendiri tanpa harus dipasang di board Arduino. Nah, saat seperti inilah dibutuhkan pengetahuan untuk melakukan burning bootloader Arduino sendiri ke IC ATMega. Dengan demikian Anda tidak perlu membeli board Arduino lagi, cukup membeli IC ATMega saja yang nantinya akan diisi bootloader Arduino. Berikut ini adalah langkah-langkah mengisi bootloader Arduino menggunakan board Arduino Uno (bisa juga dengan board yang lain). Saya anggap sudah memiliki IDE Arduino terinstal dalam komputer Anda (dapat diunduh di www.arduino.cc) dan sudah familiar dengan burning sketch di board Arduino.
1. Buka IDE Arduino dan loading sketch ‘ArduinoISP’ di menu File | Examples | ArduinoISP.
Catatan untuk pengguna software Arduino 1.0, Anda harus mengubah script ‘delay (40)’ menjadi ‘delay (20)’ di bawah void heartbeat(). Cara mudah untuk mencari script tersebut adalah menggunakan menu Edit | Find atau melalui shortcut ctrl+F. Jika Anda tidak mengganti script tersebut akan muncul error ‘sync error (xxxx)’.
2. Pilih board ‘Arduino Uno’ di menu Tools | Board | Arduino Uno, pilih port serial yang terinstal dalam computer Anda di menu Tools | Serial Port, kemudian upload sketch ‘ArduinoISP’ di board Arduino melalui menu File | Upload. Jika Anda berhasil melakukannya, maka board Arduino Uno Anda sekarang sudah berfungsi board ISP (In System Programming), yakni board yang bisa mengisi program ke mikrokontroller lain melalui port MISO/MOSI
3. Kemudian siapkan IC ATMega 8/168/328 yang akan diisi bootloader Arduino, dan buatlah rangkaian sistem minimum sederhana sebagai berikut (bisa menggunakan breadboard/protoboard atau dijumper di PCB matriks)

4. Kembali ke software IDE Arduino, pilih tipe board yang nantinya akan digunakan IC tersebut di menu Tools | Board. Contoh, jika IC yang akan diburn boatloader ini akan dimasukkan ke board Arduino Uno, maka pilihlah ‘Arduino Uno’ di menu Tools | Board.
Catatan : untuk IC ATMega 8 hanya kompatibel diisi dengan tipe board ‘Arduino NG or older w/ Atmega8’
5. Pilih tipe programmer sebagai ‘Arduino as ISP‘ di ‘Tools | Programmer‘. Mulailah mengisi bootloader ke IC ATMega dengan memilih menu Tools | Burn Bootloader. Tunggu beberapa saat, sampai muncul notifikasi bahwa proses pengisian bootloader sudah selesai di jendela bawah di IDE Arduino.
Selamat, kini IC ATMega Anda yang sebelumnya blank sudah terisi bootloader Arduino. Untuk selanjutnya Anda bisa meletakkan IC ATMega ini ke board Arduino (Uno, Duemilanove, Nano, dsb sesuai settingan program tadi) atau ke dalam PCB buatan sendiri.
sumber : http://arduino.cc/en/Tutorial/ArduinoISP
Friday, 29 May 2015
Anemometer Arduino dengan Datalogger SD Card
Prinsip kerja Awal dari anemometer adalah menghitung frekuensi putaran rotor Anemometer,sehingga selanjutnya dari putaran rotor tersebut bisa menghitung kecepatan angin . Penghitung frekuensi (Frequency Counter) digunakan untuk menghitung banyaknya gelombang dalam satu detik, sehingga mempunyai satuan Hz (Hertz). Pada mikrokontroler Arduino Mega terdapat port untuk masukan counter 1 (T1) dan terhubung dengan pin 5 Arduino Uno. Pulsa yang akan kita ukur frekuensinya dihubungkan dengan pin 47. Library frequency counter ini juga telah tersedia, tinggal kita pakai saja.
Rangkaian yang digunakan terdapat pada gambar 1. Yang meupakan rangkaian amplifier yang berfungsi sebagai penguat sinyal dari frekuensi masukan dari optocopler ataupun rangkaian decoder pembaca detak frekuensi Poros Anemometer.Catatan Kerja J-Creator Electronic
Anemometer digital
Prinsip kerja Awal dari anemometer adalah menghitung frekuensi putaran rotor Anemometer,sehingga selanjutnya dari putaran rotor tersebut bisa menghitung kecepatan angin . Penghitung frekuensi (Frequency Counter) digunakan untuk menghitung banyaknya gelombang dalam satu detik, sehingga mempunyai satuan Hz (Hertz). Pada mikrokontroler Arduino Mega terdapat port untuk masukan counter 1 (T1) dan terhubung dengan pin 47 Arduino Mega. Pulsa yang akan kita ukur frekuensinya dihubungkan dengan pin 47. Library frequency counter ini juga telah tersedia, tinggal kita pakai saja.
Rangkaian yang digunakan terdapat pada gambar 1. Yang meupakan rangkaian amplifier yang berfungsi sebagai penguat sinyal dari frekuensi masukan dari optocopler ataupun rangkaian decoder pembaca detak frekuensi Poros Anemometer.
Pulsa yang akan dihitung frekuensinya dihubungkan ke pin F_ in. Sumber pulsa dapat menggunakan piringan dekoder. Piringan Dekoder tersebut terpasang pada Poros Anemometer, dan terpasang juga rangkaian pembaca dekoder menggunakan Optocoupler yang selanjutnya terhubung ke rangkaian preamplifier sinyal masukan. Piringan Dekoder tersebut berupa Piringan yang terdapat Lubang lubang yang berjumlah 32.yang berfungsi sebagai pendetak frekuensi.Jika rangkaian sensor Mengenai lubang Maka Sensor akan mendeteksi Low, Sebaliknya jika sensor tidak mengenai lubang maka Sensor akan mendeteksi High. Dan kejadian tersebut terjadi berulang selama Rotor Anemometer Berputar, sehingga Menghasilkan pulsa frekuensi dan terbaca oleh Mikrokontroler Arduino sebagai Frejuensi Masukan.dan Jumlah Frekuensi Masukan tiap detiknya dihitung sehingga Menghasilkan nilai Frekuensi dalam Hz. Selanjutnya Nilai frekuensi tersebut di konversi menjadi Nilai RPM dan Kecepatan Angin dalam m/s. Dan di masukkan pada skrip program RPM = (float)count * (60.0/32.0) ; selanjutnya ditampilkan pada lcd dengan skrip progam lcd.print(RPM lcd.print(" "); Selain menampilkan data Frekuensi pada LCD arduino juga memproses data Kecepatan angin ke SD card berupa data logger, dengan adanya datalogger maka setiap pembacaan kecepatan angin akan direcord oleh modul SD card
#include <FreqCount.h>
#include "LiquidCrystal.h";
LiquidCrystal lcd(12, 11, 5, 4, 3,2 );
#include <SD.h>
#define LOG_INTERVAL 1000 // mills between entries (reduce to take more/faster data)
#define SYNC_INTERVAL 1000 // mills between calls to flush() - to write data to the card
uint32_t syncTime = 0; // time of last sync()
int Phi = 3.1428571428571428571428571428571;
int JariJari = 1.0;
float frekuensi;
const int chipSelect = 53;
File logfile;
void error(char *str)
{
lcd.setCursor(0,0);
lcd.print("PASANG MEMORI..! ");
lcd.setCursor(1,1);
lcd.print("LOG DATA GAGAL");
Serial.println(str);
digitalWrite(redLEDpin, HIGH);
while(1);
}
void setup(void)
{
lcd.begin(16, 2);
// Tulis Temperatur di LCD
pinMode(redLEDpin, OUTPUT);
pinMode(buzzer, OUTPUT);
#if WAIT_TO_START
Serial.println("Type any character to start");
while (!Serial.available());
#endif //WAIT_TO_START
Serial.print("Initializing SD card...");
pinMode(53, OUTPUT);
if (!SD.begin(chipSelect)) {
error("Card failed, or not present");
}
Serial.println("card initialized.");
char filename[] = "LOGGER00.CSV";
for (uint8_t i = 0; i < 100; i++) {
filename[6] = i/10 + '0';
filename[7] = i%10 + '0';
if (! SD.exists(filename)) {
logfile = SD.open(filename, FILE_WRITE);
break; // leave the loop!
}
}
if (! logfile) {
error("couldnt create file");
}
lcd.setCursor(0,0);
lcd.print("FILE SUKSES: ");
lcd.setCursor(1,1);
lcd.println(filename);
delay(5000);
lcd.clear();
logfile.println("Freq >> RPM >> Kecepatan angin");
#if ECHO_TO_SERIAL
Serial.println("Freq >> RPM >> Kecepatan angin");
#endif //ECHO_TO_SERIAL
lcd.print("Freq>>RPM>>Kec");
FreqCount.begin(1000);
}
void loop(void)
{
// delay for the amount of time we want between readings
delay((LOG_INTERVAL -1) - (millis() % LOG_INTERVAL));
digitalWrite(buzzer, HIGH);
// fetch the time
//Pencacahan frekuensi
if (FreqCount.available())
{
unsigned long count = FreqCount.read();
lcd.setCursor(0, 1);
lcd.print(count);
lcd.print(" ");
float RPM;
lcd.setCursor(5,1);
RPM = (float)count * (60.0/32.0) ;
lcd.print(RPM);
lcd.print(" ");
float KecepatanAngin;
float RPM2Rad;
RPM2Rad = ((2.0 * Phi/60.0) * RPM );
lcd.setCursor(11,1);
KecepatanAngin = RPM2Rad * JariJari ;
lcd.print(KecepatanAngin);
lcd.print(" ");
logfile.print(" ");
logfile.print(count);
logfile.print(" ");
logfile.print(RPM);
logfile.print(" ");
logfile.print(KecepatanAngin);
#if ECHO_TO_SERIAL
Serial.print(" ");
Serial.print(count);
#endif // ECHO_TO_SERIAL
logfile.println();
#if ECHO_TO_SERIAL
Serial.println();
#endif //ECHO_TO_SERIAL
if ((millis() - syncTime) < SYNC_INTERVAL) return;
syncTime = millis();
digitalWrite(redLEDpin, HIGH);
logfile.flush();
digitalWrite(redLEDpin, LOW);
}
Penjelasan Program:
Awal program adalah melakukan inisialisasi konstanta, objek, serta variabel yang diperlukan pada proses eksekusi program serta pin I/O yang akan digunakan,
#include <FreqCount.h>
#include "LiquidCrystal.h";
#LiquidCrystal lcd(12, 11, 5, 4, 3,2 );
#include <SD.h>
#define LOG_INTERVAL 1000 // mills between entries (reduce to take more/faster data)
#define SYNC_INTERVAL 1000 // mills between calls to flush() - to write data to the card
uint32_t syncTime = 0; // time of last sync()
int Phi = 3.1428571428571428571428571428571;
int JariJari = 1.0;
float frekuensi;
const int chipSelect = 53;
File logfile;
Program akan mendeteksi apakah SD Card sudah dimasukkan pada Socket SD Apabila belum dimasukkan, program akan menampilkan tulisan "PASANG MEMORI...! LOG DATA GAGAL ", berikut ini merupakan listing programnya :
void error(char *str)
{
lcd.setCursor(0,0);
lcd.print("PASANG MEMORI...! ");
lcd.setCursor(1,1);
lcd.print("LOG DATA GAGAL");
Serial.println(str);
Apabila SD Card sudah dimasukkan, program akan melakukan inisialisasi awal SD Card. Jika proses inisialisasi gagal, maka proses program akan dihentikan. Jika proses inisialisasi berhasil, program akan berlanjut ke langkah 4. berikut ini merupakan listing programnya :
error("couldnt create file");
}
lcd.setCursor(0,0);
lcd.print("FILE SUKSES: ");
lcd.setCursor(1,1);
lcd.println(filename);
delay(5000);
lcd.clear();
Akan membuat file CSV baru pada SD Card untuk keperluan logging data.,berikut ini merupakan listing programnya :
char filename[] = "LOGGER00.CSV";
for (uint8_t i = 0; i < 100; i++) {
filename[6] = i/10 + '0';
filename[7] = i%10 + '0';
if (! SD.exists(filename)) {
// only open a new file if it doesn't exist
logfile = SD.open(filename, FILE_WRITE);
break; // leave the loop!
Proses penamaan file akan dilakukan mengikuti nomor file terakhir yang terdapat pada SD Card. Apabila nama file terakhir yang ada pada SD Card adalah “LOGGER00”, pada proses ini akan dibuat file baru dengan nama“LOGGER01” dan LCD akan menampilkan “FILE SUKSES LOGGER00.CSV
if (FreqCount.available())
{
unsigned long count = FreqCount.read();
lcd.setCursor(0, 1);
lcd.print(count);
lcd.print(" ");
float RPM;
lcd.setCursor(5,1);
RPM = (float)count * (60.0/32.0) ;
lcd.print(RPM);
lcd.print(" ");
float KecepatanAngin;
float RPM2Rad;
RPM2Rad = ((2.0 * Phi/60.0) * RPM );
lcd.setCursor(11,1);
KecepatanAngin = RPM2Rad * JariJari ;
lcd.print(KecepatanAngin);
lcd.print(" ");
logfile.print(" ");
logfile.print(count);
logfile.print(" ");
logfile.print(RPM);
logfile.print(" ");
logfile.print(KecepatanAngin);
Secara garis besar prinsip kerja Anemometer adalah sebagai Berikut. Pada saat baling-baling anemometer mulai terkena angin, maka poros Anemometer secara otomatis akan berputar. Dan Piringan encoder juga berputar.Maka Sensor optocoupler menghasilkan sinyal high low yang diakibatkan hasil perubahan lubang lubang pada encoder.dan mengirim sinyal ke rangkaian preamplifier.dan di kuatkan sehingga Mikrokontroler arduino dapat membaca secara jelas Nilai perubahan tegangan tersebut.
Selanjutnya pencacahan frekuensi tersebut diolah oleh program arduino dan di tampilkan ke LCD.hasil tampilan tersebut berupa 3 data, yaitu data frekuensi, RPM, dan Kecepatan angin,Selanjutnya data tersebut diolah kembali oleh perintah program arduino sehingga ketiga data tersebut bisa di simpan setiap detiknya ke SD card.
Semoga Bermanfaat
ALL IZ WELL
Subscribe to:
Posts (Atom)







