Isi kandungan:

Pelayan Tanda Digital pada Raspberry Pi: 8 Langkah
Pelayan Tanda Digital pada Raspberry Pi: 8 Langkah

Video: Pelayan Tanda Digital pada Raspberry Pi: 8 Langkah

Video: Pelayan Tanda Digital pada Raspberry Pi: 8 Langkah
Video: #1 - Tutorial Menggunakan Raspberry Pi, Dari Nol 2024, Disember
Anonim
Pelayan Tanda Digital pada Raspberry Pi
Pelayan Tanda Digital pada Raspberry Pi

Panduan Pemula Mutlak untuk Corsica pada Raspberry PI

Tanda-tanda digital ada di mana-mana. Anda melihatnya di lapangan terbang, pusat membeli-belah, gedung membeli-belah dan juga sudut jalan. Anda tidak memerlukan banyak perkakasan tersuai yang mahal untuk membina sistem tanda digital anda sendiri. Instructable ini menunjukkan cara membina pelayan papan tanda digital yang dapat mendorong puluhan paparan. Setiap paparannya semudah monitor dan Raspberry PI.

Terima kasih kepada Node Ninjas di Mozilla, anda bahkan boleh menjalankan pelayan pada Raspberry Pi menggunakan Corsica.

Corsica adalah penyelesaian papan tanda digital yang boleh diperluas yang dapat dilaksanakan pada kebanyakan sistem POSIX. Ia terdiri daripada pelayan dan pelanggan paparan. Mesin pelanggan tidak memerlukan perisian khas dan hanya menjalankan penyemak imbas web moden, walaupun semua orang dalam pasukan Corsica sangat mengesyorkan Firefox. Pelayan menggunakan sumber yang sangat sedikit dan dengan senang hati akan berjalan menggunakan Raspberry Pi atau mesin lain yang sangat kecil. Pelayan Corsica yang berjalan pada Raspberry Pi 3+ dapat menyokong lebih dari 100 paparan pelanggan dengan mudah. Arahan ini ditulis khusus untuk Raspberry Pi yang menjalankan sistem operasi Raspian (derivatif Debian). Arahan ini juga menganggap anda menggunakan penyemak imbas Firefox. Sebilangan besar penyemak imbas moden yang lain juga mesti berfungsi.

Langkah 1: Garis Perintah Raspian

Arahan ini akan menunjukkan kepada anda cara mengkonfigurasi Corsica melalui baris perintah. Sekiranya anda menggunakan Raspian dengan antara muka pengguna grafik (GUI), anda boleh sampai ke baris perintah melalui aplikasi terminal. Sekiranya anda menjalankan Raspian-lite maka anda boleh menyambungkan papan kekunci dan monitor dan menggunakan baris arahan secara langsung, atau anda boleh menyambung melalui rangkaian menggunakan SSH. Untuk maklumat lebih lanjut mengenai cara mengaktifkan dan menggunakan SSH, lihat dokumentasi Raspian SSH. Anda perlu mengetahui nama DNS atau alamat IP Raspberry Pi anda. Nama lalai pada kebanyakan LAN akan menjadi raspberrypi.local. Sekiranya tidak berjaya, terdapat petunjuk dalam dokumentasi Raspian yang akan membantu anda mengetahui nama dan alamat IP yang betul.

Langkah 2: Pemasangan Perisian

Corsica menggunakan nod dan npm. Node membolehkan anda menjalankan Javascript sisi pelayan, dan npm adalah pengurus pakej nod.

Untuk memasangnya pada Raspberry Pi, periksa terlebih dahulu versi pemproses dalam sistem anda:

uname -m

Sekiranya hasilnya bermula dengan armv6, lihat catatan blog ini. Untuk sistem Raspberry Pi 3 dan yang lain dengan pemproses armv7 dan yang lebih baru:

curl -sL https://deb.nodesource.com/setup_9.x | sudo -E bash -

sudo apt pasang nodejs

Sekiranya anda tidak biasa dengan Node, anda boleh mengetahui lebih lanjut di nodesource.com.

Seterusnya, pasang Corsica Command Line Tools:

sudo npm install -g corsica-cli

Untuk melihat arahan yang tersedia, ketik

korsica --membantu

Pada penulisan ini, arahan yang ada adalah:

setup-- untuk menyediakan Corsica serverstart [pilihan] - untuk memulakan pelayan semula Corsica [pilihan] - untuk memulakan semula servorsop Corsica yang sedang berjalan - untuk menghentikan pelayan Corsica yang sedang berjalanadd-plugin [nama] - untuk memasang plugin plugin [name] - untuk membuang pluginlist-plugin yang terpasang - untuk menyenaraikan plugin yang telah dikemas kini - untuk mengemas kini kedua Corsica dan pluginnya

