Nyobain Framework Gobot Untuk Raspberry Pi


Tulisan ini adalah hasil eksperimen saya menggunakan Gobot, yakni framework untuk robot, drone dan Internet of Things (IoT) yang ditulis menggunakan bahasa Go. Eksperimen ini saya lakukan berdasarkan referensi pada halaman situs Gobot dengan alamat:

https://gobot.io/documentation/platforms/raspi/

  Hardware yang saya gunakan dalam eksperimen ini adalah:

  • board Raspberry Pi B+ (ARM6)
  • project board
  • resistor 1K ohm
  • LED 5mm warna merah
  • kabel jumper male-to-female

Rangkaian LED aktif-low terhubung ke pin 3V3 dan pin 7. Rangkaian keseluruhan ditunjukkan oleh gambar berikut ini. Sistem operasi yang saya gunakan untuk Raspberry Pi adalah piCore, yakni TinyCoreLinux untuk arsitektur ARM.

 

Instalasi Framework Gobot

Untuk menginstalasi Gobot, perintahnya sangat sederhana, yakni:

   $ go get -d -u -v gobot.io/x/gobot/...

 

Program LED Blink Gobot – Raspi

package main

import (
    "time"
    "gobot.io/x/gobot"
    "gobot.io/x/gobot/drivers/gpio"
    "gobot.io/x/gobot/platforms/raspi"
)

func main() {
    r := raspi.NewAdaptor()
    led := gpio.NewLedDriver(r, "7")
    work := func() {
            gobot.Every(500*time.Millisecond, func() {
                led.Toggle()
            })
    }
    robot := gobot.NewRobot("blinkBot",
        []gobot.Connection{r},
        []gobot.Device{led},
        work,
    )
    robot.Start()
}

Saya menyimpan kode program di atas dengan nama file raspi.go.

 

Kompilasi raspi.go

Untuk menghasilkan file biner (executable) versi Raspberry Pi B+ (ARMv6), kita bisa melakukan cross-compile dengan perintah sebagai berikut:

   $ GOARM=6 GOARCH=arm GOOS=linux go build raspi.go

GOARM=6 digunakan karena Raspberry Pi B+ masih menggunakan ARMv6. Untuk Raspberry Pi 2 dan Raspberry Pi 3, gunakan GOARM=7. Setelah proses kompilasi selesai, maka akan tercipta file biner raspi untuk ARMv6. Selanjutnya kita bisa meng-copy file raspi ke Raspberry Pi melalui USB Flashdisk atau menggunakan koneksi jaringan sebagai berikut:

   $ scp raspi tc@192.168.1.200:/home/tc/
   $ ssh -t tc@192.168.1.200 "sudo ./raspi"

Dan LED merah pada pin 7 pun berkedip-kedip dengan durasi 500ms ON dan 500ms OFF.

Sekian laporan hasil eksperimen yang saya lakukan, semoga bermanfaat.

 

Iklan

Tinggalkan Balasan

Isikan data di bawah atau klik salah satu ikon untuk log in:

Logo WordPress.com

You are commenting using your WordPress.com account. Logout /  Ubah )

Foto Google+

You are commenting using your Google+ account. Logout /  Ubah )

Gambar Twitter

You are commenting using your Twitter account. Logout /  Ubah )

Foto Facebook

You are commenting using your Facebook account. Logout /  Ubah )

w

Connecting to %s

This site uses Akismet to reduce spam. Learn how your comment data is processed.