Microsoft MVP성태의 닷넷 이야기
글쓴 사람
이창석 (keycs91 at naver.com)
홈페이지
첨부 파일
 

안녕하세요 얼떨결에 맡게된 업무라 너무 두서없이 진행 하게 되었습니다 ㅜㅜ

윈도우 폼으로 RS485 통신으로 값을 받아 처음값은 저장하고 그 값 기준으로 비교하여 합불 판정을 내는 프로그램을 만들고 있습니다.

문제는 센서>PC>PLC 순으로 진행 된다면

합불 판정시 PLC에 신호를 날려줘야 하는데 RS485 통신은 1:1 통신이라 PC에서 어떻게 연결을 해야할지 감이 오지 않습니다.

다른 통신으로 날려줘야 하는것인지 아니면 센서> PLC > pC 순으로 데이터를 받아서 처리하는게 쉬운것인지 모르겠습니다.

이런 경우 가능하긴 할까요? ㅜㅜ

가능하다면 최대한 자료를 찾아 공부하여 만들어 보겠습니다!!

답변 주시면 감사하겠습니다.









[최초 등록일: ]
[최종 수정일: 6/1/2021]


비밀번호

댓글 작성자
 



2021-06-01 05시21분
개인적으로 현업에서의 직렬 통신은 경험이 없습니다. 단지, 검색을 해보면 RS485의 경우 다중 디바이스가 연결될 수 있다고 하며,

RS-485 시리얼 통신(Serial Communication)
; https://blog.naver.com/k_dynamic/220920194625

기기 간의 구분은 서로 전송하는 데이터에서 임의로 선택하는 듯합니다. 이에 관해서는 다음의 글을 참고하시면 될 듯합니다.

[C#윈폼74] 아두이노와 RS485toUSB로 1:N통신 1편! 튜토리얼, LED, FND모듈(TM1637) 제어해보기!(녹칸다/포로리야공대가자)
; https://bota.tistory.com/1482

위의 글에 보면 PC와 아두이노 3대를 연결하는 것이 나오는데요. 각각의 아두이노가 실행할 sketch 프로그램(C#74-2-1.txt, C#74-2-2.txt, C#74-2-3.txt)을 보면 Serial이 읽어들인 데이터의 0번째 인덱스의 값으로 자신에게 들어온 데이터가 맞는지 체크하는 코드가 있습니다.

그런 맥락으로 보면, 센서가 보내는 데이터 규격이 있을 것이고 그것이 PC에 연결된 RS485 COM port로 데이터가 들어오면 처리가 가능할 것입니다. 그런 다음, 원하는 시점에 PLC를 제어하기 위해 합의된 데이터 패킷 구조로 동일한 COM port에 쓰기를 합니다. 그럼, 어차피 센서는 해당 데이터를 무시할 것이고, PLC 기기는 그 데이터를 받아들여 처리를 진행할 것입니다.
정성태

1  2  3  4  5  6  [7]  8  9  10  11  12  13  14  15  ...
NoWriterDateCnt.TitleFile(s)
5777감사합니...12/29/20223471UI Thread에 Invoke 처리관련 궁금합니다. [3]
5776pdf맨12/28/20223276C# MouseUp Event + pdf [10]
5775민성12/28/20223051안녕하세요 Class 관련해서 예외처리를 하나로 받아낼수 있는 방법 [1]
5774중급12/27/20223798중급개발자란 어느 수준인지요? [4]
5773김영식12/26/20223397c# 압축파일 읽어 올 때 BinaryRead 한글 처리 문제 [1]
5772눈송이12/26/20223487Excel VSTO 는 왜 Net Core, Net 5, 6 버전을 사용하지 않나요? [2]
5771김훈12/26/20223603c# .net client application 망분리(내부망,외부망) 환경에서 의문의 외부사이트 호출 대기 [2]
5770lsh12/26/20223194클라우디움안에 있는 파일을 File.Copy 하고싶은데 코드로는 접근을 못하나요? [1]
5769울타리12/20/20223266Active Directory 2012R2 2016 또는 2019 마이그렝션 문의 드립니다. [1]
5768c++12/14/20224024Thread를 사용한 C++ DLL에 관련된 질문입니다. [6]파일 다운로드2
5767민성12/9/20223368안녕하세요 ashx로 화일을 저장하고 화일명을 리턴하는데요 [1]
5766김명훈12/9/20223514웹브라우저에서 묻지 않고 바로 다운로드 [2]
5765hong12/1/20223739Winform(.Net6) 클라이언트에서 SignalR Core 웹서버에 접속시 인증서 문제 [3]파일 다운로드1
5764요한11/30/20223959c++ 동일한 객체인지 비교 방법문의 [2]
5763고필석11/30/20223448시작하자마자 비정상 종료하는 프로세스에 대한 문제 해결 조언 요청 드립니다. [3]
5762흰털너부리11/30/20223442wpf mvvm ui update 로딩중 표시 [1]
5761민성11/29/20223339죄송하지만 한가지만 더 여쭈어 보겠습니다 [1]
5760민성11/29/20223274안녕하세요 [2]
5759문정환11/28/20223606c# socket 통신할때 빅엔디언으로 바꿔줘야 하나요? [1]
5758라떼11/28/20224784Linux 에서 winform UI 어플리케이션 실행하기 [3]
5757흰털너부리11/25/20223761asp.net core EF AddDbContext,AddDbContextFactory 차이점 알려주세요 [1]
5756흰털너부리11/25/20223337asp.net core web api에서 json 특정 property 무시하는 방법 문의 드립니다. System.Text.Json 사용중입니다. [1]
5755문정환11/24/20223697싱글스레드 프로그램도 컨텍스트 스위칭이 생길 수 있나요? [4]
5754초급11/24/20223535c# 소켓통신 [1]
5753흰털너부리11/24/20223341List와 ObservableCollection을 비교 해서 다른 값 추출 FirstOrDefault 객체 비교 [4]파일 다운로드1
5752푸헐11/15/20223476app.config 에 connectionStrings를 aspnet_regiis로 enctyption [4]
1  2  3  4  5  6  [7]  8  9  10  11  12  13  14  15  ...