Flight-Control Engineering for Heavy-Lift UAVs: Scaling from 50 kg to 150 kg

중대형 드론 비행 제어 엔지니어링: 50kg에서 150kg까지 확장

50킬로그램 시연기에서 150킬로그램 운영 UAV로의 이동은 선형 스케일링 작업이 아닙니다. 질량의 증가는 항공기의 관성을 변화시키고, 제어 여유를 좁히며, 구조 진동을 증폭시키고, 실패의 결과를 증가시킵니다. 또한 엔지니어링 목표를 변화시킵니다: 단순히 잘 비행하는 제어기는 더 이상 충분하지 않으며, 시스템은 신뢰할 수 있는 실패를 통해 제어 가능성을 유지해야 하고 안전 및 항공 적합성 검토에 필요한 증거를 생성해야 합니다.

이 기사는 변화 과정을 다섯 가지 긴밀하게 연결된 설계 문제를 통해 살펴봅니다: 변경된 탑재 중량, 추진 중복성, 저주파 진동, 시스템 안전성, 및 규정 준수 지향 검증. 예제와 코드는 설명을 위한 것이며, 생산 설계는 항공기 특정 모델링, 테스트 및 안전 입증이 필요합니다.

150킬로그램 항공기가 이륙하다

2025년 초, 옥토콥터가 홍콩의 인프라 프로젝트에서 콘크리트 시험 패드에 앉아 있었습니다. 그 프로펠러는 직경이 1.8미터였고, 항공기 본체는 3미터 이상 길었습니다. 최대 하중에서 항공기의 무게는 150킬로그램이었으며: 빈 질량 65킬로그램과 고층 건설 현장을 위한 보강 철강 및 하드웨어의 85킬로그램 화물.

비행 제어 엔지니어가 항공기를 준비했습니다. 모든 여덟 개 모터가 동시에 시작되었고, 로터 속도가 꾸준히 상승했습니다: 15%... 25%... 35%... 45%. 48% 스로틀에서 착륙 장치가 패드에서 들어올려졌습니다. 로터의 바람이 아래의 먼지를 흩날리며 항공기가 소비자 드론의 명백한 수월함 없이 상승했습니다. 그 움직임은 작은 헬리콥터의 그것과 유사했습니다: 의도적이고 강력하며 관성에 의해 지배되었습니다.

5미터 호버링에서 지상 기지는 모터 명령이 46%에서 52% 사이임을 보여주었습니다.좁은 간격은 무게 중심이 의도한 위치에 가깝다는 것을 시사했습니다. IMU 진동은 ±3 m/s² 이내에 유지되어, 격리 시스템이 설계대로 작동하고 있음을 나타냈습니다. 배터리는 89.2 V와 120 A, 즉 약 10.7 kW로 측정되었으며, 이는 시뮬레이션 추정치보다 8% 높은 수치입니다. 저온에서의 배터리 저항 증가가 한 가지 가능한 설명이었습니다.

모든 모니터링된 매개변수가 작동 한계 내에 있는 상태에서, 엔지니어는 항공기를 800미터 떨어진 건설 현장으로 조종했습니다.

그 지점에 도달하는 데 18개월이 걸렸습니다. 50킬로그램의 시연기에서 150킬로그램의 엔지니어링 항공기로의 전환은 단순히 더 큰 구성 요소뿐만 아니라 다른 제어 및 안전 아키텍처를 필요로 했습니다.

Heavy-lift UAV flight-control system architecture
중량물 UAV 비행 제어 시스템 아키텍처

제1부: 중량물 UAV의 응용 및 설계의 근본적인 변화

중량물 UAV가 필요한 이유

소비자 드론은 일반적으로 이륙 중량이 25kg 이하이며, 1-5kg의 화물을 운반합니다. 화물 요구 사항이 10kg을 초과하고 이륙 중량이 50kg을 초과하면 항공기는 "중량물" 범주에 들어갑니다. 일반적인 응용 분야는 다음과 같습니다:

  • 건설 현장 물류: 고층 건설 현장에서 철근, 파이프 및 소형 장비를 운반합니다. 타워 크레인과 건설 엘리베이터가 전통적인 솔루션이지만, 강이나 도로를 건너거나 여러 현장 간에 자재를 이동하는 경우 직접 UAV 운송이 더 효율적일 수 있습니다. 홍콩과 선전의 초고층 프로젝트에서는 층 간 자재 운반을 위해 150kg급 UAV를 시험 운행하기 시작했습니다.
  • 농업 분사: 넓은 농경지에 씨 뿌리기 및 비료 주기. 단일 비행에서 20–50킬로그램을 분배할 수 있으며, 이는 높은 적재 용량과 정밀한 분사 제어를 요구합니다.
  • 소방: 고층 건물이나 숲 화재에 소화제를 전달합니다. UAV는 사람의 손이 닿지 않는 높이로 소화 호스나 소화 발사체를 운반하고 정확하게 전달할 수 있습니다.
  • 대규모 측량 및 매핑: 고정밀 LiDAR 시스템의 플랫폼 역할을 합니다. 산업용 LiDAR 시스템 은 일반적으로 10–20킬로그램의 무게를 가지며, 배터리 및 보조 장비와 함께 총 이륙 중량은 80–120킬로그램에 이를 수 있습니다.

