Computer Science & Engineering Electrical Engineering

Slides:



Advertisements
Similar presentations
MICROPROCESSORS AND MICROCONTROLLERS
Advertisements

Sensing and Control.
Dynamic Memory Allocation (also see pointers lectures) -L. Grewe.
Big Picture Lab 4 Operating Systems Csaba Andras Moritz.
How to Code on TinyOS Xufei Mao Advisor: Dr. Xiang-yang Li CS Dept. IIT.
Motor Control of an Oscillating Pendulum Nick Myers and Chirag Patel March 9, 2004 Advised by: Dr. James Irwin and Mr. Jose Sanchez Bradley University.
CSE Fall Introduction - 1 What is an Embedded Systems  Its not a desktop system  Fixed or semi-fixed functionality (not user programmable)
Systems Programming Course Gustavo Rodriguez-Rivera.
Department of Electrical Engineering Southern Taiwan University of Science and Technology Robot and Servo Drive Lab. 2015/7/2 Digital Control Strategy.
Chapter 3 Planning Your Solution
Spectrum Analyzer Ray Mathes, Nirav Patel,
Microprocessors Tutorial 2: Arduino Robotics
Basic Circuits – Lab 2 Arduino and Sensors Xmedia Spring 2011.
Servo Motors # A servo is a motor that you can position at any angle very accurately. # Servos have a limited servo range; most servos have a range of.
Embedded Microcomputer Systems Andrew Karpenko 1 Prepared for Technical Presentation February 25 th, 2011.
Peripherals and their Control An overview of industrially available “peripheral devices” that use “pulse-width modulation” for information passing. Review.
Microcontroller Hands-on Workshop #3 Ahmad Manshad New Mexico State University Institute of Electrical and Electronics Engineers November 7, 2009.
PWM ECE 4437-EMBEDDED SYSTEMS DR. GLOVER CHRISTOPHER AHN & KHOA VAN.
MCU: Interrupts and Timers Ganesh Pitchiah. What’s an MCU ?
1 Lab 1: Introduction. 2 Configure ATMEL AVR Starter Kit 500 (STK500), a prototyping/development board for Lab1. ATmega16 ( V) is the chip used.
CS 478: Microcontroller Systems University of Wisconsin-Eau Claire Dan Ernst Hybrid I/O – Pulses.
1 Lab 5: Controls and feedback. 2 Lab 5: Control and Feedback This embedded system uses the Photo sensor to detect the light intensity of the environment.
Engineering H193 - Team Project Gateway Engineering Education Coalition Lab 2P. 1Spring Quarter Motor Dynamics Lab 2.
Pulse Width Modulation (PWM). 100% Pulse Width Modulation (PWM) 0% On the chipKIT there are 490 periods per second. Use analogWrite(pin, value) to control.
1 Lecture on Lab 6 Lab 7 Lab 8. 2 Lab 6: Open Loop Controller As you learned in lab 5, there are two kinds of control systems: open loop and closed loop.
Introduction to Engineering Camera Lab #4 – 1 Introduction.
oPEN Simulation Environment PENSE PENSE PENSE is a simulation framework written in C++ using fully object oriented design patterns and it's designed.
By Tony Hoff ECE 4220 – Real Time Embedded Computing University of Missouri - Columbia Course Instructor: Dr. Guiherme DeSouza.
Overview Task State Diagram Task Priority Idle Hook AND Co-Routines
Lab. 2 Overview. Echo Switches to LED Lab1 Task 7 12/4/2015 TDD-Core Timer Library, Copyright M. Smith, ECE, University of Calgary, Canada 2 / 28.
RTX - 51 Objectives  Resources needed  Architecture  Components of RTX-51 - Task - Memory pools - Mail box - Signals.
Microprocessors Tutorial 2: Arduino Robotics. Agenda 1. Robot Anatomy 2. Sensor Review 3. PWM 4. MAKE: Fade 5. Motors 6. H Bridge 7. Robot Control library.
Microcontroller Applications ELEC 421 Dr. Ron Hayne Images Courtesy of Ramesh Gaonkar and Delmar Learning.
SMV Electric Tutorials
1 4-Integrating Peripherals in Embedded Systems (cont.)
Slides created by: Professor Ian G. Harris Operating Systems  Allow the processor to perform several tasks at virtually the same time Ex. Web Controlled.
LED CUBE Preliminary System Software Design Fernando J. Garcia May
PWM: Pulse Width Modulation © 2014 Project Lead The Way, Inc.Digital Electronics.
1 4-Integrating Peripherals in Embedded Systems (cont.)
Analog Output Materials: animatronic head Processing Quiz HW: code links.
Closed Loop Temperature Control Circuit with LCD Display Mike Wooldridge ECE 4330 Embedded Systems.
SOC Consortium Course Material SoC Design Laboratory Lab 8 Real-time OS - 1 Speaker: Yung-Chih Chen Advisor: Prof. Chun-Yao Wang November 17, 2003 Department.
MICROCONTROLLER INTERFACING WITH STEPPER MOTOR MADE BY: Pruthvirajsinh Jadeja ( ) COLLEGE:DIET BRANCH:EC.
Arduino DC Motor Motion Control Instructor: Dr Matthew Khin Yi Kyaw.
Pulse-Width Modulation: Simulating variable DC output
Big Picture Lab 4 Operating Systems C Andras Moritz
1 4-Integrating Peripherals in Embedded Systems (cont.)
Module 8 Tutorial  An 8086 system is used for controlling the speed of a motor. The motor can operate at 5 different speeds (1- 5).  The speed.
Microcontroller basics Embedded systems for mortals.
1 Module 3: Processes Reading: Chapter Next Module: –Inter-process Communication –Process Scheduling –Reading: Chapter 4.5, 6.1 – 6.3.
-AT91SAM7X256 – Pulse Width Modulation YoonMo Yeon
Application Case Study Christmas Lights Controller
Val Manes Department of Math & Computer Science
Midterm review October 02, 2017 Geoffrey Tien.
Pulse Width Modulation (PWM) Motor Feedback - Shaft Encoder
Operating Systems (CS 340 D)
Definitions Concurrent program – Program that executes multiple instructions at the same time. Process – An executing program (the running JVM for Java.
Operating Systems CPU Scheduling.
CSC 253 Lecture 8.
CSC 253 Lecture 8.
Secret Door Knock Detector
By Hector M Lugo-Cordero September 17, 2008
Computer Science & Engineering Electrical Engineering
EE 472 – Embedded Systems Dr. Shwetak Patel.
Computer Science & Engineering Electrical Engineering
Dr. Unnikrishnan P.C. Professor, EEE
Prof. Chung-Ta King Department of Computer Science
Chapter 6: Scheduling Algorithms Dr. Amjad Ali
CSE 153 Design of Operating Systems Winter 2019
Pulse-Width Modulation: Simulating variable DC output
Presentation transcript:

Computer Science & Engineering Electrical Engineering EE 472 – Embedded Systems Dr. Shwetak Patel Computer Science & Engineering Electrical Engineering

Agenda Pulse Width Modulation FreeRTOS Midterm review Lab 3 overview Drone tutorial 2 Shwetak N. Patel - EE 472

Pulse Width Modulation (PWM) Vary the width of a period pulse Can control the voltage to a DC motor I.e. speed control Use a timer to create the pulse Duty cycle is the percentage the pulse is on for that period

PWM

FreeRTOS Open source embedded OS Features: freertos.org Preemptive priority scheduler Semaphores

Sleep() void ExampleTask(void *p) { while( 1 ) Led_SetState( 0 ); // turn the LED off Sleep( 900 ); // leave it off for 900 milliseconds Led_SetState( 1 ); // turn the LED on Sleep( 10 ); // leave it on for 10 milliseconds } Shwetak N. Patel - EE 472

Create tasks void BlinkTask( void* p ); //declare void Run(){ TaskCreate( BlinkTask, "Blink", 400, 0, 1 ); //give scheduler the task ….. } void BlinkTask( void* p ) //define the task { Led_SetState( 1 ); Sleep( 1000 ); … Shwetak N. Patel - EE 472

TaskCreate() void* TaskCreate (void(taskCode)(void*) , char * name, int stackDepth, void* parameters, int priority ) Shwetak N. Patel - EE 472

Malloc() Dynamic memory allocation Shwetak N. Patel - EE 472

Midterm Closed book, no notes, no cheat sheets Concepts covered in class Assigned readings: NP, JKP Class exercises

Concepts C programming what’s the output of some code write a short function pointers, arrays structs defines bitwise operators

Concepts (cont.) ARM High level questions only UML and Structured Design Know what this is UML diagrams shown in class

Concepts (cont.) Tasks, threads, and interrupts Scheduling algorithms Diagramming, analysis, differences

Lab 3 and Drone Tutorial

Questions? Shwetak N. Patel - EE 472