You are on page 1of 39

SOME/IP-SD

2019310549 성우진
2022310617 김혜민
2019310737 윤성수

ⓒSaebyeol Yu. Saebyeol’s PowerPoint


SOME/IP, SOME/IP-SD를 이용한 Plug&Play지원 시스템 구현

Client
Ø 구현할 주요 기능

1. 서비스 역할 보드 탈부착시 SD (Service Discovery)를 통한


오퍼 및 구독 혹은 해지
a. Service는 ON 되면 바로 Offer를 주기적으로 송신
b. OFF되는 경우 StopOffer 송신
SOME/IP & SOME/IP-SD c. Client는 Offer를 받으면 구독하고 LED로 표시
d. 스위치를 통해 제어할 서비스 선택
Service Service
2. 클라이언트의 가변저항을 사용하여 Service 보드의 모터 제

a. 각 모터는 동일한 서비스 ID로 구현
b. Instance ID로 구분
c. SOME/IP 메시지로 제어명령 송수신

3. 초음파센서 서비스 구독 시 값을 받아 FND로 출력


a. 이벤트 혹은 REQUEST 시 초음파 값 받아오도록 구현
구성도
역할 분담

• 성우진:
• 초음파 값을 SOME/IP로 송신해서 클라이언트의 FND로 출력하는 코드 구현 및 SD 부분 보조

• 윤성수:
• 가변저항 값을 SOME/IP로 송신해서 모터 제어하는 코드 구현

• 김혜민:
• SOME/IP-SD 구독 및 해지 기능, 보드 전원 On/Off 시 SD로 연결하는 코드 구현
SOME/IP

ⓒSaebyeol Yu. Saebyeol’s PowerPoint


SOME/IP
Scalable service-Oriented MiddlewarE over IP

• 정의: 차량 ECU간 Ethernet 기반 Data 통신을 지원하기 위해 만들어진 Protocol


• 장점: 기존의 버스 시스템과 달리 서비스 지향적인 정보 전송 가능
• 최소 하나의 수신자가 있어야 데이터를 전송하므로 불필요한 데이터 전송 방지
• SOA 내 다양한 네트워크 상의 어플리케이션 간 통신 가능
SOME/IP
Scalable service-Oriented MiddlewarE over IP
논문1)

1) J. B. Park, S. B. Oh and J. W. Jeon, "Analysis of SOME/IP-CAN Communication," 2023 International Technical Conference on
Circuits/Systems, Computers, and Communications (ITC-CSCC), Jeju, Korea, Republic of, 2023, pp. 1-5, doi: 10.1109/ITC-
CSCC58803.2023.10212447.
SOME/IP
Scalable service-Oriented MiddlewarE over IP
SOME/IP
Scalable service-Oriented MiddlewarE over IP

SOME/IP
Header
ULTRASOUND

ⓒSaebyeol Yu. Saebyeol’s PowerPoint


초음파 센서 원리

1. Trig Pin 10us동안 활성화


Ø Echo 핀에서 초음파 발생
2. 물체에 반사되서 수신되기까지의 시간 측정
3. 왕복 시간이 0.34[ms]일 때,
• 왕복 거리 = 340[m/s] * 0.00034[s] = 0.1[m] = 10[cm]
• 물체까지의 거리 = 왕복 거리 / 2 = 5[cm]
초음파 센서 코드
• AGT0
: 초음파센서의 시간 측정 용도
Time resolution: 10us

Overflow에 의한 거리 측정 오류를 방지하기 위


해 일정 시간 경과 시 time 변수 초기화

• AGT1
: 주기적인 Trig Pin 활성화 용도

일정 주기마다 Trig Pin을 10us만 활성화 시켜준다.


초음파 센서 코드
• Pin Interrupt : Echo Pin의 상태 변화 감지
<코드 알고리즘>
1. Rise time 측정

2. Fall time 측정
• 초음파가 수신부로 수신되면
Echo Pin이 LOW가 됨

3. Rise, Fall 사이의 시간을 측정 후,


거리 계산
SOME/IP, SOME/IP-SD를 이용한 시스템 구현

• ECU의 ServiceID: 0x7000


