ENGG1100 Lecture 6: Introduction To Engineering Design (Digital Logic) Part 1 Kin Hong Wong ENGG1100. Ch6-Digital Logic (Part1) 25/2/14 1.

Slides:



Advertisements
Similar presentations
EMS1EP Lecture 6 Digital Inputs
Advertisements

ENGG1100 Ch7: Introduction To Engineering Design (Digital Logic)
ENGG1100 Ch6: Introduction To Engineering Design (Digital Logic) Part 2 of digital logic KH WONG ENGG1100. Ch6-Digital Logic (part2) v3h1.
Sahar Mosleh PageCalifornia State University San Marcos 1 Introductory Concepts This section of the course introduces the concept of digital circuits and.
Lab7: Introduction to Arduino
What is Arduino?  Arduino is a ATMEL 168 micro-controller kit designed specially for small projects  User friendly IDE(Integrated Development Environment)
Lecture 2: Systems Engineering
EML 2023 – Motor Control Lecture 4 – DAQ and Motor Controller.
ELECTRICAL. Circuits Outline Power Hub Microcontroller Sensor Inputs Motor Driver.
EECC341 - Shaaban #1 Lec # 1 Winter Introduction to Digital Systems Analog devices and systems process time-varying signals that can take.
Laboratory 5: Introduction to LabVIEW. Overview Objectives Background Materials Procedure Report / Presentation Closing.
New Human Computer Interfaces Amnon Dekel HUJI – CSE, Spring 2007 Class 3 March
Arduino. Arduino is a tool for making computers that can sense and control more of the physical world than your desktop computer. It's an open-source.
ECE 301 – Digital Electronics Multiplexers and Demultiplexers (Lecture #12)
Introduction.
ASPPRATECH.
 Main Components:  Sensors  Micro controller  Motor drivers  Chasis.
Introduction to Arduino Prepared by R. Lamond.  “Arduino is an open-source electronics prototyping platform based on flexible, easy- to-use hardware.
Engineering 1040: Mechanisms & Electric Circuits Fall 2011 Introduction to Embedded Systems.
3. DIGITAL ELECTRONICS..
ENGG1100 Lecture7: Introduction To Engineering Design (Digital Logic) Part 2 Kin Hong Wong ENGG1100. Ch7-Digital Logic (part 2) 16/02/15 1.
Engineering H192 - Computer Programming Gateway Engineering Education Coalition Lab 2P. 1Winter Quarter Digital Electronics Lab 2.
ENGG1100 Introduction to Engineering Design Digital Logic (Part 2) Prof. Kin Hong Wong Department of Computer Science and Engineering.
ENGG1100 Ch6: Introduction To Engineering Design (Digital Logic) Part 1 KH WONG ENGG1100. Ch6-Digital Logic (v3e2.v5)1.
Ballooning Bundle. What is a Microcontroller? Small computer with a processor core, memory and programmable input/output Continuously repeats software.
Applied Control Systems Technology. © t 4 Galway Education Centre 2 Applied Control Systems Inputs Push switches L.D.R. Microphone Tilt switch Infrared.
Microcontroller Hands-on Workshop #3 Ahmad Manshad New Mexico State University Institute of Electrical and Electronics Engineers November 7, 2009.
COMPUTER SYSTEM ARCHITECTURE By Sohaib.  The digital computer is a digital system that performs various computational tasks.  The word digital implies.
CS1Q Computer Systems Lecture 8
Typical Microcontroller Purposes
Introduction to the Arduino
Module 1: Introduction to PLC
ERGM 1413 Programming and Playing with Intelligent Robots Prof. K.H. Wong Robot building v4.7b1.
Digital Electronics Truth tables for several gates Aberdeen Grammar School.
ENGG1100 Ch5: Introduction To Engineering Design (Digital Logic) Part 1 of digital logic KH WONG ENGG1100. Ch5-Digital Logic (v3e2)1.
What is Mechatronics? Mechatronics is the synergistic combination of mechanical engineering, electronics, controls engineering, and computers, all integrated.
Digital Electronics Board-of-Education : Input. Board of Education - Input This presentation will explain, both from a hardware and software perspective,
CSCI-100 Introduction to Computing Hardware Design Part I.
ECEN 248: INTRODUCTION TO DIGITAL SYSTEMS DESIGN Dept. of Electrical and Computer Engineering.
EGR101-34R "lecture on hardware- software" FB 7/10/2004 Digital Electronics Logic Gates Logic gates work with the voltage level of the signals. They are.
ENGG1100 Introduction to Engineering Design Digital Logic (Part 1) Prof. Kin Hong Wong Department of Computer Science and Engineering.
PRIYADARSHINI SHRAVYA KAVYAA MOBILE CONTROLLED ROBOT USING DTMF ALLPPT.com _ Free PowerPoint Templates, Diagrams and Charts.
June 10, 2002© Howard Huang1 Number systems To get started, we’ll discuss one of the fundamental concepts underlying digital computer design:
CS151 Introduction to Digital Design Chapter 2: Combinational Logic Circuits Lecture 5: Binary Logic and Gates.
Introduction :  In the beginning, the calculator is the basic idea of computers out, then that arrived at the large computers.  in1980 or late seventies.
The George Washington University Department of ECE ECE Intro: Electrical & Computer Engineering Dr. S. Ahmadi Class 4/Lab3.
The George Washington University Electrical & Computer Engineering Department ECE 002 Dr. S. Ahmadi Class3/Lab 2.
Boolean Functions and Boolean Algebra Laxmikant Kale.
Boolean Algebra Computer Architecture. Digital Representation Digital is an abstraction of analog voltage –Voltage is a continuous, physical unit Typically.
CS1Q Computer Systems Lecture 8
Logic Design EE-2121 Manesh T. Digital Systems  Introduction  Binary Quantities and Variables  Logic Gates  Boolean Algebra  Combinational Logic.
Compiled by : Mr. Mark Anthony P. Cezar ( Lecture )
Introduction to LabVIEW
ECE 445 Group 20 4/23/2012 Kevin Dluzen Jonathan Hall Diyang Qiu.
1 Microcontrollers. 2 Programmers work in the virtual world Machinery works in the physical world Microcontrollers connect the virtual and physical world.
Components of Mechatronic Systems AUE 425 Week 2 Kerem ALTUN October 3, 2016.
Introduction to the FPGA and Labs
Logic Gates Binary Day 3 PEOPLE 2016.
Purpose of This Minilab
Module 1: Introduction to PLC
Computer Science 210 Computer Organization
SCADA for Remote Industrial Plant
INC 161 , CPE 100 Computer Programming
DT-Assessment Frame Work Term2
Computer Science 210 Computer Organization
Digital Electronics Lab 2 Instructor:
Functions Computers take inputs and produce outputs, just like functions in math! Mathematical functions can be expressed in two ways: We can represent.
Boolean Algebra and Gate Networks
Introduction to Arduinos
Presentation transcript:

ENGG1100 Lecture 6: Introduction To Engineering Design (Digital Logic) Part 1 Kin Hong Wong ENGG1100. Ch6-Digital Logic (Part1) 25/2/14 1

Introduction | Digital Logic | Truth Table | Robot hardware | Software: If-then-else Overview Part 1: Introduction – 1.1 What is Digital logic? – 1.2 Digital operations (AND, OR, NOT) – 1.3 Truth table – 1.4 Robot Hardware – 1.5 Software implementation of digital operations Part 2 (next week): Hardware/software Implementation – 2.1 Robot system – 2.1 Use of If-then-else (software method 1) – 2.2 Use of switch case (software method 2) – 2.3 Finite state machines ENGG1100. Ch6-Digital Logic (Part1) 25/2/14 2

Introduction | Digital Logic | Truth Table | Robot hardware | Software: If-then-else Motivations and plans The brain of our robot is a set of digital logic functions We will introduce three techniques in digital logic design – Logic formula – Truth table – Finite state machine We will use a program in a Micro-controller system to implement these techniques ENGG1100. Ch6-Digital Logic (Part1) 25/2/14 3

Introduction | Digital Logic | Truth Table | Robot hardware | Software: If-then-else Example How to keep the robot to move forward? Method: – If the robot deviates to the left, turn right – If the robot deviates to the right, turn left The above rules are logic functions and operations. ENGG1100. Ch6-Digital Logic (Part1) 25/2/14 4 Magnetic sensors S1 S2 Terminal

Introduction | Digital Logic | Truth Table | Robot hardware | Software: If-then-else 1.1 What is digital logic ? Understanding the difference between Digital and Analog operations ENGG1100. Ch6-Digital Logic (Part1) 25/2/14 5

Introduction | Digital Logic | Truth Table | Robot hardware | Software: If-then-else Analog and digital signals Analog signals: the signal can be any values within the valid range – Example: Range =0  10 Volts – E.g. The signal can be Volts or Volts Digital signals: It can only be HIGH (or called ‘1’ )or LOW (or called ‘0’). Examples: – In TTL Transistor-transistor-logic standard: High=‘1’  5 volts Low=‘0’  0 Volt ENGG1100. Ch6-Digital Logic (Part1) 25/2/14 6 Voltage Time (ms) Voltage Time (ms) 5 V 0 V 10 V 0 V 1 1 Analog Digital

Introduction | Digital Logic | Truth Table | Robot hardware | Software: If-then-else What is the meaning of digital logic? A signal is represented by ‘1’ or ‘0’ In some digital electronics: – High=‘1’  5 volts – Low=‘0’  0 Volt – Advantages: Easy to be implemented in a circuit. Less likely to be interfered by noise, temperature and radiation. ENGG1100. Ch6-Digital Logic (Part1) 25/2/14 7

Introduction | Digital Logic | Truth Table | Robot hardware | Software: If-then-else 1.2 Digital Operations AND OR NOT ENGG1100. Ch6-Digital Logic (Part1) 25/2/14 8

Introduction | Digital Logic | Truth Table | Robot hardware | Software: If-then-else Digital operations Study how to combine inputs to generate outputs – In arithmetic operations: 2 Add 3= 5, result is 5 – In digital operations: we need a truth table to see the result 3 popular digital operations you will learn here – AND – OR – NOT (Negation ) ENGG1100. Ch6-Digital Logic (Part1) 25/2/14 9 Digital operation Digital Input1 Digital Input2 Digital Output

Introduction | Digital Logic | Truth Table | Robot hardware | Software: If-then-else Exercises Multiple choice questions 1)Are these values digital or analog? Temperature : Ans: _________? Humidity : Ans: _________? 2)Are you a Chinese Univ. student, the answer is : Ans_____? Is the above answer Analog or digital? : Ans:_________? 3)Do you have a mobile phone in your pocket, the answer is : Ans:______? Is the above answer Analog or digital? Ans: ________? 4)What is the temperature in this room, the answer is Ans:___? Is the above answer Analog or digital? Ans: ________? ENGG1100. Ch6-Digital Logic (Part1) 25/2/14 10 Answers: 1)Analog, analog 2)Yes, digital 3)Yes, digital 4)20 Degrees, analog

