한국식(?) mp3플레이어에 익숙한 사람들은 그냥 mp3파일을 mp3플레이어 내의 폴더에 바로 복사하는걸 더 편하게 생각하고 아이튠의 음악 관리 방식을 불편하다고 생각하는 경우가 많다.
하지만 drag-n-drop방식은 아주 원시적인 방식으로 플레이어에 기껏해야 자주 듣는 음악 몇십곡 집어넣고 검색같은거 없이 곡들을 그냥 순차적으로 듣는 경우에나 유용하지 곡이 많아지거나 조금만 복잡한(?) 방식의 음악듣기를 원하는 경우에는 속수무책이 되어 버리기 쉽다.

예를 들어 '우울할 때 듣는 곡', '내 best 30', '야간 드라이브 할 때 듣는 곡' 식으로 폴더를 나눠 놓고 음악을 집어 넣는데 만일 A라는 곡이 3가지에 모두 포함되는 경우 A의 파일을 폴더 3곳에 각각 복사를 해 줘야 하기 때문에 플래쉬 메모리가 낭비되게 된다.

그 에 비해 아이튠의 경우 A의 파일은 한 곳에만 저장되고 (저장 위치는 사용자가 신경 쓸 필요가 없다. iTunes가 자동으로 알아서 관리해 준다.) 3개의 플레이 리스트를 만들어 그 플레이 리스트에 A라는 곡을 넣어만 주면 된다.

그리고 iTunes는 거기서 한발 더 나아가서 Smart playlist를 지원한다.
이건 플레이리스트에 사용자가 따로 곡을 집어넣어 줄 필요 없이 원하는 조건만 지정해 주면 그 조건에 맞는 곡들을 자동으로 목록에 추가해 주는 기능이다.


아이튠에서 곡 정보 화면이다. 여기에 그 곡의 다양한 정보(Tag)가 들어간다. 아이튠의 경우 대부분의 동작이 이 tag를 기반으로 움직이기 때문에 곡의 tag를 정확하게 관리해 주는게 필수적이다. 이 역시 drag-n-drop방식에 익숙한 사람들에게는 쓸데없는 일이라고 생각되기 쉬운데 tag는 일단 한번만 정리 해 놓으면 더 이상 편하고 효율적일수가 없다.


iTunes를 실행한다.


Files->New Smart Playlist... 를 선택해 준다.


스마트 플레이리스트를 설정해 줄 수 있는 창이 열리게 된다. 조건 항목이 1개인데 항목을 늘리고 싶으면 오른쪽의 '+' 버튼을 눌러주면 된다.


위쪽의 화면에서 '+' 버튼을 눌러 조건 항목을 2개로 만든 화면이다. 다시 조건항목을 줄이려면 '-' 버튼을 눌러주면 된다.

여기서 조건이란 태그에 들어있는 값들 중에 자신이 원하는 조건을 말한다. 즉 '[가 수 이름](a)[ABCDE](b)[시작](c)하는 노래' 같은 식으로 원하는 조건을 설정할 수 있다. 위의 조건 항목에서 첫번째 칸에 (a)의 값을, 두번째 칸에 (c)의 값을, 세번째 칸에 (b)의 값을 넣어주면 된다.


(a) 항목에 들어갈 수 있는 값들이다. 가수 이름 뿐 아니라 앨범제목, 작곡가, 쟝르, 발매년도, rating, 샘플링 레이트, 플레이 횟수 등등 매우 다양한 조건을 선택할 수 있다.


(c)항목에 들어갈 수 있는 값이다. 가수 이름인 경우 정확한 가수 이름(is) 뿐 아니고 특정 가수 제외(is not), 이름 일부분(contains), 이름 일부분에 제외(does not contain), 특정 글자로 시작하는 이름(starts with), 특정 글자로 끝나는 이름(ends with)등의 조건을 줄 수 있다.

또한 여기는 안 나왔지만 (a)가 발매년도나 Ratings인 경우 어디부터 어디까지(is in the range)등의 조건도 줄 수 있다.


