MATLAB 벡터와 센서 데이터

학습 목표

시간·높이·배터리 기록을 배열로 묶고, 필요한 구간과 조건을 골라 확인합니다.

실행 조건

MATLAB 또는 MATLAB Online을 사용합니다. 기본 활동은 MATLAB만으로 실행하며 드론 연결은 필요하지 않습니다.

측정표를 배열로 만들기

시작 조건

예제의 시간·높이·배터리 열을 사용합니다.

진행 방법

  1. 열벡터 세 개를 만들고 5×3 배열로 합치세요.
  2. size로 크기를 확인하고 세 번째 행과 높이 열을 각각 꺼내세요.

남길 결과

  • 행·열 선택 결과와 단위가 있는 측정표.
t=(0:4)';height_m=[0;.4;.9;.7;.1];battery_pct=[92;91;90;89;88];
measurements=[t,height_m,battery_pct];
disp(size(measurements));disp(measurements(3,:));
% TODO: 높이 열을 선택하고 행 선택과 비교하세요.

결과 기록·자가 점검

선택 방법
배열 크기
값의 의미

확인할 점

  • 한 시각의 세 값을 같은 행에 두었는가?
  • Index 3과 시간 3초를 혼동하지 않았는가?

높이 조건과 시간 구간 선택하기

시작 조건

높이≥.5 m와 1≤t≤3초를 각각 선택합니다.

진행 방법

  1. 논리 배열 두 개를 만들고 선택되는 행을 확인하세요.
  2. 두 조건을 동시에 만족하는 기록을 골라 시간·높이·배터리를 함께 적으세요.
  3. 높이 조건을 .8 m로 바꾸어 어떤 행이 빠지는지 확인하세요.

남길 결과

  • 조건별 선택 결과와 높이 그림에 표시한 선택점.
above=height_m>=.5;
in_window=t>=1 & t<=3;
disp(measurements(above & in_window,:));
% TODO: .8 m 조건과 선택점 표시를 추가하세요.

결과 기록·자가 점검

조건
선택된 시각 [s]
높이 [m]
배터리 [%]

확인할 점

  • 높이와 시간을 별도 기준으로 잘못 섞지 않았는가?
  • 조건을 바꿔도 열의 의미가 유지되는가?

비어 있는 선택 결과 처리하기

시작 조건

높이≥2 m 조건에는 해당 기록이 없습니다.

진행 방법

  1. 높이 2 m 이상인 행을 선택하고 size와 isempty의 결과를 적으세요. 선택된 높이가 없으면 최댓값 대신 ‘결과 없음’을 표시하도록 분기하세요.
  2. 선택 코드를 실행하기 전에 t, height_m, battery_pct 열벡터 끝에 각각 값 하나를 추가하고, measurements=[t,height_m,battery_pct]를 다시 실행하세요. 세 벡터의 새 원소가 같은 측정 행을 구성해야 합니다. 추가한 행의 높이는 2 m 이상으로 두고 세 값을 기록하세요.
  3. 같은 선택 코드를 다시 실행하고, 추가 전후의 선택 행 수·결과 표시·선택된 높이 최댓값을 나란히 적으세요.

남길 결과

  • 빈 결과와 새 측정 추가 후 결과.
selected=measurements(height_m>=2,:);
disp(size(selected));disp(isempty(selected));
% TODO: 빈 결과와 새 측정을 처리하세요.

결과 기록·자가 점검

조건
행 수
후속 계산·표시

확인할 점

  • 빈 배열을 실제 높이 0으로 바꾸지 않았는가?
  • 추가 행을 반영하려고 코드의 숫자 5를 직접 고치지 않아도 되는가?

공식 예제·데이터