• 전문가 요청 쿠폰 이벤트
*민*
Bronze개인
팔로워0 팔로우
소개
등록된 소개글이 없습니다.
전문분야 등록된 전문분야가 없습니다.
판매자 정보
학교정보
입력된 정보가 없습니다.
직장정보
입력된 정보가 없습니다.
자격증
  • 입력된 정보가 없습니다.
판매지수
전체자료 1
검색어 입력폼
  • 블루투스를 이용한 화상 전송
    Beam Projector Using The BluetoothBeam Projector Using The Bluetooth날 짜2009.11.11팀 장팀 원프로젝트 개요기획 배경 및 기반 지식--------------------4개발 목표--------------------31개발 방법 및 운영--------------------32개발 결과 및 평가--------------------37Part1 : Client핵심 기술 구현--------------------38개발 상세 내용--------------------39Part2 : Server핵심 기술 구현--------------------48개발 상세 내용--------------------50결 론결론--------------------53추후 연구 과제--------------------53프로젝트 후기--------------------53프로젝트 개요기획 배경 및 기반지식Bluetooth 현황무선 통신 기기 간에 근거리(short range)에서 저전력으로 무선 통신을 하기 위한 표준으로 1994년 에릭슨에 의해 시작되었다. 시작 당시 “휴대폰과 그 주변 장치를 무선으로 연결하기 위한 저가, 저전력 무선 솔루션을 고안하여 기존의 케이블을 대처한다” 라는 목적을 가지고 개발을 시작하였으며, 이러한 개발의도의 핵심은 ‘디지털 기기간의 연결을 무선화 한다’ 라고 볼 수 있다. 디지털 기기의 무선화를 통해서 노트북, 휴대폰, 헤드셋, PDA, PC 및 프린터 등의 기기를 무선으로 연결하여 사용할 수가 있다. 최근의 문근영이 선전하는 블루투스폰은 휴대폰+헤드셋 조합으로 휴대폰은 주머니에 넣어둔 채 헤드셋 만으로 전화통화를 할 수 있으며, 프린터와 무선으로 연결하여 데이터를 인쇄할 수 있는 등 다양한 애플리케이션들이 출시되어 있다. 현재 세계적으로 2,400개 이상의 회사가 블루투스 SIG(Special Interest Group)를 형성, 장비간 상호운용을 보장하기 위해 협력하고 있다. 대표적인 회사로는 에로 프로토콜을 배분하는 것이 가장 일반적인 방법이기는 하나 호스트의 종류에 따라 위 그림과 같이 세 종류로 나누어질 수 있다. 위 그림에서 ‘Standard Two Processor Architecture’가 위에서 설명했던 가장 일반적인 구조이다. 그러나 사실 HCI 상위 계층의 L2CAP, RFCOMM, SDP, TCS 등의 많은 프로토콜을 구현하고 어플리케이션을 수행하는 데는 호스트에 걸리는 작업 로드가 크고, 많은 리소스를 필요로 하게 된다. 따라서 핸드폰과 같이 블루투스 프로토콜 스택을 위해 할당된 리소스가 적은 호스트일 경우 위 그림의 두 번째 구조인 ‘Embedded Two Processor Architecture’ 형태로 프로토콜 스택을 배분한다. 위 그림의 세 번째 구조인 ‘Wholly Embedded Single Processor Architecture’는 별도의 호스트가 존재하지 않는 구조이다. 즉 호스트 컨트롤러인 블루투스 모듈만이 존재하 고, 이 모듈 내에 모든 프로토콜 스택이 구현되어 있다. 이런 구조에 가장 적합한 어플리케이션이 무선 헤드셋 (Headset) 혹은 HID(Human Interface Device)이다. 이 구조는 말 그대로 별도의 호스트가 필요 없는 완전한 임베디드 구조를 지니기는 하나 블루투스 모듈 내부의 자체 프로세서를 사용하므로 비교적 간단한 어플리케이션에 적합하다.BasebandBluetooth Baseband 패킷 형태베이스밴드의 첫번째 역할은 무선 채널의 설정 및 관리이다. 블루투스는 밴드폭이 1MHz인 RF 채널을 79개로 나누고, 각 채널을 초당 1600회 호핑을 하는 FHSS(Frequency Hopping Spread Spectrum) 방식을 사용한다. 이 채널 정의와 호핑 시퀀스 선택 등은 모두 베이스밴드에서 이루어진다. 또 각 채널별로 625μs의 길이를 지닌 타임 슬롯 (Time Slot)을 설정하여 슬롯을 통해 패킷을 교환하는 시분할이중방식(TDD:Time-Division Duplex)을 기반과나 호스트가 요청한 정보를 호스트 컨트롤러가 호스트에게 통보하는 패킷이다. 예를 들어 호스트가 현재 연결된 호스트 컨트롤러의 주소를 얻기 위해 `Read_BD_ADDR'이라는 HCI Command 패킷을 호스트 컨트롤러로 보내면, 호스트 컨트롤러에서는 디바이스의 주소값을 포함된 HCI Event 패킷을 호스트로 보낸다. 이외에 HCI ACL Data 패킷과 HCI SCO Data 패킷은 ACL 링크나 SCO 링크가 설정된 후에 데이터를 주고 받기 위한 패킷이다.HCI Command/Event 패킷의 구조HCI Command 패킷은 각 커맨드별로 고유한 OpCode를 지니고 있다. 이 OpCode는 OGF(OpCode Group Field) 와 OCF(OpCode Command Field)로 구성되는데, OGF는 HCI Command를 그 성격 및 역할에 따라 그룹으로 구분짓기 위한 코 드이다. 즉 HCI Command가 링크 제어에 관련된 것인지, 베이스밴드에 관련된 것인지, 호스트 컨트롤로로러 정보를 얻어오는데 관련 된 것인지에 따라 HCI Command를 그룹화하여 각 그룹에 대해서 코드를 부여한 것이 OGF이다. 그리고 각 그룹에 포함된 각 각의 HCI Command에 대해서는 고유한 OCF를 부여하였다. 이러한 OGF와 OCF를 조합을 하면 HCI Command마다의 고유한 OpCode 가 만들어진다. 각각의 HCI 커맨드와 이벤트에 대해서는 블루투스 스펙에 자세히 나와있으므로 이를 참조하기 바란다.HCI를 구현하게 되면 블루투스의 Inquiry, Paging, Connection 등의 링크 설정과 인증(Encryption), 암호화(Authentication), 링크 키(Link Key) 등의 보안이나 Hold, Sniff, Park 등의 커넥션 상태 설정 등 블루투스의 대부분의 동작을 실제로 실행시킬 수 있다. 또 블루투스 하드웨어에서 실제로 교환되는 데이터들이 HCI 패킷이므로 개발한 시스템의 디버깅을 위해서도 HCI는 매우 기본이 된다. BT 선랜 시스템을 가지고 있는 것이 아닌 빔프로젝트와 컴퓨터 사이에서 서버 기능을 할 수 있는 셋탑박스를 만들어 놓고 둘의 통신을 돕는 역할을 하는 것이다. 이 셋탑박스는 무선ap를 사용하고 있는데 이 무선ap의 최대단점이 무선ap가 되지 않는 곳이 많고 가격 또한 천차만별이기 때문에 가격대비 성능으로 봤을 때는 블루투스가 훨씬 뛰어나다고 생각 되어진다. 또한 무선랜의 경우 거리의 제한을 받지 않는반면, 자신의 IP를 가지고 있어야 하고 네트워크 통신이 가능해야만 되는 어려움이 있다. 하지만 블루투스의 경우 모듈만 가지고 있다면 통신이 가능하기 때문에 블루투스로 개발 된다고 훨씬 빨리 상용화될 것으로 보고 있다.블루투스의 최대 장점은 묘듈자체가 값이 싸고 현재 개발진행형이라는 데에 있다. 또한 모듈만 있다면 어디서나 통신이 가능하고 속도또한 현재까지 10Mbps의 전송율까지 나오는 버전이 나왔기 실시간으로 영상을 보내기에 무리가 없을 것으로 보고 있다. 또한 이번 프로젝트가 성공된다면 컴퓨터뿐만 아니라 블루투스가 장착되어 있는 모든 시스템에서 빔프로젝트로 연결될 수 있기 때문에 차후 개발될 수 있는 시스템은 무궁무진해질 것으로 보고 있다.개발 목표본 프로젝트는 다음 2가지의 세부 개발 목표를 가지고 개발을 진행한다.Beam Projector현재 우리가 사용하고 있는 Beam Projector와 동일하게 동작하도록 하는 것이 목표이다.이를 위해 별다른 조작 없이 Beam Projector를 사용하도록 제작한다. 사용자는 단지 파일을 프로그램을 다운받아서 그 프로그램 하나로 블루투스 통신 및 Beam Projector를 사용할 수 있다.Bluetooth를 이용한 무선 파일 전송 활용 Application Example 제작단순한 Beam Projector에서 벗어나 제작한 Application프로그램 하나로 블루투스를 데이터 전송 및 각종 기능이 가능하도록 제작.Project 전체 구조개발 방법 및 운영전체(대과제)구성 + 팀 + Part 구성표Part인 원학 교학 을 경우 좀 더 우아하 종료를 한 다시 접속 대기 상태로 구현해야 할 부분이 남아 있다.추후 연구 과제Client : 앞으로 효율적으로 데이터를 전송하는 부분과 블루투스 3.0에 대한 분석을 통해 현재 사용하고 있는 Beam projector와 좀 더 동일해 질 것으로 기대한다. 또한, 아직 완벽히 구현하지 못한 PC외 블루투스를 장착한 다른 기기와의 데이터 전송 문제를 해결한다면 앞으로 이것을 이용하여 더욱더 많은 분야에서 사용 가능할 것이다.Server : 현재 Server는 우리가 구현한 Client에서만 동작이 되는 제한이 있다. 하지만핸드폰이나 디지털 카메라 그외 다른 블루투스가 연결된 장치에서도 파일을 전송 하여 우리가 구현한 Server 프로그램에서 출력을 할 수 있게 된다면 server를 많은 용도로 활용 할 수 있을 것이다.Part1 : Client핵심 기술 구현요소 함수 분석Init(void) : Bluetooth 시스템의 초기화system("hciconfig hci0 up") : 시스템 함수를 이용하여 장치 초기화Connect_server() : Server에 연결 및 소켓 생성::socket(AF_BLUETOOTH, SOCK_STREAM, BTPROTO_RFCOMM) : 소켓 생성(성공 시 파일 디스크립터를, 실패 시 -1을 리턴한다.)AF_BLUETOOTH : 생성할 소켓이 통신을 하기 위해 사용할 프로토콜 체계를 AF_BLUETOOTH로 설정SOCK_STREAM : 소켓이 데이터를 전송하는데 있어서 사용하게 되는 전송 타입을 연결지향형인 SOCK_STREAM 방식으로 설정한다.BTPROTO_RFCOMM : 두 호스트간에 통신을 하는데 있어서 BTPROTO_RFCOMM 프로토콜 기반으로 지정한다.Shoot_screen() : PC화면 Capture하기 위한 함수.QPixmap::grabWindow(QApplication::desktop()->winId()) : QT라이브러리로써 해당 윈도우의 desktop ID값을 이용해서 Capture3 -
    공학/기술| 2010.08.03| 53페이지| 4,500원| 조회(591)
    미리보기
전체보기
해캠 AI 챗봇과 대화하기
챗봇으로 간편하게 상담해보세요.
2026년 04월 05일 일요일
AI 챗봇
안녕하세요. 해피캠퍼스 AI 챗봇입니다. 무엇이 궁금하신가요?
9:55 오전
문서 초안을 생성해주는 EasyAI
안녕하세요 해피캠퍼스의 20년의 운영 노하우를 이용하여 당신만의 초안을 만들어주는 EasyAI 입니다.
저는 아래와 같이 작업을 도와드립니다.
- 주제만 입력하면 AI가 방대한 정보를 재가공하여, 최적의 목차와 내용을 자동으로 만들어 드립니다.
- 장문의 콘텐츠를 쉽고 빠르게 작성해 드립니다.
- 스토어에서 무료 이용권를 계정별로 1회 발급 받을 수 있습니다. 지금 바로 체험해 보세요!
이런 주제들을 입력해 보세요.
- 유아에게 적합한 문학작품의 기준과 특성
- 한국인의 가치관 중에서 정신적 가치관을 이루는 것들을 문화적 문법으로 정리하고, 현대한국사회에서 일어나는 사건과 사고를 비교하여 자신의 의견으로 기술하세요
- 작별인사 독후감