임의로 만들어 본 조건이다. 저 플레이 리스트에는 내 ratings가 별 4개 이상이고 Jazz쟝르이면서 2000에서 2009년에 나온 곡들이 자동으로 들어가게 된다.

위에서 본 것 같이 Smart Playlists를 잘 활용하면 그냥 순차적으로 또는 랜덤하게 듣는 방법 이외에 진짜 매우 smart하게 자신이 원하는 곡들을 찾아 들을 수 있는 다양한 방법을 사용할 수 있게 된다.
Posted by nautes

댓글을 달아 주세요

  1. 2011.03.23 10:28

    대충은 알고 있었지만 많이 배우고 갑니다 ^^ 앞으로 더욱더 스마트하게 이용해봐야겠어용~

아이폰/터치팟 플래쉬 용량이 작은건 아니지만 음악에 apps들을 넣다보면 어느새 부족해지기 쉽상이다.
그 중 좀 황당하고 골치아픈 문제중 하나가 아이튠에서 apps를 구입한 다음 아이폰/터치팟과 싱크를 시키는데 '메모리 부족'이라는 에러를 내고 설치가 되지 않는 경우이다.

지도 데이터를 모두 포함하고 있어 용량이 큰 apps중 하나인 Playmap 같은 경우 아이튠에서 봤을 때 343MB 용량이다.

그런데 free space가 4~500MB 정도 남아있는 아이폰으로 옮기려고 sync를 하면 메모리가 부족하다고 에러가 나고 설치가 진행되지 않는다.

그 원인은 아이폰/터치팟의 apps는 ipa라는 확장자를 가지는데 확장자만 다른 이름일 뿐 실제로는 zip 파일이다. 아이폰에 설치할 때 일단 아이튠에서 아이폰으로 ipa파일이 전송된 다음 아이폰에서 압축을 풀어 설치하게 되기 때문에 설치를 위해서는 아이폰에 apps 파일 크기보다 최소 2배 이상의 free space가 있어야만 한다. 실험해 본 결과 800MB 이상의 빈 공간이 있어야만 Playmap이 설치가 가능했다.
하지만 설치가 끝나면 ipa파일은 압축을 푼 다음에는 아이폰에서는 자동으로 삭제되어 버리기 때문에 Playmap이 설치되고 난 다음에 확인해 보면 아이폰에는 약 350MB의 빈 공간이 남아있다.



그러므로 apps설치 시 apps 크기보다 빈 공간이 아직 남아 있는데도 이런 에러가 생기는 경우 해결책은 크기가 작은 apps들을 지우거나 음악/비디오 파일을 지워 충분한 공간을 만들어 줘서 원하는 apps를 설치한 다음 지웠던  apps/음악/비디오를 다시 넣어주면 된다.

즉 예를 들어 app A의 크기가 300MB이고 빈 공간이 500MB인데 메모리 부족으로 설치가 안된다면 이미 설치도어 있는 약 150MB크기의 app B를 지워준다. 그러면 빈 공간은 500+150=650MB가 되어 app A를 설치할 수 있게 된다. App A가 설치되고 나면 빈 공간은 다시 약 350MB정도가 남기 때문에 app B를 재설치하는데는 문제가 없다.
Posted by nautes

댓글을 달아 주세요

아이팟 터치/아이폰의 시리얼 포트를 사용할 수 있으면 다른 장비들과 연결해서 상당히 재미있는 일들을 많이 할 수 있게 된다.
하지만 시중에서 아이팟용 시리얼 케이블을 팔고 있지 않기 때문에 직접 만들어 보았다.
아이팟 도킹 커넥터의 pinout은 pinouts.ru 에서 확인할 수 있다.

먼저 아이팟 30핀 도킹 커넥터 male 타입은 Devicemart에서 구입할 수 있었다. 구입해야 하는 부품명은 ipod-30p-conn-wire 으로 개당 2500원이다.

커넥터를 구입하면 내용물은 다음과 같다.



커넥터는 30핀인데 위의 사진에서 보는것처럼 서로 엇갈리게 배치되어 자세히 보지 않으면 핀 위치를 찾기가 좀 힘들게 되어 있다.


