차세대 플랫폼 검토
1. 검토 전제
- 현행 구성: QCS6490 Android AP + RK3588 Linux·ROS AMR AP.
- 차세대 AP: QCS6490보다 상위 SoC 적용. 1안도 Android AP 교체를 전제로 하며 구체 모델은 미정.
- 제품 요구: 서드파티 앱 도입·확장, Google 서비스 활용 가능성, AMR 자율주행 유지, 원형 디스플레이 적용.
- 미정 사항: 필수 앱과 배포 방식, ROS 버전·의존 패키지, 차세대 BSP·지원 수명, 패널 해상도와 실제 사양.
상위 SoC의 연산 자원 증가는 통합에 유리할 수 있으나, 앱 호환성·ROS 이식·장애 격리·인증 문제를 직접 해결하지는 않는다.
2. 구성안 비교
| 구분 | 1안: Android·Linux ROS 분리 | 2안: 단일 칩 Linux·ROS | 3안: 단일 칩 Android·ROS |
|---|---|---|---|
| 앱·서비스 | Android 앱 환경 유지, 앱별 검증 | Linux SDK·웹·파트너 연동으로 대체 | Android 앱 환경 유지, 통합 BSP 검증 |
| AMR 이식 | 기존 Linux·ROS 환경 재사용 범위 확인 | ROS 재사용에 유리, 칩 변경 시 드라이버·가속기 이식 | Android native 이식 또는 지원되는 Linux guest 필요 |
| 자원·장애 | AP별 자원 관리, 실제 전원/reset 분리 여부에 따라 영향 제한 | UI·음성·AI·주행이 자원과 AP 장애를 공유 | 외부 앱·AMR 경합, native/guest별 격리 검증 |
| 하드웨어 비용 | 두 AP·RAM·저장·PMIC·보드 비용 | 별도 AMR 보드 제거 가능, 통합 자원·냉각 증액 고려 | 별도 AMR 보드 제거 가능, 통합/가상화 자원 증액 고려 |
| 검토 위치 | 개발 기준안 | 원가 개선·통합 검토 후보 | 공급사 지원 확인 후 비교 |
2.1 1안: Android AP와 Linux·ROS AMR AP 분리 — 출시 범위 관리
장점: Android 앱·음성·미디어와 Linux·ROS 주행 환경을 각각 활용한다. 앱과 로봇 플랫폼의 변경 범위를 나누기 좋고, 전원/reset 경계가 분리되면 한쪽 재시작의 영향을 제한할 수 있다.
단점: 두 보드와 주변 부품의 원가·공간·소비전력 부담이 남는다. 두 OS의 보안 업데이트, AP 간 명령·상태 정합성, 버전 호환과 현장 진단을 관리해야 한다. 상위 Android AP로의 BSP·HAL·앱 이식도 필요하다.
2.2 2안: 단일 칩 Linux·ROS 통합 — 원가와 구성 단순화
장점: Linux·ROS 중심으로 주행·센서·전용 UI를 통합하고 별도 보드와 연결 부품을 줄일 수 있다. 승인된 서비스 SDK와 자체 UI만으로 제품 기능을 충족한다면 하드웨어·운영 구성이 단순해질 가능성이 있다.
단점: Android APK와 Google Play를 같은 방식으로 제공하지 못한다. 필수 서비스별 Linux 지원과 상용 사용 조건을 확보하고, UI·음성·미디어·계정·업데이트 기능을 이식해야 한다. UI·AI 부하와 주행이 자원을 공유하며 AP 장애가 전체 기능에 영향을 줄 수 있다.
2.3 3안: 단일 칩 Android·ROS 통합 — 앱 환경과 보드 통합의 동시 확보
장점: Android 앱 환경을 유지하면서 보드를 통합할 수 있다. 공급사가 지원하는 Linux guest 구성이 있으면 일부 ROS 사용자 공간을 유지할 여지가 있다.
단점: AMR 전체의 Android native 이식 또는 Linux guest 지원이 필요하다. 센서·모터·GPU/NPU 접근, 장치 소유권, 기동·복구, 자원 격리와 Android 인증을 함께 검증해야 한다. 일반적인 ROS 지원이나 가상화 기능만으로 제품 구동을 보장할 수 없다.
3. 구성안별 비즈니스 로직과 주행 Workflow 분담
비즈니스 로직은 사용자 의도·목표·Plan과 제품 전체의 작업 순서를 관리한다. 주행 Workflow는 이동 요청을 받아 경로 실행·장애물 대응·주행 재시도·정지·결과 보고를 관리한다. 두 책임은 단일 칩에서도 구분한다.
| 구성안 | 비즈니스 로직: 무엇을 할 것인가 | 주행 Workflow: 어떻게 이동할 것인가 | 달라지는 점 |
|---|---|---|---|
| 1안 Android + Linux·ROS 분리 | Android AP: 사용자 의도 해석·Plan 연계, 이동·청정·음성 등 제품 작업 순서와 목표 달성 관리 | Linux·ROS AP: 이동·도킹의 실행 단계, 장애물 대응, 주행 복구·취소·결과 보고 | Android가 이동 목표를 요청하고 Linux·ROS가 진행·결과를 반환. AP 간 통신 단절·재접속 처리 필요 |
| 2안 Linux 단일 칩 | Linux 제품 서비스로 이식: 사용자 의도·Plan 연계와 제품 작업 관리. UI·음성·미디어도 Linux 환경에 연결 | 같은 AP의 ROS 서비스가 주행 Workflow 관리 | AP 간 연결을 로컬 서비스 통신으로 변경. Android 앱·서비스 의존부 대체, 제품 서비스와 주행의 자원·장애 관리 필요 |
| 3안 Android 단일 칩 | Android 제품 서비스에 유지: 사용자 의도·Plan 연계와 제품 작업 관리 | 동일 SoC의 ROS 실행 영역: Android native 이식 또는 공급사 지원 Linux guest에서 주행 Workflow 관리 | 별도 AMR AP를 제거하고 내부 통신으로 연결. ROS 실행 환경·장치 접근·자원 격리 검증 필요 |
예: “거실로 이동해서 공기를 정화해줘.” 비즈니스 로직이 거실 이동 → 청정 실행 → 결과 확인을 관리한다. 주행 Workflow는 거실까지의 이동을 수행하며, 장애물을 만나면 주행 범위 안에서 경로를 조정한다. 이동이 불가능하면 실패 원인을 상위에 보고하고, 상위가 사용자 확인·계획 변경·작업 중단을 결정한다. 주행 계층이 사용자 목표나 청정 순서를 임의로 바꾸지 않는다.
취소는 상위에서 주행 계층으로 전달하고, 실제 정지·취소 결과를 받은 뒤 작업 상태를 갱신한다. 통신 단절 시 주행을 계속할지 정지할지는 주행 계층의 사전 정의 정책으로 처리한다. 모터의 고주기 제어와 보호 동작은 하위 제어기에서 담당한다. Plan에 필요한 모델 호출은 클라우드를 활용할 수 있으며, 표의 배치는 제품 내 요청·실행 관리의 담당 영역이다.
4. 구성안별 앱·Google 서비스·원형 화면의 장단점
앱·서비스 선택의 폭과 도입 속도는 Android를 유지하는 1·3안의 주요 이점이다. Android용으로 제공되는 다양한 앱·SDK를 후보로 활용할 수 있고, 제품에서 지원되는 기존 Android 배포본은 별도 OS 포팅 없이 도입할 수 있다. System S/W와 앱 팀은 서비스 자체를 다시 만드는 부담을 줄이고 제품 연동·원형 화면 대응에 집중할 수 있다. Android의 앱 배포·SDK 생태계는 이러한 재사용의 기반이다. Android 앱·서비스 생태계.
이미 Android에서 서비스 중인 타사 앱을 제품에 도입할 때, Android에서는 공급사가 제공하는 앱을 활용할 수 있다. Linux로 전환하면 같은 서비스를 제공하기 위한 추가 작업이 생길 수 있다. Linux용 앱이 있으면 해당 배포본을 사용하지만, Android용 앱만 있으면 공급사의 Linux 포팅·지원이 필요하거나 웹·SDK를 이용해 서비스 화면과 기능을 별도로 통합해야 한다. 타사 앱의 소스·사용권이 없으면 우리가 직접 포팅하기도 어렵다. 따라서 Linux 전환 비용에는 자체 소프트웨어 이식뿐 아니라 타사 서비스 확보·공급사 협의·대체 연동·후속 유지보수도 포함한다. Android 앱 역시 제품의 OS 버전·CPU ABI·Google 서비스·DRM 지원과 사용 조건을 확인해야 한다.
| 비교 항목 | 1안: Android + Linux·ROS 분리 | 2안: Linux 단일 칩 | 3안: Android 단일 칩 |
|---|---|---|---|
| 앱·콘텐츠 서비스 장점 | 폭넓은 Android 앱·SDK 선택. 지원되는 기존 배포본을 OS 포팅 없이 도입하고, 기존 주행 환경과 연동 | Linux 배포본·SDK·웹·파트너 연동을 자체 UI에 통합. 후보 서비스의 Linux 지원 여부에 따라 선택 폭이 달라짐 | 1안과 같은 Android 앱·SDK 선택 폭과 기존 배포본 재사용 이점을 유지하며 보드 통합 |
| 앱·콘텐츠 서비스 제약 | Android 버전·CPU ABI·GMS/DRM·상용 조건과 원형 화면 적합성 확인. 주행 연동은 AP 간 통신 필요 | Android APK 직접 사용 불가. 서비스별 Linux 지원·계정·재생·사용권 확보와 대체 개발 필요 | 앱 지원 조건은 1안과 동일하게 확인. 앱·미디어와 ROS의 동시 부하·장치 접근 조정 필요 |
| 기존 타사 앱 도입·이식 | 제품과 호환되는 Android 앱을 공급사 배포본으로 활용. OS 포팅 부담 감소 | Linux 앱이 없으면 공급사 포팅·지원 또는 웹·SDK 기반 별도 연동 필요. 소스·사용권과 유지보수 주체 확보 | 1안과 동일하게 Android 앱 활용. 주행 연동과 동시 실행 조건 조정 |
| 서비스 추가·유지보수 | 기존 앱·SDK의 기능과 공급사 업데이트를 활용해 신규 서비스 연동 범위를 줄일 수 있음 | 공급사가 Linux 버전을 제공하면 활용. 별도 이식한 기능은 후속 API 변경·오류 대응도 자체 유지 | Android 서비스 확장 이점 유지. 서비스 추가 시 ROS와의 자원 경합 확인 |
| Google 서비스 장점 | 공급사 Android BSP와 호환성 검증을 바탕으로 필요한 GMS 도입 경로 검토 가능 | Linux에서 이용 가능한 웹·서버 API는 개별 서비스 조건에 따라 연동 가능 | Android 환경을 유지하므로 필요한 GMS 도입 경로 검토 가능 |
| Google 서비스 제약 | AOSP만으로 GMS 사용 불가. 기기 유형·호환성·라이선스·공급사 지원 확인 필요 | Android용 GMS를 그대로 사용하지 못함. 웹·서버 API로 대체되지 않는 기능은 별도 해법 필요 | 1안과 같은 도입 조건에 더해 ROS native/guest를 포함한 최종 제품 구성으로 호환성 검증 필요 |
| 사용자 서비스 기반 장점 | 전원·화면·입력·오디오·앱 권한의 Android 공통 서비스와 정책 활용 | 필요한 Linux 구성요소만 선택하고 제품 정책을 자유롭게 구성 가능 | Android 공통 서비스를 유지하면서 보드 통합 가능 |
| 사용자 서비스 개발 부담 | 제품별 정책·BSP 연동과 AP 간 상태 조정 필요 | 기존 라이브러리를 활용하되 공통 API·전원/화면 정책·오디오 우선순위·설정 UI·복구를 제품 수준으로 통합해야 함 | Android 제품 정책에 ROS의 작업 수명·자원 관리·장치 접근을 함께 조정해야 함 |
| 원형 화면 장점 | Android의 화면·입력·접근성 기반 위에 원형 전용 UI 구현. 주행과 AP 분리 | Qt 등으로 전체 화면과 조작 흐름을 원형 전용으로 일관되게 구성 가능 | Android UI 기반과 보드 통합을 함께 활용. 원형 전용 UI 구현 방식은 1안과 동일 |
| 원형 화면 제약 | 외부 앱의 사각 UI·로그인·키보드는 별도 표시·입력 정책 필요 | UI·입력·접근성·미디어 기능의 제품 통합과 기존 Android 화면 이식 부담. 웹 화면도 원형에 맞춘 검증 필요 | 1안과 같은 외부 앱 잘림 문제에 더해 UI·미디어·주행 동시 부하 검증 필요 |
1안과 3안은 서비스 다양성, 기존 Android 앱·SDK 재사용, 신규 서비스 도입 시 포팅 부담 감소라는 공통 이점이 있다. 사용자 서비스 기반과 Google 서비스 경로도 유사하다. 차이는 주행 환경을 별도 AP에 유지하는지, Android와 동일 SoC에 통합하는지다. 2안은 자체 원형 UI를 구성하기에 유연하지만, 필수 서비스를 Linux에서 제공하고 사용자 서비스 계층을 통합해야 한다. Linux에도 관련 구성요소가 있으므로, 선택한 배포판·BSP의 제공 범위를 확인해 재사용과 자체 개발을 나눈다.
Spotify 등의 공식 앱·임베디드 SDK·Connect·휴대폰 연동은 제공 기능과 계약 조건이 다르므로 동일한 서비스로 간주하지 않는다. 원형 화면은 세 안 모두 로그인·권한창·키보드까지 조작 가능해야 한다. 실제 패널 사양과 기기 유형은 선정 후 확인한다.
관련 자료: Android 호환성, Google Mobile Services, 서비스별 비교, 원형 디스플레이 포팅.
4.1 System S/W 관점에서 Android를 유지하는 실질적 이점
Android를 유지하면 전원·화면·오디오·앱 권한·서비스 통신·진단을 공통 시스템 기반 위에서 구성할 수 있다. System S/W 팀은 이 기반의 제품별 설정과 BSP·HAL 연결에 집중하고, SKIX의 작업 관리·Context 제공·AI Planner 연계에 개발 역량을 투입할 수 있다. 핵심 이점은 공통 기능의 신규 구성과 앱별 중복 구현, 장애 분석 방식의 분산을 줄이는 데 있다. AOSP 구조.
Linux·ROS로 전환하면 주행 기능 외에 UI·앱·음성·장치를 함께 운영하는 제품 System Service 계층을 구성해야 한다. Linux의 기존 서비스와 라이브러리를 재사용하되, 제품 공통 API·상태 알림·권한·우선순위·장애 복구를 연결하는 개발과 운영을 우리가 담당한다. ROS의 노드·통신·주행 관리만으로 이 사용자 서비스 계층이 완성되지는 않는다.
사용자 기능
화면·음성·카메라가 함께 동작할 때 필요한 공통 제어 기반이다.
| 영역 | Android 제공 기반 | Linux에서 통합할 일 |
|---|---|---|
| 전원·화면 | 화면 상태·작업 유지 API | 작업별 절전 제한·화면 복귀 정책 |
| 창·입력 | 창 관리·화면 합성·입력 전달 | 앱 전환·키보드·알림·원형 화면 배치 |
| 오디오 | 음량·출력 경로·포커스 관리 | 음악·TTS 우선순위와 음량 복원 |
| 카메라·미디어 | 공통 접근 API·미디어 서비스 | 동시 사용·권한 표시·스트림 복구 |
구성요소 예
- Android: PowerManager, DisplayManager, WindowManager, SurfaceFlinger, AudioManager, CameraService.
- Linux: 커널 전원 관리, Wayland, Qt, ALSA, PipeWire, WirePlumber, V4L2, GStreamer.
서비스 운영
앱과 AI Planner가 같은 설정·권한·상태 체계를 사용하도록 연결한다.
| 영역 | Android 제공 기반 | Linux에서 통합할 일 |
|---|---|---|
| 네트워크 | 연결 관리·상태 알림 API | 초기 연결 UI·재연결·오프라인 대응 |
| 서비스 수명 | 서비스 관리·공통 IPC | 부팅 순서·재연결·작업 복구 |
| 앱·권한 | 패키지 관리·앱 격리·권한 체계 | 앱 배포·서명 정책·접근 권한 UI |
| 설정 | 설정 저장·조회·변경 알림 | 공통 설정 API·재부팅 후 복원·초기화 |
구성요소 예
- Android: ConnectivityManager, ActivityManager, Binder/AIDL, PackageManager, SELinux, SettingsProvider.
- Linux: NetworkManager, systemd, D-Bus, 계정 및 접근 통제, 설정 저장소.
유지보수
업데이트 실패와 현장 장애에 대응하는 운영 기반이다.
| 영역 | Android 제공 기반 | Linux에서 통합할 일 |
|---|---|---|
| 업데이트·복구 | 서명·설치·OTA 기반 | 배포·부트로더 연동·부팅 판정·롤백 |
| 진단·운영 | 공통 로그·상태 덤프·추적 도구 | 앱·ROS 로그 연결·원격 수집·복구 절차 |
구성요소 예
- Android: Virtual A/B, logcat, dumpsys, bugreport.
- Linux: RAUC, 부트로더, 시스템 로그, 코어덤프, 추적 도구.
표의 Linux 개발 범위는 구성요소를 새로 만드는 작업과 기존 기능을 설정·연결하는 작업을 포함한다. 배포판·BSP가 통합해 제공하는 범위만큼 자체 개발량은 줄어든다. Android도 제품별 정책, BSP·HAL 연결, 원형 UI, 마이크·AEC·DSP 튜닝과 회귀 시험은 필요하지만 공통 서비스·API·진단 체계를 재사용할 수 있다.
예를 들어 음악 재생 중 음성 안내를 출력하고 화면을 끄는 동작은 Android의 오디오 포커스·전원·화면 서비스를 연결해 구성한다. Linux에서는 오디오 정책 관리자·화면 시스템·전원 관리를 연결하고, 안내 종료 후 음량 복원과 화면이 꺼진 동안의 작업 유지까지 하나의 제품 정책으로 묶는다. 이 통합 계층은 새 앱과 서비스가 추가될 때도 계속 유지해야 한다.
관련 기반: Android 구조, 전원 관리, 오디오 포커스, 앱 격리, Virtual A/B, WirePlumber 정책 관리, NetworkManager, RAUC 업데이트·부팅 연동.
4.2 세 구성안에서 달라지는 System S/W 부담
| 구성안 | 재사용하는 부분 | 추가 개발·운영 부담 |
|---|---|---|
| 1안 Android + Linux·ROS 분리 | Android 사용자 서비스와 기존 Linux·ROS 주행 환경 | 상위 Android AP 포팅, AP 간 상태·명령·취소 연계, 두 OS 업데이트·진단 |
| 2안 Linux 단일 칩 | Linux·ROS 및 선정한 배포판의 시스템 구성요소 | Android 의존 기능 대체, 사용자 서비스의 공통 API·정책 통합, 기존 앱·SDK 이식 |
| 3안 Android 단일 칩 | Android 사용자 서비스·앱·SDK | ROS 실행 환경, 장치 소유권, UI·AI·주행 자원 경합, 통합 장애·복구 처리 |
System S/W 관점에서는 Android의 공통 서비스와 기존 개발 자산을 재사용할 수 있는 1안이 개발 범위를 관리하기 쉽다. 3안도 Android 재사용 이점은 같지만 ROS 통합 부담이 추가된다. 2안의 경제성은 보드 절감액과 함께 사용자 서비스 재통합·이식·장기 유지보수 비용으로 판단한다. Android에서도 로봇의 물리적 안전 제어와 SKIX의 목표·작업·결과 관리는 제품 고유 개발 영역이다.
5. 비용 부담과 경제성
5.1 비용 발생 항목
세 안 모두 차세대 상위 SoC의 완성 보드 견적을 기준으로 비교한다. 1안의 현행 QCS6490 보드 가격과 통합안의 신규 보드 가격을 그대로 비교하지 않는다.
| 비용 항목 | 1안: Android·Linux 분리 | 2안: Linux 통합 | 3안: Android 통합 |
|---|---|---|---|
| 대당 원가 | 두 AP·RAM·저장·PMIC·보드 유지 | AMR 보드 제거 가능. 통합 RAM·냉각 증액 반영 | AMR 보드 제거 가능. Android·ROS/guest 자원 증액 반영 |
| 설계·이식 | 상위 Android AP 회로·BSP·HAL 포팅 | 통합 보드 + UI·음성·미디어·SDK 대체 + 전원·화면·입력·권한 서비스 통합 | 통합 보드 + ROS native 또는 guest 이식 |
| 서비스·시험 | 앱 계약·Google 서비스 경로·두 AP 연동 시험 | 서비스별 SDK 계약·대체 개발·제품 회귀 시험 | Android 관련 시험 + 장치 접근·격리·복구 시험 |
| 제조·수리 | 두 보드 조립·검사·재고. 개별 보드 교체 가능 | 연결 부품 감소 가능. 통합 보드 수율·전체 교체비 확인 | 통합 보드 수율·전체 교체비와 guest 검사 반영 |
| 운영·지원 | 두 OS 업데이트·버전 호환·교차 AP 진단 | 자체 UI·서비스 SDK·ROS 보안과 회귀 유지 | Android·ROS·guest·공급사 BSP 지원 결합 |
| 일정 부담 | 상위 AP 포팅·두 AP 연동 | 필수 서비스 승인·기능 대체 | ROS 이식·가상화 지원·통합 재시험 |
5.2 총비용과 손익분기
총비용 = 초기 개발·인증비 + 생산 수량×대당 완성제품 원가 + 지원 기간의 운영·보안·품질 대응비
대당 원가는 AP·RAM·저장·PMIC·PCB·연결·냉각·라이선스·조립·검사·수율 손실을 포함한다. 통합안의 절감액은 제거하는 AMR 보드 가격에서 상위 SoC·메모리·냉각 등의 추가 비용을 차감해 계산한다.
1안 대비 대당 순절감액을 S, 추가 개발비와 지원 기간의 추가 운영비를 F라고 할 때, S>0·F>0이고 비용이 선형이면 회수 수량은 N=F/S다. 순절감이 없으면 생산량 증가만으로 통합 개발비를 회수할 수 없다. 견적 전에는 금액이나 절감률을 확정하지 않는다.
6. 최종 권고와 결정 조건
| 판단 | 이유 |
|---|---|
| 1안을 개발 기준으로 유지 | Android 시스템 서비스·기존 앱/SDK와 Linux·ROS 주행 환경을 재사용해 System S/W 재개발 범위를 제한. 두 보드 원가와 운영 부담은 남음 |
| 2안을 원가 개선 후보로 검증 | 필수 서비스를 Linux에서 제공하고, 동등한 제품 품질과 개발·운영비 회수 가능성 확인 |
| 3안은 공급사 지원 확보 후 비교 | Android 앱 환경을 유지하면서 전체 AMR 이식/guest·장치 접근·격리를 지원해야 함 |
두 AP의 장애 독립성은 전원·reset 경계에 따라 달라진다. 단일 칩은 앱·AI·주행 동시 부하와 장애·복구를 검증한다.
7. 선정 절차
| 확인 항목 | 필요한 결과 |
|---|---|
| 제품·서비스 | 필수 앱, 자유 설치/관리형 배포, 필요한 Google 서비스, 판매 수량·지원 기간 |
| SoC·BSP 공급사 | Android/Linux 지원, ROS·가상화·가속기·드라이버 범위, 보안 수명·개발/지원 견적 |
| AMR | ROS 버전·의존 패키지·센서/모터 구성, 이식 범위와 보호·정지·복구 기준 |
| 원형 화면·마켓 | 패널·논리 화면·기기 유형, 시스템/외부 앱 표시 방식, OEM/GMS 도입 경로 |
| 비교 시제품 | 동일 기능의 앱·음성·주행 동시 부하, 지연·열·장애·OTA·제조/수리 비용 |
필수 서비스와 BSP 지원 확인 → 안별 개발·완성 BOM 견적 → 동일 기능 시제품 검증 → 총비용 비교 → 최종 SoC·구조 선정 순서로 진행한다. 현재 권고는 플랫폼 설계 판단이며 실측 성능·인증·이식 완료 결과는 아니다.