לוגו PYRAMIDwww.pyramid.tech
FX4
מדריך מתכנת FX4
מזהה מסמך: 2711715845
גרסה: v3מתכנת PYRAMID FX4

מתכנת FX4

מזהה מסמך: 2711715845
מדריך למתכנת FX4 – FX4

מתכנת PYRAMID FX4 - סמל מזהה מסמך: 2711650310

מְחַבֵּר מתיו ניקולס
בַּעַל מוביל פרויקט
מַטָרָה הסבר את מושגי התכנות הדרושים לשימוש ב-API ולהרחיב את המוצר באמצעות יישומים חיצוניים.
תְחוּם מושגי תכנות הקשורים ל-FX4.
קהל מיועד מפתחי תוכנה המעוניינים להשתמש במוצר.
תַהֲלִיך https://pyramidtc.atlassian.net/wiki/pages/createpage.action?
spaceKey=PQ&title=תהליך יצירה%20ידני%20סטנדרטי
הַדְרָכָה לא ישים

בקרת גרסה

גִרְסָה תֵאוּר  נשמר על ידי  נשמר ב  סטָטוּס
v3 הוסיפו מעבר פשוטview ועוד אקסamples. מתיו ניקולס 6 במרץ 2025 10:29 מְאוּשָׁר
v2 נוספו ממשקי IO דיגיטליים והפניות חזרה ל-IGX. מתיו ניקולס 3 במאי 2024 7:39 מְאוּשָׁר
v1 שחרור ראשוני, עדיין בעבודה. מתיו ניקולס 21 בפברואר 2024 11:25 מְאוּשָׁר

מתכנת PYRAMID FX4 - סמל 1 בקרת מסמכים לא Reviewed
גרסת המסמך הנוכחית: v.1
לא מחדשviewהוקצו.

1.1 חתימות
עבור גרסת המסמך העדכנית ביותר
יום שישי, 7 במרץ, 2025, 10:33 UTC
מתיו ניקולס חתם; משמעות: Review

הפניות

מִסְמָך מזהה מסמך  מְחַבֵּר  גִרְסָה
IGX - מדריך למתכנת 2439249921 מתיו ניקולס 1

תכנות FX4 נגמרview