핀 배치를 좀 보기 쉽게 풀어 그려 본 것이다. 다리가 긴 핀과 짧은 핀이 있어서 다리가 긴 핀은 바깥쪽에 있고 짧은 핀은 안쪽에 배치되어 있다. 그리고 각각의 핀은 조금씩 위치가 어긋나게 배치되어 있다.
이 핀들이 다 있으면 납땜질 하기 불편하기 때문에 필요없는 핀들은 다 뽑아버린다. 롱노우즈 플라이어로 잡아 땡기면 쉽게 빠져나온다. 단 한번 빠져나오면 다시 끼기 힘들기 때문에 뽑아내야 하는 핀의 위치를 확실하게 확인한 다음에 빼기 바란다.

시리얼 케이블에 필요한 핀들이다. 이 중 1,2,15,16,29,30은 모두 GND로 아이팟 내부에서 다 전기적으로 연결되어 있다. 그러므로 다 연결할 필요는 없다.


이 핀들만 남겨놓으면 된다. 15, 16도 땜질에 방해가 되기 쉬우므로 빼 버려도 관계 없다.

배선 연결은 위와 같다. 실제 시리얼 포트에 연결하는건 Tx, Rx, GND 3선이면 된다. 물론 아이팟에 연결하는 장치의 전력소모가 크지 않은 경우 3.3V에 연결해서 아이팟에서 전원을 공급받을수도 있다. (단 이 경우 아이팟 전력소모가 약간이나마 증가하는걸 염두에 둬야 한다.)
또한 Tx, Rx도 3.3V 레벨의 신호이기 때문에 RS-232에 연결하려면 MAX232, 233같은 레벨 컨버터가 필요하다. 저 2개의 저항은 칩 저항을 사용하면 커넥터 케이스 속에 집어넣을 수 있겠지만 현재 가지고 있는 칩 저항이 없기 때문에 이번에는 커넥터에서 Tx, Rx, Serial GND, GND, 3.3V 이렇게 5개의 선을 뽑아내었다.

Grey - GND
Red - Tx
Green - Rx
Orange - +3.3V
Black - Serial GND

단선을 방지하기 위해 열 수축 튜브로 고정시켜 주었다.

커넥터를 금속 케이스에 집어 넣는다.

집어넣은 모양은 다음과 같다.

또 하나의 금속판을 연결시킨다. 여기서 아래 그림과 같이 커넥터의 홈에 맞게 밀어 넣어줘야 한다.

제대로 집어 넣었으면 아래와 같이 양쪽의 걸쇄가 보인다.

플라스틱 케이스에도 위쪽과 아래쪽이 있다.

아래쪽 케이스에 조립된 커넥터를 집어넣는다.

집어넣은 모습은 다음과 같다.

커넥터를 분리할 때 사용하는 양쪽 버튼을 집어 넣는다. 이 때 버튼도 방향이 있으니까 주의해야 한다.

아래 사진처럼 버튼을 잘 보면 홈이 파여있는 쪽이 앞쪽이다.

버튼까지 다 집어넣은 모습이다.

이제 위쪽 케이스를 아래쪽 케이스에 맞춰서 끼워넣기만 하면 된다.

여기서는 프로토타입 보드에 꼽아 아뒤노와 연결하여 테스트하기 위해 반대쪽에도 헤더핀들을 연결시켜 놓았다.

Posted by nautes

