This course is the follow-on to Continuous Control Systems (EN.525.609) and presents a comprehensive introduction to the theory and design of discrete-time control systems. Representation, modeling, and analysis of discrete-time / sampled-data systems are first discussed. Then, the design of discrete-time control systems is introduced using both digital design emulation methods (e.g., emulating a continuous-time compensator via zero-pole mapping, hold equivalents, etc.) and direct design (z-transform) methods using root locus and frequency domain synthesis techniques (e.g., Bode, Nyquist). This “classical” approach to discrete-time control representation, analysis and synthesis is followed by a discussion of the “modern” approach which includes discrete-time state-space representation of dynamic systems, controllability, observability, similarity transforms, and pole placement via full state feedback methods. Sample rate selection, relevant hardware and software components, effects of quantization, and control wind-up are also discussed. In this course, each student must review the open literature for relevant (applications-based) discrete-time control publications, and then select, implement (in Matlab, or similar programming platform), and present a discrete-time control systems design project that reflects / emphasizes one or more of the key topics introduced in this course. MATLAB will be used in this course for all design and analysis topics; therefore, it is expected that students taking the course have reasonable familiarity with the Matlab environment.