Mengontrol Empat Relay via Port Serial RS232 Menggunakan Board Mikrokontroler STAR2051 (AT89C2051)

STAR2051 adalah board mikrokontroler AT89C2051 yang dilengkapi port komunikasi serial RS232 dan driver output ULN2803. STAR2051 berukuran kecil dan cocok untuk aplikasi sistem kontrol sederhana yang tidak membutuhkan banyak IO.

star2051-4relay

Gambar di atas adalah foto hasil eksperimen pengontrolan empat buah relay menggunakan komputer melalui port serial RS232 dengan perantaraan board mikrokontroler STAR2051. Relay dapat langsung dihubungkan ke port ULN2803 yang tersedia pada board STAR2051.

Dengan driver ULN2803 ini, STAR2051 juga bisa digunakan untuk menggerakkan motor DC, motor stepper mini, LED, dan lain-lain beban dengan tegangan kerja 5V DC.

Gambar Skematik

Gambar berikut ini adalah skematik board STAR2051 dilengkapi dengan 4 buah relay. Skematik saya gambar menggunakan freeware ExpressSCH.

star2051-4relay

Program

Agar relay dapat dikontrol oleh komputer melalui port serial, maka mikrokontroler perlu diprogram dengan program komunikasi serial yang dapat menerima dan mengenali karakter perintah dari komputer dan melaksanakan aksi dengan mengaktifkan atau mematikan relay.

Mikrokontroler secara kontinyu mendeteksi adanya data pada port serial (karakter perintah yang dikirim oleh komputer). Jika data (karakter) yang diterima dikenali, maka mikrokontroler akan melakukan aksi sesuai dengan perintah.

Program mikrokontroler dan program komputer merupakan implementasi dari tabel berikut ini:

star2051_4r_table

Program kontrol komputer kami buat menggunakan JustBASIC, yakni interpreter Bahasa BASIC yang sangat mudah dan 100% gratis. Berikut adalah tampilan programnya:

justbasic-serial-relay

Download

Berikut ini adalah file-file project yang dapat Anda download secara gratis:

Semoga bermanfaat dan selamat belajar.

USB-2R3IO – Modul USB Dengan Dua Relay dan Tiga GPIO

Salam Sukses!

Saat ini kami sedang mengembangkan sebuah produk baru yakni USB-2R3IO. Modul USB ini dilengkapi dengan dua buah relay dan tiga buah GPIO level TTL. USB-2R3IO merupakan pengembangan dari modul USB-2REL. Produk USB-2REL merupakan salah satu produk unggulan kami yang paling laris.

blue_usb2rel_320

Dengan modul USB-2R3IO kita bisa mengontrol 2 buah relay dengan mudah. Tak hanya itu, USB-2R3IO menyediakan 3 buah GPIO yang masing-masing dapat diprogram agar berfungsi sebagai INPUT maupun OUTPUT. GPIO ini memiliki level tegangan logika TTL.

Skematik USB-2R3IO

USB-2R3IO menggunakan mikrokontroler AVR ATtiny2313A yang bekerja pada frekuensi 12MHz. Modul ini memiliki pilihan sumber tegangan yakni USB-Powered atau External Power Supply yang dapat dipilih menggunakan setingan jumper. Untuk input tegangan DC eksternal tersedia 2 buah konektor yakni soket DC bulat dan terminal-screw.

Konektor USB yang kami gunakan adalah USB Socket Tipe-B untuk memastikan kokohnya koneksitas antara modul dengan komputer. Rancangan modul ini dapat berfungsi dengan baik menggunakan kabel USB dengan panjang 3 meter.

Untuk relay, modul USB-2R3IO menggunakan relay dengan tegangan kumparan 5V DC dengan kemampuan kontak maksimum 10A sehingga sangat mencukupi dan aman untuk kebanyakan aplikasi.

Berikut adalah skematik modul USB-2R3IO yang kami gambar menggunakan freeware ExpressSCH yang running pada linux wattOS-R8 menggunakan Wine:

Skematik NEO USB-2R3IO

Layout PCB USB-2R3IO

Gambar layout PCB USB-2R3IO kami gambar menggunakan freeware ExpressPCB yang running pada linux wattOS R8 menggunakan Wine. ExpressPCB merupakan program satu paket dengan ExpressSCH.

Kami tetap mempertahankan penggunaan single-layer dengan track selebar mungkin untuk memudahkan pembuatan dan kemantapan kinerja sistem.

pcb_usb2r3io_500

Terlihat klasik memang. Motto kami (baca: tameng kami) untuk mengantisipasi komentar mengenai keklasikan model ini adalah bahwa

Kami memang belum menggunakan Teknologi Terkini, tapi kami menggunakan Teknologi Teruji.

Board Prototipe

Berikut ini adalah foto board USB-2R3IO yang kami gunakan selama proses pengujian:

usb2r3io_640

usb2r3io_640b

Firmware USB-2R3IO

Program mikrokontroler (firmware) kami buat menggunakan AVR-GCC versi 4.8.1. Implementasi protokol komunikasi USB menggunakan V-USB. Semua produk USB kami menggunakan VID dan PID gratisan yang dibagikan oleh Objective Development.

usb2r3io firmware

Software Antarmuka USB-2R3IO

Program antarmuka kami sediakan untuk beberapa platform yakni Windows, Linux dan Linux-ARMv6 (Raspberry Pi B/B+). Untuk pengguna Mac kami mohon maaf karena kami belum memiliki mesin dengan sistem operasi tersebut. Semoga saja kami bisa segera memiliki mesin dengan platform Mac.

Untuk platform Windows kami sediakan program versi GUI dan CLI. Program versi GUI kami buat menggunakan kompiler C freeware Pelles C. Untuk program versi CLI sementara juga kami buat menggunakan Pelles C, namun kami sedang mengupayakan untuk membuatnya dengan kompiler GCC untuk mendapatkan kecepatan eksekusi yang lebih baik.

usb2r3io_win_gui

Untuk platform Linux dan Linux-ARMv6 (Raspberry Pi), kami baru menyediakan program antarmuka versi CLI. Berikut adalah screenshot keluaran program USB-2R3IO versi CLI.

usb2r3io_cli_linux

Kami berharap produk ini dapat memenuhi kebutuhan interfacing untuk aplikasi yang tidak membutuhkan banyak IO seperti kontrol palang-pintu (portal).

ID Khusus Untuk Proteksi Produk Anda

Kami menyediakan ID Khusus untuk keperluan proteksi produk software Anda. Dengan ID Khusus ini maka software Anda hanya bisa bekerja menggunakan piranti USB dengan ID Khusus yang sesuai. Hal ini untuk menghindari pembajakan software. Dengan proteksi menggunakan ID Khusus ini maka software Anda akan aman dari kemungkinan penggunaan software dengan piranti USB sejenis yang tidak memiliki ID Khusus.

USB-2R3IO Dihajar Ribuan Mobil

Menurut laporan dari salah satu pelanggan kami asal Surabaya, mereka mengaplikasikan USB-2R3IO sejak 2014 yang lalu pada sistem parkir terpadu pada beberapa area parkir dengan jumlah mobil per hari 3000 – 8000 mobil. Berikut adalah foto panel sistem parkir yang mereka bagikan kepada saya.

panel_parking1

panel_parking2

Untuk area parkir dengan jumlah mobil kisaran 3000, modul USB-2R3IO tidak mengalami masalah sama sekali. Dan untuk area parkir dengan jumlah mobil kisaran 8000, modul USB-2R3IO sempat mengalami kegagalan kerja 2-3 kali dalam sehari. Dan menurut analisa kami adalah karena konektor catudaya yang kurang mantap saja.

Kami memang belum menggunakan teknologi TERKINI, tapi kami menggunakan teknologi yang TERUJI.

Terima kasih kepada pelanggan yang telah berkenan membagi cerita suksesnya bersama produk USB-2R3IO.

