Daftar Isi:

Membangun Dasbor Cuaca Menggunakan Dark Sky API: 5 Langkah (dengan Gambar)
Membangun Dasbor Cuaca Menggunakan Dark Sky API: 5 Langkah (dengan Gambar)

Video: Membangun Dasbor Cuaca Menggunakan Dark Sky API: 5 Langkah (dengan Gambar)

Video: Membangun Dasbor Cuaca Menggunakan Dark Sky API: 5 Langkah (dengan Gambar)
Video: gambar 3D pemula #art #drawing #draw 2024, Juli
Anonim
Image
Image

Dark Sky berspesialisasi dalam prakiraan cuaca dan visualisasi. Aspek paling keren dari Dark Sky adalah API cuaca mereka yang dapat kita gunakan untuk mengambil data cuaca dari hampir semua tempat di dunia. Bukan hanya cuaca hujan atau cerah tetapi suhu, titik embun, hembusan angin, kelembaban, curah hujan, tekanan, indeks UV, dan banyak lagi, semuanya tersedia dengan mudah di mana pun Anda inginkan, kapan pun Anda mau.

Mari pelajari cara menggunakan API super sederhana Dark Sky. Jika Anda baru menggunakan API, saya berjanji ini akan sangat mudah! Dan jika Anda pernah menggunakan API sebelumnya, saya harap kami dapat mengajari Anda sesuatu yang baru dengan kode yang telah kami gunakan.

Apa yang Anda perlukan untuk proyek ini:

  • Akun API Langit Gelap
  • Akun Negara Awal
  • Raspberry Pi atau Laptop

Langkah 1: Memulai

Kami telah melakukan banyak pekerjaan untuk Anda menyusun kode dan mengatur informasinya. Kami hanya membutuhkan Anda untuk melakukan beberapa penyesuaian di sepanjang jalan. Jika Anda ingin sedikit tantangan, buat beberapa perubahan pada kode kami dan data cuaca apa yang dikirim, ada kemungkinan tanpa batas!

Untuk mengambil semua hal yang telah kami siapkan untuk Anda, Anda harus mengkloning repositori dari GitHub. GitHub adalah layanan yang memungkinkan kita untuk menyimpan, merevisi, dan mengelola proyek seperti ini. Anda akan ingin menjalankan skrip ini pada perangkat khusus. Raspberry Pi adalah pilihan sempurna untuk menjalankan aplikasi seperti tutorial ini.

Untuk mengkloning repositori yang perlu kita lakukan adalah masuk ke terminal Pi kami, atau terminal komputer Anda yang SSH ke dalam pi Anda dan ketik perintah ini:

$ git clone

Tekan enter dan Anda akan melihat informasi ini:

Mengkloning ke 'darksky'…

remote: Menghitung objek: 2, selesai. remote: Total 2 (delta 0), reused 0 (delta 0), pack-reused 2 Membongkar objek: 100% (2/2), selesai. Memeriksa konektivitas… selesai.

Setelah Anda melihat ini maka selamat, Anda telah berhasil mengkloning Repo GitHub dan memiliki semua file yang diperlukan untuk membangun proyek ini. Sebelum kita melanjutkan ke langkah berikutnya, mari luangkan waktu untuk menjelajahi direktori ini dan mempelajari beberapa perintah baris perintah dasar.

Ketik perintah di bawah ini ke terminal Anda:

$ l

Perintah ini mencantumkan semua yang tersedia di direktori tempat Anda berada saat ini. Daftar ini menunjukkan bahwa Repo GitHub kami telah berhasil dikloning ke direktori kami dengan nama "darksky." Mari kita lihat apa yang ada di direktori itu. Untuk pindah ke direktori, yang perlu Anda lakukan adalah mengetikkan “cd” dan kemudian ketik nama direktori yang ingin Anda tuju.

Dalam hal ini, kami akan mengetik:

$cd darksky

Setelah kami menekan enter, Anda akan melihat bahwa kami sekarang berada di direktori darksky. Mari kita ketik "ls" lagi untuk melihat file apa yang telah kita instal di pi kita.

