슬라이드 1

Similar documents
슬라이드 1

고급 프로그래밍 설계

hd1300_k_v1r2_Final_.PDF

SRC PLUS 제어기 MANUAL

untitled

한글사용설명서

Microsoft Word - FS_ZigBee_Manual_V1.3.docx

슬라이드 1

BY-FDP-4-70.hwp

<4D F736F F F696E74202D20BBB7BBB7C7D15F FBEDFB0A3B1B3C0B05FC1A638C0CFC2F72E BC8A3C8AF20B8F0B5E55D>

<4D F736F F F696E74202D20BBB7BBB7C7D15F FBEDFB0A3B1B3C0B05FC1A636C0CFC2F72E BC8A3C8AF20B8F0B5E55D>

MAX+plus II Getting Started - 무작정따라하기

CAN-fly Quick Manual

(Asynchronous Mode) ( 1, 5~8, 1~2) & (Parity) 1 ; * S erial Port (BIOS INT 14H) - 1 -

Microsoft Word - How to make a ZigBee Network_kr

untitled

고객 카드

오토 2, 3월호 내지최종

고객 카드 현대모비스 제품을 구입해 주셔서 대단히 감사합니다. A/S 마크란? 공업 진흥청이 애프터 서비스가 우수한 업체를 선정, 지정하는 마크로 애프터 서비스 센터 운영관리 등 8개 분야 45개 항목의 까다로운 심사로 결정됩니다. 주의 : 본 제품의 디자인 및 규격은

R50_51_kor_ch1

PowerChute Personal Edition v3.1.0 에이전트 사용 설명서

1

CONTENTS 1. Approval Revision Record Scope Numbering of product Product Part No Lot. No Absolu

10X56_NWG_KOR.indd

MicrocontrollerAcademy_Lab_ST_040709

목차 1. 개요 USB 드라이버 설치 (FTDI DRIVER) FTDI DRIVER 실행파일 USB 드라이버 확인방법 DEVICE-PROGRAMMER 설치 DEVICE-PROGRAMMER


K7VT2_QIG_v3

(SW3704) Gingerbread Source Build & Working Guide

<4D F736F F F696E74202D20B8B6C0CCC5A9B7CEC7C1B7CEBCBCBCAD202839C1D6C2F7207E203135C1D6C2F >

YD-3533.xls

À̵¿·Îº¿ÀÇ ÀÎÅͳݱâ¹Ý ¿ø°ÝÁ¦¾î½Ã ½Ã°£Áö¿¬¿¡_.hwp

<4D F736F F F696E74202D203137C0E55FBFACBDC0B9AEC1A6BCD6B7E7BCC72E707074>

MR-3000A-MAN.hwp

[8051] 강의자료.PDF

슬라이드 제목 없음

Windows 네트워크 사용 설명서

OSTSen-PIR100 사용자설명서 Ver 1.1 Onsystech OSTSen-PIR100 V1.1 1 of 8 Onsystech

개요

DE1-SoC Board

iii. Design Tab 을 Click 하여 WindowBuilder 가자동으로생성한 GUI 프로그래밍환경을확인한다.

Microsoft PowerPoint - es-arduino-lecture-03

2 PX-8000과 RM-8000/LM-8000등의 관련 제품은 시스템의 간편한 설치와 쉬운 운영에 대한 고급 기술을 제공합니다. 또한 뛰어난 확장성으로 사용자가 요구하는 시스템을 손쉽게 구현할 수 있습니다. 메인컨트롤러인 PX-8000의 BGM입력소스를 8개의 로컬지

OSTSen-MOS100 사용자설명서 Ver 1.1 Onsystech OSTSen-MOS100 Ver of 8 Onsystech

歯메뉴얼v2.04.doc

¹Ìµå¹Ì3Â÷Àμâ

강의10


슬라이드 1

<32B1B3BDC32E687770>

T100MD+

歯FDA6000COP.PDF

untitled

Microsoft Word - Installation and User Manual_CMD V2.2_.doc

Remote UI Guide


BJFHOMINQJPS.hwp

untitled

PD-659_SM(new)

RVC Robot Vaccum Cleaner

