[HMI]InTouch로 응용프로그램 만들기

정제철·2023년 5월 28일
0

PLC와 HMI

목록 보기
9/9
post-thumbnail

썸네일은 조세호님이 성형외과에 방문 후 차은우님이 되어 나오는 컨베이어 벨트를 만들었습니다.

📢InTouch로 응용프로그램 만들기

  • InTouch를 사용하여 타이머, 스톱워치, 컨베이어 벨트를 만들어보고, I/O 드라이버를 사용하여 공유 화면에 출력을 해보려고 한다.

📌1. 타이머

  • 좌측에 숫자입력기에서 숫자를 입력하면 오른쪽 타이머에서 숫자가 표시된다. 그리고 오른쪽 상단에 버튼을 누르면 타이머가 실행된다. 버튼을 한번더 누르면 일시정지가 된다.
  • 이 프로그램을 돌리려면 스크립트를 활용하여 버튼을 눌렀을 때 각 min,sec.msec의 범위를 지정해줘야한다.
  • 타이머프로그램의 스크립트 내용이다.
  • 기본적인 구성은 타이머와 같고 min, sec, msec 모두 0 이될 경우 알람이 울리도록 설정해줬다.

📌2. 스톱워치

  • 타이머와 같은 형식으로 스톱워치 기능도 만들수 있다.
  • 스크립트만 수정해주면 된다.
  • 위와 같은 내용으로 스크립트를 설정해준다. msec가 9를 넘게되면 sec가 올라가고 sec이 59를 넘을 경우 min이 올라가는 일반적인 구조를 가지고있다.

📌3. 컨베이어 벨트

완성 영상이다. 컨베이어 벨트를 빠져나와서 칸으로 들어가고 다른 오브젝트로 변하여 다시 컨베이어 벨트 안으로 들어간다.

  • interger을 옮겨서 위치를 옮길 수 있다.
  • speed를 사용하여 속도를 조절할 수 있다.

  • window script를 사용하여 object가 끝에 도달했을 때 다시 0으로 바꿔서 자동으로 돌아 갈 수 있도록 조건을 달아줬다.

애니메이션 링크 상세 내역이다.

  • object 1 : 먼저 위치를 상->하 이동시키고, size는 상하를 이동하는 동안 커지게 된다. 그리고 좌->우로 이동시킨다.
  • object 2 : 좌 -> 우로 이동시키고, 하-> 상으로 위치를 이동시킨다.
    이때 하 -> 상으로 크기가 줄어들게 된다.

📌4. 통신

📍PLC와의 통신

• 산업 현장에서 온도, 로직 등의 정보를 입력 받아 외부 장치 제어
• PLC에서 입력되거나 출력되는 각각의 데이터 : I/O
• 온도, 모터 구동, .. : 실질적인 데이터
• 내부 연산을 위해서만 동작하는 데이터도 있습니다

📍I/O 드라이버

• 산업용 자동화/ IoT를 위한 연결 플랫폼
• HMI와 직접 통신
• PLC와 HMI는 직접 통신하는 것이 아니라 중간에 I/O 드라이버가 통역 역할을
해줍니다.
• PLC와 HMI 가 사용하는 프로토콜이 다르기 때문이예요.
• InTouch는 PLC와 통신하는 것이 아닌 I/O 드라이버와 통신

📍인터치에서의 통신 설정

• Node name (통신하고자 하는 컴퓨터 이름/IP)
• Application name (통신하고자 하는 컴퓨터의 애플리케이션 이름)
• Topic name (사용자가 필요에 의해 만든 논리적 블록으로, 태그마다 통신
방법, 속도 등 통신을 다르게 하고 싶을 때 다르게 설정)
• Item name(통신하고자 하는 메모리 주소 혹은 태그(변수) 이름)

📍인터치에서의 통신 설정

• Access Name
• Node Name
• Application Name
• Topic Name
• 위의 세 개를 묶어서 Access Name이라고 부릅니다.
• HMI 와 I/O 드라이버가 같은 PC에 있다면 Node Name을 빈 칸으로
두고 설정해도 되지만 나머지 Name은 설정해줘야 합니다.
• I/O 드라이버는 PLC와 같은 PC에 있을 수도 있고, HMI 와 같은 PC에
있을 수도 있습니다

📍실제 시현

  • 강사님의 컴퓨터와 연결을 시도해봤다.
  • 각 name 주소를 받아서 직접 입력했다.

    • Node name (통신하고자 하는 컴퓨터 이름/IP)
    • Application name (통신하고자 하는 컴퓨터의 애플리케이션 이름)
    • Topic name (사용자가 필요에 의해 만든 논리적 블록으로, 태그마다 통신
    방법, 속도 등 통신을 다르게 하고 싶을 때 다르게 설정)

    • Item name(통신하고자 하는 메모리 주소 혹은 태그(변수) 이름)

📍출력화면

  • 준비된 강사님의 화면에 출력을 시도하여 완료된 모습이다.

    이름을 직접 입력하여 강사님의 컴퓨터 출력 화면에 출력하였다.

📢마치며

  • InTouch를 사용해봤는데 xg5000보다 더 사용하기에 기능이 다양한 것 같다.
    데모 버전이었기에 PLC와 연동하지는 못했지만 기능도 다양하고 작화되었을때 보기에도 직관적이었다.
  • ✍HMI 작화를 해보면서 인터페이스를 구성하는 과정을 알게 되었는데, 이 과정에서 몇 가지 중요한 깨달음을 얻었습니다.
    • 📝첫째, 사용자의 편의성을 가장 크게 고려해야 한다는 것이다. 인터페이스를 사용하는 사용자들의 편의와 효율성을 고려하여 디자인해야 한다
    • 📝둘째, 디자인 요소와 기능은 조화를 이루어야 한다는 것이다. 인터페이스는 시각적인 디자인뿐만 아니라 기능과의 일관성을 유지하고, 적절한 아이콘과 색상등을 사용하여 사용자가 직관적으로 인터페이스를 이해하고 사용할 수 있도록 해야 한다.
    • 📝셋째, 비슷한 기능을 하는 요소들은 일관된 디자인과 동작 방식을 가져서 일관성을 유지해야한다. 이를 통해 사용자는 한 번 익힌 방식을 여러 상황에서 재사용할 수 있고, 사용자의 혼란을 최소화 할 수 있다.
    • 📝마지막으로는 내가 지키지 못한 간결성과 직관성인 것 같다. 인터페이스는 사용자가 필요로 하는 정보와 기능을 명확하게 전달해야 하는데 나는 복잡하고 재미에 치중한 디자인을 사용하였기에 사용자의 이해를 방해하고 오류를 유발할 수 있다. 그러므로 이는 피해야할 것이다.
profile
성공의 반대는 실패가 아닌 도전하지 않는 것이다.

0개의 댓글