Robot Programming Menggunakan Javascript? Apakah Bisa? - CRUDPRO

Robot Programming Menggunakan Javascript? Apakah Bisa?

Robot Programming Menggunakan Javascript? Apakah Bisa?

Baru-baru ini saya memberikan dakwah kilat di dotJS 2018 — sebagai pertemuan luar biasa mengenai perubahan terkini di dunia JavaScript — orang yang lain ada yaitu Devon Lindsey yang menarik berbicara tentang robot. Robot?! Ya, robot — yang berjalan di JavaScript! Hal ini memotivasi saya untuk melakukan penelitian online yang mengarahkan saya ke project Johnny-Five, suatu basis Robotika JavaScript dan IoT yang diatur oleh komune pengembang piranti lunak dan insinyur piranti keras yang semangat.

Lebih dari 75 pengembang telah memberikan kontribusi untuk membangun ekosistem yang kuat, dapat dikembangkan, dan dapat disusun — Johnny-Five

Kebetulan banyak informasi yang bisa ditemukan hanya tentang framework ini, juga dalam bentuk tutorial dan (e)book. Salah satunya yang menarik perhatian saya adalah Hands-On Robotics with JavaScript oleh Kassandra Perch. Buku ini memberi Anda semua dasar-dasar untuk memulai Johnny-Five dan membuat perangkat lunak untuk robot hanya dengan JavaScript biasa!

Peron Johnny-Five

Seperti yang dikatakan sebelumnya, kerangka kerja Johnny-Five dapat digunakan untuk menulis JavaScript untuk perangkat keras Robotika dan IoT. Framework ini didukung oleh komunitas kuat yang terdiri lebih dari 75 pengembang yang memberikan kontribusi pada perangkat lunak sumber terbuka Johnny-Five. Itu secara khusus dibuat untuk papan berbasis Arduino, tetapi secara harfiah dapat berjalan di semua jenis perangkat keras - seperti Raspberry Pi - menggunakan sesuatu yang disebut IO-plugins yang dikelola oleh komunitas.

Robot Programming Menggunakan Javascript? Apakah Bisa?

Apabila Anda melihat contoh di atas, Anda dapat menyaksikan kalau Anda perlu jalankan Node.js di fitur keras Anda agar bisa memasang rangka kerja Johnny-Five memakai npm. Kemudian perlu beberapa baris code untuk menjelaskan "Hello World" dengan LED yang berkedip-kedip pada papan berbasiskan Arduino.

Jika Anda melihat contoh di atas, Anda dapat melihat bahwa Anda hanya perlu menjalankan Node.js pada perangkat keras Anda untuk dapat menginstal kerangka kerja Johnny-Five menggunakan npm. Setelah itu hanya perlu beberapa baris kode untuk mengatakan "Hello World" dengan LED yang berkedip pada papan berbasis Arduino.

Contoh Raspberry Pi-3

Dalam buku oleh Kassandra Perch, semua contoh menggunakan Raspberry Pi-3 sebagai perangkat kerasnya, jadi mari kita coba membuat ulang contoh itu dengan menyiapkan aplikasi "Hello World" Raspberry Pi-3. Pertama, tentu saja Anda memerlukan perangkat keras dan lampu LED ini — yang disertakan di sebagian besar starter kit yang tersedia secara online. Pada perangkat ini Anda perlu menginstal sistem distribusi, yang saya sarankan untuk menggunakan Raspbian Lite berbasis Debian atau Raspbian Full.

Lantaran kami tidak memakai papan berbasiskan Arduino untuk panduan ini, Anda pun diwajibkan memasang plugin Johnny-Five IO untuk Raspberry Pi Anda. Untuk perumpamaan ini saya akan melewati beberapa langkah mengenai langkah memasang Raspbian dan memandang Anda telah mempunyai mekanisme distribusi dan Node.js diinstall — tapi ini semua diterangkan dengan benar-benar terang di buku atau banyak tutorial yang dapat ditemukan online. Karena itu, Anda perlu terhubung Raspberry Pi dan jalankan perintah berikut dari terminal Anda buat menginstal Johnny-Five dan IO-plugin:

npm i -g johnny-five raspi-io

Itu mudah kan? Untuk melanjutkan, Anda akan membuat direktori baru bernama led-blink di mana file proyek akan ditambahkan. Anda cukup melakukan ini menggunakan:

cd ~
mkdir led-blink & cd led-blink

Begitu berada di dalam direktori baru ini, kita dapat memulai proyek npm baru untuk membuat file package.json untuk aplikasi kita dengan mengeksekusi:

npm init -y

Sekarang kita telah menyiapkan lingkungan pengembangan, saatnya menambahkan kode yang diperlukan untuk menjalankan contoh kita. Ingat contoh yang dipublikasikan sebelumnya? Anda hanya perlu melakukan beberapa penyesuaian kecil agar contoh ini aktif dan berjalan di Raspberry Pi-3. Mari buat file baru dan beri nama blink.js dan tempatkan kode berikut di dalam file ini:

const five = require('johnny-five');
const Raspi = require('raspi-io');const board = new five.Board({  
  io: new Raspi()
}); board.on('ready', () => {   
  // Create an Led on pin 7 (GPIO4) on P1 and strobe it on/off  
  // Optionally set the speed; defaults to 100ms  
  (new five.Led('P1-7')).strobe(); 
});

Seperti yang Anda lihat pada cuplikan kode di atas, Anda mulai dengan mengimpor johnny-five dan raspi-io setelah Anda membuat instance Johnny-Five baru dan memberi tahu LED — yang saya asumsikan Anda letakkan di pin nomor 7 dihitung dari atas papan Raspberry Anda — harus menyala/berkedip setiap 100ms.

Karena ini adalah skrip JavaScript yang berjalan di Node.js, Anda cukup menjalankan node blink.js untuk memulai kedipan LED atau menambahkan ini ke perintah mulai npm di file package.json. Cek juga source code di Github jika ada yang kurang jelas.

Jadi di mana robot-robot itu?

Menulis blog tentang sebenarnya berbicara dengan robot menggunakan JavaScript akan sangat, sangat sulit karena subjek ini membutuhkan banyak penjelasan. Selain itu, mencakup semua pengaturan perangkat keras mungkin agak terlalu canggih untuk pengembang yang baru memulai dengan Raspberry Pi atau Johnny-Five