APLIKASI CLIENT ARDUINO RASPBERRY-PI
Sartono Indo Frans#1 , Prisma Megantoro #2,
#Program Studi Metrologi dan Instrumentasi, Sekolah Vokasi, Universitas Gadjah Mada,
Jln. Sekip Unit 1 Catur Tunggal Yogyakarta 55281 INDONESIA
𝑠𝑎𝑟𝑡𝑜𝑛𝑜.𝑖𝑛𝑑𝑜.𝑓@[Link], [Link]@[Link]
Abstarck
Aplikasi client arduino raspi merupakan aplikasi yang digunakan untuk menghubungkan server dengan
client sebagai informasi pendukung penerimaan informasi pemantauan yang dikonversi sebagai nilai
keluarannya. Arduino merupakan platform untuk melakukan komputasi fisis berbasis mikrokontroler.
Beberapa sensor dapat dihubungkan pada input arduino dan aktuator dapat dihubungkan pada output
sehingga membentuk suatu sistem. Saat ini arduino sudah banyak digunakan sebagai remote system
melalui jaringan komputer rnamun karena keterbatasan sumber daya yang dimiliki arduino akan
sangat sulit untuk membuat sebuah sistem yang optimal. kali ini membahas perancangan dan
pembuatan application programming interface server yang berfungsi sebagai jembatan antara aplikasi
dan arduino pada jaringan komputer atau internet sehingga dapat memudahkan pemrogram untuk
membuat aplikasi dan meringankan kerja arduino. Server seperti layaknya perangkat elektronik
lainnya, apabila sebuah perangkat bekerja maka perangkat elektronik tersebut mengeluarkan panas
sebagai efek samping dari sumber daya listrik yang digunakan. Monitoring menjadi hal yang penting
sebagai salah satu faktor pendukung untuk memastikan sebuah sistem berjalan dengan baik. Sistem
monitoring eksternal digunakan sebagai monitoring kepada administrator server untuk mengetahui
suhu ruangan server. Single-board computer adalah salah satu terobosan dalam dunia manufaktur
board computer yang dimana board dapat dibuat semakin kecil dengan kemampuan yang sama tetapi
dengan konsumsi daya yang lebih rendah. Dengan jenis board computer seperti ini dapat digunakan
untuk berbagai keperluan. Salah satunya adalah menggabungkannya modul pengukur suhu ruangan
untuk mengukur suhu ruangan
Keyword : Suhu, Singe-board Computer, Raspberry Pi, Sensor
A. Pendahuluan [Link] dapat merasakan suhu
disekitar dengan cara menghubungan dengan
Perkembangan teknologi dibidang
beberapa sensor pada input dan dapat
elektronika sangat berkembang pesat. Saat ini
mengendalikan sesuatu dengan cara
bermunculan elektronic board yang memiliki
menghubungankan dengan actuator pada
fitur-fitur yang berbeda-beda,salah satunya
outputnya. Untuk membuat suatu aplikasi
adalah arduino. Arduino merupkana platform
client- server yang berjalan pada jaringan
untuk melakukan komputasi fisis yang berbasis
komputer dan dapat berinteraksi dengan digunakan untuk akuisisi data seperti
arduino, aplikasi tersebut harus mampu Mikrokontroler Arduino
terkoneksi dan juga bisa melakukan
B. Dasar Teori
komunikasi data .
Sensor LM35 merupakan salah satu jenis
Dengan semakin berkembangnya
tranduser aktif yaitu piranti yang mengubah
teknologi, aplikasi yang dapat dibuat tidak
suatu bentuk energi seperti mengubah
hanya aplikasi desktop saja tetapi aplikasi
perubahan temperatur menjadi sinyal-sinyal
berbasis web maupun aplikasi mobile. Agar
listrik yang memerlukan catu daya dari luar.
dapat membentuk koneksi dan melakukan
Penguat operasional adalah piranti untuk
komunikasi data, aplikasi dan arduino harus
menguatkan sinyal. ADC adalah piranti untuk
menggunakan protokol yang sama. Dengan
mengubah sinyal analog menjadi data digital.
keterbatasan sumber daya yang dimiliki oleh
LM35 memiliki keakuratan tinggi dan
arduino, akan sangat sulit untuk
kemudahan perancangan jika dibandingkan
mengimplementasikan sistem tersebut,
dengansensor suhu yang lain, LM35 juga
sehingga diperlukan sebuah interface server
mempunyai keluaran impedansi yang rendah
yang dapat menjembatani aplikasi dan
dan linieritas yang tinggi sehingga dapat
arduino. Mikrokontroller adalah salah satu dari
dengan mudah dihubungkan dengan rangkaian
bagian dasar dari suatu sistem komputer.
kendali khusus serta tidak memerlukan
Meskipun mempunyai bentuk yang jauh lebih
penyetelan [Link] tegangan sensor
kecil dari suatu komputer pribadi dan komputer
ini dapat mencapai 30 volt akan tetapi yang
mainframe, mikrokontroler dibangun dari
diberikan kesensor adalah sebesar 5 volt,
elemen-elemen dasar yang sama.
sehingga dapat digunakan dengan catu daya
Secara sederhana, komputer akan
tunggal dengan ketentuan bahwa LM35 hanya
menghasilkan keluaran spesifik berdasarkan
membutuhkan arus sebesar 60 μA hal ini berarti
masukan yang diterima dan program yang
LM35 mempunyai kemampuan menghasilkan
dikerjakan. Seperti umumnya komputer,
panas (self-heating) dari sensor yang dapat
mikrokontroller adalah alat yangmengerjakan
menyebabkan kesalahan pembacaan yang
instruksi-instruksi yang diberikan kepadanya.
rendah yaitu kurang dari 0,5 ºC pada suhu 25 ºC
Artinya, bagian terpenting dan utama dari suatu
Arduino uno dapat diaktifkan melalui koneksi
sistem terkomputerisasi adalah program itu
USB atau dengan catu daya eksternal. Sumber
sendiri yang dibuat oleh seorang programmer .
listrik dipilih secara otomatis. Eksternal (non-
Program ini menginstruksikan komputer untuk
USB) daya dapat datang baik dari AC-DC
melakukan jalinan yang panjang dari aksi-aksi
adaptor atau baterai. Adaptor ini dapat
sederhana untuk melakukan tugas yang lebih
dihubungkan dengan cara menghubungkannya
kompleks yang diinginkan oleh programmer.
plug pusat-positif 2.1mm ke dalam board
Sistem mikrokontroller tersebut dapat
colokan listrik. Lead dari baterai dapat
dimasukkan ke dalam header pin Gnd dan Vin b) Suhu lingkungan ini diubah menjadi
dari konektor Power. Board dapat beroperasi tegangan listrik oleh rangkaian di
pada pasokan daya dari 6 -20 volt. Jika dalam IC, dimana perubahan suhu
diberikan dengan kurang dari 7V, berbanding lurus dengan perubahan
bagaimanapun, pin 5V dapat menyuplai kurang tegangan output.
dari 5 volt dan board mungkin tidak stabil. Jika
c) Pada seri LM35 Vout=10 mV/oCTiap
menggunakan lebih dari 12V.
perubahan 1oC akan menghasilkan
Secara prinsip sensor akan melakukan
perubahan tegangan output sebesar
penginderaan pada saat perubahan suhu setiap
10mV
suhu 1 ºC akan menunjukan tegangan sebesar
1.) Kelebihan dan Kelemahan Sensors LM35
10 mV. Pada penempatannya LM35 dapat
ditempelkan dengan perekat atau dapat pula a. Kelebihan :
disemen pada permukaan akan tetapi suhunya a) Rentang suhu yang jauh, antara -55
akan sedikit berkurang sekitar 0,01 ºC karena sampai +150 o
C Low self-heating,
terserap pada suhu permukaan tersebut. Dengan sebesar 0.08 oC
cara seperti ini diharapkan selisih antara suhu
a. Beroperasi pada tegangan 4 sampai
udara dan suhu permukaan dapat dideteksi oleh
30V
sensor LM35 sama dengan suhu disekitarnya,
jika suhu udara disekitarnya jauh lebih tinggi b. Rangkaian tidak rumit
atau jauh lebih rendah dari suhu permukaan, c. Tidak memerlukan pengkondisian
maka LM35 berada pada suhu permukaan dan sinyal
suhu udara [Link] yang jauh
2. Kelemahannya
diperlukan penghubung yang tidak terpengaruh
Membutuhkan sumber tegangan untuk
oleh interferensi dari luar, dengan demikian
beroperasi
digunakan kabel selubung yang ditanahkan
sehingga dapat bertindak sebagai suatu antenna C. Metode Penelitian
penerima dan simpangan didalamnya, juga Alat ini terdiri dari SBC Raspberry Pi
dapat bertindak sebagai perata arus yang model B+, Arduino Uno, relay, sensor arus
mengkoreksi pada kasus yang sedemikian, ACS712, adaptor 220 VAC – 5 VDC dan Wifi
dengan mengunakan metode bypass kapasitor USB. Raspberry Pi digunakan sebagai web
dari Vin untuk ditanahkan. server yang akan digunakan sebagai media
Prinsip kerja sensor LM35 sebagai berikut: interaksi web yang digunakan untuk mengatur
aliran listrik yang dialirkan ke relay dan juga
a) Suhu lingkungan di deteksi
digunakan sebagai media pengolahan data dari
menggunakan bagian IC yang peka
Arduino yang akan digunakan untuk membuat
terhadap suhu
grafik dalam halaman web. Sensor arus
ACS712 berfungsi untuk membaca arus yang dihubungkan kerelay, relay pada alat ini
mengalir pada beban. Adaptor 220 VAC – 5 berfungsi sebagai perantara antara Raspberry Pi
VDC memiliki peranan sebagai sensor danlistrik 220 VAC, hal tersebut dikarenakan
tegangan yang berfungsi untuk menurunkan output dari Raspberry Pi memiliki besaran 5
tegangan AC yang kemudian di searahkan VDC, sehingga dibutuhkan relay agar listrik
menjadi tegangan DC. Arduino Uno berfungsi AC tersebut dapat dikontrol (dihidupkan dan
sebagai pembaca data dari sensor arus dan dimatikan) oleh Raspberry Pi
sensor tegangan. Relay berfungsi sebagai
2.1. Pembuatan Alat
interface antara Raspberry dengan aliran listrik
Penelitian ini adalah penelitian purnarupa
AC. Wifi usb digunakan untuk pertukaran data
sehingga pada saat pembangunan alat yang
yang menggunakan jaringan intranet agar
akan digunakan untuk mengkur suhu ruangan
sistem kontrol dan akuisisi data dapat dilakukan
masih menggunakan breadboard. Adapun alat
dari mana saja selama perangkat yang
yang dibutuhkan adalah sebagai berikut:
digunakan terhubung dengan jaringan
[Link] yang akan diteliti ini a. Raspberry Pi sebagai pusat proses
menggunakan sensor ACS712 dan adaptor 220 pengukuran suhu dan pusat penyimpanan data
VAC – 5 VDC, sensor tersebut membaca data hasil pengukuran.
arus dan data tegangan yang mengalir pada b. Sensor suhu yang digunakan adalah
beban. Data arus dan tegangan tersebut sensor suhu digital DS18B20. [8] Pemilihan
kemudian akan dikirim ke Arduino melalui pin sensor ini berdasarkan kemudahan akses dari
ADC, hal tersebut dikarenakan data dari sensor deteksi suhu dari sensor tersebut yang sudah
arus dan sensor tegangan masih berupa data berupa data digital sehingga dapat dengan
analog, sehingga harus diubah menjadi data mudah diolah pada Raspberry Pi. Sensor suhu
digital, setelah data yang dibutuhkan didapat, ini dikoneksikan ke Raspberry Pi melalui port
maka terjadi proses perekayasaan program agar GPIO yang terdapat di Raspberry Pi.
data yang dihasilkan sesuai dengan yang
c. Resistor 4,8 kilo Ohm. Penambahan
dibutuhkan. Data yang telah direkayasa
resistor pada pembuatan alat ini bertujuan untuk
menggunakan program tersebut kemudian di
menstabilkan arus yang dari ensor DS18B20
kirim dengankabel ke Raspberry Pi
sesuai dengan datasheet dari produsen sensor
menggunakan pengiriman serial. Data serial
DS18B20 tersebut
tersebut kemudian diproses kembali oleh
Raspberry Pi agar dapat disimpan di [Link] Aplikasi
[Link] pada Raspberry Pi ini yang Pada perancangan aplikasi pengukuran suhu
kemudian akan menampilkan data dalam dibagi menjadi 2 bagian, yaitu flowchart
halaman web akuisisi data. Halaman web aplikasi dan desain antar muka aplikasi.
kontrol data akan langsung berinteraksi dengan
pin output pada Raspberry Pi, pin tersebut
Adapun perancangan aplikasinya adalah database. Client mengirimkan request ke web
sebagai berikut service sesuai dengan skema web service yang
dibuat. Web service mengolah data request dari
2.2.1. Flowchart Aplikasi
client kemudian melakukan query ke database
Penelitian aplikasi pengukuran suhu ini terbagi
untuk melihat log terakhir dari sensor. Setelah
menjadi 2 proses utama, yaitu:
melakukan query, web service memberikan
[Link]. Proses Pencatatan dan Penyimpanan respon kepada client, dan program client
Data Suhu menampilkan hasil terakhir dari pengukuran
Proses awal dari sistem ini adalah bagaimana suhu.
merancang system yang dapat melakukan
pengukuran terhadap suhu ruangan. Proses
pengukuran suhu dilakukan dengan bantuan
sensor digital DS18B20. Gambar 2
menjelaskan bahwa program yang dibuat dalam
Raspberry Pi mengirimkan sinyal ke sensor
suhu dengan memberikan sinyal listrik melalui
antarmukan pin GPIO. Sensor mengirimkan
respon berupa hasil pengukuran suhu dalam
bentuk nilai besaran suhu di sekitar sensor.
Hasil respon tersebut kemudian disimpan
sebagai catatan pengukuran suhu pada waktu
tersebut ke dalam database yang telah dibuat.
Sistem secara periodic melakukan proses
tersebut berulang kali dengan interval waktu
setiap menit.
[Link]. Proses Monitoring Suhu dari Client
Proses monitoring pada client dikelola oleh web
service dari server yang diletakkan pada
Raspberry Pi. Pemilihan penggunaan web
service dikarenakan untuk pengembangan
selanjutnya tidak menutup kemungkinan untuk
pengembangan aplikasi lain, baik yang berbasis
mobile, maupun desktop sekalipun. Pada
Gambar 3, Client mengakses web service untuk
mengetahui data suhu terbaru yang dicatat oleh
[Link]
Start
Inisialisasi kondisi
pin
SBC
B
a
c Menampilkan indikator awal
halaman web
Pengolahan data pembacaan sensor
menjadi data arus dan tegangan Input pada
sebenarnya halaman
web kontrol beban
Pengkalian data arus dan tegangan
untuk mendapatkan data daya tida Apakah data pada
semu SBC
bernilai 1 ?
y
Pengiriman data arus, tegangan
dan daya semu melalui komunikasi Data SBC akan berubah
data serial menjadi 0 dan indikator
menjadi off
Input data Menampilkan
serial dari korelas
Arduino diterima
dan
kapitabilit
Input pada
halaman
Penyimpanan data serial ke
web kontrol beban
basisdata pada SBC
Raspberry
Apakah data pada tida
SBC
Input data
d bernilai 0 ?
ar
Data SBC akan berubah
Menampilkan data dalam interface menjadi 1 dan indikator
menjadi on
halaman web akuisisi data
Relay on
Seles
Gambar 1. Diagram alir pembacaan data
Gambar 1.1 Data pengambilang Suhu Sensor LM35-Arduino-Raspberry Pi
Gambar 1.2 Data pengambilang Suhu Sensor LM35-Arduino-Raspberry Pi
Gambar 1.3 grafik suhu dari sensor (excel)
Gambar 1.4 Nilai dari excel Sensor LM35 Arduino-Raspi
[Link] masuk akan terbagi, sehingga pembacaan
sensor tidak menjadi akurat. Sedangkan untuk
Sensor suhu LM35 adalah salah satu dari
penempatan sensor tegangan seperti gambar di
beberapa jenis sensor suhu yang sering
atas adalah karena nilai pembacaan tegangan
digunakan untuk project sistem monitoring
akan sama dengan nilai tegangan di Z, hal
suhu/temperatur. Hal ini mungkin cukup
tersebut terjadi karena adanya percabangan arus
beralasan dikarenakan sensor LM35 cukup
pada Z dan sensor tegangan, percabangan arus
murah, mudah, dan banyak di pasaran.
tersebut akan menjadi tolak ukur pada
Karakteristik dari LM35 adalah memiliki
pembacaan rangkaian sensor. Setelah data
sensitivitas suhu sebesar 10mV/°C yaitu setiap
penggunaan listrik didapatkan, Arduino akan
kenaikan suhu sebesar 1 °C, maka tegangan
mengirimkan data tersebut ke Raspberry Pi.
keluarannya mengalami kenaikan sebesar
Setelah data diterima oleh Raspberry Pi, data
10mV. Itu berarti jika kita melakukan
tersebutakan disimpan kedalam database yang
pengukuran menggunakan avometer ke kaki
berada dalam Raspberry Pi, data dari database
output LM35, misalkan hasil yang kita ukur
tersebut akan dikirim ke server yang kemudian
berupa tegangan 0.35 V,maka itu berarti
akan ditampilkan dalam halaman web dengan
bernilai 35 °C jika diubah ke Celcius.
menggunakan WiFi USB sebagai perantara
Jangkauan suhu yang dapat diukur oleh LM35
antara Raspberry Pi dengan jaringan intranet.
berupa tegangan keluaran dengan range -0.55 –
1.5 volt berarti -55 °C – 150 °C. Salah satu 1.1.1 Penjelasan Pembuatan Perangkat
sistem dalam rangkaian sistem yang diteliti Lunak pada Arduino Uno
berkerja berdasarkan prinsip dari daya listrik.
Pembuatan perangkat lunak yang digunakan
sebuah sensor tegangan dan sensor arus akan
pada Arduino bertujuan untuk pemprosesan
dibaca nilainya, setelah data dari sensor arus
pembacaan data dari sensor yang digunakan.
dan sensor tegangan didapatkan, data tersebut
Pada pembuatan perangkat lunak pada Arduino
kemudian diproses dengan menggunakan
digunakan software Arduino IDE dengan
prinsip daya listrik, yaitu dengan mengalikan
menggunakan bahasa C++. Untuk
nilai tegangan dan arus yang didapatkan.
mendapatkan nilai pembacaan pada sensor arus
Sensor-sensor tersebut terhubung dengan pin
ACS712 , sebuah sensor arus ACS712
ADC yang terdapat pada Arduino. Sensor arus
dihubungkan dengan pin A2 dan Adaptor
dan sensor tegangan akan disusun seperti
dihubungkan dengan pin A0. Pin tersebut
gambar di atas. Pengaturan penempatan pada
difungsikan untuk pembacaan nilai ADC dari
sensor arus seperti gambar di atas adalah
sensor yang digunakan.
dikarenakan prinsip dari hukum 1 kirchoff yang
Nilai ADC yang didapatkan dari sensor diubah
menyatakan arus yang masuk sama dengan arus
oleh Arduino menjadi nilai arus dan nilai
yang keluar, jadi apabila sensor arus
tegangan yang sebenarnya yang selanjutnya
dihubungkan secara paralel maka arus yang
diproses dengan menggunakan rumus daya
semu, agar didapatkan nilai daya. Nilai memicu perubahan pada tampilan halaman
pengukuran daya yang didapatkan kemudian web, yang sebelumnya mengindikasikan off,
dikirim ke SBC Raspberry dengan akan berubah menjadi on, dan apabila
menggunakan komunikasi serial. indikasinya adalah on, makan akan berubah
menjadi off.
1.2.2 Penjelasan Pembuatan Perangkat
untuk Interface Halaman Web F. KESIMPULAN
Pembuatan perangkat lunak halaman web 1. Sistem dan aplikasi ini dirancang dan
bertujuan untuk membuat kontrol beban dan dibuat untuk mempermudah adminserver
menampilkan grafik penggunaan daya yang dalam memonitoring keadaan ruagan tempat
digunakan oleh beban. Dalam pembuatannya server berada, sehinggajika terjadi sesuatu pada
menggunakan bahasa HTML, PHP dan server maka admin akan segera mengetahui
Javascript sebagai bahasa pemrogramannya. dandapat segera melakukan penanganan agar
tidak menimpulkan dampak yangsignifikan
Pembuatan interface halaman web akuisisi data
pada server tersebut. Sistem monitoring dibuat
menggunakan data yang terdapat pada
denganmenggunakan Raspberry Pi, sensor suhu
database. Pembuatan grafik yang terdapat pada
dan webcam sebagai alatpengambilan data
halaman web akuisisi data menggunakan
monitoring. Perintah untuk pengambilan data
highchart sebagai charting library yang benar-
dan Raspberry pi dapat membaca reseptor
benar menggunakan bahasa Javascript sebagai
digital secara langsung, akan tetapi raspberry pi
bahasa pemrogramannya. Pembuatan interface
tidak bisa langsung dihubungkan dengan sensor
halaman web kontrol beban menggunakan pin
analog. Raspberry pi juga dapat meng-generate
yang terdapat pada Raspberry Pi sebagai
PMW dengan bantuan software PWM
pengontrol beban. Raspberry Pi akan
menghidupkan atau mematikan pin yang 2. Kelebihan utama raspberry pi adalah ia
terhubung dengan relay setelah ada data input dapat melakukan segala hal yang dapat
yang dikirim oleh halaman web. Jika halaman dilakukan oleh komputer atau laptop dengan
web di klik, maka halaman web akan merubah sistem operasi Linux. Misalnya membuat
tampilan yang ada pada web, proses tersebut server, membuat program dengan berbagai
akan terasa bersamaan dengan perubahan data macam bahasa, terutama bahasa tingkat tinggi
pada pin Raspberry Pi. Proses yang terjadi seperti Phyton Raspberry pi berjalan dengan
dalam pembuatan halaman web kontrol beban menggunakan sistem operas open source,
adalah mengubah pin yang sebelumnya bernilai Linux. Raspberry pi juga dapat dihubungkan
0 menjadi 1, dan apabila pin yang sebelumnya dengan monitor komputer biasa, dengan
bernilai 1, maka akan diubah menjadi 0. Setelah dibantu tabahan port untuk dihubungkan
data tersebut diubah, maka halaman web dengan mouse dan [Link] pi dapat
melakukan pengecekan terhadap perubahan bekerja layaknya desktop seperti membuat
pin. Perubahan pin tersebut kemudian akan dokumen, mengolah data dengan menggunakan
spresdsheet, menonton film, bermain game, dan [Link]
tentu saja coding. y_Pi
3. Sistem yang dibangun menggunakan 2
sistem berbeda, yaitu sistem back-end dan
[Link]
sistem front- end. Sistem back-end
06/17/pengetahuan-dasar-dan-
menggunakan bahasa pemrograman Python
pemrograman-raspberry-pi/
yang mengakes sensor suhu DS18B20 lalu
menyimpannya ke dalam database. Sedangkan
system front-end menggunakan bahasa
pemrograman PHP yang untuk mengamati
perubahan suhu melalui web. Selain itu juga,
sistem front-end dilengkapi dengan web service
yang memudahkan pengembangan sistem ke
arah multiplatform.
G. DAFTAR PUSTAKA
ttp://[Link]/201
5/05/apa-perbedaan-arduino-dan-
[Link]
[Link]
10/[Link]