Kebutuhan-kebutuhan…

Perangkat keras

  • AT89C51 atau AT89S51, sebagai mikrokontroler-nya;
  • LM35, sebagai sensor suhu-nya;
  • ADC0808, sebagai ADC-nya, dan
  • MAX232, sebagai konverter RS232-TTL

Perangkat Lunak

  • C-Compiler, program mikrokontroler ditulis dalam bahasa C;
  • Visual Basic 6.0, antarmuka komputer menggunakan Visual Basic 6.0

Gambar Rangkaian

Gambar Antatmuka Komputer

Listing Program & Keterangan

  • Semua bisa diunduh disini (termasuk program komputer, gbr rangkaian dan lain-lain).
  • Piranti ini merupakan sistem pemantauan dan pengendalian suhu (melalui ON/OFF pemanas).
  • Pada rangkaian mikrokontroler telah dihubungkan 4 dari maksimum 8 (atau bahkan lebih dengan modifikasi program) sensor suhu. Nilai-nilai dari semua sensor tersebut dikirim ke komputer melalui port serial (informasi mengenai aplikasi port serial bisa dibaca disini). Ini adalah tugas utama dari mikrokontroler AT89, dimana programnya ditulis dalam Bahasa C untuk mikrokontroler seri 51.
  • Program komputer, yang ditulis dalam Visual Basic 6.0, digunakan untuk menerima nilai suhu tersebut dan menampilkannya melalui komputer, sekaligus dapat menyimpan data-data tersebut ke basis data “daq.mdb” (format Microsoft Access). Kita bisa mengatur parameter-parameter misalnya set point, low limit dan high limit. Saat suhu yang terdeteksi pada suatu sensor naik di atas set point, maka pemanas yang terhubungkan (berkaitan dengan sensor yang bersangkutan) akan dimatikan (OFF), ON jika kondisi sebaliknya. High limit dan Low Limit digunakan untuk alarm, jika suhu diatas High Limit atau suhu dibawah Low Limit, maka alarm akan ON.
  • Intinya:
    • Mikrokontroler hanya mengirim data-data suhu saat diminta dan melakukan ON/OFF heater sesuai perintah dari komputer.
    • Komputer menerima data, kemudian melakukan interpretasi data (berkaitan dengan set point, low limit dan high limit) dan memberikan perintah ON/OFF pemanas ke mikrokontroler sesuai dengan interpretasi yang dihasilkan.

Sumber

  • Abbas Raza, email: jgen_17@yahoo.com

Ada komentar? Pertanyaan? Silahkan melalui form berikut atau email ke agfi@ugm.ac.id, terima kasih…

Tags: , , ,