소비자 등급에서 중량 이송까지: 단순히 크기를 키우는 문제가 아닙니다.

성숙한 소비자 비행 컨트롤러를 단순히 확대할 수 있는 디자인으로 간주하는 것은 유혹적입니다.실제로, 그 접근 방식은 지배적인 역학, 사용 가능한 제어 권한 및 허용 가능한 위험이 모두 규모에 따라 변화하기 때문에 실패합니다.

50킬로그램 이상에서는 비행 제어 설계가 질적으로 변화합니다. 주요 차이점은 다음과 같습니다:

증폭된 관성 효과. 이륙 중량이 5kg에서 150kg로 증가하면 질량이 30배 증가하지만, 구조도 커지기 때문에 회전 관성은 30배 이상 증가합니다. 더 큰 회전 관성은 자세 제어 응답을 상당히 감소시킵니다. 동일한 제어 토크로 150킬로그램 항공기의 각 가속도는 5킬로그램 항공기의 10분의 1에 불과할 수 있습니다. PID 매개변수는 단순히 비례적으로 조정할 수 없으며, 새로운 동적 모델을 기반으로 재설계해야 합니다.

좁아진 제어 권한 여유. 소비자 드론은 사용 가능한 액추에이터 범위의 중간 근처에서 호버링할 수 있습니다. 중량 이송 UAV는 종종 약 1의 추력 대 중량 비율로 작동합니다.5에서 1.8까지이며 사용 가능한 출력의 60%에서 70%에서 떠 있을 수 있습니다. 태도 수정이나 방해 거부를 위한 상향 권한이 덜 남아 있습니다. 배터리 전압 강하, 열 저하 또는 프로펠러 성능 변동이 그 여유를 더 줄일 수 있습니다.

더 심각한 실패의 결과입니다. 소비자 드론의 추락은 수천에서 수만 위안에 달하는 장비를 파괴할 수 있습니다. 150킬로그램 UAV가 사람이나 건물 위로 추락하면 결과는 치명적일 수 있습니다. 따라서 안전 기준은 근본적으로 다릅니다: 목표는 단순히 "가능하면 떨어지지 않도록" 하는 것이 아니라, 부분적인 실패조차도 항공기가 떨어져 누군가를 다치게 하지 않도록 보장하는 것입니다.

공급망 및 비용. 소비자 비행 제어기의 핵심 구성 요소인 MCU, IMU 및 기압계는 각각 몇 위안에서 수십 위안에 불과할 수 있습니다.중량 이송 비행 제어기는 더 높은 정확도, 낮은 열 드리프트 및 더 나은 장기 안정성을 갖춘 산업 또는 군사 등급의 센서를 요구합니다. 구성 요소 비용은 한 차원 차이가 납니다.

그 결과는 소비자 디자인의 더 큰 구현이 아닌 뚜렷한 엔지니어링 문제입니다.

제2부: 페이로드 관리—실시간 중량 추정 및 적응형 조정

페이로드 변화가 비행 제어에 미치는 영향

중량 이송 UAV의 정의적인 특징은 페이로드가 이륙 중량의 큰 비율을 차지하며 작동 중에 변경될 수 있다는 것입니다.

화학 제품 40kg을 포함하여 이륙 중량이 80kg인 농업 분사 UAV를 고려해 보십시오. 완전히 장착된 상태로 이륙하고 제품이 소진된 상태로 임무를 종료하여 항공기 중량이 80kg에서 40kg로 줄어듭니다—50% 감소입니다. 이 과정에서 추력 대 중량 비율, 회전 관성 및 공기 저항이 모두 변화합니다.부하가 가득 찬 상태와 비어 있는 상태에서 제어 동작이 극적으로 다를 수 있습니다: 가득 찬 부하에서 느린 반응과 비어 있을 때 지나치게 빠른 반응 또는 심지어 진동이 발생할 수 있습니다.

실시간 중량 추정

적응형 조정은 현재 항공기 중량에 대한 지식이 필요합니다. 여러 가지 추정 방법이 제공됩니다.

방법 1: 전류-추력 모델. 고정 속도 범위 내에서 모터 전류와 추력은 대략 선형 관계를 가집니다. 측정된 총 전류와 모터 특성 곡선을 통해 총 추력을 추론할 수 있으며, 이를 통해 현재 중량을 추정할 수 있습니다:

class WeightEstimator:
    def __init__(self, motor_count, motor_constant, hover_throttle):
        self.motor_count = motor_count
        self.motor_constant = motor_constant  # 모터당 N/A
         self.hover_throttle = hover_throttle  # 호버링 시 정규화된 스로틀
         self.estimated_weight = 0.0
         self.alpha = 0.05  # 저주파 필터 계수

    def update(self, total_current, throttle_normalized, accel_z):
        """매 프레임마다 무게 추정치를 업데이트합니다."""
        # 각 모터에서 추력을 추정합니다.
        per_motor_thrust = (
            total_current /  self.motor_count *  self.motor_constant
        )

        # 스로틀 및 중력 보상을 고려한 총 추력
        total_thrust = (
            per_motor_thrust *  self.motor_count * throttle_normalized
        )

        # 질량을 얻기 위해 관성력 성분을 제거합니다.
        mass = total_thrust / (9.81 + accel_z)

        # 저주파 필터링
        self.estimated_weight = (
             self.alpha * mass
            + (1 -  self.alpha) *  self.estimated_weight
        )
        return self.estimated_weight

정확도는 모터 특성 곡선에 따라 달라집니다. 산업용 ESCs는 일반적으로 ±5% 이내의 정확도로 토크 상수 Kt를 제공합니다. 이는 약 ±3%에서 ±5%의 무게 추정 정확도에 해당합니다.

방법 2: 하중 센서를 이용한 직접 측정. 힘 센서 또는 변형 게이지가 페이로드 부착 지점에 설치됩니다. 정확도는 높으며, 약 ±1%입니다. 그러나 이 방법은 하드웨어 비용을 증가시키고 추가적인 고장 지점을 도입합니다.

방법 3: 측정된 분배량으로부터의 누적 추정. 알려진 초기 중량이 주어지면, 측정된 분배 또는 방출량의 변화가 누적됩니다. 이 방법은 정확한 페이로드 흐름 측정을 요구하며, 계량된 방출 메커니즘이 있는 응용 프로그램에 적합합니다.

적응형 PID 조정

실시간 질량이 추정되면, 제어기 이득을 작동 조건에 맞춰 조정할 수 있습니다. 핵심 관계는 질량만이 아니라 관성으로, 이는 질량과 그 분포 모두에 의존합니다. 무게 중심에서 멀리 장착된 페이로드는 무게 중심에 가까이 장착된 동일한 페이로드보다 회전 관성을 훨씬 더 많이 변화시킬 수 있습니다.아래의 단순화된 예는 질량 분포가 기하학적으로 유사하다고 가정합니다.

class AdaptivePID:
    def __init__(self, base_pid, mass_ref, inertia_ref):
        self.base_pid = base_pid  # 기준 질량에서의 PID 매개변수
        self.mass_ref = mass_ref
        self.inertia_ref = inertia_ref

    def compute_adaptive_pid(self, current_mass):
        """현재 질량에 따라 PID 매개변수를 조정합니다."""
        # 비례 질량 분포 가정: 관성은 질량에 비례하여 증가
        mass_ratio = current_mass / self.mass_ref 

        # P 이득은 관성과 비례: 더 높은 관성은 더 큰 토크를 요구
        adaptive_p = self.base_pid.P * mass_ratio

        # I 이득도 관성과 비례
        adaptive_i = self.base_pid.I * mass_ratio

        # D 이득은 더 보수적으로 조정됨
        adaptive_d = self.base_pid.D * math.sqrt (mass_ratio)

        return PIDParams(adaptive_p, adaptive_i, adaptive_d) 