Salam sukses!

 

 

Mereset Komputer Dari Jarak Jauh Via SMS Dengan Modul SMC-01

SMC-01_400

Gambar di samping adalah foto modul kontroler relay jarak jauh berbasis SMS. Sistem SMC-01 ini berbasis mikrokontroler AVR ATmega328P yang dilengkapi dengan beberapa rangkaian pendukung yakni driver relay, LED indicator, konverter tegangan TTL/RS232 dan antarmuka USB.

Relay bisa digunakan untuk mengontrol beban listrik atau untuk fungsi triggering (pemicuan). Contoh fungsi pemicuan adalah untuk melakukan peresetan sistem komputer yang berada di lokasi yang jauh manakala diperlukan atau untuk memberikan pemicuan pada kontrol start atau stop.

Jika Anda memiliki sistem telemetri atau server untuk monitoring sensor yang jaraknya sangat jauh, maka sistem ini sangat handy untuk digunakan untuk mereset sistem dari jarak jauh (remote). Semisal jika komputer mengalami HANG, maka pengiriman data akan terhenti. Dengan mengaplikasikan SMC-01 maka kita dapat mereset komputer tersebut dari jarak jauh menggunakan SMS.

Relay pada board SMC-01 bisa dikontrol melalui SMS dengan pesan perintah “ON”, “OFF” dan “PULSE”. Sesuai pesannya, “ON” digunakan untuk mengaktifkan relay dan “OFF” untuk mematikan relay. Sedangkan pesan perintah “PULSE” akan mengaktifkan relay selama 1 detik. Untuk lebih jelasnya simak tabel yang berikut ini.

SMS Perintah Aksi/Fungsi SMS Notifikasi
ON Mengaktifkan relay RELAY DIAKTIFKAN.
OFF Mematikan relay RELAY DIMATIKAN.
PULSE Mengaktifkan relay 1 detik RESET TELAH DIAKTIFKAN.
Salah/tidak dikenali Diabaikan PERINTAH TIDAK DIKENALI.

SMC-01 dirancang untuk digunakan dengan modem serial RS232. Port serial pada board dapat langsung dihubungkan ke modem melalui kabel bawaan modem. Mikrokontroler mengirimkan AT+Command untuk membaca SMS, mengirim SMS, dan menghapus SMS. Firmware SMC-01 telah teruji dan telah diterapkan pada modul kontrol berbasis SMS yang lain seperti SMC-02, SMC-04 dan sistem alarm SMS.

SMC-01 bekerja pada 2 mode yakni Mode RUN atau Mode SETUP. Pada Mode RUN mikrokontroler berkomunikasi secara intensif dengan modem. Mikrokontroler bekerja dengan tugas-tugas sebagai berikut:

  • mengecek status komunikasi
  • mengecek adanya SMS yang masuk
  • membaca pesan SMS yang masuk
  • mencocokkan nomor pengirim dengan nomor terdaftar
  • membandingkan pesan dengan daftar perintah yang dikenali
  • menjalankan aksi sesuai pesan yang diterima
  • menghapus pesan untuk memastikan adanya ruang untuk menerima SMS baru

smc-01_300Pemilihan Mode RUN dilakukan dengan menghubungkan jumper yang terdapat di samping mikrokontroler. Jika jumper dilepas (open), maka sistem SMC-01 akan bekerja pada Mode SETUP.

Pada Mode SETUP, mikrokontroler akan berkomunikasi dengan komputer melalui port USB. Untuk antarmuka kami buatkan program setup dengan interface yang sederhana, sehingga mudah dipahami dan dioperasikan. Melalui program setup kita dapat mengenali modul SMC-01, melakukan testing relay secara manual, membaca data nomor telepon terdaftar dan mengubah nomor telepon terdaftar. Pada saat sistem bekerja pada Mode SETUP, LED Status akan berkedip-kedip secara terus-menerus dengan interval yang tetap.

