iconDreamine
← 목록

Dreamine.PLC.Mitsubishi.MC

stablev1.0.1

미쓰비시 MELSEC MC 프로토콜 드라이버 (3E/4E 프레임).

#communication#dreamine#industrial-automation#mc-protocol#mitsubishi#plc
TFM net8.0Package Dreamine.PLC.Mitsubishi.MC참조 Dreamine.Communication.Abstractions, Dreamine.Communication.Core, Dreamine.Communication.Sockets, Dreamine.PLC.Abstractions, Dreamine.PLC.Core

Dreamine.PLC.Mitsubishi.MC

English documentation

Dreamine PLC 통신을 위한 Mitsubishi MC Protocol 어댑터입니다.

이 패키지는 Mitsubishi MC TCP/UDP Client와 로컬 및 PC-to-PC 검증을 위한 내장 MC Protocol Simulator Server를 제공합니다.

주요 기능

  • Mitsubishi MC TCP Client
  • Mitsubishi MC UDP Client
  • MC TCP Simulator Server
  • MC UDP Simulator Server
  • Binary 3E Frame 기반 Read/Write 흐름
  • Word Read/Write 진단
  • 반복 Handshake 검증 흐름
  • UDP Timeout 및 Retry 지원
  • IPlcClient 통합

지원되는 시뮬레이터 테스트 Mode

SampleSmart의 PLC Protocol 페이지는 다음 조합을 지원합니다.

McTcp ↔ McTcp
McUdp ↔ McUdp

서버와 클라이언트 Mode는 반드시 같아야 합니다. SimulatorTcp 서버는 McTcp, McUdp 클라이언트와 통신할 수 없습니다.

1PC 테스트

로컬 검증은 다음 흐름으로 진행합니다.

Mode: McTcp 또는 McUdp
Host: 127.0.0.1
Port: 55000
Start Server
Use Client
Connect
Write Words
Read Words
Run Handshake

2PC 테스트

서버 PC:

Mode: McTcp 또는 McUdp
Host: 0.0.0.0
Port: 55000
Start Server

클라이언트 PC:

Mode: 서버와 동일
Host: 서버 PC IP
Port: 55000
Use Client
Connect
Read/Write 또는 Handshake

PC-to-PC 테스트 방화벽 요구사항

서버 PC의 인바운드 포트를 열어야 합니다.

TCP:

New-NetFirewallRule -DisplayName "Dreamine PLC MC TCP 55000" -Direction Inbound -Protocol TCP -LocalPort 55000 -Action Allow

UDP:

New-NetFirewallRule -DisplayName "Dreamine PLC MC UDP 55000" -Direction Inbound -Protocol UDP -LocalPort 55000 -Action Allow

PowerShell은 관리자 권한으로 실행해야 합니다. 이 규칙이 없으면 같은 프로그램이 1PC에서는 통과하지만 2PC에서는 실패할 수 있습니다.

실제 PLC 테스트 안내

내장 MC Simulator는 Dreamine MC Client/Server 흐름을 검증하기 위한 것입니다. 실제 Mitsubishi PLC 검증은 별도로 진행해야 합니다.

실제 Mitsubishi PLC 연결 전 확인 항목:

  • PLC 모델 및 Ethernet Module 지원 여부
  • MC Protocol TCP/UDP 설정
  • Port 번호
  • Device Memory 매핑
  • 필요한 경우 Binary/ASCII Frame 설정
  • 네트워크 방화벽 및 라우팅
  • 안전한 Polling 주기

Polling 및 Write 안전성

실제 PLC에는 1ms Polling을 사용하지 마십시오.

실제 PLC 권장값:

  • 모니터링: 100ms ~ 500ms
  • UI 표시 갱신: 250ms ~ 1000ms
  • Write: 이벤트 기반만 권장
  • Handshake 부하 테스트: 명시적으로 승인된 실제 장비가 아니라면 Simulator 전용

벤더 런타임 정책

이 패키지는 Mitsubishi MX Component 또는 Mitsubishi 런타임 DLL을 포함하지 않습니다.

이 패키지는 MC Protocol 통신을 직접 구현합니다. MX Component 연동이 필요하면 별도 어댑터 패키지로 분리하고, 벤더 DLL은 재배포하지 않아야 합니다.

검증 상태

검증됨:

  • 1PC MC TCP Read/Write 및 Handshake
  • 1PC MC UDP Read/Write 및 Handshake
  • 2PC MC TCP Read/Write 및 Handshake
  • 2PC MC UDP Read/Write 및 Handshake
  • WPF Monitor 통합

대기 중:

  • 실제 Mitsubishi PLC 검증

라이선스

MIT License.

구조 다이어그램

classDiagram
    class McProtocolClient {
        -TcpClient _tcp
        +SubHeader int
        +NetworkNo byte
        +PcNo byte
        +UnitIo ushort
        +UnitStation byte
        +ReadBitAsync(string) Task~bool~
        +ReadWordAsync(string) Task~short~
        +ReadDWordAsync(string) Task~int~
        +WriteBitAsync(string, bool) Task
        +WriteWordAsync(string, short) Task
        +WriteDWordAsync(string, int) Task
        +ReadBitsAsync(string, int) Task~bool[]~
        +ReadWordsAsync(string, int) Task~short[]~
    }
    class McAddressParser {
        +Parse(string) PlcAddress
        -ParseMitsubishiDevice(string) string
        -GetDeviceCode(string) byte
    }
    class McFrame {
        +Build3E(McCommand) byte[]
        +Build4E(McCommand) byte[]
        +Parse3E(byte[]) McResponse
        +Parse4E(byte[]) McResponse
    }
    class PlcClientBase {
        <<abstract>>
    }
    PlcClientBase <|-- McProtocolClient
    McProtocolClient --> McFrame
    McProtocolClient --> McAddressParser

API 문서

타입

FakeMitsubishiMcTransport

\if KO 테스트와 프로토콜 검증용 가짜 Mitsubishi MC 전송을 제공합니다. \endif \if EN Provides a fake Mitsubishi MC transport for tests and protocol verification. \endif

IMitsubishiMcTransport

\if KO Mitsubishi MC 프로토콜 통신 전송 경계를 정의합니다. \endif \if EN Defines a transport boundary for Mitsubishi MC communication. \endif

McRequest

\if KO 구문 분석된 MC 요청 필드를 보관합니다. \endif \if EN Stores parsed MC request fields. \endif

MitsubishiMcBinary3EFrameBuilder

\if KO Mitsubishi MC 프로토콜 Binary 3E 요청 프레임을 만듭니다. \endif \if EN Builds Mitsubishi MC protocol Binary 3E request frames. \endif

MitsubishiMcBinary3EResponse

\if KO 구문 분석된 Mitsubishi MC Binary 3E 응답을 나타냅니다. \endif \if EN Represents a parsed Mitsubishi MC Binary 3E response. \endif

MitsubishiMcBinary3EResponseParser

\if KO Mitsubishi MC Binary 3E 응답 프레임을 구문 분석합니다. \endif \if EN Parses Mitsubishi MC Binary 3E response frames. \endif

MitsubishiMcBinary3ESimulatorProtocol

