'분류전체'에 해당되는 글 55건

  1. 2013.07.03 단위 환산표
  2. 2013.07.03 GPS NMEA-0183 포맷
  3. 2013.04.16 HTTP
  4. 2013.04.03 Network byte order
  5. 2013.02.09 안드로이드 개발자 가이드 문서
  6. 2013.02.08 VMware 자동시작 방법
  7. 2013.01.10 Win7 심블릭 생성하는 방법
  8. 2013.01.05 printf 포맷
  9. 2012.08.10 SVN 관련
  10. 2012.07.11 Win7에서 자동 로그온을 설정하는 방법

단위 환산표

지식 2013. 7. 3. 10:05

가속도, 밀도, 길이, 부피 ...

 

http://www.toolspia.co.kr/sir.php?w=v&sm_id=4&si_id=839&sel=&s=&op=&page=2

'지식' 카테고리의 다른 글

Git관련  (0) 2015.01.16
ASCII 코드표(확장포함)  (0) 2014.05.29
Network byte order  (0) 2013.04.03
VMware 자동시작 방법  (0) 2013.02.08
SVN 관련  (0) 2012.08.10
Posted by 올케이알
,

 

GPS-nmea0183-criminalist.pdf


출처 : http://aquayo.blog.me/80050192618

 

 

사용하고 있는 GPS 수신기의 데이타 인터페이스 포맷이 NMEA-0183 이다.
NMEA-0183 포맷은 아래와 같다.

NMEA: National Marine Electronics Association
NMEA 에서는 GNSS, GPS, Loran, Omega, Transit 등 다양한 애플리케이션을 위한 데이타셋을 정의하고 있다.
아래는 GPS 를 위한 7가지 데이타 셋이다.

  1. GGA: GPS Fix Data,
  2. GLL: Geographic Position - Latitude/Longitude
  3. GSA: GNSS DOP 와 Active Satellites
  4. GSV: GNSS Satellites in View
  5. RMC: Recommended Minumun Specific GNSS Data
  6. VTG: Course over Ground
  7. ZDA: Time and Date

NMEA 프로토콜의 구조

8비트 아스키 문자를 사용하여 4800 Baud 로 데이타를 전송한다. 패리티 비트는 사용하지 않는다.
각 GPS 데이타셋은 다음과 같은 구조로 이루어져 있다.

$GPDTS,Inf_1,Inf_2,Inf_3,Inf_4,Inf_5,Inf_6,Inf_n*CS<CR><LF>

필드
내용
$  데이타셋의 시작을 나타낸다.
GP  GPS 정보를 나타낸다.
DTS  데이타셋의 식별자.
Inf_1 bis Inf_n  1 ... n 정보 (예, course data 를 위한 175.4)
,  서로 다른 정보를 나타내는 아이템간의 구분문자
*  checksum 을 위한 구분 문자
CS  전체 데이타셋을 검사하기 위한 첵섬(Control Word)                           
<CR><LF>  데이타셋의 끝.
GPS 데이타셋의 문자열은 시작과 끝을 나타내는 문자를 제외하고 79자를 초과해서는 안된다.

NMEA 프로토콜로 기록한 GPS 데이타 예제(SONY GPS 수신기)

$GPGGA,004952,3723.8259,N,12655.3071,E,1,04,04.7,00046.9,M,018.1,M,,*4F
$GPGSA,A,3,13,16,19,23,,,,,,,,,19.3,04.7,18.7*08
$GPGSV,2,1,05,13,33,295,40,16,57,043,41,19,42,212,41,23,40,249,38*7B
$GPGSV,2,2,05,31,,,28,,,,,,,,,,,,*74
$GPRMC,004952,A,3723.8259,N,12655.3071,E,000.0,088.7,291107,,,A*72
$GPVTG,088.7,T,,M,000.0,N,000.0,K,A*0A


1. GGA 데이타 셋
 
   GGA 데이타셋은 시간, longitude, latitude, 시스템의 품질, 사용중인 위성의 수, Height 에 대한 정보를 나타낸다.

데이타 예제
           $GPGGA,004952,3723.8259,N,12655.3071,E,1,04,04.7,00046.9,M,018.1,M,,*4F

개별 문자의 값 과 내용

필드
 내용