목차 제 1 장 inexio Touch Driver소개 소개 및 주요 기능 제품사양... 4 제 2 장 설치 및 실행 설치 시 주의사항 설치 권고 사양 프로그램 설치 하드웨

CD-RW_Advanced.PDF

슬라이드 1

휠세미나3 ver0.4

Microsoft Word - Specifications_M5G_-R11.doc

Slide 1

PRO1_09E [읽기 전용]

제20회_해킹방지워크샵_(이재석)

Sena Device Server Serial/IP TM Version

제품소개 MODBUS Tester 는 MODBUS 프로토콜을사용하는산업장비테스트및점검하기위해 PC 를휴대및설치할필요없이쉽고빠르게장비와연결하여원하는작업을진행할수있도록휴대성을강조한 MODBUS 프로토콜테스트장치입니다. MODBUS Tester 에는 3 가지의기능이지원되며,


#KM-235(110222)

04-다시_고속철도61~80p

H3050(aap)

jy-i3000.indd

Motor

Microsoft Word _whitepaper_latency_throughput_v1.0.1_for_

Microsoft PowerPoint ppt

ez-md+_manual01

Microsoft Word - SMB-63-2_KR_.doc

USB USB DV25 DV25 REC SRN-475S REC SRN-475S LAN POWER LAN POWER Quick Network Setup Guide xdsl/cable Modem PC DVR 1~3 1.. DVR DVR IP xdsl Cable xdsl C

<343720BDC5BCBAC8DE2DBDBAB8B6C6AEC6F9C0BB20C0CCBFEBC7D1204C4544C1B6B8ED2E687770>

DDX4038BT DDX4038BTM DDX4038 DDX4038M 2010 Kenwood Corporation All Rights Reserved. LVT A (MN)

#KM560

목차 BUG offline replicator 에서유효하지않은로그를읽을경우비정상종료할수있다... 3 BUG 각 partition 이서로다른 tablespace 를가지고, column type 이 CLOB 이며, 해당 table 을 truncate

이도경, 최덕재 Dokyeong Lee, Deokjai Choi 1. 서론

Mango-IMX6Q mfgtool을 이용한 이미지 Write하기

