Логотип PYRAMIDwww.pyramid.tech
FX4
Посібник програміста FX4
Ідентифікатор документа: 2711715845
Версія: v3Програматор PYRAMID FX4

Програматор FX4

Ідентифікатор документа: 2711715845
FX4 – Посібник програміста FX4

Програматор PYRAMID 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 Додано цифрові інтерфейси вводу-виводу та посилання на IGX. Метью Ніколс 3 травня 2024 7:39 ЗАТВЕРДЖЕНО
v1 Початковий випуск, робота ще триває. Метью Ніколс 21 лютого 2024 р. 11:25 ЗАТВЕРДЖЕНО

Програматор PYRAMID FX4 - значок 1 Документ контрольний Не Reviewed
Поточна версія документа: v.1
Ні повторногоviewers призначені.

1.1 Підписи
для останньої версії документа
П’ятниця, 7 березня 2025 р., 10:33 UTC
Метью Ніколс підписав ; значення: Review

Список літератури

документ ID документа  Автор  Версія
IGX – посібник програміста 2439249921 Метью Ніколс 1

Програмування FX4 завершеноview

Процесор FX4 працює в середовищі під назвою IGX, яке побудовано на основі високонадійної операційної системи реального часу QNX від BlackBerry (QNX Webсайт¹). IGX надає гнучкий і комплексний інтерфейс прикладного програмування (API) для користувачів, які хочуть написати власне програмне забезпечення для хост-комп’ютера.
Середовище IGX є спільним для інших продуктів Pyramid, що дозволяє легко передавати програмні рішення, розроблені для одного продукту, на інші.
Програмісти можуть звернутися до повної документації для IGX, доступної на Pyramid webсайт за адресою: IGX | Сучасна модульна система управління для Web-додатки з підтримкою²

У цьому розділі наведено вступ до тестування двох методів API: HTTP із використанням формату JSON і EPICS. Для простоти Python (Python Webсайт³) використовується як прикладample мова хост-комп'ютера, яка доступна і проста у використанні для непрофесійних програмістів.

3.1 Використання Python і HTTP
Як колишнійample, припустимо, що ви хочете прочитати суму виміряних струмів за допомогою Python. Вам потрібно URL для цього конкретного IO. FX4 web GUI забезпечує простий спосіб знайти це: просто клацніть правою кнопкою миші в полі та виберіть «Копіювати HTTP». URL', щоб скопіювати рядок у буфер обміну.

Програміст PYRAMID FX4 - використання Python і HTTP

Тепер ви можете використовувати Python для перевірки підключення до програмного забезпечення користувача через HTTP і JSON. Вам може знадобитися імпортувати запити та бібліотеки json для обробки HTTP-запитів і аналізу даних.

PYRAMID FX4 Programmer - HTTP запити та аналіз даних1 Простий Python HTTP Прample

3.2 Використання EPICS
Процес підключення FX4 через EPICS (Experimental Physics and Industrial Control System) аналогічний. EPICS — це набір програмних засобів і додатків, які використовуються для розробки та впровадження розподілених систем керування, які широко використовуються в наукових установах.

  1. https://blackberry.qnx.com/en
  2. https://pyramid.tech/products/igx
  3. https://www.python.org/
  1. Отримайте назву змінної процесу EPICS (PV) для потрібного вводу-виводу.
  2. Імпортуйте бібліотеку EPICS і прочитайте значення.

Програматор PYRAMID FX4 - змінна процесу EPICS2 Отримайте назву EPICS PVPYRAMID FX4 Programmer - Simple Python EPICS Example3 Simple Python EPICS Прample

Крім того, Піраміда створила утиліту (EPICS Connect⁴), що дозволяє відстежувати змінні процесу EPICS у режимі реального часу. Цей інструмент корисний для перевірки правильності назви PV EPICS і правильності обслуговування FX4 PV у вашій мережі.

Програматор PYRAMID FX4 - EPICS Connect4 PTC EPICS Connect

API програмування FX4

Концепції та методи, описані в цьому посібнику, базуються на концепціях, встановлених у IGX – Посібнику програміста. Перегляньте цей документ для пояснення та напрampопис того, як працюють базові програми та інтерфейси IGX. У цьому посібнику розглядатимуться лише особливості вводу-виводу та функції, які є унікальними для FX4.

4.1 Аналоговий вхід IO
Ці IO стосуються конфігурації та збору даних на аналогових струмових входах FX4. Одиниці вимірювання входів каналів базуються на настроюваному користувачем параметрі під назвою «Sample Units», дійсні параметри включають pA, nA, uA, mA та A.
Усі 4 канали використовують один і той самий інтерфейс вводу-виводу та контролюються незалежно. Замініть канал_x на канал_1, канал_2, канал_3 або канал_4 відповідно.