$ GGA 데이타셋의 시작                                                          
GP GPS 어플라이언스로부터 만들어진 정보
GGA GGA 데이타셋 식별자
004952 UTC Positional Time: 00시 49분 52초
3723.8259 Latitude: 37도23.8259분
N 북위 (N=north, S=South)
12655.3071 Longitude: 126도 55.3071분
E 동경 (E=East, W=West)
1 GPS (0= no GPS, 1=GPS, 2=DGPS)
04 계산을 위해 사용한 위성의 갯수
04.7 HDOP(Horizontal Dilution of Precision)
00046.9 안테나 높이 (Geoid Height)
M 높이 단위(M=meter)
018.1 Ellipsoid 와 Geoid 간의 높이 차이
M 높이 차이의 단위(M=meter)
DPGS 데이타의 Age (No DGPS)
* 첵섬 구분자
4F 전체 데이타 검증을 위한 첵섬값
<CR><LF> 데이타 종료

2. GLL 데이타 셋

 GLL 데이타 셋은 Latitude, Longitude, time, health 정보를 갖고 있다.
SONY GPS 에는 이 데이타셋은 들어 있지 않다.

데이타 예제
          $GPGLL,4717.115,N,00833.912,E,130305.0,A,*32

필드
 내용
$ GLL 데이타의 시작                                                               
GP GLL GLL 데이타셋 식별자
4717.115 Latitude: 47도 11.115분
N 북위(N=north,S=south)
00833.912 Logitude: 8도 33.912분
E 동경(E=East, W=West)
130305.0 UTC 시간: 13시 3분 5.0초
A 데이타셋 품질: A(Valid), V(Invalid)
* 첵섬 구분자
32 첵섬
<CR><LF> 데이타 종료

3. GSA 데이타 셋
 
측정 모드(2D, 3D)에 대한 정보, 위치 결정에 사용된 위성의 수, DOP 등의 정보를 갖고 있다.

데이타 예제  
      $GPGSA,A,3,13,16,19,23,,,,,,,,,19.3,04.7,18.7*08

필드
 내용
$ 데이타의 시작
GP GPS 어플라이언스 정보
GSA GSA 데이타셋 식별자
A 계산 모드(A = 2D/3D 모두간의 자동선택, M=수동 선택)
3 3차원 계산 모드(1=none, 2=2D, 3=3D)
13 계산에 사용된 위성의 번호 (13번 위성)
16 계산에 사용된 위성의 번호 (16번 위성)
19 계산에 사용된 위성의 번호 (19번 위성)
23 계산에 사용된 위성의 번호 (23번 위성)
계산에 사용된 위성의 번호
계산에 사용된 위성의 번호
계산에 사용된 위성의 번호
계산에 사용된 위성의 번호
계산에 사용된 위성의 번호
계산에 사용된 위성의 번호
19.3 PDOP (Position DOP)
04.7 HDOP (Horizontal DOP)
18.7 VDOP (Vertical DOP)
* 첵섬 구분자
08 첵섬
<CR><LF> 데이타 종료

4. GSV 데이타 셋
위성의 수와
데이타 예제
      $GPGSV,2,1,05,13,33,295,40,16,57,043,41,19,42,212,41,23,40,249,38*7B

필드
 내용
$ 데이타의 시작
GP GPS 어플라이언스 정보
GSV GSV 데이타셋 정보
2 전송된 GVS 데이타 셋의 전체 수( 1..9)
1 현재 GVS 데이타 셋 번호 (1..9)
05 관측되는 전체 위성의 수
13 첫번째 위성의 식별 번호 13번
33           위성의 고도 33도 (0 ...90 도)
295           위성의 방위각 295도 (0..360도)
40           위성의 Signal-to-noise 비율 40(db-Hz) (1..99,  추적되지 않을 때 NULL)
16 두번째 위성의 식별 번호 16번
57           위성의 고도 57도
043           위성의 방위각 43도
41           위성의 Signal-to-noise 비율 41(db-Hz)
19 세번째 위성의 식별 번호 19번
42           위성의 고도 42도
212           위성의 방위각 212도
41           위성의 Signal-to-noise 비율 41(db-Hz)
23 네번째 위성의 식별 번호 23번
40           위성의 고도 40도
249           위성의 방위각 249도
38           위성의 Signal-to-noise 비율 38(db-Hz)
* 첵섬 구분값
7B 첵섬

5. RMC 데이타 셋

Recommended Minumum Specific GNSS, 시간, latitude, longitude, height, system status, speed, course, date 등의 정보를 갖고 있다.