-. Data Field 의, 개수, data 등으로구성되며, 각 에따라구성이달라집니다. -. Data 모든 의 data는 2byte로구성됩니다. Data Type는 Integer, Float형에따라다르게처리됩니다. ( 부호가없는 data 0~65535 까지부호가있는


Microsoft Word - PEB08_USER_GUIDE.doc

2주차: 입출력 제어 복습

비어 있음

Chapter 1

CANTUS Evaluation Board Ap. Note

Nordic Chipset BLE Test Application Note

슬라이드 1

PowerPoint Presentation

KM-380BL,BLB(100908)

Smart Power Scope Release Informations.pages

Transcription:

임베디드시스템 Lecture #15 : 무선통신 - Bluetooth 통신

강의목차 1. Bluetooth 개요 2. Bluetooth Module 설정 3. Bluetooth 통신응용 2

Bluetooth 개요 (1) Bluetooth 개요 수미터에서수십미터정도의거리를둔정보기기사이에, 전파를이용해서간단한정보를교환하는데사용 에릭슨인텔, IBM, 노키아, 도시바, 마이크로소프트, 모토로라, 애플, Nordic Semiconductor 총 9 개회사가프로모터기업으로참가 IEEE 에서는규격명 IEEE 802.15.1 으로등재되어있으나, 현재블루투스는 Bluetooth Special Interest Group (SIG) 을통해관리 ISM 대역인 2.45GHz 를사용한다. 버전 1.1 과 1.2 의경우속도 723.1kbps 지원 버전 2.0 의경우 EDR 을특징으로하는데, 이를통해 2.1Mbps 속도를지원 암호화에는 SAFER 을사용한다. 장치끼리믿음직한연결을성립하려면키워드를이용한페어링이이루어지는데, 이과정이없는경우도있다. 3

Bluetooth 개요 (2) Bluetooth 개요 2.4 GHz의대역폭사용 1 Mbps Symbol rate 1 MHz씩 79개채널을사용주파수호핑 (Hopping) 방식 1개의채널에서 625micro sec. 만큼씩머물다채널이동 ( 초당 1600회 hopping, 1개의 Timeslot은 625micro sec.) 홉핑순서는자신의 Clock 을통해그순서가정해짐 두기기간통신시에는한쪽 Clock 과동기를맞춤 (TimeSlot 번호의홀 / 짝수에따라서로번갈아전송 ) 4

Bluetooth 개요 (3) Bluetooth 개요 주파수대역 국가 주파수범위 채널수 미국과유럽 2400 2483.5 MHz : (2.400 2.483 GHz) 78 일본 2471 2497 MHz : (2.471 2.497 GHz) 22 스페인 2445 2475 MHz : (2.445 2.475 GHz) 22 프랑스 2466.5 2483.5 MHz : (2.466 2.485 GHz) 22 5

Bluetooth 개요 (4) Bluetooth 개요 6

Bluetooth 개요 (5) Bluetooth 개요 - 버전 7

Bluetooth 개요 (6) Bluetooth Networking 구성형태 피코넷 (Piconet) 과스캐터넷 (Scatternet) 이라는 2 종류의무선접속형태 피코넷은최소단위의네트워크로 1 개의마스터 (Master) 와 7 개의슬레이브 (Slave) 가접속할수있음 Master M/S bridge Slave S/S bridge A B C 8

Bluetooth 개요 (7) Bluetooth Networking 피코넷 (Piconet) 2 개또는그이상의기기들이연결되어형성된작은무선네트워크 Pico( 작은 ) + Net( 망 ) = 작은네트워크 Piconet Slave 2 Slave 1 Master 9

Bluetooth 개요 (8) Bluetooth Networking 스캣터넷 (Scatternet) 한개또는그이상의 Piconet 이중복형성된상태에서서로공유할수있는무선네트워크 Scatter( 분산 ) + Net( 망 ) = 분산네트워크 Scatternet Slave 2 Slave 1 Slave 1 Master 10 Master Piconet A Piconet B

Bluetooth 개요 (9) Bluetooth Networking 접속방법 기기간의연결은 Paging 과 Inquiry 절차로이루어진다. 상대방기기의고유주소 (BD_ADDR) 를알경우 Paging 만으로연결이성립되나그렇지않으면 Inquiry 로상대방기기의고유주소를우선확인한후 Paging 으로연결을성립한다. Paging 호출한다는뜻 Inquiry 문의한다는뜻 Page Inquiry 11

Bluetooth 개요 (10) Bluetooth Networking 동기화 각블루투스기기는고유의시스템 clock 을갖고있다 사용자는시스템 clock 을조절할수없다 Piconet의동기화는 Master의시스템 clock에의해이루어진다 Slave는자체시스템 clock을 Master의 clock에일치시킨다 동기화이전 - Master 와 Slave 는각자다른시스템 clock 을갖고있다 12 동기화이후 - Master 와 Slave 의시스템 clock 이같아진다

Bluetooth 개요 (11) Bluetooth Networking 사용자운영모드 (1) Piconet 또는 ScatterNet 에연결된기기들은효율적인전력소모를갖추기위해 4 가지의운영모드를갖는다. 시스템모드 전력소모 Active Mode ( 활성모드 ) : 가장높음 Sniff Mode ( 감시모드 ) : 높음 Hold Mode ( 일시중지모드 ) : 낮음 Park Mode ( 대기모드 ) : 가장낮음 13

Bluetooth 개요 (12) Bluetooth Networking 사용자운영모드 (2) Active Mode : 활성모드 Master Slave간에이루어지는 Packet 교환을지속적으로감지하는모드 Sniff Mode : 감시모드 정해진시간간격으로 Packet 교환감지하는모드 Hold Mode : 일시중지모드 일정시간동안 ACL Packet 교환이지원되지않도록 Packet 교환감지를일시중지한모드. Park Mode : 대기모드 Slave의전력소모를최소화하기위한모드 14

Bluetooth 개요 (13) Bluetooth & IoT 15

Bluetooth Module (1) Bluetooth Module HC-05/HC-06 Low-cost Bluetooth Sub-modules Cambridge Silicon Radio BC417 2.4 GHz Bluetooth Radio chip 사용 UART Serial I/F 지원 3.3V 동작 3.3V 신호레벨입출력 HC-05 Master or Slave 기능지원, 응용성이높음 HC-06 Slave 기능만지원 16

Bluetooth Module (2) Bluetooth Module HC-05/HC-06 17

Bluetooth Module (3) Bluetooth Module HC-05/HC-06 Breakout B/D PinOut : KEY: If brought HIGH before power is applied, forces AT Command Setup Mode. LED blinks slowly (2 seconds) VCC: +5 Power GND: System / Arduino Ground TXD: Transmit Serial Data to Arduino Serial Receive(3.3V Level) RXD: Receive Serial Data from Arduino Serial Transmit(3.3V Level) STATE: Tells if connected or not 18

Bluetooth Module (4) Bluetooth Module HC-05/HC-06 Operation Mode Operation Mode Command Mode AT Command를이용하여모듈설정및제어수행 Data Transfer Mode Bluetooth 모듈간에데이터를송수신 Data Transfer Mode Power-on 기본모드 HC-06 : Command Mode, Pairing 후에 Data transfer Mode로전환기본통신설정 Baud Rate: 9600 bps, Data : 8 bits, Stop Bits: 1 bit, Parity : None, Handshake: None Passkey: 1234 ( 모듈에따라다름 ) Device Name: HC-05 ( 모듈에따라다름 ) 19

Bluetooth Module (5) Bluetooth Module HC-05/HC-06 Operation Mode Command Mode HC-06 : Power-on 기본모드, Pairing 후에 Data Transfer Mode 로전환 HC-05 Command Mode Setup Method #1: Connect the KEY pin high before applying power to the module put the module into command mode at 38400 baud. This is commonly used, and needed if you don't know the baud rate the module is set to. Method #2: Apply power to the module then pull the KEY pin high. enter command mode at the currently configured baud rate. This is useful if you want to send AT commands from a microcontroller as the KEY pin can be controlled from one of the microcontroller pins. BUT you need to know the currently configured Baud Rate. AT Command 를전송하여통신환경설정및페어링등의동작수행 20

Bluetooth Module (6) Bluetooth Module HC-05 연결회로 21

Bluetooth Module 설정 (1) Bluetooth Module 설정 Bluetooth module 을이용하여통신하기전에통신환경에대한설정및페어링동작이필요 Command mode 에서 AT commands 을전송하여수행 주요설정항목 모듈의통신역할 (Role) : Master or Slave 모듈장치이름모듈장치 pin code UART 통신설정 baud rate 등 22

Bluetooth Module 설정 (2) AT Commands Command Format: Always starts with "AT" Then "+" followed by <ParameterName> Then either:? (returns current value of parameter) = (New Value of parameter) Termination Chars: \r\n 예 : AT\r\n AT+VERSION?\r\n AT+PIN=4321\r\n HC-06 에서의예외사항 종료문자 ( \r\n ) 가필요없음 1초안에입력된문자열을명령으로처리파라메터이름과값사이에별도의문자를두지않고연결 23

Bluetooth Module 설정 (3) 주요 AT Commands Ref. Site: https://www.teachmemicro.com/hc-05-bluetooth-command-list/# Master Mode AT+RMAAD : Clear any paired devices AT+ROLE=1 : Set mode to Master AT+RESET : After changing role, reset is required AT+CMODE=0 (Correction!) Allow master to ONLY connect to bound address (slave). This allows the master to automatically connect to the slave when switched on AT+CMODE=1 : Allow connection to any address (I have been told this is wrong and CMODE=1 sets "any address" AT+INQM=0,5,5 : Inquire mode - Standard, stop after 5 devices found or after 5 seconds AT+PSWD=1234 : Set PIN. Should be same as slave device 24

Bluetooth Module 설정 (4) 주요 AT Commands Master Mode AT+INIT : Start Serial Port Profile (SPP) ( If Error(17) returned - ignore as profile already loaded) AT+INQ : Start searching for devices AT+PAIR=<address>,<timeout> : The timeout is in seconds and if you need to type in the pin on the slave device you need to give enough time to do this. AT+BIND=<address> : Set bind address to the slave address AT+LINK=<address> : Connect to slave. 25

Bluetooth Module 설정 (5) 주요 AT Commands Slave Mode AT+ORGL : Reset to defaults AT+RMAAD : Clear any paired devices AT+ROLE=0 : Set mode to SLAVE AT+ADDR : Display SLAVE address AT+NAME: Change name. No space between name and command AT+BAUD: change baud rate, x is baud rate code, no space between command and code AT+PIN: change pin, xxxx is the pin, again, no space AT+VERSION 26

Bluetooth Module 설정 (6) Bluetooth Module 설정실습 HC-05 모듈을연결하여기본설정을확인하고다음항목을설정하도록한다. Baudrate: 38400bps Device Name: SILLA## (##: 장비세트번호 ) Pin Number: 1234 27

Bluetooth Module 설정 (7) Bluetooth Module 설정실습 시스템연결구성 Terminal Program Serial Serial1 28

Bluetooth Module 설정 (8) Bluetooth Module 설정실습 실습개요 AT Commnad 를이용하여 HC-05 블루투스모듈의통신파라미터를설정한다. 프로젝트생성 프로젝트이름 : multi_serial_comm Nucleo_mbed_template 폴더를복사 폴더이름 32_multi_serial_comm, 프로젝트설정파일이름 multi_serial_comm 29

Bluetooth Module 설정 (9) Bluetooth Module 설정실습 구현 프로그램소스 main.cpp #include "mbed.h" Serial pc(usbtx, USBRX); Serial bt(pa_11, PA_12); int main() { pc.baud(115200); bt.baud(9600); // initial baudrate: 9600 // bt.baud(38400); while(1) { while (pc.readable()) { int c = pc.getc(); bt.putc(c); // pc.putc(c); // for echo to PC } 30

Bluetooth Module 설정 (10) Bluetooth Module 설정실습 구현 프로그램소스 main.cpp } } while (bt.readable()) { pc.putc(bt.getc()); } 31

