www.pyramid.tech
FX4
FX4 proqramçı təlimatı
Sənədin nömrəsi: 2711715845
Versiya: v3
FX4 Proqramçısı
Sənədin nömrəsi: 2711715845
FX4 – FX4 Proqramçı Təlimatı
Sənəd ID: 2711650310
Müəllif | Metyu Nikols |
Sahib | Layihə rəhbəri |
Məqsəd | API-dən istifadə etmək və məhsulu xarici proqramlar vasitəsilə genişləndirmək üçün lazım olan proqramlaşdırma anlayışlarını izah edin. |
Əhatə dairəsi | FX4 ilə əlaqəli proqramlaşdırma anlayışları. |
Nəzərdə tutulan Auditoriya | Məhsuldan istifadə etməkdə maraqlı olan proqram tərtibatçıları. |
Proses | https://pyramidtc.atlassian.net/wiki/pages/createpage.action? spaceKey=PQ&title=Standart%20Manual%20Yaratma%20Proses |
Təlim | TƏTBİQ EDİLMƏZ |
Versiyaya nəzarət
Versiya | Təsvir | Saxlayan | Yadda saxlandı | Vəziyyət |
v3 | Sadə bir əlavə əlavə edildiview və daha çox məsamples. | Metyu Nikols | 6 mart 2025-ci il, saat 10:29 | TƏSDİQ EDİLMİŞDİR |
v2 | Rəqəmsal IO interfeysləri və IGX-ə istinadlar əlavə edildi. | Metyu Nikols | 3 may 2024-ci il, saat 7:39 | TƏSDİQ EDİLMİŞDİR |
v1 | İlkin buraxılış, hələ də iş gedir. | Metyu Nikols | 21 fevral 2024-cü il, saat 11:25 | TƏSDİQ EDİLMİŞDİR |
Sənədin İdarə Edilməsi Re deyilviewed
Hazırkı sənəd versiyası: v.1
re yoxviewtəyin olunmuşlar.
1.1 İmzalar
ən son sənəd versiyası üçün
Cümə, 7 mart 2025-ci il, saat 10:33 UTC
Metyu Nikols imzaladı; məna: Review
İstinadlar
Sənəd | Sənəd ID | Müəllif | Versiya |
IGX - Proqramçı Təlimatı | 2439249921 | Metyu Nikols | 1 |
FX4 Proqramlaşdırma Bitdiview
FX4 prosessoru BlackBerry-dən QNX yüksək etibarlı real vaxt əməliyyat sistemi üzərində qurulmuş IGX adlı mühitdə işləyir (QNX Websayt¹). IGX öz ana kompüter proqram təminatını yazmaq istəyən istifadəçilər üçün çevik və hərtərəfli tətbiq proqramlaşdırma interfeysi (API) təqdim edir.
IGX mühiti digər Piramida məhsulları arasında paylaşılır və bu, bir məhsul üçün hazırlanmış proqram həllərinin asanlıqla digərlərinə ötürülməsinə imkan verir.
Proqramçılar Piramidada mövcud olan IGX üçün tam sənədlərə müraciət edə bilərlər websaytda: IGX | Üçün Müasir Modul İdarəetmə Sistemi Çərçivəsi Web-aktiv tətbiqlər²
Bu bölmə iki API metodunun sınaqdan keçirilməsinə giriş təqdim edir: JSON formatından istifadə edən HTTP və EPICS. Sadəlik üçün Python (Python Websayt³) keçmiş kimi istifadə olunurample host kompüter dili, qeyri-peşəkar proqramçılar üçün əlçatan və istifadəsi asandır.
3.1 Python və HTTP istifadə
Keçmiş kimiample, Python ilə ölçülmüş cərəyanların cəmini oxumaq istədiyinizi fərz edin. Sizə lazımdır URL xüsusi IO üçün. FX4 web GUI bunu tapmaq üçün asan bir yol təqdim edir: sadəcə sahəyə sağ klikləyin və 'HTTP'yi kopyalayın URL' sətri panoya kopyalamaq üçün.
İndi HTTP və JSON vasitəsilə istifadəçi proqram təminatı ilə əlaqəni yoxlamaq üçün Python-dan istifadə edə bilərsiniz. HTTP sorğularını və verilənlərin təhlilini idarə etmək üçün sorğuları və json kitabxanalarını idxal etməli ola bilərsiniz.
1 Sadə Python HTTP Məsample
3.2 EPICS-dən istifadə
FX4-ü EPICS (Eksperimental Fizika və Sənaye İdarəetmə Sistemi) vasitəsilə birləşdirmək prosesi oxşardır. EPICS, elmi müəssisələrdə geniş istifadə olunan paylanmış idarəetmə sistemlərinin işlənib hazırlanması və tətbiqi üçün istifadə olunan proqram alətləri və proqramlar toplusudur.
- İstədiyiniz IO üçün EPICS proses dəyişəninin (PV) adını əldə edin.
- EPICS kitabxanasını idxal edin və dəyəri oxuyun.
2 EPICS PV adını əldə edin
3 Sadə Python EPICS Məsample
Bundan əlavə, Pyramid bir yardım proqramı yaratdı (EPICS Connect⁴) real vaxt rejimində EPICS proses dəyişənlərini izləməyə imkan verir. Bu alət EPICS PV adının düzgün olub olmadığını və FX4-ün şəbəkənizdə PV-yə düzgün xidmət göstərdiyini təsdiqləmək üçün faydalıdır.
4 PTC EPICS Connect
FX4 Proqramlaşdırma API
Bu təlimatda təsvir olunan anlayışlar və üsullar IGX – Proqramçı Təlimatında müəyyən edilmiş konsepsiyalara əsaslanır. Zəhmət olmasa izahat üçün həmin sənədə baxın və sampəsas IGX proqramlaşdırma və interfeyslərinin necə işlədiyinə dair məlumat. Bu təlimat yalnız FX4-ə xas olan cihaza məxsus IO və funksionallığı əhatə edəcək.
4.1 Analoq Giriş IO
Bu IO FX4-ün analoq cərəyan girişləri haqqında məlumatların konfiqurasiyası və toplanması ilə əlaqədardır. Kanal girişlərinin vahidləri istifadəçi tərəfindən konfiqurasiya edilə bilən “Sample Units”, etibarlı variantlara pA, nA, uA, mA və A daxildir.
Bütün 4 kanal eyni interfeys IO-dan istifadə edir və müstəqil şəkildə idarə olunur. Kanal_x-i müvafiq olaraq kanal_1 , kanal_2 , kanal_3 və ya kanal_4 ilə əvəz edin.
IO yolu | Təsvir |
/fx4/adc/channel_x | YALNIZ OXUNAN SAYI Ölçülmüş cərəyan girişi. |
/fx4/adc/channel_x/scalar | NUMBER Kanala tətbiq olunan sadə vahidsiz skaler, defolt olaraq 1. |
/fx4/adc/channel_x/zero_offset | NUMBER Kanal üçün nA-da cari ofset. |
Aşağıdakı IO kanaldan müstəqil deyil və eyni zamanda bütün kanallara tətbiq edilir.
IO yolu | Təsvir |
/fx4/channel_sum | YALNIZ OXUNAN SAYI Cari giriş kanallarının cəmi. |
/fx4/adc_unit | STRING Hər bir kanal və cəmi üçün cari istifadəçi vahidlərini təyin edir. Seçimlər: "pa", "na", "ua", "ma", "a" |
/fx4/aralıq | STRING Cari daxiletmə diapazonunu təyin edir. Hər diapazon kodunun maksimum cari giriş limitlərinə və BW-yə necə uyğun gəldiyini öyrənmək üçün GUI-ə baxın. Seçimlər: "0", "1", "2", "3", "4", "5", "6", "7" |
/fx4/adc/sample_tezlik | NUMBER Hz olan tezlikample data orta hesablanacaq. Bu, bütün kanallar üçün siqnaldan səs-küyə və məlumat sürətinə nəzarət edir. |
/fx4/adc/conversion_frequency | NUMBER ADC-nin analoqu rəqəmsal dəyərlərə çevirəcəyi Hz tezliyi. Varsayılan olaraq, bu 100 kHz-dir və siz nadir hallarda bu dəyəri dəyişdirməlisiniz. |
/fx4/adc/offset_correction | YALNIZ OXUNAN SAYI Bütün kanalın cari ofsetlərinin cəmi. |
4.2 Analoq Çıxış IO
Bu IO ön paneldəki analoq girişlərin altında tapılan FX4-ün ümumi təyinatlı analoq çıxışlarının konfiqurasiyasına aiddir. Bütün 4 kanal eyni interfeys IO-dan istifadə edir və müstəqil şəkildə idarə olunur. Kanal_x-i müvafiq olaraq kanal_1 , kanal_2 , kanal_3 və ya kanal_4 ilə əvəz edin.
IO yolu | Təsvir |
/fx4/dac /channel_x | NUMBER Komanda cildtage çıxış. Bu dəyər yalnız çıxış rejimi əl ilə təyin edildikdə yazıla bilər. |
/fx4/dac/channel_x/readback | YALNIZ OXUAN SAYI Ölçülmüş cildtage çıxışı. Bu, ifadə çıxışı rejimindən istifadə edərkən ən faydalıdır. |
/fx4/dac/channel_x/output_mode | STRING Kanal üçün çıxış rejimini təyin edir. Seçimlər: "əl ilə", "ifadə", "proses_nəzarəti" |
/fx4/dac/channel _ x/slew_control_enable | BOOL Dönmə sürətinin məhdudlaşdırılmasını aktivləşdirir və ya söndürür. |
/fx4/dac/channel_ x/slew_rate | NUMBER Kanal üçün V/s-də dönüş sürəti. |
/fx4/dac/channel_x/upper_limit | NUMBER Maksimum icazə verilən əmr həcmitage kanal üçün. Bütün iş rejimlərinə aiddir. |
/fx4/dac/channel _ x/aşağı_limit | NUMBER Minimum icazə verilən əmr cildtage kanal üçün. Bütün iş rejimlərinə aiddir. |
/fx4/dac/channel _ x/ çıxış _ ifadəsi | STRING İfadə çıxışı rejimində kanalın istifadə etdiyi ifadə sətirini təyin edir. |
/fx4/dac/channel _ x/reset_button | BUTTON əmri sıfırlayır voltage-dən 0-a qədər. |
4.3 Rəqəmsal Giriş və Çıxışlar
Bu IO FX4-də tapılan müxtəlif ümumi təyinatlı rəqəmsal giriş və çıxışların idarə edilməsinə aiddir.
IO yolu | Təsvir |
/fx4/fr1 | READONLY BOOL Fiber qəbuledicisi 1. |
/fx4/ft1 | BOOL Fiber ötürücü 1. |
/fx4/fr2 | READONLY BOOL Fiber qəbuledicisi 2. |
/fx4/ft2 | BOOL Fiber ötürücü 2. |
/fx4/fr3 | READONLY BOOL Fiber qəbuledicisi 3. |
/fx4/ft3 | BOOL Fiber ötürücü 3. |
/fx4/digital_expansion/d1 | BOOL D1 iki istiqamətli rəqəmsal genişləndirmə IO. |
/fx4/digital_expansion/d2 | BOOL D2 iki istiqamətli rəqəmsal genişləndirmə IO. |
/fx4/digital_expansion/d3 | BOOL D3 iki istiqamətli rəqəmsal genişləndirmə IO. |
/fx4/digital_expansion/d4 | BOOL D4 iki istiqamətli rəqəmsal genişləndirmə IO. |
4.3.1 Rəqəmsal IO Konfiqurasiyası
Bütün rəqəmsalların davranışlarını konfiqurasiya etmək üçün uşaq IO var, o cümlədən rəqəmsalın necə işləyəcəyinə nəzarət edən əməliyyat rejimi. Hər bir rəqəmsalda fərqli seçimlər dəsti olacaq. Hansı IO üçün hansı seçimlərin mövcud olduğuna dair təfərrüatlar üçün GUI-yə baxın.
Uşaq IO Yolu | Təsvir |
…/rejim | STRING Rəqəmsal üçün iş rejimi. Seçimlər: "giriş", "çıxış", "pwm", "taymer", "kodlayıcı", "çəkmə", "uart_rx", "uart_tx", "can_rx", "can_tx", "pru_input" və ya "pru_output" |
…/proses_siqnal | STRING Prosesə nəzarət siqnalının adı, əgər varsa. |
…/çəkmə_rejimi | STRING Rəqəmsal giriş üçün yuxarı/aşağı çəkin. Seçimlər: "yuxarı", "aşağı" və ya "deaktiv" |
4.4 Rele nəzarəti
Hər iki rele müstəqil şəkildə idarə olunur və eyni tipli interfeysi paylaşır. relay_x-i müvafiq olaraq relay_a və ya relay_b ilə əvəz edin.
IO yolu | Təsvir |
/fx4/relay _ x/permit / user _ əmri | BOOL Röleyi açıq və ya qapalı əmr edir. Həqiqi əmr, bloklamalar verildiyi təqdirdə röleyi bağlamağa çalışacaq və yalançı əmr həmişə releyi açacaq. |
/fx4/relay _ x/state | READONLY STRING Relenin cari vəziyyəti. Kilidlənmiş relelər açıqdır, lakin kilidləmə səbəbindən bağlana bilməz. Dövlətlər: "açıq", "qapalı" və ya "kilidli" |
/fx4/relay _ x/avtomatik olaraq _ bağlayın | BOOL Doğru olaraq təyin edildikdə, bloklamalar verildikdə rele avtomatik bağlanacaq. Varsayılan olaraq yanlış. |
/fx4/relay _ x/ dövr _ saymaq | YALNIZ OXUNAN SAYI Son sıfırlamadan sonra rele dövrlərinin sayı. Relay ömrünü izləmək üçün faydalıdır. |
4.5 Yüksək səstage Modul
FX4 yüksək səs haqqında ətraflı məlumat üçün IGX – Proqramçı Təlimatına baxıntage interfeysi. Komponentin ana yolu /fx4/high_votlage-dir.
4.6 Doza nəzarətçisi
FX4 doza nəzarətçi interfeysi haqqında təfərrüatlar üçün IGX – Proqramçı Təlimatına baxın. Komponentin ana yolu /fx4/dose_controller-dir.
FX4 Python Examples
5.1 HTTP istifadə edən Data Logger
Bu keçmişample bir sıra oxunuşların necə tutulacağını və onları CSV-də saxlamağı nümayiş etdirir file. Oxumalar arasında uzun bir gecikmə seçməklə, hətta FX4 sampling dərəcəsi daha yüksək müəyyən edilir. Bu, ölçmələri sistemi yormadan uzun müddət ərzində davamlı olaraq toplamağa və saxlamağa imkan verir, məlumatların təhlilinizə uyğun fasilələrlə ələ keçirilməsini təmin edir. Oxunuşlar arasındakı gecikmə məlumatların qeydə alınma sürətini tənzimləməyə kömək edir, səmərəli saxlanmağa imkan verir və yüksək sürətli sürətlərdən hələ də faydalanarkən məlumat nöqtələrinin itirilməsi riskini azaldır.ampreal vaxt ölçmələri üçün.
5.2 Sadə Python GUI
İkinci keçmişample ölçülmüş cərəyanların ekranını yaratmaq üçün Python üçün qurulmuş Tkinter GUI alətindən istifadə edir. Bu interfeys cari oxunuşları istifadəçi dostu qrafik formatda vizuallaşdırmağa imkan verir. Displeyin ölçüsünü otaqdan oxumaq üçün kifayət qədər böyük etmək üçün dəyişdirilə bilər və bu, daha böyük məkanlarda real vaxt rejimində monitorinqin lazım olduğu ssenarilər üçün idealdır. Tkinter interaktiv interfeyslər yaratmaq üçün asan bir yol təqdim edir və onu FX4 ilə inteqrasiya etməklə siz xüsusi ehtiyaclarınıza uyğunlaşdırıla bilən ölçülən cərəyanların vizual ekranını tez bir zamanda qura bilərsiniz.
5.3 Sadə WebSockets Example
Bu keçmişample nümayiş etdirir WebMaksimum bant genişliyi tələb olunduqda FX4-dən məlumatları oxumaq üçün üstünlük verilən üsul olan sockets interfeysi. WebSoketlər real vaxt rejimində, tam dupleks rabitə kanalı təqdim edərək, digər üsullarla müqayisədə məlumatların daha sürətli və daha səmərəli ötürülməsinə imkan verir.
keçmişample silsiləsi oxuyuramples, s başına orta vaxtı bildirirample və maksimum gecikmə müddəti və məlumatları CSV-də saxlayır file sonrakı təhlil üçün. Bu quraşdırma səmərəli real vaxt monitorinqinə və sonrakı emal üçün məlumatların asan saxlanmasına imkan verir.
Bununla əldə edilə bilən xüsusi performans WebSoketlər Ethernet interfeysinizin etibarlılığından və tətbiqinizin nisbi prioritetindən asılıdır. Optimal nəticələr üçün şəbəkənizin sabit olduğundan və lazım gələrsə, FX4-ün məlumat ötürülməsinə üstünlük verildiyinə əmin olun.
Versiya: v3
FX4 Python Examples: 21
Sənədlər / Resurslar
![]() |
PYRAMID FX4 Proqramçı [pdf] Təlimat kitabçası FX4 Proqramçı, FX4, Proqramçı |