Шлях IO опис
/fx4/adc/channel_x READONLY NUMBER Виміряний вхідний струм.
/fx4/adc/channel_x/скаляр NUMBER Простий безрозмірний скаляр, застосований до каналу, 1 за замовчуванням.
/fx4/adc/channel_x/zero_offset NUMBER Поточний зсув у нА для каналу.

Наступний IO не є незалежним від каналу та застосовується до всіх каналів одночасно.

Шлях IO  опис
/fx4/channel_sum READONLY NUMBER Сума поточних вхідних каналів.
/fx4/adc_unit STRING Встановлює поточні одиниці вимірювання користувача для кожного каналу та суму.
Варіанти: «па», «на», «уа», «ма», «а»
/fx4/діапазон STRING Встановлює поточний діапазон введення. Перегляньте GUI, щоб дізнатися, як кожен код діапазону відповідає максимальним поточним вхідним обмеженням і BW.
Опції: «0», «1», «2», «3», «4», «5», «6», «7»
/fx4/adc/sample_frequency ЧИСЛО Частота в Гц, що sample дані будуть усереднені до. Це керує співвідношенням сигнал/шум і швидкістю передачі даних для всіх каналів.
/fx4/adc/conversion_frequency ЧИСЛО Частота в Гц, на якій АЦП перетворюватиме аналогові значення в цифрові. За замовчуванням це 100 кГц, і вам буде потрібно лише рідко змінювати це значення.
/fx4/adc/offset_correction READONLY NUMBER Сума поточних зсувів усіх каналів.

4.2 Аналоговий вихід IO
Ці IO стосуються конфігурації аналогових виходів загального призначення FX4, розташованих під аналоговими входами на передній панелі. Усі 4 канали використовують один і той самий інтерфейс вводу-виводу та контролюються незалежно. Замініть канал_x на канал_1, канал_2, канал_3 або канал_4 відповідно.

Шлях IO  опис
/fx4/dac /channel_x NUMBER Command томtagе вихід. Це значення можна записати лише тоді, коли для режиму виведення встановлено ручний режим.
/fx4/dac/channel_x/readback READLY NUMBER Виміряний обсягtage вихід.
Це найбільш корисно під час використання режиму виведення виразу.
/fx4/dac/channel_x/output_mode STRING Встановлює вихідний режим для каналу.
Параметри: «ручний», «вираз», «контроль_процесу»
/fx4/dac/channel _ x/slew_control_enable BOOL Вмикає або вимикає обмеження швидкості наростання.
/fx4/dac/channel_ x/slew_rate NUMBER Швидкість наростання в В/с для каналу.
/fx4/dac/channel_x/upper_limit ЧИСЛО Максимально дозволена команда voltage для каналу. Застосовується для всіх режимів роботи.
/fx4/dac/channel _ x/lower_limit ЧИСЛО Мінімально дозволена команда voltage для каналу. Застосовується для всіх режимів роботи.
/fx4/dac/channel _ x/ вихідний _ вираз STRING Встановлює рядок виразу, який використовується каналом, коли він перебуває в режимі виведення виразу.
/fx4/dac/channel _ x/reset_button КНОПКА Скидає команду voltage до 0.

4.3 Цифрові входи та виходи
Ці вводи-виводи стосуються керування різними цифровими входами та виходами загального призначення FX4.

Шлях IO  опис
/fx4/fr1 READLY BOOL Оптоволоконний приймач 1.
/fx4/ft1 Оптоволоконний передавач BOOL 1.
/fx4/fr2 READLY BOOL Оптоволоконний приймач 2.
/fx4/ft2 Оптоволоконний передавач BOOL 2.
/fx4/fr3 READLY BOOL Оптоволоконний приймач 3.
/fx4/ft3 Оптоволоконний передавач BOOL 3.
/fx4/digital_expansion/d1 Двонаправлене цифрове розширення IO BOOL D1.
/fx4/digital_expansion/d2 Двонаправлене цифрове розширення IO BOOL D2.
/fx4/digital_expansion/d3 Двонаправлене цифрове розширення IO BOOL D3.
/fx4/digital_expansion/d4 Двонаправлене цифрове розширення IO BOOL D4.

4.3.1 Конфігурація цифрового вводу-виводу
Усі цифрові пристрої мають дочірній IO для конфігурації їхньої поведінки, включаючи робочий режим, який контролює роботу цього цифрового пристрою. Кожна цифра матиме різний набір доступних опцій. Перегляньте графічний інтерфейс користувача, щоб дізнатися, які параметри доступні для того чи іншого вводу-виводу.