\if KO 읽기·쓰기 테스트용 최소 Mitsubishi MC Binary 3E 시뮬레이션을 실행합니다. \endif \if EN Executes a minimal Mitsubishi MC Binary 3E simulation for read/write tests. \endif

MitsubishiMcCommand

\if KO Mitsubishi MC 프로토콜 명령 코드를 정의합니다. \endif \if EN Defines Mitsubishi MC protocol command codes. \endif

MitsubishiMcConnectionOptions

\if KO Mitsubishi MC 프로토콜 통신 연결 옵션을 나타냅니다. \endif \if EN Represents connection options for Mitsubishi MC protocol communication. \endif

MitsubishiMcDeviceCode

\if KO Mitsubishi MC 바이너리 프레임 디바이스 코드를 정의합니다. \endif \if EN Defines Mitsubishi MC device codes for binary frames. \endif

MitsubishiMcDeviceCodeMapper

\if KO 공통 PLC 디바이스 타입을 Mitsubishi MC 디바이스 코드로 매핑합니다. \endif \if EN Maps common PLC device types to Mitsubishi MC device codes. \endif

MitsubishiMcEndian

\if KO Mitsubishi MC 바이너리 프레임용 리틀 엔디언 쓰기 도우미를 제공합니다. \endif \if EN Provides little-endian writing helpers for Mitsubishi MC binary frames. \endif

MitsubishiMcFrameFormat

\if KO Mitsubishi MC 프로토콜 프레임 형식을 정의합니다. \endif \if EN Defines Mitsubishi MC protocol frame formats. \endif

MitsubishiMcPlcClient

\if KO Mitsubishi MC 프로토콜 PLC 클라이언트를 제공합니다. \endif \if EN Provides a Mitsubishi MC protocol PLC client. \endif

MitsubishiMcSimulatorServerOptions

\if KO Mitsubishi MC 프로토콜 시뮬레이터 서버 옵션을 정의합니다. \endif \if EN Defines options for the Mitsubishi MC simulator server. \endif

MitsubishiMcSubCommand

\if KO Mitsubishi MC 프로토콜 하위 명령 코드를 정의합니다. \endif \if EN Defines Mitsubishi MC protocol sub-command codes. \endif

MitsubishiMcTcpSimulatorServer

\if KO 로컬 및 PC 간 테스트용 최소 Mitsubishi MC Binary 3E TCP 서버를 제공합니다. \endif \if EN Provides a minimal Mitsubishi MC Binary 3E TCP server for local and cross-PC tests. \endif

MitsubishiMcTransportType

\if KO Mitsubishi MC 프로토콜 통신 전송 타입을 정의합니다. \endif \if EN Defines the transport type for Mitsubishi MC protocol communication. \endif

MitsubishiMcUdpSimulatorServer

\if KO 로컬 및 PC 간 테스트용 최소 Mitsubishi MC Binary 3E UDP 서버를 제공합니다. \endif \if EN Provides a minimal Mitsubishi MC Binary 3E UDP server for local and cross-PC tests. \endif

TcpMitsubishiMcTransport

\if KO Mitsubishi MC 프로토콜용 TCP 전송을 제공합니다. \endif \if EN Provides TCP transport for Mitsubishi MC communication. \endif

UdpMitsubishiMcTransport

\if KO Mitsubishi MC 프로토콜용 UDP 전송을 제공합니다. \endif \if EN Provides UDP transport for Mitsubishi MC communication. \endif

FakeMitsubishiMcTransport

ConnectAsync Method

\if KO 가짜 전송을 연결 상태로 설정합니다. \endif \if EN Marks the fake transport as connected. \endif

host— \if KO 사용하지 않는 호스트입니다. \endif \if EN The unused host. \endif
port— \if KO 사용하지 않는 포트입니다. \endif \if EN The unused port. \endif
timeoutMs— \if KO 사용하지 않는 제한 시간입니다. \endif \if EN The unused timeout. \endif
cancellationToken— \if KO 취소 토큰입니다. \endif \if EN The cancellation token. \endif

반환: \if KO 연결 결과입니다. \endif \if EN The connection result. \endif

DisconnectAsync Method

\if KO 가짜 전송을 연결 해제 상태로 설정합니다. \endif \if EN Marks the fake transport as disconnected. \endif

cancellationToken— \if KO 취소 토큰입니다. \endif \if EN The cancellation token. \endif

반환: \if KO 연결 해제 결과입니다. \endif \if EN The disconnection result. \endif

DisposeAsync Method

\if KO 연결 상태와 저장된 프레임을 초기화합니다. \endif \if EN Clears connection state and stored frames. \endif

반환: \if KO 완료된 해제 작업입니다. \endif \if EN A completed disposal operation. \endif

EnqueueResponse Method

\if KO 다음 송수신에서 반환할 응답 프레임을 큐에 추가합니다. \endif \if EN Enqueues a response frame for the next send/receive operation. \endif

responseFrame— \if KO 응답 프레임입니다. \endif \if EN The response frame. \endif
SendAndReceiveAsync Method

\if KO 요청을 기록하고 큐에 있는 다음 응답을 반환합니다. \endif \if EN Records the request and returns the next queued response. \endif

requestFrame— \if KO 요청 프레임입니다. \endif \if EN The request frame. \endif
receiveTimeoutMs— \if KO 사용하지 않는 제한 시간입니다. \endif \if EN The unused timeout. \endif
retryCount— \if KO 사용하지 않는 재시도 수입니다. \endif \if EN The unused retry count. \endif
cancellationToken— \if KO 취소 토큰입니다. \endif \if EN The cancellation token. \endif

반환: \if KO 큐의 응답 결과입니다. \endif \if EN The queued response result. \endif

IsConnected Property

\if KO 가짜 전송 연결 상태를 가져옵니다. \endif \if EN Gets the fake transport connection state. \endif

SentFrames Property

\if KO 가짜 전송을 통해 보낸 프레임을 가져옵니다. \endif \if EN Gets frames sent through this fake transport. \endif

_responses Field

\if KO responses 값을 보관합니다. \endif \if EN Stores the responses value. \endif

_sentFrames Field

\if KO sent Frames 값을 보관합니다. \endif \if EN Stores the sent frames value. \endif

IMitsubishiMcTransport

ConnectAsync Method

\if KO 전송을 연결하거나 준비합니다. \endif \if EN Connects or prepares the transport. \endif

host— \if KO 대상 호스트입니다. \endif \if EN The target host. \endif
port— \if KO 대상 포트입니다. \endif \if EN The target port. \endif
timeoutMs— \if KO 연결 제한 시간입니다. \endif \if EN The connection timeout. \endif
cancellationToken— \if KO 취소 토큰입니다. \endif \if EN The cancellation token. \endif

반환: \if KO 연결 결과입니다. \endif \if EN The connection result. \endif

DisconnectAsync Method

\if KO 전송 연결을 해제합니다. \endif \if EN Disconnects the transport. \endif

cancellationToken— \if KO 취소 토큰입니다. \endif \if EN The cancellation token. \endif

반환: \if KO 연결 해제 결과입니다. \endif \if EN The disconnection result. \endif

SendAndReceiveAsync Method

\if KO 요청 프레임을 보내고 응답 프레임을 받습니다. \endif \if EN Sends a request frame and receives the response frame. \endif

