Manufaktur industri
Industri Internet of Things | bahan industri | Pemeliharaan dan Perbaikan Peralatan | Pemrograman industri |
home  MfgRobots >> Manufaktur industri >  >> Manufacturing Technology >> Teknologi Industri

Perkuatan REST API – Menyiapkan Proksi terbalik

Antarmuka REST PLCnext adalah alat yang fantastis baik untuk menyajikan dan menerima data dari sistem back-end. REST, atau REpresentational State Transfer, adalah gaya arsitektur perangkat lunak yang terdiri dari pedoman dan praktik terbaik untuk membuat layanan web yang dapat diskalakan. Ada banyak informasi bagus yang sudah ada di infoportal PLCnext, pastikan untuk memeriksanya! URI yang disediakan oleh PLCnext Firmware sempurna jika Anda dapat membangun sistem Anda dari awal. Namun mereka tidak ideal jika Anda ingin memasang kembali antarmuka REST yang ada pada PLCnext. Blog ini akan menunjukkan kepada Anda cara mengatur URI Anda sendiri dan menghubungkannya dengan variabel Anda dengan proxy terbalik. Kita mulai dengan menyiapkan contoh kecil dan bekerja dari sana!

Prasyarat

Saya menggunakan pengontrol AXC F 2152 dengan FW200.6 dan PLCnext Engineer 2020.6. Tetapi hal yang sama harus dimungkinkan dengan versi sebelumnya setelah tahun 2020.0. Saya akan menggunakan Putty untuk mengatur koneksi SSH dan tukang pos untuk menangani permintaan HTTP saya. Saya telah menonaktifkan otentikasi untuk tujuan pengembangan, Anda tidak boleh melakukan hal yang sama dalam produksi! Instruksi untuk PLCnext Engineer akan diberikan dengan level yang sangat tinggi, tidak yakin apa yang harus dilakukan? Lihat infoportal dan video instruksi PLCnext dan/atau bandingkan dengan contoh proyek! Kontroler yang saya gunakan memiliki alamat IP 192.168.10.10, harap ubah ini ke alamat IP yang Anda gunakan.

Contoh

Di blog ini saya akan menggunakan UDT pompa sederhana sebagai contoh. Anda dapat mengunduh contoh program dari halaman GitHub ini, atau tentu saja membuatnya sendiri. Matikan penggunaan "manajemen pengguna" di pengaturan eHMI dan buat variabel global. Gunakan variabel ini di halaman eHMI sehingga kami dapat menggunakannya di API.

Panggilan API Pertama

Mungkin pertama-tama kita harus menemukan apa yang sebenarnya kita ubah dalam beberapa saat!
Mari kita kirim permintaan GET untuk mendapatkan nilai pompa pertama kita.

Gunakan Postman untuk mengirim permintaan GET ke URI berikut:

GET https://192.168.10.10/_pxc_api/api/variables?paths=Arp.Plc.Eclr/Pump1

(Anda dapat mengubah Pump1 ke variabel Anda sendiri)

Hasilnya adalah:

{
"apiVersion": "1.4.0.0",
"projectCRC": 3448945666,
"userAuthenticationRequired": true,
"variables": [
{
"path": "Arp.Plc.Eclr/Pump1",
"value": {
"xStatus": false,
"iNumberOfStarts": 0,
"sStatus": ""
}
}
]
}

Menyiapkan titik akhir khusus

Buka sesi shell, buat kata sandi root dan login sebagai pengguna root.
Selanjutnya, ketik perintah berikut di terminal Anda, pergi ke "bawah" terminal dan berhati-hatilah untuk tidak mengetik sesuatu untuk sementara!

nano /etc/nginx/nginx.conf

Copy paste part selanjutnya ke terminal dan simpan dengan ctrl + s dan tutup dengan ctrl +x.

location /Pump1 {
proxy_pass https://127.27.0.1:443/_pxc_api/api/variables?paths=Arp.Plc.Eclr/Pump1;
}

Mengirim permintaan ke titik akhir baru

Kirim permintaan GET baru dengan tukang pos, kali ini ke URI berikutnya:

DAPATKAN https://192.168.10.10/Pump1

Menerima jawaban yang sama? Selamat, proxy Anda berhasil disiapkan!

Menyiapkan beberapa pompa

Oke, tapi bagaimana jika saya punya banyak pompa? Nah, salah satu pendekatan yang bisa dilakukan adalah membuat susunan rumah-rumah tersebut adalah pompa UDT. Anda bisa mendapatkan seluruh array dengan memanggil variabel atau hanya elemen yang Anda minati dengan menentukan indeks yang Anda inginkan di antara tanda kurung siku, misalnya Pump2[1] akan memberi Anda elemen dengan indeks 1 dalam array bernama Pump2.

Tapi itulah topik blog ini. Kami juga dapat mengatur proxy sedemikian rupa sehingga kami bisa mendapatkan akses ke beberapa pompa.
Ubah teks yang ditempel di langkah sebelumnya agar sesuai dengan skema berikutnya:

location /pumps {
proxy_pass https://127.27.0.1:443/_pxc_api/api/variables?paths=Arp.Plc.Eclr;
}

Mengirim permintaan GET dengan tukang pos ke URI pertama akan memberi Anda hal yang sama seperti sebelumnya. Mengirim permintaan GET ke URI kedua akan memberi Anda array dengan tipe data yang sama.

https://192.168.10.10/pumps/Pump1
https://192.168.10.10/pumps/Pump2

Sekarang Anda harus memiliki segalanya untuk mencocokkan skema API apa pun yang Anda temui dan mengintegrasikannya ke perangkat PLCnext Anda!

Bacaan lebih lanjut

https://www.howtogeek.com/343877/what-is-an-api/https://www.w3schools.com/tags/ref_httpmethods.asphttps://medium.com/@TebbaVonMathenstien/what-is-an -api-and-why-should-i-use-one-863c3365726bhttps://restfulapi.net/rest-api-design-tutorial-with-example/

Teknologi Industri

  1. Termoset vs. Termoplastik:Mengenal Perbedaannya
  2. Jadilah cerdas:Masa depan rumah Anda
  3. Mengenal CONNEX™ Alat Jaringan Rantai Pasokan untuk Memperkuat Produsen
  4. Dapatkan Terpilih Dalam Proses Pembelian B2B:26 Item Untuk Dicentang
  5. Potensi Logistik Terbalik yang Belum Termanfaatkan
  6. Pengembalian Lelang Terbalik:Akankah Pemasok Bermain?
  7. Cara Memaksimalkan Sistem Pemindaian Gudang Anda
  8. Bagaimana Saya Mendapatkan Hasil Maksimal dari Investasi Generasi Prospek Saya?
  9. Perbandingan Industri 4.0 antara Spanyol dan negara-negara lain
  10. Cara memulai inferensi AI di edge