מעבד ה-FX4 פועל על סביבה בשם IGX, הבנויה על מערכת ההפעלה QNX בזמן אמת בעלת אמינות גבוהה של בלקברי (QNX WebאֲתַרIGX מספקת ממשק תכנות יישומים (API) גמיש ומקיף עבור משתמשים המעוניינים לכתוב תוכנת מחשב מארח משלהם.
סביבת IGX משותפת בין מוצרי פירמידה אחרים, מה שמאפשר להעביר בקלות פתרונות תוכנה שפותחו עבור מוצר אחד לאחר.
מתכנתים יכולים לעיין בתיעוד המלא עבור IGX הזמין בפירמידה webאתר בכתובת: IGX | מסגרת מערכת בקרה מודולרית מודרנית עבור Webיישומים מופעלים²

סעיף זה מספק מבוא לבדיקת שתיים משיטות ה-API: HTTP באמצעות פורמט JSON ו-EPICS. לשם פשטות, Python (פִּיתוֹן Webאֲתַר³) משמש כדוגמהampשפת המחשב המארחת, הנגישה וקלה לשימוש עבור מתכנתים לא מקצועיים.

3.1 שימוש ב-Python ו-HTTP
בתור אקסיתample, נניח שאתה רוצה לקרוא את סכום הזרמים הנמדדים עם Python. אתה צריך את URL עבור ה-IO המסוים הזה. ה-FX4 web GUI מספק דרך קלה למצוא זאת: פשוט לחץ לחיצה ימנית בשדה ובחר 'העתק HTTP URLכדי להעתיק את המחרוזת ללוח.

מתכנת PYRAMID FX4 - שימוש בפייתון ו-HTTP

כעת אתה יכול להשתמש ב-Python כדי לבדוק קישוריות לתוכנת משתמש באמצעות HTTP ו-JSON. ייתכן שיהיה עליך לייבא את הבקשות ואת ספריות ה-json כדי לטפל בבקשות ה-HTTP ובניתוח הנתונים.

מתכנת PYRAMID FX4 - בקשות HTTP וניתוח נתונים1 פשוט Python HTTP Example

3.2 שימוש ב-EPICS
תהליך חיבור ה-FX4 דרך EPICS (פיסיקה ניסויית ומערכת בקרה תעשייתית) דומה. EPICS היא קבוצה של כלי תוכנה ויישומים המשמשים לפיתוח ויישום מערכות בקרה מבוזרות, בשימוש נרחב במתקנים מדעיים.

  1. https://blackberry.qnx.com/en
  2. https://pyramid.tech/products/igx
  3. https://www.python.org/
  1. קבל את שם משתנה התהליך (PV) של EPICS עבור ה-IO הרצוי.
  2. ייבא את ספריית EPICS וקרא את הערך.

מתכנת PYRAMID FX4 - משתנה תהליך EPICS2 קבל את שם PV EPICSמתכנת PYRAMID FX4 - Simple Python EPICS Example3 EPICS פשוטים של Python Example

בנוסף, Pyramid יצרה כלי עזר (אפיקס קונקט⁴) המאפשר לך לנטר משתני תהליך של EPICS בזמן אמת. כלי זה מועיל לאישור האם שם ה-PV של EPICS נכון וה-FX4 משרת את ה-PV בצורה נכונה ברשת שלך.

מתכנת PYRAMID FX4 - EPICS Connect4 PTC EPICS Connect

ממשק 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 NUMBER סקלר פשוט ללא יחידות המוחל על הערוץ, 1 כברירת מחדל.
/fx4/adc/channel_x/zero_offset NUMBER קיזוז זרם ב-nA עבור הערוץ.

ה-IO הבא אינם עצמאיים בערוץ והם מוחלים על כל הערוצים בו זמנית.

נתיב IO  תֵאוּר
/fx4/channel_sum מספר לקריאה בלבד סכום ערוצי הקלט הנוכחיים.
/fx4/adc_unit STRING מגדיר את יחידות המשתמש הנוכחיות עבור כל ערוץ וסכום.
אפשרויות: "pa", "na", "ua", "ma", "a"
/fx4/range STRING מגדיר את טווח הקלט הנוכחי. עיין בממשק המשתמש הגרפי לקבלת מידע על האופן שבו כל קוד טווח תואם למגבלות הזרם המרביות של הקלט ול-BW.
אפשרויות: "0", "1", "2", "3", "4", "5", "6", "7"
/fx4/adc/sample_frequency NUMBER התדר בהרץ שampממוצע הנתונים יהיה ל. זה שולט בקצב האות לרעש וקצב הנתונים עבור כל הערוצים.
/fx4/adc/conversion_frequency NUMBER התדר בהרץ שבו ה-ADC ימיר ערכים אנלוגיים לדיגיטליים. כברירת מחדל, זהו 100kHz, ותצטרך לשנות ערך זה רק לעתים רחוקות.
/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 פקודה מספר כרךtagפלט e. ניתן לכתוב ערך זה רק כאשר מצב הפלט מוגדר ידני.
/fx4/dac/channel_x/readback מספר לקריאה בלבד נפח נמדדtagפלט e.
זה מועיל ביותר בעת שימוש במצב פלט ביטוי.
/fx4/dac/channel_x/output_mode STRING מגדיר את מצב הפלט עבור הערוץ.
אפשרויות: "ידני", "ביטוי", "בקרת_תהליך"
/fx4/dac/channel _ x/slew_control_enable BOOL מאפשר או מבטל את הגבלת קצב הסיבוב.
/fx4/dac/channel_x/slew_rate NUMBER קצב שינוי (Slew) ב-V/s עבור הערוץ.
/fx4/dac/channel_x/upper_limit NUMBER נפח הפקודה המרבי המותרtage עבור הערוץ. חל על כל מצבי הפעולה.
/fx4/dac/channel _ x/lower_limit NUMBER נפח הפקודה המינימלי המותרtage עבור הערוץ. חל על כל מצבי הפעולה.
/fx4/dac/channel _ x/ פלט _ ביטוי STRING מגדיר את מחרוזת הביטוי שבה משתמש הערוץ כאשר הוא נמצא במצב פלט ביטוי.
/fx4/dac/channel _ x/reset_button כפתור מאפס את עוצמת הפקודהtagה עד 0.

4.3 כניסות ויציאות דיגיטליות
IO אלה מתייחסים לשליטה בכניסות ויציאות דיגיטליות למטרות כלליות שונות שנמצאות ב-FX4.

נתיב IO  תֵאוּר
/fx4/fr1 מקלט סיבים אופטיים BOOL לקריאה בלבד 1.
/fx4/ft1 משדר סיבים BOOL 1.
/fx4/fr2 מקלט סיבים אופטיים BOOL לקריאה בלבד 2.
/fx4/ft2 משדר סיבים BOOL 2.
/fx4/fr3 מקלט סיבים אופטיים 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 דיגיטלית
לכל הדיגיטליים יש IO ילד לקביעת ההתנהגות שלהם, כולל מצב הפעלה השולט כיצד הדיגיטל הזה יפעל. לכל דיגיטל תהיה קבוצה שונה של אפשרויות זמינות. עיין ב-GUI לפרטים על האפשרויות הזמינות עבור איזה IO.

נתיב IO של ילד תֵאוּר
…/מצב מצב פעולה STRING עבור הדיגיטלי.
אפשרויות: "קלט", "פלט", "PWM", "טיימר", "מקודד", "לכידה", "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 / פקודת משתמש BOOL מצווה על פתיחה או סגירה של הממסר. פקודת אמת תנסה לסגור את הממסר אם נעילת האינטרולים מתאפשרת, ופקודת שקר תמיד תפתח את הממסר.
/fx4/ממסר _ x/מצב מחרוזת לקריאה בלבד המצב הנוכחי של הממסר.
ממסרים נעולים פתוחים אך לא ניתן לסגור אותם עקב אינטרלוק.
מדינות: "פתוח", "סגור" או "נעול"
/fx4/relay_x/נסגר אוטומטית BOOL כאשר מוגדר כ-true, הממסר ייסגר אוטומטית כאשר יורשו נעילת האינטרולים. False כברירת מחדל.
/fx4/relay_x/ ספירת מחזורים מספר לקריאה בלבד מספר מחזורי הממסר מאז האיפוס האחרון. שימושי למעקב אחר חיי הממסר.

4.5 כרך גבוהtagמודול
עיין במדריך IGX – מתכנת לפרטים על FX4 high voltagממשק אלקטרוני. נתיב האב של הרכיב הוא /fx4/high_votlage .

4.6 בקר מינון
עיין במדריך IGX – מתכנת לפרטים על ממשק בקר המינון FX4. נתיב האב של הרכיב הוא /fx4/dose_controller .

FX4 Python Examples

5.1 לוגר נתונים באמצעות HTTP
האקסית הזוample מדגים כיצד ללכוד מספר קריאות ולשמור אותן ב-CSV file. על ידי בחירת השהיה ארוכה בין הקריאה, תוכל לבצע רישום נתונים לטווח ארוך גם אם ה-FX4 sampשיעור ling מוגדר גבוה יותר. זה מאפשר לך לאסוף ולאחסן מדידות באופן רציף על פני תקופות ממושכות מבלי להכריע את המערכת, מה שמבטיח שהנתונים ייקלטו במרווחים המתאימים לניתוח שלך. ההשהיה בין הקריאה עוזרת לווסת את קצב רישום הנתונים, ומאפשרת אחסון יעיל והפחתת הסיכון להחמצת נקודות נתונים, תוך כדי הנאה ממהירות גבוהה.ampling למדידות בזמן אמת.

מתכנת PYRAMID FX4 - לוגר נתונים באמצעות HTTPמתכנת PYRAMID FX4 - לוגר נתונים באמצעות HTTP 2מתכנת PYRAMID FX4 - לוגר נתונים באמצעות HTTP 3מתכנת PYRAMID FX4 - לוגר נתונים באמצעות HTTP 4

5.2 ממשק משתמש פשוט של Python
האקס השניample משתמש בכלי Tkinter GUI, אשר בנוי עבור Python, כדי ליצור תצוגה של הזרמים הנמדדים. ממשק זה מאפשר לך לדמיין את הקריאות הנוכחיות בפורמט גרפי ידידותי למשתמש. ניתן לשנות את גודל התצוגה כדי להפוך אותה לגדולה מספיק לקריאה מרחבי החדר, מה שהופך אותה לאידיאלית עבור תרחישים שבהם יש צורך בניטור בזמן אמת בחללים גדולים יותר. Tkinter מספק דרך קלה ליצור ממשקים אינטראקטיביים, ועל ידי שילובו עם ה-FX4, אתה יכול לבנות במהירות תצוגה ויזואלית של הזרמים הנמדדים שניתן להתאים אישית לצרכים הספציפיים שלך.

מתכנת PYRAMID FX4 - ממשק משתמש גרפי פשוט של פייתוןמתכנת PYRAMID FX4 - ממשק משתמש גרפי פשוט של Python 2מתכנת PYRAMID FX4 - ממשק משתמש גרפי פשוט של Python 3מתכנת PYRAMID FX4 - ממשק משתמש גרפי פשוט של Python 4מתכנת PYRAMID FX4 - ממשק משתמש גרפי פשוט של Python 5מתכנת PYRAMID FX4 - ממשק משתמש גרפי פשוט של Python 6מתכנת PYRAMID FX4 - ממשק משתמש גרפי פשוט של Python 7

5.3 פשוט Webשקעים Example
האקסית הזוample מדגים את Webממשק Sockets, שהיא השיטה המועדפת לקריאת נתונים מה-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, מתכנת

הפניות

השאר תגובה

כתובת האימייל שלך לא תפורסם. שדות חובה מסומנים *