requestFrame— \if KO 요청 프레임입니다. \endif \if EN The request frame. \endif
receiveTimeoutMs— \if KO 수신 제한 시간입니다. \endif \if EN The receive timeout. \endif
retryCount— \if KO 재시도 횟수입니다. \endif \if EN The retry count. \endif
cancellationToken— \if KO 취소 토큰입니다. \endif \if EN The cancellation token. \endif

반환: \if KO 응답 프레임 결과입니다. \endif \if EN The response-frame result. \endif

IsConnected Property

\if KO 전송이 연결 또는 준비되었는지 여부를 가져옵니다. \endif \if EN Gets whether the transport is connected or ready. \endif

McRequest

#ctor Method

\if KO 구문 분석된 MC 요청 필드를 보관합니다. \endif \if EN Stores parsed MC request fields. \endif

Header— \if KO 라우팅 헤더입니다. \endif \if EN The routing header. \endif
Command— \if KO 명령입니다. \endif \if EN The command. \endif
SubCommand— \if KO 하위 명령입니다. \endif \if EN The sub-command. \endif
DeviceOffset— \if KO 디바이스 오프셋입니다. \endif \if EN The device offset. \endif
DeviceCode— \if KO 디바이스 코드입니다. \endif \if EN The device code. \endif
Points— \if KO 점 수입니다. \endif \if EN The point count. \endif
Data— \if KO 요청 데이터입니다. \endif \if EN The request data. \endif
Command Property

/// \if KO /// 명령입니다. /// \endif /// \if EN /// The command. /// \endif ///

Data Property

/// \if KO /// 요청 데이터입니다. /// \endif /// \if EN /// The request data. /// \endif ///

DeviceCode Property

/// \if KO /// 디바이스 코드입니다. /// \endif /// \if EN /// The device code. /// \endif ///

DeviceOffset Property

/// \if KO /// 디바이스 오프셋입니다. /// \endif /// \if EN /// The device offset. /// \endif ///

Header Property

\if KO 라우팅 헤더입니다. \endif \if EN The routing header. \endif

Points Property

/// \if KO /// 점 수입니다. /// \endif /// \if EN /// The point count. /// \endif ///

SubCommand Property

/// \if KO /// 하위 명령입니다. /// \endif /// \if EN /// The sub-command. /// \endif ///

MitsubishiMcBinary3EFrameBuilder

#ctor Method

\if KO 기본 디바이스 매퍼로 프레임 빌더를 초기화합니다. \endif \if EN Initializes the frame builder with the default device mapper. \endif

#ctor Method

\if KO 지정한 디바이스 매퍼로 프레임 빌더를 초기화합니다. \endif \if EN Initializes the frame builder with the specified device mapper. \endif

deviceCodeMapper— \if KO 디바이스 코드 매퍼입니다. \endif \if EN The device-code mapper. \endif
BuildBatchAccessPayload Method

\if KO 일괄 접근 명령 헤더 페이로드를 만듭니다. \endif \if EN Builds a batch-access command-header payload. \endif

command— \if KO 명령입니다. \endif \if EN The command. \endif
subCommand— \if KO 하위 명령입니다. \endif \if EN The sub-command. \endif
address— \if KO 주소입니다. \endif \if EN The address. \endif
count— \if KO 항목 수입니다. \endif \if EN The item count. \endif
deviceCode— \if KO 디바이스 코드입니다. \endif \if EN The device code. \endif

반환: \if KO 명령 페이로드입니다. \endif \if EN The command payload. \endif

BuildBatchReadFrame Method

\if KO 일괄 읽기 요청 프레임을 만듭니다. \endif \if EN Builds a batch-read request frame. \endif

options— \if KO 연결 옵션입니다. \endif \if EN The connection options. \endif
address— \if KO 시작 주소입니다. \endif \if EN The start address. \endif
count— \if KO 읽을 디바이스 수입니다. \endif \if EN The device count. \endif
isBitAccess— \if KO 비트 접근 여부입니다. \endif \if EN Whether this is bit access. \endif

반환: \if KO 프레임 바이트 결과입니다. \endif \if EN The frame-byte result. \endif

BuildBatchWriteBitsFrame Method

\if KO 일괄 비트 쓰기 요청 프레임을 만듭니다. \endif \if EN Builds a batch bit-write request frame. \endif

options— \if KO 연결 옵션입니다. \endif \if EN The connection options. \endif
address— \if KO 시작 주소입니다. \endif \if EN The start address. \endif
values— \if KO 비트 값입니다. \endif \if EN The bit values. \endif

반환: \if KO 프레임 바이트 결과입니다. \endif \if EN The frame-byte result. \endif

BuildBatchWriteWordsFrame Method

\if KO 일괄 워드 쓰기 요청 프레임을 만듭니다. \endif \if EN Builds a batch word-write request frame. \endif

options— \if KO 연결 옵션입니다. \endif \if EN The connection options. \endif
address— \if KO 시작 주소입니다. \endif \if EN The start address. \endif
values— \if KO 워드 값입니다. \endif \if EN The word values. \endif

반환: \if KO 프레임 바이트 결과입니다. \endif \if EN The frame-byte result. \endif

BuildFrame Method

\if KO 라우팅 헤더, 길이, 타이머 및 페이로드를 결합해 Binary 3E 프레임을 만듭니다. \endif \if EN Combines routing header, length, timer, and payload into a Binary 3E frame. \endif

options— \if KO 연결 옵션입니다. \endif \if EN The connection options. \endif
payload— \if KO 명령 페이로드입니다. \endif \if EN The command payload. \endif

반환: \if KO 완성된 프레임입니다. \endif \if EN The completed frame. \endif

_deviceCodeMapper Field

\if KO device Code Mapper 값을 보관합니다. \endif \if EN Stores the device code mapper value. \endif

SubHeader Field

\if KO Sub Header 값을 보관합니다. \endif \if EN Stores the sub header value. \endif

MitsubishiMcBinary3EResponse

#ctor Method

\if KO 종료 코드와 데이터로 응답을 초기화합니다. \endif \if EN Initializes the response with an end code and data. \endif

endCode— \if KO MC 종료 코드입니다. \endif \if EN The MC end code. \endif
data— \if KO 응답 데이터입니다. \endif \if EN The response data. \endif
Data Property

\if KO 응답 데이터 페이로드를 가져옵니다. \endif \if EN Gets the response data payload. \endif

EndCode Property

\if KO MC 종료 코드를 가져옵니다. \endif \if EN Gets the MC end code. \endif

IsSuccess Property

\if KO 응답이 성공인지 여부를 가져옵니다. \endif \if EN Gets whether the response indicates success. \endif

MitsubishiMcBinary3EResponseParser

Parse Method

\if KO 원시 Binary 3E 응답의 헤더, 길이, 종료 코드 및 데이터를 구문 분석합니다. \endif \if EN Parses header, length, end code, and data from a raw Binary 3E response. \endif

frame— \if KO 응답 프레임입니다. \endif \if EN The response frame. \endif

반환: \if KO 구문 분석된 응답 결과입니다. \endif \if EN The parsed response result. \endif

ParseReadBits Method

\if KO Binary 3E 읽기 응답에서 압축된 비트 값을 구문 분석합니다. \endif \if EN Parses packed bit values from a Binary 3E read response. \endif