댓글을 달아 주세요

  1. 2009.05.30 22:19

    사진이 보이지 않아요 ㅠ

    • 2009.05.30 22:41 신고

      Reload를 한번 해 보세요. 아니면 http://techblog.textcube.com 으로 가서 보셔도 됩니다. 제 블로그 분점이에요. :)

  2. 2009.08.10 20:18

    훌륭하십니다.
    궁금한게 있는데요. 시리얼 케이블 만들어 ipod touch를 한번 컨트롤 해보셨나요?

  3. 2009.08.13 11:58

    혹시 이 선을 통해서 외부 기기와 아이팟 터치를 서로 통신가능하게 했나요?
    외부 기기에서 아이팟으로 정보를 보내 디스플레이를 할 수 있나요?

    감사합니다. ^^

    • 2009.08.13 18:31 신고

      예...외부기기와 시리얼 통신이 가능합니다. 제일 쉽게 확인하려면 컴퓨터와 시리얼로 연결하고 터치에서 minicom같은 시리얼 프로그램을 실행해서 /dev/tty.iap 를 열어주면 됩니다.

      입력받은 정보를 자신이 원하는 식으로 디스플레이 하게 하려면 물론 터치용 프로그램을 만들어 줘야 하겠죠.

  4. 2009.09.28 20:20

    안녕하세요,

    사진에 보면 저항이 안 보이는데 어떻게 처리하셨나요?
    저는 브레드보드에 껴서 사용하려고 납땜질을 케이블만 했는데,,,ㅋ nautes님도 그렇게 하시려고 저항을 땜질 안 하신건가요?

    그리고 3.3V를 써야하는데
    그리신 그림에 의하면 배선이 좀 이상한듯,,,, 160K랑 36K랑 GND로 다 물리지 않습니까? 그럼 어떻게 하죠?

    • 2009.10.06 11:49 신고

      예..저 역시 저항은 만능기판에 연결했습니다. 칩 저항이 있으면 커넥터에 직접 해도 되는데 일반 저항을 커넥터에 땜질하면 케이스를 닫기가 힘들어 지거든요.

      그리고 GND(1,2,15,16,29,30)와 Serial GND(11)은 다른 신호입니다. 위와 같이 저항을 연결해주면 Serial GND(11)에는 약 0.6V의 전압이 걸리게 됩니다.

  5. 2009.12.07 14:07

    안녕하세요. 아이팟을 이용한 씨리얼통신 기능에 관심이 있어서 검색중에 들어왔습니다. 질문이 하나 있는데요. 아이팟 정식 SDK에서 씨리얼통신(RS232)에 대한 api를 제공하는지 궁금합니다. 그리고 최근 출시된 아이팟3세대를 이용해서도 가능한지 모르겠습니다. 주변에 들리는 얘기로는 최신 OS에서는 사용자 라이브러리의 사용을 금지시켰다고 들었습니다. 조언 부탁드립니다.

  6. 2010.01.02 01:05

    혹시 이 것을 이용하여 GPS 모듈을 연결하면 가능할까요?

  7. 2010.01.15 18:49

    혹시 최대 설정 가능한 serial 속도는 몇 kbps인지 테스트 해 보셨는지요? 감사합니다.

    • 2010.01.15 20:38 신고

      19200이외에는 사용해 보지 않아 얼마가 최대 bps인지는 모르겠네요. 최소한 57600정도는 별 문제 없을겁니다.

  8. 2010.01.18 17:16

    죄송한데요.. 시리얼 케이블에 저항은 꼭 연결 해야하나요??
    왜 신호선 그라운드를 약0.6V로 만들어야 하나요?? 그냥 GND와 동기화 시키면 않되나요??
    답변 주시면 대단히 감사하겠습니다. ^^;; 초짜라서요 ㅠㅠ

    • 2010.01.19 21:26 신고

      저항없이 그냥 연결하면 '이 악세서리는 아이폰과 호환이 되지 않습니다'같은 경고 메시지가 나온다고 합니다. 물론 그래도 통신하는데는 지장이 없습니다.

      그리고 현재 이 블로그는 자주 들리지 못하니까 질문이 있으면 텍스트 큐브에 있는 블로그로 와서 달아주시는게 좀 더 빠른 답변을 해 드릴 수 있습니다.

      http://techblog.textcube.com

  9. 2010.01.22 20:49

    감사합니다.

  10. 2010.09.03 16:38

    좋은 정보 감사합니다.
    ^^

  11. 2010.12.27 23:45

    안녕하세요 아이폰 3gs유저입니다.
    인터넷을 떠돌다가 매우 획기적인 선생님 싸이트를 보게 되었습니다.
    그래서 자작하신 물건들을 연구하고 참 많이 보았습니다.
    제가 만들거는요 line in 녹음을 위해 line in 단자를 뽑아낼 생각이었는데요.
    그런데 Line in을 하는 단자가 있어서 제가 연결을 했는데 알 수 없는 악세서리라고 자꾸나오더라구요...음... 이놈을 어찌 해야하는지..
    제가 좀 잘 몰라서. 조언을 부탁드립니다.
    귀찮으시더라고 조금 부탁드립니다.

  12. 2011.01.23 12:18

    만드신 시리얼 케이블과 usb케이블의 차이점이 뭔지 알고싶습니다

  13. 2011.12.29 20:30

    오~~좋은 정보 감사 감사합니다.^^

