1 / 0

ECE 495 - INTEGRATED SYSTEMS I

ECE 495 - INTEGRATED SYSTEMS I. Engineering Project Planning Timothy Burg. Career Note – The Five Things Job Recruiters Want From You Now. Recruiters are looking for people with strong records of accomplishment who stand out from others Expertise - What special skills do you have?

vilina
Télécharger la présentation

ECE 495 - INTEGRATED SYSTEMS I

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. ECE 495 - INTEGRATED SYSTEMS I

    Engineering Project Planning Timothy Burg
  2. Career Note – The Five Things Job Recruiters Want From You Now Recruiters are looking for people with strong records of accomplishment who stand out from others Expertise - What special skills do you have? Success stories - Explain the value you've provided in the past and can offer in the future. Recommendations – Colleagues that can explain your concrete contributions and value to specific projects Work samples - Examples of what you've done are far more effective than just talking about what you've done, e.g., websitesor pictures. A consistent message. Your résumé, cover letter, website, LinkedIn profile and interview remarks should all promote a consistent message From BMW : Good Grades with practical experience (“grease under your finger nails”), Coop experience What can you do to strengthen your resume? http://www.forbes.com/2010/06/09/job-recruiters-pointers-leadership-careers-employment.html
  3. Career Note – The Five Things Job Recruiters Want From You Now A few suggestions – (taking the recommended classes is the minimum you can do to get your degree) Join a research project (Faculty Research, Creative Inquiry, Robotics Team, ME Battle Bot Team, etc.) Success stories, Recommendations, Work Samples Take extra classes Expertise, Success stories (if the course has a large project) Do well in ECE495, make a good website Expertise, Success stories, Recommendations Do well in your remaining courses Show a positive slope in your grades, you are on an increasing trajectory Summer Research Project (REU) Success stories, flexibility No magic solutions, make a plan to improve your resume.
  4. Career Note – The Five Things Job Recruiters Want From You Now Get to know a faulty member.
  5. Note about Personality Profiles HW Lawyer Spring 2013 Computer Programmer 4 7 Artist 1 2 1 Social Worker 3 2 1 1 4 3 1 1 Electrical Engineer
  6. Note about Personality Profiles HW Your group probably has a similar distribution, work to incorporate everyone’s talents
  7. Design Example: Airbus A350 Scheduling is a critical part of any design project. A six-month delay in the launch of Airbus’s A350XWB jet cost parent company EADS (European Aeronautic Defense and Space Company) NV $273-million in the third quarter of 2011.
  8. Generic Design Process Identify Need All activities in the design process should be planned. Retire Research Maintain Requirements Use by Customer(s) Concepts Distribute and Sell Design Manufacture Prototype Testing
  9. Engineering Project Management If you fail to plan, then you plan to fail. Industrial Scheduling Tools Work Breakdown Schedule (WBS) GANTT Chart Illustration of the WBS through a visual display of project task durations Network Diagram Illustration of the WBS through a visual display of a task dependencies
  10. Work Breakdown Schedule (WBS) Activity = Task + Deliverable Tasks are actions that accomplish a job Deliverables are the outcome of the task WBS describes Work to be done Time frame for completion Resources needed Responsible person Predecessors or dependencies Checkpoints Design atiming circuit For planning, you need to know: What has to be done?Who will do it? When will they finish?
  11. Example: Design a Robotic Arm for an Underwater Vehicle High-level view of “Work to be done”
  12. Example: Design a Robotic Arm for an Underwater Vehicle More Details of “Work to be done” Define Deliverables Deliverable
  13. Example: Design a Robotic Arm for an Underwater Vehicle Time frame for completion Resources needed Predecessors or dependencies Can’t start some activities until others finish Constraints limiting when an activity can begin (weather, resources, ..) Must complete WBS for the entire project
  14. Work Breakdown Schedule (WBS) Estimating time and resources is a difficult task Routine tasks are well known and quantified Solder 16 wire cable to a connector Replace fan motor New tasks are more difficult to estimate. How long does it take to perform the following tasks? Design a small user interface with 3 data fields and 4 buttons? Write a 10 line C++ function? Purchase a socket wrench
  15. Work Breakdown Schedule (WBS) US Navy developed probability model to estimate the duration of a task: ta = most optimistic tm= most realistic tb=most pessimistic How long did it take your group to install Simulink and C++ and then perform the first analog loopback?
  16. Work Breakdown Schedule (WBS) The WBS alone is not very “user friendly” It would be difficult to manage a team working on a complex project based on this table alone.
  17. Gantt Chart Graphically represents the Work Breakdown Schedule and the Timeline Bars show length of task Connections show dependencies between tasks. Software: VISIO, MS Project, OpenGantt
  18. Example: Design a Robotic Arm for an Underwater Vehicle Start of activity Insight: Could delay the start of the 1st task or take longer without affecting the 4th task Tasks and milestones from WBS Length of activity Dependency: can’t start this task until three others finish Insight”: any change in 3rd task affects the 4th task Time (hours, days, years)
  19. Network Diagram Graphically represents the Work Breakdown Schedule A directed graph representation of activities and dependencies Task ID Duration Task Flow
  20. Network Diagram Critical path : The series of tasks that must be completed on schedule for a project to finish on schedule. Minimum time to complete the schedule Any delay in the critical path will delay the project. 14 days 15 days
  21. Network Diagram Example Critical path (d=day) 3.3 5d 3.1 3d 3.2 4d 3.4 6d 15d 2.3 1d 1.2.1 4d 16d 1.1 3d 8d 1.2.2 5d 19d 20d Insight: Need to carefully manage the red path because it will directly delay the project 2.1 6d 15d
  22. Example: Design a Robotic Arm for an Underwater Vehicle Red boxes and lines indicate the Critical Path to Identify Need The surveys and Market Analysis could take longer without extending the projects.
  23. Example: Design a Robotic Arm for an Underwater Vehicle “Slack” or “Float” is the maximum delay in activity before it affects the critical path.
  24. Summary Time Management Tools Work Breakdown Schedule Gantt Chart Network Diagram These are very similar and most software let you switch between views Project management is another important element of the design process.
  25. Project 6 WBS
  26. Project 6 WBS
  27. Project 6 WBS
  28. Project 6 Gantt Chart
  29. ECE495 Webpage All equipment manuals Project details Individual Assignments
  30. Project 1 – Laser Cut Part Laser Cutter Process Download Template Draw interesting pattern in 4” square Submit to Ran by Friday Meet TA in 403 Rhodes to use cutter
  31. Project 1 Configure hardware Test analog loopback Test other loopbacks Test incremental (Q4 only counts increments from the point it is switched “on”) quadrature encoder input Report due on next Friday
  32. HIL in the loop DC Motor Q4 Amplifier HIL Simulation Simulink Program Analog Out Encoder In Model of a DC Motor Control Algorithm Simulation Target Computer
  33. Real-time Control
  34. Hardware-in-the-Loop (HIL) System Can’t model all of the subsystems to build a complete simulation Convert D/A, Buffer Input Signals Computer simulation of a system containing connected subsystem models A complex physical subsystem that can’t be effectively modeled Convert A/D, Buffer Input Signals Simulated Physical HIL Simulation is a hybrid simulation that incorporates real components
  35. Hardware-in-the-Loop (HIL) System Example HIL Card Car State Signals (speed, driver command) Anti-Lock Brake Module A complex physical system that can’t be effectively modeled Braking Signals Computer simulation of a car including vehicle dynamics, tire models, driver models, etc. Need hardware and software To determine which ABS module would be best without actually building a car and testing each different module, simulate the car’s dynamics, test different controllers, and analyze simulated response of the car to real ABS braking signals.
  36. Open-loop Control System Open-loop control: Input designed to move the system to a desired state based on current conditions and model of the system. Example: Fill a water tank to a specified level based on flow-rate and time. If some of the water evaporates during filling then the level will be wrong If flow rate is not exactly as expected then the level will be wrong. Inaccurate time will lead to the wrong level No correction for errors Desired level Actual level
  37. Closed-Loop Control System Closed-loop control: Input changes as the error, difference between the desired output and the measured output, changes. Example – fill a tank to a specified level based on measuring the tank level and turning flow “on” or “off” to reach the desired level. Anything that prevents the tank from being filled to the desired level will be compensated. Error = Desired Level – Measured Desired level = Actual level + Desired level Output Input System _ Feedback Measurement
  38. Real-time (RT) System Computer-based execution of a program loop: Speed and predictability of execution times distinguish RT and non-RT systems τ, response time output input Instructions or algorithm System Real-time system: the correctness of the system behavior depends not only on the logical results of the computations, but also on the physical instant at which these results are produced. http://www.ece.cmu.edu/~koopman/des_s99/real_time/
  39. Closed-Loop Control as a RT, HIL Simulation HIL Card Motor Voltage Amplifier Control Algorithm (like you are learning in ECE409) Motor Position (encoder) Simulated Physical If you were using closed-loop control on the position of the motor, you would want the motor to stop at a certain shaft angle.
  40. Implementing Closed-Loop Control as a RT, HIL Simulation in ECE495 Simulation System Input Output + _ A/D,D/A, Buffer Target PC xPC OS from Mathworks Q4 HIL Board Feedback
  41. Implementing Closed-Loop Control as a RT, HIL Simulation in ECE495 Host MATLAB with Simulink C++ Programming Interface to Target PC User Interface Execute High-level Programs Target PC xPC OS from Mathworks Q4 HIL Board System Input Output + _ Feedback
  42. Implementing Closed-Loop Control as a RT, HIL Simulation in ECE495 MATLAB/SIMULINK have a toolbox called xPC Target
  43. Implementing Closed-Loop Control as a RT, HIL Simulation in ECE495 Workflow Target Computer Host Computer Boot CD installs a real-time kernel on target Design a Simulink model on the host PC Build the Simulink model Host and target coordinate for downloading programs Program is downloaded to target for real-time execution Some parameters can be changed on host. This change is communicated to target.
  44. Implementing Closed-Loop Control as a RT, HIL Simulation in ECE495 Quanser Q4 card in the Target PC Terminal board 4 x 14 bit Analog Inputs 4 x 12 bit D/A Outputs 4 Quadrature Encoder Inputs 16 Programmable Digital IO Channels 2 x 32 bit dedicated Counter/ Timers 2 External Interrupt sources 32 bit, 33MHz PCI Bus Interface
  45. Implementing Closed-Loop Control as a RT, HIL Simulation in ECE495 Q4 Terminal Board From Q4 board Analog Out (D/A) Channels Analog In (A/D) Channels Digital I/O Ports Encoder Channels Ext Interrupt and Signal Pins (PWM,Watchdog)
  46. MATLAB is a huge collection of C/C++ libraries for system prototyping and hardware interfacing. No need to reinvent the wheel! Would you rather spend weeks writing device drivers and libraries for the Q4 than test your system in a few hours? Prototyping ideas is easy and fast. Visualization of data is easy. Why MATLAB/SIMULINK over C++?
  47. Final Note - Response to comment EEs believe these are "computer" projects. This could not be much further from the truth; we use high-level tools like Simulink so that it does NOT become a computer project. There is a local culture that EEs don't program. In almost every industrial, military, financial, civil, medical, political … endeavor, the automated gathering, processing, and use of data have created significant breakthroughs. For example, the conservative field of power generation and distribution has become a "computer" problem in the sense that "A smart grid is an electrical grid that uses information and communications technology to gather and act on information, such as information about the behaviors of suppliers and consumers, in an automated fashion to improve the efficiency, reliability, economics, and sustainability of the production and distribution of electricity. [Wikipedia]“ My hope is that you appreciate that automation tools (like the image processing functions in MATLAB) can enable you to apply your expertise in power systems, communications, robotics, electronics, electromagnetics, etc. to create new solutions.
  48. Extra Slides
  49. Real-time Closed-loop Control Typical response times and the applications which need them … Seconds : Temperature, pressure, and flow control; aircraft control Milliseconds (control with < 1 kHz): Productions lines, motor control, robot control Microseconds : High speed test stands, fast digital controllers, control with 5 kHz – 500 kHz
  50. How is a Real-time System formulated? More generally, to Relate Theory to Application 4. Execute algorithms (assume a continuous system can be approximated by a “fast” digital system) Continuous Process 1. Want to measure or control this process Error if execution timing doesn’t match assumptions in model and algorithms - results are not predictable. Model of Continuous Process Design 3. Formulate interaction algorithms based on the models (For example ECE409, ECE 467) 2. Use engineering tools to model the process using continuous or fixed sample time discrete models (For example ECE409, ECE 467) Digital System
  51. Classification of Real-time Systems Real-time System System must remain synchronous with the state of the environment. Degraded operation in a rarely occurring peak load can be tolerated. Soft Hard Dynamic Static Timing parameters for the system are set during compilation. Timing parameters and the priority for tasks is modified at run-time. http://www.ece.cmu.edu/~koopman/des_s99/real_time/
  52. Classification of Real-time Systems Example: Produce a sinusoid output Hard Real-time System D/A Error in output waveform Soft Real-time System D/A Error in execution time
  53. Examples of Real-time Systems QUARC from Quanser Soft Real-time System using PC with Windows QUARC from Quanser Hard Real-time System using QNX
  54. Which system would you use in ECE 495? Systems Speed and predictability are both critical Non-Real-time System Real-time System Response to input has to come at a precise time Soft Hard System timing parameters are known before execution Dynamic Static In ECE 495, we use a Static, Hard Real-Time System
  55. A final thought … The Q4 cards being used for data acquisition and control are very useful… and very expensive. Read the manuals for voltage limitations and proper use.
  56. Math model of system MATLAB Simulink Model Visualization: Plots, Scopes, etc. The utility of MATLAB Simulink MATLAB/Simulink are used to prototype, simulate and visualize performance of systems.
  57. Using C/C++ Code in MATLAB MATLAB allows the use of user defined C/C++ executables (MEX files) to augment functionality. Computationally expensive tasks can be carried out using C and data can be sent to MATLAB. E.g. Camera interfacing for image processing. Specific manipulation of data can be programmed into a user defined function (called the S-function) in Simulink. S-functions are C-code snippets embedded in the Simulink environment.
More Related