다음을 통해 공유


MALT 시작

이 항목에서는 SENSORExplorer를 사용하여 센서를 보정하는 방법뿐만 아니라 MALT에 펌웨어를 업로드하는 방법을 정의합니다. 마이크로 컨트롤러를 제어하는 PC도 테스트 중인 시스템 또는 디바이스(SUT/DUT)인 것이 좋습니다.

MALT 방향 지정

MALT 앞면(AMBIENT 연결) MALT의 뒷면(화면 연결)
MALT Front MALT 뒤로

하드웨어 설정

MALT용 하드웨어 설정 그림

  1. USB 2.0 케이블 유형 A/B를 사용하여 Arduino Mega디바이스에 연결합니다.

  2. 무지개 리본 케이블을 사용하여 MALT 컨트롤러 보드를 Arduino Mega의 백 핀에 연결합니다.

  3. CAT5(x) 또는 CAT6(x) 케이블을 사용하여 MALT 컨트롤러 보드를 MALT 센서 보드에 연결합니다. (예: CAT5, CAT5e, CAT6 등)

    참고 항목

    MALT 컨트롤러 보드를 MALT 센서 보드와 연결하는 데 사용되는 이더넷 케이블에는 8개의 전선이 모두 있어야 하며 이러한 전선은 교차해서는 안 됩니다.

  4. Arduino Mega에서 다시 설정 단추를 누릅니다.

    다시 설정 단추입니다.

필요한 파일 가져오기

  1. 컴퓨터의 C 드라이브에 MALT라는 폴더를 만듭니다. 파일 경로는 C:\MALT여야 합니다. 필요한 모든 파일과 복제된 리포지토리를 여기에 배치합니다.

  2. busiotools 리포지토리를 MALT 폴더에 복제합니다. 파일 경로는 C:\MALT\busiotools여야 합니다.

  3. SerialCommandSoftI2CMaster 리포지토리를 MALT 폴더에 복제합니다. 파일 경로는 각각 C:\MALT\Arduino-SerialCommand 및 C:\MALT\SoftI2CMaster여야 합니다.

MALT 펌웨어 업데이트

MALT는 MALT 보드의 센서를 설정하고 상호 작용하는 펌웨어가 필요한 Arduino에 의해 실행됩니다.

  1. Arduino 명령줄 인터페이스를 획득하고 설정합니다.

    1. 최신 버전의 arduino-cli다운로드하여 컴퓨터에 저장합니다.

    2. 아직 없는 경우 PATH 변수에 arduino-cli를 추가합니다.

      참고 항목

      PATH 변수에 arduino-cli를 추가한 후 명령 프롬프트를 닫고 새 명령 프롬프트를 여세요.

    3. 관리자 권한 명령 프롬프트에서 다음을 실행합니다.

      arduino-cli config init
      arduino-cli core update-index
      arduino-cli core install arduino:avr
      
  2. 관리자 권한 명령 프롬프트에서 다음을 실행하여 Arduino 라이브러리 관리자에서 필요한 라이브러리를 추가합니다.

    arduino-cli lib install MatrixMath
    arduino-cli lib install AsyncDelay
    
  3. 관리자 권한 명령 프롬프트에서 다음을 실행하여 Arduino에 할당된 COM 포트를 식별합니다.

    arduino-cli board list
    
  4. 관리자 권한 명령 프롬프트에서 다음을 실행하고 COMX의 X를 이전 단계에서 식별된 COM 포트 번호로 바꿔 Arduino에 펌웨어를 업로드합니다.

    arduino-cli compile --fqbn arduino:avr:mega --port COMX --upload --library C:\MALT\Arduino-SerialCommand --library C:\MALT\SoftI2CMaster C:\MALT\busiotools\sensors\tools\MALT\Code\malt
    

    예상 출력은 다음과 같습니다.

    컴파일 및 업로드 프로세스의 예상 출력 스크린샷

MALT 색 센서 보정

MALT의 색상 센서는 실제 색상에 대해 보정된 공장이 아닙니다. 다음은 정확한 판독값을 얻기 위한 보정 프로세스입니다. 앰비언트 색 센서 및 화면 색 센서에 대해 MALT에 대한 보정을 수행해야 합니다. 이 프로세스는 센서 보드당 한 번만 수행해야 하며 PCB의 메모리 칩은 설정을 저장합니다. 설정을 새로 고치려면 arduino에서 다시 설정 단추를 누릅니다.

  1. MALT를 SUT의 USB 포트에 연결합니다.

  2. SensorExplorer를 열고 왼쪽의 MALT 탭(#3)으로 이동합니다. 디바이스 선택 창에서 올바른 Vid/Pid를 선택한 다음, 디바이스에 연결을 선택합니다.

    직렬 디바이스를 연결하는 방법을 보여 주는 SensorExplorer의 스크린샷

  3. 창 맨 위에 있는 보정 탭을 선택합니다.

    보정 탭으로 이동하는 방법을 보여 주는 SensorExplorer의 스크린샷

  4. 알려진 색 값은 모든 보정 프로세스의 핵심이며 이미 보정되었으며 올바른 값을 가진 센서에서 가져옵니다. i1Display Pro와 같은 핸드 헬드 외부 보정 장치를 사용하여 이러한 값을 수집하여 XYZ 값과 빨간색, 녹색 및 파란색을 나타내는 세 가지 색의 광원을 캡처합니다. 아래 색 상자를 사용하여 핸드 헬드 장치를 보정할 수 있습니다. 기존의 보정된 PC와 같이 검증 가능한 올바른 값을 가진 모든 디바이스를 사용하여 이러한 숫자를 찾을 수 있습니다. 이러한 XYZ 값은 가장 효과적이려면 0-100 범위 주위에 있어야 합니다. 빨간색 디스플레이, 파란색 디스플레이 및 녹색 디스플레이에 대해 이 작업을 수행합니다.

    빨간색 블록 이미지 녹색 블록 이미지 파란색 블록 이미지

    다음 패턴을 사용하여 관찰된 값을 알려진 값 3x3 행렬에 넣습니다.

    ┌                                                            ┐
    │Known RED X value | Known BLUE X value | Known GREEN X value│
    │Known RED Y value | Known BLUE Y value | Known GREEN Y value│
    |Known RED Z value | Known BLUE Z value | Known GREEN Z value│
    └                                                            ┘
    

    알려진 값 3x3 행렬의 스크린샷

  5. 원시 또는 비정형 값은 수학 또는 보정이 적용되기 전에 현재 보정되지 않은 MALT 색 센서에서 나오는 값입니다. 알려진 값을 수집한 것과 동일한 표시 색에서 MALT를 가리켜 이러한 값을 수집합니다. 이 단계는 중요하며 수식을 안정적으로 만듭니다. 화면 연결 센서 또는 주변 연결 센서를 보정할지 여부를 결정합니다. 이 결정은 데이터를 수집할 때 누를 UI 단추를 결정합니다.

    원하는 센서를 아래 색 블록을 순서대로 가리키고 보정하는 센서에 따라 각 색에 대해 읽기 화면 또는 읽기 주변을 선택합니다.

    빨간색 블록 이미지 녹색 블록 이미지 파란색 블록 이미지

    이렇게 하면 원시 비정형 값 3x3 행렬이 채워지고 다음 그림과 유사하게 표시됩니다.

    원시 값 행렬의 스크린샷.

  6. 알려진 값 및 원시 비정형 값 마트가 채워지면 화면 아래쪽에서 계산 단추를 선택합니다. 보정된 값 3x3 행렬은 다음 스크린샷과 유사하게 채워야 합니다.

    보정된 값 행렬의 스크린샷.

    이러한 숫자가 생성되면 보정하는 센서에 의해 결정된 대로 위쪽 보정 또는 아래쪽 보정을 선택합니다 .

MALT 보정 테스트

화면 색 센서와 주변 색 센서를 모두 올바르게 보정한 후에는 창 위쪽에서 홈을 선택하여 MALT 섹션의 홈 탭으로 돌아갑니다.

홈 탭으로 이동하는 방법을 보여 주는 SensorExplorer의 스크린샷

홈 탭에서 센서 데이터 제목 아래의 단추를 선택하고 음수가 아닌 숫자를 다시 가져올 수 있어야 합니다.

문제 해결

  1. 보정할 때 원시 값은 읽기 화면 RED, 읽기 화면 녹색 또는 읽기 화면 BLUE(읽기 앰비언트에서 마찬가지로 true)를 누르든 관계없이 동일합니다.

    • MALT 센서 보드가 이더넷 케이블을 통해 연결되어 있는지 확인합니다.

    • 다음으로, 사용 중인 케이블이 POE(Power Over Ethernet)를 지원할 수 있는지 확인합니다. 모든 CAT5 이상의 케이블이 이를 지원합니다.

    • 마지막으로, 케이블이 POE를 대체한다고 확신하는 경우 Arduino Mega에서 다시 설정 단추를 눌러 보세요.

  2. 보정 시 보정 매트릭스는 계산 단추를 누른 후 사각형 중 하나에 "NaN"을 포함합니다.

    • 원시 값이 RED, GREEN 및 BLUE에 대해 서로 다른 숫자를 제공하는지 확인합니다.

    • 빨간색을 누를 때는 빨간색, 녹색을 누르면 녹색, BLUE를 누를 때는 파란색으로 MALT 센서를 들고 있는지 확인합니다.

    • 원시 값이 여전히 다르지 않은 경우 위의 #1을 확인합니다.

  3. 보정이 완료되면(즉, 위쪽 보정 또는 아래쪽 보정을 선택한 경우) 센서가 홈 화면에서 불합리한 값을 읽습니다.

    • 위쪽 보정 또는 아래쪽 보정 단추를 실제로 선택했는지 확인합니다.

    • 위의 지침에 따라 상단 및 하단 센서를 적절하게 보정했다고 확신하는 경우 이메일을 보내 sensortools@microsoft.com십시오.

이 문제 해결 섹션에서 문제를 해결하지 못하는 경우 이메일을 보내 sensortools@microsoft.com주세요.