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=표준%20수동%20생성%20프로세스 |
훈련 | 적용 불가 |
버전 제어
버전 | 설명 | 저장됨 | 저장됨 | 상태 |
v3 | 간단한 추가view 그리고 더 많은 전amp레. | 매튜 니콜스 | 6년 2025월 10일 오후 29시 XNUMX분 | 승인됨 |
v2 | IGX에 디지털 IO 인터페이스와 참조를 추가했습니다. | 매튜 니콜스 | 3년 2024월 7일 오후 39시 XNUMX분 | 승인됨 |
v1 | 최초 릴리스이며 아직 작업 중입니다. | 매튜 니콜스 | 21년 2024월 11일 오후 25시 XNUMX분 | 승인됨 |
문서 관리 재가 아니다viewed
현재 문서 버전: 버전 1
다시는 안돼view할당되었습니다.
1.1 서명
최신 문서 버전의 경우
7년 2025월 10일 금요일 오후 33시 XNUMX분 UTC
Matthew Nichols가 서명했습니다. 의미: Review
참고문헌
문서 | 문서 ID | 작가 | 버전 |
IGX – 프로그래머 매뉴얼 | 2439249921 | 매튜 니콜스 | 1 |
FX4 프로그래밍 종료view
FX4 프로세서는 BlackBerry의 QNX 고신뢰성 실시간 운영 체제를 기반으로 구축된 IGX라는 환경에서 실행됩니다.뉴스 Web대지¹). IGX는 호스트 컴퓨터 소프트웨어를 직접 작성하고자 하는 사용자에게 유연하고 포괄적인 애플리케이션 프로그래밍 인터페이스(API)를 제공합니다.
IGX 환경은 다른 Pyramid 제품에서 공유되므로 하나의 제품을 위해 개발된 소프트웨어 솔루션을 다른 제품으로 쉽게 전송할 수 있습니다.
프로그래머는 Pyramid에서 제공되는 IGX에 대한 전체 문서를 참조할 수 있습니다. web사이트 위치: IGX | 최신 모듈형 제어 시스템 프레임워크 Web-활성화된 애플리케이션²
이 섹션에서는 JSON 형식을 사용하는 HTTP와 EPICS, 두 가지 API 메서드를 테스트하는 방법을 소개합니다. 편의상 Python(파이썬 Web대지³)는 ex로 사용됩니다.amp비전문 프로그래머라도 쉽게 접근하고 사용할 수 있는 호스트 컴퓨터 언어입니다.
3.1 Python과 HTTP 사용
전직으로서ample, Python으로 측정된 전류의 합계를 읽고 싶다고 가정합니다. URL 해당 특정 IO의 경우 FX4 web GUI는 이를 찾는 쉬운 방법을 제공합니다. 필드를 마우스 오른쪽 버튼으로 클릭하고 'HTTP 복사'를 선택하기만 하면 됩니다. URL'를 입력하면 문자열이 클립보드에 복사됩니다.
이제 Python을 사용하여 HTTP 및 JSON을 통해 사용자 소프트웨어에 대한 연결을 테스트할 수 있습니다. HTTP 요청 및 데이터 파싱을 처리하기 위해 요청 및 JSON 라이브러리를 가져와야 할 수도 있습니다.
1 간단한 파이썬 HTTP Example
3.2 EPICS 사용
EPICS(Experimental Physics and Industrial Control System)를 통해 FX4를 연결하는 프로세스도 비슷합니다. EPICS는 과학 시설에서 널리 사용되는 분산 제어 시스템을 개발하고 구현하는 데 사용되는 소프트웨어 도구와 애플리케이션 세트입니다.
- 원하는 IO에 대한 EPICS 프로세스 변수(PV) 이름을 가져옵니다.
- EPICS 라이브러리를 가져와서 값을 읽습니다.
2 EPICS PV 이름 가져오기
3개의 간단한 파이썬 EPICS Example
또한 Pyramid는 유틸리티(에픽스 커넥트⁴) EPICS 프로세스 변수를 실시간으로 모니터링할 수 있습니다. 이 도구는 EPICS PV 이름이 올바른지, 그리고 FX4가 네트워크에서 PV를 제대로 제공하고 있는지 확인하는 데 유용합니다.
4 PTC EPICS 커넥트
FX4 프로그래밍 API
이 매뉴얼에 설명된 개념과 방법은 IGX – 프로그래머 매뉴얼에 확립된 개념을 기반으로 합니다. 설명과 예는 해당 문서를 참조하십시오.amp기본 IGX 프로그래밍 및 인터페이스 작동 방식에 대한 파일입니다. 이 매뉴얼에서는 FX4 고유의 장치별 IO 및 기능만 다룹니다.
4.1 아날로그 입력 IO
이러한 IO는 FX4의 아날로그 전류 입력에 대한 데이터 구성 및 수집과 관련됩니다. 채널 입력 단위는 "S"라는 사용자 구성 설정을 기반으로 합니다.ample Units”에서 유효한 옵션에는 pA, nA, uA, mA 및 A가 포함됩니다.
4개 채널 모두 동일한 인터페이스 IO를 사용하며 독립적으로 제어됩니다. 채널_x를 각각 채널_1, 채널_2, 채널_3 또는 채널_4로 바꾸세요.
IO 경로 | 설명 |
/fx4/adc/channel_x | 읽기 전용 숫자 측정된 전류 입력. |
/fx4/adc/channel_x/스칼라 | 숫자 채널에 적용되는 간단한 단위 없는 스칼라이며 기본값은 1입니다. |
/fx4/adc/채널_x/제로_오프셋 | NUMBER 채널의 현재 오프셋(nA)입니다. |
다음 IO는 채널 독립적이지 않으며 모든 채널에 동시에 적용됩니다.
IO 경로 | 설명 |
/fx4/channel_sum | 읽기 전용 번호 현재 입력 채널의 합계입니다. |
/fx4/adc_unit | STRING 각 채널과 합계에 대한 현재 사용자 단위를 설정합니다. 옵션: “pa”, “na”, “ua”, “ma”, “a” |
/fx4/범위 | STRING: 현재 입력 범위를 설정합니다. 각 범위 코드가 최대 현재 입력 제한 및 대역폭에 어떻게 대응하는지는 GUI를 참조하세요. 옵션: “0”, “1”, “2”, “3”, “4”, “5”, “6”, “7” |
/fx4/adc/sample_주파수 | 숫자 Hz 단위의 주파수amp파일 데이터의 평균은 다음과 같습니다. 이는 모든 채널의 신호 대 잡음비 및 데이터 속도를 제어합니다. |
/fx4/adc/변환 빈도 | 숫자: ADC가 아날로그 값을 디지털 값으로 변환하는 주파수(Hz)입니다. 기본적으로 100kHz이며, 이 값을 변경할 필요는 거의 없습니다. |
/fx4/adc/offset_correction | 읽기 전용 번호 모든 채널의 현재 오프셋의 합계입니다. |
4.2 아날로그 출력 IO
이러한 IO는 전면 패널의 아날로그 입력 아래에 있는 FX4의 범용 아날로그 출력 구성과 관련이 있습니다. 4개 채널 모두 동일한 인터페이스 IO를 사용하며 독립적으로 제어됩니다. 채널_x를 각각 채널_1, 채널_2, 채널_3 또는 채널_4로 바꾸세요.
IO 경로 | 설명 |
/fx4/dac /채널_x | NUMBER 명령 voltag전자 출력. 이 값은 출력 모드가 수동으로 설정된 경우에만 쓸 수 있습니다. |
/fx4/dac/channel_x/readback | 읽기 전용 번호 측정된 볼륨tag전자 출력. 이 기능은 표현식 출력 모드를 사용할 때 가장 유용합니다. |
/fx4/dac/channel_x/output_mode | STRING 채널의 출력 모드를 설정합니다. 옵션: "manual", "expression", "process_control" |
/fx4/dac/채널 _ x/슬루_컨트롤_활성화 | BOOL 슬루율 제한을 활성화하거나 비활성화합니다. |
/fx4/dac/채널_x/슬루율 | 숫자 채널의 슬루율(V/s)입니다. |
/fx4/dac/channel_x/upper_limit | NUMBER 허용된 최대 명령 볼륨tage는 채널입니다. 모든 작동 모드에 적용됩니다. |
/fx4/dac/채널 _ x/하한 | NUMBER 허용된 최소 명령 볼륨tage는 채널입니다. 모든 작동 모드에 적용됩니다. |
/fx4/dac/채널_x/ 출력_ 표현식 | STRING 채널이 표현식 출력 모드에 있을 때 사용하는 표현식 문자열을 설정합니다. |
/fx4/dac/채널 _ x/리셋_버튼 | 버튼 명령 볼륨을 재설정합니다.tage를 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/디지털_확장/d1 | BOOL D1 양방향 디지털 확장 IO. |
/fx4/디지털_확장/d2 | BOOL D2 양방향 디지털 확장 IO. |
/fx4/디지털_확장/d3 | BOOL D3 양방향 디지털 확장 IO. |
/fx4/디지털_확장/d4 | BOOL D4 양방향 디지털 확장 IO. |
4.3.1 디지털 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/relay _ x/permit / user _ 명령 | BOOL 릴레이를 열거나 닫도록 명령합니다. 참(TRUE) 명령은 인터록이 허용되면 릴레이를 닫으려고 시도하고, 거짓(FALSE) 명령은 항상 릴레이를 엽니다. |
/fx4/릴레이_x/상태 | 읽기 전용 문자열 릴레이의 현재 상태입니다. 잠긴 릴레이는 열려 있지만 연동 장치로 인해 닫을 수 없습니다. 상태: "열림", "닫힘" 또는 "잠김" |
/fx4/relay _ x/자동으로 _ 닫기 | BOOL true로 설정하면 인터록이 허용되면 릴레이가 자동으로 닫힙니다. 기본값은 False입니다. |
/fx4/relay_x/ 사이클_카운트 | 읽기 전용 번호: 마지막 재설정 이후 릴레이 사이클 수. 릴레이 수명을 추적하는 데 유용합니다. |
4.5 하이볼tage 모듈
FX4 고용량에 대한 자세한 내용은 IGX – 프로그래머 매뉴얼을 참조하세요.tag전자 인터페이스. 구성요소 상위 경로는 /fx4/high_votlage 입니다.
4.6 용량 조절기
FX4 복용량 컨트롤러 인터페이스에 대한 자세한 내용은 IGX – Programmer Manual을 참조하세요. 구성 요소 부모 경로는 /fx4/dose_controller 입니다.
FX4 파이썬 Examp레
5.1 HTTP를 사용하는 데이터 로거
이 전ample는 여러 판독값을 캡처하고 CSV로 저장하는 방법을 보여줍니다. file. 판독 사이에 긴 지연 시간을 선택하면 FX4가 꺼져 있어도 장기간 데이터 로깅을 수행할 수 있습니다.ampling rate가 더 높게 설정되어 있습니다. 이를 통해 시스템에 과부하가 걸리지 않고 장기간에 걸쳐 측정값을 지속적으로 수집하고 저장할 수 있어 분석에 적합한 간격으로 데이터가 캡처됩니다. 판독값 간의 지연은 데이터가 기록되는 속도를 조절하는 데 도움이 되어 효율적인 저장이 가능하고 고속 s의 이점을 누리면서도 데이터 포인트가 누락될 위험을 줄입니다.amp실시간 측정을 위해 ling을 사용합니다.
5.2 간단한 파이썬 GUI
두 번째 전ample는 Python을 위해 빌드된 Tkinter GUI 도구를 사용하여 측정된 전류의 디스플레이를 만듭니다. 이 인터페이스를 사용하면 사용자 친화적인 그래픽 형식으로 전류 판독값을 시각화할 수 있습니다. 디스플레이 크기를 조정하여 방 건너편에서도 읽을 수 있을 만큼 크게 만들 수 있으므로 더 넓은 공간에서 실시간 모니터링이 필요한 시나리오에 이상적입니다. Tkinter는 대화형 인터페이스를 만드는 쉬운 방법을 제공하며, FX4와 통합하여 특정 요구 사항에 맞게 사용자 정의할 수 있는 측정된 전류의 시각적 디스플레이를 빠르게 구축할 수 있습니다.
5.3 간단함 Web소켓 Example
이 전ample는 다음을 보여줍니다. Web소켓 인터페이스는 최대 대역폭이 필요할 때 FX4에서 데이터를 읽는 데 선호되는 방법입니다. Web소켓은 실시간, 풀 듀플렉스 통신 채널을 제공하므로 다른 방법에 비해 더 빠르고 효율적인 데이터 전송이 가능합니다.
전직ample는 s 시리즈를 읽습니다.amples는 초당 평균 시간을 보고합니다.ample 및 최대 대기 시간을 설정하고 데이터를 CSV로 저장합니다. file 이후 분석을 위해. 이 설정은 효율적인 실시간 모니터링과 사후 처리를 위한 쉬운 데이터 저장을 가능하게 합니다.
이를 통해 달성할 수 있는 구체적인 성능 Web소켓은 이더넷 인터페이스의 안정성과 애플리케이션의 상대적 우선순위에 따라 달라집니다. 최적의 결과를 위해 네트워크가 안정적이고 필요한 경우 FX4의 데이터 전송이 우선순위가 지정되었는지 확인하세요.
버전: v3
FX4 파이썬 Examp레: 21
문서 / 리소스
![]() |
PYRAMID FX4 프로그래머 [PDF 파일] 사용설명서 FX4 프로그래머, FX4, 프로그래머 |