README.md darksky.py …

Di sini kita melihat bahwa kita memiliki dokumen readme dan file python. Mari kita lihat darksky.py menggunakan perintah "nano". Perintah nano memungkinkan kita untuk membuka editor teks nano di mana kita memiliki semua kode python untuk setiap segmen proyek ini. Silakan dan ketik:

$ nano darksky.py

Di sini Anda dapat melihat semua kode yang telah kami siapkan untuk Anda untuk proyek ini. Kami tidak akan membuat perubahan apa pun pada dokumen ini dulu, tetapi jangan ragu untuk menggulir dan melihat apa yang akan kami lakukan nanti dalam tutorial ini.

Langkah 2: Menggunakan Dark Sky API

Keadaan Awal
Keadaan Awal

Untuk menggunakan Dark Sky API, pertama-tama Anda memerlukan kunci API Anda sendiri. Jangan khawatir, mendapatkan kunci API itu cepat dan gratis. Yang perlu Anda lakukan adalah pergi ke situs web dan klik "Coba Gratis" untuk membuat akun.

  • Anda mendapatkan 1.000 panggilan API gratis setiap hari. Setiap permintaan API di atas batas harian gratis dikenakan biaya $0,0001.
  • Batas ini secara otomatis disetel ulang setiap hari pada tengah malam UTC.
  • Permintaan Prakiraan mengembalikan prakiraan cuaca saat ini untuk minggu depan.
  • Permintaan Time Machine mengembalikan kondisi cuaca yang diamati atau diperkirakan untuk tanggal di masa lalu atau masa depan.

Kunci API Dark Sky rahasia Anda akan terlihat seperti ini: 0123456789abcdef9876543210fedcba.

Anda dapat membuat panggilan API ke Dark Sky dengan mengetikkan URL ke browser Anda dalam format berikut:

api.darksky.net/forecast/[key]/[latitude], [longitude]

Ganti "kunci" dengan kunci API Dark Sky Anda dan garis bujur/lintang dengan apa pun yang Anda inginkan. Anda dapat menemukan garis bujur dan garis lintang dengan membuka Google Maps dan menelusuri lokasi Anda. Nilai-nilai itu akan ada di URL. Salin dan tempel URL langit gelap di atas dengan kunci akses dan nilai yang ditambahkan ke bilah alamat.

Setelah Anda melakukannya, Anda akan melihat sesuatu seperti ini:

hari", "nearestStormDistance":57, "nearestStormBearing":15, "precipIntensity":0, "precipProbability":0, "temperature":53.9, "apparentTemperature":53.9, "dewPoint":29.59, "humidity":0.39, "tekanan":1022.45, "Kecepatan angin":3.87, "windGust":9.25, "windBearing":259, "cloudCover":0.01, "uvIndex":3, "visibility":7.8, "ozone":309.71}, "minutely":{"summary":"Hapus untuk jam.", "icon":"clear-day", "data":[{"time":1550615280, "precipIntensity":0, "precipProbability":0 }, …

Ini bisa sedikit berlebihan dan sulit dibaca, jadi yang saya sarankan adalah menggunakan Formatter JSON untuk membantu membuat data lebih mudah dibaca. Ketika Anda melakukan ini, itu akan terlihat seperti ini:

objek {9}

garis lintang: 37.8267 garis bujur: -122.4233 zona waktu: America/Los_Angeles saat ini {19} waktu: 1550615286 ringkasan: Ikon hapus: hari cerah terdekatStormDistance: 57 terdekatStormBearing: 15 precipIntensity: 0 precipProbabilitas: 0 suhu: 53,9 tampakSuhu: 53,9 titik embun: 29,59 kelembapan: 0,39 tekanan: 1022,45 anginKecepatan: 3,87 anginGust: 9,25 anginBearing: 259 cloudCover: 0,01 uvIndeks: 3 visibilitas: 7,8 ozon: 309,71

