Module 10 System Integration and Planning for Student v3

Embed Size (px)

Citation preview

  • 7/31/2019 Module 10 System Integration and Planning for Student v3

    1/37

    Module10

  • 7/31/2019 Module 10 System Integration and Planning for Student v3

    2/37

    os peop e o p a o a ,they fail to plan.

    - John L. Beckley

    20112012I Module4/2

  • 7/31/2019 Module 10 System Integration and Planning for Student v3

    3/37

    INTRODUCTION

    Project Complexity Possibilities:1. Purely software

    2. Purely hardware: simple or single

    3. Mixed software and hardware

    4. Multisoftware integration

    . u ar ware n egra on

    As project size grows, complexity grows the more proper planning is required

    The more manpower involved the more project partitioning is required

    20112012I Module5/3

  • 7/31/2019 Module 10 System Integration and Planning for Student v3

    4/37

    TheNeedstoIntegrateandPlan

    Simplify development process by divide and rule To identify what is available and not Outsourcing the not available either due to

    Short of related materials or reliable components or subsystems

    Short of time

    Short of knowledge

    Short of manpower

    va ues o e or g na sys em The final product is more than sum of parts

    Add more features to make original system

    better performance such as more accurate

    capture more market segments

    Be competitive

    20112012I Module4/4 Easier to maintain and optimize the system

  • 7/31/2019 Module 10 System Integration and Planning for Student v3

    5/37

    TheNeedstoIntegrateandPlan(2)

    Understanding the System Requirement Specification (SRS) Describe the system flows List the needs, features, capabilities

    List the restriction List the time frame

    an e use as c ec s or es ng or ver ca on

    Is it sufficient?us omer on y nows w a ey wan u no e ec no ogy

    implementation intricacies Worst, the description may not reflect the actual needs

    , Must discuss the information back to the customer in different forms for

    verification of the SRS

    Acceptance test must be agreed before works begin

    20112012I Module4/5

  • 7/31/2019 Module 10 System Integration and Planning for Student v3

    6/37

    TheNeedstoIntegrateandPlan(3)

    Extra work which may be needed to understand SRS andimplementation Block diagrams Flowcharts Timing diagrams Circuits diagrams User Interface

    Proceduresec ron c se up or arrangemen

    Mechanical setup or arrangement Animation (large project which worth the cost and efforts)

    Project schedule and milestone list and affect of the above

    20112012I Module4/6

  • 7/31/2019 Module 10 System Integration and Planning for Student v3

    7/37

    PROJECTPLANNING

    In general, there are three main planning:1. Hardware Planning

    a) Controllerb) The plant to be controlledc) Human Machine Interface

    2. Software Planning

    a) Block diagrams

    c) Identify the subroutinesd) Identify specific skills, routines or technology components needed

    3. Documentation Planning - Always being neglecteda) Actually, the most important aspect of the whole projectb) For contractors: important to claim payment

    20112012I Module5/7

    c) For engineers /programmers: important to maintain and upgrade

    d) For researchers: important for publication and patents

  • 7/31/2019 Module 10 System Integration and Planning for Student v3

    8/37

    DOCUMENTATIONPLANNING(2)

    1. Project description2. Analysis

    3. Schedule4. Development.

    6. Manual & Reports

    a) Manual and training

    20112012I Module5/8

  • 7/31/2019 Module 10 System Integration and Planning for Student v3

    9/37

    DOCUMENTATIONPLANNING(3)

    1. Project description Words and sentences Pictures: a picture describe a thousand words

    Block diagrams simplification of the pictures or description

    2. Analysisa) Block diagrams stage of processes

    b) Flowcharts -c) Timing diagramsd) Circuits diagramse) Transaction diagrams data exchange between blocks

    20112012I Module5/9

  • 7/31/2019 Module 10 System Integration and Planning for Student v3

    10/37

    DOCUMENTATIONPLANNING(4)

    3. Schedulea) Tasks

    To monitor progress To identify any possible missing details

    Can either be in days, weeks, or months Years are normally break into phases

    No. Tasks 1 2 3 4 5

    1. Problemdescription&analysis

    .

    a) LED

    b) 7Segment

    c Switches

    d)Keypads

    e)Analoginput

    3. Main rocess im lementation

    20112012I Module5/10

    4. Testandimprovement

    5. Reportwriting

  • 7/31/2019 Module 10 System Integration and Planning for Student v3

    11/37

    DOCUMENTATIONPLANNING(5)

    3. Schedule

    b) Milestones Major progress

    Payment claim, progress marks Any delay to achieve will become big attention

    Weeks

    No. Tasks 1 2 3 4 5

    1. Mainprocess

    implementation

    (or

    completion

    of

    all

    basic

    *

    2. Reportwritingsubmission *

    20112012I Module5/11

  • 7/31/2019 Module 10 System Integration and Planning for Student v3

    12/37

    DOCUMENTATIONPLANNING(5)

    4. Developmenta) How to do itb) Challenges

    c) Modification either due to suitable technology or process flow

    5. Verificationa) What to test:

    independent modules or components,

    after modification

    b) Challengesc) Modification either due to suitable technology or process flow

    6. Manual & Reportsa Manual and trainin

    20112012I Module5/12

    b) Commissioning and final report (As Built)

  • 7/31/2019 Module 10 System Integration and Planning for Student v3

    13/37

    HardwarePlanning

    Difficult if depending on other party, overseas purchase, or fabrication

    1. Controller ng e or mu -con ro er

    Build from scratch or use on the shelf SDK (system development kit) use for fast prototyping or simulation only Autonomous runnin or su ervised Wired or wireless communication

    2. The plant to be controlled

    Electronic, mechanical, chemical or hybrid ccuracy, reso u on, spee , response me, s ance e c.

    Analog or digital or hybrid

    3. Human Machine Interface (HMI) Mechanical user interface

    Electronic user interface Software user interface Hybrid

    20112012I Module5/13

    e un an sys em

  • 7/31/2019 Module 10 System Integration and Planning for Student v3

    14/37

    HardwarePlanning Controller

    1. Type based on performance criteria's (see module 2)2. Brand based on:

    Familiarity, experience Support tools, Design references,

    3. To build or to buy based on Time constraint

    Availability Stability Support , Maintenance

    4. Target user or market

    Fixed application or programmable (upgradable) Consumer or industrial Education

    20112012I Module5/14

  • 7/31/2019 Module 10 System Integration and Planning for Student v3

    15/37

    HardwarePlanning Controller(2)

    Issues:1. Testing procedure: in house, out field, calibration2. Modeling

    3. System: electronic, mechanical, chemical, radiation,4. Size, power,. qu pmen acqu s on

    6. Shipment delay: schedule, milestone, estimated time, actual time, reserve

    for delays. , , .8. Packaging9. Interfacing circuits: input and output, digital and analog10.Problems: not in stock deliver dela rice increases su ort

    maintenance

    20112012I Module5/15

  • 7/31/2019 Module 10 System Integration and Planning for Student v3

    16/37

    HardwarePlanning Plant&HMI

    1. Not covered in this class (to learn, attend Mr. Zulfakar shortcourse class)

    2. Assume readily available or provided Beware of any shortcoming if they are not provided by you3. S ecial note on HMI

    Can also be developed by pure software programmer Some problems may require electronic programmer

    HMI based on electronic display HMI based on PC or workstation

    20112012I Module5/16

  • 7/31/2019 Module 10 System Integration and Planning for Student v3

    17/37

    SoftwarePlanning

    Factors to consider during initial planning:

    1. Long programs

    2. Lowvolume applications

    3. Programs which are expected to undergo many changes

    .

    control

    5. Tools: compiler, assembler, simulator, hardware debugger,mo e ng ver ca on

    6. Speed requirement: almost none, realtime, user response time,

    machine response etc.

    7. Memory size, feature capabilities

    20112012I Module5/17

  • 7/31/2019 Module 10 System Integration and Planning for Student v3

    18/37

    SoftwarePlanning(2)

    a) Block diagrams Architectural view Processes in stages or phase

    Eg. JPEG CODING consists of DCT (Discrete Cosine Transform),Quantization and Huffman Coding

    owc ar s Details planning prior implemention

    c) Identify the subroutines Known and unknown Search for internal or external (out source) solutions

    d) Identify specific skills, routines or technology components

    needed Trade off between time, manpower and cost Risk analysis is needed (details in business study)

    20112012I Module5/18

    e) Performance Optimization

  • 7/31/2019 Module 10 System Integration and Planning for Student v3

    19/37

    SoftwarePlanning(3) Example

    Best learn from a case study:a) Block Diagram

    Description

    A simple system to display decimal value from binary inputs

    Overview of top level architecture

    Binary Process Decimal

    Identify data transaction between blocks

    u pu

    Binary

    Input

    Process

    DataDecimalOutputBinary data 2 vars

    sp ay2 decimaldigits on7Se ment

    20112012I Module5/19

    2 decimal

    digits

  • 7/31/2019 Module 10 System Integration and Planning for Student v3

    20/37

    Flowchart BasicDefinition

    Process flow for easy understanding

    Unidirection (no reverse direction)

    Multibranches for many possibilities

    Read, write, process

    Problems can be presented in multilevel of

    flowcharts (preparation stages) Raw c art: c ose to pro em escription or actua system

    flow or human understanding

    specific machine, implementation techniques

    Final chart: actual flow of the program: changes, addition

    20112012I Module2/20

    or omission may occur

  • 7/31/2019 Module 10 System Integration and Planning for Student v3

    21/37

    Flowchart BasicDefinition(2)

    Process flow

    Read, write, process

    20112012I Module2/21

  • 7/31/2019 Module 10 System Integration and Planning for Student v3

    22/37

    Flowchart RefineDefinition

    Start/end Process

    Process or operation

    Output

    Decision

    Flow

    20112012I Module2/22

    Subroutine call or or

  • 7/31/2019 Module 10 System Integration and Planning for Student v3

    23/37

    Example1

    A board level architecture based on an Atmel AVR C

    f

    a

    b

    c

    d

    e

    h

    LED being turned on(Active high)

    AVR

    C

    Latch2 Latch1PA6 PA7

    PortB The 7Segments are

    active low where pin0 to 7 are connected

    to a to h respectively.

    Buffer0 While the switches

    are active high wherepin0 to 7 are

    8LEDs DIPSWITCH

    1

    connecte to sw tc1 to 8 respectively.

    20112012II Module9/23

  • 7/31/2019 Module 10 System Integration and Planning for Student v3

    24/37

    Example1(2)

    Initialize

    Read Pin7

    This program begins by checkingwhether it is in diagnostic or

    Mode?diagnose

    check

    operat on mo e.

    a) If it is in diagnostic mode, call thediagnostic subroutine

    operation

    ----

    ---- on both 7Segments to

    initialize the process and refresh

    both 7Segment display based on

    refresh

    e sw c es se ec on rom p nto 6.

    c) If it is end of operation, exit thero ram.

    End?no

    yes

    20112012I Module2/24

    EXIT

  • 7/31/2019 Module 10 System Integration and Planning for Student v3

    25/37

    Flowchart Hierarchical

    Hierarchical flowchart

    A single flowchart is too messy for a big program orproject

    Use divide and rule concept to have betterun ers an ng, mon or ng an con ro

    Must have proper initial call and continuation

    Keep track the hierarchy levels to ensure the stack willnever overflow for CPU with limited stacks

    Use this or to call and return

    20112012I Module2/25

  • 7/31/2019 Module 10 System Integration and Planning for Student v3

    26/37

    Example1 diagnosticsubroutine

    Check Or initialize check This subroutine will activate theLED one by one from right to left.

    LED run

    7Seg blink

    en, t e egment w n

    twice followed by waiting for anychange to the switch 0 to 6. The

    Read switchreflected on the LED.

    Disable LED basedON switch

    the operation mode at bit 7.

    noMsb sw?

    yes

    20112012I Module2/26

    RET

  • 7/31/2019 Module 10 System Integration and Planning for Student v3

    27/37

    Example1 operationsubroutine

    Refresh This subroutine begins bychecking whether it is in

    Or initialize refresh

    Read switch agnost c or operat on mo e.

    a) If it is in diagnostic mode, call thediagnostic subroutine

    Split

    the 7Segment display based on

    the switches selection from pin 0

    to 6.

    Display digits

    RETc s en o opera on, ex e

    program.

    20112012I Module2/27

  • 7/31/2019 Module 10 System Integration and Planning for Student v3

    28/37

    Example1 bintodecsubroutine

    Split Or initialize split Assuming the pass value willnever exceed 99, this subroutine

    no

    >9?

    yes

    w sp t t e va ue nto two

    decimal digits.

    Value - 10,

    be returned back to the valueoriginator.

    What is the level of thissubroutine hierarchy?

    Digit1 = Value

    RETExercise: modify the flowchart sothat the received value can befrom 0 to 999.

    20112012I Module2/28

  • 7/31/2019 Module 10 System Integration and Planning for Student v3

    29/37

    Do&Dont

    a) Decision self loop: a decision box must be preceded by a process or I/O boxor initialization box

    nolevel? no

    Value - 10

    b) Branches are only possible from decision box

    yeseve

    yes

    c t ere s more t an two ranc es rom a ec s on, sp t t em nto mu t p edecision boxes

    low

    level?

    highNot low

    medium

    20112012I Module

    2/29high

  • 7/31/2019 Module 10 System Integration and Planning for Student v3

    30/37

    Do&Dont(2)

    d) No code should be in the elements (boxes), write outside the elements

    e) Codes flow should follow the flowchart flow easier to double check

    Refresh OUT DDRB, R16 ; R16 is set to 0x00, input

    Read switch IN R1, PortB

    CALL SPLIT ; Pass R1 to SPLITSplit

    Display digits

    OUT DDRB, R17 ; R17 is set to 0xFF, outputOUT PortB, R2 ; Digit1CBI PortA, 7 ; Latch 1 +ve ed e tri er

    RET

    SBI PortA, 7OUT PortB, R3 ; Digit2CBI PortA, 6 ; Latch 2 +ve edge triggerSBI PortA, 6

    20112012I Module

    2/30

    RET

  • 7/31/2019 Module 10 System Integration and Planning for Student v3

    31/37

    Do&Dont(3)

    f) Intersection of flow lines can easily confuse the reader. Avoid it if you want to

    make it more effective and better way of communication.g e owc art must as a og ca start an n s .

    h) Test the validity of the flowchart by passing through it with a simple test data.You may draw a state table to fill in the loops.

    No Parameter 0 1 2 3 4

    1. Value 43 33 23 13 3

    . g t

    3. Digit2 0 1 2 3 4

    i) Dont throw away your flowchart with errors. Name the new flowchart into nextversion such as 2.0. Keep the flowchart with errors for future references.

    20112012I Module

    2/31

  • 7/31/2019 Module 10 System Integration and Planning for Student v3

    32/37

    SoftwarePlanning(3) Example

    3. Identify the subroutines/components Check, Refresh, Split

    4. Identify specific skills, routines or technology componentsneeded LED, 7Segment, LED, latching, buffer enable, bus sharing

    5. Im lementation issues:a) Adjusting to actual hardware conditionb) Delaysc) Filter (read only a single switch or read only 7 bits switches)

    d) Human response relative to actual data capture speed

    20112012I Module

    5/32

  • 7/31/2019 Module 10 System Integration and Planning for Student v3

    33/37

    SoftwarePlanning(3) Example

    1. Making a system work AFAP is always the first priority

    2. Making the system stable and reliable is always the 2nd round

    challenge

    3. Price is always secondary

    .

    productivity improvement future target

    5. Tuning the performance for a specific hardware

    20112012I Module

    5/33

  • 7/31/2019 Module 10 System Integration and Planning for Student v3

    34/37

    SYSTEMINTEGRATION model

    Development model:1. In house

    All components, sub-systems, hardware or software are built in the

    organization Advantage: Full control

    2. Partially outsource Some of the components, sub-systems, hardware or software are built by

    - Advantage: Save development time Disadvantage: Higher cost, possibility of obsolete, incompatibility issues

    (EDAS)

    3. u outsource All components, sub-systems, hardware or software are built outside theorganization

    20112012I Module

    5/34

    . ,

    Disadvantage: possibility to lose control (see US and European automobile

    companies)

  • 7/31/2019 Module 10 System Integration and Planning for Student v3

    35/37

    SYSTEMINTEGRATION Approach

    1. Partitioning different person for specific tasks to reduce errors divide and solve

    different team of designer and QC/QA2. Approach:

    top-down or bottom-up Experience vs theory

    3. Integration challenges Different vendors Non-standardize equipment Custom interface

    . er ca on

    5. Reports

    20112012I Module

    5/35

    The most difficult and boring part of all

  • 7/31/2019 Module 10 System Integration and Planning for Student v3

    36/37

    SYSTEMOPTIMIZATION

    System Optimization (consumer product)1. Making a system work AFAP is always the first priority

    2. Reducing the price while maintaining the performance is 2nd round of

    development3. Increase performance or introducing new features is a maturing product, eg.

    a eypa s so a more app ca ons can e u

    20112012I Module

    5/36

  • 7/31/2019 Module 10 System Integration and Planning for Student v3

    37/37

    BoardLevelArchitecture

    f

    a

    bd

    e LED being turned on(Active high)

    ATMEL

    AVR

    CLatch2 Latch1PA6 PA7

    PortB

    c The 7Segments are

    active low where pin0 to 7 are connected

    Buffer0

    .

    While the switchesare active high where

    in0 to 7 are

    8LEDs DIPSWITCH

    PA5

    1

    connected to switch1 to 8 respectively. Keypads are active

    high, Interrupt pin is to

    Buffer1

    & Keypads

    signal to C a key isbeing pressed 4 bits represent 12

    keys

    20112012II Module

    9/37

    Priority

    EncoderPA4

    ,

    PC0