270 likes | 743 Views
Prototyping Connected Devices For the Internet of Things. 2008135065 심기성 2008135120 최종민. Index. - What is the IoT ?. - Connected-Device prototyping tools. - Microsoft.NET gadgeteer design choices. - Building a Web-Connected device with Gadgeteer.
E N D
Prototyping Connected Devices For the Internet of Things 2008135065 심기성 2008135120 최종민 /22
Index - What is the IoT? - Connected-Device prototyping tools - Microsoft.NET gadgeteer design choices - Building a Web-Connected device with Gadgeteer - Cloud-base processing for connected devices - Selecting an IoT development platform - Conclusion /22
What is the IoT? The Internet of Things(IoT) refers to uniquely identifiable objects and their virtual representations in an Internet-like structure. http://www.youtube.com/watch?v=nEVatZruJ7k /22
Connected-Device prototyping tools Arduino Gadgeteer Connected Device prototyping tools MBED Etc.. /22
Connected-Device prototyping tools Arduino Arduino Processor Shield Can be programmed with the C Language Minimalist IDE Supported via simple communications over a serial line interface Add-on Circuit board that extend the platform’s basic capabilities Provide Ethernet, Wi-Fi etc. Arduino Developers commonly use the REST technique, With REST, - Lightweight, easy to debug way to communicate between connected devices such as those built with Arduino. - Services are exposed and accessed using HTTP. - Create, share, and support additional libraries and examples online, further facilitating the development of new applications. /22
Connected-Device prototyping tools MBED • - IDE is accessible via a Web browser without the need to install any software. • - Extensive documentation and libraries are available through the IDE. • - Supports the sharing of user-generated code samples and libraries. • - To support connected-device development, includes a comprehensive set of networking libraries and examples. • - Support for debugging code running on the MBED has been limited to date, but it is possible to transition to a more traditional PC-based IDE. MBED The MBED microcontroller is a single-board microcontroller and associated tools for programming the device. /22
Connected-Device prototyping tools Gadgeteer - Mainboard Containing several sockets : Developers can connect different modules such as sensors, actuators, displays and communication and storage elements. - Solder-less : Allows developers to quickly construct, reconfigure, and extend prototypes. - Tightly integrated with the Microsoft Visual Studio IDE : Dynamic syntax checking, Continually provides hints and prompts to ease to coding. The IDE also aids debugging via breakpoints, single step- ping, variable watches, and execution traces Gadgeteer Gadgeteeris an Open Source rapid prototyping platform with an emphasis on creating small electronic or embedded hardware devices. /22
Connected-Device prototyping tools Etc BeagleBone Raspberry Pi Acredit-card-sized single-board computer developed in the UK A low-power open-source hardware single-board computer produced by Texas IoT Pi Printer BeagleBoard Wi-Fi Robot /22
Microsoft.NET gadgeteer design choices Use C#, Visual Basic Managed Code Familiar Event-Based Model Simplify Software Library High-Level abstraction Rest-ful .Net micro Framework /22
Microsoft.NET gadgeteer design choices Use C#, Visual Basic - Although using managed code is unusual for embedded device development where C-like languages are firmly established, in our experience it tends to reduce the time and expertise needed for prototyping. Event-BasedModel - Further simplifies the creation of many applications and helps developers familiar with event-based programming on desktop and mobile platforms to transition to embedded device development. Software Library - A software library encapsulates each physical Gadgeteer module’s functionality through an intuitive high-level API. The high abstraction level often allows modules to be used in sophisticated ways with just a few lines of code, enabling users with relatively little experience to build compelling devices and applications. /22
Microsoft.NET gadgeteer design choices The .NET Micro Framework - The .NET Micro Framework (http://netmf.com), an open source platform that underpins Gadgeteer’s similarly open software stack, contains extensive provision for networking. The Gadgeteer networking API builds on this in a way that supports a compact, easy-to-understand design pattern for responding to REST-ful Web requests with text, images, or byte streams. /22
Building a Web-Connected device with Gadgeteer Simple Webcam • Attached to a servomotor-controller arm,allowing remote panning as well as capture • This device also incorporates wireless zigbee and WiFi • Supports a connection to lighter-weight Gadgeteer devices ex) temperature, light-level sensors Effectively giving them a presence on the Internet via additional software running on the camera device that acts as a bridge. /22
Building a Web-Connected device with Gadgeteer Simple Webcam – Graphical design Tool • The process began with a graphical design tool.It specify the hardware components and how to connect them to a mainboard. Constructing the corresponding physical hardware took just a couple of minutes /22
Building a Web-Connected device with Gadgeteer Simple Webcam – High-level abstracted API • The developer only needs a single line of code to set up a webserver once a network connection has been established. /22
Cloud-base processing for connected devices Cloud computing is the use of computing resources (hardware and software) which are available in a remote location and accessible over a network. How to running the software within the embedded device? - Be complemented by cloud-based Web-services leveraging XML, HTTP Web based protocol. - Embedded processors will routinely leverage sophisticated datasets in the cloud. Ex) cosm, Project Hawaii /22
Cloud-base processing for connected devices cosm(xively) cosm? Cosm is a family of open distributed computing software and protocols developed in beginning in 1995 lead by Adam Beberg, and currently developed by Mithral Inc. Provide APIs for variable platforms, Libraries, REST-ful Services https://xively.com/dev/libraries/ /22
Cloud-base processing for connected devices Project Hawaii The Hawaii Web service based on Azure Traditional digital camera, this device captures an image when the shutter button is pressed. In Hawaii, rather than simply displaying the image and storing a copy locally, the camera sends the image to the Hawaii Optical Character Recognition(OCR) service. Any text that is detected is returned and overlaid on the display. Very simple Implementation The Hawaii was configured to make the most recent photo from each device available to all the other telepresence devices. http://www.youtube.com/watch?v=hjRi5hWKi88 Windows Azure is a cloud computing platform and infrastructure, created by Microsoft, for building, deploying and managing applications and services through a global network of Microsoft-managed datacenters. /22
Selecting an IoT development platform When we designed Gadgeteer, we chose a high-performance processor which supports managed code and real-time debugging. Performance Form factor Flexibility over form factor was a central consideration when we were designing Gadgeteer. Power consumption was not a focus during the initial development of the Gadgeteer platform, but currently exploring this topic. Power consumption Cost The price premium compared to tools like Arduinoand MBED is modest. A low hurdle Less-experienced users to create useful applications /22
Selecting an IoT development platform - No matter which tools are used for prototyping. eventually it becomes necessary to build and deploy a greater number of devices, either for lager –scale deployments or ultimately for mass production. - IoBridge, Electric Imp Which specifically designed to facilitate the mass production of connected devices. The latter includes a programmable processor and Wi-Fi Radio in a small package and connected to application through a hosted web service. /22
Conclusion Personal Computers & Smartphones Extends Internet Connectivity (The IoT is estimated by some to constitute 100 billion devices as soon as 2020.) In IoT Vision Very Simplest electronic devices Help us manage daily activities, Provide timely information more conveniently, Enhance our leisure time /22
Conclusion As the number of network-connected devices continues to grow, it is clear that no single technology will prevail the IoT’s success is inherently tied to heterogeneous devices, protocols, services, and applications. Although some applications will always be outside the scope of a rapid-prototyping toolkit, we nonetheless anticipate that those working in this exciting field will be able to build on the experiences and examples reported here to explore relevant issues and prototype new applications quickly, and in doing so bring the IoT vision ever closer to reality. /22
Question? /22