550 likes | 1.12k Views
2 월의 주제 사물인터넷과 Windows 8 앱의 연결 !. IoT 사물인터넷과 Windows 8. 2014 년 명품 특강 !. Microsoft 김영욱 부장. IoT (Internet of Things). “Internet of Things”. 물리적으로 네트웍에 연결되어 있는 기기와 이를 위한 백엔드 서비스 및 소프트웨어. Evolution to the “Internet of Things”. Mainframe. Mini Computing. Client / Server. Desktop
E N D
2월의 주제 사물인터넷과 Windows 8 앱의 연결! IoT사물인터넷과 Windows 8 2014년 명품 특강! Microsoft 김영욱 부장
IoT(Internet of Things) “Internet of Things” • 물리적으로 네트웍에 연결되어 있는 기기와 이를 위한 백엔드 서비스 및 소프트웨어 Evolution to the “Internet of Things” Mainframe Mini Computing Client / Server Desktop Internet Cloud & Mobile Cloud & Digital Computing ? Computing Devices Data Management Apps Apps, Open APIs & Big Data Business Logic Apps Process Automation Apps Web Apps Mobile Apps 1960’s 1970’s 1980’s 1990’s 2000’s 2010’s 2020’s Computing Era Institutional computing One device for many users Mass market One device for one user Multi-device computing Many devices for one user
IoT를 보는 두 가지 관점유토피아적 관점과 현실적 관점
IoT를 생태계 분류 Diversity Volume
Device + Service + Software 3 Software 1 Device 2 Service
Device + Service + Software 3 Software 1 Device 최소한의 Computing Power 저전력 각종 센서 기술 최소한의 통신 기술 2 Service Auto Scaling 안정성 경제성 Web App Store App Desktop App
Device IoT Component Costs USD Other key enablers for IoT Hardware Cost effective component manufacturing Energy Source Open source hardware components Camera Accelerometer Microphone Wi-Fi Radio Temp Sensor GPS Crowdfunding and easier financing 8-bit microcontroller Bluetooth Radio
Windows Embedded Retail Manufacturing Healthcare
Windows Embedded 산업용 패널 컴퓨터, 임베디드 컴퓨터 [부트윈] 휴대용 차량진단기[지아이티] 금융자동화기기 [노틸러스효성] 전해질 분석기 [아이센스] Internet Phone이 결합된 디지털 사이니지 [여의시스템] 골밀도측정기[오스테오시스] All-In-One Slim POS [하나시스]
Service Sensor Sensor Sensor Sensor Sensor Sensor Sensor Digital Hub Digital Hub
Windows 8.1 new APIs New Updated User interface Accessibility Data binding Live tiles and toast Input Controls HTML5/CSS XAML Speech synthesis Devices Graphics and media Communications and data Services Portable Geo-location Point of service Direct3D Direct2D Direct Write Local storage SMS HTTP Skydrive Playback Capture Streams Background transfer Contacts Sensors Proximity USB Bing PlayTo Canvas WebGL Appoint-ments Syndication Networking Azure Mobile HID WiFi direct Bluetooth SVG Printing Scanning 3D printing XML and JSON Contracts PDF Xbox Live Fundamentals Application services Threading/timers Memory management Globalization Cryptography Authentication Diagnostics
Service Service Bus Virtual Machine Mobile Service HD Insight Storage & Database
Device + Service + Software Microsoft IoT Platform 3 Software 1 Device 2 Service Windows Store Visual Studio Windows Embedded Windows Azure
는IoT를 위해서 Device + Service + Software를 모두 제공하는 IoT Platform 회사 입니다.
준비물 Arduino Bluetooth Compass Sensor Accelerometer Sensor Gyrometer Sensor Inclinometer Sensor Light Sensor
Microcontroller • 하나의 칩으로 구성된 작은 컴퓨터 • processor, memory, input/output • 주로 Embedded 영역에서도 최저성능/비용 • Arduino, Raspberry Pi…………
Open Hardware • Typical components include: • power circuit • programming interface • basic input; usually buttons and LEDs • I/O pins
Arduino UNO R3 Making-robots-with-arduino.pdf
Atmega 328 microprocessor Specification Making-robots-with-arduino.pdf
Arduino I/O Boards 14 current boards
Datalogging Shield Shields Wave Shield Touchscreen Shield
More Shields… XBee Shield Wifi Shield Ethernet Shield
Sensors Fingerprint Scanner Gas Sensor Temp & Humidity Flex Sensor Geiger Counter
Sensors Photo/thermistor, infared, force sensitive resistor, Hall effect, Piezo, tilt sensor..
Sketches Includes Globals void setup() void loop()
Arduino 의 구성 todbot.com/blog/bionicarduino
Arduino 개발 환경 http://arduino.cc/en/Guide/Environment Sketch programming Compiling Upload Test
Arduino 첫 번째 샘플 • 첫 번째 샘플 LED 점멸 • File > Examples > Digital > Blink • 13번 Pin과 GND를 연결한다. www.instructables.com
pinMode(pin, mode) • Sets pin to either INPUT or OUTPUT • digitalRead(pin) • Reads HIGH or LOW from a pin • digitalWrite(pin, value) • Writes HIGH or LOW to a pin • delay(ms) • Pauses for a few milliseconds • delayMicroseconds(us) • Pauses for a few microseconds
Arduino 첫 번째 샘플 setup( ) : 최기화에 필요한 내용들을 기술한다. loop( ) : main( )함수에 해당하는 곳이지만 지속적으로 반복하는 점이 차이
Digital or Analog • Digital has two values: on and off • Analog has many (infinite) values • Computers don’t really do analog, they quantize • Remember the 6 analog input pins---here’s how they work
Arduino Bluetooth code SoftwareSerial : Bluetooth 모듈 시리얼 포트를 지정한다.BTSerial.begin( ): 통신을 시작한다. BTSerial.write( ) : 문자를 전송한다.BTSerial.read( ) : 문자를 수신한다.
Arduino Bluetooth Module 1. STATE 2. RXD 3. TXD 4. GND 5. VCC 3 5 1 2 4
Windows 8 Bluetooth APIs Namespace Windows.Devices.Enumeration Windows.Devices.Bluetooth Windows.Devices.Bluetooth.Rfcomm Windows.Networking.Sockets; Windows.Storage.Streams;
Windows 8 Bluetooth APIs Windows.Devices.Enumeration DeviceInformationCollection DeviceInformation 장치들의 목록을 검색하고 장치 정보를 가지고 있을 수 있다.
Windows 8 Bluetooth APIs Windows.Devices.Enumeration RfcommDeviceService 블루투스 장비를 추상화 하고 있으며 이 클래스를 통해서 등록된 블루투스 장비를 연결할 수 있다.
Windows 8 Bluetooth APIs BluetoothDevices = await DeviceInformation.FindAllAsync( RfcommDeviceService.GetDeviceSelector( RfcommServiceId.SerialPort)); foreach(vardeviceInfo in BluetoothDevices) { lstBluetooth.Items.Add(deviceInfo.Name); }
Windows 8 Bluetooth APIs varConnectionDevice= RfcommDeviceService.FromIdAsync(deviceId); varRfcommService= await ConnectionDevice; if (RfcommService != null) { var Socket = new StreamSocket(); varConnectAction= Socket.ConnectAsync(RfcommService.ConnectionHostName, RfcommService.ConnectionServiceName,
Windows 8 Bluetooth APIs SocketProtectionLevel.BluetoothEncryptionAllowNullAuthentication); await ConnectAction;