www.pyramid.tech
FX4
Manwal sa FX4 Programmer
Dokumento ID: 2711715845
Bersyon: v3
FX4 Programmer
Dokumento ID: 2711715845
FX4 - FX4 Programmer Manwal
ID sa Dokumento: 2711650310
Awtor | Matthew Nichols |
Tag-iya | Nanguna sa Proyekto |
Katuyoan | Ipasabut ang mga konsepto sa pagprograma nga gikinahanglan aron magamit ang API ug ipaabot ang produkto pinaagi sa mga eksternal nga aplikasyon. |
Kasangkaran | Mga konsepto sa programming nga may kalabotan sa FX4. |
Gituyo nga Mamiminaw | Ang mga developer sa software interesado sa paggamit sa produkto. |
Proseso | https://pyramidtc.atlassian.net/wiki/pages/createpage.action? spaceKey=PQ&title=Standard%20Manual%20Creation%20Proseso |
Paghanas | DILI MAHIMONG MA-APLIKADO |
Pagkontrol sa Bersyon
Bersyon | Deskripsyon | Giluwas ni | Gitipigan sa | Status |
v3 | Gidugang ang usa ka yano nga overview ug uban pa examples. | Matthew Nichols | Mar 6, 2025 10:29 PM | APROVED |
v2 | Gidugang ang digital IO interface ug mga reference balik sa IGX. | Matthew Nichols | Mayo 3, 2024 7:39 PM | APROVED |
v1 | Inisyal nga pagpagawas, padayon pa nga trabaho. | Matthew Nichols | Peb 21, 2024 11:25 PM | APROVED |
Pagkontrol sa Dokumento Dili Reviewed
Kasamtangang bersyon sa dokumento: v.1
Walay reviewmga gi-assign.
1.1 Mga pirma
para sa pinakabag-o nga bersyon sa dokumento
Biyernes, Mar 7, 2025, 10:33 PM UTC
Gipirmahan ni Matthew Nicols ; kahulogan: Review
Mga pakisayran
Dokumento | Dokumento ID | Awtor | Bersyon |
IGX - Manwal sa Programmer | 2439249921 | Matthew Nichols | 1 |
Natapos ang FX4 Programmingview
Ang FX4 processor nagdagan sa usa ka palibot nga gitawag og IGX, nga gitukod sa QNX high-reliability realtime operating system gikan sa BlackBerry (QNX Website¹). Ang IGX naghatag og usa ka flexible ug komprehensibo nga application programming interface (API) alang sa mga tiggamit nga gustong magsulat sa ilang kaugalingong host computer software.
Ang palibot sa IGX gipaambit sa ubang mga produkto sa Pyramid, nga nagtugot sa mga solusyon sa software nga gihimo alang sa usa ka produkto nga dali nga mabalhin sa uban.
Ang mga programmer mahimong maghisgot sa kompletong dokumentasyon para sa IGX nga anaa sa Pyramid website sa: IGX | Modernong Modular Control System Framework alang sa Web-gipaandar nga mga Aplikasyon²
Kini nga seksyon naghatag usa ka pasiuna sa pagsulay sa duha sa mga pamaagi sa API: HTTP gamit ang JSON format ug EPICS. Alang sa kayano, Python (Python Website³) gigamit isip example host computer nga pinulongan, nga ma-access ug sayon gamiton alang sa dili propesyonal nga mga programmer.
3.1 Paggamit sa Python ug HTTP
Ingon usa ka example, hunahunaa nga gusto nimo basahon ang sumada sa gisukod nga mga sulog gamit ang Python. Kinahanglan nimo ang URL alang nianang partikular nga IO. Ang FX4 web Ang GUI naghatag ug sayon nga paagi sa pagpangita niini: pag-right-click lang sa field ug pilia ang 'Copy HTTP URL' para kopyahon ang hilo sa clipboard.
Karon mahimo nimong gamiton ang Python aron sulayan ang koneksyon sa software sa gumagamit pinaagi sa HTTP ug JSON. Tingali kinahanglan nimo nga i-import ang mga hangyo ug mga librarya sa json aron madumala ang mga hangyo sa HTTP ug pag-parse sa datos.
1 Yano nga Python HTTP Example
3.2 Paggamit sa EPICS
Ang proseso sa pagkonektar sa FX4 pinaagi sa EPICS (Experimental Physics ug Industrial Control System) parehas. Ang EPICS usa ka hugpong sa mga himan sa software ug mga aplikasyon nga gigamit sa pagpalambo ug pagpatuman sa gipang-apod-apod nga mga sistema sa pagkontrol, kaylap nga gigamit sa mga pasilidad sa siyensya.
- Kuhaa ang EPICS process variable (PV) nga ngalan alang sa gusto nga IO.
- I-import ang library sa EPICS ug basaha ang kantidad.
2 Pagkuha EPICS PV Ngalan
3 Yano nga Python EPICS Example
Dugang pa, nagmugna ang Pyramid og utility (EPICS Sumpaysumpaya⁴) nga nagtugot kanimo sa pag-monitor sa mga variable sa proseso sa EPICS sa tinuud nga oras. Kini nga himan makatabang sa pagkumpirma kung ang EPICS PV nga ngalan sakto ug ang FX4 nagsilbi sa PV sa husto sa imong network.
4 PTC EPICS Sumpaysumpaya
FX4 Programming API
Ang mga konsepto ug mga pamaagi nga gihulagway niini nga manwal nagtukod sa mga konsepto nga gitukod sa IGX - Programmer Manual. Palihug tan-awa kana nga dokumento alang sa katin-awan ug examples kon sa unsang paagi ang batakang IGX programming ug mga interface nagtrabaho. Kini nga manwal motabon lamang sa device-specific IO ug functionality nga talagsaon sa FX4.
4.1 Analog Input IO
Kini nga IO may kalabutan sa pag-configure ug pagkolekta sa datos sa mga analog nga kasamtangang input sa FX4. Ang mga yunit sa channel inputs gibase sa user configurable setting nga gitawag og "Sample Units", balido nga mga kapilian naglakip sa pA, nA, uA, mA, ug A.
Ang tanan nga 4 ka channel naggamit sa parehas nga interface IO ug independente nga kontrolado. Ilisan ang channel_x og channel_1 , channel_2 , channel_3 , o channel_4 matag usa.
IO Dalan | Deskripsyon |
/fx4/adc/channel_x | READONLY NUMBER Gisukod ang kasamtangang input. |
/fx4/adc/channel_x/scalar | NUMERO Simple nga unitless scalar nga gipadapat sa channel, 1 sa default. |
/fx4/adc/channel_x/zero_offset | NUMBER Kasamtangang offset sa nA para sa channel. |
Ang mosunod nga IO dili channel independente ug magamit sa tanang channel dungan.
IO Dalan | Deskripsyon |
/fx4/channel_sum | READONLY NUMBER Sum sa kasamtangang input channels. |
/fx4/adc_unit | STRING Nagtakda sa kasamtangang mga unit sa user para sa matag channel ug sum. Mga kapilian: “pa”, “na”, “ua”, “ma”, “a” |
/fx4/range | STRING Nagtakda sa kasamtangang input range. Tan-awa ang GUI kung giunsa ang matag range code nga katumbas sa labing kadaghan nga limitasyon sa karon nga input ug BW. Mga kapilian: "0", "1", "2", "3", "4", "5", "6", "7" |
/fx4/adc/sample_frequency | NUMERO Ang frequency sa Hz nga sample data mahimong aberids sa. Gikontrol niini ang signal-to-noise ug data rate para sa tanang channel. |
/fx4/adc/conversion_frequency | NUMERO Ang frequency sa Hz nga ang ADC mag-convert sa analog ngadto sa digital values sa. Sa kasagaran, kini mao ang 100kHz, ug panagsa ra nimo kinahanglan nga usbon kini nga kantidad. |
/fx4/adc/offset_correction | READONLY NUMBER Sum sa tanang mga kasamtangang offset sa channel. |
4.2 Analog Output IO
Kini nga IO nalangkit sa pag-configure sa mga general-purpose analog outputs sa FX4 nga makita ubos sa analog inputs sa front panel. Ang tanan nga 4 ka channel naggamit sa parehas nga interface IO ug independente nga kontrolado. Ilisan ang channel_x og channel_1 , channel_2 , channel_3 , o channel_4 matag usa.
IO Dalan | Deskripsyon |
/fx4/dac /channel_x | NUMBER Sugo voltage output. Kini nga kantidad mahimo lamang isulat kung ang output mode gitakda sa manual. |
/fx4/dac/channel_x/readback | READONLY NUMBER Gisukod voltage output. Kini mao ang labing makatabang sa diha nga ang paggamit sa ekspresyon output mode. |
/fx4/dac/channel_x/output_mode | STRING Nagtakda sa output mode para sa channel. Mga kapilian: "manwal", "pagpahayag", "pagkontrol_proseso" |
/fx4/dac/channel _ x/slew_control_enable | BOOL Makapahimo o mag-disable sa slew rate limiting. |
/fx4/dac/channel_x/slew_rate | NUMBER Slew rate sa V/s para sa channel. |
/fx4/dac/channel_x/upper_limit | NUMERO Ang pinakataas nga gitugot nga sugo voltage para sa channel. Magamit sa tanan nga mga mode sa operasyon. |
/fx4/dac/channel _ x/lower_limit | NUMERO Ang minimum nga gitugot nga sugo voltage para sa channel. Magamit sa tanan nga mga mode sa operasyon. |
/fx4/dac/channel _ x/ output _ ekspresyon | STRING Nagtakda sa expression nga string nga gigamit sa channel kung kini anaa sa expression output mode. |
/fx4/dac/channel _ x/reset_button | BUTTON Gi-reset ang command voltage sa 0. |
4.3 Digital nga Input ug Output
Kini nga IO may kalabutan sa pagkontrolar sa lain-laing mga kinatibuk-ang katuyoan digital inputs ug outputs nga makita sa FX4.
IO Dalan | Deskripsyon |
/fx4/fr1 | READONLY BOOL Fiber receiver 1. |
/fx4/ft1 | BOOL Fiber transmitter 1. |
/fx4/fr2 | READONLY BOOL Fiber receiver 2. |
/fx4/ft2 | BOOL Fiber transmitter 2. |
/fx4/fr3 | READONLY BOOL Fiber receiver 3. |
/fx4/ft3 | BOOL Fiber transmitter 3. |
/fx4/digital_expansion/d1 | BOOL D1 bidirectional digital pagpalapad IO. |
/fx4/digital_expansion/d2 | BOOL D2 bidirectional digital pagpalapad IO. |
/fx4/digital_expansion/d3 | BOOL D3 bidirectional digital pagpalapad IO. |
/fx4/digital_expansion/d4 | BOOL D4 bidirectional digital pagpalapad IO. |
4.3.1 Digital IO Configuration
Ang tanan nga mga digital adunay anak nga IO alang sa pag-configure sa ilang pamatasan lakip ang usa ka operating mode nga nagkontrol kung giunsa ang pag-operate sa digital. Ang matag digital adunay lahi nga set sa magamit nga mga kapilian. Tan-awa ang GUI alang sa mga detalye kung unsang mga kapilian ang magamit alang sa kung unsa ang IO.
Bata IO Dalan | Deskripsyon |
…/mode | STRING Operation mode para sa digital. Mga kapilian: "input", "output", "pwm", "timer", "encoder", "capture", "uart_rx", "uart_tx", "can_rx", "can_tx", "pru_input", o "pru_output" |
…/process_signal | STRING Ang ngalan sa signal sa pagkontrol sa proseso, kung adunay usa. |
…/pull_mode | STRING Pull up/down mode para sa digital input. Mga kapilian: "pataas", "ubos", o "pag-disable" |
4.4 Pagkontrol sa Relay
Ang duha nga mga relay independente nga kontrolado ug adunay parehas nga tipo sa interface. Ilisan ang relay_x sa relay_a o relay_b matag usa.
IO Dalan | Deskripsyon |
/fx4/relay _ x/permit / user _ command | BOOL Nagmando sa relay nga abli o sirado. Ang usa ka tinuod nga sugo mosulay sa pagsira sa relay kung ang mga interlocks gihatag, ug ang bakak nga sugo kanunay magbukas sa relay. |
/fx4/relay _ x/estado | READONLY STRING Ang kasamtangang kahimtang sa relay. Ang mga naka-lock nga relay bukas apan dili masirado tungod sa usa ka interlock. Mga estado: "giablihan", "sirado", o "naka-lock" |
/fx4/relay _ x/awtomatikong _ close | BOOL Kung gitakda sa tinuod, ang relay awtomatik nga magsira kung ang mga interlock gihatag. Bakak pinaagi sa default. |
/fx4/relay _ x/ cycle _ count | READONLY NUMBER Ang gidaghanon sa mga relay cycle sukad sa katapusang pag-reset. Mapuslanon alang sa pagsubay sa tibuok kinabuhi sa relay. |
4.5 Taas nga Voltage Module
Tan-awa ang IGX – Programmer Manual para sa mga detalye sa FX4 high voltage interface. Ang component parent path mao ang /fx4/high_votlage .
4.6 Dose Controller
Tan-awa ang IGX - Programmer Manual alang sa mga detalye sa FX4 dose controller interface. Ang agianan sa ginikanan sa sangkap mao ang /fx4/dose_controller.
FX4 Python Examples
5.1 Data Logger gamit ang HTTP
Kini nga exampGipakita sa le kung giunsa pagkuha ang daghang mga pagbasa ug i-save kini sa usa ka CSV file. Pinaagi sa pagpili sa usa ka taas nga paglangan tali sa mga pagbasa, mahimo nimong buhaton ang dugay nga pag-log sa datos bisan kung ang FX4 sampling rate gibutang nga mas taas. Gitugotan ka niini nga magpadayon sa pagkolekta ug pagtipig sa mga sukod sa taas nga mga panahon nga dili mabug-atan ang sistema, pagsiguro nga ang datos makuha sa mga agwat nga angay alang sa imong pag-analisar. Ang paglangan tali sa mga pagbasa makatabang sa pag-regulate sa dagan sa pag-log sa datos, nga nagtugot alang sa episyente nga pagtipig ug pagkunhod sa risgo sa pagkawala sa mga punto sa datos samtang nakabenepisyo gihapon gikan sa high-speed sampling alang sa real-time nga mga pagsukod.
5.2 Yano nga Python GUI
Ang ikaduha nga exampGigamit ni le ang tool sa Tkinter GUI, nga gihimo para sa Python, aron makahimo og display sa gisukod nga mga sulog. Kini nga interface nagtugot kanimo sa paghanduraw sa kasamtangan nga mga pagbasa sa usa ka user-friendly nga graphical nga format. Ang display mahimong mabag-o aron mahimo kini nga igo nga kadako aron mabasa gikan sa usa ka kwarto, nga himuon kini nga sulundon alang sa mga senaryo diin kinahanglan ang real-time nga pag-monitor sa mas dagkong mga wanang. Naghatag ang Tkinter og sayon nga paagi sa paghimo og interactive nga mga interface, ug pinaagi sa pag-integrate niini sa FX4, dali ka nga makahimo og biswal nga pagpasundayag sa gisukod nga mga sulog nga mahimong ipasibo aron mohaum sa imong piho nga mga panginahanglan.
5.3 Yano WebMga Socket Example
Kini nga example nagpakita sa WebSockets interface, nga mao ang gipalabi nga pamaagi sa pagbasa sa datos gikan sa FX4 kung gikinahanglan ang pinakataas nga bandwidth. WebAng mga socket naghatag og usa ka tinuod nga panahon, full-duplex nga channel sa komunikasyon, nga nagtugot sa mas paspas ug mas episyente nga pagbalhin sa datos kon itandi sa ubang mga pamaagi.
Ang example nagbasa sa usa ka serye sa samples, nagtaho sa kasagaran nga oras kada sample ug labing taas nga latency, ug gitipigan ang datos sa usa ka CSV file alang sa ulahi nga pagtuki. Kini nga setup nagtugot alang sa episyente nga real-time nga pag-monitor ug dali nga pagtipig sa datos alang sa post-processing.
Ang espesipikong pasundayag nga mahimong makab-ot sa WebAng mga socket nagdepende sa pagkakasaligan sa imong Ethernet interface ug sa relatibong prayoridad sa imong aplikasyon. Alang sa labing maayo nga mga resulta, siguroha nga ang imong network lig-on ug nga ang pagpadala sa datos sa FX4 gihatagan og prayoridad kung gikinahanglan.
Bersyon: v3
FX4 Python Exampubos: 21
Mga Dokumento / Mga Kapanguhaan
![]() |
PYRAMID FX4 Programmer [pdf] Manwal sa Instruksyon FX4 Programmer, FX4, Programmer |