frame— \if KO 응답 프레임입니다. \endif \if EN The response frame. \endif
count— \if KO 예상 비트 수입니다. \endif \if EN The expected bit count. \endif

반환: \if KO 비트 값 결과입니다. \endif \if EN The bit-value result. \endif

ParseReadWords Method

\if KO Binary 3E 읽기 응답에서 워드 값을 구문 분석합니다. \endif \if EN Parses word values from a Binary 3E read response. \endif

frame— \if KO 응답 프레임입니다. \endif \if EN The response frame. \endif
count— \if KO 예상 워드 수입니다. \endif \if EN The expected word count. \endif

반환: \if KO 워드 값 결과입니다. \endif \if EN The word-value result. \endif

ReadUInt16LittleEndian Method

\if KO 지정한 오프셋에서 리틀 엔디언 16비트 값을 읽습니다. \endif \if EN Reads a little-endian 16-bit value at the specified offset. \endif

buffer— \if KO 원본 버퍼입니다. \endif \if EN The source buffer. \endif
offset— \if KO 읽기 오프셋입니다. \endif \if EN The read offset. \endif

반환: \if KO 읽은 값입니다. \endif \if EN The value read. \endif

MinimumResponseLength Field

\if KO Minimum Response Length 값을 보관합니다. \endif \if EN Stores the minimum response length value. \endif

MitsubishiMcBinary3ESimulatorProtocol

#ctor Method

\if KO 공유 PLC 메모리와 옵션으로 시뮬레이터 프로토콜을 초기화합니다. \endif \if EN Initializes the simulator protocol with shared PLC memory and options. \endif

memory— \if KO 공유 PLC 메모리입니다. \endif \if EN The shared PLC memory. \endif
options— \if KO 시뮬레이터 옵션입니다. \endif \if EN The simulator options. \endif
ApplyAutoWordResponse Method

\if KO 트리거 요청에 대해 증가된 자동 워드 응답을 메모리에 씁니다. \endif \if EN Writes an incremented automatic word response for a trigger request. \endif

request— \if KO 쓰기 요청입니다. \endif \if EN The write request. \endif
values— \if KO 쓴 값입니다. \endif \if EN The written values. \endif
BuildErrorResponse Method

\if KO 가능한 요청 라우팅 정보를 보존해 오류 응답을 만듭니다. \endif \if EN Builds an error response while preserving available request routing data. \endif

requestFrame— \if KO 원본 요청입니다. \endif \if EN The original request. \endif
endCode— \if KO 오류 종료 코드입니다. \endif \if EN The error end code. \endif

반환: \if KO 오류 응답입니다. \endif \if EN The error response. \endif

BuildResponse Method

\if KO 요청 라우팅 헤더, 종료 코드 및 데이터로 Binary 3E 응답을 만듭니다. \endif \if EN Builds a Binary 3E response from routing header, end code, and data. \endif

requestHeader— \if KO 요청 헤더입니다. \endif \if EN The request header. \endif
endCode— \if KO 종료 코드입니다. \endif \if EN The end code. \endif
data— \if KO 응답 데이터입니다. \endif \if EN The response data. \endif

반환: \if KO 응답 프레임입니다. \endif \if EN The response frame. \endif

Execute Method

\if KO Binary 3E 요청 프레임 하나를 실행하고 응답 프레임을 반환합니다. \endif \if EN Executes one Binary 3E request and returns its response frame. \endif

requestFrame— \if KO MC 요청 프레임입니다. \endif \if EN The MC request frame. \endif

반환: \if KO MC 응답 프레임입니다. \endif \if EN The MC response frame. \endif

ExecuteRead Method

\if KO 워드 또는 비트 일괄 읽기 요청을 실행합니다. \endif \if EN Executes a word or bit batch-read request. \endif

request— \if KO 구문 분석된 요청입니다. \endif \if EN The parsed request. \endif

반환: \if KO 응답 프레임입니다. \endif \if EN The response frame. \endif

ExecuteWrite Method

\if KO 워드 또는 비트 일괄 쓰기 요청을 실행합니다. \endif \if EN Executes a word or bit batch-write request. \endif

request— \if KO 구문 분석된 요청입니다. \endif \if EN The parsed request. \endif

반환: \if KO 응답 프레임입니다. \endif \if EN The response frame. \endif

IsSupportedDeviceCode Method

\if KO 시뮬레이터가 디바이스 코드를 지원하는지 확인합니다. \endif \if EN Determines whether the simulator supports a device code. \endif

deviceCode— \if KO 디바이스 코드입니다. \endif \if EN The device code. \endif

반환: \if KO 지원하면 입니다. \endif \if EN when supported. \endif

PackBits Method

\if KO 두 비트씩 상·하위 니블에 압축합니다. \endif \if EN Packs two bits into the high and low nibbles of each byte. \endif

values— \if KO 비트 값입니다. \endif \if EN The bit values. \endif

반환: \if KO 압축된 바이트입니다. \endif \if EN The packed bytes. \endif

ReadUInt16LittleEndian Method

\if KO 리틀 엔디언 16비트 값을 읽습니다. \endif \if EN Reads a little-endian 16-bit value. \endif

buffer— \if KO 버퍼입니다. \endif \if EN The buffer. \endif
offset— \if KO 오프셋입니다. \endif \if EN The offset. \endif

반환: \if KO 읽은 값입니다. \endif \if EN The value read. \endif

ReadUInt24LittleEndian Method

\if KO 리틀 엔디언 24비트 값을 읽습니다. \endif \if EN Reads a little-endian 24-bit value. \endif

buffer— \if KO 버퍼입니다. \endif \if EN The buffer. \endif
offset— \if KO 오프셋입니다. \endif \if EN The offset. \endif

반환: \if KO 읽은 값입니다. \endif \if EN The value read. \endif

ToDeviceType Method

\if KO MC 디바이스 코드를 공통 PLC 타입으로 변환합니다. \endif \if EN Converts an MC device code to a common PLC type. \endif

deviceCode— \if KO 디바이스 코드입니다. \endif \if EN The device code. \endif

반환: \if KO 공통 디바이스 타입입니다. \endif \if EN The common device type. \endif

TryParseRequest Method

\if KO Binary 3E 요청 헤더, 명령, 주소, 점 수 및 데이터를 구문 분석합니다. \endif \if EN Parses Binary 3E request header, command, address, points, and data. \endif

frame— \if KO 요청 프레임입니다. \endif \if EN The request frame. \endif
request— \if KO 구문 분석된 요청입니다. \endif \if EN The parsed request. \endif
errorMessage— \if KO 실패 메시지입니다. \endif \if EN The failure message. \endif

반환: \if KO 성공하면 입니다. \endif \if EN on success. \endif

UnpackBits Method

\if KO 니블로 압축된 데이터를 비트 배열로 풉니다. \endif \if EN Unpacks nibble-packed data into a bit array. \endif

data— \if KO 압축 데이터입니다. \endif \if EN The packed data. \endif
count— \if KO 풀 비트 수입니다. \endif \if EN The bit count. \endif

반환: \if KO 비트 배열입니다. \endif \if EN The bit array. \endif

_memory Field

\if KO memory 값을 보관합니다. \endif \if EN Stores the memory value. \endif

