주요 콘텐츠

이 페이지는 기계 번역을 사용하여 번역되었습니다. 영어 원문을 보려면 여기를 클릭하십시오.

Simulink와 타깃 하드웨어 간 외부 모드 연결 설정

외부 모드 시뮬레이션의 경우, target 네임스페이스를 사용하여 Simulink®와 타깃 하드웨어 간의 연결을 설정할 수 있습니다.

이 다이어그램은 외부 모드 시뮬레이션의 컴포넌트에 대한 개요를 보여줍니다.

target 네임스페이스는 컴포넌트 구현을 위한 클래스를 제공합니다. 이 테이블에는 주요 클래스들이 나열되어 있습니다.

컴포넌트클래스목적
타깃 하드웨어target.BoardMATLAB®에게 타깃 하드웨어에 대한 설명을 제공해 주세요.
배포 툴 target.SystemCommandExecutionTool

이 클래스를 사용하여 다음을 수행할 수 있습니다:

  • 개발 컴퓨터에서 타깃 애플리케이션을 실행하기 위한 시스템 명령어를 캡처합니다.

  • 타깃 애플리케이션에 대한 실행 서비스 구현 내용을 설명하십시오.

  • 타깃 애플리케이션의 실행을 관리하는 툴에 MATLAB 서비스 인터페이스를 제공합니다.

모니터링 및 조정, 배포, 연결시작 함수를 제공하려면 "사용자 지정 하드웨어에서 실행" 앱에서 target.ExecutionTool를 사용해야 합니다.

target.ExecutionService
target.ExecutionTool
연결성 target.ExternalModeSimulink와 타깃 하드웨어 간의 데이터 전송을 위한 통신 프로토콜을 제공하십시오.
target.CommunicationInterface타깃 하드웨어에 통신 채널 및 rtiostream API (Embedded Coder) 구현에 대한 세부 정보를 제공하십시오.
target.TargetConnection개발 컴퓨터를 타깃 하드웨어에 연결하는 방법에 대해 자세히 설명하십시오.

XCP 외부 모드 시뮬레이션을 위한 연결 설정 사용자 지정

ERT(ert.tlc) 및 GRT(grt.tlc) 시스템 타깃 파일을 사용하여 생성된 코드의 경우, XCP 통신 프로토콜을 사용하는 외부 모드 시뮬레이션을 실행할 수 있습니다:

  • 개발 컴퓨터에서.

  • 지원 패키지를 사용하여 다른 타깃 하드웨어에서.

사용자 지정 대상 하드웨어용 시스템 타깃 파일이 ERT 또는 GRT 시스템 타깃 파일에서 파생된 경우, target 네임스페이스의 클래스를 사용하여 연결 설정을 사용자 지정하십시오. 예를 들어, target.ExternalMode, target.CommunicationInterface,

이 예제는 XCP 기반 외부 모드 시뮬레이션의 연결 설정을 사용자 지정하는 방법을 보여줍니다. Simulink와 타깃 하드웨어 간의 연결을 설정하려면:

  1.  보드 설명 생성하기

  2.  배포 툴 선택

  3.  target.ExecutionTool 사용법

  4.  target.SystemCommandExecutionTool 사용법

  5.  타깃 하드웨어용 통신 인터페이스 생성

  6.  통신 프로토콜 스택 지정

  7.  Simulink와 타깃 하드웨어 간에 연결을 설정합니다.

  8.  MATLAB 세션 간에 보드 및 연결 객체를 유지하도록 설정

  9.  모델에 사용할 보드 선택

  10.  Simulink와 타깃 하드웨어 간의 연결을 선택하십시오.

TCP/IP 또는 직렬 외부 모드 시뮬레이션을 위한 연결 설정 사용자 지정

TCP/IP 또는 직렬 외부 모드 시뮬레이션의 경우, 다음 단계를 거치는 워크플로를 통해 연결 설정을 사용자 지정할 수 있습니다:

  • 전송 및 통신 프로토콜을 구현합니다.

  • target 네임스페이스를 사용하여 타깃 애플리케이션의 실행 툴을 지정합니다.

Simulink와 타깃 하드웨어 간의 연결을 설정하려면, XCP 외부 모드 시뮬레이션을 위한 연결 설정 사용자 지정에 설명된 워크플로를 사용하되 다음 사항이 다릅니다:

실행 툴 템플릿

이 섹션에서는 target.ExecutionTool 서비스 인터페이스에 대한 의사코드 예제를 제공합니다. 이 툴은 타깃 하드웨어에서 애플리케이션을 시작하고 추적합니다.

classdef MyExecutionTool < target.ExecutionTool

  methods        
    function errFlag = startApplication(this)
      % Call "customDownloadTool" to download the application.
      [status, result] = ...
       system(sprintf('customDownloadTool %s', this.Application));
      if status == 0
        errFlag = false;                
      else
        disp(result);
        errFlag = true;
      end
    end

    function errFlag = stopApplication(~)
      % Add code here to stop the application, if possible.
      errFlag = false;
    end

    function [status, errFlag] = getApplicationStatus(~)
      % Add code here to return the application status, if known.
      status = target.ApplicationStatus.Unknown;
      errFlag = false;
    end
  end
end

참고 항목

도움말 항목

외부 웹사이트