Introduction | Digital Logic | Truth Table | Robot hardware | Software: If-then-else AND operation, example in real life You get a Degree from CUHK if you take 123 units and your GPA is greater than 1.5 – You may write a formula (X=take 123 units) AND (Y=GPA>1.5) then you can get a Degree from CUHK (W) You must eat and drink in order to live – You may write a formula (X=eat ) AND (Y=drink) then you can live (W) ENGG1100. Ch6-Digital Logic (Part1) 25/2/14 11 XYXY W=X AND Y Notation

Introduction | Digital Logic | Truth Table | Robot hardware | Software: If-then-else OR operation, example in real life If you live in Mongkok, you either take a bus or train to come to the university – You may write a formula (X=take bus) or (Y=take train) then you can come to the University (W) You can ride on a bus if you pay cash or pay using octopus – You may write a formula (X=pay by cash) or (Y=pay by octopus) then you can ride on the bus (W) ENGG1100. Ch6-Digital Logic (Part1) 25/2/14 12 XYXY W=X OR Y Notation

Introduction | Digital Logic | Truth Table | Robot hardware | Software: If-then-else NOT operation, example in real life I don’t love you = Not (I love you) – You may write a formula NOT (X=I love you) means I don’t love you (W) You are not rich = NOT (you are rich) – You may write a formula NOT(X=you are rich) that means you are poor (W) ENGG1100. Ch6-Digital Logic (Part1) 25/2/14 13 X W=NOT X Notation