데이타 예제
      $GPRMC,004952,A,3723.8259,N,12655.3071,E,000.0,088.7,291107,,,A*72

필드
 내용
$ 데이타의 시작
GP GPS 어플라이언스 정보
RMC RMC 데이타셋 식별자
004952 수신 시간 (UTC), 00시 49분 52초
A 데이타셋 품질 (A=Valid, V=Invalid)                                                    
3723.8259 Latitude: 37도 23.8259분
N 북위
12655.3071 Longitude: 126도 55.3071분
E 동경
000.0 속도: 0 Knots
088.7 경로: 88.7 도
291107 시간: 2007년 11월 29일 (DDMMYY)
보정 편차
보정 편차 방향(W=West, E=East)
A
* 첵섬 구분자
72 첵섬

-- 포맷이 좀 다르다................

6. VTG 데이타 셋

경로와 속도에 기반한 지상 경로와 속도 정보를 갖고 있다.

데이타 예제
      $GPVTG,088.7,T,,M,000.0,N,000.0,K,A*0A

필드
 내용
$ 데이타의 시작
GP GPS 어플라이언스 정보
VTG VTG 데이타 셋 식별자
088.7 수평 경로 88.7도 (T)
T 지도에 대응하는 Angular Course
수평경로 0 도 (M)
M 자기장에 대응하는 Angular Course
000.0 수평 속도 (N)
N 속도 단위 (knots)
000.0 수평 속도 (km/h)
K 속도 단위 (km/h)
A 데이타 셋 품질로 보임..(A=Valid, V=Invalid)                                               
* 첵섬 구분자
0A 첵섬


7. ZDA 데이타 셋

시간 정보가 들어 있다.

SONY GPS 에는 이 정보 역시 들어 있지 않다.

데이타 예제
     $GPZDA,130305.2,20,06.2001,,,*57

필드
 내용
* 데이타의 시작
GP GPS 어플라이언스 정보
ZDA ZDA 데이타셋
130305.2 UTC 시간: 13시3분 5.2초
20 Day (00.31)
06 Month (01..12)
2001 Year
Local Time 일자 예약 (HH)
Local Time 일자 예약 (MM)                                                               
* 첵섬 구분자

첵섬으로 데이타 정합성 계산

첵섬은 데이타의 시작과 끝을 나타내는 문자를 제외한 모든 문자를 8비트 문자로 XOR 조합을 한후, 각 4비트 자릿수에 대한 결과값을 나타낸다.

첫번째 VGA 데이타로 첵섬을 계산해 보자.
$GPVTG,088.7,T,,M,000.0,N,000.0,K,A*0A

문자 아스키 (8비트 값)  
G   0x47    0   1   0   0    0    1   1    1 
P   0x50   0   1   0   1   0    0   0   0
V   0x56   0   1   0   1   0    1   1    0
T   0x54   0   1   0   1   0    1   0   0
G   0x47    0   1   0   0    0    1   1    1 
,   0x2C   0   0   1   0    1   1   0   0
0   0x30   0   0   1   1   0    0   0   0
8   0x38   0   0   1   1   1   0   0   0
8   0x38   0   0   1   1   1   0   0   0
.   0x2E   0   0   1   0    1   1   1    0
7   0x37   0   0   1   1   0    1   1    1 
,   0x2C   0   0   1   0    1   1   0   0
T   0x54   0   1   0   1   0    1   0   0
,   0x2C   0   0   1   0    1   1   0   0
,   0x2C   0   0   1   0    1   1   0   0
M   0x4D   0   1   0   0    1   1   0   1 
,   0x2C   0   0   1   0    1   1   0   0
0   0x30   0   0   1   1   0    0   0   0
0   0x30   0   0   1   1   0    0   0   0
0   0x30   0   0   1   1   0    0   0   0
.   0x2E   0   0   1   0    1   1   1    0
0   0x30   0   0   1   1   0    0   0   0
,   0x2C   0   0   1   0    1   1    0   0
N   0x4E   0   1   0   0    1   1    1    0
,   0x2C   0   0   1   0    1   1    0   0
0   0x30   0   0   1   1   0    0   0   0
0   0x30   0   0   1   1   0    0   0   0
0   0x30   0   0   1   1   0    0   0   0
.   0x2E   0   0   1   0    1   1    1    0
0   0x30   0   0   1   1   0    0   0   0
,   0x2C   0   0   1   0    1   1    0   0
K   0x4B   0    1   0   0    1   1    0   1
,   0x2C   0    0   1   0    1   1    0   0
A   0x41   0    1   0   0    0    0   0   1 
XOR 합   0x0A   0    0   0   0   1   0   0   0
4bit(Nibble)                     0 0 0 0    1 0 0 0
Hex 값                        0x00       0x0A
ASCII CS 값                        0         A