아이폰/터치팟에서 가상키보드로 입력을 할 때 가장 불편했던 것 중에 하나가 숫자를 입력하려면 123 키를 눌러 숫자키패드로 바꿔줘야만 한다는 것이었다.

5-row QWERTY keyboard는 일반 키보드의 배열과 마찮가지로 아아폰/터치팟의 가상키보드를 5줄로 만들어 맨 윗줄에 숫자키를 집어넣어서 이 문제를 해결해 준다. Jail-broken된 아이폰/터치팟에 설치할 수 있다.

설치하려면 cydia를 실행한 다음 search를 사용해서 5-Row QWERTY 프로그램을 찾아준다.

kb1.jpg

정식 명칭은 '5-Row QWERTY Keyboard'이다. 이 프로그램을 검색해서 설치해주면 된다.

kb2.jpg

설치가 끝나면 초기화면으로 돌아와서 Settings로 간다.

kb3.jpg

Settings에서 'General'을 선택한다..

kb4.jpg

General 화면에서 'International'을 선택한다.

kb5.jpg

International에서 'Keyboards'를 선택한다.


kb6.jpg

Keyboards에 보면 iKeyEx Keyboards라는 항목이 추가된 걸 볼 수 있다. 여기서 5 Row QWERTY를 ON이 되게 해 준다.


kb7.jpg

이것으로 설정이 모두 끝났다.

이제 실제 키보드를 사용해 보기로 한다. 노트 어플로 가서 보면 키보드가 5줄이 되어서 맨 윗줄에 숫자키가 생긴걸 볼 수 있다.


kb8.jpg

또한 이 상태에서 Shift키를 누르면 숫자키가 일반 키보드 배열에서 숫자키 위의 기호들로 바뀐걸 볼 수 있다.


kb9.jpg

이 뿐 아니고 여기서 '123' 키를 누르면 이 키는 'ABC'로 바뀌고 나머지 기호들과 숫자키패드가 나오게 된다.

kb10.jpg

마지막으로 '123' 모드에서 shift를 눌러주면 그 동안 키보드에는 없던 커서 이동키(←,↑,→,↓, pg up, pg dn, tab 등등)들을 사용할 수 있다.

kb11.jpg

블로그코리아에 블UP하기

Posted by nautes

댓글을 달아 주세요

  1. 2009.12.15 03:14

    좋는 정보 감사합니다..
    죄송한 부탁이지만 위 아이폰에서 사용하신 영문 폰트 공유 좀 부탁드립니다.. bypers@gmail.com
    너무 이뻐서요.. 공유가 무리시다면 폰트 이름이라도 부탁 드립니다...
    감사합니다...

iPhone 3G와 새로 나온 iPod Touch의 경우 케이블을 컴퓨터의 usb포트에 연결하거나 같이 포함되어 있는 충전기를 사용하지 않으면 충전이 되지 않는다.

원인은 변경된 충전회로 때문이다.


200811222311.jpg

위 사진은 iPhone의 회로인데 빨간색으로 표시 된 칩이 Linear Technology의 LTC 4066 USB Power Controller and Li-Ion Linear Charger이다. 즉 아이폰의 배터리 충전과 사용을 컨트롤하는 칩이다.