51 Responses to “AT89: Sistem Akuisisi Data dan Pemantauan”

  1. maaf saya menggangu aktifitas bapak sejenak untuk
    membaca pesan saya ini.saya salah satu mahasiswa di padang, jd sekarang
    saya lagi menyusun skripsi yang berhubungan dengan MC AT89S51 yang
    dikombinasikan dengan RTC DS12C887.jd sudah sekian lm saya
    mengerjakannya ternyata saya dapat kendala pada cara
    interface/menghubungkan MC dengan RTC serta program yang saya buat juga
    tidak dapat berjalan sesuai yang diharapkan.jd saya mohon kepada bapak
    untuk dapat memberikan solusinya tentang program dan cara
    menghubungkannya krn saya tidak tau lagi harus menanyakan kepada siapa.atas bantuan dan perhatian bapak saya ucapkan terimakasih.

  2. Mas Eko yg terhormat,,
    sy mo bertanya neh tentang sistem akuisisi dta yang mas buat.

    dari gmbr rangkaian hardware yg mas buat, data sensor suhu yg menjadi input-an bwt AT89 adalah data digital yg berarti 1 atau 0(koreksi kalau sy salah).

    gmn crnya sih mas agar data digital td dpt dikirim ke visual basic dan menjadi nilai desimal??

    trims sblm dan sesudahnya.

  3. maaf sedikit bantu..

    jadi yang mas Achel ungkapkan tadi itu adalah dasar nilai digital.. yaitu 1/0 yang di sebut dengan bit. sedangkan di dalam sistem ini data yang di olah sudah dalam byte/8bit. Walaupun pengiriman data dengan komunikasi serial antara MC dan komputer data di kirim perbit, tetapi komputer menganggap bahwa data tersebut adalah satu paket yang di indikasikan dengan bit start dan bit stop pada masing - masing paket data serial (RS232) tersebut.

    nah kalo sistem adcnya disini menggunakan ADC0808 yang mempunyai 8masukan. di dalam sistem ini hanya digunakan 4masukan (dalam schematic).. tetapi di sisi lain untuk program aplikasi yang di buat dari VB tersebut bisa support dengan delapan masukan (screenshot). masukan ADC0808 di atur dengan sistem multiplex yang di kontrol dari pin ADDA-ADDC dimana nilai dari ketiga bit tersebut di gunakan sebagai pengalamatan data masukan.

    sedangkan cara pengiriman data dari MC ke komputer bisa di atur secara pewaktuan oleh MC ato dengan suatu perintah dari komputer.. tapi kalo dalam sistem ini, data masukan dan eksekusi aktuator (berupa relay) di atur dari komputer.

    sistem ini juga bisa di modifikasi sesuai kebutuhan, keinginan, dan keperluan mas Achel.

    yah.. begitu aja ya mas acel, kalo salah mohon di betulkan..
    saya belum sempat ngeliat program MC maupun VB-nya.. cuma ngeliat scematicnya ajah.. kalopun berbeda pasti tipis.. :)

    best regards,

    herlambang

  4. konsepnya untuk semua jenis mikrokontroler sama. Masukan adalah tipe biner hanya logika 1 atau 0, sehingga jika kita ingin melakukan ‘pembacaan’ data-data analog, yang harus dilakukan adalah merubah data analog tersebut menjadi digital menggunakan ADC, dalam gambar rangkaian di atas menggunakan IC ADC0808, 8 kanal analog secara multiplekser (pin 26, 27, 28, 1, 2, 3, 4 dan 5.

    keluarannya berupa data 8-bit (melalui pin 17, 14, 15, 8, 18, 19, 20 dan 21) yang terhubungkan dengan port 2-nya AT89C51.

    data biner ini (yang 8 bit) merupakan penyajian dari data analognya, tugas mikrokontroler adalah membaca-nya dan mengirimkannya melalui port serial di PC, intinya begitu…

    kalo ada pertanyaan lagi monggo…

  5. Assalamu’alaikum..

    Waduh, emang sip banget penjelasannya pak Agfi, salah satu yang saya kagumi dari pak agfi adalah kalo pak Agfi njelasin sesuatu pasti dengan ringkas, padat, berisi, to the point dan mudah di mengerti..
    saya juga senang baca buku-bukunya pak Agfi lho :)

    nah.. itu adalah tanda-tanda dari dosen, entrepreneur dan sekaligus penulis yang profesional..

    salut dah buat pak Agfi..
    Seandainya sebagian besar dosen bisa aktif seperti pak Agfi, pasti Indonesia makin maju neh..

    Salam kenal,

    Herlambang.

  6. wa’alaikum salam wr wb…

    waduch…

    terima kasih mas Herlambang, semoga bersama-sama kita bisa memajukan bangsa ini… amin…

    mohon dukungannya atas website saya, semoga bisa lebih banyak manusia indonesia yang semakin cerdas… amin…

    salam kenal, juga

    agfianto ep

  7. Assalamualaikum.
    saya setuju tuh dengan mas herlambang,mas agfi memang “TOP”.he..he..

    waduh,,ternyata saya slh menterjemahkan skematik.

    saya mengira out1-out8 mewakili setiap inputan.

    trnyata prinsip kerjanya sama seperti adc 0804 ya??
    cuma bedanya adc0808 mempunyai 8inputan. bnr g??

    oh iya nih mas agfi sy masih ada yg kurang mengerti.
    “mscomm.output” sebenarnya mengakses ke alamat port ato spt ap??
    di syntax vb yg mas buat spt di bawah ini,

    ———————————————————–
    If ((Val(Label1(i).Caption)) (VScroll2(i).Value)) Then
    Image1(i) = hof
    MSComm1.Output = Chr(97 + k)
    End If
    Next
    If (Text3.Text Like “N”) Then
    c = 1
    End If
    —————————————————————
    Pada mscomm.output=chr(97 + J)
    karakter yang d kirim k modem ascii kan??
    yang berarti mengirim karakter “a” + j(sesuai dgn counternya).
    itu buat mengaktifkan heater kan??(klo g salah baca logika pemrograman)
    Bs tlng d jelasin g mas?

    mksh lagi sblm dan sesudahnya.

  8. waduh,,ralat…
    maksud sy “out1-out8 masing2 mewakili 1 inputan”

  9. ADC0808 memang memiliki 8 masukan atau 8 kanal masukan, semuanya menghasilkan sebuah keluaran 8-bit, sehingga diperlukan teknik multiplexing untuk memilih kanal masukan mana yang akan dibaca, dalam hal ini melalui pin 25, 24 dan 23 yang masing-masing dihubungkan ke P1.0, P1.1 dan P1.2.

    Protokol komunikasi untuk menghidupkan/mematikan relay menggunakan huruf-huruf “a” dan “b” untuk relay-1 ON/OFF, “c” dan “d untuk relay-2 ON/OFF, “e” dan “f” untuk relay-3 ON/OFF serta “g” dan “h” untuk relay-4 ON/OFF (Anda bisa mengamati di program C mikrokontrolernya) pada serialRoutine().

    Intinya program uC-nya selalu mengirimkan data secara serial ke komputer…

    Yang Anda tanyakan adalah subrutin dalam VB yang akan diaktifkan jika menerima data melalui port serial MSComm1_OnComm(). Maksudnya jika suhu yang dibaca lebih besar dari limit maka heater dimatikan, jika lebih kecil heater dihidupkan, caranya? dengan mengirimkan perintah sesuai protokol yang telah disebutkan tadi, chr(97+j) atau chr(97+k) digunakan mengirimkan ‘perintah’ yang sesuai…

    Untuk ON pada masing-masing relay, misalnya…
    i -> j -> chr(97)-> chr(97+j)
    0 -> 0 -> “a” -> “a” -> ON relay-1
    1 -> 2 -> “a” -> “c” -> ON relay-2
    2 -> 4 -> “a” -> “e” -> ON relay-3
    3 -> 6 -> “a” -> “g” -> ON relay-4
    4 -> 8 -> “a” -> “i” -> diabaikan, tidak dikenal
    dst…

  10. Mksh y mas agfi atas ilmunya??
    Mdh2an hrpan mas agfi dan kita smua dpt terwujud

    “Semoga bisa lebih banyak manusia indonesia yang semakin cerdas”
    Amiin..

    Mksh jg buat mas herlambang.

    Wassalam..

  11. Assalamu’alaikum..
    Mas Agfi,salam kenal.

    Mas,saya mau bertanya nih tentang adc 0808 dan teknik multiplexing
    dari sistem akuisisi ini.

    “diperlukan teknik multiplexing untuk memilih kanal masukan mana yang akan dibaca, dalam hal ini melalui pin 25, 24 dan 23 yang masing-masing dihubungkan ke P1.0, P1.1 dan P1.2″

    nah,cara menentukan kanal masukan tersebut diatur nya dmn(syntax) mas?
    soalnya saya mempelajari syntax c & vb nya tetapi saya ttp tidak menemukan jawabannya. apakah kanal yang terbacanya berurutan dimulai dari in0 - in7? atau seperti apa mas?

    mohon pencerahannya. Mksh mas sebelum dan sesudahnya.

    Wassalam.

  12. @Indy:

    yang melakukan multiplex adalah bagian di program utama, berikut penggalannya:

    while(1)
    {
    if(sensor==8)
    sensor=0;
    if(sensor==0)
    sendChar(’N');
    P1=(P1&0xf8)+sensor;
    latch();
    startConv();
    wait();
    get();
    reading=P2;
    sendReading(reading);
    sensor++;
    }

    pengalamatan kanal - pin ADD A, ADD B dan ADD C pada ADC0808 dihubungkan masing-masing ke P1.0, P1.1, dan P1.2, angka yang dikirim mulai 0 s/d 7 (8 kanal), dan ini hanya mengambil 3 bit pertama dari P1.

    rutin diatas diawali dengan sensor yang dibaca adalah kanal-0, jika sensor=8, maka di-nolkan:

    if(sensor==8)
    sensor=0;

    Jika sensor sudah=0, maka kirim huruf ‘N’:

    if(sensor==0)
    sendChar(’N');

    Nah P1 harus diisi angka 0 s/d 7 secara bergantian agar terjadi pembacaan dari kanal-0 s/d kanal-7:

    P1=(P1&0xf8)+sensor;

    P1 = (P1 and 1111 1000) or sensor - tiga bit bawah di-nolkan kemudian diisi dengan variabel sensor (bernilai 0 s/d 7 secar bergantian), kemudian P1 dikancing, dan lakukan pembacaan data pada kanal yang bersankutan:

    latch();
    startConv();
    wait();
    get();
    reading=P2;

    kirim hasil pembacaan:

    sendReading(reading);

    dan akhirnya ulang lagi untuk sensor berikutnya:

    sensor++;

    semoga bisa paham…

  13. Mksh bnyk y mas,skrng saya paham mengenai teknik multiplexing.he..he..
    Owya mas,klo blh saya mo nanya lg nih.
    Emg LM35 g perlu rangkaian lagi y?slnya d schematic Lm35 nya langsung ke ADC.

    Trus bs tolong d kasih komentar/penjelasan mengenai syntax di bwh ini g mas?

    void usDelay(int a)
    {
    TH0=256-(a/1.085);
    TR0=1;
    ET0=1;
    }
    void timerRoutine() interrupt 1
    {
    clock=~clock;
    }
    void sendReading(unsigned char val)
    {
    unsigned char l,m;
    l=val%10;
    m=(val/10)%10;
    sendChar(aray[m]);
    sendChar(aray[l]);
    sendChar(’,');
    }

    Maafkan saya mas jika terlalu banyak bertanya.
    Sukses selalu buat mas Agfi. Amiin.

  14. bagian

    void usDelay(int a)
    {
    TH0=256-(a/1.085);
    TR0=1;
    ET0=1;
    }

    digunakan untuk pengaturan timer guna penundaan mikrodetik, isi ulang ada di TH0, kemudian aktivasi timer di TR0=1 dan aktivasi interupsi timer 0 ada di ET0=1.

    void timerRoutine() interrupt 1
    {
    clock=~clock;
    }

    ini digunkan untuk membuat pulsa LOW-HIGH-dst setiap ada interupsi

    sedangkan…

    void sendReading(unsigned char val)
    {
    unsigned char l,m;
    l=val%10;
    m=(val/10)%10;
    sendChar(aray[m]);
    sendChar(aray[l]);
    sendChar(’,’);
    }

    ini adalah subrutin untuk mengirimkan hasil pembacaan ke komputer atau port serial…

    lebih jelas silahkan baca buku saya “Belajar Mikrokontroler AT9C51/52/55 Edisi 2″, terima kasih…

  15. pak agfi,saya ada pertanyaan mengenai program vibi pada mscomm-Na..banyak yg belum saya mengerti..

    Private Sub MSComm1_OnComm()
    If (MSComm1.CommEvent = comEvReceive) Then
    Text3.Text = MSComm1.Input
    If (c = 1) Then
    If (Text3.Text Like “,”) Then
    Label1(sensor).Caption = ” ” + Text2.Text
    sensor = sensor + 1
    Text2.Text = “”
    Else
    Text2.Text = Text2.Text + (Text3.Text)
    End If
    End If
    If (sensor = 8) Then
    sensor = 0
    c = 0
    Text2.Text = “”
    Text3.Text = “”
    fg.TextMatrix(fg.Rows - 1, 0) = CStr(fg.Rows - 1)
    fg.TextMatrix(fg.Rows - 1, 1) = CStr(Now)
    fg.TextMatrix(fg.Rows - 1, 2) = Label1(0).Caption
    fg.TextMatrix(fg.Rows - 1, 3) = Label1(1).Caption
    fg.TextMatrix(fg.Rows - 1, 4) = Label1(2).Caption
    fg.TextMatrix(fg.Rows - 1, 5) = Label1(3).Caption
    fg.TextMatrix(fg.Rows - 1, 6) = Label1(4).Caption
    fg.TextMatrix(fg.Rows - 1, 7) = Label1(5).Caption
    fg.TextMatrix(fg.Rows - 1, 8) = Label1(6).Caption
    fg.TextMatrix(fg.Rows - 1, 9) = Label1(7).Caption
    totalrec.Caption = “Total Records: ” + CStr(fg.Rows - 1)
    rs.AddNew
    rs.Fields(”Sr No”).Value = CStr(fg.Rows - 1)
    rs.Fields(”TimeAndDate”).Value = Now
    rs.Fields(”Temp1″).Value = Val(fg.TextMatrix(fg.Rows - 1, 2))
    rs.Fields(”Temp2″).Value = Val(fg.TextMatrix(fg.Rows - 1, 3))
    rs.Fields(”Temp3″).Value = Val(fg.TextMatrix(fg.Rows - 1, 4))
    rs.Fields(”Temp4″).Value = Val(fg.TextMatrix(fg.Rows - 1, 5))
    rs.Fields(”Temp5″).Value = Val(fg.TextMatrix(fg.Rows - 1, 6))
    rs.Fields(”Temp6″).Value = Val(fg.TextMatrix(fg.Rows - 1, 7))
    rs.Fields(”Temp7″).Value = Val(fg.TextMatrix(fg.Rows - 1, 8))
    rs.Fields(”Temp8″).Value = Val(fg.TextMatrix(fg.Rows - 1, 9))
    rs.Update
    fg.Rows = fg.Rows + 1
    End If
    j = 0
    k = 0
    For i = 0 To 7
    j = 2 * i
    k = j + 1
    If ((Val(Label1(i).Caption) (VScroll1(k).Value))) Then
    a1(i).FillColor = RGB(255, 0, 0)
    Else
    a1(i).FillColor = RGB(0, 180, 0)
    End If
    If ((Val(Label1(i).Caption)) (VScroll2(i).Value)) Then
    Image1(i) = hof
    MSComm1.Output = Chr(97 + k)
    End If
    Next
    If (Text3.Text Like “N”) Then
    c = 1
    End If
    End If

    text3.text dan text2.text,dform-Na kok g da y pa,sy udh brusaha cari tp g da…mengenai output yg bisa meng-ON/OFF kan heater jika dhilangkan jd sprt ap y pak?..(saya pengen membuat tampilan saja tanpa kontrol meng-ON/OFF kan heater dan tanpa record)..

    mav pak ada pertanyaan lagi..
    bedaNa kode ini (MSComm1.Settings = “9600,N,8,1″) dgn kode ini (MSComm1.Settings = “9600,N,8,0″) ap y pak??

    mohon balasan dari bapak segera..

  16. @prasetyo:
    ngeceknya di jendela properties saja. untuk ON/OFF memang bisa Anda hilangkan bagian ininya…

    If ((Val(Label1(i).Caption)) < (VScroll2(i).Value)) Then
    Image1(i) = hof
    MSComm1.Output = Chr(97 + k)
    End If

    MSComm1.Settings = “9600,N,8,1″ - berarti 1 stop bit
    MSComm1.Settings = “9600,N,8,0″ - berarti 0 stop bit dan ini salah karena stop bit minimal 1

  17. makasih pak agfi,saya cuba dulu…

  18. maaf pak saya mau tanya lagi..
    maksudnya listing dibawah ini apa y pak??
    Text3.Text = MSComm1.Input
    If (c = 1) Then
    If (Text3.Text Like “,”) Then
    Label1(sensor).Caption = ” ” + Text2.Text
    sensor = sensor + 1
    Text2.Text = “”
    Else
    Text2.Text = Text2.Text + (Text3.Text)
    End If
    End If
    If (sensor = 2) Then
    sensor = 0
    c = 0
    Text2.Text = “”
    Text3.Text = “”
    fg.TextMatrix(fg.Rows - 1, 0) = CStr(fg.Rows - 1)
    fg.TextMatrix(fg.Rows - 1, 1) = CStr(Now)
    fg.TextMatrix(fg.Rows - 1, 2) = Label1(0).Caption
    fg.TextMatrix(fg.Rows - 1, 3) = Label1(1).Caption
    fg.TextMatrix(fg.Rows - 1, 4) = Label1(2).Caption

    mav pak saya ingin tau bgt,karena listing tersebut lum saya mengerti..
    mohon balasan lagi dari bapak.

  19. pak punya referensi suhu dengan ouput suara dengan program C ..yang aq bingung cara program ic suaranya itu …

    makasih ya pak ..

  20. pak agfi..mohon pencerahannya,saya masih buta ma vb6..saya mau melangkah bermain dengan akuisisi data vb6>serial<uC, ada bbrapa hal mendasar pertanyaan pak yang masih blum mudeng..
    1. Apakah setelah instal vb6,kalau mau membuat program data realtime dari adc uC definisikan terlebih dahulu fungsi dan prosedur untuk akses masukan maupun keluaran perangkat keras,artikel untuk port pararel sudah dibahas oleh pak agfi, klo untuk port serial bgaimana pak.
    2. Kalau boleh minta, program sederhana untuk vb6 dan uC(saya pake cvavr) untuk data realtime pembacaan nilai desimal dari 8 adc uC,soalnya baru coba satu data adc di vb6,itupun nilai datanya tidak sesuai dengan nilai adc uC.
    3. sebelumnya terimakasih banyak..semoga berjalan cepat kemajuan desain teknologi indonesia.

  21. ass. pak eko sya mw bertanya. saya menggunakan pt 100 sebagai sensor suhunya, itu bs g? dan menggunakan mikrokontroller atmega 8535? saya minta program vb nya klw boleh. dikirim ke email saya. terima kasih

  22. @alvin:
    pada prinsipnya semua sensor suhu bisa digunakan, kedua bagaimana cara penggunaan sensor tersebut menentukan rangkaian, sekaligus, program yang ditanamkan pada at mega 8535, untuk komunikasi dengan PC melalui VB prinsipnya sama saja… untuk listing VB lengkap bisa diunduh melalui artikel di atas, silahkan cek…

  23. maaf pak saya minta tolong buatkan saya artikel tentang “antarmuka komputer dengan saluran telekomunikasi” di power point dengan jelas juga gambarnya pak ya ….

    saya mohon ….
    kirimkan ke e-mail saya : alifiantiputri@yahoo.com

    terima aksih sebanyak-banyaknya sebelumnya ….

    salam saya fia

  24. untuk program mikronnya saya kurang mengerti apakah sama dengan menggunakan CV AVR sebagai compilernya? Klw bs saya mnta contoh rangkaian dengan Atmega 8535 beserta program vb dan bahasa c nya. dikirim ke email saya. Teima Kasih

  25. saya sudah mencoba program bapak tapi ketika dijalankan yg keluar adalah tulisan “Could not set comm state, invalid parameters” mksudnya apa y pak? saya memakai kontroller autonics sebagai kontrollernya. parameter apa dan bagaimana cara mengkomunikasikannya ke PC dengan port serial?

  26. salam kenal,,
    saya newbie nih di dunia microcontroller,, saya sedang membuat project buat tugas kuliah saya,, project saya ini menggunakan sensor tekanan untuk memantau perubahan tekanan pada reservoir.. yang ingin saya tanyakan adalah bagaimana saya dapat mengirimkan data keluaran (ADC)dari sensor tekanan pada microcontroller ke visual basic melalui serial port,, semoga kakak2 sekalian dapat membantu. hubungi saya di arya.permadi@gmail.com

    -arya-

  27. Halo boss,,,
    wah saya dah coba DAQ System ini dan gak jalan, semua sudah terangkai dengan benar berkali2 dicheck gak ada yang salah sambung, gejalanya begini, ketika softawre dijalankan dan configurasi com nya disesuaikan dengan com yang dihubingkan dengan nya , lalu start, dan tiba2 semua channel berubah warna merah sebagai tanda alarm jalan, dan pada semua channel tidak terbaca any value of temperature….salah dimana ya..??
    bisa kasih saran boss..??
    Thanks
    -Dodi Suwardi-

  28. selamat siang pak,
    saya ingin bertanya pak,,saya menggunakan sensor sht11 dan dt-51 low cost micro (AT89S51),pada low cost tersebut bgamna cra menyesuaikan agar sht11 dapat mengukur suhu,Rh,dan dew point,,berdasarkan internet saya dapatkan source code uk sht11 (www.sensirion.com/en/pdf/…/Sample_Code_humidity_sensor_SHTxx.pdf) ,apakah program tersebut harus d edit/d sesuaikan terlebih dahulu dengan alat2 yg saya gunakan pak,,sebelumnya saya sudah mencoba dgn menggunakan program yg terdapat pada artikel innovative yakni utk suhunya,,hasilnya bgus tetapi hanya bsa d tampilin pke hyper terminal d xp,,,ketika saya coba untuk menampilkan nya melalui delphi hsilnya pengukurannya ngaco hsilnya tdak msuk akal,,,jd ap yg kira2 menurut bapak yg saya hrus lakukan untk mengatasi hal tersebut ?
    terima kasih

  29. Pak Eko yang terhormat!
    Saya ingin membuat rangkaian komunikasi serial dengan komputer namun saya bingung dengan dengan gambar rangkaian yang ada! mohon dikasi rangkaian rs232 yang benar jika dikomunikasikan dengan AT89C51! Thanks……

  30. @fianto:
    rangkaian dan penjelasan ada di buku saya mikrokontroler AT89
    silahkan pesan di

    http://www.gavamedia.net

    terima kasih

  31. Assalamualaikum wr.wb.
    Mas. Agfi, rasanya saya belum punya deh buku ini, Kalo di Gramedia ada nggak ya.., kalo ada saya mo cari sore ini. Cuma saya udah pake sistem AVR mas, pake ATMega16, ngak apa-apa ya, mungkin ntar banyak nanya aja ke mas Agfi..

    Salam

    Zulfahmi

  32. @zulfahmi:
    wa’alaikum salam wr wb
    ini bukan buku kok, cuman artikel, untuk bukunya (ttg antarmuka PC atau sistem SCADA) sedang direncanakan…

  33. Assalamualaikum wr.wb…
    maz tlong dunk list program wat jam digital untuk AT89S2051.
    klo bsa krim ke email saya.
    maturnuwun…
    Wasalam.

  34. mas aq punya kesulitan dalam buat list program untuk rangkaian ADC 0808 yang di aplikasikan ke AT89s51 dengan 4 buah7segmen (74ls138) sensor nya oksigen O2 (KE25) clocknya external mas. P0 untuk data out ADC dan P1 untuk data yang di tampilkan ke segmen dan P3.5,6,7 untuk chanel tampilan nya dan chanel ADC menngunakan chanel 1 (IN3)

  35. Wah mas saya tertarik dengan tulisan anda bisa dibantu pembuatannya dari awal sampai akhir atau mas sudah ada buku panduannya sejujurnya saya baru dalam hal ini saya ingin sekali belajar interfacing ini!!!oh iya mas apakah nantinya bisa dihubungkan ke database M.ACCESS atau yang lainnya sehingga bisa menjadi monitoring sistem!mohon bantuannya mas terimakasih banyak tulisan yang sangat bagus

  36. pak mau tanya, kalau untuk pembacaan suhu pada VB saja apa cukup saya ambil yang ini saja?

    unsigned char sensor=0,reading;
    P1=0;
    while(1)
    {
    if(sensor==8)
    sensor=0;
    if(sensor==0)
    sendChar(’N');
    P1=(P1&0xf8)+sensor;
    latch();
    startConv();
    wait();
    get();
    reading=P2;
    sendReading(reading);
    sensor++;
    }

    jawabannya tolong lewat email saja pak!

  37. @hanafi:
    ini potongan program pada mikrokontroler-nya
    bukan pada VB-nya…
    digunakan untuk mengirimkan data-data hasil
    pembacaan sensor ke PC melalui port serial
    menggunakan protokol tertentu (lihat penjelasan artikel).

  38. pak agfi, apa bpak prnh lakukan pngambilan kode ascii d vb 2008? Sya pngn jdikn keyboard sbg kontroler pngriman data scra serial. Trimakasih pak.

  39. @randy:
    maaf saya tidak paham dengan pertanyaan Anda, untuk penggunaan keyboard yang disaambung ke mikrokontroler gunakan yang PS2, di internet sdh ada contoh antarmuka dan programnya…

  40. perkenalkan nama saya abet
    dari teknik kmputer UNS
    eh ya mas boleh minta script assembly AT89s51 dari rangkaian d atas ga??
    thank sebelumnya…
    mau saya pelajari buat bahan TA saya…

  41. @abet:
    silahkan unduh di http://agfi.staff.ugm.ac.id/pdf/DAQ%20System.zip

  42. pak agfi mau tanya,gimana caranya n source code untuk mengambil data dari port serial COM dengan visual basic dan trus disimpannya ke database m.access
    trima kasih

  43. ada cara sempurna untuk source ha…..

  44. wah telat aku kayaknya masuk….
    aku mau tanya gimana program mscomm dan setingan Vscorlnya pada interfacing serial dengan VB.
    Input ke serial dari micronya berupa ADC dan buat tampian di VB menggunakan Vscrol?? gimana ne master?
    NB. (mikronya terserah dah)
    lebih trima kasih lagi di kirim ke emailku. Thanx….

  45. untuk pesan buku Design dan Implementasi Sistem Embedded Mikrokontroller ATMega8535 dengan Bahasa Basic apa masih bisa ?
    buku tsb merupakan jilid 1 , jilid berikutnya ?
    Apa di toko buku Gramedia matraman Jakarta atau Bekasi , masih ada

    Terima kasih

  46. mau nanya nich mas…klo buat rangkaian relaynya tuch gimana yach …ada skemanya gak…maaf nich masih pemula….pengen buat jadi referensi nanti buat Tugas Akhir….

    Salam

    Alam

  47. pak, saya sdh download programnya, tpi sewaktu mau dijalankan muncul error, katanya can’t find project or library

  48. maff pak mau tanya..
    sama seperti pertanyaan dari mas hanafi…
    kalau hanya ingin mengambil yang hanya menampilkan suhu di vb dan masuk kedatabase.bagaimana???
    terimakasih pak…

  49. Udah banyak yg nanya ampe tutornya dah bingung mau jawab yg mana duluan,…..hehehe. Berhubung aku baru beli Unyil-Avruino dan sampai sekarang cuman bisa nyimak data keluaran sensor (tidak bisa menyimpannya) maka aku mau nanya gimana cara membuat program Visual Basic6 yg bisa menampilkan data keluaran dari sensor dan ditampikan dalam bentuk tabel dan grafik yg bisa “scroll”. Untuk program Unyil-Avruino nya saya buat seperti ini :

    /*——————————————————————
    SENSOR SUHU
    ——————————————————————*/

    #define pinDataTempA 0
    #define pinDataTempB 1

    float temperatureA;
    float temperatureB;

    void setup()
    {
    Serial.begin(9600);
    }
    void loop()
    {

    temperatureA = analogRead(pinDataTempA);
    temperatureA = temperatureA * (5.0 * 100.0/1024.0);
    //Serial.print(” Temperatur A saat ini (Celcius) : “);
    Serial.println(temperatureA);
    delay(1000);

    temperatureB = analogRead(pinDataTempB);
    temperatureB = temperatureB * (5.0 * 100.0/1024.0);
    //Serial.print(” Temperatur B saat ini (Celcius) : “);
    Serial.println(temperatureB);
    delay(1000);
    }

    Kalau bisa program VB-6 nya yg sederhana aja, karna kalo yg kaya program diatas aku ga ngerti maklum aku masih pemula. Thank’s

    Buat mas Ias,…programnya jalan(ga ada pesan error) di komputerku tapi ga bisa ngeluarin data sensor karna aku ga punya alatnya seperti gambar yg disertakan pada file yg di download, mungkin ada file .dll dan .ocx yg kurang atau korupt.

  50. Program penampil Antatmuka Komputernya ada gak pak?dmna sya bisa mendpatkan?

Trackbacks/Pingbacks

  1. Memulai Belajar Mikrokontroler - Quick, Easy and Harmless! | DSP & Embedded Electronics

Leave a Reply

You can use these tags: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>