진짜로 XOR 연산이 저렇게 나올까... 글쎄... 

 

HDOP 정의 링크

  GPS튀는 현상 설명

  http://blog.daum.net/commeca/8907691


참고

https://techlog.gurucat.net/239


'개발 > 기술문서' 카테고리의 다른 글

모바일 프로그램  (0) 2013.12.03
HTTP  (0) 2013.04.16
음계 표준주파수  (0) 2012.06.21
Posted by 올케이알
,

HTTP

개발/기술문서 2013. 4. 16. 23:13

http://www.w3.org/Protocols/rfc2616/rfc2616.html

'개발 > 기술문서' 카테고리의 다른 글

모바일 프로그램  (0) 2013.12.03
GPS NMEA-0183 포맷  (0) 2013.07.03
음계 표준주파수  (0) 2012.06.21
Posted by 올케이알
,

Network byte order

지식 2013. 4. 3. 09:48

Network byte order

 

출처 : http://stone.backrush.com/sunfaq/ljs003.html

 

* Big endian 방식 사용

 

 

                             Axil S/E-ljs046
                                1994.10.4
                               Lee Jin-Soo


SUBJECT:   NETWORK에서 사용되는 Byte Order는?


  #######   NETWORK  BYTE   ORDER   #######

o 불행히도 모든 컴퓨터가 여러 바이트로 된 데이타의 저장시 같은 바이트 순서를 따르지 않는다.
   8-비트 바이트를 사용하지 않는 컴퓨터들은 사라져 가고 있지만 바이트의 순서에 대해서는 명확한
   표준이 없으므로 문제점으로 남아 있다.
   2바이트로 이루어진 16-비트 정수의 경우를 예로 들어 보면 이것의 저장 방법에는 하위 바이트를 먼저
   두는것 - 이를 little endian이라고 한다 -과 상위 바이트를 먼저 두는 것 - 이를 big endian이라고한다 -이
   있다.
   첫번째의 경우는 다음과 같다.

     Little endian byte order   ---------------------------------------------------------
                                |    high-order byte      |     low-order  byte         |
                                ---------------------------------------------------------
                                                          ↑                            ↑
                                                       addr A+1                      addr A

                                여기서 오른편에서 왼편으로 주소가 증가한다.
                                낮은 주소가 낮은 바이트라는 논리이다.

     Big endian byte  order     ---------------------------------------------------------
                                |    high-order byte      |     low-order  byte         |
                                ---------------------------------------------------------
                                ↑                        ↑
                              addr A                    addr A+1

                                여기서는 왼쪽편에 있는 것이 오른편보다 낮은 주소이다

   현재 컴퓨터 시스템에서 많이 쓰이고 있는 바이트 순서는 다음과 같다.

           --------------------------------------------------------------------
           |  big endian    :  sparc, IBM 370, Motorola 68000, Pyramid        |
           --------------------------------------------------------------------
           |  little endian : Intel 80x86(IBM PC), DEC VAX, DED PDP-11        |
           --------------------------------------------------------------------

   32 비트 정수의 경우에는 이런 현상이 심각하다. 시스템에 따라 16 비트 부분이 서로 바뀌어 있다.
   전산망 규약에서 이 문제에 대한 해결 방법은 망 바이트의 순서를 확정짓는 것이다.
   TCP/IP, XNS, SNA 규약들은 규약 머릿부에 쓰이는 16-비트 정수와 32-비트 정수에 모두
   big endian을 사용한다. (실수 데이타 부분에 대해서는 차이가 심하지만 다행이 규약에서는 정수 영역만
   다룬다)

참고 : http://fattarzan.tistory.com/entry/htonl-htons-ntohl-ntohs

참고 : http://choong0121.tistory.com/entry/네트워크-바이트-순서Network-byte-Ordering

'지식' 카테고리의 다른 글