mass_ratio의 정확성과 안정성은 매우 중요합니다. 이 간소화된 이득 스케줄에서 10%의 질량 추정 오류는 비례 및 적분 이득에서 유사한 오류를 발생시킵니다. 빠른 페이로드 방출—예를 들어, 10초에 20킬로그램—은 따라서 일시적인 오버슈트 또는 언더댐핑을 초래할 수 있습니다. 생산 컨트롤러는 일반적으로 예정된 이득을 제한하고 이들 사이를 부드럽게 전환하며, 종종 0을 초과합니다. """5–1초, 불연속적인 매개변수 변경을 적용하기보다는.

Fixed PID versus adaptive PID as payload mass changes
페이로드 질량 변화에 따른 고정 PID 대 적응형 PID

제3부: 추진 중복성 및 고장 전략

중량 이송 UAV의 추진 위험

소비자 쿼드콥터에서 모터 고장은 종종 전부 아니면 전무의 사건으로 발생합니다: 방전된 배터리나 회로 결함이 전체 항공기를 멈추게 합니다. 중량 이송 UAV는 더 많은 모터—종종 여덟 개 또는 열두 개—를 사용하며, 더 높은 전력과 더 긴 시간 동안 작동하므로 단일 모터 또는 ESC 고장의 확률을 무시할 수 없습니다.

이론적으로, 옥토콥터가 하나의 모터를 잃으면 나머지 일곱 개의 모터가 항공기의 무게보다 더 많은 추력을 생성하고 적절한 자세 제어 토크를 제공하는 한 안전하게 착륙할 수 있습니다. 실제로는 제어 가능성이 어떤 모터가 고장나는지에 따라 달라집니다.두 개의 대각선으로 대치된 모터가 동시에 고장날 경우, 가장 큰 모멘트 암이 손실되기 때문에 가장 큰 영향을 미칩니다. 반면, 두 개의 인접한 모터가 고장날 경우 회복할 수 없는 토크 불균형이 발생할 수 있습니다.

중복 제어 할당

하나 이상의 모터가 고장날 경우, 남은 추력을 재할당하여 자세 제어를 유지하고 안전한 착륙의 확률을 극대화해야 합니다.

동일 할당—모든 활성 모터에 동일한 추력을 할당하는 것—은 일반적으로 고장 후 최적이 아닙니다. 실용적인 할당기는 모터 한계와 우선 순위 계층에 따라 액추에이터 명령을 해결하며, 일반적으로 요 또는 총 추력 추적보다 롤 및 피치 권한을 우선시합니다. 아래의 단순화된 유사역행렬 예시는 기본 구조를 설명합니다; 생산 구현은 명시적 제약, 가중치, 포화 관리 및 반풍기 논리를 사용할 것입니다.

클래스 RedundantControlAllocator:
    def __init__(self, motor_positions, motor_count):
        # 중력 중심에 대한 각 모터의 위치 벡터
        self.motor_positions = motor_positions
        self.motor_count = motor_count
        self.mixer_matrix = self._build_mixer_matrix()

    def _build_mixer_matrix(self):
        """제어 믹서 행렬을 구축합니다: 추력 + 토크 -> 모터 출력."""
        A = np.zeros ((4, self.motor_count ))
        for i in range(self.motor_count ):
            pos = self.motor_positions[i]
            direction = 1 if i % 2 == 0 else -1  # 교대로 회전
            A[0, i] = 1.0             # 추력
            A[1, i] = pos[1]          # 롤 모멘트 암
            A[2, i] = -pos[0]         # 피치 모멘트 암
            A[3, i] = direction * 0.1 # 요 모멘트 암 (반응 토크)
        return A

    def allocate(self, thrust_cmd, torque_cmd, failed_motors):
        """모터가 고장났을 때 추력을 재배분합니다.""""""
        cmd = np.array([
            thrust_cmd, torque_cmd[0], torque_cmd[1], torque_cmd[2]
        ])

        active_motors = [
            i for i in range(self.motor_count)
            if i not in failed_motors
        ]
        A_active = self.mixer_matrix[:, active_motors]

        # 제약 조건이 있는 최소 제곱 솔루션:
        # 0 <= 각 모터 출력 <= 최대 추력
        motor_outputs = np.zeros(self.motor_count)

        if len(active_motors) >= 4:
            # 중복 자유도; 에너지 사용을 낮추는 것을 우선시
            solution = np.linalg.pinv(A_active) @ cmd
            motor_outputs_active = np.clip(solution, 0, 1.0)
        else:
            # 제어가 부족함; 자세를 우선시하되, 추력이 낮을 수 있음
            solution = np.linalg.pinv(A_active) @ cmd
            motor_outputs_active = np.clip(solution, 0, 1.0)

        for i, motor_idx in enumerate(active_motors):
            motor_outputs[motor_idx] = motor_outputs_active[i]

        return motor_outputs

여러 엔지니어링 세부사항이 중요합니다:

실시간 솔루션 속도. 할당은 250 Hz 제어 루프 내에서 실행되므로, 솔버는 엄격한 실행 시간 예산을 충족해야 합니다. 옥토콥터의 경우, 믹서는 여덟 개의 액추에이터 출력을 네 개의 명령 축에 매핑합니다. 온라인 솔루션이 루프 내에 적합한지는 MCU, 숫자 표현, 솔버 및 제약 조건에 따라 다릅니다. 더 큰 시스템의 경우, 신뢰할 수 있는 실패 조합에 대한 의사 역행렬 또는 솔버 분해를 미리 계산하고 캐시하여 비행 중 계산을 행렬 연산 및 한계 처리로 줄일 수 있습니다.

실패 감지 속도. 할당은 빠른 감지에 의존합니다.감지는 일반적으로 명령된 추력과 실제 추력 간의 잔여값을 기반으로 합니다: 모터의 측정된 속도가 예상 속도와 임계값 이상으로 다를 경우, 해당 모터는 고장으로 선언됩니다. 감지는 50–100 ms 이내에 발생해야 합니다. 그렇지 않으면, 컨트롤러는 수십 밀리초 동안 고장난 모터에 제어 권한을 계속 할당하여 자세 제어 손실을 초래할 수 있습니다.