Sekarang anda boleh menggunakan alat untuk menyiapkan perisian Corsica:

persediaan korsica

Penyediaan Corsica akan bertanya di mana anda ingin memasang corsica dan menunjukkan lokasi lalai:

Tempat memasang Corsica: (/ home / pi / corsica-server)

Anda hanya boleh tekan kembali.

Anda akan melihat beberapa mesej amaran npm. Ini selamat untuk diabaikan.

Apabila persediaan mengatakan "Selesai!", Anda telah memasang Corsica.

Anda boleh memulakan Corsica dalam sesi terminal anda dengan:

permulaan korsica

Dan hentikannya dengan kawalan-C.

Tetapi jika anda memulakannya dengan cara itu, ia hanya akan berjalan selagi sesi terminal anda berjalan. Apabila anda menutup sesi terminal anda, korsika akan berhenti.

Sekiranya anda memulakan Corsica di latar belakang, ia akan berjalan walaupun anda memutuskan sesi terminal anda. Anda boleh melakukannya dengan

permulaan korsika - latar belakang

Untuk menghentikan contoh Corsica berjalan di latar belakang, ketik:

hentian korsica

Langkah 3: Konfigurasi

Penyediaan anda mungkin memerlukan beberapa penyesuaian. Terdapat dua jenis penyesuaian di Corsica: konfigurasi dan tetapan. Konfigurasi kebanyakannya statik dan digunakan oleh intinya. Tetapan dinamik dan kebanyakannya digunakan oleh pemalam. Lebih lanjut mengenai tetapan kemudian.

Konfigurasi berasal dari persekitaran, dan untuk perkara-perkara yang sangat statik seperti port untuk didengarkan, atau plugin untuk dimuat. Terdapat empat sumber untuk konfigurasi:

1. lib / config.json - Di sinilah tempat lalai disimpan, dan tempat yang bagus untuk melihat beberapa perkara yang boleh dikonfigurasi. Anda tidak boleh menukar nilai di sini.