Sekedar info, program setup SMC-01 kami buat menggunakan kompiler C gratisan Pelles C. Paket program Pelles C sangatlah lengkap. IDE Pelles C simpel dan memiliki Dialog Editor yang tidak sulit digunakan. Kompiler Pelles C telah memenuhi standar C99 dan C11 dan dalam status pengembangan yang aktif. Untuk platform Windows, kami sangat merekomendasikan Pelles C sebagai development tool untuk pemrograman bahasa C.

Nah, berikut ini adalah tampilan program setup untuk modul SMC-01.

smc-01_setup

Program setup ini secara otomatis melakukan pengecekan status komunikasi dengan modul SMC-01. Jika status komunikasi baik, maka akan ditampilkan status [Connected]. Sebaliknya program akan menampilkan tampilan status [Disconnected] jika gagal melakukan komunikasi dengan SMC-01.

Jika Anda membutukan sistem alarm atau kontrol berbasis SMS, silakan menghubungi kami melalui halaman kontak kami di http://teknikelektrolinks.com/kontak.htm.

smc-01_640

Selamat berkarya!

Mengontrol Empat Buah Relay dan Membaca Empat Buah Input Melalui Port Paralel LPT Menggunakan VB6 + INPOUT32.DLL

LPT-4R4OI_6320

LPT-4R4OI adalah modul antarmuka port paralel LPT yang memiliki 4 buah output berupa relay dan 4 buah input opto-isolated. Modul ini cocok bagi Anda yang pengguna port paralel, baik pemula maupun profesional.

Modul LPT-4R4OI menggunakan ULN2803 untuk driver relay dan PC817 untuk rangkaian input. Masing-masing relay dan input memiliki LED status. LED Relay akan menyala jika relay ON. LED Input akan menyala jika input ON. Input LPT-4R4OI aktif-rendah, artinya LED Input akan menyala jika input diberi logika rendah (LOW).

Empat relay pada modul LPT-4R4OI dikendalikan oleh port data. RELAY-1 pada pin D4, RELAY-2 pada pin D5, RELAY-3 pada pin D6 dan RELAY-4 pada pin D7. Berikut adalah tabel koneksi port LPT dengan LPT-4R4OI.

Port LPT Nomor Pin Nama Pin Fungsi
Port Data Pin 6 D4 Kontrol RELAY-1
Port Data Pin 7 D5 Kontrol RELAY-2
Port Data Pin 8 D6 Kontrol RELAY-3
Port Data Pin 9 D7 Kontrol RELAY-4
Port Status Pin 10 ACK INPUT-1
Port Status Pin 11 BUSY INPUT-2 (INVERTED)
Port Status Pin 12 PAPER OUT INPUT-3
Port Status Pin 13 SELECTED INPUT-4

Perhatian! Keterangan INVERTED pada pin 11 (BUSY) memiliki arti bahwa nilai logika yang terbaca adalah kebalikan dari logika input yang sebenarnya.

Untuk mengontrol relay dan membaca input modul LPT-4R4OI dibutuhkan program antarmuka LPT. Library program yang paling populer adalah INPOUT32.DLL. Dengan library ini kita bisa mengakses port LPT ataupun port IO lainnya.

Sesuai judul di atas, saya membuat program antarmuka LPT-4R4OI menggunakan VB6. Berikut adalah tampilan programnya.

lpt-4r4oi_vb6

Dengan modul LPT-4R4OI kita bisa membuat sistem kontrol berbasis komputer. Contoh aplikasi yang bisa dibangun adalah:

  • sistem monitoring level ketinggian tandon air dengan kontrol pompa air
  • sistem kontrol lift
  • sistem kontrol mesin press
  • dan lain-lain

Selain sistem aplikasi, modul LPT-4R4OI juga sangat cocok untuk pelajaran interfacing. Dengan modul ini kita bisa mengenalkan contoh hardware interfacing dan pemrogramannya.

Bagi Anda yang berminat dengan modul ini bisa menghubungi kami melalui email ke info@teknikelektrolinks.com atau melalui http://teknikelektrolinks.com/kontak.htm.

Selamat berkarya!

:D