Skip to content

Commit 9eae498

Browse files
committed
Doc: ReadME 작성
1 parent dd50764 commit 9eae498

File tree

2 files changed

+74
-1
lines changed

2 files changed

+74
-1
lines changed

ModBusSimMaster.csproj

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -18,4 +18,8 @@
1818
<PackageReference Include="System.IO.Ports" Version="8.0.0" />
1919
</ItemGroup>
2020

21+
<ItemGroup>
22+
<Folder Include="Doc\Img\" />
23+
</ItemGroup>
24+
2125
</Project>

README.md

Lines changed: 70 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1,70 @@
1-
# ModBusSimulator
1+
# ModBus Simulator
2+
3+
ModBus 통신을 체험해 볼 수 있는 간단한 시뮬레이터입니다. ModBus 프로토콜을 학습하기 위한 목적에서 개발된 이 프로젝트는 **ModBusSim Master****ModBusSim Slave** 애플리케이션으로 구성되어 있으며, C#을 사용해 각각 구현되어 ModBus 요청 및 응답의 순환 과정을 관찰할 수 있습니다.
4+
5+
## 목차
6+
7+
- [주요 기능](#주요-기능)
8+
- [설정 및 요구사항](#설정-및-요구사항)
9+
- [설치 방법](#설치-방법)
10+
- [사용 방법](#사용-방법)
11+
- [목적](#목적)
12+
- [예시 명령](#예시-명령)
13+
14+
15+
## 주요 기능
16+
17+
- **Master 애플리케이션**: C# WinForms로 작성된 애플리케이션으로, ModBus 요청 패킷을 Slave 애플리케이션에 전송하고 받은 응답 패킷을 화면에 출력합니다.
18+
- **Slave 애플리케이션**: C# 콘솔 앱으로 작성되어 Master의 요청을 수신하고, 가상 장치 클래스를 통해 요청된 데이터를 읽거나 쓰며 해당 응답 패킷을 반환합니다.
19+
- **COM 포트 통신**: 두 RS-232 COM 포트를 연결하여 하나의 PC에서 실제 ModBus 설정처럼 통신할 수 있도록 설계되었습니다.
20+
21+
## 설정 및 요구사항
22+
23+
1. **하드웨어**: 두 개의 RS-232 포트를 컴퓨터에 연결하고 각 포트에 서로 다른 COM 포트를 할당합니다.
24+
2. **소프트웨어**: 이 애플리케이션은 .NET 8이상이 필요합니다.
25+
26+
## 설치 방법
27+
28+
1. 이 저장소를 클론합니다:
29+
```bash
30+
git clone https://github.com/KwonYH-sky/ModBusSimulator.git
31+
```
32+
2. Visual Studio에서 솔루션을 열고 두 프로젝트를 빌드한 후 각각의 애플리케이션에 해당 COM 포트를 설정합니다.
33+
34+
## 사용 방법
35+
36+
1. **Slave 애플리케이션**(콘솔 앱)을 실행하고 특정 COM 포트에서 수신하도록 설정합니다.
37+
2. **Master 애플리케이션**(WinForms 앱)을 실행하고 Slave와의 통신을 위한 대응되는 COM 포트를 선택합니다.
38+
3. Master 애플리케이션이 ModBus 패킷을 Slave로 전송하면 Slave는 이에 맞는 응답을 반환합니다. 두 애플리케이션 모두에 패킷 정보가 출력되어 ModBus 데이터 교환 과정을 쉽게 파악할 수 있습니다.
39+
40+
## 목적
41+
42+
이 시뮬레이터는 ModBus를 처음 접하는 학습자에게 프로토콜의 작동 방식을 간단히 체험할 수 있게 합니다. 패킷 처리와 데이터 교환의 기본 과정을 확인할 수 있어 ModBus 통신을 이해하기 위한 좋은 입문 도구입니다.
43+
44+
## 예시 명령
45+
46+
Master는 다음 명령을 전송할 수 있습니다:
47+
- Coil 상태 읽기 (기능 코드: 0x01)
48+
- Input 상태 읽기 (기능 코드: 0x02)
49+
- Holding 레지스터 읽기 (기능 코드: 0x03)
50+
- Input 레지스터 읽기 (기능 코드: 0x04)
51+
- 단일 Coil 쓰기 (기능 코드: 0x05)
52+
- 단일 레지스터 쓰기 (기능 코드: 0x06)
53+
- 여러 Coil 쓰기 (기능 코드: 0x0F)
54+
- 여러 레지스터 쓰기 (기능 코드: 0x10)
55+
56+
## 기여 방법
57+
58+
이 저장소를 포크하거나 이슈를 보고하거나 개선을 위한 풀 리퀘스트를 제출해 주세요. ModBus 학습자에게 더 유용한 시뮬레이터가 될 수 있도록 여러분의 기여를 환영합니다!
59+
60+
## 라이선스
61+
62+
이 프로젝트는 MIT 라이선스에 따라 배포됩니다.
63+
64+
65+
## 연락처
66+
67+
Email: yhoung11@gmail.com
68+
69+
---
70+

0 commit comments

Comments
 (0)