ASCII 코드표(확장포함)  (0) 2014.05.29
단위 환산표  (0) 2013.07.03
VMware 자동시작 방법  (0) 2013.02.08
SVN 관련  (0) 2012.08.10
Windows XP Mode 쉽게 재설치하는 방법  (0) 2012.07.03
Posted by 올케이알
,

안드로이드 개발자 가이드 문서

'개발' 카테고리의 다른 글

ESP개발환경  (0) 2020.04.15
printf 포맷  (0) 2013.01.05
Posted by 올케이알
,


http://www.parkoz.com/zboard/view.php?id=my_tips&page=1&sn1=&divpage=3&sn=off&ss=on&sc=off&select_arrange=headnum&desc=asc&no=14412

 

[bat 파일 생성]

PATH = c:\Program Files (x86)\VMware\VMware Workstation\;%PATH%
vmrun.exe -T ws start d:\VMware\Machines\Win7x32\Win7x32.vmx nogui

 

[시작프로그램 등록]

bat파일 링크하여 등록


[참고]

http://snoopybox.co.kr/1068


[주의사항 -- 악성코드]

http://hummingbird.tistory.com/4954

  

'지식' 카테고리의 다른 글

단위 환산표  (0) 2013.07.03
Network byte order  (0) 2013.04.03
SVN 관련  (0) 2012.08.10
Windows XP Mode 쉽게 재설치하는 방법  (0) 2012.07.03
null modem emulator  (0) 2012.06.12
Posted by 올케이알
,


리눅스를 쓰는 분들은 심볼릭 링크라는것에 익숙합니다. 'ln -s' 명령으로 사용하죠.


제가 윈도우7에서 심볼릭 링크를 사용하려는 이유는 아이팟의 백업 디렉토리를 다른 드라이브로 옮기기 위함입니다. c 드라이브의 용량이 그다지 크지 않기도 하고, c 드라이브는 os 용이라 백업은 다른 드라이브에 해 두려는 것이죠.

제가 참고한 웹페이지는 http://snoopybox.co.kr/1400 이곳이고 직접보시면 자세히 설명되어 있습니다. xp에선 별도의 프로그램을 사용해야 한다는군요.


위의 링크의 설명을 보시면 아시겠지만 심볼릭링크를 이용하면 저렇게 c 드라이브의 내용을 다른 드라이브로 옮기고 심볼릭링크를 걸어주면 해당 파일들이 c 드라이브에 있는것처럼 사용할 수가 있습니다.

링크에도 설명되어 있지만 간단히 사용법을 적어보자면.....

mklink /d "폴더명" "연결할 디렉토리"



이런식으로 사용하면 됩니다.

주의하실점이 하나 있는데....항상그런건 아니지만 윈도우7 에서는 관리자 권한을 갖지 않으면 파일의 삭제/생성 등이 안되는 디렉토리가 있습니다. 이런곳을 이용 하실땐 관리자권한으로 콘솔(명령프롬프트)를 열어 합니다.


혹시나 싶어서 이야기 하는 겁니다만....따옴표의 경우는 디렉토리명에 빈칸이 있을 경우는 써줘야 하고 빈칸이 없을 경우 사용하지 않아도 됩니다.

Posted by 올케이알
,

printf 포맷

개발 2013. 1. 5. 09:39

http://wwwi.tistory.com/99 

'개발' 카테고리의 다른 글

ESP개발환경  (0) 2020.04.15
안드로이드 개발자 가이드 문서  (0) 2013.02.09
Posted by 올케이알
,

SVN 관련

지식 2012. 8. 10. 21:43

프로젝트(소스) 관리

  • 프로그램 구하기

1) VisualSVN Server : http://www.visualsvn.com/server/

2) TortoiseSVN client : http://tortoisesvn.net/

3) AnkhSVN (visual studio 2005 ~ 지원) : http://ankhsvn.open.collab.net/


  • 특정권한

     http://mugrammer.tistory.com/59


'지식' 카테고리의 다른 글

Network byte order  (0) 2013.04.03
VMware 자동시작 방법  (0) 2013.02.08
Windows XP Mode 쉽게 재설치하는 방법  (0) 2012.07.03
null modem emulator  (0) 2012.06.12
무료 가상시리얼 에뮬레이터  (0) 2012.06.12
Posted by 올케이알
,

Win7 에서 자동 로그온을 설정하는 방법

https://support.microsoft.com/ko-kr/kb/977046

Posted by 올케이알
,