_options Field

\if KO options 값을 보관합니다. \endif \if EN Stores the options value. \endif

RequestSubHeader Field

\if KO Request Sub Header 값을 보관합니다. \endif \if EN Stores the request sub header value. \endif

ResponseSubHeader Field

\if KO Response Sub Header 값을 보관합니다. \endif \if EN Stores the response sub header value. \endif

StatusChanged Event

\if KO 시뮬레이터 진단 상태 메시지가 발생할 때 발생합니다. \endif \if EN Occurs when the simulator emits a diagnostic status message. \endif

MitsubishiMcCommand

BatchRead Field

\if KO 일괄 읽기 명령입니다. \endif \if EN The batch-read command. \endif

BatchWrite Field

\if KO 일괄 쓰기 명령입니다. \endif \if EN The batch-write command. \endif

MitsubishiMcConnectionOptions

ConnectTimeoutMs Property

\if KO 밀리초 단위 연결 제한 시간을 가져오거나 설정합니다. \endif \if EN Gets or sets the connection timeout in milliseconds. \endif

DestinationModuleIoNumber Property

\if KO 요청 대상 모듈 I/O 번호를 가져오거나 설정합니다. \endif \if EN Gets or sets the request destination module I/O number. \endif

DestinationModuleStationNumber Property

\if KO 요청 대상 모듈 스테이션 번호를 가져오거나 설정합니다. \endif \if EN Gets or sets the request destination module station number. \endif

FrameFormat Property

\if KO MC 프레임 형식을 가져오거나 설정합니다. \endif \if EN Gets or sets the MC frame format. \endif

Host Property

\if KO PLC 호스트 주소를 가져오거나 설정합니다. \endif \if EN Gets or sets the PLC host address. \endif

MonitoringTimer Property

\if KO 모니터링 타이머를 가져오거나 설정합니다. \endif \if EN Gets or sets the monitoring timer. \endif

NetworkNumber Property

\if KO 네트워크 번호를 가져오거나 설정합니다. \endif \if EN Gets or sets the network number. \endif

PlcNumber Property

\if KO PLC 번호를 가져오거나 설정합니다. \endif \if EN Gets or sets the PLC number. \endif

Port Property

\if KO PLC 포트를 가져오거나 설정합니다. \endif \if EN Gets or sets the PLC port. \endif

ReceiveTimeoutMs Property

\if KO 밀리초 단위 수신 제한 시간을 가져오거나 설정합니다. \endif \if EN Gets or sets the receive timeout in milliseconds. \endif

RetryCount Property

\if KO 송수신 재시도 횟수를 가져오거나 설정합니다. UDP는 제한 시간 재전송에 사용하고 TCP는 1 미만을 한 번으로 처리합니다. \endif \if EN Gets or sets send/receive retries; UDP retransmits on timeout and TCP treats values below one as one attempt. \endif

SendTimeoutMs Property

\if KO 밀리초 단위 송신 제한 시간을 가져오거나 설정합니다. \endif \if EN Gets or sets the send timeout in milliseconds. \endif

TransportType Property

\if KO MC 전송 타입을 가져오거나 설정합니다. \endif \if EN Gets or sets the MC transport type. \endif

MitsubishiMcDeviceCode

B Field

\if KO 링크 릴레이입니다. \endif \if EN The link relay. \endif

D Field

\if KO 데이터 레지스터입니다. \endif \if EN The data register. \endif

M Field

\if KO 내부 릴레이입니다. \endif \if EN The internal relay. \endif

R Field

\if KO 파일 레지스터입니다. \endif \if EN The file register. \endif

SD Field

\if KO 특수 레지스터입니다. \endif \if EN The special register. \endif

SM Field

\if KO 특수 릴레이입니다. \endif \if EN The special relay. \endif

W Field

\if KO 링크 레지스터입니다. \endif \if EN The link register. \endif

X Field

\if KO 입력 릴레이입니다. \endif \if EN The input relay. \endif

Y Field

\if KO 출력 릴레이입니다. \endif \if EN The output relay. \endif

ZR Field

\if KO ZR 파일 레지스터입니다. \endif \if EN The ZR file register. \endif

MitsubishiMcDeviceCodeMapper

Map Method

\if KO 공통 PLC 디바이스 타입을 Mitsubishi MC 코드로 변환합니다. \endif \if EN Converts a common PLC device type to a Mitsubishi MC code. \endif

deviceType— \if KO 공통 PLC 디바이스 타입입니다. \endif \if EN The common PLC device type. \endif

반환: \if KO 매핑된 코드 또는 실패 메시지입니다. \endif \if EN The mapped code or a failure message. \endif

MitsubishiMcEndian

WriteUInt16LittleEndian Method

\if KO 16비트 부호 없는 정수를 리틀 엔디언 바이트로 씁니다. \endif \if EN Writes a 16-bit unsigned integer as little-endian bytes. \endif

buffer— \if KO 대상 버퍼입니다. \endif \if EN The target buffer. \endif
value— \if KO 쓸 값입니다. \endif \if EN The value to write. \endif
WriteUInt24LittleEndian Method

\if KO 24비트 부호 없는 정수를 리틀 엔디언 바이트로 씁니다. \endif \if EN Writes a 24-bit unsigned integer as little-endian bytes. \endif

buffer— \if KO 대상 버퍼입니다. \endif \if EN The target buffer. \endif
value— \if KO 쓸 값입니다. \endif \if EN The value to write. \endif

MitsubishiMcFrameFormat

Ascii3E Field

\if KO ASCII 3E 프레임입니다. \endif \if EN The ASCII 3E frame. \endif

Binary3E Field

\if KO Binary 3E 프레임입니다. \endif \if EN The Binary 3E frame. \endif

MitsubishiMcPlcClient

#ctor Method

\if KO 옵션에 맞는 기본 전송과 프레임 구성 요소로 클라이언트를 초기화합니다. \endif \if EN Initializes the client with default transport and frame components for the options. \endif

options— \if KO 연결 옵션입니다. \endif \if EN The connection options. \endif
#ctor Method

\if KO 지정한 옵션, 전송, 프레임 빌더 및 응답 파서로 클라이언트를 초기화합니다. \endif \if EN Initializes the client with options, transport, frame builder, and response parser. \endif

options— \if KO 연결 옵션입니다. \endif \if EN The connection options. \endif
transport— \if KO MC 전송입니다. \endif \if EN The MC transport. \endif
frameBuilder— \if KO Binary 3E 빌더입니다. \endif \if EN The Binary 3E builder. \endif
responseParser— \if KO Binary 3E 파서입니다. \endif \if EN The Binary 3E parser. \endif
ConnectCoreAsync Method

\if KO 구성된 호스트와 포트로 MC 전송을 연결합니다. \endif \if EN Connects the MC transport to the configured host and port. \endif

cancellationToken— \if KO 취소 토큰입니다. \endif \if EN The cancellation token. \endif

반환: \if KO 연결 결과입니다. \endif \if EN The connection result. \endif

CreateTransport Method

\if KO 옵션의 전송 타입에 맞는 TCP 또는 UDP 전송을 만듭니다. \endif \if EN Creates TCP or UDP transport matching the configured transport type. \endif

options— \if KO 연결 옵션입니다. \endif \if EN The connection options. \endif

