본문 바로가기
반응형

프로그래밍54

[ FA ] 인피콘 ISH2000, 수소 기밀성 검사기 시리얼 통신 하기 인피콘 ISH2000의 장치로부터 통신으로 데이터를 수집하기 위한 목적으로 제작한 프로그램에 대하여 통신 연결 방법 및 내용을 공유합니다. 시리얼 통신 포트 연결(후면에 있음) 매뉴얼에 보시면 통신하고자 하는 방법에 따라 Baud를 다르게 설정하여 명령을 전송할 수 있습니다. 프로그램 통신을 위해서는 수집 시작명령 전송 / 데이터 수신 이 목적이므로 아래의 설정을 따르도록 합니다. 케이블은 1:1 다이렉트 케이블을 이용합니다. Baud : 115200 StopBit : 1 DataBit : 8 패리티 : None 통신 명령 순서 1. 측정 시작(M) 2. 수신 데이터 확인 : (투과량 cc/hr) 중요! 데이터가 0인 경우에는 N 명령(프린터)을 계속 전송하여 수신 데이터가 0이 아닌 경우 반복 정지 수.. 2022. 1. 7.
[ C# ] 누겟 라이브러리 없이 텔레그램 메시지 보내기 누겟의 텔레그램 봇은 프레임워크 4.6 이상의 버전을 지원하여, 하위 버전에서는 사용이 불가하여 라이브러리 없이 프로그램 코드로 전송하는 방법을 알고자 프로그램 테스트를 진행 하였습니다. ▼ 텔레그램 설정은 아래의 페이지를 참고 바랍니다. 2021.12.24 - [파이썬/파이썬] - [ 파이썬 ] 텔레그램 봇 만들기 [ 파이썬 ] 텔레그램봇 만들기 파이썬 작업을 위한 텔레그램 봇에 대한 설정 및 API 키 확인 방법에 대하여 공유하고자 합니다. 먼저 텔레그램 봇 다운로드 후 가입을 진행해주십시오. https://desktop.telegram.org/ 텔레그램 데스크톱 jeong-f.tistory.com 앞서 제작한 텔레그램 봇에서 생성된 값을 기준으로 사용될 Http token는 아래와 같습니다. Htt.. 2022. 1. 4.
[ C# ] LS산전 PLC 이더넷 통신 테스트 프로그램-소스 앞서 프로그램에서 LS산전 PLC와의 통신프로그램 소스 요청이 있어 사용법 및 소스코드를 공유하고자 합니다. 접속 대상 PLC는 192.168.1.10 및 2005 포트의 UDP 통신 설정을 해야 정상 동작이 가능합니다. PC의 경우 192.168.1.XX로 설정하시기 바랍니다. PLC 프로그램 설정 PC 프로그램 사용법 PLC 연결 해제 디바이스를 선택(P~R)을 선택한 후 시작 주소를 입력하고 [ 주소 이동 ] 버튼을 눌러 줍니다 로그 옵션은 사용용도에 따라 설정하시기 바랍니다. 연결이 되었고 주소를 선택하였으면 통신 상태에 따라 하단의 리스트에 램프가 점등됩니다. 데이터에서 1~F 중 하나를 더블클릭하면 해당 비트를 ON/OFF 할 수 있습니다. 데이터를 입력하고자 하면 DEC 또는 HEX를 더블클.. 2022. 1. 4.
[ FA ] 키엔스 고정스캐너 시리얼(이더넷) 통신 테스트 키엔스 고정 스캐너의 ON/OFF 기능을 통신으로 주고받는 부분에 대하여 공유하고자 합니다. 대상 모델은 SR750, SR700 모델입니다. 통신 설정 통신 속도 :115200,8, even,1bit 헤더: 없음 테이 데이터 : CR ON 명령 : LON OFF 명령 : LOFF 헤더 및 터미네이터 먼저 통신은 헤더+명령+터미네이터의 명령으로 나누어져 있으며, 헤더 및 터미네이터는 두 가지 방식으로 사용할 수 있습니다. 통신 설정 프로그램은 AutoIDNetworkNavigator에서 설정을 바꾸어 주어야 합니다. (없음) 명령 명령 바코드 ON/OFF 명령 모델 종류에 따라 차이는 있으나 ON/OFF 명령은 공통적으로 사용될 수 있습니다. 원격으로 설정은 보통 키고 끄는 작업을 하므로 두 가지의 명령으.. 2021. 12. 23.
시리얼 to 이더넷 컨버터 추천 장치를 구성할 때 이더넷을 지원하지 않고 시리얼 통신만 지원하는 장치를 사용하면 여러 대의 장치를 구성하는데 배선이나 거리의 제약을 받게 됩니다. 만약 여러 대의 시리얼 장치를 이용한다면 컴퓨터에 해당 개수 이상의 시리얼 포트를 확장하기 위해 MOXA나 232 카드를 추가로 설치해서 구성을 해야 하는 데 사용해보니 배선을 찾기도 어려울뿐더러 여러 대의 장치를 연결하게 되면 포트가 고장 나서 몇 개 포트는 사용하지 못하는 경우가 발생합니다. 몇 년 전에 시리얼 포트로 주문이 있어 사용을 해봤었는데 배선량도 감당하기 어려웠었습니다. 간결하게 장치를 구성해서 허브 하나만 설치하면 한 군데 이서 처리를 할 수 있을 것을.. 장치를 찾던 중 아래 모델을 찾았습니다. 시리얼 to 이더넷 컨버터 강원전자(넷메이트)에.. 2021. 12. 10.
[ C# ] LS 산전 PLC 이더넷 통신하기-응답 데이터 분석 PLC로부터 명령을 전송한 후 공통점을 비교하여 통신의 속도 향상을 위해 비동기적으로 처리하려고 하거나 코드의 량을 줄이기 위해 데이터 분석을 통해 데이터 처리 효율을 높일 수 있습니다. 아래 가장 많이 쓰는 읽기/ 쓰기 명령들을 비교를 먼저 해보고자 명령 내용들을 캡처해보았습니다. 직접 변수 연속 읽기 응답 직접 변수 개별 쓰기 응답 직접 변수 연속 쓰기 응답 정상 응답일 때 공통점 헤더 명령어(0x55 연속 읽기, 0x59 쓰기) 0x55/59로 읽은 것인지 쓴 것인지를 판단 데이터 타입(0x14블록 타입) 예약 영역(0x00 고정) 에러 상태 없으므로 0x00 블록수 명령 상의 블록 보통 1개 사용 읽은 데이터 개수(읽기 전송) 읽은 데이터(읽기 전용) 에러 응답일 때 공통점 헤더 명령어(0x55 .. 2021. 12. 7.
[ FA ] LS산전 PLC와 PC와 이더넷 통신 설정 LS 이더넷 타입 PLC는 자체 적으로 통신 기능을 가지고 있어 설정에서 변경만 해주면 PC와 통신이 가능합니다. 아래 설정을 따라가시면 통신 설정을 할 수 있습니다. 장치 소개 XGB / XGP 등 이더넷 통신을 지원하는 LS산전의 PLC를 준비합니다. 배선 전원부 전원 모듈에 AC 220V로 전원을 연결합니다. 통신부 이더넷 케이블을 PC와 연결하고 통신을 위한 세팅을 해야 합니다. 허브에 연결할 경우 추가적으로 터치 및 각종 컨트롤러와 통신이 가능합니다. 통신 설정 기본 네트워크에서 [ 내장 FEnet ]를 누르면 기본 설정 창이 띄워집니다. 국번 : 0 IP 주소 서버 모드 : XGT 서버 통신 테스트 테스트를 목적으로 직접 제작한 프로그램입니다. 주소는 192.168.1.10을 기본값으로 두었고.. 2021. 12. 7.
[ C# ] LS 산전 PLC 이더넷 통신 - 개별 쓰기 데이터 쓰기 명령에는 두 가지의 방법이 있으며 데이를 읽을 목적에 따라 개별과 연속으로 사용할 수 있습니다 개별 쓰기 : 여러 타입의 변수형을 쓸 수 있으며 16개의 블록(번지)을 쓸 수 있음 일반적으로 쓰기 명령에 사용 연속 : 바이트 형(최대 14000개)의 변수를 블록 단위로 쓸 수 있음 데이터 초기화를 할 경우에 유용함 통신 구성 데이터 읽기와 비슷한 형태이며, 보통 1개의 데이터를 쓰기를 하므로 1개의 영역을 읽는 다고 가정했을 때 고정되는 부분을 적색으로 표시하겠습니다. 명령어(2) : 0x0058 데이터 타입 : 0x00 비트(% MX0) , 0x01 바이트($MB0) 0x02 워드(% MW0), 0x03 더블 워드(% MD0) , 0x04 롱 워드(% ML0) 예약 영역 : 0x00 변수 .. 2021. 12. 7.
[ C# ] LS 산전 PLC 이더넷 통신하기 - 연속 읽기 앞서 만든 헤드 프레임 뒤에 전송 명령용 프레임 명령을 만들어야 합니다. 읽기 명령은 두 가지 방법이 있는데 개별과 연속의 차이는 개별은 여려 변수를 변경하면서 읽을 수 있고 읽을 데이터의 분포가 크고 데이터의 주소가 다른 경우에 유용 연속은 시작 번지를 지정하고 읽을 개수를 입력하면 연속으로 읽어 올 수 있습니다. 읽을 데이터의 량이 많고 번지가 고정인 경우 유용 일반적으로 한 개씩 읽는 개별 방식을 선호 하지만 데이터의 개수가 많았지만 통신도 많이 해야 되어 속도가 느려지는 단점이 있어 연속으로 바이트 형을 읽은 후 버퍼에 저장해두었다고 비트/워드/더블 워드로 형 변환해서 사용하게 되면 한 번의 통신으로 여러 정보를 한 번에 확인할 수 있습니다. 연속 읽기 명령 확인 고정되는 부분만 적색으로 표시하고.. 2021. 12. 7.
[ C# ] LS 산전 PLC 이더넷 통신-헤더 프레임 만들기 LS PLC의 데이터의 전송은 헤더 + 프레임(읽기/쓰기 명령)을 합쳐서 데이터를 전송하는 방식으로 데이터의 구조를 알아야 정상적으로 통신이 가능합니다, 읽기와 쓰기 명령에 공통적으로 들어가야 할 헤더를 만드는 법을 먼저 확인하고 읽기/쓰기 명령을 만들어 보도록 하겠습니다. 헤더 구조 데이터 헤더는 아래와 같으며 고정은 적색으로 표시하겠습니다. Compay ID(8): 고정값으로 "LSIS-XGT"를 입력합니다. Reserved(2) : 예약 영역으로 0x00 고정입니다 PLC Info(2) : 클라이언트로 접속할 것이므로 0x0000 고정입니다. CPU Info(1) : PLC 모델에 따라 다르나 XGK와 XGB는 0xA0를 쓰면 됩니다. Source of Frame(1) : 클라이언트 이므로 0x33.. 2021. 12. 7.
반응형