Bluetooth Module 설정 (11) Bluetooth Module 설정실습 블루투스모듈설정 Tera-Term 터미널설정 32

Bluetooth Module 설정 (12) Bluetooth Module 설정실습 블루투스모듈설정 통신파라미터설정 MCU 프로그램에서블루투스 baudrate 를 38400 으로변경필요 33

Bluetooth Module 설정 (14) Bluetooth Module 설정실습 메시지전송테스트 34

Bluetooth 통신응용 (1) Bluetooth 통신응용실습 실습개요 블루투스연결을통해스마트폰에서 LED on/off 를제어하도록한다. 프로젝트생성 프로젝트이름 : bt_comm_test Nucleo_mbed_template 폴더를복사 폴더이름 33_bt_comm_test, 프로젝트설정파일이름 bt_comm_test 35

Bluetooth 통신응용 (2) Bluetooth 통신응용실습 구현 프로그램소스 main.cpp #include "mbed.h" Serial pc(serial_tx, SERIAL_RX); Serial bt(pa_11, PA_12); DigitalOut myled(pa_13); int main() { pc.baud(115200); bt.baud(38400); //prints data on mobile bt.printf("connection Established"); //print data on pc terminal pc.printf("connection Established"); 36

Bluetooth 통신응용 (3) Bluetooth 통신응용실습 구현 프로그램소스 while(1) { // For reading and writing data from/to bluetooth HC-06, check // if bluetooth is readable and execute commands to toggle LED if (bt.readable()) { char input_key= bt.putc(bt.getc()); //tutn on LED if "y" is entered if(input_key == 'y') { myled = 1; bt.printf("led is ON"); } //tutn on LED if "n" is entered if(input_key == 'n') { myled = 0; bt.printf("led is OFF"); } } 37

Bluetooth 통신응용 (4) Bluetooth 통신응용실습 구현 프로그램소스 } } } //For reading and writing data from/to pc terminal //check if pc is readable and execute commands to toggle LED if (pc.readable()) { char input_key= pc.putc(pc.getc()); if(input_key == 'y') { myled = 1; pc.printf("led is ON"); } if(input_key == 'n') { myled = 0; pc.printf("led is OFF"); } 38

Bluetooth 통신응용 (5) Bluetooth 통신응용실습 테스트 프로그램을빌드한후에다운로드한다. 스마트폰앱을실행하고블루투스를연결한다. 스마트폰앱에서메시지를전송하여 LED on/off 를제어한다. 39