반환: \if KO 생성된 전송입니다. \endif \if EN The created transport. \endif

DisconnectCoreAsync Method

\if KO MC 전송 연결을 해제합니다. \endif \if EN Disconnects the MC transport. \endif

cancellationToken— \if KO 취소 토큰입니다. \endif \if EN The cancellation token. \endif

반환: \if KO 연결 해제 결과입니다. \endif \if EN The disconnection result. \endif

DisposeAsync Method

\if KO 기본 클라이언트와 MC 전송을 순서대로 비동기 해제합니다. \endif \if EN Asynchronously disposes the base client and MC transport in order. \endif

반환: \if KO 비동기 해제 작업입니다. \endif \if EN The asynchronous disposal operation. \endif

ReadBitsCoreAsync Method

\if KO 비트 읽기 프레임을 송수신하고 응답 비트를 구문 분석합니다. \endif \if EN Sends a bit-read frame and parses response bits. \endif

address— \if KO 시작 주소입니다. \endif \if EN The start address. \endif
count— \if KO 비트 수입니다. \endif \if EN The bit count. \endif
cancellationToken— \if KO 취소 토큰입니다. \endif \if EN The cancellation token. \endif

반환: \if KO 비트 결과입니다. \endif \if EN The bit result. \endif

ReadWordsCoreAsync Method

\if KO 워드 읽기 프레임을 송수신하고 응답 워드를 구문 분석합니다. \endif \if EN Sends a word-read frame and parses response words. \endif

address— \if KO 시작 주소입니다. \endif \if EN The start address. \endif
count— \if KO 워드 수입니다. \endif \if EN The word count. \endif
cancellationToken— \if KO 취소 토큰입니다. \endif \if EN The cancellation token. \endif

반환: \if KO 워드 결과입니다. \endif \if EN The word result. \endif

WriteBitsCoreAsync Method

\if KO 비트 쓰기 프레임을 송수신하고 종료 코드를 확인합니다. \endif \if EN Sends a bit-write frame and validates its end code. \endif

address— \if KO 시작 주소입니다. \endif \if EN The start address. \endif
values— \if KO 비트 값입니다. \endif \if EN The bit values. \endif
cancellationToken— \if KO 취소 토큰입니다. \endif \if EN The cancellation token. \endif

반환: \if KO 쓰기 결과입니다. \endif \if EN The write result. \endif

WriteWordsCoreAsync Method

\if KO 워드 쓰기 프레임을 송수신하고 종료 코드를 확인합니다. \endif \if EN Sends a word-write frame and validates its end code. \endif

address— \if KO 시작 주소입니다. \endif \if EN The start address. \endif
values— \if KO 워드 값입니다. \endif \if EN The word values. \endif
cancellationToken— \if KO 취소 토큰입니다. \endif \if EN The cancellation token. \endif

반환: \if KO 쓰기 결과입니다. \endif \if EN The write result. \endif

Options Property

\if KO Mitsubishi MC 연결 옵션을 가져옵니다. \endif \if EN Gets the Mitsubishi MC connection options. \endif

_frameBuilder Field

\if KO frame Builder 값을 보관합니다. \endif \if EN Stores the frame builder value. \endif

_options Field

\if KO options 값을 보관합니다. \endif \if EN Stores the options value. \endif

_responseParser Field

\if KO response Parser 값을 보관합니다. \endif \if EN Stores the response parser value. \endif

_transport Field

\if KO transport 값을 보관합니다. \endif \if EN Stores the transport value. \endif

MitsubishiMcSimulatorServerOptions

AutoResponseDeviceCode Property

\if KO 핸드셰이크 응답 디바이스 코드를 가져오거나 설정합니다. \endif \if EN Gets or sets the handshake response device code. \endif

AutoResponseIncrement Property

\if KO 자동 핸드셰이크 응답 증가값을 가져오거나 설정합니다. \endif \if EN Gets or sets the automatic handshake response increment. \endif

AutoResponseOffset Property

\if KO 응답 워드 오프셋을 가져오거나 설정합니다. \endif \if EN Gets or sets the response word offset. \endif

AutoResponseTriggerDeviceCode Property

\if KO 핸드셰이크 트리거 디바이스 코드를 가져오거나 설정합니다. \endif \if EN Gets or sets the handshake trigger device code. \endif

AutoResponseTriggerOffset Property

\if KO 트리거 워드 오프셋을 가져오거나 설정합니다. \endif \if EN Gets or sets the trigger word offset. \endif

EnableAutoWordResponse Property

\if KO 트리거 주소 단일 워드 쓰기가 응답 주소를 갱신할지 여부를 가져오거나 설정합니다. \endif \if EN Gets or sets whether one trigger-word write updates the response address. \endif

Host Property

\if KO 서버 바인딩 주소를 가져오거나 설정합니다. 동일 PC는 127.0.0.1, PC 간 테스트는 0.0.0.0을 사용합니다. \endif \if EN Gets or sets the bind address; use 127.0.0.1 locally and 0.0.0.0 across PCs. \endif

Port Property

\if KO 서버 포트를 가져오거나 설정합니다. \endif \if EN Gets or sets the server port. \endif

MitsubishiMcSubCommand

Bit Field

\if KO 비트 디바이스 접근입니다. \endif \if EN Bit-device access. \endif

Word Field

\if KO 워드 디바이스 접근입니다. \endif \if EN Word-device access. \endif

MitsubishiMcTcpSimulatorServer

#ctor Method

\if KO 새 메모리와 지정한 옵션으로 TCP 서버를 초기화합니다. \endif \if EN Initializes the TCP server with new memory and specified options. \endif

options— \if KO 시뮬레이터 옵션입니다. \endif \if EN The simulator options. \endif
#ctor Method

\if KO 공유 메모리와 옵션으로 TCP 서버를 초기화합니다. \endif \if EN Initializes the TCP server with shared memory and options. \endif

options— \if KO 옵션입니다. \endif \if EN The options. \endif
memory— \if KO 공유 메모리입니다. \endif \if EN The shared memory. \endif
AcceptLoopAsync Method

\if KO TCP 클라이언트를 수락하고 처리 작업을 추적합니다. \endif \if EN Accepts TCP clients and tracks handling tasks. \endif

cancellationToken— \if KO 취소 토큰입니다. \endif \if EN The cancellation token. \endif

반환: \if KO 수락 루프입니다. \endif \if EN The acceptance loop. \endif

DisposeAsync Method

\if KO 프로토콜 이벤트 구독을 해제하고 서버를 중지합니다. \endif \if EN Unsubscribes protocol events and stops the server. \endif

반환: \if KO 비동기 해제 작업입니다. \endif \if EN The asynchronous disposal operation. \endif

HandleClientAsync Method

\if KO 한 클라이언트의 Binary 3E 프레임을 반복 처리합니다. \endif \if EN Repeatedly handles Binary 3E frames for one client. \endif

client— \if KO 클라이언트입니다. \endif \if EN The client. \endif
cancellationToken— \if KO 취소 토큰입니다. \endif \if EN The cancellation token. \endif

반환: \if KO 처리 작업입니다. \endif \if EN The handling task. \endif

OnProtocolStatusChanged Method

