on Thursday, 30 January 2014
TUJUAN :
1. Mampu membuat program untuk melakukan penyimpanan data pada memori eeprom.
2. Mampu membuat program untuk melakukan pembacaan data pada memori eeprom.

PERALATAN :
1. Komputer         : 1set
2. Arduino Uno       : 1pcs
3. Kabel USB tipe B       : 1pcs

PERCOBAAN :
8.1  Baca dan Tulis Memori EEPROM
Pada  percobaan  kali  ini  akan  dibuat  program  yang  berfungsi  sebagai  antarmuka penanganan memori eeprom. Antarmuka program menggunakan  komunikasi serial. Melalui serial terminal atau aplikasi lainnya, user dapat melakukan perintah baca dan tulis dari atau ke memori eeprom.

Prosedur :
1. Tuliskan sintaks program berikut ini pada Arduino IDE, kemudian lakukan kompilasi dan upload program ke mikrokontroller.
#include <EEPROM.h>
boolean exitProgram = 0;
void setup() { 
Serial.begin(9600); 
Serial.println("========= EEPROM Access Via Serial ========");
Serial.println("Type this command to execute EEPROM operation"); 
Serial.println("write : For write data to EEPROM");
Serial.println("read : For read data from EEPROM");
Serial.println("clear : For clear all data in EEPROM");
Serial.println("exit : For exit from program");
}