Дочірній шлях вводу-виводу опис
…/режим STRING Режим роботи для цифрового.
Опції: «вхід», «вихід», «шім», «таймер», «кодер», «захоплення», «uart_rx», «uart_tx», «can_rx», «can_tx», «pru_input» або «pru_output»
…/process_signal STRING Ім'я сигналу керування процесом, якщо воно є.
…/pull_mode STRING Режим висунення вгору/вниз для цифрового входу.
Опції: «вгору», «вниз» або «вимкнути»

4.4 Релейне керування
Обидва реле незалежно керуються та мають однаковий тип інтерфейсу. Замініть relay_x на relay_a або relay_b відповідно.

Шлях IO  опис
/fx4/relay _ x/permit / user _ команда BOOL Видає команду на відкриття або закриття реле. Справжня команда намагатиметься замкнути реле, якщо надано блокування, а помилкова команда завжди розмикатиме реле.
/fx4/relay _ x/state READONLY STRING Поточний стан реле.
Заблоковані реле розімкнуті, але не можуть бути замкнуті через блокування.
Стани: «відкрито», «закрито» або «заблоковано»
/fx4/relay _ x/automatically _ закрити BOOL Якщо встановлено значення true, реле автоматично замикатиметься, коли буде надано блокування. За замовчуванням false.
/fx4/relay _ x/ кількість циклів _ READONLY NUMBER Кількість циклів реле з моменту останнього скидання. Корисно для відстеження терміну служби реле.

4.5 Висока гучністьtage Модуль
Перегляньте 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для вимірювань у реальному часі.

PYRAMID FX4 Programmer - реєстратор даних за допомогою HTTPПрограматор PYRAMID FX4 - реєстратор даних за допомогою HTTP 2Програматор PYRAMID FX4 - реєстратор даних за допомогою HTTP 3Програматор PYRAMID FX4 - реєстратор даних за допомогою HTTP 4

5.2 Простий графічний інтерфейс Python
Другий ексample використовує інструмент GUI Tkinter, створений для Python, для створення відображення виміряних струмів. Цей інтерфейс дозволяє візуалізувати поточні показання в зручному графічному форматі. Розмір дисплея можна змінити, щоб зробити його достатньо великим, щоб читати з іншого боку кімнати, що робить його ідеальним для сценаріїв, коли потрібен моніторинг у реальному часі у великих просторах. Tkinter забезпечує простий спосіб створення інтерактивних інтерфейсів, і, інтегрувавши його з FX4, ви можете швидко створити візуальне відображення виміряних струмів, яке можна налаштувати відповідно до ваших конкретних потреб.

Програматор PYRAMID FX4 - простий графічний інтерфейс PythonPYRAMID FX4 Programmer - простий графічний інтерфейс Python 2PYRAMID FX4 Programmer - простий графічний інтерфейс Python 3PYRAMID FX4 Programmer - простий графічний інтерфейс Python 4PYRAMID FX4 Programmer - простий графічний інтерфейс Python 5PYRAMID FX4 Programmer - простий графічний інтерфейс Python 6PYRAMID FX4 Programmer - простий графічний інтерфейс Python 7

5.3 Простий WebРозетки Example
Цей колишнійample демонструє WebІнтерфейс сокетів, який є кращим методом для читання даних із FX4, коли потрібна максимальна пропускна здатність. WebСокети забезпечують повнодуплексний канал зв’язку в режимі реального часу, що забезпечує швидшу та ефективнішу передачу даних порівняно з іншими методами.
Колишнійample читає серію samples, повідомляє середній час за сample та максимальну затримку, а також зберігає дані у файлі CSV file для подальшого аналізу. Це налаштування забезпечує ефективний моніторинг у реальному часі та просте зберігання даних для подальшої обробки.
Конкретна продуктивність, якої можна досягти WebРозетки залежать від надійності вашого інтерфейсу Ethernet і відносного пріоритету вашої програми. Для досягнення оптимальних результатів переконайтеся, що ваша мережа стабільна та що передавання даних FX4 має пріоритет, якщо це необхідно.

Програматор PYRAMID FX4 - просто WebРозетки ExampleПрограматор PYRAMID FX4 - просто WebРозетки Example 2Програматор PYRAMID FX4 - просто WebРозетки Example 3

Версія: v3
FX4 Python Exampліс: 21

Документи / Ресурси

Програматор PYRAMID FX4 [pdfІнструкція з експлуатації
Програматор FX4, FX4, програматор

Список літератури

Залиште коментар

Ваша електронна адреса не буде опублікована. Обов'язкові поля позначені *