여기서 문제는 USB 전원을 사용할 경우가 되는데 USB포트에 500mA의 전류가 공급되는 경우에만 USB 전원을 사용하게 된다. 하지만 USB 케이블을 컴퓨터에 연결하는 것 만으로 컴퓨터가 바로 500mA를 공급해 주는게 아니고 enumeration이라는 과정을 거치며 USB장치(여기서는 아이폰)와 컴퓨터간에 정해진 절차(즉 컴퓨터가 아이폰에게 '너 전류가 얼마나 필요해?'라고 물어보고 아이폰이 500mA라고 알려줘야 그에 맞는 전류를 공급해준다.)를 거친 후에야 컴퓨터가 그 포트에 500mA의 전류를 흘려주게 된다. 이 절차 후에 컴퓨터가 충분한 전류를 공급해 줄 때부터 LTC 4066은 USB 전원을 사용해서 충전을 하게 된다.

그런데 일반 외부 아답터를 사용하는 경우는 처음부터 필요한 전류를 항상 공급해주지만 LTC 4066에 그 사실을 알려주지 않으면 LTC 4066은 USB 포트의 전원을 사용할 수가 없다. 이 사실을 알려주기 위해서는 LTC 4066의 HPRW(pin 13)과 WALL(pin 20) 핀을 1.25v이상으로 풀-업(pull-up) 해주면 된다.

200811222322.jpg


200811222323.jpg

아이폰에서는 이 두 핀이 USB 커넥터의 D+, D-에 연결되어 있다. 즉 USB 케이블의 +(USB커넥터의 1번 핀)에 5V를 공급해주고 D+, D-핀을 1.25v이상으로 풀업 해 주면 아이폰은 USB 포트를 통해 공급되는 전원을 사용해서 충전을 할 수 있게 된다.

200811222326.jpg

즉 아래와 같은 회로를 만들어주면 된다.


iphone-chg.jpg


다음 포스트에서 실제 제작방법을 볼 수 있다.

(DIY) 아이폰/아이팟 터치 충전회로 제작.

Posted by nautes

댓글을 달아 주세요

  1. 2009.12.26 15:53

    이제 까지 궁금하게 생각했던 점을 시원하게 풀어주신 좋은 정보 감사합니다.

    iPod Touch 1세대도 PC에 연결된 자체전원이 있는 USB HUB에 연결 시 PC가 켜진 상테에만 iPod Touch가 충전이 되고 PC를 끄면 USB HUB의 자제전원이 iPod Touch를 충전하기에 충분한데도 충전이 되지 않더구요. 1세대 iPod Touch도 이 이유 때문일까요?
    그렇다면, 1세대 iPod Touch도 이것으로 충전이 될까요?

  2. 2010.11.07 22:38

    아 정말 멋있습니다.

  3. 2010.12.14 16:46

    HPWR핀 에 5V인가해 줘도 되겠네염. VBus에 50K달고 Pull-up 으로만 연결해도 큰 문제는 안될 것 같습니다만

  4. 2011.06.14 18:49

    좋은 글 감사합니다. 제가 이글 퍼가도 되죠?

최근들어 LBS(Location Based Service)에 대한 관심이 높아지고 아이폰, 구글폰들이 출시되며 이를 이용한 어플리케이션들이 속속 등장하고 있다. 여기에서 현재 휴대폰의 위치를 알아내는 방법의 원리들에 대해 설명해 보겠다.

먼저 가장 먼저, 널리 사용되는건 GPS이다.

GPS(Global Positioning System)의 기본 원리는 삼각측량법이다.

gps1.jpg

위의 그림에서처럼 지도상에 정확한 위치를 알고 있는 3개 지점에서부터 내 위치까지의 거리를 알 수 있으면 그 각 지점(위의 그림에서는 각 스테이션)을 중심점으로 내 위치까지의 거리를 반지름으로 하는 3개의 원을 그리면 3개의 원은 정확하게 한 점에서 만나게 된다. 그 원들이 만나는 지점이 내 현 위치가 된다.


gps2.jpg

단 여기서 전제조건은 각 스테이션과의 정확한 거리를 알고 있어야 한다는 것이다.

