www.piramid.tech
FX4
Panduan Pemrograman FX4
ID Dokumen: 2711715845
Versi: v3
Pemrogram FX4
ID Dokumen: 2711715845
FX4 – Panduan Pemrograman FX4
ID dokumen: 2711650310
Pengarang | Matthew Nichols |
Pemilik | Pimpinan Proyek |
Tujuan | Jelaskan konsep pemrograman yang diperlukan untuk menggunakan API dan memperluas produk melalui aplikasi eksternal. |
Cakupan | Konsep pemrograman terkait FX4. |
Sasaran Audiens | Pengembang perangkat lunak tertarik menggunakan produk tersebut. |
Proses | https://pyramidtc.atlassian.net/wiki/pages/createpage.action? spaceKey=PQ&title=Proses%20Pembuatan%20Manual%20Standar |
Pelatihan | TAK DAPAT DITERAPKAN |
Kontrol Versi
Versi | Keterangan | Disimpan oleh | Disimpan pada | Status |
v3 | Menambahkan lebih sederhanaview dan lebih banyak exampsedikit. | Matthew Nichols | 6 Maret 2025 10:29 | DISETUJUI |
v2 | Menambahkan antarmuka IO digital dan referensi kembali ke IGX. | Matthew Nichols | 3 Mei 2024 7:39 WIB | DISETUJUI |
v1 | Rilis awal, masih dalam tahap pengerjaan. | Matthew Nichols | 21 Februari 2024 11:25 | DISETUJUI |
Kontrol berkas Bukan Reviewed
Versi dokumen saat ini: Bahasa Inggris: v.1
Tidakviewditugaskan.
1.1 Tanda Tangan
untuk versi dokumen terbaru
Jumat, 7 Maret 2025, 10:33 UTC
Matthew Nichols menandatangani ; artinya: Review
Referensi
Dokumen | ID Dokumen | Pengarang | Versi |
IGX – Panduan Pemrogram | 2439249921 | Matthew Nichols | 1 |
Pemrograman FX4 Selesaiview
Prosesor FX4 berjalan pada lingkungan yang disebut IGX, yang dibangun pada sistem operasi realtime keandalan tinggi QNX dari BlackBerry (Bahasa Indonesia: QNX Weblokasi¹). IGX menyediakan antarmuka pemrograman aplikasi (API) yang fleksibel dan komprehensif bagi pengguna yang ingin menulis perangkat lunak komputer host mereka sendiri.
Lingkungan IGX digunakan bersama dengan produk Pyramid lainnya, sehingga solusi perangkat lunak yang dikembangkan untuk satu produk dapat dengan mudah ditransfer ke produk lainnya.
Programmer dapat merujuk ke dokumentasi lengkap untuk IGX yang tersedia di Pyramid websitus di: IGX | Kerangka Sistem Kontrol Modular Modern untuk WebAplikasi yang mendukung bahasa pemrograman .NET²
Bagian ini menyediakan pengantar untuk menguji dua metode API: HTTP menggunakan format JSON dan EPICS. Untuk kesederhanaan, Python (Ular piton Weblokasi³) digunakan sebagai tandaampBahasa komputer induk, yang dapat diakses dan mudah digunakan oleh programmer non-profesional.
3.1 Menggunakan Python dan HTTP
Sebagai mantanample, asumsikan Anda ingin membaca jumlah arus yang diukur dengan Python. Anda memerlukan URL untuk IO tertentu. FX4 web GUI menyediakan cara mudah untuk menemukan ini: cukup klik kanan di bidang dan pilih 'Salin HTTP URL' untuk menyalin string ke papan klip.
Sekarang Anda dapat menggunakan Python untuk menguji konektivitas ke perangkat lunak pengguna melalui HTTP dan JSON. Anda mungkin perlu mengimpor pustaka requests dan json untuk menangani permintaan HTTP dan penguraian data.
1 Contoh HTTP Python Sederhanaample
3.2 Menggunakan EPICS
Proses untuk menghubungkan FX4 melalui EPICS (Experimental Physics and Industrial Control System) serupa. EPICS adalah seperangkat perangkat lunak dan aplikasi yang digunakan untuk mengembangkan dan menerapkan sistem kontrol terdistribusi, yang banyak digunakan dalam fasilitas ilmiah.
- Dapatkan nama variabel proses (PV) EPICS untuk IO yang diinginkan.
- Impor pustaka EPICS dan baca nilainya.
2 Dapatkan Nama PV EPICS
3 EPICS Python Sederhana Example
Selain itu, Pyramid menciptakan utilitas (Koneksi EPICS⁴) yang memungkinkan Anda memantau variabel proses EPICS secara real-time. Alat ini berguna untuk mengonfirmasi apakah nama PV EPICS sudah benar dan FX4 menayangkan PV dengan benar di jaringan Anda.
4 PTC EPICS Terhubung
API Pemrograman FX4
Konsep dan metode yang dijelaskan dalam manual ini dibangun berdasarkan konsep yang ditetapkan dalam IGX – Manual Programmer. Silakan lihat dokumen itu untuk penjelasan dan misamppanduan tentang cara kerja pemrograman dan antarmuka IGX dasar. Panduan ini hanya akan membahas IO dan fungsionalitas khusus perangkat yang unik untuk FX4.
4.1 Input Analog I/O
IO ini berhubungan dengan konfigurasi dan pengumpulan data pada input arus analog dari FX4. Unit input saluran didasarkan pada pengaturan yang dapat dikonfigurasi pengguna yang disebut “Sample Units”, opsi yang valid mencakup pA, nA, uA, mA, dan A.
Keempat saluran tersebut menggunakan antarmuka IO yang sama dan dikontrol secara independen. Ganti channel_x dengan channel_4, channel_1, channel_2, atau channel_3.
Jalur IO | Keterangan |
/fx4/adc/saluran_x | HANYA BACA NOMOR Arus masukan yang diukur. |
/fx4/adc/saluran_x/skalar | NOMOR Skalar sederhana tanpa satuan yang diterapkan ke saluran, 1 secara default. |
/fx4/adc/saluran_x/offset_nol | NOMOR Offset arus dalam nA untuk saluran. |
IO berikut tidak bersifat independen terhadap saluran dan diterapkan ke semua saluran secara bersamaan.
Jalur IO | Keterangan |
/fx4/jumlah_saluran | READONLY NUMBER Jumlah saluran masukan saat ini. |
/fx4/unit_adc | STRING Mengatur unit pengguna saat ini untuk setiap saluran dan jumlahnya. Pilihan: “pa”, “na”, “ua”, “ma”, “a” |
/fx4/rentang | STRING Mengatur rentang masukan saat ini. Lihat GUI untuk mengetahui bagaimana setiap kode rentang berhubungan dengan batas masukan arus maksimum dan BW. Pilihan: “0”, “1”, “2”, “3”, “4”, “5”, “6”, “7” |
/fx4/adc/dample_frekuensi | NOMOR Frekuensi dalam Hz yangampData akan dirata-ratakan. Ini mengontrol rasio signal-to-noise dan kecepatan data untuk semua saluran. |
/fx4/adc/frekuensi_konversi | NUMBER Frekuensi dalam Hz yang akan digunakan ADC untuk mengubah nilai analog menjadi digital. Secara default, nilainya adalah 100kHz, dan Anda hanya perlu mengubah nilai ini dalam beberapa kasus. |
/fx4/adc/koreksi_offset | NOMOR HANYA BACA Jumlah semua offset saluran saat ini. |
4.2 Output Analog I/O
IO ini terkait dengan konfigurasi keluaran analog serbaguna FX4 yang terdapat di bawah masukan analog pada panel depan. Keempat saluran menggunakan IO antarmuka yang sama dan dikontrol secara independen. Ganti channel_x dengan channel_4 , channel_1 , channel_2 , atau channel_3 secara berurutan.
Jalur IO | Keterangan |
/fx4/dac /saluran_x | Perintah NOMOR voltagkeluaran e. Nilai ini hanya dapat ditulis saat mode keluaran diatur ke manual. |
/fx4/dac/saluran_x/baca ulang | HANYA BACA NOMOR Vol terukurtagkeluaran. Ini sangat membantu saat menggunakan mode keluaran ekspresi. |
/fx4/dac/saluran_x/mode_keluaran | STRING Mengatur mode keluaran untuk saluran. Opsi: “manual”, “ekspresi”, “kontrol_proses” |
/fx4/dac/saluran _ x/slew_control_enable | BOOL Mengaktifkan atau menonaktifkan pembatasan laju perubahan. |
/fx4/dac/saluran_x/laju_putaran | NOMOR Laju perubahan dalam V/s untuk saluran. |
/fx4/dac/saluran_x/batas_atas | NOMOR Volume perintah maksimum yang diizinkantage untuk saluran. Berlaku untuk semua mode operasi. |
/fx4/dac/saluran _ x/batas_bawah | NOMOR Jumlah perintah minimum yang diizinkantage untuk saluran. Berlaku untuk semua mode operasi. |
/fx4/dac/saluran _ x/ keluaran _ ekspresi | STRING Mengatur string ekspresi yang digunakan oleh saluran saat berada dalam mode keluaran ekspresi. |
/fx4/dac/saluran _ x/tombol_reset | TOMBOL Mengatur ulang perintah voltage sampai 0. |
4.3 Input dan Output Digital
IO ini berkaitan dengan pengendalian berbagai masukan dan keluaran digital tujuan umum yang terdapat pada FX4.
Jalur IO | Keterangan |
/fx4/fr1 | READONLY BOOL Penerima serat 1. |
/fx4/ft1 | Pemancar serat BOOL 1. |
/fx4/fr2 | READONLY BOOL Penerima serat 2. |
/fx4/ft2 | Pemancar serat BOOL 2. |
/fx4/fr3 | READONLY BOOL Penerima serat 3. |
/fx4/ft3 | Pemancar serat BOOL 3. |
/fx4/ekspansi_digital/d1 | BOOL D1 ekspansi digital dua arah IO. |
/fx4/ekspansi_digital/d2 | BOOL D2 ekspansi digital dua arah IO. |
/fx4/ekspansi_digital/d3 | BOOL D3 ekspansi digital dua arah IO. |
/fx4/ekspansi_digital/d4 | BOOL D4 ekspansi digital dua arah IO. |
4.3.1 Konfigurasi IO Digital
Semua digital memiliki IO anak untuk mengonfigurasi perilakunya termasuk mode operasi yang mengontrol cara digital tersebut beroperasi. Setiap digital akan memiliki serangkaian opsi yang tersedia. Lihat GUI untuk detail tentang opsi apa saja yang tersedia untuk IO apa.
Jalur IO Anak | Keterangan |
…/mode | STRING Mode operasi untuk digital. Opsi: “input”, “output”, “pwm”, “timer”, “encoder”, “capture”, “uart_rx”, “uart_tx”, “can_rx”, “can_tx”, “pru_input”, atau “pru_output” |
…/sinyal_proses | STRING Nama sinyal kontrol proses, jika ada. |
…/mode_tarik | STRING Tarik mode ke atas/bawah untuk masukan digital. Opsi: “naik”, “turun”, atau “nonaktifkan” |
4.4 Kontrol Relai
Kedua relai dikontrol secara independen dan memiliki jenis antarmuka yang sama. Ganti relay_x dengan relay_a atau relay_b.
Jalur IO | Keterangan |
/fx4/relay_x/izinkan/pengguna_perintah | BOOL Memerintahkan relai untuk terbuka atau tertutup. Perintah true akan mencoba menutup relai jika interlock diberikan, dan perintah false akan selalu membuka relai. |
/fx4/relay _ x/status | READONLY STRING Keadaan relai saat ini. Relai terkunci terbuka tetapi tidak dapat ditutup karena adanya interlock. Status: “terbuka”, “tertutup”, atau “terkunci” |
/fx4/relay _ x/otomatis _ tutup | BOOL Jika diatur ke true, relai akan otomatis menutup saat interlock diaktifkan. Secara default, false. |
/fx4/relay _ x/ siklus _ hitung | NOMOR HANYA BACA Jumlah siklus relai sejak pengaturan ulang terakhir. Berguna untuk melacak masa pakai relai. |
4.5 Volt Tinggitage Modul
Lihat Manual Programmer IGX untuk detail tentang FX4 vol tinggitagantarmuka e. Jalur induk komponen adalah /fx4/high_votlage.
4.6 Pengontrol Dosis
Lihat Manual Programmer IGX untuk detail tentang antarmuka pengontrol dosis FX4. Jalur induk komponen adalah /fx4/dose_controller.
FX4 Python Ekstraampsedikit
5.1 Perekam Data menggunakan HTTP
Mantan iniample menunjukkan cara menangkap sejumlah bacaan dan menyimpannya ke CSV fileDengan memilih penundaan yang lama antara pembacaan, Anda dapat melakukan pencatatan data jangka panjang bahkan jika FX4 sampKecepatan ling diatur lebih tinggi. Hal ini memungkinkan Anda untuk terus mengumpulkan dan menyimpan pengukuran selama periode yang panjang tanpa membebani sistem, memastikan bahwa data diambil pada interval yang sesuai untuk analisis Anda. Penundaan antara pembacaan membantu mengatur kecepatan pencatatan data, memungkinkan penyimpanan yang efisien dan mengurangi risiko titik data yang hilang sambil tetap mendapatkan manfaat dari kecepatan tinggiampling untuk pengukuran waktu nyata.
5.2 GUI Python Sederhana
Mantan keduaample menggunakan alat GUI Tkinter, yang dibuat untuk Python, untuk membuat tampilan arus terukur. Antarmuka ini memungkinkan Anda memvisualisasikan pembacaan arus dalam format grafis yang mudah digunakan. Tampilan dapat diubah ukurannya agar cukup besar untuk dibaca dari seberang ruangan, sehingga ideal untuk skenario yang memerlukan pemantauan waktu nyata di ruang yang lebih besar. Tkinter menyediakan cara mudah untuk membuat antarmuka interaktif, dan dengan mengintegrasikannya dengan FX4, Anda dapat dengan cepat membuat tampilan visual arus terukur yang dapat disesuaikan agar sesuai dengan kebutuhan spesifik Anda.
5.3 Sederhana WebSoket Example
Mantan iniample menunjukkan WebAntarmuka soket, yang merupakan metode pilihan untuk membaca data dari FX4 saat bandwidth maksimum diperlukan. WebSoket menyediakan saluran komunikasi dupleks penuh dan waktu nyata, yang memungkinkan transfer data lebih cepat dan lebih efisien dibandingkan dengan metode lain.
Sang mantanample membaca serangkaian samples, melaporkan waktu rata-rata per detikample dan latensi maksimum, dan menyimpan data ke CSV file untuk analisis selanjutnya. Pengaturan ini memungkinkan pemantauan waktu nyata yang efisien dan penyimpanan data yang mudah untuk pasca-pemrosesan.
Kinerja spesifik yang dapat dicapai dengan WebSoket bergantung pada keandalan antarmuka Ethernet dan prioritas relatif aplikasi Anda. Untuk hasil yang optimal, pastikan jaringan Anda stabil dan transmisi data FX4 diprioritaskan jika perlu.
Versi: v3
FX4 Python Ekstraampfile: 21
Dokumen / Sumber Daya
![]() |
Pemrogram PYRAMID FX4 [Bahasa Indonesia:] Panduan Instruksi Pemrogram FX4, FX4, Pemrogram |