void loop() { 
int command; 
while(!exitProgram) {
do{ 
Serial.print("Type Command >> ");
while(Serial.available()==0);
command = readCommandFromSerial();
switch(command) {
case 1 : Serial.println("Write EEPROM Selected");
writeEEPROM();
break;
case 2 : Serial.println("Read EEPROM Selected");
readEEPROM();
break;
case 3 : Serial.println("Clear EEPROM Selected");
clearEEPROM();
Serial.println("Clear EEPROM finished");
break;
case 4 : Serial.println("Exit From Program");
exitProgram = 1;
break;
default : Serial.println("Wrong Command, Please Type Again !");
break;
while(command == 0);
int readCommandFromSerial() {
char stringFromSerial[10];
char data; 
int command; 
int countData = 0;
for(int i=0;i<10;i++) {
stringFromSerial[i]=0; 
while(true) { 
if(Serial.available()) {
data = Serial.read();
Serial.write(data);
if(data=='\n') {
break; 
else { 
if(data!='\r') {
stringFromSerial[countData] = data; 
countData++;
if(strcmp(stringFromSerial,"write")==0) {
command = 1; 
else if(strcmp(stringFromSerial,"read")==0) {
command = 2;
else if(strcmp(stringFromSerial,"clear")==0) {
command = 3; 
else if(strcmp(stringFromSerial,"exit")==0) {
command = 4;
else{ 
command = 0; 
}
return command; 
int readValFromSerial() {
char stringFromSerial[10];
char data; 
int val; 
int countData = 0;
for(int i=0;i<10;i++) {
stringFromSerial[i]=0; 
while(true) { 
if(Serial.available()) {
data = Serial.read();
Serial.write(data);
if(data=='\n') {
break; 
else{ 
if(data!='\r') {
stringFromSerial[countData] = data; 
countData++;
sscanf(stringFromSerial,"%d",&val);
return val; 
void clearEEPROM() {
for(int i=0;i<255;i++) {
EEPROM.write(i,0);
void writeEEPROM() { 
int address; 
do{ 
Serial.print("Address : ");
address = readValFromSerial();
if(address>255) {
Serial.println("Addres maximal is 255 !, Please type again !"); 
while(address>255);
int data; 
do{ 
Serial.print("Data : ");
data = readValFromSerial();
if(data>512) {
Serial.println("Data maximal is 255 !, Please type again !");
while(data>512); 
EEPROM.write(address,data);
Serial.println("EEPROM Write Success !");
void readEEPROM() {
int address; 
do{ 
Serial.print("Address : ");
address = readValFromSerial();
if(address>512) {
Serial.println("Addres maximal is 255 !, Please type again !");
while(address>512);
int data = EEPROM.read(address);
Serial.print("Data in Address ");
Serial.print(address,DEC);
Serial.print(" : ");
Serial.println(data,DEC);
}

Tugas dan Pertanyaan :
1.  Jalankan aplikasi  Serial  Monitor  pada  Arduino,  pastikan  konfigurasi  serial  monitor menggunakan  baudrate  9600  dan  pada  akhir  pengiriman  data  disertakan  karakter CR+LF.  Lakukan penulisan data pada memori alamat 100, dengan data bernilai 10. Kemudian  keluar  dari  program  dan  matikan  power Arduino  dan  nyalakan  kembali. Lakukan  pembacaan  data  pada  alamat  100,  berapakah  nilai  data pada  alamat  100  ? Apakah data yang dituliskan sebelumnya hilang ?
Data yang ada pada alamat 100 adalah 10, data yang dimasukkan pada alamat 100 tidak akan hilang walaupun kita keluar dari program dan mematikan power arduino.
Setelah mengetik kata “write”


on Tuesday, 21 January 2014
Pada kesempatan kali ini saya akan menjelaskan tentang simulasi Arduino dengan Proteus. :)

Berikut Langkah-langkahnya:
1. Buat rangkaian di bawah ini pada software Proteus.


pict 1
2. Double klik pada komponent Arduino (Simulino). kemudian akan muncul kotak Edit Component seperti gambar di bawah ini.
pict 2
3. Buka program yang telah di buat pada sofware Arduino. Klik menu File pilih Preferences. Kotak coment yaang berlayar hitam itu masih kosong.
pict 3
4. Beri tanda centang pada bagian compilation kemudian klik OK.

pict 4
5.  Compile program tersebut.  Blok lokasi file HEX dan coppy (CTRL+C) untuk mengkoppy lokasinya ke Proteus.

pict 5
6. Kembali ke software Proteus. Paste (CTRL+V) lokasi file HEX ke Program File dan setting CKSEL Fuse menjadi seperti gambar dibawah ini. Lalu klik OK.

pict 6
7. Klik tombol Play untuk melakukan simulasi. Arduino akan menjalankan program yang telah anda buat sebelumnya.

pict 7
 Okey. That's all about how to simulate arduino with proteus from me. I hope it's usefull for the readers.
Thank you all :) 
on Friday, 17 January 2014
Nama saya Nurul Hikmah, saya biasa dipanggil dengan banyak sebutan “Nurul, Nul, Nuyul, Imma, Israella” tapi paling sering dipanggil Nurul. Saya biasa dipanggil Imma di dalam lingkungan rumah.

Saya lahir pada tanggal 6 Januari 1995 di kota yang dijuluki sebagai kota MADANI di Provinsi Kepulauan Riau. Saya dilahirkan dari keluarga yang sangat bahagia. Karena ketika lahir saya masih memlikii orang tua utuh yang sangat menyayangi anak-anaknya. Saya merupakan anak pertama dan satu-satunya anak perempuan di keluarga saya. Saya memiliki dua orang adik laki-laki yang berjarak tiga tahun dari saya. Adik pertama saya sekarang masih duduk di bangku SMP kelas IX, adik kedua saya masih duduk di bangku SD kelas IV. Kami bertiga sering sekali bertengkar tetapi sebenarnya kami hanya bercanda. Dan yang sering memulai pertengkaran itu adalah saya. Kami bertiga juga memiliki kesukaan yang sama yaitu sama-sama suka kartun. Dulu zaman-zaman masih kecil kami selalu menonton kartun bersama-sama, tetapi karena saya sibuk kuliah jarang ada dirumah jadi kami jarang nonton bareng.

Dari semasa SD hingga SMA saya termasuk orang yang cukup cerdas,pintar dan aktif dalam setiap mata pelajaran, dengan dibuktikan masuk 10 Besar. Untuk itu saya cukup bangga dengan apa yang saya capai saat ini.  Sejak semasa SD antara tahun 2000 hingga 2006 saya sangat aktif pada kegiatan ekstrakurikuler seperti pramuka. Saya sering mengikuti event-event yang berkaitan dengan pramuka. Tahun 2006, saya Lulus di SD Negeri 006 Batam. Saya kembali meneruskan sekolah ke salah satu Sekolah Menengah Pertama Negeri di SMP Negeri 16 Batam yang berdekatan dengan SD saya dulu. Saya bertemu dengan teman – teman baru, yang membuat saya  bahagia menjadi salah satu Keluarga Besar SMP Negeri 16 Batam. Saya lalui sekolah menengah pertama selama 3 tahun.

Setelah SMP saya melanjutkan pendidikan saya ke SMA favorit di Batam yaitu SMA Negeri 3 Batam. Letaknya cukup jauh dari rumah saya yang di Piayu. Di SMA saya mengikuti organisasi luar sekolah yaitu Sangga Kerja Batam yang terletak di KANPORA.

Sekarang saya kuliah semester empat di Politeknik Negeri Batam yang terletak di daerah Batam Centre jurusan Teknik Elektro prodi Teknik Elektronika.

Demikian esai singkat mengenai diri saya. Kurang lebihnya saya minta maaf.

Berikut gambar saya dari saya kecil hingga sekarang.
Masih Balita :D


Foto pas SD 


Foto pas SMP


Fotto Zaman SMA 


Ini foto diambil pas lagi PRC 2013
Urutan :
1.       Pemodelan sistem
2.       Analisa sistem
3.       Pengendalian sistem

Contoh : motor DC
1.       Pemodelan à mendapatkan transfer function dan blok sistem motor DC
2.       Analisa à memberikan inputan sinyal uji pada motor, menganalisa respon yang dihasilkan
3.       Pengendalian à mengendalikan motor agar memberikan hasil yang sesuai

  • Dari analisa respon sistem yang telah kita lakukan, bagaimana respon sistem (c(t)) yang kita inginkan?

Sesuai dengan input/r(t) (misal : unit step)
  • Jika tidak sesuai?

Salah satu caranya dengan menambahkan kontroler
  • Fungsi kontroler :

Mengendalikan sistem dengan memanipulasi sinyal error, sehingga respon sistem (output) sama dengan yang kita inginkan (input)


Kontroler dalam Diagram Blok
Definisi kontroler
 nController

¨  “Otak” dari sistem.
¨  Ia menerima error / e(t) sebagai input
¨  Lalu menghasilkan sinyal kontrol / u(t)
¨  U(t) menyebabkan controlled variable / c(t) menjadi sama dengan set point / r(t)

nAnalisa respon sistem :
¨  Kestabilan
¨  Respon transient (karakteristik sistem)
¨  Error steady state

n  Respon yang diinginkan (set point), misal unit step. Spesifikasi :
¨  Stabil
¨  Karakteristik respon transient :
n  Mp : 0 % (sekecil mungkin)
n  Tr, tp, ts : 0 (sekecil mungkin)
¨  Error steady state : 0 (tidak ada error steady state

on Thursday, 16 January 2014
Malam ....
materi berikut ini tentang transistor FET.

Perbedaan transistor BJT dan transistor FET
BJT selalu memerlukan arus basisI, walaupun arus ini kecil, tetapi tidak  bisa diabaikan, terutama sekali saat BJT digunakan sebagai saklar, pasti dibutuhkan arus yang cukup besar untk membuat transistor jenuh. Sedangkan Dengan  perantaraan FET, kita dapat menghubungkan peralatan komputer atau transduser yang tidak bisa menghasilkan arus, dengan alat yang lebih besar.
FET bisa digunakan sbg bufer, sehingga tidak membutuhkan arus dari komputer/trasduser. 
Teknologi modern pembuatan IC, ternyata dimensi transistor FET bisa dibuat sangat kecil, sehingga pembuatan IC saat ini berdasarkan transistor FET ini.

Jenis-jenis FET
      JFET (Junction FET)
      MOSFET (Metal Oxide Silikon FET)
      PMOS ( MOS saluran P)
      NMOS (MOS saluran N)

FET
Parameter FET : ID, VGS, VDS
Dasar pemikiran FET:
Ada arus  ID = IS yang mengalir melalui saluran, yang besarnya saluran dikendalikan oleh tegangan VGS
Karena arus lewat saluran (yang berupa hambatan) maka ada tegangan VDS.  

Junction FETs



JFET saluran N


Daerah deplesi membesar dengan bertambahnya tegangan balik


KURVA KARAKTERISTIK Junction FET


Hubungan VGS dan ID:
k    :    konstanta
VP  :   tegangan pinch-off atau threshold.
 Arus dibatasi hanya saat tegangan VGS = 0

Junction FET – Sumber Arus
Kurva tak dipengaruhi tegangan VDSArus hanya dipengaruhi VGS bukan VDSRS membuat VGS selalu negatip.
Misalnya  RS = 4K,  à VGS = -4 V.
Arus di Rload  = 1 mA.

KURVA VDS-ID Junction FET

 
Ada dua daerah operasi :
            saturation

            linear.

MOSFET 
MOSFET (Metal Oxide Semiconductor Field Effect Transistor) merupakan salah satu jenis transistor yang memiliki impedansi masukan (gate) sangat tinggi  (Hampir tak berhingga) sehinnga dengan menggunakan mosfet sebagai saklar elektronik, memungkinkan untuk menghubungkannya dengan semua jenis gerbang logika. Dengan menjadikan mosfet sbg saklar, maka dapat digunaka untuk mengendalikan beban dengan arus yang tinggi dan biaya yng lebih murah drpada transistor bipolar. Untuk membuat mosfet sbg saklar maka hanya menggunakn mosfet pada kondisi saturasi (ON)dan kondisi cut-off (OFF).

Kurva karakteristik MOSFET

Wilayah Cut-Off MOSFET
Pada daerah off (cut-off) mosfet tidak men dapat kan tegangan input (Vin=0) sehingga tidak ada ada arus drain Id ang mengalir. Kondisi ini akan membuat tegangan Vds=Vdd. Dengan beberapa kondisi di atas maka pada daerah off ini mosfet dikatakan FULL OFF.
Kondisi cut-off ini dapat diperoleh dengan menghubungkan jalur input (gate) ke gnd, sehingga tidak ada tgangn input \yang masuk kerangkaian saklar MOSFET. Untuk lebih jelasnya dapat dilihat pada gambar berikut.

Karakteristik MOSFET pada daerah CUT OFF Antara lain sbb.
  1. Input gate tidak mendapat tegangan bias krna terhubung ke gnd (0V)
  2. Tegangan gate lebih rendah dari tegangan threshold (Vgs<Vth)
  3. MOSFET OFF (Fully-Off) pada daerah cut off.
  4. Tidak ada arus drain yang mengalir pada MOSFET
  5. Tegangan output Vout=Vds=Vdd
  6. Pada daerah cut-off Mosfet dalam keadaan open circuit

Wilayah Saturasi (MOSFET ON)
Pada daerah saturasi MoSFET mendapatkan bias input (Vgs) secara  maksimum sehingga arus drain pada MOSFET juga akan maksimum dan membuat tegangan Vds=0. Pada kondisi satrasi ini MOSFET dapat dikatakan dalam kondisi ON  secara penuh (Fully-On).
Gambar rangkaian MOSFET sbg saklar dalam kondisi ON 

Karakteristik MOSFET pada kondisi ON adalah sbb.
1.    Tegngan input gate (Vgs) tinggi
2.    Tegangan input gate (Vgs) lebih tinggi dari tegangan treshold (Vgs>Vth)
3.    MOSFET ON pada daerah saturasi
4.    Tegangan drain dan source ideal (Vds) pada daerah saturasi  adalah 0V (Vds=0v)
5.    Resistansi drain dan source sangat rendah (Rds < 0.1ohm)
6.    Tegangan output = Vds = 0.2 V (Rds.Id)
7.    MOSFET dianalogikan sebagai saklar kondisi tertutup


Assalamualaikum .... 
udah lama nggak nongol di blog. Bukan karna sombong, tapi perkara banyak tugas jadinya jarang online hahaha. Saya mau ngebagi ilmu yang sudah saya plajari dari senior-senior saya :) tentang jam digital seven segments. 
oke langsung saja. ini dia langkah-langkah untuk membuat jam digital seven segments.

Tujuan 

  • Mampu mempergunakan fitur timer pada mikrokontroller untuk membuat jam digital yang sederhana.
  • Menyelesaikan project mikrokontroller

Peralatan

Arduino UNO