Introduction | Digital Logic | Truth Table | Robot hardware | Software: If-then-else Exercise for robot control to follow the magnetic path Sensors: S2 S1 If S2 detects the magnetic strip, but not S1, is the robot deviate to the right or left of the path: Answer (right or left) : ______? ENGG1100. Ch6-Digital Logic (Part1) 25/2/14 14 Magnetic sensors S1 S2 Terminal 14 S2 S1 Answer: left

Introduction | Digital Logic | Truth Table | Robot hardware | Software: If-then-else 1.3 Truth table A method to represent logic functions for digital signals ENGG1100. Ch6-Digital Logic (Part1) 25/2/14 15

Introduction | Digital Logic | Truth Table | Robot hardware | Software: If-then-else Truth table The idea is to have all different combinations of inputs arranged in a table Each combination gives one output For n digital inputs, there will be 2 n different combinations The truth table has 2 n rows Example: – n=2 (X and Y as inputs), so there are 2 n =4 rows – You can see that no two rows have the same combination of inputs Example ENGG1100. Ch6-Digital Logic (Part1) 25/2/14 16 Input: X Input: Y W= Output For the operation 00? 01? 10? 11? ? = depends on the operation

Introduction | Digital Logic | Truth Table | Robot hardware | Software: If-then-else Truth table example for “AND” operation X, Y are 2 digital input signals We can use a “Truth table” to find the output Because there are n=2 inputs: X,Y So there are 2 n =4 rows in the truth table Steps to fill in the table – Fill in Y: 0,1,0,1 (from top) – Fill in X: 0,0,1,1 – Fill in the outputs – Output=1 only when both inputs are 1 Input : X=eat Input: Y=drink Output W= X AND Y =live XYXY W= X AND Y ENGG1100. Ch6-Digital Logic (Part1) 25/2/14 17

