Devices

Create devices embedded in physical objects that interact in the physical world.

The Devices thread is concerned with embedded computational artifacts that interact with people or the physical world. In this thread one learns how to create and evaluate devices that operate under physical constraints such as size, power and bandwidth. Examples include cell phones, robots, jet engines, and intelligent appliances.

The student who pursues Devices can combine it with Systems and Architecture to build devices that are small, power- and cpu-limited, with Intelligence to build automonous robots, with People to study human-robot interaction, or a number of other threads.

Early Preparation

  • Programming and Design
  • Numerical Methods
  • Linear Algebra
  • Dynamics and Control
  • Circuits and Sensor Design

Knowledge Goals

  • Power Management
  • Concurrent and Distributed Programming
  • Planning and Reactive Control
  • Synthesizing Sensors
  • Navigation

Skill Outcomes

  • Ability to design programs for resource-limited devices
  • Ability to implement motion planning algorithms
  • Ability to design and implement a simple control architecture

 

Required Courses:

View the course prerequisites for the Devices Thread.

*Although not required, we recommend that students use PHYS II to fulfill one of their Lab Sciences electives.

  • CS 1301 Introduction to Computing and Programming, 3
  • CS 1331 Introduction to Object-Oriented Programming, 3
  • CS 1332 Data Structures and Algorithms, 3
  • CS 2050 or CS 2051 Introduction to Discrete Math for CS, 3
  • CS 2110 Computing Organization and Programming, 4
  • CS 2200 Computer Systems and Networks, 4
  • CS 2340 Objects and Design, 3
  • CS 3251 Computer Networking 1, 3
  • ECE 2031 Digital Design Laboratory, 2
Algorithm Fundamentals
  • CS 3240 Languages and Computation, 3
  • CS 3510 or CS 3511 Design and Analysis of Algorithms, 3
Pick 1 of Building Devices
  • CS 3651 The Art of Building Intelligent Appliances, 4
  • ECE 4180 Embedded Systems Design, 4
Pick 1 of Devices in the Real World
  • CS 3630 Robotics and Perception, 3
  • CS 4261 Mobile Applications and Services for Converged Networks, 3
  • CS 4605 Mobile and Ubiquitous Computing, 3

 

Elective Courses:

Free Electives (6 hours)
  • FREE-DEV1 Free Elective-Devices, 3
  • FREE-DEV2 Free Elective-Devices, 3
Algorithm Fundamentals
  • CS 3240 Languages and Computation, 3
  • CS 3510 or CS 3511 Design and Analysis of Algorithms, 3
Device Platforms
  • CS 3220 Computer Structures: HW/SW Codesign of a Processor, 3
  • CS 4210 Advanced Operating Systems, 3
  • CS 4220 Programming Embedded Systems, 3
  • CS 4261 Mobile Applications and Services for Converged Networks, 3
Intelligent Systems
  • CS 3600 Introduction to Artificial Intelligence, 3
  • CS 3630 Robotics and Perception, 3
  • CS 4476 Intro Computer Vision, 3
  • CS 4616 Pattern Recognition, 3
  • CS 4632 Advanced Intelligent Robotics, 3
  • CS 4641 Machine Learning, 3
  • CS 4649 Robot Intelligence: Planning
Devices for People
  • CS 4470 Introduction to User Interface Software, 3
  • CS 4605 Mobile and Ubiquitous Computing, 3
  • CS 4685 Pervasive Systems and Networking, 3

Devices

Devices

Create devices embedded in physical objects that interact in the physical world.

Info Internetworks

information internetworks

Represent, transform, transmit, and present information.

Learn more about Information Internetworks

Intelligence

intelligence thread

Build top-to-bottom models of rational agents and human-level intelligence.

Learn more about the Intelligence thread

Media

media thread

Build systems to exploit computing’s abilities to provide creative outlets.

Learn more about the Media thread

Modeling & Simulation

Modeling + Simulation thread

Represent natural and physical processes.

Learn more about the Modeling & Simulation thread

People

people thread

Design, build, and evaluate systems that treat humans as the central component.

Learn more about the People thread

Systems & Architecture

Systems + Architecture

Create computer architectures, systems and languages.

Learn more about the Systems & Architecture thread

Theory

theory

Discover the theoretical foundations underlying a wide range of computing disciplines.

Learn more about the Theory thread