Cognex Insight에서는 Serial Native Commands라는 명령어 모음으로 Tcp/ip 및 Serial 통신을 이용해서 값을 주고 받습니다

 

프로젝트에서 많이 쓰이는 것은 장비 PLC나 보드와의 Serial통신이나 PC프로그램과의 Tcp 통신이 있겠죠

 

그 커맨드 중에 가장 보편적으로 쓰이는 명령어에 대해 알아보겠습니다


 카메라 접속하기

 

텔넷으로 카메라 ip에 접속하면 로그인 화면이 출력됩니다

 

Insight Explorer 상에 설정된 사용자 접근 설정 계정 중 하나로 로그인 합니다

 

로그인이 정상적으로 되면 "User Logged In" 이라는 메세지가 출력됩니다

 

( 기본 설정으로 시작하셨다면 ID : admin , Password는 없으므로 그냥 엔터치면 됩니다 )

 

 

 

 

 트리거 신호 보내기

A0셀을 더블클릭하여 <그림3> 과 같이 Property Sheet를 들어가서 Trigger 를 Manual로 변경합니다

 

Insight 도움말에서 Set Event 를 찾아 보면 <그림4> 와 같은 Inputs 구문을 확인할 수 있습니다

SE 뒤에 8을 붙이면 이미지 한장을 취득하고 스프레드 시트를 업데이트 합니다

그림 4

 

 

SE8 명령을 보낸 후 정상적으로 동작이 완료 되면 Outputs 구문의 1이 리턴 됩니다

 

 

 소프트웨어 온/오프라인

 

장비 동작 중에 카메라의 온/오프를 제어해야 하는 경우에 쓰며

장비가 Explorer상에서 온라인이 되어야만 명령어가 동작합니다

Set Online I/O 도움말

온라인이 아닌 경우에 명령어를 보냈을 경우 -5가 리턴됩니다

 

온라인일 경우에 SO0 명령을 보낸 경우 1이 리턴되면서 인사이트 온/오프 확인 창에 메세지가 나타납니다

 

다시 SO1 명령을 보내면 1이 리턴되면서 인사이트 창에 정상적으로 온라인 메세지가 나타납니다

'Cognex > Insight-Explorer' 카테고리의 다른 글

cvsinsightdisplay 셀 값 가져오기  (0) 2019.06.03
cvsinsightdisplay 접속하기  (2) 2019.06.03

우선 Cognex에서 제공하는 Insight Explorer 버전에 맞는 SDK를 설치합니다

SDK가 설치되어 있지 않은 경우에는 셀값을 가져오는 구문이 동작하지 않습니다

 

 EasyBuilder → SpreadSheet

 

메뉴 - View - SpreadSheet 를 클릭하여 셀기반 뷰로 전환합니다

 

 셀 값 가져오기

E2셀에 1을 입력합니다

 

다음은 E2번 셀에 있는 1.000이라는 값을 가져오는 함수 예시입니다

string cellValue = cvsInSightDisplay1.Results.Cells["E2"].Text;

 

'Cognex > Insight-Explorer' 카테고리의 다른 글

데이터 통신 - Serial Native Commands  (0) 2019.06.12
cvsinsightdisplay 접속하기  (2) 2019.06.03

 

 

 

 Visual Studio에서 cvsinsightdisplay control 등록

 

도구 상자 - 마우스 오른쪽 - 항목 선택

 

 

도구 상자에 등록된 CvsInsightDisplay를 Form위에 드래그 앤 드롭

 

 Connect 함수

 

 

 

4. Connect 파라미터

   - hostName :

                     코그넥스 카메라의 DNS Name을 쓰거나 IP를 직접 입력하는 방법이 있습니다

                     보통 장비에 카메라를 여러대 연결하는 경우 고정IP를 사용하여 IP주소로 구별하는 경우가

                     많기 때문에 IP이름을 넣는 것이 보다 편합니다.

                     

   - userName, password : 

                     Insight-Explorer 의 Sensor - User Access Settings 창에서 설정 변경을 할 수 있습니다

     

   - forceConnect :

                     false일 때는 제어권을 가져올 때 (connect 할 때) 다른 제어자가 있을 경우

                     가져와도 되는지에 대한 여부를 묻는 창이 나오지만 true일 때는 무시하고 바로 연결이 됩니다.

                     단, 에뮬레이터로 테스트 할 경우엔 false를 해도 true로 동작 합니다. 

                     

5. 예시) 192.168.0.11 아이피를 가지고 있는 카메라에 admin 계정으로 접속하는 경우

//IP = 192.168.0.11 , ID = admin , Password = 없음, 강제접속여부 = false
CvsInSightDisplay1.Connect("192.168.0.11", "admin", "", false); 

                  

                     

'Cognex > Insight-Explorer' 카테고리의 다른 글

데이터 통신 - Serial Native Commands  (0) 2019.06.12
cvsinsightdisplay 셀 값 가져오기  (0) 2019.06.03

+ Recent posts