Single Board Computer
Sesuai namanya, single board microcomputer adalah komputer dalam sebuah board. Artinya
apapun yang bisa dilakukan oleh komputer bisa dilakukan oleh SBC. SBC saat ini memiliki
memori yang besar (128 MB-2 GB, bahkan sebagian sudah lebih), memiliki external storage (SD
Card/USB disk), dan memiliki prosessor dalam dengan kecepatan ratusan megahertz sampai
gigahertz, sebagian bahkan sudah quad core.
Sebuah SBC biasanya memiliki sebuah sistem operasi (biasanya Linux, FreeBSD, atau OS open
source lain), dan kita bisa menjalankan program dalam bahasa apapun di situ (misalnya: C,
Python, bahkan Lisp atau prolog). Meskipun biasanya punya sistem operasi, kita bisa saja
memprogramnya tanpa sistem operasi (misalnya ada yang membuat tutorialnya untuk Raspberry
Pi).
Kemampuan komputasi sebuah SBC biasanya sangat besar, bisa memproses audio, foto dan
bahkan video (misalnya mengenali wajah dalam video). Ini adalah contoh hal-hal yang tidak bisa
dilakukan oleh microcontroller (walaupun dalam batas tertentu microcontroller bisa memproses
data yang cukup rumit).
SBC memiliki penggunaan daya yang sangat rendah (<5 watt) dibanding dengan PC (desktop
biasanya > 70 watt, sedangkan HTPC > 30 watt), dengan pengunaan daya yang sangat kecil,
maka kita bisa memakai batere sebagai sumber powernya. Ukuran SBC juga sangat kecil dan
ringan (misalnya bisa diterbangkan dengan balon udara).
Perbedaan lain SBC dengan PC biasa adalah: ada pin-pin GPIO (General Purpose Input Output)
yang bisa dihubungkan dengan device “apapun” (ada batasan kecepatan, jadi sebenarnya tidak
100% apapun). Ketika menggunakan sistem operasi biasa (non-realtime) di SBC, Anda
mungkin akan mulai merasa bahwa perilaku sistem kadang tidak bisa diprediksi dalam
masalah timing, misalnya: kok sistemnya lama untuk menyalakan LED sejak tombolnya saya
pencet? Ternyata sistemnya sedang sibuk karena ada proses latar belakang yang sedang sibuk.
SBC memiliki beberapa versi, misalnya Raspberry Pi memiliki dua versi: dengan dan tanpa
ethernet card (yang harganya berbeda 10 USD).
[Link]
microcontroller/
Penerapan Single Board Computer (SBC) untuk Sistem Kontrol di Industri
Perkembangan industri saat ini menuntut pemrosesan pada sistem kontrol yang semakin dinamis
dalam setiap tahapan perancangan, pengoperasian, maupun perawatan. Peralatan yang kompak,
fleksibel namun handal sangat dibutuhkan dalam merancang sistem dewasa ini. PLC
(Programmable Logic Controller) sebagai "otak terprogram" diterapkan dalam banyak industri.
Mikrokontroler khusus dan sistem berbasis PC atau SBC (Single Board Computer) untuk operasi
tertentu juga menarik untuk dipertimbangkan.
SBC merupakan pilihan tepat jika kita memerlukan tingkat pemrosesan cukup tinggi, namun
masih berada pada ukuran kompak yang sekelas mikrokontroler. Single Board Computer (SBC)
merupakan komputer dengan ukuran kecil yang terdiri dari CPU, memory, media penyimpan
serta modul antar muka lain yang dirakit dalam satu papan (PCB). Komputer ini sangat luas
penggunaannya, mulai dari bidang kedokteran, pengendalian dan monitor pesawat, radar,
telekomunikasi, database, sistem kendali di industri, pencitraan, peralatan bergerak,
pengendalian robot, kiosk, finger scanning dan proses-proses lain yang membutuhkan
perhitungan dan algoritma sederhana sampai kompleks.
Ukuran yang kecil menjadikan SBC semakin banyak diterapkan untuk embedded system, karena
selain tidak banyak memakan tempat, SBC juga hanya membutuhkan energi yang relatif kecil
untuk pengoperasiannya. Di pasaran banyak dijumpai berbagai macam SBC dari berbagai vendor
dan memiliki variasi kemampuan sesuai kebutuhan. Bagian-bagian SBC Seperti halnya sebuah
komputer pribadi, SBC memiliki semua yang dimiliki PC.
Perangkat keras (hardware) umumnya terdiri dari:
1. CPU
Central Processing Unit adalah pusat segala perhitungan logika dan aritmatika.
Kecepatan berkisar antara 200Mhz sampai 600Mhz
2. Memori
Sebagai tempat penyimpanan program (aplikasi atau operating system) maupun data,
berupa ROM dan RAM
3. Media Penyimpan
Sebagai tempat penyimpanan file yang cukup besar. Biasanya berupa SD, MMC atau
Compact Flash.
4. Layar monitor (dengan layar sentuh)
Interaksi pengguna dan SBC secara langsung dilakukan melalui monitor LCD dilengkapi
dengan layar sentuh. Bagian ini tidak selalu disertakan dalam setiap aplikasi, namun
sangat berguna jika kita sedang mengembangkan sistem.
5. Antarmuka (interfacing)
Pemilihan SBC tentunya disesuaikan dengan sistem kontrol dan antarmukanya
(interfacing). Antarmuka yang populer saat ini adalah Serial Communication, USB, I2C,
SPI, PWM, Ethernet dan port untuk kamera.
6. RTC (Real Time Clock)
Bagian untuk menjaga agar SBC mengetahui waktu saat ini (tanggal, bulan, tahun, jam,
menit, detik). Bateri kancing dipakai supaya modul RTC tetap beroperasi walaupun SBC
dimatikan. Sedangkan perangkat lunak (OS) yang digunakan biasanya menggunakan
Linux OS atau Windows CE Embedded. Bahasa pemrograman bisa menggunakan adalah
C++ (GCC untuk Linux), Visual Studio .NET (Visual C/Visual Basic).
Gambar 1. Bagian-bagian SBC
Keterangan gambar:
1. konektor jaringan RJ 45 (Ethernet) 3. konektor USB untuk Host
2. konektor komunikasi serial 4. konektor USB untuk Device
5. masukan tegangan 5VDC 12. konektor layar LCD dan layar sentuh
6. keluaran tegangan 5VDC 13. RTC (Real Time Clock)
7. saklar utama 14. konektor tambahan untuk kamera
8. konektor komunikasi serial 15. media penyimpan (SD)
9. konektor komunikasi serial 16. tombol (untuk reset dan panah)
10. pengendali audio, konektor IN dan Out 17. LCD dengan layar sentuh
11. konektor JTAG, transfer program (flash)
Berikut adalah penerapan SBC di berbagai bidang :
1. Pengendali robot bergerak (mobile robot)
Yang menjadi pertimbangan digunakan SBC untuk robot bergerak (mobile robot) adalah ukuran
yang kecil namun dapat melakukan tugas multi (multitasking) yang sangat cepat dibanding
dengan mikrokontroler 8 atau 16 bit saja. Hal ini karena dukungan operating system. Untuk
membangun sistem ini, diperlukan modul tambahan sesuai kebutuhan robot seperti berbagai
macam sensor dan konvertor.
Gambar 2. Peralatan yang dibutuhkan untuk membangun mobile robot
Sebagai contoh, kita akan membangun kontrol robot yang dapat berpindah tempat (berjalan)
menggunakan roda. Tugas yang harus dilakukan adalah menghindari rintangan dan mencari
objek dengan warna tertentu. Untuk itu robot harus diberi sensor jarak (displacement sensor).
Devais untuk mendukung sistem ini yaitu:
USB-I2C converter
USB-Serial Port converter
Sensor ultrasonik SRF08 sebanyak 5 buah atau sesuai kebutuhan
Sensor kompas
Penggerak motor DC
Motor DC
2. Pengendali urutan kerja (sequence control) untuk proses otomasi
Kontrol untuk pneumatik dan hidrolik yang biasanya dilakukan oleh rangkaian relay dan PLC,
kini dapat juga kita gantikan dengan SBC. Untuk aplikasi ini, kita perlu tambahkan antarmuka
antara devais input/output melalui USB atau Serial Port. Di pasaran sudah ada USB I/O
berkapasitas 24 pin I/O yang dapat kita manfaatkan. Peralatan yang dibutuhkan:
USB-IO 24 pin
Modul input
Modul output (relay)
Aktuator (solenoid, motor, silinder, relay)
Gambar 3. Peralatan yang dibutuhkan untuk mengendalikan aktuator
Devais USB I/O berperan sebagai pengumpul data dari input dan output sekaligus juga berfungsi
untuk meneruskan sinyal dari SBC ke modul output. Sinyal ini bertaraf tegangan 0 dan 5volt DC
sebagai representasi logika 0 dan 1.
Pada setiap port dapat difungsikan sebagai input atau output.
Modul input digunakan untuk menyesuaikan devais masukan seperti tombol, saklar, sensor yang
bersifat diskret (digital) supaya dapat terbaca oleh USB I/O sebagai logika 0 atau 1.
Modul output berfungsi untuk meneruskan sinyal melalui relay, sehingga bisa digunakan untuk
peralatan yang membutuhkan tegangan tinggi.
3. Pencatat kehadiran dengan sidik jari (fingerprint Time Attendance)
Dewasa ini pencatat kehadiran atau absensi sudah semakin banyak menggunakan teknologi
finger print scan sebagai pembaca validasi kehadiran karyawan. Di pasaran sudah banyak produk
mesin absensi yang memiliki embedded processor atau SBC di dalamnya.
Gambar 4. Sistem absensi yang diintegrasikan dengan sistem informasi.
4. SBC sebagai Webserver
Adanya koneksi Ethernet pada SBC, pengguna dapat menghubungkannya melalui jaringan local
yang sudah ada. Sehingga mudah untuk pengaksesan database, email, internet, file
sharing ataupun webserver. Aplikasi webserver yang memungkinkan untuk diterapkan adalah
pengendalian peralatan industri melalui aplikasi berbasis web. Contohnya apabila SBC
digunakan untuk monitor atau kendali proses produksi, maka kita dapat melihat proses dan
hasilnya melalui stasiun / meja kerja kita masing-masing.
Gambar 5. Kendali mesin dan monitor yang terintegrasi dengan sistem informasi
Kesimpulan dan Saran
SBC dapat digunakan sebagai alternatif pengendalian proses dan otomasi di industri di samping
menggunakan PLC atau kontroler yang lain. Fleksibilitas yang cukup tinggi membuat SBC dapat
diterapkan di berbagai bidang, baik di proses manufaktur, perangkat bergerak, teknologi
informasi dan lain-lain.
Karena banyak sekali model dan tipe SBC, supaya penerapannya lebih optimal, maka perlu
dilakukan pemilihan secara teliti pada tahap desain sistem, dengan mempertimbangkan fungsi,
kapasitas I/O, dan peralatan penunjang lain.
[Link]
[Link]