Introduction | Digital Logic | Truth Table | Robot hardware | Software: If-then-else Truth table example for “OR” operation X, Y are 2 digital input signals We can use a “Truth table” to find the output Because there are n=2 inputs: X,Y So there are 2 n =4 rows in the truth table Steps: – Fill in Y: 0,1,0,1(from top) – Fill in X: 0,0,1,1 – Fill in the outputs – Output=1 only when either input is 1 Input: X(pay by cash) Input: Y (pay by Octopus) Output W= X OR Y= (ride on a bus) XYXY W= X OR Y ENGG1100. Ch6-Digital Logic (Part1) 25/2/14 18

Introduction | Digital Logic | Truth Table | Robot hardware | Software: If-then-else NOT (or called negation) X is a digital input signal We can use a “Truth table” to find the output Because there are n=1 input: X So there are 2 n =2 rows in the truth table Step: – Fill in X: 0,1 – Fill in the outputs – Output=Reverse the input X= you are rich NOT X (you are not rich) X W= NOT X ENGG1100. Ch6-Digital Logic (Part1) 25/2/14 19

Introduction | Digital Logic | Truth Table | Robot hardware | Software: If-then-else Exercises How many rows are required in the truth table for 3 inputs? Give examples of – AND – OR – NOT ENGG1100. Ch6-Digital Logic (Part1) 25/2/14 20 Answer: 2^3=8 rows

Introduction | Digital Logic | Truth Table | Robot hardware | Software: If-then-else Combinational logic (Combine NOT, AND, OR) X, Y, Z are 3 digital input signals We can use a “Truth table” to find the output Because there are n=3 inputs: X,Y,Z So there are 2 n =8 rows in the truth table Fill in Z: 0,1,0,1,0,1,0,1 Fill in Y: 0,0,1,1,0,0,1,1 Fill in X: 0,0,0,0,1,1,1,1 ENGG1100. Ch6-Digital Logic (Part1) 25/2/14 21 W

Introduction | Digital Logic | Truth Table | Robot hardware | Software: If-then-else Truth table We want to find : W=X OR (NOT (Y) AND Z) Step 1: fill in different combinations of inputs 2 inputs, so 2^3=8 rows ENGG1100. Ch6-Digital Logic (Part1) 25/2/14 22 XYZW=X OR (NOT ( Y) AND Z) 000? 001? 010? 011? W

Introduction | Digital Logic | Truth Table | Robot hardware | Software: If-then-else We can solve it step by step Step2 ENGG1100. Ch6-Digital Logic (Part1) 25/2/14 23 XYZNOT(Y) Produce NOT (Y) From Y first. X,Z are not used in this step. inputoutput W

Introduction | Digital Logic | Truth Table | Robot hardware | Software: If-then-else We can solve it step by step Step3 ENGG1100. Ch6-Digital Logic (Part1) 25/2/14 24 XYZNOT(Y)Z AND (NOT(Y)) input output input Then, produce [Z AND (NOT (Y))]. X, Y are not used directly in this step. W

