www.pyramid.tech
FX4
FX4 Programmer Manual
Chiphaso cha ID: 2711715845
Mtundu: v3
Pulogalamu ya FX4
Chiphaso cha ID: 2711715845
FX4 - FX4 Programmer Manual
Chikalata ID: 2711650310
Wolemba | Matthew Nichols |
Mwini | Mtsogoleri wa Project |
Cholinga | Fotokozani malingaliro amapulogalamu ofunikira kuti mugwiritse ntchito API ndikukulitsa malonda kudzera pakugwiritsa ntchito kunja. |
Mbali | FX4 yogwirizana ndi mapulogalamu. |
Omvera Ofuna | Opanga mapulogalamu omwe akufuna kugwiritsa ntchito mankhwalawa. |
Njira | https://pyramidtc.atlassian.net/wiki/pages/createpage.action? spaceKey=PQ&title=Standard%20Manual%20Creation%20Process |
Maphunziro | ZOSAFUNIKA |
Version Control
Baibulo | Kufotokozera | Kupulumutsidwa ndi | Zasungidwa | Mkhalidwe |
v3 | Anawonjezeranso yosavutaview ndi zambiri examples. | Matthew Nichols | Marichi 6, 2025 10:29 PM | ZOVOMEREZEKA |
v2 | Onjezani mawonekedwe a digito a IO ndi maumboni obwerera ku IGX. | Matthew Nichols | Meyi 3, 2024 7:39 PM | ZOVOMEREZEKA |
v1 | Kutulutsidwa koyambirira, ntchito idakali mkati. | Matthew Nichols | Feb 21, 2024 11:25 PM | ZOVOMEREZEKA |
Document Control Osati Reviewed
Zolemba zapano: v.1
Ayi reviewopatsidwa.
1.1 Ma signature
kwa mtundu waposachedwa kwambiri
Lachisanu, Marichi 7, 2025, 10:33 PM UTC
Matthew Nichols anasaina; kutanthauza: Review
Maumboni
Chikalata | Document ID | Wolemba | Baibulo |
IGX - Buku la Mapulogalamu | 2439249921 | Matthew Nichols | 1 |
FX4 Programming Overview
Purosesa ya FX4 imayenda pamalo otchedwa IGX, omwe amamangidwa pa makina odalirika a QNX odalirika kwambiri kuchokera ku BlackBerry (Mtengo wa QNX Webmalo¹). IGX imapereka mawonekedwe osinthika komanso omveka bwino a pulogalamu yamapulogalamu (API) kwa ogwiritsa ntchito omwe akufuna kulemba mapulogalamu awo apakompyuta.
Chilengedwe cha IGX chimagawidwa pazinthu zina za Pyramid, kulola mayankho apulogalamu opangidwa kuti chinthu chimodzi chisamutsidwe mosavuta kwa ena.
Olemba mapulogalamu amatha kuloza zolemba zonse za IGX zomwe zikupezeka pa Piramidi webtsamba pa: IGX | Modern Modular Control System Framework for Web-Mapulogalamu Othandizira²
Gawoli limapereka chidziwitso choyesera njira ziwiri za API: HTTP pogwiritsa ntchito mtundu wa JSON ndi EPICS. Kuti zikhale zosavuta, Python (Python Webmalo³) amagwiritsidwa ntchito ngati example host chilankhulo cha pakompyuta, chomwe chimapezeka komanso chosavuta kugwiritsa ntchito kwa omwe si akatswiri opanga mapulogalamu.
3.1 Kugwiritsa ntchito Python ndi HTTP
Monga example, lingalirani kuti mukufuna kuwerenga kuchuluka kwa mafunde oyezedwa ndi Python. Muyenera URL za IO imeneyo. FX4 ndi web GUI imapereka njira yosavuta yopezera izi: dinani kumanja m'munda ndikusankha 'Koperani HTTP URL' kukopera chingwecho pa clipboard.
Tsopano mutha kugwiritsa ntchito Python kuyesa kulumikizana ndi pulogalamu ya ogwiritsa ntchito kudzera pa HTTP ndi JSON. Mungafunike kuitanitsa zopempha ndi malaibulale a json kuti athetse zopempha za HTTP ndi kugawa deta.
1 Simple Python HTTP Example
3.2 Kugwiritsa ntchito EPICS
Njira yolumikizira FX4 kudzera mu EPICS (Experimental Physics and Industrial Control System) ndiyofanana. EPICS ndi gulu la zida zamapulogalamu ndi ntchito zomwe zimagwiritsidwa ntchito popanga ndi kukhazikitsa machitidwe owongolera omwe amagwiritsidwa ntchito kwambiri m'malo asayansi.
- Pezani dzina la EPICS process variable (PV) la IO yomwe mukufuna.
- Lowetsani laibulale ya EPICS ndikuwerenga mtengo wake.
2 Pezani EPICS PV Dzina
3 Python Yosavuta EPICS Example
Kuphatikiza apo, piramidi idapanga chida (EPICS Connect⁴) zomwe zimakupatsani mwayi wowunika kusintha kwa ma EPICS munthawi yeniyeni. Chida ichi ndichothandiza kutsimikizira ngati dzina la EPICS PV ndi lolondola ndipo FX4 ikugwiritsa ntchito PV molondola pamanetiweki yanu.
4 PTC EPICS Lumikizani
FX4 Programming API
Mfundo ndi njira zomwe zafotokozedwa m'bukuli zikumanga pa mfundo zomwe zakhazikitsidwa mu IGX - Programmer Manual. Chonde onani chikalata chimenecho kuti mufotokozere komanso mwachitsanzoampza momwe ma IGX mapulogalamu ndi ma interfaces amagwirira ntchito. Bukuli lingofotokoza za chipangizo cha IO komanso magwiridwe antchito apadera a FX4.
4.1 Kuyika kwa Analogi IO
Ma IO awa akukhudzana ndi kukonza ndi kusonkhanitsa deta pazolowetsa za analogi za FX4. Mayunitsi a zolowetsa tchanelo amatengera makonda osinthika otchedwa "Sample Units”, zosankha zovomerezeka zikuphatikiza pA, nA, uA, mA, ndi A.
Njira zonse za 4 zimagwiritsa ntchito mawonekedwe omwewo a IO ndipo amayendetsedwa paokha. Sinthani channel_x ndi channel_1 , channel_2 , channel_3 , kapena channel_4 motsatira.
Njira ya IO | Kufotokozera |
/fx4/adc/channel_x | WERENGANI NUMBER Yemwe zalowa. |
/fx4/adc/channel_x/scalar | NUMBER Sikale yosavuta yopanda mawonekedwe yomwe imagwiritsidwa ntchito patchanelo, 1 mwachisawawa. |
/fx4/adc/channel_x/zero_offset | NUMBER Kutsika kwapano mu nA pa tchanelo. |
Ma IO otsatirawa sali odziyimira pawokha ndipo amagwiritsidwa ntchito kumakanema onse nthawi imodzi.
Njira ya IO | Kufotokozera |
/fx4/channel_sum | WERENGANI NUMBER Chiwerengero cha tchanelo chomwe chilipo. |
/fx4/adc_unit | STRING Imakhazikitsa mayunitsi apano pa tchanelo chilichonse ndi kuchuluka kwake. Zosankha: "pa", "na", "ua", "ma", "a" |
/fx4/range | STRING Imakhazikitsa mulingo wapano. Onani GUI momwe nambala iliyonse imayenderana ndi malire omwe akupezekapo komanso BW. Zosankha: "0", "1", "2", "3", "4", "5", "6", "7" |
/fx4/adc/sample_frequency | NUMBER Mafupipafupi mu Hz kuti sample data adzakhala avareji ku. Izi zimawongolera ma sign-to-phokoso ndi kuchuluka kwa data pamakanema onse. |
/fx4/adc/conversion_frequency | NUMBER Mafupipafupi mu Hz omwe ADC isinthira analogi kukhala ma digito. Mwachikhazikitso, uku ndi 100kHz, ndipo simudzasowa kusintha mtengowu. |
/fx4/adc/offset_correction | WERENGANI NUMBER Chiŵerengero chonse chazomwe zasinthidwa pano. |
4.2 Kutulutsa kwa Analogi IO
IO iyi ikugwirizana ndi kasinthidwe ka zotsatira za analogi za FX4 zopezeka pansi pa zolowetsa za analogi kutsogolo. Njira zonse za 4 zimagwiritsa ntchito mawonekedwe omwewo a IO ndipo amayendetsedwa paokha. Sinthani channel_x ndi channel_1 , channel_2 , channel_3 , kapena channel_4 motsatira.
Njira ya IO | Kufotokozera |
/fx4/dac/channel_x | NUMBER Command voltagndi zotuluka. Mtengo uwu ukhoza kulembedwa kokha pamene mawonekedwe otulutsa ayikidwa pamanja. |
/fx4/dac/channel_x/readback | READONLY NUMBER Measured voltagKutulutsa. Izi ndizothandiza kwambiri mukamagwiritsa ntchito mawu otulutsa. |
/fx4/dac/channel_x/output_mode | STRING Imakhazikitsa njira yotulutsira tchanelo. Zosankha: "pamanja", "mawu", "process_control" |
/fx4/dac/channel _ x/slew_control_enable | BOOL Imayatsa kapena kuletsa kuchepetsa mitengo. |
/fx4/dac/channel_ x/slew_rate | NUMBER Mulingo wocheperako mu V/s patchanelo. |
/fx4/dac/channel_x/upper_limit | NUMBER Lamulo lalikulu lololedwa voltage kwa channel. Imagwira pamitundu yonse yogwiritsira ntchito. |
/fx4/dac/channel _ x/low_limit | NUMBER Lamulo lochepera lololedwa voltage kwa channel. Imagwira pamitundu yonse yogwiritsira ntchito. |
/fx4/dac/channel _ x/ zotuluka _ mawu | STRING Imayika mawu ogwiritsidwa ntchito ndi tchanelo ikakhala mumayendedwe otulutsa. |
/fx4/dac/channel _ x/reset_button | BUTTON Ikukhazikitsanso lamulo la voltage ku 0. |
4.3 Zolowetsa ndi Zotulutsa Za digito
Ma IO awa akukhudzana ndi kuwongolera zolowa ndi zotuluka za digito zopezeka pa FX4.
Njira ya IO | Kufotokozera |
/fx4/fr1 | WERENGANI BOOL Fiber wolandila 1. |
/fx4/ft1 | BOOL Fiber transmitter 1. |
/fx4/fr2 | WERENGANI BOOL Fiber wolandila 2. |
/fx4/ft2 | BOOL Fiber transmitter 2. |
/fx4/fr3 | WERENGANI BOOL Fiber wolandila 3. |
/fx4/ft3 | BOOL Fiber transmitter 3. |
/fx4/digital_expansion/d1 | BOOL D1 bidirectional digito kukulitsa IO. |
/fx4/digital_expansion/d2 | BOOL D2 bidirectional digito kukulitsa IO. |
/fx4/digital_expansion/d3 | BOOL D3 bidirectional digito kukulitsa IO. |
/fx4/digital_expansion/d4 | BOOL D4 bidirectional digito kukulitsa IO. |
4.3.1 Kusintha kwa Digital IO
Ma digito onse ali ndi IO ya ana kuti asinthe machitidwe awo kuphatikiza mawonekedwe ogwiritsira ntchito omwe amawongolera momwe digitoyo idzagwirira ntchito. Digitala iliyonse idzakhala ndi zosankha zosiyanasiyana zomwe zilipo. Onani GUI kuti mumve zambiri pazomwe mungachite pa zomwe IO.
Mwana IO Njira | Kufotokozera |
…/mode | STRING mawonekedwe a digito. Zosankha: “zolowera”, “zotulutsa”, “pwm”, “timer”, “encoder”, “capture”, “uart_rx”, “uart_tx”, “can_rx”, “can_tx”, “pru_input”, kapena “pru_output” |
…/process_signal | STRING Dzina la siginecha yowongolera ndondomeko, ngati lilipo. |
…/pull_mode | STRING Kokani mmwamba/pansi kuti mulowetse mawu a digito. Zosankha: "mmwamba", "pansi", kapena "letsa" |
4.4 Relay Control
Ma relay onsewa amayendetsedwa paokha ndipo amagawana mawonekedwe amtundu womwewo. Sinthani relay_x ndi relay_a kapena relay_b motsatana.
Njira ya IO | Kufotokozera |
/fx4/relay _ x/permit / wosuta _ lamulo | BOOL Imalamula kuti relay itsegulidwe kapena kutsekedwa. Lamulo loona lidzayesa kutseka relay ngati ma interlocks aperekedwa, ndipo lamulo labodza lidzatsegula nthawi zonse. |
/fx4/relay _ x/state | READONLY STRING Mkhalidwe waposachedwa wapawiri. Zolumikizira zokhoma ndizotseguka koma sizingatsekeke chifukwa cha kutsekeka. Mayiko: "otsegulidwa", "otsekedwa", kapena "otsekedwa" |
/fx4/relay _ x/zokha _ kutseka | BOOL Ikakhazikitsidwa kuti ikhale yowona, relay imatseka yokha zolumikizira zikaperekedwa. Zabodza mwachisawawa. |
/fx4/relay _ x/ kuzungulira _ kuwerengera | READONLY NUMBER Chiwerengero cha mikombero yotumizirana mauthenga kuyambira pakukonzanso komaliza. Zothandiza pakutsata moyo wonse wa relay. |
4.5 Mkulu Voltage Module
Onani IGX - Programmer Manual kuti mudziwe zambiri za FX4 high voltagndi mawonekedwe. Njira ya makolo ndi /fx4/high_votlage.
4.6 Dose Controller
Onani IGX - Programmer Manual kuti mumve zambiri za mawonekedwe a FX4 owongolera mlingo. Njira ya makolo ndi /fx4/dose_controller.
FX4 Python Examples
5.1 Data Logger pogwiritsa ntchito HTTP
Ex iziample akuwonetsa momwe angajambule zowerengera zingapo ndikuzisunga ku CSV file. Posankha kuchedwa kwanthawi yayitali pakati pa kuwerenga, mutha kupanga mitengo yayitali ngakhale ma FX4 sampLing rate imayikidwa pamwamba. Izi zimakupatsani mwayi wosonkhanitsa ndikusunga miyeso nthawi yayitali popanda kuchulukitsira makina, kuwonetsetsa kuti deta imajambulidwa pakanthawi koyenera kuti muwunike. Kuchedwa pakati pa kuwerenga kumathandizira kuwongolera liwiro lomwe deta imalowetsedwa, kulola kusungidwa koyenera komanso kuchepetsa chiopsezo chosowa ma data pomwe mukupindulabe ndi liwiro lalikulu.ampling poyezera nthawi yeniyeni.
5.2 Python GUI yosavuta
Example amagwiritsa ntchito chida cha Tkinter GUI, chomwe chimapangidwira Python, kuti apange chiwonetsero cha mafunde oyezera. Mawonekedwe awa amakupatsani mwayi wowonera zomwe zikuwerengedwa pano mumtundu wosavuta kugwiritsa ntchito. Chowonetseracho chikhoza kusinthidwa kuti chikhale chachikulu mokwanira kuti chiwerengedwe kuchokera m'chipinda chonse, ndikupangitsa kuti chikhale choyenera kwa zochitika zomwe zimafunika kuyang'anitsitsa nthawi yeniyeni m'malo akuluakulu. Tkinter imapereka njira yosavuta yopangira zolumikizirana, ndipo poziphatikiza ndi FX4, mutha kupanga mwachangu chiwonetsero chazithunzi zoyezedwa zomwe zingasinthidwe kuti zigwirizane ndi zosowa zanu zenizeni.
5.3 Zosavuta WebSockets Example
Ex iziample akuwonetsa WebMawonekedwe a Sockets, yomwe ndi njira yabwino yowerengera deta kuchokera ku FX4 pomwe bandwidth yayikulu ikufunika. WebSockets imapereka nthawi yeniyeni, njira yolankhulirana yokhazikika, yomwe imalola kusamutsa deta mwachangu komanso moyenera poyerekeza ndi njira zina.
Example amawerenga mndandanda wa sampLes, lipoti pafupifupi nthawi pa sample ndi maximum latency, ndikusunga deta ku CSV file kuti tiwunikenso pambuyo pake. Kukonzekera uku kumapangitsa kuti pakhale kuyang'anira nthawi yeniyeni komanso kusungirako kosavuta kwa data pambuyo pokonza.
Ntchito yeniyeni yomwe ingapezeke nayo WebSoketi zimatengera kudalirika kwa mawonekedwe anu a Ethernet komanso kufunikira kwa pulogalamu yanu. Kuti mupeze zotsatira zabwino, onetsetsani kuti netiweki yanu ili yokhazikika komanso kuti kutumiza kwa data kwa FX4 kumayikidwa patsogolo ngati kuli kofunikira.
Mtundu: v3
FX4 Python Exampkunsi: 21
Zolemba / Zothandizira
![]() |
Pulogalamu ya PYRAMID FX4 [pdf] Buku la Malangizo FX4 Programmer, FX4, Wopanga Mapulogalamu |