그런데 실제로 거리를 측정할 때 줄자를 가지고 잴 수 있는게 아니고 각 스테이션에서 송출하는 특정 신호를 수신해서 그 신호의 세기를 가지고 거리를 예측하게 된다. 하지만 전파의 특성 상 거리에 반비례해서 신호 세기가 약해지긴 해도 여러가지 조건에 따라 그 약해지는 정도가 항상 변화하기 때문에 대강의 거리를 예측할 뿐 정확한 거리를 알 수가 없다. (실제 GPS에서는 신호 세기가 아니고 시간차를 이용하지만 이 경우에도 정확한 거리를 알 수 없는건 차이가 없다.)


gps3.jpg

대략의 거리를 가지고 원을 그리게 되면 3개의 원이 위의 그림과 같이 한 점에서 만나는게 아니고 그림과 같이 3개의 원으로 둘러 쌓인 부분이 생기게 된다. 예측한 거리의 오차가 크면 클 수록 원으로 표시된 부분의 크기가 커지게 된다. 즉 정확한 위치를 찾을 수 없고 대략 저 둘러 쌓인 부분 내에 있다는 것만 알 수 있게 된다.


gps4.jpg

그래서 더 여러 지점과의 거리를 측정해서 더 많은 원을 그려 더 많은 원들에 둘러 쌓인 부분을 찾으면 그 면적이 줄어들기 때문에 오차를 줄일 수 있게 된다.

그런데 최근에는 GPS를 내장하지 않은 모바일 디바이스들도 무선랜 신호를 이용해 자신의 위치를 상당히 정확하게 찾아내는걸 볼 수 있다. 이 경우는 미리 구축되어 있는 무선 AP목록 DB가 구축되어 있어야 한다. 이 DB는 사업자 핫스팟의 경우는 사업자가 설치된 정확한 주소를 알려줄 수 있지만 개인이 설치한 AP의 경우는 등록된 주소가 없는데 어떻게 위치를 알 수 있을까? 정답은 구글 스트리트 뷰 사진과 유사한 방식으로 War driving을 이용해서 DB를 구축하게 된다.


wd.jpg

자동차에 그림과 같이 무선랜 안테나와 GPS 수신기를 장착하고 차를 몰아 길을 돌아다니면서 각 위치에서 신호가 잡히는 AP의 목록과 신호의 세기를 기록해서 DB를 구축하게 된다.


gps5.jpg

위의 그림에서 각 숫자가 AP이고 알파벳이 자동차가 움직이며 해당 위치에서 신호가 잡히는 AP의 목록을 기록해서 테이블을 만든다.


GPS8.jpg

이렇게 만든 테이블을 이용해 각 AP의 위치 DB를 만든다.

GPS9.jpg

위의 그림과 같이 각각 AP의 신호가 잡히는 지점들을 가지고 있게 된다.


gps6.jpg

그림에서 저 지점에 아이팟 터치가 있다면 13, 15, 17번 AP의 신호를 받을 수 있게 된다.


GPS10.jpg

그럼 그 정보를 이용해 위에 만들어 진 DB를 검색하면 13, 15, 17 모두에 공통으로 들어있는 위치는 M이 된다. 즉 예측할 수 있는 가장 가까운 위치는 M이라고 판단할 수 있게 되는 것이다.

Posted by nautes

댓글을 달아 주세요

  1. 2008.10.31 15:26

    이번에 아이팟 터치 2nd gen. 을 구입하고 맵에서 현재 위치를 찾는 기능을 찾았는데 처음에는 참 생각을 많이 했었죠. 숨겨진 GPS 기능이 있었나... 하다가 문득 생각난게 AP를 이용한 방법이더군요. 누구의 아이디어인지 정말 똑똑한 방법이라고 생각합니다. 거의 정확한 현재 위치를 보여주더군요...

  2. 2009.01.14 17:56

    오호~ 안그래도 어떻게 개인ap 위치를 알아내는가 했더니 War driving 을 이용해서 db를 만드는거였군요; ㅎ
    어쩐지 지방은 안된다 했습니다ㄷㅋ 좋은정보 감사합니다 ㅎ

  3. 2009.03.09 11:51

    좋은 정보 감사합니다.
    블로그로 퍼갑니다 ^^

  4. 2009.07.20 05:55

    좋은자료 감사해요^^ 퍼갑니다^^

이전버튼 1 이전버튼