본문 바로가기

Arduino/응용 프로젝트 (2학기)

GPS신호를 받아 LCD로 출력하기

 작성자 : 신준범


이번에 내가 제작할 것은 GPS센서를 통해 GPS신호를 수신한 후 LCD로 출력하는 시스템을 만들 것이다.

1. 이론적 배경

GPS란?

GPS(Global Positioning System 글로벌 포지셔닝 시스템) 또는 범지구위치결정시스템은 현재 완전하게 운용되고 있는 유일한 범지구위성항법시스템이다. GPS에서는 중궤도를 도는 24개(실제는 그 이상)의 인공위성에서 발신하는 마이크로파 GPS 수신기에서 수신하여 수신기의 위치벡터를 결정한다.

출처 : http://ko.wikipedia.org/wiki/GPS

 LCD

액정 디스플레이(液晶 Display) 또는 액정 표시장치(液晶表示裝置), 줄여서 LCD(liquid crystal display)는 얇은 디스플레이 장치의 하나이다. 전력이 적게 소모되기 때문에 휴대용 장치에 많이 쓰인다.

하나의 화소는 두 개의 투명 전극이 연결된 액정으로 되어 있고, 양쪽에는 서로 수직인 편광 필터가 있다. 평상시에는 액정의 일정한 배열이 빛을 통과시키지만 전압을 걸면 액정의 배열이 고정되어 빛이 통과하지 못하고 차단된다.

출처 : http://ko.wikipedia.org/wiki/%EC%95%A1%EC%A0%95_%EB%94%94%EC%8A%A4%ED%94%8C%EB%A0%88%EC%9D%B4

 

2. 연구 방법



사용한 LCD연결


먼저 처음으로 LCD만을 이용하여 LCD를 사용해보았다.

사용한 코드는 예제에도 있는 Hello world 코드이다.

 

다음으로 GPS센서를 이용해보았다.

사용한 GPS모듈 GTPA013이다.

rx는 2번 포트에 tx는 3번 포트에 연결을 한후 Vin과 3.3V를 연결해주고 GND를 연결해준다. 그리고 adafruit_GPS라는 이름의 라이브러리(인터넷 서핑을 하면 금방 찾을 수 있을 것이다.)를 추가 한 다음에 Adafruit_GPS.h의 헤더파일을 추가한 후 예제에 있는 parsing이라는 프로그램을 이용한다.

 

 

 

 

그리고 baud를 115200으로 맞추면 다음과 같이 gps 신호를 수신받을 수 있다.

이렇게 두 가지를 병합해서 사용하면

 

다음과 같이 LCD에 GPS 값을 띄울 수 있다.    

LCD와 GPS센서를 동시에 쓸 때는 LCD만 썼을 떄의 5, 4, 3, 2포트를 10,9,8,7포트로 옮겨 사용하였다.

그리고 GPS신호가 2초마다 갱신되므로 LCD에 나오는 값도 2초마다 갱신되게 하였다.

 

3. 결론

LCD와 GPS를 동시에 이용할 수 있다.
허나 GPS값을 받았을 때 시간에 9시간의 오차가 있었다. 이번 이 프로젝트를 할 때에는 시간 코드에 +9를 하여 보정하긴 했지만 정확하게 하기위해서는 3시(보정한 시간은 12시)가 넘어가는 순간의 시간도 보정해주어야 된다.
병합 코드가 날아가버리는 바람에 업로드 할 순 없었지만 조만간 다시 코딩 해보아야 겠다.