Anda baru saja melakukan panggilan API! Lihat betapa mudahnya itu? Anda bahkan tidak perlu menulis satu baris kode pun. Sekarang setelah Anda menguasai API, kita dapat beralih ke bagian streaming data.

Langkah 3: Status Awal

Kami ingin mengalirkan semua data cuaca kami ke layanan cloud dan meminta layanan itu mengubah data kami menjadi dasbor bagus yang dapat kami akses dari laptop atau perangkat seluler kami. Data kami membutuhkan tujuan. Kami akan menggunakan Status Awal sebagai tujuan itu.

Langkah 1: Daftar untuk Akun Negara Awal

Buka https://iot.app.initialstate.com dan buat akun baru. Anda mendapatkan uji coba gratis 14 hari dan siapa pun yang memiliki alamat email edu dapat mendaftar untuk paket pelajar gratis.

Langkah 2: Instal ISStreamer

Instal modul Initial State Python ke Raspberry Pi Anda. Di prompt perintah, jalankan perintah berikut:

$ cd /home/pi/$ \curl -sSL https://get.initialstate.com/python -o - | sudo bash

Langkah 3: Buat Automagic Setelah Langkah 2 Anda akan melihat sesuatu yang mirip dengan output berikut di layar:

pi@raspberrypi ~ $ \curl -sSL https://get.initialstate.com/python -o - | sudo bashPassword: Memulai Instalasi Mudah ISStreamer Python! Ini mungkin memerlukan beberapa menit untuk menginstal, ambil kopi:) Tapi jangan lupa untuk kembali, saya akan memiliki pertanyaan nanti! Ditemukan easy_install: setuptools 1.1.6 Ditemukan pip: pip 1.5.6 dari /Library/Python/2.7/site-packages/pip-1.5.6- py2.7.egg (python 2.7) pip versi utama: 1 pip versi minor: 5 ISStreamer ditemukan, memperbarui… Persyaratan sudah diperbarui: ISStreamer di /Library/Python/2.7/site-packages Membersihkan… Apakah Anda ingin mendapatkan contoh skrip secara otomatis? [y/T] Di mana Anda ingin menyimpan contoh? [default:./is_example.py] Silakan pilih aplikasi Status Awal yang Anda gunakan: 1. app.initialstate.com 2. [BARU!] iot.app.initialstate.com Masukkan pilihan 1 atau 2: Masukkan iot.app.initialstate.com nama pengguna: Masukkan kata sandi iot.app.initialstate.com:

Ketika ditanya apakah Anda ingin mendapatkan skrip contoh secara otomatis, masukkan "y" untuk ya dan tekan enter untuk menyimpan skrip Anda di lokasi default. Untuk pertanyaan tentang aplikasi mana yang Anda gunakan, pilih 2 (kecuali Anda mendaftar sebelum November 2018) dan masukkan nama pengguna dan kata sandi Anda.

Langkah 4: Jalankan Contoh Script

Jalankan skrip pengujian untuk memastikan kami dapat membuat aliran data ke akun Status Awal Anda. Tulis perintah berikut:

$ python is_example.py

Langkah 6: Contoh Data

Kembali ke akun Status Awal Anda di browser web Anda. Keranjang data baru yang disebut "Contoh Aliran Python" seharusnya muncul di sebelah kiri di rak log Anda (Anda mungkin harus menyegarkan halaman). Klik keranjang ini untuk melihat data Anda.

Langkah 4: Dasbor Cuaca Langit Gelap

Dasbor Cuaca Langit Gelap
Dasbor Cuaca Langit Gelap

Sekarang untuk bagian yang menyenangkan. Kami siap untuk mulai menggunakan Dark Sky API untuk membuat dasbor cuaca dan merekam riwayat cuaca untuk lokasi yang kami pilih. Untuk melakukan ini, kita akan menggunakan skrip Python: https://github.com/initialstate/darksky/blob/master/darksky.py. Skrip ini hanya memanggil Dark Sky API menggunakan kunci API Anda dan mengambil informasi cuaca pada interval waktu tertentu. Itu juga mengalirkan data itu ke akun Keadaan Awal Anda, yang memungkinkan Anda membuat dasbor cuaca Langit Gelap.