고장 후 비행 전략

  • 모터 하나 고장 (옥토콥터에서 남은 모터 일곱 개): 추력을 재배분하고, 최대 공기 속도를 제한하여 자세 제어 수요를 줄이며, 가장 가까운 대체 착륙 지점으로 천천히 하강합니다.
  • 모터 두 개 고장 (남은 모터 여섯 개): 고장난 모터가 대각선으로 배치되어 있다면, 제어가 가능할 수 있지만 여유가 극히 좁습니다. 즉시 비상 착륙을 시작합니다.
  • 모터 세 개 이상 고장: 복구는 일반적으로 불가능합니다.고도가 허용된다면, 자동회전과 유사한 하강을 시작하거나 낙하산 시스템을 배치하십시오.

적절하게 설계된 산업용 비행 컨트롤러는 모터 고장 감지 및 펌웨어에서의 이중 제어 할당을 포함합니다. 이중 IMU, 이중 기압계 및 이중 GPS 수신기와 같은 이중 센서 인터페이스는 내비게이션 중복성을 제공할 뿐만 아니라 추진 상태 인식도 지원합니다. 올바른 고장 결정은 모든 모터의 작동 상태를 정확하게 감지하는 데 의존합니다.

제4부: 구조 진동이 비행 제어에 미치는 영향

대형 항공기에서의 저주파 진동

소비자 드론 프레임은 강성이 높고 자연 주파수가 일반적으로 100 Hz 이상입니다. 대부분의 모터 진동 에너지는 100 Hz에서 500 Hz 사이에 위치하므로 비행 컨트롤러의 격리는 주로 이 범위의 고주파 진동을 다룹니다.

중량 이송 공기frame는 훨씬 더 크며, 팔 길이가 1–2미터이고 상대적으로 덜 강직합니다. 이들의 고유 주파수는 종종 10–40 Hz 범위에 있습니다. 이 진동은 두 가지 중요한 특성을 가지고 있습니다.

첫째, 주파수가 낮고 비행 제어 루프의 10–50 Hz 대역폭에 접근합니다. 진동이 제어 대역폭과 겹치면 루프 안정성에 직접적인 영향을 미칩니다. PID 제어기는 진동을 실제 자세 오류로 해석하고 이를 따르려고 할 수 있습니다.

둘째, 진폭이 높습니다. 모터는 150킬로그램급 UAV에서 각각 3–5 kW를 제공하며, 소비자 드론의 30–50 W 모터보다 훨씬 더 많은 진동 에너지를 생성합니다. 격리 후에도 비행 제어기 장착 지점에서 가속도가 여전히 ±5–15 m/s²에 이를 수 있습니다.

진동 격리 시스템 설계

중량 이송 UAV는 저주파 진동을 위해 특별히 설계된 솔루션이 필요합니다:

  • 와이어 로프 격리기: 자연 주파수는 5–15 Hz로 낮을 수 있어 저주파 격리에 적합합니다. 부피가 크고 설치가 어려운 반면, 150킬로그램급 UAV의 비행 제어기 장착을 위한 주류 선택입니다.
  • 실리콘 격리 마운트: 자연 주파수가 20–40 Hz로, 50 Hz 이상의 진동에 유용합니다. 저렴하고 설치가 용이하지만 제한된 저주파 격리를 제공합니다. 중량 이송 응용 분야에서는 일반적으로 와이어 로프 격리 후 2차 단계로 추가됩니다.
  • 능동 진동 제어: 가속도계는 실시간으로 진동을 측정하고, 액추에이터는 반위상에서 반대 힘을 생성합니다.이것은 최고의 성능을 제공하지만 가장 큰 비용과 복잡성을 동반하며, 현재는 매우 큰 UAV의 소수에만 사용됩니다.

일반적인 엔지니어링 솔루션은 이중 단계 격리입니다: 와이어 로프 격리기는 저주파 구조 모드를 처리하고, 실리콘 요소는 고주파 성분을 감쇠합니다. 최종 설계는 측정된 공기frame 스펙트럼을 기반으로 해야 하며, 잘못 선택된 격리기는 공진 주파수 근처에서 진동을 증폭할 수 있습니다. 비행 컨트롤러는 두 단계 사이의 중간 판에 장착할 수 있습니다.

# 진동 격리 성능 검증을 위한 스크립트
def analyze_vibration_isolation(flight_log_path):
    """격리 전후의 진동 스펙트럼 분석."""
    data = load_ulog(flight_log_path)

    # 비행 제어기 IMU 데이터 격리 후
    imu_fc = data['sensor_imu.acceleration']

    # 참조 공기frame IMU 데이터 격리 전
    imu_body = data['reference_imu.acceleration']

    # FFT 분석
    freq = np.fft.rfftfreq(len(imu_fc[:, 0]), d=1/250)

    for axis in range(3):  # X, Y, Z
        fft_fc = np.abs(np.fft.rfft(imu_fc[:, axis]))
        fft_body = np.abs(np.fft.rfft(imu_body[:, axis]))

        transmissibility = fft_fc / (fft_body + 1e-10)

        print(f"축 {axis}: ")
        print(f"  10 Hz 전달율: "
              f"{transmissibility[np.argmin(np.abs(freq-10))]:.2f}")
        print(f"  50 Hz 전달율: "
              f"{transmissibility[np.argmin(np.abs(freq-50))]:.2f}")
        print(f"  100 Hz 전달율: "
              f"{transmissibility[np.argmin(np.abs(freq-100))]:.2f}")

잘 설계된 산업용 오픈 소스 비행 제어기 보드는 하드웨어 수준에서 진동을 고려합니다.그들의 장착 구멍은 표준 격리 시스템을 지원합니다; IMU 납땜 및 레이아웃은 진동 환경에서의 신뢰성을 위해 설계되었습니다; 그리고 보드 수준의 기계적 강도는 변형에 저항할 수 있을 만큼 충분합니다. 엔지니어는 자신의 항공기 구조에 적합한 격리 솔루션을 선택하고 스펙트럼 분석을 통해 이를 검증해야 합니다.

Vibration spectra before and after flight-controller isolation
비행 제어기 격리 전후의 진동 스펙트럼

파트 V: 안전 전략 업그레이드—FMEA 방법

더 많은 고장 모드와 더 심각한 결과

50kg 이하에서는 일반적인 고장 모드가 비교적 간단합니다: 모터 고장, 배터리 소모, GPS 손실, 데이터 링크 손실. 각 고장 모드에 대해 명확한 대응을 할당할 수 있으며, 고장 모드 및 영향 분석(FMEA)의 범위는 관리 가능합니다.

150킬로그램 규모에서 실패 조합의 수가 상당히 증가합니다:

실패 모드 영향 심각도 (S) 발생 (O) 탐지 (D) RPN
단일 모터 실패 제어 가능하지만 성능 저하 7 4 3 84
이중 모터 실패 제어 상실 가능성 9 2 4 72
주 IMU 실패 예비 IMU로 전환 6 3 2 36
주 GPS와 예비 GPS의 동시 실패 절대 위치 손실 92 5 90
배터리 셀의 과방전 배터리 팩 보호가 전원을 차단함 10 3 3 90
모든 통신 링크의 손실 자율 비행 또는 착륙 8 4 3 96
주 비행 제어 프로세서 충돌 예비 프로세서로 전환 10 2 4 80
프로펠러 블레이드 파손 심한 진동 및 구조적 실패 가능성 10 2 5 100

위험 우선 순위 번호는 RPN = S × O × D. 로 계산됩니다.이 예에서 80 이상의 항목이 우선 순위를 받습니다. 임계값은 조직의 규칙이며 판단을 대체하는 것이 아닙니다: 재앙적인 실패 모드는 계산된 RPN이 낮더라도 완화가 필요할 수 있습니다.

FMEA severity, occurrence, and detection risk map
FMEA 심각도, 발생 및 탐지 위험 맵

FMEA 워크플로우

완전한 FMEA 프로세스에는:

  1. 실패 모드 식별: 각 하위 시스템—추진, 내비게이션, 통신, 구조 및 전원에 대한 모든 잠재적 실패 모드를 나열합니다.
  2. 영향 평가: 각 모드가 비행 안전, 임무 완료 및 인원 안전에 어떻게 영향을 미치는지 결정합니다.
  3. 심각도, 발생 및 탐지 등급을 할당합니다.
  4. RPN을 계산합니다.
  5. 완화 정의: RPN > 80, 인 항목에 대해 하드웨어 중복 설계 또는 소프트웨어 결함 허용을 적용합니다.
  6. 재평가: 완화된 설계를 다시 평가하고 위험이 수용 가능한 수준으로 떨어졌는지 확인하십시오.

150킬로그램 UAV에 대한 FMEA는 소형 항공기보다 훨씬 더 많은 작업이 필요합니다. 완전한 보고서는 일반적으로 50-100페이지 길이이며 수백 가지 고장 모드를 다룹니다. 또한 항공 적합성 인증에 필요한 문서 중 하나입니다.

안전 전략의 엔지니어링 구현

FMEA는 비행 제어 펌웨어에 구현해야 하는 안전 요구 사항 세트를 생성합니다. 주요 전략은 다음과 같습니다:

계층화된 경고. 경고 수준은 고장 심각도에 해당합니다. 수준 1, 노란색,은 작업자가 임무를 계속할 수 있도록 경고합니다. 수준 2, 주황색,은 임무 종료 및 착륙 준비를 권장합니다. 수준 3, 빨간색,은 즉시 비상 절차를 촉발합니다.

점진적 저하.부분적인 실패가 발생하면 비행 컨트롤러는 성능이 낮지만 안전성이 더 높은 모드로 자동 전환됩니다. 예를 들어, 전체 성능 비행에서 속도와 가속도가 제한된 전력 제한 비행으로, 그 다음에는 호버 전용 모드로, 마지막으로 비상 착륙 모드로 전환됩니다.

독립적인 안전 모니터링. 독립 모듈, 잠재적으로 별도의 MCU가 기본 비행 컨트롤러를 지속적으로 모니터링합니다. 기본 컨트롤러가 비정상적인 출력을 생성하거나—예를 들어 갑작스러운 명령 변경—감시 타이머를 서비스하지 못하면, 안전 모듈이 제어를 인수하고 미리 정의된 전략을 실행합니다. 이는 고위험 UAV에 대한 필수 항공 적합성 요구 사항입니다.

제6부: 항공기 적합성 및 준수

150킬로그램 클래스의 항공기 적합성 요구사항

중국에서 운영되는 150킬로그램 UAV의 경우, 해당 항공기 카테고리, 의도된 운영 및 인증 기준에 대한 관련 당국과 함께 적용 가능한 인증 및 운영 요구사항을 설정해야 합니다. 준수 프로그램은 일반적으로 다음 활동을 포함합니다:

  • 설계 검토: 구조 설계, 추진 시스템, 비행 제어 안전—FMEA 포함—및 전자기 호환성 보고서를 포함한 완전한 설계 문서 제출.
  • 시험 검증: 한계 하중에서의 생존성을 입증하기 위한 구조 정적 시험; 최소 50시간의 결함 없는 추진 내구성 시험; 시뮬레이션 및 비행 시험을 통한 비행 제어 신뢰성 시험; 온도, 습도, 진동 및 염수 안개에 대한 환경 시험.
  • 비행 테스트: 인증 시험 조종사의 감독 하에 필요한 테스트를 완료하며, 여기에는 정상 비행 범위 검증, 비행 중 한 모터를 정지시키는 것과 같은 시뮬레이션 실패, 그리고 한계 조건 테스트가 포함됩니다.
  • 지속적인 비행 적합성: 인증 후, 운영자는 모든 항공기에 대한 비행 시간, 유지보수 이력 및 고장 보고서를 기록하고, 정기적으로 비행 적합성 지침 및 수정을 시행해야 합니다.

위험 평가 프레임워크

특정 운영 위험 평가(SORA) 프레임워크는 운영 위험을 두 가지 차원으로 나눕니다:

  • 지상 위험 등급(GRC): 운영 지역의 인구 밀도와 항공기의 운동 에너지에 의해 결정됩니다. 150킬로그램 UAV는 25킬로그램 UAV보다 훨씬 더 많은 운동 에너지를 가지므로, 더 엄격한 지상 안전 조치가 필요합니다.
  • 공중 위험 등급 (ARC): 공역의 복잡성과 다른 항공 교통의 밀도에 따라 결정됩니다.

항공기의 질량과 운동 에너지가 지상 위험에 실질적으로 영향을 미치기 때문에, 150킬로그램의 작전은 일반적으로 소형 UAV 임무보다 더 강력한 격리, 신뢰성 증거 및 운영 완화 조치를 요구합니다. 실제 GRC와 ARC는 질량만으로 추론하는 것이 아니라 현재 SORA 방법론과 특정 운영 개념에서 계산되어야 합니다.

비행 관제사의 항공 적합성에서의 역할

비행 제어 하위 시스템은 항공 적합성 검토의 주요 초점입니다. 검토자는 세 가지 핵심 질문을 합니다:

단일 실패가 치명적인 결과를 초래할 수 있습니까? 대답은 아니어야 합니다. 치명적이 될 수 있는 모든 단일 실패는 중복성 또는 보호가 필요합니다.

비행 제어 소프트웨어의 신뢰성은 얼마나 됩니까? 증거에는 DO-178C 또는 유사한 표준에 따른 소프트웨어 개발 프로세스 문서, 테스트 커버리지 보고서 및 코드 검토 기록이 포함되어야 합니다.

안전 장치 로직이 적절하게 검증되었습니까? SITL/HITL 시뮬레이션 및 비행 테스트는 모든 실패 시나리오를 포함해야 합니다.

따라서 준수는 설계 단계에서 고려되어야 합니다. 하드웨어 중복성—이중 IMU, 이중 기압계 및 이중 프로세서—완전한 비행 및 이벤트 로깅, 추적 가능한 하드웨어 버전 및 소프트웨어 구성은 나중에 추가할 수 없습니다. 이들은 아키텍처에 설계되어야 합니다.

하드웨어가 이미 항공 적합성을 다루는 산업용 비행 제어 보드를 선택하는 것은 여러 중복 센서 인터페이스, 독립 안전 모니터 및 완전한 로깅 시스템을 갖추고 있어 항공기 수준에서 인증 노력과 비용을 크게 줄일 수 있습니다.

제7부: 50kg에서 150kg까지의 엔지니어링 교훈

설계 반복 타임라인

팀의 대략적인 개발 순서는 다음과 같았습니다:

  • 1단계, 0–6개월: 50킬로그램 시연기. 소비자 등급의 추진 시스템과 단순화된 구조를 사용하여 비행 제어 아키텍처와 핵심 알고리즘을 검증하며, 제어 알고리즘의 실행 가능성에 중점을 둡니다.
  • 2단계, 6–12개월: 100킬로그램 프로토타입. 산업용 추진 시스템, 완전한 구조 설계 및 진동 격리를 도입합니다. FMEA 및 안전 전략 개발을 시작하고, 첫 번째 HITL 검증을 수행합니다.
  • 3단계, 12–18개월: 150킬로그램 엔지니어링 항공기. 이중 시스템, 안전 모니터링 및 환경 테스트를 포함한 엔지니어링 설계를 완료합니다. 광범위한 SITL/HITL 시뮬레이션 및 유선 비행 테스트를 수행합니다.
  • 4단계, 18–24개월: 비행 테스트 및 인증 준비. 비행 envelope, 시뮬레이션 실패 및 환경 테스트를 완료합니다. 항공기 적합성 문서를 준비하고 인증 신청서를 제출합니다.

주요 교훈

교훈 1: 진동 격리에 비용을 아끼지 마십시오. 비행 제어기의 진동 환경은 제어 성능의 상한선을 직접 결정합니다. 격리는 일반적으로 총 항공기 비용의 2% 미만을 차지하지만 제어 성능을 20%–30% 향상시킬 수 있습니다.

교훈 2: 초기부터 중복 설계를 하십시오. 중복성은 기본 시스템을 완료한 후 백업을 추가하는 것만큼 간단하지 않습니다. 스위칭 로직, 상태 동기화 및 결함 감지는 아키텍처 설계 중에 계획되어야 합니다. 중복성을 추가하는 것은 처음부터 설계하는 것보다 3배에서 5배 더 많은 비용이 들 수 있습니다.

교훈 3: 먼저 시뮬레이션하십시오. 150킬로그램 UAV의 비행 테스트는 매우 비쌉니다. 한 번의 실패한 테스트는 수십만 위안의 장비를 파괴할 수 있으며, 일정이 몇 달 지연될 수 있습니다. 비행으로 넘어가기 전에 시뮬레이션에서 철저히 검증하십시오. 잘 설계된 산업 비행 제어 보드는 이미 출하 전에 광범위한 시뮬레이션을 거쳤으며, 팀이 검증된 기반 위에 자체 시뮬레이션 환경을 구축하고 초기 단계의 위험과 비용을 더욱 줄일 수 있도록 합니다.

교훈 4: 컴퓨팅 여유를 유지하십시오. 150킬로그램 UAV의 비행 제어 소프트웨어는 소형 항공기의 그것보다 훨씬 더 복잡합니다. 적응형 조정, 중복 제어 할당, 안전 모니터링, 다중 센서 융합 및 페이로드 관리가 동시에 실행되어야 합니다. 그로 인해 발생하는 컴퓨팅 수요는 소형 UAV의 5배에서 10배에 이를 수 있습니다. 주요 컨트롤러를 선택할 때 최소 50%의 처리 여유가 남아 있어야 합니다.고성능 컨트롤러는 자율 AI 비행 및 비전 기반 장애물 회피와 같은 미래 기능을 위한 여지를 남깁니다.

결론: 대량 확장은 보증 확장을 의미합니다.

50kg에서 150kg으로 이동하는 것은 모든 구성 요소를 세 배로 곱하는 문제가 아닙니다. 이는 비행 제어 공학에서 체계적인 전환을 요구합니다: 정상 제어 성능에서 운영 범위 전반에 걸친 제한된 동작으로; 단일 문자열 시스템에서 관리되는 중복으로; 고정 조정에서 모델 또는 일정 기반 적응으로; 그리고 성공적인 비행 테스트에서 추적 가능한 안전 증거로.

중량 이송 UAV는 높은 에너지, 제한된 액추에이터 여유, 유연한 구조 및 복잡한 고장 동작을 결합하기 때문에 새로운 저고도 경제에서 가장 요구되는 항공기 중 하나입니다.작은 드론에 대한 경험은 가치가 있지만, 항공기 수준의 역학, 중복 관리, 구조화된 안전 분석 및 규율 있는 검증의 필요성을 제거하지는 않습니다.

이 분야에 진입하는 팀을 위해 산업용 비행 제어 플랫폼은 유용한 기반을 제공할 수 있습니다: 적절한 컴퓨팅 여유, 중복 센서 인터페이스, 강력한 로깅 및 심한 진동을 견딜 수 있도록 설계된 하드웨어. 그러나 그 기반만으로는 항공기를 인증할 수 없습니다. 응용 프로그램별 소프트웨어, 통합, 위험 분석, 시뮬레이션, 지상 테스트 및 비행 테스트 증거는 여전히 필수적입니다. 따라서 가장 짧은 신뢰할 수 있는 개발 경로는 제로에서 시작하는 것이 아니라 성숙한 플랫폼과 엄격한 항공기 수준의 엔지니어링 및 검증을 결합하는 것입니다.

블로그로 돌아가기

댓글 남기기

댓글 게시 전에는 반드시 승인이 필요합니다.