차이
문서의 선택한 두 판 사이의 차이를 보여줍니다.
| 양쪽 이전 판이전 판다음 판 | 이전 판 | ||
| fieldio:cfnet:cfnet_cfheader:index [2026/02/14 01:55] – admin | fieldio:cfnet:cfnet_cfheader:index [2026/06/13 13:52] (현재) – admin | ||
|---|---|---|---|
| 줄 7: | 줄 7: | ||
| =====전원 사항===== | =====전원 사항===== | ||
| - | 전원 터미널 블록 또는 아답터(5Pi) 전원에 DC12~24V 사이의 전압을 넣어주세요. | + | 전원 터미널 블록 또는 |
| * 전원 전압 : **DC 12~24V ** | * 전원 전압 : **DC 12~24V ** | ||
| * 전원 용량 선택: 연결된 I/ | * 전원 용량 선택: 연결된 I/ | ||
| - | * USB 보조 전원 : | + | * 본 제품은 PC의 USB B타입 커넥터를 연결하여 보조 |
| =====각 부의 설명===== | =====각 부의 설명===== | ||
| - | * 통신상태 LED : 연결된 CFNET IO 모듈의 통신상태를 | + | * 통신 상태 LED를 통해 |
| * 부트 업로드 스위치 : 부트 펌웨어가 업데이트된 경우, 새로운 펌웨어를 업로드할 때 사용됩니다. | * 부트 업로드 스위치 : 부트 펌웨어가 업데이트된 경우, 새로운 펌웨어를 업로드할 때 사용됩니다. | ||
| - | * USB 커넥터 : B Type 또는 Molex 커넥터 중 하나만 PC와 USB 연결해 사용해야 합니다. B Type 커넥터는 PC의 USB 보조 전원을 사용할 수 있습니다. 반면, Molex 커넥터는 보조 전원을 사용할 수는 없지만, 체결이 견고하고 공간 제약이 적다는 장점이 있습니다. | ||
| - | {{ :faduino: | + | * PC와 USB를 연결할 때는 B타입 또는 몰렉스(Molex) 커넥터 중 반드시 하나만 선택하여 사용해야 합니다. 몰렉스 커넥터는 공간 제약이 적고 체결이 견고하다는 장점이 있으며, 별매 제품인 **USB 4핀 케이블** [[https:// |
| + | |||
| + | {{ :fieldio: | ||
| ====어드레스 설정 ===== | ====어드레스 설정 ===== | ||
| 줄 27: | 줄 28: | ||
| {{ : | {{ : | ||
| - | {{ :faduino: | + | {{ :fieldio: |
| - | + | {{ :fieldio: | |
| - | + | ||
| - | + | ||
| - | + | ||
| - | + | ||
| - | ===== CFHEADER API ===== | + | |
| - | + | ||
| - | * [[https:// | + | |
| - | + | ||
| - | =====예제 프로그램===== | + | |
| - | * 여러 개의 CFHEADER모듈 사용 프로그램입니다. **[ CFHEADER[0, 1, 2] x CFDO[0, 0, 0] ]** | + | |
| - | <code csharp> | + | |
| - | using ComfileTech.Cfnet.Cfheader; | + | |
| - | + | ||
| - | // Get the CFHEADER instances | + | |
| - | var cfheader0 = Cfheader.Instances[0]; | + | |
| - | var cfheader1 = Cfheader.Instances[1]; | + | |
| - | var cfheader2 = Cfheader.Instances[2]; | + | |
| - | + | ||
| - | // Open USB communication for each CFHEADER instance | + | |
| - | cfheader0.Open(); | + | |
| - | cfheader1.Open(); | + | |
| - | cfheader2.Open(); | + | |
| - | + | ||
| - | // Create a thread for each CFHEADER instance | + | |
| - | var thread0 = new Thread(() => Demo(cfheader0)); | + | |
| - | var thread1 = new Thread(() => Demo(cfheader1)); | + | |
| - | var thread2 = new Thread(() => Demo(cfheader2)); | + | |
| - | + | ||
| - | // Start each thread | + | |
| - | thread0.Start(); | + | |
| - | thread1.Start(); | + | |
| - | thread2.Start(); | + | |
| - | + | ||
| - | // Wait for each thread to finish | + | |
| - | thread0.Join(); | + | |
| - | thread1.Join(); | + | |
| - | thread2.Join(); | + | |
| - | + | ||
| - | void Demo(Cfheader cfheader) | + | |
| - | { | + | |
| - | // Get the digital output module | + | |
| - | var cfdo_16n0 = cfheader.DigitalOutputModules[0]; | + | |
| - | + | ||
| - | // Initialize all channels to 0 | + | |
| - | cfdo_16n0.State = 0x00; | + | |
| - | + | ||
| - | while (true) | + | |
| - | { | + | |
| - | foreach (var channel in cfdo_16n0.Channels) | + | |
| - | { | + | |
| - | // Toggle the channel on | + | |
| - | channel.State = !channel.State; | + | |
| - | channel.Module.Header.Sync(); | + | |
| - | + | ||
| - | // Delay for 50ms | + | |
| - | Thread.Sleep(50); | + | |
| - | + | ||
| - | // Toggle the channel off | + | |
| - | channel.State = !channel.State; | + | |
| - | channel.Module.Header.Sync(); | + | |
| - | } | + | |
| - | } | + | |
| - | } | + | |
| - | </ | + | |
| - | {{ : | + | |
| ===== 기술 지원 정책 ===== | ===== 기술 지원 정책 ===== | ||
| - | 고객님께서 개발 중이신 소스 코드는 기술 지원 | + | 고객님께서 |
| - | + | ||
| - | 제품이 | + | |
| - | [[modularfaduino:index|Modular FADUINO]] | + | [[..:index|CFHEADER]] |
