Ubiquitous Computing Practice - Part 2(LED 제어) -

Slides:



Advertisements
Similar presentations
진우석 오준민 정무여 김상구 황현서 5조5조.
Advertisements

Ubiquitous Computing Practice (Photo Resistor) Youn-Hee Han, In-Seok Kang {yhhan, Laboratory of Intelligent Networks Advanced Technology.
Progress Report YoonMo Yeon
Mobile 모바일 싱크 기반 무선 센서 네트워크 류재희, 이호성, 김소영.
for Low Voltage Automatic Meter Reading System
펌핑노드 성능평가 RTLAB 김병철 08/09/25.
일반 요구 사항 비즈니스 요구사항 고객/정보/위치/상태 탐색방법 제품/서비스 홍보 및 광고 방법
캡스톤 디자인 이해경 조나라.
Chapter 16 : Struts 프레임워크 2. chapter 16 : Struts 프레임워크 2.
개발자 환경 설치 및 다운로드.
CS710 컴퓨터구조 특강 - 차세대 무선네트워크 및 보안 -
Ubiquitous Computing Practice - Part 2(Sensors, Serial, RF) -
TinyOS Tutorial Lesson 3 : Introducing Tasks for Application Data Processing (Hanback’s zigbeX & TinyOS ver.1.1.7) 3번째 시간입니다. Lesson 2는 생략하고 건너 뛰었습니다.
인공지능실험실 석사 2학기 이희재 TCP/IP Socket Programming… 제 11장 프로세스간 통신 인공지능실험실 석사 2학기 이희재
Ubiquitous Computing Practice - Part I (Introduction, NesC) -
Ch.07-5 xml-rpc 사용하기 김상엽.
Network Lab. Young-Chul Hwang
UNIT 15 Timer & Watch Dog 로봇 SW 교육원 조용수.
Lab 2 Guide: 교재 3장 그래픽 예제 ( 쪽) - 펜과 브러시로 그리기 - 튀는 공
메카 세미나 무선통신
ZigbeX 소개.
네트워크 스캔하기 WiFi 시리얼 보드 활용가이드 김영준 헬로앱스 (
TinyOS 사용법 및 nesC Programming
VoIP (Voice Over Internet Protocol)
갤럭시 S를 이용한 자동차 원격 제어 시스템 담당교수 : 진현욱 교수님
Ubiquitous Computing Practice - Part I (Installation) -
Ubiquitous Computing Practice - Part 3(RF통신, MAC 프로토콜) -
Ubiquitous Computing Practice - Part I (Introduction, NesC) -
AP 모드 활용하기 WiFi 시리얼 보드 활용가이드 김영준 헬로앱스 (
Ubiquitous Computing Practice (RFID)
TCP/IP 응용 프로그램에 적용 가능한 다양한 소켓 옵션을 이해하고 활용한다.
DK-128 ADC 실습 아이티즌 기술연구소
부트로더와 Self Programming
10 장 데이터 링크 제어(Data Link Control)
DK-128 실습 EEPROM 제어 아이티즌 기술연구소
타이머카운터 사용법 휴먼네트웍스 기술연구소
ATmega128 FND 실습 휴먼네트웍스 기술연구소
DK-128 FND 실습 아이티즌 기술연구소 김태성 연구원
Ubiquitous Computing Practice (RFID)
TinyOS Tutorial Network lab. 김인태
TCP/IP 응용 프로그램에 적용 가능한 다양한 소켓 옵션을 이해하고 활용한다.
22 장 전송층(Transport Layer)
아두이노 프로그래밍 5일차 – Part2 아두이노 보드간 통신 강사: 김영준 목원대학교 겸임교수.
WIN32 API 대전 TETRIS 시스템제어 허준호 박정욱 손경원 신동헌.
후줄정산 시스템 시스템 장비 내역 컴퓨터 - POS (카운터 및 매장 듀얼 모니터)
DK-128 FND 실습 아이티즌 기술연구소
21 장 전송층(Transport Layer)
Tiny OS와 NesC Tiny OS Part1. Won Mi Sun – 17 지능제어 연구실.
DK-128 실습 내부 EEPROM 제어 아이티즌 기술연구소 김태성 연구원
DK-128 실습 타이머카운터 사용법 아이티즌 기술연구소
10차시: 크리스털 LCD 명령어 기초 준비물 SPL-Duino 보드 개요: 크리스털 LCD의 기초 명령어를 익혀 봅니다.
클라우드 서버로 사용자 데이터 전송하기 WiFi 시리얼 보드 활용가이드 김영준 헬로앱스 (
클라우드 서버로 부터 값 읽어오기 WiFi 시리얼 보드 활용가이드 김영준 헬로앱스 (
10 장 데이터 링크 제어(Data Link Control)
10 장 데이터 링크 제어(Data Link Control)
웹서버 기능으로 데이터 읽기 및 제어하기 WiFi 시리얼 보드 활용가이드 김영준
MEGA8_XBee CPUPLAZA
아두이노 프로그래밍 5일차 – Part1 블루투스 통신 강사: 김영준 목원대학교 겸임교수.
DK-128 개발환경 설정 아이티즌 기술연구소
통신프로토콜 전산정보학부 모바일인터넷과 권 춘 우
DK-128 직렬통신 실습 아이티즌 기술연구소
안드로이드 앱 개발과정 Step1. 기초과정 강사 : 정 훈 희.
시리얼 UART 정리 정보통신•컴퓨터 공학부 송명규
5.2.3 교환방식의 비교 학습내용 교환방식의 비교.
4. IP 데이터그램과 라우팅 (6장. 인터넷과 IP) IP 데이터그램 : 특정 물리망에 종속되지 않은 가상의 패킷 형식.
Tiny OS & NesC , NesC Part2..
Network Lab. Young-Chul Hwang
3. 윈도우 미디어 플레이어 6.4 옵션(환경) 설정 변경
Platform Builder 사용법.
ARP.
Presentation transcript:

Ubiquitous Computing Practice - Part 2(LED 제어) - Spring Semester, 2011 Ubiquitous Computing Practice - Part 2(LED 제어) - Laboratory of Intelligent Networks @ KUT (http://link.kut.ac.kr) Yong-hwan Kim

목차 1. Task를 이용한 LED 제어 2. Timer를 이용한 LED 제어 3. 조도 센서 제어 4. 온/습도 센서 제어 LED component를 사용하여 LED 제어 2. Timer를 이용한 LED 제어 Timer component를 이용하여 일정 시간마다 LED On/Off 3. 조도 센서 제어 빛의 광량을 측정하는 조도 센서의 동작 및 센싱 데이터 처리 및 확인 4. 온/습도 센서 제어 SHT11을 이용하여 온/습도를 얻고 시리얼 통신으로 확인 5. Photo 센서 제어(RF 통신) BS520 Photo 센서를 이용하여 빛과 적외선을 측정하고 그 결과를 RF 무선통신을 통해 다른 노드에 전송 Ubiquitous Computing

목차 6. 기본 무선통신 프로토콜 7. RF Power Control, Multichannel and RSSI MAC 프로토콜의 특징과 사용법을 실제 무선 송수신 예제를 통해 연습 7. RF Power Control, Multichannel and RSSI RF Power Control과 Multichannel 에 대해 이해 및 RSSI 값 활용 방법 예제 수행 8. 무선 Ad-hoc Flooding 네트워크 Multi-hop 통신 기법 9. Tree 라우팅을 이용한 멀티 홉 통신 조도, 온도, 습도, 적외선 값을 센싱한 후, Tree 라우팅으로 구성된 멀티 홉 네트워크를 통해 생성한 데이터를 Sink로 전달 10. RFID 실습 13.56MHz 태그와 리더기의 사용법과 제어 방법 Ubiquitous Computing

2. Timer를 이용한 LED 제어 Timer component를 이용하여 일정 시간마다 LED On/Off Ubiquitous Computing

Blink 예제 실습 $ cd /opt/tinyos-2.x/contrib/zigbex/BlinkTimer $ make zigbex Ubiquitous Computing

Blink 예제 실습 USB-ISP와 ZigbeX노드를 결합 USB-ISP mode는 ISP로 설정 AVR Studio에서 Tools → Program AVR → Auto Connect 메뉴를 선택 … 버튼을 눌러 BlinkTimer\build\zigbex\main.hex 선택 후 Program 버튼을 눌러 프로그램함 프로그램 직후 red LED가 1초마다 toggle 되는 것을 볼 수 있음 Ubiquitous Computing

(generic configuration) configuration BlinkTimer { } implementation { components MainC, BlinkTimerM, LedsC, new TimerMilliC (); BlinkTimerM.Boot -> MainC; BlinkTimerM.Leds -> LedsC; BlinkTimerM.Timer -> TimerMilliC; BlinkTimer.nc BlinkTimer.nc MainC (configuration) TimerMilliC (generic configuration) Boot Timer implementation startPeriodic(); startOneShot(); … BlinkTimerM (module) LedsC (configuration) Boot implementation Boot.booted(); Timer.fired(); Leds Leds implementation Leds.init(); Leds.redOn(); … Timer

기본 지식(TimerMilliC component) 경로: \opt\tinyos-2.x\tos\system\TimerMilliC.nc Timer interface 사용 Timer interface에서 제공하는 함수들 command uint32_t getdt () 설정된 타이머의 주기를 리턴 command uint32_t getNow () 현재 시간을 리턴 command uint32_t gett0 () 타이머가 호출된 시간인 t0를 리턴 command bool isOneShot () 한 번 호출로 종료되는 타이머인지 확인 command bool isRunning () 현재 타이머가 설정되어 실행중인지 확인 *command bool startOneShot (uint32_t dt) dt 시간 후에 한번 이벤트를 발생 command bool startOneShot (uint32_t t0, uint32_t dt) t0 + dt 시간 후에 이벤트를 발생 *command bool startPeriodic (uint32_t dt) dt 시간을 주기로 계속 반복하여 이벤트 발생 command bool startPeriodic (uint32_t t0, uint32_t dt) t0 시간부터 dt 주기로 반복하여 이벤트 발생 command void stop () 현재 진행중인 timer를 정지 event void fired () 정해진 타이머가 끝났음을 알림 Ubiquitous Computing

BlinkTimer.nc Timer component를 이용하여 일정 시간마다 LED On/Off 하는 예제 configuration BlinkTimer { } implementation { components MainC, BlinkTimerM, LedsC, new TimerMilliC (); BlinkTimerM.Boot -> MainC; BlinkTimerM.Leds -> LedsC; BlinkTimerM.Timer -> TimerMilliC; 중복적으로 사용될수 있는 컴포넌트를 지원하기 위한 기법 Ubiquitous Computing

BlinkTimerM.nc module BlinkTimerM { uses { interface Boot; interface Leds; interface Timer<Tmilli>; } implementation { event void Boot.booted() { call Timer.startPeriodic(1000); event void timer.fired () { call Leds.led0Toggle (); //시간단위를 ms로 함 //1초마다 Timer.fired event 함수 호출 Ubiquitous Computing

Blink 예제 실습 응용 Timer를 3개 사용하여 BlinkTimer2 작성 1000ms 마다 빨간색 led Toggle Ubiquitous Computing