스마트카 Smart Car 소프트웨어 엔지니어링 자동차 임베디드 소프트웨어 개발 프로세스와 기술 입문

스마트카 Smart Car 소프트웨어 엔지니어링 자동차 임베디드 소프트웨어 개발 프로세스와 기술 입문

$31.37
저자

신승환,정민우,조선영,김연호

저자신승환은다양한분야의소프트웨어를개발·관리·컨설팅했다.현대오트론에서책임연구원으로차량용소프트웨어를개발하고있다.관심분야는무인자율주행시스템의소프트웨어개발이다.『도와주세요!팀장이됐어요』를포함한다수의IT서적을집필했다.

목차

목차
1장자동차와임베디드소프트웨어
1.1자동차용임베디드시스템의등장
1.2자동차용네트워크의등장
1.3자동차를구성하는서브시스템
1.3.1파워트레인
1.3.2섀시
1.3.3보디
1.3.4멀티미디어
1.4데이터캘리브레이션
1.5자동차용임베디드소프트웨어전망
2장자동차개발프로세스
2.1자동차개발프로세스개요
2.2기획단계
2.3선행개발단계
2.4디자인단계
2.5설계단계
2.6시작단계
2.7시험단계
2.8생산준비단계
2.9양산단계
2.10차량개발프로세스모니터링과통제
2.11전자기술을반영한차량개발프로세스
3장제어개발프로세스
3.1엔지니어링프로세스
3.1.1차량레벨상의시스템콘셉트
3.1.2시스템요구사항정의
3.1.3시스템아키텍처설계
3.1.4시스템구현
3.1.5소프트웨어요구사항분석
3.1.6소프트웨어아키텍처설계
3.1.7소프트웨어단위설계와구현
3.1.8소프트웨어단위검증
3.1.9소프트웨어통합과검증
3.1.10소프트웨어확인과배포
3.1.11시스템통합과검증
3.1.12차량평가와데이터캘리브레이션
3.1.13시스템배포
3.2지원및관리프로세스
3.2.1프로젝트관리프로세스
3.2.2요구사항관리프로세스
3.2.3형상관리프로세스
3.2.4변경관리프로세스
3.2.5품질관리프로세스
4장기능안전
4.1기능안전개요
4.2위험관리정의와기능안전과유사성
4.3HARA와ASIL설정
4.4안전요구사항도출과시스템설계
4.5ASIL분해
4.6소프트웨어아키텍처안전분석
4.7소프트웨어개발과검증
5장EAST-ADL
5.1시스템아키텍처의정의와역할
5.2아키텍처프레임워크
5.2.1메타모델링아키텍처프레임워크
5.2.2공통아키텍처프레임워크
5.2.3특정도메인아키텍처프레임워크
5.3자동차분야의아키텍처EAST-ADL
5.4EAST-ADL시스템모델
5.4.1EAST-ADL의차량레벨
5.4.2EAST-ADL의분석레벨
5.4.3EAST-ADL의설계레벨
5.4.4EAST-ADL의구현레벨
5.5EAST-ADL의확장모델
5.5.1EAST-ADL의요구사항모델링과V&V
5.5.2EAST-ADL의운영환경모델링
5.5.3EAST-ADL의신뢰성모델링
5.5.4EAST-ADL의가변성모델링
5.5.5EAST-ADL의거동모델링
5.5.6EAST-ADL의타이밍모델링
6장AUTOSAR
6.1AUTOSAR등장배경
6.2AUTOSAR범위
6.3AUTOSAR아키텍처구조
6.3.1ASW
6.3.2RTE
6.3.3서비스계층
6.3.4ECAL
6.3.5MCAL
6.3.6콤플렉스드라이버
6.3.7인터페이스
6.4AUTOSAR적용
6.4.1SW컴포넌트정의
6.4.2ECU자원정의
6.4.3시스템정의
6.4.4시스템설정및EUC정의추출
6.4.5ECU별설정
6.4.6ECU별SW실행파일생성
7장OSEK-OS
7.1OSEK/VDX개요
7.2OIL설정
7.3응용프로그램모드
7.4시작과종료
7.5태스크
7.6ISR
7.7훅
7.8스케줄링
7.9알람
7.10이벤트
7.11자원
7.12메시지
8장CAN
8.1초기차량네트워크
8.2CAN탄생배경
8.3기본개념
8.4통신방식
8.5메시지구조
8.5.1메시지프레임구조
8.5.2데이터프레임
8.5.3원격프레임
8.5.4오류프레임
8.5.5오버로드프레임
8.6메시지비트타임세그먼트와재동기화
8.7구현
8.7.1메시지설계
8.7.2하드웨어
8.7.3소프트웨어
9장LIN
9.1LIN탄생배경
9.2개요
9.2.1기본개념
9.2.2적용분야
9.3통신방식
9.3.1에러검출및제한
9.3.2슬립과웨이크업
9.4메시지구조
9.4.1프레임종류
9.4.2메시지프레임
9.4.3메시지프레임타입
9.5구현
9.5.1메시지설계
9.5.2하드웨어
9.5.3소프트웨어
10장FlexRay
10.1엑스바이와이어기술
10.2FlexRay탄생
10.3기본사항
10.4프로토콜아키텍처
10.5프레임포맷
10.6통신주기
10.6.1클록동기화
10.6.2정적인영역
10.6.3동적인영역
10.7웨이크업과스타트업프로토콜
10.7.1웨이크업단계
10.7.2스타트업단계
10.8토폴러지
10.8.1수동형버스토폴러지
10.8.2듀얼채널싱글스타
10.8.3싱글채널연속형스타
10.8.4듀얼채널연속형스타
10.9FlexRay노드아키텍처
11장CCP
11.1탄생배경
11.2특징과응용분야
11.3인터페이스표준과구조
11.3.1인터페이스메시지구조
11.3.2CRO메시지
11.3.3DTO메시지
11.3.4CRM
11.3.5이벤트메시지
11.3.6DAQ메시지
11.4명령어와인터페이스의예
11.4.1명령어
11.4.2명령어인터페이스의예
11.5오류처리
11.6드라이버구현
11.6.1초기화
11.6.2DAQ초기화및데이터측정
11.6.3캘리브레이션초기화
11.6.4드라이버구현의예
12장KWP2000
12.1KWP2000등장배경
12.2OBD의통신방법
12.2.1SAE-J1850
12.2.2ISO15765
12.2.3ISO14230
12.3KWP2000의구조
12.3.1KWP2000-파트1
12.3.2KWP2000-파트2
12.3.3KWP2000-파트3
12.4KWP2000구현방법
12.4.1소프트웨어구조
12.4.2CAN드라이버
12.4.3전송계층
12.4.4KWP2000서비스

