www.pyramid.tech
FX4
Прирачник за програмер FX4
ID на документ: 2711715845
Верзија: v3
Програмер FX4
ID на документ: 2711715845
Прирачник за програмер FX4 – FX4
ID на документ: 2711650310
Автор | Метју Николс |
Сопственик | Водач на проектот |
Цел | Објаснете ги концептите за програмирање неопходни за користење на API и проширување на производот преку надворешни апликации. |
Опсег | Програмски концепти поврзани со FX4. |
Наменета публика | Програмери на софтвер заинтересирани за користење на производот. |
Процес | https://pyramidtc.atlassian.net/wiki/pages/createpage.action? spaceKey=PQ&title=Standard%20Manual%20Creation%20Process |
Обука | НЕ ПРИМЕНИ |
Контрола на верзијата
Верзија | Опис | Зачувано од | Зачувано на | Статус |
v3 | Додадено е едноставно надview и повеќе ексampлес. | Метју Николс | 6 март 2025 10:29 часот | ОДОБРЕНО |
v2 | Додадени дигитални IO интерфејси и референци назад на IGX. | Метју Николс | 3 мај 2024 7:39 часот | ОДОБРЕНО |
v1 | Првичното издание, сè уште е во тек. | Метју Николс | 21 февруари 2024 11:25 часот | ОДОБРЕНО |
Контрола на документи Не Реviewed
Тековна верзија на документот: v.1
Нема повторноviewдоделени.
1.1 Потписи
за најновата верзија на документот
Петок, 7 март 2025 година, 10:33 UTC
Метју Николс потпиша; што значи: Реview
Референци
Документ | ИД на документот | Автор | Верзија |
IGX – Прирачник за програмер | 2439249921 | Метју Николс | 1 |
Програмирање FX4 завршиview
Процесорот FX4 работи на средина наречена IGX, која е изградена на QNX оперативниот систем со висока доверливост во реално време од BlackBerry (QNX Webсајт¹). IGX обезбедува флексибилен и сеопфатен интерфејс за програмирање на апликации (API) за корисници кои сакаат да напишат сопствен компјутерски софтвер за домаќини.
Околината IGX е споделена со други производи на Pyramid, што овозможува софтверските решенија развиени за еден производ лесно да се пренесат на други.
Програмерите можат да се повикаат на целосната документација за IGX достапна на Пирамидата webсајт на: IGX | Модерна рамка за модуларен систем за контрола за Web-овозможени Апликации²
Овој дел дава вовед во тестирање на два од методите на API: HTTP користејќи JSON формат и EPICS. За едноставност, Python (Пајтон Webсајт³) се користи како прample host компјутерски јазик, кој е достапен и лесен за употреба за непрофесионални програмери.
3.1 Користење на Python и HTTP
Како ексampле, да претпоставиме дека сакате да го прочитате збирот на измерените струи со Python. Ти треба URL за тој конкретен ИО. FX4 web GUI обезбедува лесен начин да го најдете ова: едноставно кликнете со десното копче на полето и изберете „Копирај HTTP“. URL' за да ја копирате низата на таблата со исечоци.
Сега можете да го користите Python за да ја тестирате поврзаноста со корисничкиот софтвер преку HTTP и JSON. Можеби ќе треба да ги увезете барањата и библиотеките json за да се справите со барањата HTTP и парсирањето на податоците.
1 Едноставен Python HTTP Прample
3.2 Користење EPICS
Сличен е и процесот за поврзување на FX4 преку EPICS (Експериментална физика и систем за индустриска контрола). EPICS е збир на софтверски алатки и апликации кои се користат за развој и имплементација на дистрибуирани контролни системи, широко користени во научните капацитети.
- Добијте го името на процесната променлива EPICS (PV) за саканиот IO.
- Увезете ја библиотеката EPICS и прочитајте ја вредноста.
2 Добијте име на PV EPICS
3 Едноставни ЕПИ за Python Прample
Дополнително, Pyramid создаде алатка (EPICS Поврзете се4) што ви овозможува да ги следите променливите на процесот EPICS во реално време. Оваа алатка е корисна за да потврдите дали името EPICS PV е точно и дали FXXNUMX правилно го опслужува PV на вашата мрежа.
4 PTC EPICS Поврзете се
API за програмирање FX4
Концептите и методите опишани во овој прирачник се надоврзуваат на концептите утврдени во IGX – Прирачникот за програмер. Ве молиме погледнете го тој документ за објаснување и прampза тоа како функционираат основните IGX програмирања и интерфејси. Овој прирачник ќе ги опфати само IO специфичните за уредот и функционалноста што е единствена за FX4.
4.1 Аналоген влез IO
Овие IO се однесуваат на конфигурирање и собирање податоци за аналогните тековни влезови на FX4. Единиците на влезовите на каналот се засноваат на поставката што може да се конфигурира од корисникот наречена „Sample Units“, валидни опции вклучуваат pA, nA, uA, mA и A.
Сите 4 канали го користат истиот интерфејс IO и се независно контролирани. Заменете го channel_x со channel_1 , channel_2 , channel_3 или channel_4 соодветно.
IO Патека | Опис |
/fx4/adc/channel_x | БРОЈ САМО ЗА ЧИТАЊЕ Измерен тековен влез. |
/fx4/adc/channel_x/scalar | БРОЈ Едноставен скалар без единици се применува на каналот, стандардно 1. |
/fx4/adc/channel_x/zero_offset | NUMBER Тековно поместување во nA за каналот. |
Следниве IO не се независни од канали и се применуваат на сите канали истовремено.
IO Патека | Опис |
/fx4/channel_sum | БРОЈ ЗА ЧИТАЊЕ Збир на тековните влезни канали. |
/fx4/adc_unit | STRING Ги поставува тековните кориснички единици за секој канал и збир. Опции: „па“, „на“, „уа“, „ма“, „а“ |
/fx4/опсег | STRING Го поставува тековниот опсег на внесување. Видете GUI за тоа како секој код на опсег одговара на максималните тековни влезни граници и BW. Опции: „0“, „1“, „2“, „3“, „4“, „5“, „6“, „7“ |
/fx4/adc/sampле_фреквенција | БРОЈ Фреквенцијата во Hz која sampле податоците ќе бидат просечни до. Ова ја контролира брзината на сигнал до шум и податоци за сите канали. |
/fx4/adc/conversion_frequency | БРОЈ Фреквенцијата во Hz на која ADC ќе ги конвертира аналогните во дигитални вредности. Стандардно, ова е 100 kHz, и само ретко ќе треба да ја промените оваа вредност. |
/fx4/adc/offset_correction | БРОЈ САМО ЧИТАЈ Збир на сите тековни поместувања на каналот. |
4.2 Аналоген излез IO
Овие IO се однесуваат на конфигурацијата на аналогните излези за општа намена на FX4 што се наоѓаат под аналогните влезови на предниот панел. Сите 4 канали го користат истиот интерфејс IO и се независно контролирани. Заменете го channel_x со channel_1 , channel_2 , channel_3 или channel_4 соодветно.
IO Патека | Опис |
/fx4/dac /channel_x | NUMBER Command voltage излез. Оваа вредност може да се запише само кога излезниот режим е поставен на рачен. |
/fx4/dac/channel_x/readback | БРОЈ ЗА ЧИТАЊЕ Измерен томtage излез. Ова е најкорисно кога се користи режимот за излез на изразување. |
/fx4/dac/channel_x/output_mode | STRING Го поставува режимот на излез за каналот. Опции: „рачно“, „израз“, „процес_контрола“ |
/fx4/dac/channel _ x/slew_control_enable | BOOL Овозможува или оневозможува ограничување на брзината на удар. |
/fx4/dac/channel_ x/slew_rate | NUMBER Брзина на превртување во V/s за каналот. |
/fx4/dac/channel_x/upper_limit | NUMBER Максимално дозволената команда voltagд за каналот. Важи за сите режими на работа. |
/fx4/dac/channel _ x/lower_limit | БРОЈ Минималната дозволена команда voltagд за каналот. Важи за сите режими на работа. |
/fx4/dac/канал _ x/ излез _ израз | STRING Ја поставува низата за изразување што ја користи каналот кога е во режим на излез на изразување. |
/fx4/dac/channel _ x/reset_button | BUTTON Ја ресетира командата voltagе до 0. |
4.3 Дигитален влез и излез
Овие IO се однесуваат на контролирање на различните дигитални влезови и излези за општа намена што се наоѓаат на FX4.
IO Патека | Опис |
/fx4/fr1 | READONLY BOOL Приемник со влакна 1. |
/fx4/ft1 | BOOL предавател со влакна 1. |
/fx4/fr2 | READONLY BOOL Приемник со влакна 2. |
/fx4/ft2 | BOOL предавател со влакна 2. |
/fx4/fr3 | READONLY BOOL Приемник со влакна 3. |
/fx4/ft3 | BOOL предавател со влакна 3. |
/fx4/digital_expansion/d1 | BOOL D1 двонасочно дигитално проширување IO. |
/fx4/digital_expansion/d2 | BOOL D2 двонасочно дигитално проширување IO. |
/fx4/digital_expansion/d3 | BOOL D3 двонасочно дигитално проширување IO. |
/fx4/digital_expansion/d4 | BOOL D4 двонасочно дигитално проширување IO. |
4.3.1 Дигитална IO конфигурација
Сите дигитални уреди имаат дете IO за конфигурирање на нивното однесување, вклучително и режим на работа кој контролира како тој дигитален ќе работи. Секој дигитален ќе има различен сет на достапни опции. Погледнете го GUI за детали за тоа кои опции се достапни за кој IO.
Дете IO патека | Опис |
…/режим | STRING Работен режим за дигиталниот. Опции: „влез“, „излез“, „pwm“, „тајмер“, „енкодер“, „снимање“, „uart_rx“, „uart_tx“, „can_rx“, „can_tx“, „pru_input“ или „pru_output“ |
…/процес_сигнал | STRING Името на сигналот за контрола на процесот, доколку го има. |
…/pull_mode | STRING Режим на влечење нагоре/надолу за дигитален влез. Опции: „горе“, „долу“ или „оневозможи“ |
4.4 Контрола на реле
Двете релеи се независно контролирани и споделуваат ист тип на интерфејс. Заменете го relay_x со relay_a или relay_b соодветно.
IO Патека | Опис |
/fx4/релеј _ x/дозвола / корисник _ команда | BOOL Наредува релето да се отвори или затвори. Вистинската команда ќе се обиде да го затвори релето ако се доделени заклучувањата, а лажната команда секогаш ќе го отвора релето. |
/fx4/реле _ x/состојба | RADONLY STRING Тековната состојба на релето. Заклучените релеи се отворени, но не можат да се затворат поради блокирање. Состојби: „отворено“, „затворено“ или „заклучено“ |
/fx4/реле _ x/автоматски _ затвори | BOOL Кога е поставено на true, релето автоматски ќе се затвори кога ќе се доделат заклучувањата. Неточно по дифолт. |
/fx4/реле _ x/ циклус _ број | БРОЈ САМО ЗА ЧИТАЊЕ Бројот на циклуси на реле од последното ресетирање. Корисно за следење на животниот век на релето. |
4.5 High Voltagе Модул
Видете го IGX – Прирачникот за програмер за детали за FX4 high voltagе интерфејс. Основната патека на компонентата е /fx4/high_votlage.
4.6 Контролор на доза
Видете го IGX – Прирачникот за програмер за детали за интерфејсот на контролорот на дозата FX4. Основната патека на компонентата е /fx4/dose_controller.
FX4 Python Exampлес
5.1 Дневник на податоци со помош на HTTP
Овој ексample демонстрира како да снимите голем број читања и да ги зачувате во CSV file. Со избирање на долго одложување помеѓу читањата, можете да извршите долгорочно евидентирање податоци дури и ако FX4 sampстапката на линг е поставена повисока. Ова ви овозможува континуирано собирање и складирање на мерења во подолги периоди без да го преоптоварувате системот, осигурувајќи се дека податоците се запишуваат во интервали соодветни за вашата анализа. Доцнењето помеѓу отчитувањата помага да се регулира темпото со кое се евидентираат податоците, овозможувајќи ефикасно складирање и намалување на ризикот од пропуштање на точките на податоци, додека сè уште има корист од голема брзинаampлинг за мерења во реално време.
5.2 Едноставен Python GUI
Вториот бившampЛе ја користи алатката Tkinter GUI, која е изградена за Python, за да создаде приказ на измерените струи. Овој интерфејс ви овозможува да ги визуелизирате тековните читања во графички формат што е лесен за корисниците. Дисплејот може да се промени за да биде доволно голем за читање од друга просторија, што го прави идеален за сценарија каде што е потребно следење во реално време на поголеми простори. Tkinter обезбедува лесен начин за креирање интерактивни интерфејси и со негово интегрирање со FX4, можете брзо да изградите визуелен приказ на измерените струи што може да се приспособат за да одговараат на вашите специфични потреби.
5.3 Едноставно WebСокети Прample
Овој ексampго демонстрира WebSockets интерфејс, кој е префериран метод за читање податоци од FX4 кога е потребен максимален пропусен опсег. WebСокетите обезбедуваат комуникациски канал во реално време, целосно дуплекс, што овозможува побрз и поефикасен пренос на податоци во споредба со другите методи.
Поранешниотampле чита серија од samples, го известува просечното време по секample и максимална латентност, и ги зачувува податоците во CSV file за подоцнежна анализа. Ова поставување овозможува ефикасно следење во реално време и лесно складирање на податоци за пост-обработка.
Специфичните перформанси што може да се постигнат со WebСокетите зависи од доверливоста на вашиот етернет интерфејс и од релативниот приоритет на вашата апликација. За оптимални резултати, погрижете се вашата мрежа да е стабилна и дека преносот на податоци на FX4 има приоритет доколку е потребно.
Верзија: v3
FX4 Python Examples: 21
Документи / ресурси
![]() |
Програмер PYRAMID FX4 [pdf] Упатство за употреба Програмер FX4, FX4, програмер |