Anda dapat menyalin skrip ini ke Pi Anda, atau mengaksesnya melalui repositori GitHub yang telah kami kloning sebelumnya. Anda dapat melakukan ini dengan mengubah ke direktori darksky Anda dengan mengetik:

$cd darksky

Dari sini, Anda akan dapat mengakses file python yang akan kami jalankan untuk membuat dasbor cuaca kami. Sebelum Anda menjalankannya, Anda perlu mengatur parameter yang Anda inginkan dan memasukkan kunci Anda. Nano ke dalam file darksky.py dengan mengetik:

$ nano darksky.py

Kemudian edit bagian di dekat bagian atas skrip:

# --------- Pengaturan pengguna ---------

CITY = "Nashville" GPS_COORDS = "36.1628414, -86.780199" DARKSKY_API_KEY = "TEMPATKAN KUNCI API DARK SKY DI SINI" BUCKET_NAME = ":partly_sunny: " + CITY + " Weather" BUCKET_KEY = "ds1" ACCESS_KEY = "TEMPATKAN AKSES AWAL ANDA KUNCI DI SINI" MINUTES_BETWEEN_READS = 15 # ---------------------------------

Anda perlu mengatur koordinat GPS dan nama kota yang diinginkan. Anda juga harus memasukkan kunci Dark Sky API dan kunci akses akun Status Awal Anda atau data Anda tidak akan kemana-mana. Parameter MINUTES_BETWEEN_READS akan menyetel seberapa sering skrip Anda akan melakukan polling ke Dark Sky API untuk informasi cuaca. 15 menit memberikan interval jangka panjang yang bagus. Demi pengujian jangka pendek, Anda dapat mengatur ini menjadi 0,5 menit. Buat perubahan Anda lalu masukkan control+X untuk keluar dan menyimpan.

Setelah Anda mengatur parameter, Anda siap menjalankan skrip Anda:

$ python darksky.py

Jika Anda ssh'ing ke Pi Anda dan ingin membiarkan skrip ini berjalan tanpa gangguan untuk waktu yang lama, Anda dapat menggunakan perintah nohup (tanpa hang-up) sebagai berikut:

$ nohup python darksky.py &

Skrip ini akan melakukan lebih dari sekadar membaca data cuaca dan mengirimkannya ke Keadaan Awal. Skrip ini akan memanfaatkan dukungan emoji yang ada di alat Initial State untuk membuat dasbor sedikit lebih keren. Anda dapat melihat logika yang digunakan untuk mengambil status cuaca dari ikon saat ini -> dan mengubahnya menjadi token emoji di fungsi weather_icon. Hal serupa terjadi pada fase bulan pada fungsi moon_icon dan arah angin pada fungsi wind_dir_icon.

Langkah 5: Kesimpulan

Kesimpulan
Kesimpulan
Kesimpulan
Kesimpulan

Buka akun Status Awal Anda dan lihat data Anda. Saya mengubah semua nilai persentase saya ke pengukur busur, curah hujan ke pengukur cairan, dan suhu ke pengukur suhu. Anda dapat mengubah jenis ubin apa pun dan memilih warna untuk pengukur & bagan garis. Anda dapat membuat dasbor Anda gelap atau terang dan menyematkan produk akhir ke situs web menggunakan iFrame sematan.

Jika Anda ingin menggunakan tata letak dasbor dari berbagi publik sebagai dasbor, Anda dapat mengimpor tata letak ke keranjang data dengan mengikuti petunjuk di sini. Anda dapat menambahkan gambar latar belakang ke dasbor Anda untuk memberikan lebih banyak konteks.

URL berbagi publik untuk dasbor kami adalah

Sekarang Anda telah menguasai Dark Sky API, kemungkinannya tidak terbatas! Ada jumlah tak terbatas dari API online gratis untuk dijelajahi, jadi mulailah.

Direkomendasikan: