Skip to main content

Featured

YOLOv7: Trainable bag-of-freebies sets new state-of-the-art for real-time object detectors review

 YOLO 버전이 v7 버전으로 논문이 발표되었다. papers with code에서 쉽게 확인할 수 있으며 이 논문은 모듈 최적화 기법 위주이다. CSPNet이라던지 RepVGG 같은 관련 네트워크들을 간단하게 공부하고 논문을 이해하는 것을 추천한다. 아래는 official github이며 ReadMe를 보면 쉽게 사용 방법을 알 수 있다. https://github.com/wongkinyiu/yolov7 또한 본 논문은 아래와 같다. Wang, Chien-Yao, Alexey Bochkovskiy, and Hong-Yuan Mark Liao. "YOLOv7: Trainable bag-of-freebies sets new state-of-the-art for real-time object detectors." arXiv preprint arXiv:2207.02696 (2022). 그렇다면 간략하게 논문에 대해 알아보도록 한다. - Abstract YOLOv7이 알려진 모든 detector들보다 정확도와 속도 면에서 성능을 능가하고 있다고 설명한다. 또한 이 네트워크를 오직 COCO 데이터셋으로만 훈련했다고 설명한다. 다른 네트워크들보다 확실히 좋은 성능을 내고 있다는 것으로 abstract에서 소개하고 있다. - Introduction  이 논문에서 제안한 real-time detector는 주로 mobile GPU나 GPU 장치를 지지할 수 있다는 것을 희망한다고 한 것을 보아 GPU가 필요하다는 것으로 이해하였다. 또한 이 논문에서 제안된 방법들의 개발 방향을 현재 real-time detector들의 개발 흐름과 다르다고 설명한다. 훈련 과정의 최적화에 집중했다고 한다. 그래서 중점적인 것이 정확도를 향상시키기 위한 훈련 cost를 강화화는 최적화된 모듈과 최적 기법이라고 설명한다.  논문의 제목에서 나오는데 제안된 모듈들과 최적 기법들을 trainable bag-of-freebies라고 칭한다. 최근에, model re-pa...

1. What is Space Launch Vehicle

최근 스페이스X 를 비롯한 민간 우주 기업의 성장과 아르테미스 사업의 가속화 등으로 우주 산업에 대한 수요가 증가하고 있다. 이러한 우주 산업에 필수적인 요소 중 하나는 바로 인공위성을 우주에 쏘아 올리는 우주발사체이다.

인공위성이 우주에 올라가기 위해서는 수백 km 이상의 고도와 수만 km/h 이상의 속도를 가져야만 한다. 이를 위해 강력한 엔진과 엄청난 양의 연료를 싣고 발사되는 우주 발사체는, 지상에서 쉽게 볼 수 있는 자동차, 비행기와는 사뭇 다른 거동을 가진다.

최근 가장 활발하게 우주 발사체를 쏘고 있고, 뉴스 등을 통해 대중에게 가장 친숙하게 다가오는 스페이스X 의 주력 발사체 Falcon 시리즈를 통해 우주발사체의 특징을 알아보자. 

 

 

사진 우측의 Falcon Heavy 와, 사진 좌측의 Falcon 9 이 현재 스페이스X 를 통해 발사되는 우주발사체이다. 이와 같이 대부분의 우주발사체는 대부분 길고 얇은, 마치 연필과 같은 형상을 가진다.

그러나 사진에 나타난 전체가 우주로 가는 것은 아니다. 사진 상단의 Payload fairing 이라 쓰여진 로켓의 꼭대기의 일부분만이 우주에 도착하게 되는 것이다. 이를 Payload 라고 부르며, 일반적으로 해당 로켓의 성능 지표를 가장 직관적으로 알려주는 지표이다. 예를 들어, Falcon 9은 지구 저궤도에 약 20톤의 화물을, Falcon Heavy는 약 60톤의 화물을 운송할 수 있다.

그러나 Falcon 9의 이륙 중량은 550톤에 달하며, Falcon Heavy는 1,400톤이 넘는다. 이륙 중량의 고작 3% 남짓한 양을 우주로 보낼 수 있는 것이며, 이는 전 세계 어느 우주발사체나 비슷한 상황이다. 그렇다면 대부분의 중량은 무엇인가? 

 

그것은 바로 연료이다.

우주발사체에 사용되는 로켓엔진은, 자동차, 비행기 따위보다 훨씬 높고 빠른 속도를 내기 위해 자동차 엔진이나 비행기 엔진과는 비교도 안 되는 강력한 힘을 필요로 한다. 큰 힘을 내는 엔진을 사용하다 보니 결국 엔진의 연료효율은 현재 사용되는 그 어떤 엔진보다도 뒤떨어지게 된 것이다. 대신 그 어마어마한 힘 덕분에 발사부터 불과 10분만에 우주에 도달한다.

그 뿐만 아니라, 자동차와 달리 로켓엔진이 주로 작동하는 우주공간은 공기가 없으므로, 연소를 위한 산소를 같이 싣고 가야 해서 연비가 더욱 떨어지게 된다. 그 결과, 승객 한명을 운송하기 위해 버스만한 차를 가져와서, 버스 내부 공간을 전부 연료로 가득 채운 뒤 단 한명을 태우고 운행하게 되는 꼴이 되는 것이다. 따라서 로켓은 비행 과정에서 연료를 소모함에 따라 질량, 관성 모멘트, 무게중심 등이 크게 변하게 된다. 

우주발사체는 비행 과정에서 고도 또한 크게 변화하므로, 대기 온도, 밀도와 압력 등의 작동 환경이 크게 변화한다. 이는 공력 특성 뿐만 아니라, 로켓 엔진의 성능에도 직접적인 영향을 주기 때문에 로켓 설계자는 이러한 변화를 반드시 고려하여야 한다.



우주발사체가 가지는 또 다른 특징은, 비행하면서 조금씩 비행체의 일부를 분리하여 떨어트린다는 점이다. 이를 단분리(Staging) 이라 하며, 연료 효율을 극대화시키고 고도에 따라 사용하는 엔진을 달리하여 모든 비행 구간에서 최적화를 하기 위한 방안이다.

위 사진처럼 우주발사체의 각 단을 수직으로 이어 붙이는 것이 설계상 유리하기에, 일반적인 로켓은 얇고 길쭉한 형태를 가지게 되는 것이다. 스페이스X 의 Falcon 9이 이러한 형태를 취한다.

그러나 길이를 무한정 늘렸다가는 우주발사체가 엿가락처럼 휘어버릴 수 있으니, 수직으로는 2단 정도만 쌓고 추가적인 단은 본체의 양 옆에 보조 추진단으로 구성하는 경우도 많다. 이를 도식화하면 아래와 같다.



이 때 양 옆에 붙이는 단(Stage)을 미국과 유럽에서는 부스터 라고 부르며, 가운데의 단을 1단으로 부른다. 그러나 러시아에서는 양 옆의 보조 추진단을 1단으로, 가운데의 단을 2단으로 부르는 경향이 있다.

스페이스X 의 Falcon Heavy 가 이러한 형태를 취하며, 이 때 사용되는 부스터는 Falcon 9 의 1단을 그대로 사용한다. 다만 부스터와 1단이 반드시 같을 필요는 없다. 유럽우주국의 우주발사체 아리안 5(Ariane V) 의 경우 1단으로 액체 수소를 사용하고, 부스터로는 암모늄 계열 고체 연료를 사용한다.





정리하자면, 우주발사체는

1. 막대한 양의 연료를 소모하여 몇 분만에 지상에서 우주로 화물을 운송한다.

2. 비행 과정에서 질량, 대기압 등 여러 동역학적 요소와 비행 환경이 변화한다.

 

따라서 우주발사체 유도 제어기 설계자는 위 사항을 고려하여 적절한 시스템을 구성해야 한다.

 

 

Comments