\if KO 프로토콜 상태 메시지를 서버 이벤트로 전달합니다. \endif \if EN Forwards a protocol status message through the server event. \endif

sender— \if KO 이벤트 원본입니다. \endif \if EN The source. \endif
e— \if KO 상태 메시지입니다. \endif \if EN The status message. \endif
ParseAddress Method

\if KO 바인딩 호스트를 IP 주소로 변환하며 잘못되면 Any를 사용합니다. \endif \if EN Converts a bind host to an IP address, using Any when invalid. \endif

host— \if KO 호스트입니다. \endif \if EN The host. \endif

반환: \if KO IP 주소입니다. \endif \if EN The IP address. \endif

ReadExactlyAsync Method

\if KO 대상 버퍼가 찰 때까지 스트림을 읽습니다. \endif \if EN Reads until the destination buffer is full. \endif

stream— \if KO 스트림입니다. \endif \if EN The stream. \endif
buffer— \if KO 버퍼입니다. \endif \if EN The buffer. \endif
cancellationToken— \if KO 취소 토큰입니다. \endif \if EN The cancellation token. \endif

반환: \if KO 읽기 작업입니다. \endif \if EN The read task. \endif

ReceiveBinary3EFrameAsync Method

\if KO 헤더의 데이터 길이에 맞춰 완전한 Binary 3E 요청을 읽습니다. \endif \if EN Reads a complete Binary 3E request using its header length. \endif

stream— \if KO 스트림입니다. \endif \if EN The stream. \endif
cancellationToken— \if KO 취소 토큰입니다. \endif \if EN The cancellation token. \endif

반환: \if KO 요청 프레임입니다. \endif \if EN The request frame. \endif

StartAsync Method

\if KO TCP 수신기와 수락 루프를 시작합니다. \endif \if EN Starts the TCP listener and acceptance loop. \endif

cancellationToken— \if KO 서버 수명 토큰입니다. \endif \if EN The server-lifetime token. \endif

반환: \if KO 시작 작업입니다. \endif \if EN The start task. \endif

StopAsync Method

\if KO TCP 수신기를 중지하고 클라이언트 작업 종료를 기다립니다. \endif \if EN Stops the TCP listener and waits for client tasks. \endif

반환: \if KO 중지 작업입니다. \endif \if EN The stop task. \endif

IsRunning Property

\if KO 서버 실행 여부를 가져옵니다. \endif \if EN Gets whether the server is running. \endif

_acceptTask Field

\if KO accept Task 값을 보관합니다. \endif \if EN Stores the accept task value. \endif

_clientTasks Field

\if KO client Tasks 값을 보관합니다. \endif \if EN Stores the client tasks value. \endif

_cts Field

\if KO cts 값을 보관합니다. \endif \if EN Stores the cts value. \endif

_listener Field

\if KO listener 값을 보관합니다. \endif \if EN Stores the listener value. \endif

_options Field

\if KO options 값을 보관합니다. \endif \if EN Stores the options value. \endif

_protocol Field

\if KO protocol 값을 보관합니다. \endif \if EN Stores the protocol value. \endif

_syncRoot Field

\if KO sync Root 값을 보관합니다. \endif \if EN Stores the sync root value. \endif

StatusChanged Event

\if KO 서버 상태 메시지가 변경될 때 발생합니다. \endif \if EN Occurs when the server status message changes. \endif

MitsubishiMcTransportType

Tcp Field

\if KO TCP 전송을 사용합니다. \endif \if EN Uses TCP transport. \endif

Udp Field

\if KO UDP 전송을 사용합니다. \endif \if EN Uses UDP transport. \endif

MitsubishiMcUdpSimulatorServer

#ctor Method

\if KO 새 메모리와 옵션으로 UDP 서버를 초기화합니다. \endif \if EN Initializes the UDP server with new memory and options. \endif

options— \if KO 옵션입니다. \endif \if EN The options. \endif
#ctor Method

\if KO 공유 메모리와 옵션으로 UDP 서버를 초기화합니다. \endif \if EN Initializes the UDP server with shared memory and options. \endif

options— \if KO 옵션입니다. \endif \if EN The options. \endif
memory— \if KO 공유 메모리입니다. \endif \if EN The shared memory. \endif
DisposeAsync Method

\if KO 프로토콜 이벤트 구독을 해제하고 서버를 중지합니다. \endif \if EN Unsubscribes protocol events and stops the server. \endif

반환: \if KO 비동기 해제 작업입니다. \endif \if EN The asynchronous disposal operation. \endif

OnProtocolStatusChanged Method

\if KO 프로토콜 상태 메시지를 서버 이벤트로 전달합니다. \endif \if EN Forwards a protocol status message through the server event. \endif

sender— \if KO 이벤트 원본입니다. \endif \if EN The source. \endif
e— \if KO 상태 메시지입니다. \endif \if EN The status message. \endif
ParseAddress Method

\if KO 바인딩 호스트를 IP 주소로 변환하며 잘못되면 Any를 사용합니다. \endif \if EN Converts a bind host to an IP address, using Any when invalid. \endif

host— \if KO 호스트입니다. \endif \if EN The host. \endif

반환: \if KO IP 주소입니다. \endif \if EN The IP address. \endif

ReceiveLoopAsync Method

\if KO UDP 요청 데이터그램을 받아 실행하고 원격 끝점에 응답합니다. \endif \if EN Receives UDP request datagrams, executes them, and replies to remote endpoints. \endif

cancellationToken— \if KO 취소 토큰입니다. \endif \if EN The cancellation token. \endif

반환: \if KO 수신 루프입니다. \endif \if EN The receive loop. \endif

StartAsync Method

\if KO UDP 수신기와 수신 루프를 시작합니다. \endif \if EN Starts the UDP receiver and receive loop. \endif

cancellationToken— \if KO 서버 수명 토큰입니다. \endif \if EN The server-lifetime token. \endif

반환: \if KO 시작 작업입니다. \endif \if EN The start task. \endif

StopAsync Method

\if KO UDP 수신기를 중지하고 수신 작업 종료를 기다립니다. \endif \if EN Stops the UDP receiver and waits for the receive task. \endif

반환: \if KO 중지 작업입니다. \endif \if EN The stop task. \endif

IsRunning Property

\if KO 서버 실행 여부를 가져옵니다. \endif \if EN Gets whether the server is running. \endif

_cts Field

\if KO cts 값을 보관합니다. \endif \if EN Stores the cts value. \endif

_options Field

\if KO options 값을 보관합니다. \endif \if EN Stores the options value. \endif

_protocol Field

\if KO protocol 값을 보관합니다. \endif \if EN Stores the protocol value. \endif

_receiveTask Field

\if KO receive Task 값을 보관합니다. \endif \if EN Stores the receive task value. \endif

_udpClient Field

\if KO udp Client 값을 보관합니다. \endif \if EN Stores the udp client value. \endif

StatusChanged Event

\if KO 서버 상태 메시지가 변경될 때 발생합니다. \endif \if EN Occurs when the server status message changes. \endif

TcpMitsubishiMcTransport

CloseCoreAsync Method

\if KO 내부 TCP 스트림과 클라이언트를 닫고 참조를 지웁니다. \endif \if EN Closes the internal TCP stream and client and clears references. \endif

반환: \if KO 완료된 작업입니다. \endif \if EN A completed task. \endif

