Download presentation
Presentation is loading. Please wait.
1
Celestial Global Positioning System Sunflower 완료 세미나 2008. 07. 03
2
1 Contents 전 지구 측위기 개요 1 동기 2 알고리즘부 구현 사항 3 하드웨어부 구현 사항 4 비젼부 구현 사항 5 항목별 개선 완료 내역 6 Demo 및 Q&A 7
3
전 지구 측위기 개요
4
3 개 요개 요개 요개 요 목표 태양의 위치를 확인하여 현재 관찰자의 위치를 알려주는 GPS 와 같은 측위시스템 개발 목표 태양의 위치를 확인하여 현재 관찰자의 위치를 알려주는 GPS 와 같은 측위시스템 개발 이점 전시와 위성마비 상황에서도 작동가능 대규모 기반시설 불필요 이점 전시와 위성마비 상황에서도 작동가능 대규모 기반시설 불필요
5
4 시스템 예상도 및 완성도
6
동기 및 기구부 개선사항
7
동 기동 기동 기동 기 6 그런데 GPS 가.. 사용 할 수 없게 된다.
8
[ 기구부 향상 ] 부품 지자기 센서의 Noise 제거 7 자기장 차단제 자기장 차단제로 완전 케이스를 제작하 여 자기장을 차폐한다.
9
[ 기구부 향상 ] 부품 지자기 센서의 Noise 제거 8 자기장 차단제로 완전 케이스를 제작하 여 자기장을 차폐한다.
10
[ 기구부 향상 ] 부품 지자기 센서의 Noise 제거 9
11
10 [ 기구부 향상 ] 기구부 참고 PCB 결합 위치 기어와의 정확한 결합을 위해 정확한 위치로 설계 및 제작
12
11 작동 : 현재 테스트보드의 구성상 문제로 기어가 맞물리지 않아 수평축 이동에 문제 발생 [ 기구부 향상 ] 기구부 참고
13
12 [ 기구부 향상 ] 기구부 참고
14
13 작동 : 현재 테스트보드의 구성상 문제로 기어가 맞물리지 않아 수평축 이동에 문제 발생 [ 기구부 향상 ] 기구부 참고
15
알고리즘
16
Astro 15 적경, 적위를 고도, 방위각으로 변환하는 공식의 방정식을 풀어 위도와 경도를 계산 적경, 적위를 고도, 방위각으로 변환하는 공식의 방정식을 풀어 위도와 경도를 계산 Sin( 고도 ) = sin( 위도 )sin( 적위 ) + cos( 적위 )cos( 위도 ) cos(LHA) Sin( 고도 ) = sin( 위도 )sin( 적위 ) + cos( 적위 )cos( 위도 ) cos(LHA) Tan( 방위각 ) = -cos( 적위 )cos( 위도 )sin(LHA) / sin( 적위 ) – sin( 위도 )sin( 고도 ) Tan( 방위각 ) = -cos( 적위 )cos( 위도 )sin(LHA) / sin( 적위 ) – sin( 위도 )sin( 고도 ) 고도, 방위각 : 측정 고도, 방위각 : 측정 적위 : L(Mean Longitude of the Sun), E ( obliquity of the ecliptic ) 계산 적위 : L(Mean Longitude of the Sun), E ( obliquity of the ecliptic ) 계산 L, E : T ( number of Julian centuries since Jan 1, 2000, 12 UT ) 계산 L, E : T ( number of Julian centuries since Jan 1, 2000, 12 UT ) 계산 LHA (Local Hour Angle) : GAST, 적경, 경도 계산. LHA (Local Hour Angle) : GAST, 적경, 경도 계산. 적경 : L, E 계산 적경 : L, E 계산 GAST (Greenwich Apparent Sidereal Time) : T 를 이용하여 계산 GAST (Greenwich Apparent Sidereal Time) : T 를 이용하여 계산
17
[Astro] LHA 구하기 16
18
경도 연산 알고리즘 sin( 고도 ) = sin( 적위 ) sin( 위도 ) + cos( 적위 ) cos( 위도 ) cos( 지방항성시 - 적경 ) tan( 방위각 ) = [-cos( 적위 ) cos( 위도 ) sin( 지방항성시 - 적경 )] / [sin( 적위 ) - sin( 위도 ) sin( 고도 )] LST = GST – | ( 그리니치 경도 – 관측자 경도 ) | / 15 따라서 관측자경도 = ( LST – GST ) * 15 시간각 : 360 도를 24 시로 표시하는 각 항성시 : 특정 별이 같은 위치로 오는 시간을 정확히 24 시간으로 하는 시간 GST( 그리니치 지방 항성시 ): 그리니치 자오선에서 측정된 항성시 LST( 지방항성시 ): 타지방일 경우 그리니치를 기준으로 연산한 항성시 17
19
[Astro] 오차요인 분석 천문상수들의 특성에 의한 오차 천문상수들의 특성에 의한 오차 ex) UT to GST : ex) UT to GST : 12 시 기준시간을 정하기위해서 UT 값의 0.5 이하 소수를 버림 12 시 기준시간을 정하기위해서 UT 값의 0.5 이하 소수를 버림 LHA 근사치 정확도 연산 LHA 근사치 정확도 연산 10e-6 단위로 증가시키면서 근사치 해를 구한다. 10e-6 단위로 증가시키면서 근사치 해를 구한다. 18
20
하드웨어
21
시스템 초기화 시스템 구성도 20 Magnetic Compass Gyro Sensor Tilt Sensor DSP TMS320F2812 Encoder 1 Encoder 2 Motor 1 Motor 2 Bluetooth 태양 추적
22
개발환경 Windows XP SP2 Windows XP SP2 TMS320F2812 TMS320F2812 CCS 3.3 C2000 CCS 3.3 C2000 TDS510USB Plus Emulator TDS510USB Plus Emulator 21
23
초기화 부품 초기화 부품 22 방위각 : 지자기 센서 이용 고도 : 기울기센서
24
시스템 동작 순서 23 STEP 1 시스템 초기화 센서를 통해 방위각과 고도 0 인 지점으로이동 STEP 2 Scanning 태양을 찾을 때 까지 방위각과 고도 변경 태양의 중심을 찾을 때 까지 방위각과 고도 변경 STEP 3 PC 에서 제어
25
24 회로도부
26
[ 제어향상 ] Sensor Fusion 기울기 센서의 횡가속도의 영향을 줄임 25 Tilt Gyro LPF HPF Angle 적분 + + Tilt Gyro
27
[ 제어향상 ] Sensor Fusion 26 Phase Delay 거의 없음. 횡 가속도의 영향을 줄임
28
고도 & 방위각 제어 – Tilt, Gyro Tilt 지자기 센서 27
29
고도 & 방위각 제어 - Encoder 28 초기화 할 때는 Sensor 를 기준으로 위치제어 초기화가 끝난 뒤에는 Encoder 를 기준으로 위치 제어
30
고도 측정 및 통신 RS-232 통신을 이용하여 PC 와 통신 RS-232 통신을 이용하여 PC 와 통신 29 DSP PC 화면의 중심과 태양의 중심과 상대 좌표 고도와 방위각
31
지자기 센서의 오작동 수평 – 수평계를 통한 수평 확인 수평 – 수평계를 통한 수평 확인 Motor – 퍼멀로이를 통한 자기장 차단 Motor – 퍼멀로이를 통한 자기장 차단 베어링, 아크릴 – 센서의 위치조정 베어링, 아크릴 – 센서의 위치조정 강자계에 의한 오작동 강자계에 의한 오작동 30
32
비젼부
33
32 비젼부 Library : OpenCV Filter : ND8 * 4 개 태양의 중심부는 주변부에 비해 가장 밝으며 밝기는 거리제곱에 반비례하는 성질을 이용.
34
33 Image Processing ( 해 찾기 ) 단계 = 8 이미지를 명도 단계로 구분 닫힘 연산 가장 큰 명도 값 으로 이진화 라벨링 하여 원 선택 경계 추출 외접원 생성 오차 산정 최소 오차 갱신, 단계 <= 64 ? 단계 x 2 최소오차 < 허용범위 실패성공 Yes No Yes 1. 이미지를 명도 단계로 구분 - 명도 256 단계 -> 명도 8, 16, 32, 64 단계 - 유사한 단계에 있는 명도 구간이 하나의 영 역으로 나타남
35
34 Image Processing ( 해 찾기 ) 단계 = 8 이미지를 명도 단계로 구분 닫힘 연산 가장 큰 명도 값 으로 이진화 라벨링 하여 원 선택 경계 추출 외접원 생성 오차 산정 최소 오차 갱신, 단계 <= 64 ? 단계 x 2 최소오차 < 허용범위 실패성공 Yes No Yes 2. 닫힘 연산 - 명도 단계에 따라 구분한 이미지에서 구분 된 영역 내의 노이즈를 제거 - 팽창 -> 침식 3. 가장 큰 명도로 이진화 - 웹캠의 자동 노출 - 태양의 중심부근의 명도가 가장 높음 4. 라벨링 하여 원 선택 - 가장 큰 면적의 원 선택 : 노이즈 또는 태양 의 일부 배제
36
35 Image Processing ( 해 찾기 ) 단계 = 8 이미지를 명도 단계로 구분 닫힘 연산 가장 큰 명도 값 으로 이진화 라벨링 하여 원 선택 경계 추출 외접원 생성 오차 산정 최소 오차 갱신, 단계 <= 64 ? 단계 x 2 최소오차 < 허용범위 실패성공 Yes No Yes 5. 경계 추출 및 외접원 생성 - 빛은 구의 형태로 사방으로 퍼짐 - 빛의 밝기는 거리의 제곱에 반비례 - 동일한 밝기를 갖는 구간은 태양의 중 심으로부터 같은 거리에 있다고 추정. - 해당 경계가 모두 포함되는 외접원 생 성 6. 오차 산정 - 선택된 영역의 면적 / 외접원의 면적 - 노이즈가 기타 장애 요소가 포함될 경 우 낮은 수치.
37
36 Image Processing ( 해 찾기 ) 단계 = 8 이미지를 명도 단계로 구분 닫힘 연산 가장 큰 명도 값 으로 이진화 라벨링 하여 원 선택 경계 추출 외접원 생성 오차 산정 최소 오차 갱신, 단계 <= 64 ? 단계 x 2 최소오차 < 허용범위 실패성공 Yes No Yes 7. 16, 32, 64 단계에 동일하게 적용 - 경우에 따라 좀 더 세분화하여 수행 가능 - 경우에 따라 좀 더 세분화하여 수행 가능 8. 최소 오차 값이 허용 범위 내에 있을 경 우 해당 외접원의 중심을 태양의 중심 으로 선정
38
37 Image Processing ( 해 찾기 )
39
Software 구조. 38 Global Positioning Dlg VideoWnd Astro utiltime ImageProcess CommThread Queue
40
39 소프트웨어 구동 (Manual Search) 소프트웨어 구동 (Manual Search) Manual Search Thread Start 카메라로부터 이미지 획득 이미지로부터 태양 추출 오차범위 < 허용범위 거리 < 허용거리 HW 로부터 고도, 방위각 측 정 HW 이동 No 중심과의 거리 측정 위도, 경도 계산 Yse No Yse
41
소프트웨어 구동 ( Auto Search ) 소프트웨어 구동 ( Auto Search ) Auto Search 중 ?? 카메라로부터 이미지 획득 이미지로부터 태양 추출 오차범위 < 허용범위 Auto Search 실패 Manual Mode 실행 No Auto Search 종료 명령 Yse Auto Search Thread Start No Yse
42
41 DEMO DEMO
43
42 구현 항목 [ 설계 ] 기구부설계 마찰력 제거 기어설계로 프레임 제어 – 밀림현상 방지 자기장 간섭차단 1. 위치 2. 접지 3. 차단제 4. 재료변경 정확한 축간 결합 [ 제어 ] 회로설계모터제어수평제어 - 기울기 센서 제어 - 자이로 센서 제어 자북인식 방위각 측정 고도측정 [ 제어 ] 회로설계모터제어수평제어 - 기울기 센서 제어 - 자이로 센서 제어 자북인식 방위각 측정 고도측정
44
43 구현 항목 [ 비젼 ] - 태양의 인식 알고리즘 - 태양 중심 추출 알고리 즘 중심과 이각 측정 구현 노이즈개선 적용 디바이스간 통신 UI 구현 [ 비젼 ] - 태양의 인식 알고리즘 - 태양 중심 추출 알고리 즘 중심과 이각 측정 구현 노이즈개선 적용 디바이스간 통신 UI 구현 [ 알고리즘 ] - 적경 - 적위 -LST-GST - 황경 - 줄리어스역 - 위도 산출 알고리즘 - 경도 산출 알고리즘 [ 알고리즘 ] - 적경 - 적위 -LST-GST - 황경 - 줄리어스역 - 위도 산출 알고리즘 - 경도 산출 알고리즘
45
44 전지구 측위 시스템 Q & A
46
45 감 사 합 니 다감 사 합 니 다감 사 합 니 다감 사 합 니 다
Similar presentations