Pendahuluan

Orange Pi merupakan suatu open source single-board computer. Orange Pi sama sistem kerjanya dengan varian-varian Pi yang lain, seperti Raspberry Pi, Nano Pi, dst. Orange Pi dapat dipasangkan sistem operasi Android, Ubuntu, Debian, dan Raspbian.

orange-pi-zero

Gambar 1. Orange Pi Zero

Pin-Pin di dalam Orange Pi memiliki pengaturan sebagai berikut:

pinout

Gambar 2. Pin-pin di Orange Pi Zero

Instalasi Sistem Operasi

Format Kartu

Sediakan kartu microSD yang akan digunakan/dipasang. Sebelumnya, kartu SD tersebut harus diformat. Langkah-langkah format yang dilakukan adalah sebagai berikut:

1. Klik kanan direktori kartu microSD yang akan digunakan, lalu pilih menu format.

formatdisk

Gambar 3. Pilihan Format

2. Pastikan menu format seperti gambar di bawah. Kemudian, klik start

menuformat

Gambar 4. Tampilan Menu Format

Menambahkan Sistem Operasi

Sebelum masuk ke langkah selanjutnya, unduh aplikasi Win32DiskImager, kemudian download file image di https://www.armbian.com/orange-pi-zero/ dengan pilihan "bionic" dan extract isinya. Langkah-angkah instalasi sistem operasi adalah sebagai berikut:

1. Buka aplikasi Win32DiskImager

2. Cari file image yang sudah di-extract sebelumnya. Pastikan juga devais yang muncul pada menu Win32DiskImager adalah kartu MicroSD (meskipun biasanya sudah otomatis).

diskimager

Gambar 5. Tampilan di Win32DiskImager

3. Pilih pilihan "Write"

Konfigurasi Awal

Untuk mengakses Orange Pi Zero, pengguna dapat menghubungkan Orange Pi Zero terlebih dahulu ke komputer (dengan menggunakan USB to TTL atau FTDI, dengan memperhatikan RX, TX, dan GND) serta menggunakan aplikasi PUTTY. Setelah tersambung, langkah-langkah yang harus dilakukan adalah

1. Mengecek port yang digunakan Orange Pi Zero dengan Membuka Device Manager

portcom5

Gambar 6. Tampilan Device Manager

2. Mengatur Konfigurasi dalam aplikasi PUTTY sebagai berikut:

putty

Gambar 7. Pengaturan PUTTY

3. Ketika sudah dijalankan, maka program akan meminta pengguna untuk memasukkan username dan password. Username yang digunakan adalah “root”, sedangkan password awal yang digunakan adalah 1234. Setelah itu, pengguna akan diminta memasukkan password yang baru.

gantipassword

Gambar 8. Mengganti Password

4. Setelah itu, pengguna akan diminta untuk memasukkan informasi yang diperlukan. Silahkan mengisi informasi yang diperlukan, jika tidak langsung dilewat saja dengan menekan tombol ENTER.

username

Gambar 9. Memasukkan Informasi Yang Diperlukan

5. Tampilan umum Orange Pi yang akan muncul seperti biasanya adalah:

tampilanawal

Gambar 10. Tampilan Umum Orange Pi

6. Perbarui versi OS yang ada dengan menggunakan

sudo apt-get update

sudo apt-get upgrade

Pemograman Python

Pada bagian ini, akan diberikan tutorial mengenai pembacaan temperatur dan kelembaban ruangan dengan menggunakan sensor DHT22, Orange Pi Zero, Antares, dan HTTP RestFUL API

1. Install terlebih dahulu python dan “pip” dengan menggunakan:

sudo apt-get install python

sudo apt-get install python-pip

2. Setelah itu, pengguna dapat mengambil basis untuk pemograman dengan dengan menggunakan perintah:

git clone https://github.com/ionutpi/DHT22-Python-library-Orange-PI

3. Untuk memudahkan, program yang terdapat di dalam folder yang “dikloning” dapat dipindahkan ke bagian home dengan perintah:

cp /root/DHT22-Python-library-Orange-PI/dht22.py ~

4. Pengecekan apakah program tersebut berjalan dapat dilakukan dengan (pastikan juga sensor terpasang di port yang benar):

python dht22.py

5. Didapatkan hasil sebagai berikut:

hasilsensor

Gambar 11. Hasil Pembacaan Sensor

6. Setelah itu, buka aplikasi POSTMAN (Bisa cek kembali tutorial STORE DATA OF A PARTICULAR DEVICE). Setelah mengisi semua yang diperlukan (dalam JSON), klik bagian code.

kodepostman

Gambar 12. Pilihan "Code" pada Aplikasi POSTMAN

7. Pilih bahasa yang akan digunakan (pastikan jenis Python yang Anda pakai dengan mengetik "python -V"). Bahasa pemograman lain juga dapat digunakan (selama tersedia).

kodepostman2

Gambar 13. Pilihan Kode

kodepostman3

Gambar 14. Kode Mengirimkan Data Dalam Bahasa Python

8. Program yang didapat tersebut kemudian dipindahkan ke dalam suatu file program baru dan diedit. Tujuannya untuk mendapatkan data temperatur dan kelembaban setiap 1 detik lalu mengirimkannya ke Antares. Maka, didapatkan


from pyA20.gpio import gpio
from pyA20.gpio import port
 
#import RPi.GPIO as GPIO
import dht22
import time
import datetime
import requests 
# initialize GPIO
#gpio.setwarnings(False)
#gpio.setmode(GPIO.BCM)
PIN2 = port.PA6
gpio.init()
#gpio.cleanup()
 
 
# read data using pin 14
instance = dht22.DHT22(pin=PIN2)
 
while True:
    result = instance.read()
    if result.is_valid():
        print("Last valid input: " + str(datetime.datetime.now()))
        print("Temperature: %.2f C" % result.temperature)
        print("Humidity: %.2f %%" % result.humidity)
 
    time.sleep(1)
	
	url = "http://platform-iot.unnes.ac.id/~/antares-cse/antares-id/SmartCoba/SmartS1"

	payload = "{\r\n  \"m2m:cin\": {\r\n    \"con\": \"{\\\"key1\\\":"+str(datetime.datetime.now())+", \\\"key2\\\":\\\""+str(result.temperature)+"\\\", \\\"keyN\\\":\\\""+str(result.humidity)+"\\\"}\"\r\n  }\r\n}"
	headers = {
		'X-M2M-Origin': "access-id:access-password",
		'Content-Type': "application/json;ty=4",
		'Accept': "application/json",
		'Cache-Control': "no-cache",
		'Postman-Token': "0314aaab-c1bf-4b4c-90c8-7b2865e26965"
		}

	response = requests.request("POST", url, data=payload, headers=headers)

	print(response.text)

							

Jika ketika program tersebut dieksekusi dan terdapat kekurangan modul (library) Python tertentu, maka pengguna dapat mengunduh library tersebut dengan:

pip install “module_name”

9. Hasil di Orange PI dan di Antares didapatkan sebagai berikut:

hasil

Gambar 15. Hasil Pembacaan dan Pengiriman Sensor

datadapat

Gambar 16. Data yang Diterima di Antares