ConnectAsync Method

\if KO 제한 시간 내 대상 TCP 끝점에 연결합니다. \endif \if EN Connects to the target TCP endpoint within the timeout. \endif

host— \if KO 호스트입니다. \endif \if EN The host. \endif
port— \if KO 포트입니다. \endif \if EN The port. \endif
timeoutMs— \if KO 제한 시간입니다. \endif \if EN The timeout. \endif
cancellationToken— \if KO 취소 토큰입니다. \endif \if EN The cancellation token. \endif

반환: \if KO 연결 결과입니다. \endif \if EN The connection result. \endif

DisconnectAsync Method

\if KO TCP 스트림과 클라이언트를 닫습니다. \endif \if EN Closes the TCP stream and client. \endif

cancellationToken— \if KO 취소 토큰입니다. \endif \if EN The cancellation token. \endif

반환: \if KO 연결 해제 결과입니다. \endif \if EN The disconnection result. \endif

DisposeAsync Method

\if KO 연결과 동기화 리소스를 비동기 해제합니다. \endif \if EN Asynchronously releases connection and synchronization resources. \endif

반환: \if KO 비동기 해제 작업입니다. \endif \if EN The asynchronous disposal operation. \endif

ReadExactlyAsync Method

\if KO 버퍼가 찰 때까지 스트림을 반복해서 읽습니다. \endif \if EN Repeatedly reads until the buffer is full. \endif

stream— \if KO 스트림입니다. \endif \if EN The stream. \endif
buffer— \if KO 대상 버퍼입니다. \endif \if EN The destination buffer. \endif
cancellationToken— \if KO 취소 토큰입니다. \endif \if EN The cancellation token. \endif

반환: \if KO 비동기 읽기 작업입니다. \endif \if EN The asynchronous read operation. \endif

ReceiveBinary3EFrameAsync Method

\if KO Binary 3E 헤더와 선언된 길이의 본문을 정확히 읽습니다. \endif \if EN Reads the Binary 3E header and exactly its declared body length. \endif

stream— \if KO 네트워크 스트림입니다. \endif \if EN The network stream. \endif
cancellationToken— \if KO 취소 토큰입니다. \endif \if EN The cancellation token. \endif

반환: \if KO 완전한 응답 프레임입니다. \endif \if EN The complete response frame. \endif

SendAndReceiveAsync Method

\if KO Binary 3E 요청을 보내고 길이 헤더에 따라 완전한 응답을 읽습니다. \endif \if EN Sends a Binary 3E request and reads the complete length-prefixed response. \endif

requestFrame— \if KO 요청 프레임입니다. \endif \if EN The request frame. \endif
receiveTimeoutMs— \if KO 수신 제한 시간입니다. \endif \if EN The receive timeout. \endif
retryCount— \if KO TCP에서 사용하지 않는 재시도 수입니다. \endif \if EN The retry count unused by TCP. \endif
cancellationToken— \if KO 취소 토큰입니다. \endif \if EN The cancellation token. \endif

반환: \if KO 응답 프레임 결과입니다. \endif \if EN The response-frame result. \endif

ThrowIfDisposed Method

\if KO 전송이 이미 해제되었으면 예외를 발생시킵니다. \endif \if EN Throws when the transport is disposed. \endif

IsConnected Property

\if KO TCP 클라이언트와 스트림의 연결 여부를 가져옵니다. \endif \if EN Gets whether the TCP client and stream are connected. \endif

_disposed Field

\if KO disposed 값을 보관합니다. \endif \if EN Stores the disposed value. \endif

_stream Field

\if KO stream 값을 보관합니다. \endif \if EN Stores the stream value. \endif

_syncLock Field

\if KO sync Lock 값을 보관합니다. \endif \if EN Stores the sync lock value. \endif

_tcpClient Field

\if KO tcp Client 값을 보관합니다. \endif \if EN Stores the tcp client value. \endif

UdpMitsubishiMcTransport

CloseCoreAsync Method

\if KO 내부 UDP 클라이언트를 닫고 참조를 지웁니다. \endif \if EN Closes the internal UDP client and clears references. \endif

반환: \if KO 완료된 작업입니다. \endif \if EN A completed task. \endif

ConnectAsync Method

\if KO 호스트를 확인하고 연결된 UDP 클라이언트를 준비합니다. \endif \if EN Resolves the host and prepares a connected UDP client. \endif

host— \if KO 호스트입니다. \endif \if EN The host. \endif
port— \if KO 포트입니다. \endif \if EN The port. \endif
timeoutMs— \if KO 유효성 검사에 사용하는 연결 제한 시간입니다. \endif \if EN The connection timeout used for validation. \endif
cancellationToken— \if KO 취소 토큰입니다. \endif \if EN The cancellation token. \endif

반환: \if KO 준비 결과입니다. \endif \if EN The preparation result. \endif

DisconnectAsync Method

\if KO UDP 클라이언트와 원격 끝점 정보를 해제합니다. \endif \if EN Releases the UDP client and remote endpoint information. \endif

cancellationToken— \if KO 취소 토큰입니다. \endif \if EN The cancellation token. \endif

반환: \if KO 연결 해제 결과입니다. \endif \if EN The disconnection result. \endif

DisposeAsync Method

\if KO UDP 클라이언트와 동기화 리소스를 비동기 해제합니다. \endif \if EN Asynchronously releases the UDP client and synchronization resources. \endif

반환: \if KO 비동기 해제 작업입니다. \endif \if EN The asynchronous disposal operation. \endif

SendAndReceiveAsync Method

\if KO UDP 요청을 보내고 제한 시간 실패 시 구성된 횟수만큼 재시도합니다. \endif \if EN Sends a UDP request and retries timeout failures as configured. \endif

requestFrame— \if KO 요청 프레임입니다. \endif \if EN The request frame. \endif
receiveTimeoutMs— \if KO 수신 제한 시간입니다. \endif \if EN The receive timeout. \endif
retryCount— \if KO 재시도 횟수입니다. \endif \if EN The retry count. \endif
cancellationToken— \if KO 취소 토큰입니다. \endif \if EN The cancellation token. \endif

반환: \if KO 응답 데이터그램 결과입니다. \endif \if EN The response-datagram result. \endif

ThrowIfDisposed Method

\if KO 전송이 이미 해제되었으면 예외를 발생시킵니다. \endif \if EN Throws when the transport is disposed. \endif

IsConnected Property

\if KO UDP 클라이언트와 원격 끝점 준비 여부를 가져옵니다. \endif \if EN Gets whether the UDP client and remote endpoint are ready. \endif

_disposed Field

\if KO disposed 값을 보관합니다. \endif \if EN Stores the disposed value. \endif

_remoteEndPoint Field

\if KO remote End Point 값을 보관합니다. \endif \if EN Stores the remote end point value. \endif

_syncLock Field

\if KO sync Lock 값을 보관합니다. \endif \if EN Stores the sync lock value. \endif

_udpClient Field

\if KO udp Client 값을 보관합니다. \endif \if EN Stores the udp client value. \endif

MaximumMcResponseFrameLength Field

\if KO Maximum Mc Response Frame Length 값을 보관합니다. \endif \if EN Stores the maximum mc response frame length value. \endif