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=मानक%२०म्यानुअल%२०सिर्जना%२०प्रक्रिया |
तालिम | लागु हुँदैन |
संस्करण नियन्त्रण
संस्करण | विवरण | द्वारा सुरक्षित गरिएको | बचत गरिएको मिति | स्थिति |
v3 | एउटा साधारण ओभर थपियोview र थप पूर्वampलेस। | म्याथ्यू निकोल्स | मार्च ६, २०२५ १०:२९ बजे | स्वीकृत |
v2 | IGX मा डिजिटल IO इन्टरफेस र सन्दर्भहरू थपियो। | म्याथ्यू निकोल्स | मे ३, २०२४ साँझ ७:३९ बजे | स्वीकृत |
v1 | प्रारम्भिक रिलीज, अझै काम भइरहेको छ। | म्याथ्यू निकोल्स | फेब्रुअरी २१, २०२४ राति ११:२५ बजे | स्वीकृत |
कागजात नियन्त्रण हैन रेviewed
हालको कागजात संस्करण: v.1
पुन: छैनviewers तोकिएको छ।
६.४ हस्ताक्षर
सबैभन्दा भर्खरको कागजात संस्करणको लागि
शुक्रबार, मार्च ७, २०२५, राति १०:३३ बजे UTC
म्याथ्यू निकोल्सले हस्ताक्षर गरे; अर्थ: पुन:view
सन्दर्भहरू
कागजात | कागजात आईडी | लेखक | संस्करण |
IGX - प्रोग्रामर म्यानुअल | 2439249921 | म्याथ्यू निकोल्स | 1 |
FX4 प्रोग्रामिङ समाप्तview
FX4 प्रोसेसर IGX भनिने वातावरणमा चल्छ, जुन ब्ल्याकबेरीको QNX उच्च-विश्वसनीयता रियलटाइम अपरेटिङ सिस्टममा निर्मित छ (QNX Webसाइट¹)। IGX ले आफ्नै होस्ट कम्प्युटर सफ्टवेयर लेख्न चाहने प्रयोगकर्ताहरूका लागि लचिलो र व्यापक एप्लिकेसन प्रोग्रामिङ इन्टरफेस (API) प्रदान गर्दछ।
IGX वातावरण अन्य पिरामिड उत्पादनहरूमा साझा गरिएको छ, जसले गर्दा एउटा उत्पादनको लागि विकास गरिएका सफ्टवेयर समाधानहरू सजिलैसँग अर्को उत्पादनमा स्थानान्तरण गर्न सकिन्छ।
प्रोग्रामरहरूले पिरामिडमा उपलब्ध IGX को लागि पूर्ण कागजातहरू हेर्न सक्छन्। webसाइट मा: IGX | आधुनिक मोड्युलर नियन्त्रण प्रणाली फ्रेमवर्कको लागि Web-सक्षम अनुप्रयोगहरू²
यस खण्डले दुई API विधिहरू परीक्षण गर्ने परिचय प्रदान गर्दछ: JSON ढाँचा र EPICS प्रयोग गरेर HTTP। सरलताको लागि, पाइथन (पाइथन Webसाइट³) लाई पूर्वको रूपमा प्रयोग गरिन्छample होस्ट कम्प्युटर भाषा, जुन गैर-पेशेवर प्रोग्रामरहरूको लागि पहुँचयोग्य र प्रयोग गर्न सजिलो छ।
३.१ पाइथन र HTTP प्रयोग गर्दै
पूर्वको रूपमाampले, मानौं तपाईं पाइथनसँग मापन गरिएका धाराहरूको योगफल पढ्न चाहनुहुन्छ। तपाईंलाई आवश्यक छ URL त्यो विशेष IO को लागि। FX4 web GUI ले यसलाई फेला पार्न सजिलो तरिका प्रदान गर्दछ: केवल फिल्डमा दायाँ क्लिक गर्नुहोस् र 'HTTP प्रतिलिपि गर्नुहोस्' चयन गर्नुहोस्। URL'स्ट्रिङलाई क्लिपबोर्डमा प्रतिलिपि गर्न।
अब तपाईंले HTTP र JSON मार्फत प्रयोगकर्ता सफ्टवेयरमा जडान परीक्षण गर्न पाइथन प्रयोग गर्न सक्नुहुन्छ। HTTP अनुरोधहरू र डेटा पार्सिङ ह्यान्डल गर्न तपाईंले अनुरोधहरू र json पुस्तकालयहरू आयात गर्नुपर्ने हुन सक्छ।
१ साधारण पाइथन HTTP पूर्वample
३.२ EPICS प्रयोग गर्दै
EPICS (प्रायोगिक भौतिकशास्त्र र औद्योगिक नियन्त्रण प्रणाली) मार्फत FX4 जडान गर्ने प्रक्रिया समान छ। EPICS वितरित नियन्त्रण प्रणालीहरू विकास र कार्यान्वयन गर्न प्रयोग गरिने सफ्टवेयर उपकरणहरू र अनुप्रयोगहरूको सेट हो, जुन वैज्ञानिक सुविधाहरूमा व्यापक रूपमा प्रयोग गरिन्छ।
- इच्छित IO को लागि EPICS प्रक्रिया चर (PV) नाम प्राप्त गर्नुहोस्।
- EPICS लाइब्रेरी आयात गर्नुहोस् र मान पढ्नुहोस्।
२ EPICS PV नाम प्राप्त गर्नुहोस्
३ साधारण पाइथन EPICS पूर्वample
थप रूपमा, पिरामिडले एउटा उपयोगिता सिर्जना गर्यो (EPICS जडान⁴) जसले तपाईंलाई वास्तविक समयमा EPICS प्रक्रिया चरहरू निगरानी गर्न अनुमति दिन्छ। यो उपकरण EPICS PV नाम सही छ कि छैन र FX4 ले तपाईंको नेटवर्कमा PV लाई सही रूपमा सेवा गरिरहेको छ कि छैन भनेर पुष्टि गर्न उपयोगी छ।
४ PTC EPICS जडान
FX4 प्रोग्रामिङ API
यस म्यानुअलमा वर्णन गरिएका अवधारणाहरू र विधिहरू IGX - प्रोग्रामर म्यानुअलमा स्थापित अवधारणाहरूमा निर्माण हुन्छन्। कृपया स्पष्टीकरण र पूर्वका लागि त्यो कागजात हेर्नुहोस्ampआधारभूत IGX प्रोग्रामिङ र इन्टरफेसहरूले कसरी काम गर्छ भन्ने बारे। यो म्यानुअलले FX4 को लागि अद्वितीय यन्त्र-विशिष्ट IO र कार्यक्षमता मात्र कभर गर्नेछ।
4.1 एनालग इनपुट IO
यी IO FX4 को एनालग वर्तमान इनपुटहरूमा डेटा कन्फिगर र सङ्कलनसँग सम्बन्धित छन्। च्यानल इनपुटहरूको एकाइहरू प्रयोगकर्ता कन्फिगरेबल सेटिङमा आधारित हुन्छन् जसलाई "Sample एकाइहरू", मान्य विकल्पहरूमा PA, nA, uA, mA, र A समावेश छन्।
सबै 4 च्यानलहरूले एउटै इन्टरफेस IO प्रयोग गर्दछ र स्वतन्त्र रूपमा नियन्त्रण गरिन्छ। channel_x लाई क्रमशः channel_1 , channel_2 , channel_3 , वा channel_4 ले बदल्नुहोस्।
IO पथ | विवरण |
/fx4/adc/channel_x | READONLY NUMBER मापन गरिएको वर्तमान इनपुट। |
/fx4/adc/channel_x/scalar | NUMBER च्यानलमा साधारण युनिटलेस स्केलर लागू गरियो, पूर्वनिर्धारित रूपमा १। |
/fx4/adc/channel_x/zero_offset | च्यानलको लागि nA मा NUMBER हालको अफसेट। |
निम्न IO च्यानल स्वतन्त्र छैनन् र एकै साथ सबै च्यानलहरूमा लागू हुन्छन्।
IO पथ | विवरण |
/fx4/channel_sum | READONLY NUMBER हालको इनपुट च्यानलहरूको योगफल। |
/fx4/adc_unit | STRING ले प्रत्येक च्यानल र योगफलको लागि हालको प्रयोगकर्ता एकाइहरू सेट गर्छ। विकल्प: “पा”, “ना”, “उआ”, “मा”, “ए” |
/fx4/range | STRING ले हालको इनपुट दायरा सेट गर्छ। प्रत्येक दायरा कोडले अधिकतम हालको इनपुट सीमा र BW सँग कसरी मेल खान्छ भनेर GUI हेर्नुहोस्। विकल्पहरू: “०”, “१”, “२”, “३”, “४”, “५”, “६”, “७” |
/fx4/adc/sample_frequency | NUMBER हर्ट्जमा फ्रिक्वेन्सी जुन s हुन्छampले डाटा औसत गरिनेछ। यसले सबै च्यानलहरूको लागि सिग्नल-टु-शोर र डेटा दर नियन्त्रण गर्दछ। |
/fx4/adc/रूपान्तरण_आवृत्ति | NUMBER ADC ले एनालगलाई डिजिटल मानमा रूपान्तरण गर्ने Hz मा फ्रिक्वेन्सी। पूर्वनिर्धारित रूपमा, यो १००kHz हो, र तपाईंले यो मान विरलै परिवर्तन गर्न आवश्यक पर्दछ। |
/fx4/adc/offset_correction | READONLY NUMBER सबै च्यानलका हालका अफसेटहरूको योगफल। |
4.2 एनालग आउटपुट IO
यी IO अगाडि प्यानलमा एनालग इनपुटहरू अन्तर्गत फेला परेको FX4 को सामान्य-उद्देश्य एनालग आउटपुटहरूको कन्फिगरेसनसँग सम्बन्धित छ। सबै 4 च्यानलहरूले एउटै इन्टरफेस IO प्रयोग गर्दछ र स्वतन्त्र रूपमा नियन्त्रण गरिन्छ। channel_x लाई क्रमशः channel_1 , channel_2 , channel_3 , वा channel_4 ले बदल्नुहोस्।
IO पथ | विवरण |
/fx4/dac /च्यानल_एक्स | NUMBER आदेश भोल्युमtage आउटपुट। यो मान मात्र लेख्न सकिन्छ जब आउटपुट मोड म्यानुअल मा सेट गरिन्छ। |
/fx4/dac/channel_x/readback | READONLY NUMBER मापन गरिएको भोल्युमtagई उत्पादन। अभिव्यक्ति आउटपुट मोड प्रयोग गर्दा यो सबैभन्दा उपयोगी हुन्छ। |
/fx4/dac/channel_x/output_mode | STRING ले च्यानलको लागि आउटपुट मोड सेट गर्छ। विकल्पहरू: “म्यानुअल”, “अभिव्यक्ति”, “प्रक्रिया_नियन्त्रण” |
/fx4/dac/च्यानल _ x/slew_control_enable | BOOL ले स्ल्यु रेट लिमिटिङलाई सक्षम वा असक्षम पार्छ। |
/fx4/dac/च्यानल_ x/slew_rate | च्यानलको लागि NUMBER स्ल्यु दर V/s मा। |
/fx4/dac/channel_x/upper_limit | NUMBER अधिकतम अनुमति दिइएको आदेश भोल्युमtage च्यानलको लागि। सबै सञ्चालन मोडहरूमा लागू हुन्छ। |
/fx4/dac/च्यानल _ x/कम_सीमा | NUMBER न्यूनतम अनुमति दिइएको आदेश भोल्युमtage च्यानलको लागि। सबै सञ्चालन मोडहरूमा लागू हुन्छ। |
/fx4/dac/च्यानल _ x/ आउटपुट _ अभिव्यक्ति | STRING च्यानल अभिव्यक्ति आउटपुट मोडमा हुँदा प्रयोग गरिएको अभिव्यक्ति स्ट्रिङ सेट गर्छ। |
/fx4/dac/च्यानल _ x/रिसेट_बटन | बटनले भोल्युम आदेश रिसेट गर्दछtage ० देखि। |
4.3 डिजिटल इनपुट र आउटपुटहरू
यी IO हरू FX4 मा पाइने विभिन्न सामान्य उद्देश्यका डिजिटल इनपुटहरू र आउटपुटहरू नियन्त्रण गर्न सम्बन्धित छन्।
IO पथ | विवरण |
/fx4/fr1 | READONLY BOOL फाइबर रिसीभर १। |
/fx४/ft१ | BOOL फाइबर ट्रान्समिटर १. |
/fx4/fr2 | READONLY BOOL फाइबर रिसीभर १। |
/fx४/ft१ | BOOL फाइबर ट्रान्समिटर १. |
/fx4/fr3 | READONLY BOOL फाइबर रिसीभर १। |
/fx४/ft१ | BOOL फाइबर ट्रान्समिटर १. |
/fx4/डिजिटल_विस्तार/d1 | BOOL D1 द्विदिशात्मक डिजिटल विस्तार IO। |
/fx4/डिजिटल_विस्तार/d2 | BOOL D2 द्विदिशात्मक डिजिटल विस्तार IO। |
/fx4/डिजिटल_विस्तार/d3 | BOOL D3 द्विदिशात्मक डिजिटल विस्तार IO। |
/fx4/डिजिटल_विस्तार/d4 | BOOL D4 द्विदिशात्मक डिजिटल विस्तार IO। |
४.३.१ डिजिटल IO कन्फिगरेसन
सबै डिजिटलहरूमा आफ्नो व्यवहार कन्फिगर गर्नको लागि बाल IO हुन्छ जसमा एउटा अपरेटिङ मोड समावेश हुन्छ जसले त्यो डिजिटल कसरी सञ्चालन हुन्छ भनेर नियन्त्रण गर्छ। प्रत्येक डिजिटलमा उपलब्ध विकल्पहरूको फरक सेट हुनेछ। कुन IO को लागि कुन विकल्पहरू उपलब्ध छन् भन्ने बारे विवरणहरूको लागि GUI हेर्नुहोस्।
बाल IO पथ | विवरण |
…/मोड | STRING डिजिटलको लागि सञ्चालन मोड। विकल्पहरू: “इनपुट“, “आउटपुट”, “pwm”, “टाइमर”, “एनकोडर”, “क्याप्चर”, “uart_rx”, “uart_tx”, “can_rx”, “can_tx”, “pru_input”, वा “pru_output” |
…/प्रक्रिया_सिग्नल | STRING प्रक्रिया नियन्त्रण संकेत नाम, यदि कुनै छ भने। |
…/पुल_मोड | STRING डिजिटल इनपुटको लागि माथि/तल मोड तान्नुहोस्। विकल्पहरू: “माथि”, “तल”, वा “असक्षम” |
4.4 रिले नियन्त्रण
दुबै रिलेहरू स्वतन्त्र रूपमा नियन्त्रित छन् र एउटै प्रकारको इन्टरफेस साझा गर्छन्। relay_x लाई क्रमशः relay_a वा relay_b ले बदल्नुहोस्।
IO पथ | विवरण |
/fx4/रिले _ x/अनुमति / प्रयोगकर्ता _ आदेश | BOOL ले रिले खोल्ने वा बन्द गर्ने आदेश दिन्छ। यदि इन्टरलकहरू प्रदान गरिएमा true आदेशले रिले बन्द गर्ने प्रयास गर्नेछ, र false आदेशले सधैं रिले खोल्नेछ। |
/fx4/रिले _ x/अवस्था | READONLY STRING रिलेको हालको अवस्था। लक गरिएका रिलेहरू खुला छन् तर इन्टरलकको कारणले बन्द गर्न सकिँदैन। राज्यहरू: "खोलिएको", "बन्द", वा "लक" |
/fx4/रिले _ x/स्वचालित रूपमा _ बन्द गर्नुहोस् | BOOL लाई true मा सेट गर्दा, इन्टरलकहरू प्रदान गरिएपछि रिले स्वतः बन्द हुनेछ। पूर्वनिर्धारित रूपमा गलत। |
/fx4/रिले _ x/ चक्र _ गणना | READONLY NUMBER अन्तिम रिसेट पछि रिले चक्रहरूको संख्या। रिले जीवनकाल ट्र्याक गर्न उपयोगी। |
५.२ उच्च खण्डtage मोड्युल
FX4 हाई भोल्युमको विवरणको लागि IGX – प्रोग्रामर म्यानुअल हेर्नुहोस्।tagई इन्टरफेस। घटक अभिभावक पथ /fx4/high_votlage हो।
4.6 खुराक नियन्त्रक
FX4 खुराक नियन्त्रक इन्टरफेसको विवरणको लागि IGX – प्रोग्रामर म्यानुअल हेर्नुहोस्। कम्पोनेन्ट अभिभावक पथ /fx4/dose_controller हो।
FX4 पाइथन एक्सampलेस
५.१ HTTP प्रयोग गरेर डेटा लगर
यो पूर्वampले कसरी धेरै पठनहरू खिच्ने र तिनीहरूलाई CSV मा बचत गर्ने भनेर प्रदर्शन गर्दछ। file। रिडिङहरू बीच लामो ढिलाइ छनौट गरेर, तपाईंले FX4 s भए पनि दीर्घकालीन डेटा लगिङ गर्न सक्नुहुन्छ।ampलिंग दर उच्च सेट गरिएको छ। यसले तपाईंलाई प्रणालीलाई ओझेलमा नपारी विस्तारित अवधिहरूमा मापनहरू निरन्तर सङ्कलन र भण्डारण गर्न अनुमति दिन्छ, तपाईंको विश्लेषणको लागि उपयुक्त अन्तरालहरूमा डेटा क्याप्चर गरिएको छ भनी सुनिश्चित गर्दै। पठनहरू बीचको ढिलाइले डेटा लग गरिएको गतिलाई नियमन गर्न मद्दत गर्दछ, कुशल भण्डारणको लागि अनुमति दिन्छ र उच्च-गति s बाट लाभ उठाउँदै डेटा बिन्दुहरू हराउने जोखिम कम गर्दछ।ampवास्तविक-समय मापनको लागि लिंग।
५.२ साधारण पाइथन GUI
दोस्रो पूर्वampले मापन गरिएका धाराहरूको प्रदर्शन सिर्जना गर्न पाइथनको लागि निर्मित Tkinter GUI उपकरण प्रयोग गर्दछ। यो इन्टरफेसले तपाईंलाई प्रयोगकर्ता-अनुकूल ग्राफिकल ढाँचामा हालको पठनहरू कल्पना गर्न अनुमति दिन्छ। डिस्प्लेलाई कोठाभरि पढ्न पर्याप्त ठूलो बनाउनको लागि आकार परिवर्तन गर्न सकिन्छ, जसले गर्दा ठूला ठाउँहरूमा वास्तविक-समय निगरानी आवश्यक पर्ने परिदृश्यहरूको लागि यो आदर्श हुन्छ। Tkinter ले अन्तरक्रियात्मक इन्टरफेसहरू सिर्जना गर्ने सजिलो तरिका प्रदान गर्दछ, र यसलाई FX4 सँग एकीकृत गरेर, तपाईंले मापन गरिएका धाराहरूको दृश्य प्रदर्शन द्रुत रूपमा निर्माण गर्न सक्नुहुन्छ जुन तपाईंको विशिष्ट आवश्यकताहरू पूरा गर्न अनुकूलित गर्न सकिन्छ।
३.१.३ सरल Webसकेटहरू पूर्वample
यो पूर्वampले प्रदर्शन गर्दछ Webसकेट इन्टरफेस, जुन अधिकतम ब्यान्डविथ आवश्यक पर्दा FX4 बाट डेटा पढ्नको लागि रुचाइएको विधि हो। Webसकेटहरूले वास्तविक-समय, पूर्ण-डुप्लेक्स सञ्चार च्यानल प्रदान गर्दछ, जसले अन्य विधिहरूको तुलनामा छिटो र अधिक कुशल डेटा स्थानान्तरणको लागि अनुमति दिन्छ।
पूर्वampले s को श्रृंखला पढ्छampलेस, प्रति सेकेन्ड औसत समय रिपोर्ट गर्दछample र अधिकतम विलम्बता, र डेटा CSV मा बचत गर्दछ file पछि विश्लेषणको लागि। यो सेटअपले कुशल वास्तविक-समय अनुगमन र पोस्ट-प्रशोधनको लागि सजिलो डेटा भण्डारणको लागि अनुमति दिन्छ।
विशिष्ट प्रदर्शन जुन प्राप्त गर्न सकिन्छ Webसकेटहरू तपाईंको इथरनेट इन्टरफेसको विश्वसनीयता र तपाईंको अनुप्रयोगको सापेक्षिक प्राथमिकतामा निर्भर गर्दछ। इष्टतम परिणामहरूको लागि, सुनिश्चित गर्नुहोस् कि तपाईंको नेटवर्क स्थिर छ र आवश्यक भएमा FX4 को डेटा प्रसारणलाई प्राथमिकता दिइएको छ।
संस्करण: v3
FX4 पाइथन एक्सampलेस: 21
कागजातहरू / स्रोतहरू
![]() |
PYRAMID FX4 प्रोग्रामर [pdf] निर्देशन पुस्तिका FX4 प्रोग्रामर, FX4, प्रोग्रामर |