출판사 서평

출판사서평
차량용소프트웨어를개발할때알아야할주요한소프트웨어기술과프로세스를체계적으로설명한책이다.이책은자동차소프트웨어의탄생배경을설명함으로써시작한다.일반적인소프트웨어개발자가낯설어하는자동차개발프로세스의주요특징과자동차개발프로세스와소프트웨어개발프로세스가어떻게연결되는지알아봄으로써,자동차소프트웨어개발의특징을이해할수있다.아울러첨단자동차소프트웨어개발을위해사용되는다양한소프트웨어기술,표준,네트워크를살펴봄으로써,자동차소프트웨어세계에입문하는개발자들에게꼭필...
차량용소프트웨어를개발할때알아야할주요한소프트웨어기술과프로세스를체계적으로설명한책이다.이책은자동차소프트웨어의탄생배경을설명함으로써시작한다.일반적인소프트웨어개발자가낯설어하는자동차개발프로세스의주요특징과자동차개발프로세스와소프트웨어개발프로세스가어떻게연결되는지알아봄으로써,자동차소프트웨어개발의특징을이해할수있다.아울러첨단자동차소프트웨어개발을위해사용되는다양한소프트웨어기술,표준,네트워크를살펴봄으로써,자동차소프트웨어세계에입문하는개발자들에게꼭필요한지식을전달한다.
자동차소프트웨어개발자가알아야할소프트웨어엔지니어링의기초
소프트웨어를개발한다는측면에서일반적인소프트웨어나차량용소프트웨어는별반다르지않다.하지만많은인원이참여하고오랜기간이소요되는개발프로세스가적용된다는점,사고발생시인명피해와직결된다는점,다양한공급자들이제공하는제어기들을통합해서개발한다는측면에서일반적인소프트웨어와차량용소프트웨어의차이는명확해진다.따라서품질이우수한차량용소프트웨어를개발하기위해서는뛰어난소프트웨어개발역량과더불어개발프로세스,소프트웨어의안전을확보하는방법,차량용소프트웨어의특징과개발방법,차량용네트워크에대한지식이필요하다.따라서이책은차량용소프트웨어엔지니어링의기초라고할수있는배경지식을전달하도록구성됐다.
★이책에서다루는내용★
■자동차소프트웨어의주요특징
■자동차소프트웨어개발에꼭필요한자동차개발과소프트웨어개발프로세스특징
■안전한자동차를개발하기위한기능안전기초지식
■자동차개발의주요표준인AUTOSAR,OSEK-OS,EAST-ADL
■CAN,LIN,FlexRay의차량용네트워크와CCP,KWP2000의주요프로토콜
★이책의특징★
자동차소프트웨어개발에꼭필요한지식과최신기술을체계적으로접근하고다룬다.
★이책의대상독자★
이책은차량용소프트웨어이외의분야에서소프트웨어개발경험이있는개발자를위해작성됐다.따라서이책에서는임베디드소프트웨어개발에관한일반적인내용을다루지않는다.만약임베디드소프트웨어개발경험이없는개발자라면임베디드소프트웨어개발에관한기초서적을참고하길바란다.아울러기계,전기,전자,전산분야를전공한학생들이자동차분야의소프트웨어개발을시작한다면,이책에서차량용소프트웨어개발에대한기초지식을얻을수있다.앞서설명했듯이이책에서는임베디드소프트웨어에대한일반적인내용을다루지않기때문에,해당분야의지식이없는독자라면관련서적을참고하길바란다.
★이책의구성★
1장,자동차와임베디드소프트웨어:차량용임베디드소프트웨어가등장한배경을중심으로차량용소프트웨어가자동차에서어떤역할을하는지알아본다.아울러제어기간의통신이필요한이유를살펴봄으로써차량용네트워크의등장배경을알아본다.시스템엔지니어링을사용해자동차개발에서발생하는복잡성을관리하는것도살펴본다.
2장,자동차개발프로세스:기획단계부터양산단계까지의일련의프로세스를살펴봄으로써자동차개발프로세스에대해알아본다.단계마다개발되는시험자동차의종류와특징을살펴보고,각시험자동차에어떤종류의소프트웨어샘플이탑재되는지도살펴본다.
3장,제어개발프로세스:자동차개발에사용되는시스템엔지니어링의특징을알아본다.시스템엔지니어링기법을사용해시스템개발프로세스와소프트웨어개발프로세스가어떻게통합되는지도살펴본다.시스템개발프로세스와소프트웨어개발프로세스의단계마다어떤활동이이뤄지고,각단계에서사용하는개발방법과산출물도알아본다.
4장,기능안전:자동차에탑재하는전자부품이늘어나면서전자부품에서발생하는안전문제가매우중요해졌다.자동차업계는이런문제를해결하기위해서ISO26262라는기능안전표준을제정해사용하려고한다.ISO26262는광범위한영역을다루는표준이기때문에,ISO26262의모든것을소개할수없다.차량용소프트웨어에서기능안전의개념을어떻게도입하는지를파악하는단서확보차원에서,ISO26262의파트6에해당하는소프트웨어의표준을살펴본다.
5장,EAST-ADL:아키텍처프레임워크의개념에대해간략하게살펴본다.차량용아키텍처프레임워크의하나인EAST-ADL의특징을알아본다.EAST-ADL의시스템모델과확장모델의세부내용에대해살펴본다.
6장,AUTOSAR:차량용소프트웨어표준인AUTOSAR의등장배경을알아본다.AUTOSAR의아키텍처구조인ASW,RTE,서비스레이어등에대한특징을살펴본다.마지막으로AUTOSAR를적용한다는의미와구현된AUTOSAR를사용해차량용소프트웨어를개발하는일련의절차를알아본다.
7장,OSEK-OS:OSEK표준의종류를살펴본다.OIL파일을사용해OSEK-OS를설정하는방법과OSEK-OS의구현모드를알아본다.태스크의기본구조와태스크동작방식을살펴보고,ISR설정시주의할점도알아본다.또한OSEK-OS에서어떤종류의훅이있는지알아본다.아울러스케줄링,알람,이벤트,자원,메시지의사용방법도살펴본다.
8장,CAN:CAN은차량용네트워크로가장보편화된프로토콜이다.CAN의등장배경을살펴보고프로토콜특징,메시지프레임구조와같은CAN의기초에대해서알아본다.메시지를어떻게설계하는지를통해CAN을사용한통신애플리케이션을살펴본다.CAN하드웨어의간략한내용과CAN구현을위한소프트웨어구조,MCAL개발예제도제시한다.
9장,LIN:LIN은CAN보다단순한형태의통신을지원하기위해탄생한프로토콜이다.LIN의탄생배경,적용분야,통신방식을살펴본다.아울러메시지구조를알아보고,간단한예제를사용해LIN메시지를설계하는방법을제시한다.LIN의하드웨어와소프트웨어구조를살펴보고,LINMCAL설정방법도알아본다.
10장,FlexRay:FlexRay는조향이나제동과같은자동차의안전과직결되는분야에서사용하기위해탄생한프로토콜이다.이장에서는FlexRay가안전을보장하기위해어떻게구현되고있는지살펴봄으로써FlexRay사용시필요한기초지식을제공한다.
11장,CCP:자동차소프트웨어를구현하는것도중요하지만,구현한소프트웨어를차량에탑재해개발하는과정에서제어기의성능을알아봐야한다.이를위해제어변수를모니터링하고측정해야한다.아울러개발된차량용소프트웨어를차량에탑재해목표한성능을끌어내기위해,성능변수를캘리브레이션해야한다.이때대표적으로사용되는프로토콜이CCP다.이장에서는CCP의특징과통신방식,구현방법에대해알아본다.
12장,KWP2000:양산한자동차는폐기처분할때까지짧게는10년에서20년이넘는기간이걸린다.따라서여러제조업체가공급하는차량에서발생하는고장을정확하게진단하기위해서는고장진단표준이필요하다.이런요구를수용해고장진단프로토콜인KWP2000이탄생했다.이장에서는KWP2000의특징과통신방식,구현에대해살펴본다.
★저자서문★
국제가전