목록아답티브 오토사 (Adaptive AUTOSAR) (24)
Automotive Software
아답티브 오토사에서는 OTA (Over the Air)를 통한 소프트웨어 업데이트(신규 설치, 갱신, 삭제)를 지원하기 위해 UCM (Update and Configuration Management) FC를 정의하고 있으며, UCMS (UCM Subordinate)에 전달될 소프트웨어의 패키지 형식에 대한 개괄적인 정보를 제공한다. 실제 사용되는 소프트웨어 패키지 형식은 차량 제조사의 내부 스펙에 따라 서명 방식 및 세부 형식에 차이가 있을 수 있다. 아답티브 오토사에서는 왼쪽 그림에서와 같이 기본적인 형식을 제안하고 있는데, 애플리케이션(들) : 실제 업데이트 대상 실행 파일 애플리케이션 데이터(들) : 애플리케이션에서 참조할 데이터 파일 애플리케이션 매니페스트(들) : 애플리케이션 구동에 필요한 설정..
아답티브 오토사는 서비스 인터페이스 호출 후 결과 확인 시 해당 동작의 에러 여부를 확인하고 처리하는 방식을 C++에서 정의된 방식과 유사한 방법으로 제시하고 있다. 아답티브 오토사에서의 비정상 동작 결과 타입 에러 (Error) 런타임에서 발생 가능 / 회복 가능 허용되지 않은/예상되지 못한 입력값에 의해 특정 기능의 불능상태가 초래된 경우 위반 (Violation) 프레임워크 개발 단계에서 발생 가능 / 회복 불가능 프레임워크상에서 지원하지 않는 전/후 동작 조건에 따라 구동 요청이 된 경우 예, 제한된 하드웨어의 초과 사용시도 또는 소프트웨어적인 미지원 설정 기능 사용 손상 (Corruption) 프레임워크 개발 단계에서 발생 가능 / 회복 불가능 시스템 자원의 손상으로 초래되는 결과 예, 하드웨어..
아답티브 오토사상에서 이더넷 패킷의 VLAN ID는 기본 값 M2::AUTOSARTemplates::SystemTemplate::Fibex::Fibex4Ethernet::EthernetTopology VlanMembership::defaultPriority 에서 송수신 패킷들의 VLAN ID를 정의할 수 있으며, IP 계층에서의 값 M2::AUTOSARTemplates::SystemTemplate::Fibex::Fibex4Ethernet::EthernetTopology NetworkEndpoint::priority 응용 계층에서의 값 M2::AUTOSARTemplates::AdaptivePlatform::ServiceInstanceManifest::APApplicationEndpoint ApApplica..
필드 이벤트와 비슷하게 특정 데이터 교환이 주목적이긴 하나, 그 데이터를 수집하는 방식에 차이가 있음 데이터 수집을 위해 해당 서비스 가입 시, 초기 값이 우선 전달 현재의 필드값을 수집하거나 변경하기 위해 Get()과 Set() 메서드를 제공 Get(), Set(), Notify/Update()는 모두 옵션으로 사용자 설정에 따라 사용 가능 이벤트와 메소드 통신의 혼합 통신 Get(), Set(), Notify/Update() : ara::com 메소드 통신과 동일하게 동작 데이터 접근 : ara::com 이벤트 통신과 동일하게 동작
메서드 RPC(Remote Procedure Call)과 같이 기능(함수) 기반의 통신으로 원격지 프로세스의 특정 기능(함수)을 호출하고 그 결과를 확인하는 경우 타입 호출 후 종료형(One-way / Fire-and-Forget) : 오직 입력 파라미터만 허용, 리턴값/예외 없음 일반형 : 입출력, 리턴값 그리고 예외 처리 허용 함수 프록시 함수 호출 연산자 오버로딩 (Function call operator overlading) 메서드 제공자의 함수 호출을 위한 연산자 오버로딩으로 원격지 기능의 수행을 요청 스켈레톤 제공 함수(기능) 구현을 위한 가상 함수 (Virtual method) 메서드 제공자가 실제 기능을 구현해야 하며 동기화 / 비동기화 (함수 내 비동기 스레드 생성 후) 방식으로 구현할 ..
이벤트 (Event) 특정 데이터 교환을 주목적으로 하는 통신 방식으로 특정 신호를 주기적 또는 갱신 시점에 받아서 처리하는 경우 사용 데이터 : 프록시 또는 스켈레톤에 따라 기본 데이터 템플릿 클래스가 적용되고 사용자 데이터를 추가하여 사용 구현 예시 : 사용자 정의 데이터 :: 프록시/스켈레톤 이벤트 템플랫 클래스 사용자 정의 데이터 : using myData_t = struct myData_t { uint32_t data;}; 프록시 이벤트 템플릿 클래스 : ara::com::proxyEvent 프록시 또는 스켈레톤 네임 스페이스 내 하나의 멤버로 정의 함수 프록시 가입 (Subscribe) 이벤트 제공자에게 해당 이벤트의 수신 여부에 대한 관심 여부와 수신 가능 이벤트 최대 개수를 전달 가입 상태..