Discover millions of ebooks, audiobooks, and so much more with a free trial

Only $11.99/month after trial. Cancel anytime.

Getting Started with Simulink
Getting Started with Simulink
Getting Started with Simulink
Ebook260 pages2 hours

Getting Started with Simulink

Rating: 4.5 out of 5 stars

4.5/5

()

Read preview

About this ebook

This practical and easy-to-understand learning tutorial is one big exciting exercise for students and engineers that are always short on their schedules and want to regain some lost time with the help of Simulink.This book is aimed at students and engineers who need a quick start with Simulink. Though it's not required in order to understand how Simulink works, knowledge of physics will help the reader to understand the exercises described.
LanguageEnglish
Release dateOct 25, 2013
ISBN9781782171393
Getting Started with Simulink

Related to Getting Started with Simulink

Related ebooks

Computers For You

View More

Related articles

Reviews for Getting Started with Simulink

Rating: 4.5 out of 5 stars
4.5/5

4 ratings0 reviews

What did you think?

Tap to rate

Review must be at least 10 words

    Book preview

    Getting Started with Simulink - Luca Zamboni

    Table of Contents

    Getting Started with Simulink

    Credits

    About the Author

    About the Reviewers

    www.PacktPub.com

    Support files, eBooks, discount offers and more

    Why Subscribe?

    Free Access for Packt account holders

    Instant Updates on New Packt Books

    Preface

    What this book covers

    What you need for this book

    Who this book is for

    Conventions

    Reader feedback

    Customer support

    Downloading the example code

    Errata

    Piracy

    Questions

    1. Simulink Facts

    What is Simulink?

    Programming

    Graphical

    Problems solved by Simulink

    Software specification

    Software development

    Software testing

    Simulink drawbacks

    Where Simulink excels

    Summary

    2. Creating a Model

    The MATLAB environment

    Command Window – how MATLAB talks to us

    The workspace – our treasury chest

    The working folder – where MATLAB saves our work

    The path – where MATLAB finds the tools

    The Simulink interface

    Our first model – a cruise controller

    Step 1 – create and save the model

    Step 2 – do comment the code!

    Step 3 – open Simulink Library Browser

    Step 4 – add blocks to the model from Library Browser

    Step 5 – rename the blocks

    Step 6 – implement the algorithm

    Step 7 – nest the logic into subsystems

    Step 8 – declare workspace variables

    Step 9 – do a first simulation

    Our second model – the Alfa Romeo 147 GTA

    Getting the speed – Newton's laws

    The aerodynamic drag equation

    The rolling resistance approximation

    The engine force – engine, wheels, and transmission

    Gearbox and differential

    Wheel to RPM

    Engine

    Torque to force

    The finishing touches

    Summary

    3. Simulating a Model

    The mandatory theory

    The simulation times – when the math is done

    The solvers – these great unknown

    Variable-step versus fixed-step solvers

    Continuous versus discrete

    Stiff versus nonstiff

    Build the complete closed-loop system

    Configuring the simulation

    Simulation times

    Solvers

    Run our first serious simulation

    Calibrate the PI controller

    Calibrating Kp

    Calibrating Ki

    Test with other sources

    Sine Wave

    Ramp

    Signal Builder

    Summary

    4. Using the Model

    The external software – a Qt5 application

    The Swiss army knife – S-functions

    The simulation phases

    Level 2 MATLAB S-function callbacks

    The mandatory callbacks

    The most useful optional callbacks

    The work vector – DWork

    MATLAB S-functions – file source and sink blocks

    The filesink_msfun block

    The MATLAB code

    The filesource_msfun block

    The MATLAB code

    A quick test

    Simulink and the real world

    Forcing Simulink to sync

    Preparing the cruise controller model

    Running the simulation on the target application

    Going further – C MEX S-functions

    Setting up the mex tool

    UNIX-like systems (GNU/Linux in particular)

    Microsoft Windows systems

    How C MEX S-functions work

    The required callbacks

    mdlInitializeSizes

    mdlInitializeSampleTimes

    mdlOutputs

    mdlTerminate

    The most useful optional callbacks

    mdlStart

    mdlInitializeConditions

    mdlUpdate

    The DWork vector

    The elementary work vectors

    The filesource S-function

    The beginning – headers and includes

    Block properties and memory usage – mdlInitializeSizes

    Timings – mdlInitializeSampleTimes

    Initial tasks – mdlStart

    Core logic – mdlOutputs

    Update memories – mdlUpdate

    Cleanup – mdlTerminate

    The happy ending

    Compiling the S-function

    Exercise – the filesink S-function

    A quick test

    Go for another ride

    Summary

    Index

    Getting Started with Simulink


    Getting Started with Simulink

    Copyright © 2013 Packt Publishing

    All rights reserved. No part of this book may be reproduced, stored in a retrieval system, or transmitted in any form or by any means, without the prior written permission of the publisher, except in the case of brief quotations embedded in critical articles or reviews.

    Every effort has been made in the preparation of this book to ensure the accuracy of the information presented. However, the information contained in this book is sold without warranty, either express or implied. Neither the author, nor Packt Publishing, and its dealers and distributors will be held liable for any damages caused or alleged to be caused directly or indirectly by this book.

    Packt Publishing has endeavored to provide trademark information about all of the companies and products mentioned in this book by the appropriate use of capitals. However, Packt Publishing cannot guarantee the accuracy of this information.

    First published: October 2013

    Production Reference: 1181013

    Published by Packt Publishing Ltd.

    Livery Place

    35 Livery Street

    Birmingham B3 2PB, UK.

    ISBN 978-1-78217-138-6

    www.packtpub.com

    Cover Image by Irene Sánchez Guillén (<irene.s.guillen@gmail.com>)

    Credits

    Author

    Luca Zamboni

    Reviewers

    Robin T. Bye

    Marco Caputano

    Mohamed H. Zaher

    Acquisition Editors

    Edward Gordon

    Kevin Colaco

    Commissioning Editor

    Poonam Jain

    Technical Editors

    Pramod Kumavat

    Krutika Parab

    Nadeem N. Bagban

    Copy Editors

    Dipti Kapadia

    Gladson Monteiro

    Sayanee Mukherjee

    Kirti Pai

    Project Coordinator

    Sherin Padayatty

    Proofreader

    Sandra Hopper

    Indexer

    Monica Ajmera Mehta

    Graphics

    Yuvraj Mannari

    Production Coordinator

    Pooja Chiplunkar

    Cover Work

    Pooja Chiplunkar

    About the Author

    Luca Zamboni, born in Ivrea, Italy, obtained his Bachelor's and Master's degrees in Electronics Engineering from the Polytechnic of Turin. He worked as a network systems administrator for some years before becoming a consultant for the automotive industry. Now he works in FIAT's research center.

    About the Reviewers

    Robin T. Bye, got his Bachelor's, Master's, and PhD degrees, all in Electrical Engineering, from the University of New South Wales, Sydney, Australia. He has been working at the Aalesund University College (AAUC) in Norway since 2008 and is now an associate professor in automation engineering. Apart from teaching automation and computer engineering classes for cybernetics, microcontrollers, and intelligent systems, he also supervises PhD and bachelor students on their theses' topics. His main research interests belong to areas such as computational modeling and simulation of human movements, bio-inspired robotics and automation, and dynamic resource allocation.

    Marco Caputano was born in Southern Italy in 1980. He has obtained an M.Sc. in Control Engineering from the University of Napoli Federico II in Italy. His final dissertation was on nuclear plasma modeling in the framework of nuclear fusion research. He broadened his academic education with a Masters in Mechatronic Systems Design obtained from the Engineering Polytechnic of Milano, Italy. His former work activities include modeling and numerical simulations for nuclear fusion research (CREATE consortium, Napoli, Italy), and in the field of aeronautical engineering (SAFRAN group, Paris, France). Currently, he works as a Mechatronics Engineer for ASML in the Netherlands.

    Mohamed H. Zaher is from Egypt; he is a Mechatronics and Controls Engineer. He received both his Bachelor's and Master's degrees in Mechanical Engineering with System Dynamics and Mechatronics Focus from Cairo University in Egypt and his Ph.D from University of Illinois at Chicago. Mohamed taught mechanical engineering curriculum at both universities including the use of software tools such as MATLAB and Simulink. He also worked on contract at Caterpillar, Case New Holland, and Servo Tech Inc., where he worked with several professional tools on several developmental projects.

    www.PacktPub.com

    Support files, eBooks, discount offers and more

    You might want to visit www.PacktPub.com for support files and downloads related to your book.

    Did you know that Packt offers eBook versions of every book published, with PDF and ePub files available? You can upgrade to the eBook version at www.PacktPub.com and as a print book customer, you are entitled to a discount on the eBook copy. Get in touch with us at for more details.

    At www.PacktPub.com, you can also read a collection of free technical articles, sign up for a range of free newsletters and receive exclusive discounts and offers on Packt books and eBooks.

    http://PacktLib.PacktPub.com

    Do you need instant solutions to your IT questions? PacktLib is Packt's online digital book library. Here, you can access, read, and search across Packt's entire library of books. 

    Why Subscribe?

    Fully searchable across every book published by Packt

    Copy and paste, print, and bookmark content

    On demand and accessible via web browser

    Free Access for Packt account holders

    If you have an account with Packt at www.PacktPub.com, you can use this to access PacktLib today and view nine entirely free books. Simply use your login credentials for immediate access.

    Instant Updates on New Packt Books

    Get notified! Find out when new books are published by following @PacktEnterprise on Twitter, or the Packt Enterprise Facebook page.

    Preface

    This book will give you a complete understanding of the Simulink software. You will learn by example, going through the three main phases of Simulink development—modeling, simulating, and interfacing with the external world while developing a cruise controller for a real car.

    While reading this book, you'll be given a clear, no-frills explanation of the main components of Simulink and how to use them in order to achieve the desired result. After having read this book, you will be able to develop, test, and deploy your models without any difficulty.

    What

    Enjoying the preview?
    Page 1 of 1