Introduction | Digital Logic | Truth Table | Robot hardware | Software: If-then-else We can solve it step by step Step4 ENGG1100. Ch6-Digital Logic (Part1) 25/2/14 25 XYZNOT(Y)Z AND (NOT(Y)W=X OR (Z AND (NOT(Y))) input output W=X OR (Z AND (NOT(Y)))

Introduction | Digital Logic | Truth Table | Robot hardware | Software: If-then-else Exercise 1.1: Use a truth table to find the output of NOT( X AND Y ) OR Z ENGG1100. Ch6-Digital Logic (Part1) 25/2/14 26

Introduction | Digital Logic | Truth Table | Robot hardware | Software: If-then-else Exercise1.1: NOT( X AND Y ) OR Z Fill the blanks in X,Y, Z columns ENGG1100. Ch6-Digital Logic (Part1) 25/2/14 27 XYZX AND YNOT (X AND Y)W=(NOT (Z AND Y)) OR Z

Introduction | Digital Logic | Truth Table | Robot hardware | Software: If-then-else Exercise1.1: NOT( X AND Y ) OR Z Fill the blanks The answer is in the appendix ENGG1100. Ch6-Digital Logic (Part1) 25/2/14 28 XYZX AND YNOT (X AND Y)W=(NOT (Z AND Y)) OR Z

Introduction | Digital Logic | Truth Table | Robot hardware | Software: If-then-else 1.4 Robot Hardware Arduino computer Write programs and download here to run Debug Board Build your circuit here E.g. Motor driver circuit etc. Such as MOSFET, H-bridge L293 ENGG1100. Ch6-Digital Logic (Part1) 25/2/14 29

Introduction | Digital Logic | Truth Table | Robot hardware | Software: If-then-else The Intelligent Robot system ENGG1100. Ch6-Digital Logic (Part1) 25/2/14 30 Arduino board (programs to be run in the Arduino computer): : Loop { If …. then…. else…. } In1 In2 In3 In4 Out1 Out2 Out3 Out4 Motor drivers Magnetic sensors S1, S2 Magnetic strips S2 S1 RM1 RM2 LM1 LM2 Our interface Board Programmer to update the program USB cable L293D H-bridge

Introduction | Digital Logic | Truth Table | Robot hardware | Software: If-then-else Our debug (interface) board You may use the debug board provided to connect input/output signals to the Arduino board ENGG1100. Ch6-Digital Logic (Part1) 25/2/14 31 Personal computer PC

Introduction | Digital Logic | Truth Table | Robot hardware | Software: If-then-else 1.5 Software implementation Document about the use of Arduino – elearninghttps://elearn.cuhk.edu.hk/webapps/login/ Edit program Compile Download to the SMART-car-board Run the program ENGG1100. Ch6-Digital Logic (Part1) 25/2/14 32

Introduction | Digital Logic | Truth Table | Robot hardware | Software: If-then-else How to use “If-then-else” IF (condition) then output is result 1, else output is result 2 Example1: //just to illustrate the idea, not a runnable program – If (“you_eat” and “you_drink”) you _can_live; – Else “you_die”; Example2: // && means “AND” if(Din1() && Din3()) Out1(1); // same as if(Din1()==1 && Din3()==1) Out1(1); else Out1(0); The above program means: if Din1 is 1 AND Din3 is 1, then Out1 is 1. Else Out1 is 0 Example3: // || means “OR” If (Din1() || Din3()) Out3(1); // same as if(Din1()==1 || Din3()==1) Out1(1); Else Out3(0)); The above program means: if Din1 is 1 OR Din3 is 1, then Out3 is 1. Else Out3 is 0 ENGG1100. Ch6-Digital Logic (Part1) 25/2/14 33

Introduction | Digital Logic | Truth Table | Robot hardware | Software: If-then-else You will learn this in Lab6. You are given: An Arduino computer with the debug board In here, inputs are represented as In1=A, In3=B and output Out1=Q. //program segment in the main loop of Lab6.ino void loop() { // Experiment 1.3 Out1=In1 AND In3 //that means if In1 and In3 are ‘1’, Out1 is ‘1’. Otherwise Out1 is ‘0’ if(Din1() && Din3()) Out1(1); //&& means logic function AND else Out1(0); : } ENGG1100. Ch6-Digital Logic (Part1) 25/2/14 34 In1 In3 Out1

Introduction | Digital Logic | Truth Table | Robot hardware | Software: If-then-else A more complex function You will test it in Lab 6. //Program segment in the main loop of Lab6.ino void loop() { : // Experiment 2.1 Out2=(NOT(In2) AND In3) AND In4 if((!(Din2()) && Din3()) && Din4()) Out2(1); else Out2(0); : } ENGG1100. Ch6-Digital Logic (Part1) 25/2/14 35

Summary Learned – digital logic – the use of the truth table – our robot system design – to implement logic functions using if-then-else ENGG1100. Ch6-Digital Logic (Part1) 25/2/14 36

End ENGG1100. Ch6-Digital Logic (Part1) 25/2/14 37

ENGG1100. Ch6-Digital Logic (Part1) 25/2/14 38 Appendix part1.A: ANSWER1.1: W=(NOT( X AND Y )) OR Z Fill the blanks XYZX AND YNOT (X AND Y)W=(NOT (X AND Y)) OR Z