COMP07197 2020 Internet of Things
Physical, real-world things are becoming increasingly visible and actionable via Internet and Web technologies. Propelled by dramatic decreases in technology costs, a proliferation of sensors, improved connectivity including between devices, the market is estimated to grow to €10bn world-wide by 2022. This includes cell-phones, washing machines, jet engines and soon, humans.
The goal of the module is to look top-down as well as bottom-up, to provide students with a practical understanding of the Internet of Things and the forms it can take - human-to-human, human-to-device and device-to-device.
By looking at a variety of real-world application scenarios of the IoT and diverse implemented applications, the various understandings and requirements of IoT applications become apparent. This allows students to understand what IoT technologies are used for today, and what is required in certain scenarios.
Students will be given the opportunity to apply these technologies to tackle scenarios of their choice using an experimental platform for implementing prototypes and testing them as running applications.
On completion of this module the learner will/should be able to;
Evaluate the term Internet of Things by describing some current and potential business applications and the different technologies employed.
Work collaboratively with others to use, adapt and contribute to open source repositories of IoT coding solutions
Synthesise knowledge of and skills with micro-processor boards and related components/libraries to build small IoT sub-systems
Create an Internet of Things application which connects sensor data to an Internet Application Programming Interface (API).
Teaching and Learning Strategies
Work will be predominantly conducted in small lab-based groups, typically working in pairs. The emphasis will be on experimentation to explore the interplay between software and hardware in pursuit of an identified goal. The objective is to assist the student in identifying embedded knowledge in the problem domain, work to understand it in praxis and attempt to apply it in the context of his/her own need.
Module Assessment Strategies
Assessment will be 100% continuous assessment given the practical nature of the module. The aim is to assess tacit knowledge as well as explicit codified knowledge (both self- and open-sourced), testing the student's ability to deal with problems as they arise. The ability to analyse, identify & recognise bugs/incompatibilities/faults/solutions is best gauged over an extended assessment period.
Ongoing quiz and online discussion activity will be conducted between weeks 3 and 10.
Repeat assessments will follow a similar form to the continuous assessments presented over the module. In the case of non-attend repeat students, it may be necessary to purchase a micro-controller board & a small set of related components, all of which is readily available.
1. Evaluate the term Internet of Things by describing some current and potential business applications and the different technologies employed.
- Definition of terms in IoT application development
- Key concepts and architectures in IoT business applications
- Case studies of well known IoT applications
- Future of IoT in business domains
2. Synthesise knowledge of and skills with micro-processor boards and related components/libraries to build small IoT sub-systems
- Development environment
- Basic circuitry, bread boards, sensors, shields, actuators, LEDs, buttons.
- Digital/Analog communication
- Simple programming logic to perform physical computing
3. Work collaboratively with others to use, adapt and contribute to open source repositories of IoT coding solutions
- Creating, adding & committing to local code repositories
- Work with cloud repositories
- Reverting, rebasing and undoing work
- Forking, branching and merging
4. Create an Internet of Things application which connects sensor data to an Internet Application Programming Interface (API)
- Understanding Application Programming Interfaces (APIs)
- Expose/Consume RESTful web services via a microcontroller development board
- Push/pull sensor data to cloud
- Data analytics
Coursework & Assessment Breakdown
|Title||Type||Form||Percent||Week||Learning Outcomes Assessed|
|1||Initial Group Project||Project||Project||25 %||Week 4||1,2,3|
|2||Internet of Things Quiz & Discussion||Continuous Assessment||Multiple Choice||25 %||OnGoing||1,4|
|3||Final Project||Project||Project||50 %||Week 12||2,3,4|
Full Time Mode Workload
|Independent Learning||Not Specified||Independent Learning||4||Weekly||4.00|
|Laboratory Practical||Computer Laboratory||IoT Lab||2||Weekly||2.00|
Required & Recommended Book List
2016-09-30 Internet of Things with Arduino Cookbook
ISBN 1785286587 ISBN-13 9781785286582
Over 60 recipes will help you build smart IoT solutions and surprise yourself with captivating IoT projects you thought only existed in Bond moviesAbout This Book- This book offers key solutions and advice to address the hiccups faced when working on Arduino-based IoT projects in the real world- Take your existing skills and capabilities to the next level by building challenging IoT applications with ease.- Be the tech disruptor you always wanted to be with key recipes that help you solve Arduino IoT related problems smarter and faster.- Put IoT to work through recipes on building Arduino-based devices that take control of your home, health, and life!Who This Book Is ForThis book is primarily for tech enthusiasts and early IoT adopters who would like to make the most of IoT and address the challenges encountered while developing IoT-based applications with Arduino. This book is also good for developers with basic electronics knowledge who need help to successfully build Arduino projects.What You Will Learn- Monitor several Arduino boards simultaneously- Tweet sensor data directly from your Arduino board- Post updates on your Facebook wall directly from your Arduino board- Create an automated access control with a fingerprint sensor- Control your entire home from a single dashboard- Make a GPS tracker that you can track in Google Maps- Build a live camera that streams directly from your robotIn DetailArduino is a powerful and very versatile platform used by millions of people around the world to create DIY electronics projects. It can be connected to a wide variety of sensors and other components, making it the ideal platform to build amazing Internet of Things (IoT) projects on-the next wave in the era of computing.This book takes a recipe-based approach, giving you precise examples on how to build IoT projects of all types using the Arduino platform. You will come across projects from several fields, including the popular robotics and home automation domains. Along with being introduced to several forms of interactions within IoT, including projects that directly interact with well-known web services such as Twitter, Facebook, and Dropbox we will also focus on Machine-to-Machine (M2M) interactions, where Arduino projects interact without any human intervention. You will learn to build a few quick and easy-to-make fun projects that will really expand your horizons in the world of IoT and Arduino. Each chapter ends with a troubleshooting recipe that will help you overcome any problems faced while building these projects.By the end of this book, you will not only know how to build these projects, but also have the skills necessary to build your own IoT projects in the future.Style and approachThis book takes a recipe-based approach, giving you precise examples on how to build IoT projects using the Arduino platform. You will learn to build fun and easy projects through a task-oriented approach.
2016-06-11 Building Arduino Projects for the Internet of Things Apress
ISBN 1484219392 ISBN-13 9781484219393
This is a book about building Arduino-powered devices for everyday use, and then connecting those devices to the Internet. If you're one of the many who have decided to build your own Arduino-powered devices for IoT applications, you've probably wished you could find a single resource--a guidebook for the eager-to-learn Arduino enthusiast--that teaches logically, methodically, and practically how the Arduino works and what you can build with it. Building Arduino Projects for the Internet of Things: Experiments with Real-World Applications is exactly what you need. Written by a software developer and solution architect who got tired of hunting and gathering various lessons for Arduino development as he taught himself all about the topic, this book gives you an incredibly strong foundation of Arduino-based device development, from which you can go in any direction according to your specific development needs and desires. Readers are introduced to the building blocks of IoT, and then deploy those principles to by building a variety of useful projects. Projects in the books gradually introduce the reader to key topics such as internet connectivity with Arduino, common IoT protocols, custom web visualization, and Android apps that receive sensor data on-demand and in realtime. IoT device enthusiasts of all ages will want this book by their side when developing Android-based devices. What You'll Learn: Connect an Arduino device to the Internet Creating an Arduino circuit that senses temperature Publishing data collected from an Arduino to a server and to an MQTT broker Setting up channels in Xively Setting up an app in IBM Bluematrix Using Node-RED to define complex flows Publishing data visualization in a web app Reporting motion-sensor data through a mobile app Creating a remote control for house lights Creating a machine-to-machine communication requiring no human intervention Creating a location-aware device ket="" of="" new="" enthusiasts="" all="" ages="" who="" are="" just="" starting="" out="" with="" iot="" device="" development.