Teknik Elektro LinksBarrier-Gate & Turnstile Interface, Thermostat, Relay Driver, Microcontroler Board

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.

 

Add a Comment

Your email address will not be published. Required fields are marked *

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>