• 일정한 주기마다 클라이언트에게 NOTIFICATION으로 전송. Event 방식으로 구현.
• Client가 Service 구독 시 Service에서 계산된 거리 값을 Client의 FND에 출력하게 됨.
Setting
ULTRASOUND
MOTOR
MOTOR

ⓒSaebyeol Yu. Saebyeol’s PowerPoint


서보 모터 작동원리

2) 모터 회전 각 계산

90°만큼 회전하는 데 0.01[ms] × 90[egree] = 0.9[s]만큼의 High 신호 필요


0°로 설정하기 위해 1.5[ms] − 0.9[s] = 0.6[s]만큼의 High 신호 필요
180°로 설정하기 위해 0.6[ms] + 0.9[ms] + 0.9[ms] = 2.4[ms]만큼의 High 신호 필

ⓒSaebyeol Yu. Saebyeol’s PowerPoint


모터 서비스 작동 원리

• Ack하겠다는 SD 메시지 전달 이후 다시 SOME/IP를 통해서 메시지 전달


• Fire & Forget method를 이용해서 Client로 부터 Server로 서비스 요청(저항 값)
• Server는 Client에 메시지 전달 필요없이 모터 구동
모터 구동 코드
· ADC_Read_and_Convert
Client에서 가변저항 값을 측정함

· Rotate_Servo
Client가 준 resistance값을 통해서
Server에서 모터 구동
데이터 전달
SOME/IP-SD 코드를 이용하여 data 이동

SOME/IP_SD.c 내부
RecvTask_SD 함수 이용

Server로부터 Ack 메시지를 받으면


그에 대한 응답 메시지 전송
(client to server)
SOME/IP 프로토콜

Ethernet파일 내부 코드 추가

초음파 보내는 코드와 비슷하게 작성

Motor서비스일 때 메시지를 보낼 수 있게 작성
SOME/IP-SD

ⓒSaebyeol Yu. Saebyeol’s PowerPoint


SOME/IP-SD

CAN 통신 SOME/IP-SD

ⓒSaebyeol Yu. Saebyeol’s PowerPoint


SOME/IP-SD Format

ⓒSaebyeol Yu. Saebyeol’s PowerPoint


Service Entry 및
Eventgroup Entry

ⓒSaebyeol Yu. Saebyeol’s PowerPoint


Play & Plug 지원 시스템

ⓒSaebyeol Yu. Saebyeol’s PowerPoint


isNetworkUp==0
-> Ethernet이 연결되었음

isNetworkUp!=0
-> Ethernet이 연결되지 않았음

ⓒSaebyeol Yu. Saebyeol’s PowerPoint


메세지 전송 및 처리

ⓒSaebyeol Yu. Saebyeol’s PowerPoint


TransTask_SD_Offer
주기적으로 OfferMessage전송

ⓒSaebyeol Yu. Saebyeol’s PowerPoint


vMakeOfferMsg
->OfferMessage 생성

ⓒSaebyeol Yu. Saebyeol’s PowerPoint


RecTask_SD ->
이더넷을 통해 수신된 SOME/IP-SD
메시지를 처리

1. Flag 값으로 offer/sub/ack구분


2. ECU 값으로 client와 server구분
3. Type 값으로 offer/sub/ack구분
4. TTL 값으로 subscribe인지 구분
ⓒSaebyeol Yu. Saebyeol’s PowerPoint
vMakeSubMsg
-> Subscribe Message 생성

ⓒSaebyeol Yu. Saebyeol’s PowerPoint


개선사항 및 보완점

ⓒSaebyeol Yu. Saebyeol’s PowerPoint


1. Server 및 Client의 주소/정보 저장

Offer
Client Server

Subscribe
Client Server

Message로 부터 추출된 주소 및
정보를 저장하는 구조체

ⓒSaebyeol Yu. Saebyeol’s PowerPoint


2. Client의 스위치를 통한 Server 제어

ⓒSaebyeol Yu. Saebyeol’s PowerPoint


3. 다양한 타입의 Option 추가

ⓒSaebyeol Yu. Saebyeol’s PowerPoint


기존의 IP Option

추가로 작성한
ConfigurationOption과
LoadBalancingOption
ⓒSaebyeol Yu. Saebyeol’s PowerPoint
Q&A

ⓒSaebyeol Yu. Saebyeol’s PowerPoint

You might also like