2. config.js - Tetapan yang terdapat dalam fail ini dimuat seolah-olah berasal dari persekitaran. Sintaks adalah satu konfigurasi setiap baris, mis. `PELABUHAN = 8080 '. Sekiranya nilai di sini sah JSON, ia akan dihuraikan seperti itu. Tetapan di sini akan mengatasi lalai dalam `lib / config.json`. Fail config.js pada mulanya menentukan nombor port di mana Corsica mendengar, dan plugin yang digunakan oleh sistem.

3..env - Sekiranya fail tersembunyi bernama.env ada di direktori Corsica, tetapannya dimuat seolah-olah mereka berasal dari persekitaran. Sintaksnya sama seperti di config.js. Fail ini tidak wujud dalam konfigurasi lalai.

4. Pemboleh ubah persekitaran - Anda boleh memasukkan maklumat konfigurasi dalam pemboleh ubah persekitaran sistem jika anda mahu. Sekiranya anda tidak biasa dengan pemboleh ubah persekitaran, selamat untuk mengabaikan pilihan ini.

Langkah 4: Menghubungkan Skrin Paparan

Setelah anda memulakan Corsica, ia akan menjalankan pelayan web pada port 8080 mesin anda melainkan anda telah menukar nombor port dalam fail.env. Anda mesti mengetahui sama ada nama host atau alamat IP Pi anda. Nama lalai untuk pemasangan Raspberry Pi baru adalah raspberrypi. Sekiranya anda belum mengubahnya, anda hanya boleh membuka penyemak imbas pada mesin pelanggan paparan anda dan melayari ke:

raspberrypi.lokal: 8080

Anda mesti melihat logo Corsica kuning dan hitam. Gelembung akan muncul dengan nama Corsica pelanggan anda. Anda boleh (dan harus) menukar nama pelanggan anda menjadi sesuatu yang menunjukkan lokasi skrin paparan tertentu ini. Cara termudah untuk melakukannya adalah dengan menggunakan corsica-repl Potch. (Potch adalah pemaju utama Corsica, dan dia berjanji akan memasukkan inti Corsica dalam waktu dekat).

Buka tab penyemak imbas dan semak ke:

potch.github.io/corsica-repl?server=https://raspberrypi.local:8080/

(Yang menganggap raspberrypi.local adalah nama Pelayan Corsica anda).

Kami akan menggunakan "TestClient" sebagai nama paparan pelanggan untuk sisa tutorial ini. Pergi ke menu lungsur di sudut kanan bawah skrin dan cari nama pelanggan yang muncul. Kemudian di baris arahan di kiri bawah jenis skrin:

jenis pentadbir = nama semula nama = TestClient

Biarkan tab corsica-repl terbuka dan beralih ke tab penyemak imbas yang menunjukkan logo Corsica dan muat semula halaman. Anda akan melihat nama baru di gelembung pop timbul. Sekiranya ia hilang terlalu cepat, arahkan tetikus anda di sudut kanan bawah dan butang "Skrin Penuh" akan muncul dengan nama baru di sebelah kiri.

Langkah 5: Menambah Kandungan

Menambah Kandungan
Menambah Kandungan

Setelah memaparkan logo Corsica, pelanggan akan memaparkan beberapa haiwan kartun dengan latar belakang biru.

Tag lalai dalam fail state.json mengandungi senarai alamat halaman web. Anda boleh menyajikan mana-mana halaman web dengan cara ini, walaupun susun atur beberapa halaman menjadikannya kurang sesuai untuk digunakan dengan Corsica.

Pelanggan Corsica memaparkan kandungan dari satu atau lebih teg yang dilanggannya. Pelanggan baru datang sudah melanggan tag bernama "default".

Haiwan kartun comel, tetapi mari kita tambahkan beberapa kandungan yang berguna pada putaran skrin pada pelanggan ujian kami.

Kembali ke tab corsica-repl dan di baris arahan pada jenis kiri bawah:

jenis pentadbir = langganan tag = cuaca

Beralih kembali ke tab klien paparan dan muat semula halaman.

Ramalan cuaca untuk San Jose, California, akan ditambahkan ke senarai url yang dipaparkan.

Contoh file state.json kami mengandungi tiga tag bernama "lalai", "cuaca" dan "gambar". Teg "gambar" mengandungi pautan ke lebih banyak fail grafik haiwan kartun (.png). Mari tambahkan mereka dengan beralih kembali ke tab corsica-repl dan menaip:

jenis pentadbir = langganan tag = gambar

Sekali lagi, kembali ke tab klien paparan dan muat semula halaman. Anda akan melihat beberapa haiwan baru ditambahkan pada putaran. Tetapi perhatikan bahawa haiwan baru muncul di tepi kiri halaman dengan latar belakang putih. Ini kerana kartun dengan latar belakang biru disenaraikan di state.json sebagai url yang menunjuk ke laman web yang betul yang ditulis dalam html. Kartun baru dengan latar belakang putih disenaraikan di state.json sebagai url yang hanya menunjukkan fail grafik-p.webp

Kita boleh memperbaiki cara grafik tersebut dipaparkan oleh Corsica, tetapi untuk melakukan itu kita harus "memperluas" Corsica itu sendiri.

Langkah 6: Memperluas Corsica

Memanjangkan Corsica
Memanjangkan Corsica

Lebih daripada selusin plugin npm Corsica terdapat di laman web npm. Ikuti pautan itu dan masukkan "corsica" di kotak carian di bahagian atas halaman untuk melihat senarai mereka. Kami akan menggunakan salah satu plugin npm tersebut untuk membolehkan anda memaparkan haiwan baru kami. Juga berguna untuk menampilkan gambar yang anda dapati di web, tanpa memaparkan grafik yang mengganggu di sekitar gambar.

Pergi ke baris arahan Corsica, hentikan Corsica dan pasang plugin corsica-image:

corsica add-plugin corsica-gambar

Kemudian mulakan semula korsika:

permulaan korsica

Buka tab klien paparan corsica pada penyemak imbas anda dan muat semula halaman. Anda mesti melihat haiwan baru yang dipaparkan di tengah layar dengan latar belakang biru tua.

Langkah 7: Menyesuaikan Kandungan

Mari kita perhatikan perbezaan antara apa yang dilakukan oleh url pada tag lalai dan yang terdapat pada tag gambar. Lihat state.json dengan pergi ke baris arahan Corsica dan menaip:

kucing ~ / corsica-server / state.json

Di bahagian "lalai" fail itu, anda akan menemui garis yang kelihatan seperti:

"https://ramilewski.github.io/corsica-support/show.html?image=kitty.png", URL ini adalah pautan ke laman web dengan kartun anak kucing. Halaman web itu memaparkan gambar, tetapi juga menyediakan latar belakang yang merupakan kecerunan yang bermula di bahagian atas halaman sebagai warna biru, dan pudar menjadi putih di bahagian bawah halaman. Latar belakang itu dibuat oleh CSS dan HTML laman web. Ia bukan sebahagian daripada grafik itu sendiri.

Bahagian "gambar" halaman mempunyai garis yang kelihatan seperti:

"https://ramilewski.github.io/corsica-support/bunny.png bg = # 2244BB", Ini adalah url yang menentukan pautan ke gambar-p.webp

"# 2244BB" adalah notasi heksadesimal untuk warna biru tua. Untuk alat yang dapat membantu anda menentukan warna dalam notasi hex, lihat MDN Color Picker.

Dalam memaparkan garis ini Corsica telah menggunakan plugin corsica-image untuk membuat tampilan. Ini bermaksud bahawa jika anda menjumpai gambar yang ingin anda paparkan pada paparan klien Corsica anda, anda boleh membuat garis di state.json yang akan memaparkan gambar itu sahaja, tetapi bukan kandungan lain yang mengganggu dari halaman sekitarnya. Untuk mencari url gambar di Firefox, klik kanan gambar dan pilih "Salin Lokasi Gambar" dalam menu konteks yang muncul.

Bahagian "cuaca" di state.json hanya mempunyai satu url. Ini mengambil ramalan cuaca dari https://forecast.io. Tetapi melainkan jika anda tinggal di San Jose, ramalan itu tidak begitu berguna. Untuk mendapatkan ramalan lokasi anda, anda perlu mengetahui kedudukannya ialah garis lintang dan garis bujur dalam darjah perpuluhan. Sekiranya tidak, ada alat berasaskan web yang akan membolehkan anda mencarinya.

Sekarang url di baris di state.json yang menentukan ramalan cuaca seperti:

"https://forecast.io/embed/#lat=37.3352&lon=-121.8871&name=San%20Jose%20CA&color=#4466bb zoom = 300"

Untuk mendapatkan ramalan lokasi anda, ubah entri lat dan lon di baris tersebut dan ubah nama ke lokasi anda. Gunakan% 20 dan bukannya ruang pada nama tempat. Parameter warna menentukan warna bar antara suhu tinggi dan rendah. Parameter zoom digunakan untuk menyesuaikan ukuran ramalan agar sesuai di layar paparan.

Apabila anda membuat fail state.json anda sendiri, ingatlah bahawa jika anda mempunyai tag "default", setiap kandungan yang ditentukan dalam tag tersebut akan muncul pada penyemak imbas mana pun yang menghubungkan ke pelayan tanpa konfigurasi lebih lanjut.

Waktu Paparan

Di bahagian atas state.json terdapat beberapa tetapan yang mengawal berapa lama setiap gambar ditunjukkan di skrin.

"tetapan:: pemasa": {

"resetTime": 30000, "jitter": 5000, Semua masa diukur dalam milisaat (seperseribu saat). ResetTime adalah waktu maksimum setiap gambar berada di layar sebelum layar berikutnya dipaparkan. Jitter didarabkan dengan nombor rawak antara -1 dan 1 dan hasilnya ditambahkan ke resetTime. Ini memberikan beberapa variasi dalam masa paparan. Anda boleh menetapkan jitter ke 0 jika anda mahu. Tetapan yang ditunjukkan akan menghasilkan setiap halaman menunjukkan antara 25 dan 35 saat.

Anda juga boleh menetapkan masa yang berbeza untuk setiap klien paparan:

"tetapan:: pemasa": {

"resetTime": 30000, "jitter": 5000, "resetOnConnect": true, "screens": {"TestClient": {"resetTime": 10000, "jitter": 1000}}}, Di sini kami telah menetapkan masa paparan untuk TestClient kami antara 9 hingga 11 saat.

Langkah 8: Kesimpulannya

Kami telah menunjukkan cara memasang dan mengkonfigurasi pelayan Corsica pada Raspberry Pi. Dengan apa yang telah anda pelajari di sini, anda dapat membina sistem papan tanda digital yang serba boleh dan kos rendah. Anda boleh menggunakan Raspberry Pis bukan sahaja sebagai pelayan dalam sistem anda, tetapi juga untuk memacu paparan klien.

Terdapat banyak lagi plugin di laman web npm yang boleh anda gunakan untuk menambahkan keupayaan lain ke pemasangan Corsica anda, termasuk memaparkan:

  • Imej dari Flickr
  • Tweet
  • Perbualan dalam saluran IRC
  • Fail video
  • Video YouTube
  • Slaid dalam persembahan Google
  • Kartun XKCD
  • Kandungan dari RSS feed

Kredit

Corsica adalah penciptaan Node Ninjas blackbelt darjah ketiga dari Mozilla yang dipimpin oleh potch, lonnen dan mitos.

Petunjuk ini untuk Corsica on Raspberry Pis digabungkan bersama oleh Richard.

Anda biasanya dapat menjumpai semua orang di sekitar saluran #corsica di irc.mozilla.org.

Disyorkan: