Introduction to SM (Special Measure in Matlab) Outline PART I: Command line based package Basic idea and features Motivation and advantages Comparison.

Slides:



Advertisements
Similar presentations
Device Drivers. Linux Device Drivers Linux supports three types of hardware device: character, block and network –character devices: R/W without buffering.
Advertisements

Matlab Intro Simple introduction to some basic Matlab syntax. Declaration of a variable [ ] Matrices or vectors Some special (useful) syntax. Control statements.
Chapter 2: Modularization
SYSTEM PROGRAMMING & SYSTEM ADMINISTRATION
Chapter 7 User-Defined Methods. Chapter Objectives  Understand how methods are used in Java programming  Learn about standard (predefined) methods and.
Using an FPGA to Control the Protection of National Security and Sailor Lives at Sea Brenda G. Martinez, Undergraduate Student K.L. Butler-Purry, Ph.D.,
Yevgeny Petrilin Shay Dan Shadi Ibrahim. GUI : Graphical User Interface DAQ :Data Acquisition Data Acquisition device  a self-powered system that communicated.
SUSE Linux Enterprise Server Administration (Course 3037) Chapter 1 Introduction to Managing the SUSE Linux Enterprise Server.
Scott Pinkerton Sample GUI/Application Portfolio 1.
26 February 2009Dietrich Beck FPGA Solutions... FPGA and LabVIEW Pattern Generator Multi-Channel-Scaler.
Linux Operations and Administration
Ch 26 & 27 User Interfaces.
DELTA TAU Data Systems, Inc. 1 UMAC TurboTurbo PMAC PCIGeo Drive Single Source Machine Control motion logic data Power PMAC Project Management November.
Diagnostic and Hardware Index Page Application Survey Brian Hendricks.
Department of Mechanical Engineering, LSUSession VII MATLAB Tutorials Session VIII Graphical User Interface using MATLAB Rajeev Madazhy
Backup & Recovery Backup and Recovery Strategies on Windows Server 2003.
1 Research Groups : KEEL: A Software Tool to Assess Evolutionary Algorithms for Data Mining Problems SCI 2 SMetrology and Models Intelligent.
1 CSC 221: Introduction to Programming Fall 2012 Functions & Modules  standard modules: math, random  Python documentation, help  user-defined functions,
All rights reserved, property and © CAD Computer GmbH & Co.KG 2009 Cover page.
Department of Electrical and Computer Engineering The Tektronix MSO4000 series of oscilloscopes are mixed-signal oscilloscopes that contain both digital.
GUI development with Matlab: GUI Front Panel Components 1 GUI front panel components In this section, we will look at -GUI front panel components -Programming.
All rights reserved, property and © CAD Computer GmbH & Co.KG 2009 Cover page.
Tot 15 LTPDA Graphic User Interface summary and status N. Tateo 26/06/2007.
Just as there are many human languages, there are many computer programming languages that can be used to develop software. Some are named after people,
Introduction to Software Testing Chapter 8.1 Building Testing Tools –Instrumentation Paul Ammann & Jeff Offutt
The CSS Scan System Kay-Uwe Kasemir SNS/ORNL Dec
Interfaces to External EDA Tools Debussy Denali SWIFT™ Course 12.
Oct 15, 2007Sprenkle - CS1111 Objectives Creating your own functions.
What does C store? >>A = [1 2 3] >>B = [1 1] >>[C,D]=meshgrid(A,B) c) a) d) b)
Creating Graphical User Interfaces (GUI’s) with MATLAB By Jeffrey A. Webb OSU Gateway Coalition Member.
Components Components are specialized self contained Software entities that can be replicated, Customized and inserted into applications. Components come.
Integrating EPICS and LabVIEW on Windows using DCOM Freddie Akeroyd ISIS Computing Group.
Covenant College November 27, Laura Broussard, Ph.D. Professor COS 131: Computing for Engineers Chapter 5: Functions.
Support Across The Board ™ Visual DSP Kernel (VDK)
EGR 115 Introduction to Computing for Engineers User-Defined Functions1 – Part 1 Wednesday 22 Oct 2014 EGR 115 Introduction to Computing for Engineers.
Lecture 26: Reusable Methods: Enviable Sloth. Creating Function M-files User defined functions are stored as M- files To use them, they must be in the.
Introduction to Perl. What is Perl Perl is an interpreted language. This means you run it through an interpreter, not a compiler. Similar to shell script.
August 2003 At A Glance The IRC is a platform independent, extensible, and adaptive framework that provides robust, interactive, and distributed control.
Differences Training BAAN IVc-BaanERP 5.0c: Application Administration, Customization and Exchange BaanERP 5.0c Tools / Exchange.
Introduction to Object-Oriented Programming Lesson 2.
Functions Math library functions Function definition Function invocation Argument passing Scope of an variable Programming 1 DCT 1033.
Digital Control CSE 421.
Postgraduate Computing Lectures PAW 1 PAW: Physicist Analysis Workstation What is PAW? –A tool to display and manipulate data. Learning PAW –See ref. in.
Agenda  Take up homework  Loops - Continued –For loops Structure / Example involving a for loop  Storing Characters in variables  Introduction to Functions.
Introduction to Matlab Module #10 Page 1 Introduction to Matlab Module #10 – Creating Graphical User Interfaces Topics 1.Overview of GUI Development using.
Lesson 1 1 LESSON 1 l Background information l Introduction to Java Introduction and a Taste of Java.
Correlator GUI Sonja Vrcic Socorro, April 3, 2006.
Linux+ Guide to Linux Certification, Second Edition Chapter 4 Exploring Linux Filesystems.
SCRIPTS AND FUNCTIONS DAVID COOPER SUMMER Extensions MATLAB has two main extension types.m for functions and scripts and.mat for variable save files.
EPICS and LabVIEW Tony Vento, National Instruments
MATLAB and SimulinkLecture 61 To days Outline Graphical User Interface (GUI) Exercise on this days topics.
Oracle9i Developer: PL/SQL Programming Chapter 11 Performance Tuning.
Psychophysics Software Suite Yearly project for Dr. Karen Banai.
CIS 595 MATLAB First Impressions. MATLAB This introduction will give Some basic ideas Main advantages and drawbacks compared to other languages.
OATS - An Example of LCOD Organic Aerosol Thermal desorption chemical ionization mass Spectrometer David Thomson NOAA Aeronomy Lab October 19, 2006 ALARM.
1 Control & Readout Emulator for the Preshower Electronics (CREPE) P.Vichoudis, CERN.
Software tools for digital LLRF system integration at CERN 04/11/2015 LLRF15, Software tools2 Andy Butterworth Tom Levens, Andrey Pashnin, Anthony Rey.
Poster Design & Printing by Genigraphics ® Matlab-based Nanoscale Device Characterization Paul R. Haugen and Hassan Raza Nanoscale Devices.
Software Development Languages and Environments. Computer Languages Just as there are many human languages, there are many computer programming languages.
Digital Control CSE 421.
Getting Started with R.
Matlab Training Session 4: Control, Flow and Functions
ALICE Alpide Test Software.
ME3200 ELECTRONIC INSTRUMENTATION AND MEASUREMENT (INDUCTION PROGRAM) [Slide 3] Function/Arbitrary Waveform Generator BY DREAMCATCHER
Cover page.
הודעות ריענון מהיר והרחבות Charts & Graphs גרף XY בניית מחולל אותות
Simulation And Modeling
Introduction To MATLAB
11.1 The Concept of Abstraction
Presentation transcript:

Introduction to SM (Special Measure in Matlab) Outline PART I: Command line based package Basic idea and features Motivation and advantages Comparison of Matlab and Labview implementations. Basic concepts PART II: GUI More information: ygroup\MATLAB\sm\README.TXT, help of smrun.m and other commands.

Basic idea and features Based on "abstraction" of instruments: Each physical variable can be controlled and read out in the same way. Instrument specific information is (mostly) confined to drivers. Support of buffered readout, e. g. can read a whole scanline at once. => fast - sample rate hardware limited. => easier to accommodate hardware controlled measurements. Command line based low level interface Optional GUI builds on top.

Advantages of command based approach Can configure complicated measurements (e.g. ramps, modules) with user defined Matlab functions or scripts. Can run a series of measurements autonomously. Rapid code development for specific tasks (don't need to program an edit for every parameter). Full power of Matlab command line available: e.g. send arbitrary GPIB commands to instruments without further programming. No GUI related bugs. Provides basis for GUI => can combine best of both worlds.

Main routines: smrun.m lines smset.m lines smget.m Rarely used low level: smopen.m smclose.m smprintf.m smquery.m smscanf.m smflush.m Display tools smprintchannels.m smprintinst.m smprintrange.m smprintscan.m Setup tools smaddchannel.m smscanpar.m smdiagpar.m smdispchan.m sminitdisp.m smloadinst.m smsaveinst.m smsavechans.m smloadchans.m logsetfile.m Internal smchaninst.m smchanlookup.m sminstlookup.m Incomplete listing of the most important commands Helper functions sminc.m smrestore.m smgetscanconst.m smsetscanconstant.m

Most important elements Main measurement command: smrun(scan, ’data_324’) Name of data file. Actual filename will be ‘sm_data_324.mat’. This file will contain the data, a copy of scan, and further configuration data. scan : Struct containinfg information about scan (#loops, channels, scan range etc.) scan = data: [1x1 struct] loops: [1x2 struct] configfn: [1x1 struct] disp: [1x2 struct] saveloop: 2 trafofn: {} Optional user data Information about each loop Optional configuration function (e.g. program inst’s) What data to display and how When to save data Optional global transformation (e.g. for rotated scans) Defining a measurement:

scan.loops(1)= npoints: 50 rng: [ ] setchan: {'GateR'} getchan: [] trafofn: [] ramptime: procfn: [] trigfn: [1x1 struct] scan.loops(2) = npoints: 40 rng: [ ] setchan: {'GateL' 'GateQPC'} getchan: {'Scope1' 'Scope2'} trafofn: {[] [1x1 function_handle]} ramptime: [] procfn: [1x2 struct] trigfn: [] scan.loops(3) = … Fastest loop # of samples Range of dummy variable Channel(s) to be set Time per point. use instrument generated ramp. User function to trigger ramp (better synchronization) Second loop Channel(s) to read Transformation for set channels. Data preprocessing functions

>> smprintscan(scan) Global transformations: Loop x = to , 50 points Channels set : GateR Ramptimes : -4.00e-002 s/point Transform's : Channels read: Loop x = to , 40 points Channels set : GateL GateQPC Ramptimes : NaN s/point NaN s/point Transform's : Channels read: Scope1 Scope2

Channel value and data windows

Instrument and channel configuration global smdata; smdata = inst: [1x13 struct] channels: [1x31 struct] chandisph: chanvals: [1x31 double] configch: [ ] configfn: {} smdata.inst(7) = data: [1x1 struct] datadim: [16x1 double] type: [16x1 double] device: 'SR830' name: [] channels: [16x5 char] Instruments Channels Last known channel values. Channels to be saved in data file. Functions to be called to read out configuration. Each element represents one physical instrument (e.g. SR830, Yoko, …) User data, typically the interface object. Dimension of data block returned for each channel (# samples per readout) Driver function Type of each channel (1: supports ramps) Device identifier Device name (needed if identifier not unique) List with names of channels provided.

smdata.channels(1) = instchan: [2 2] rangeramp: [ ] name: 'GateQPC' Each channel represents one function/variable of some instrument. Index of associated inst and its channel Limits, max ramp rate, conversion factor Channel name. Display instruments: >> smprintinst(6:13) Inst Device Dev. Name TDS SR830 8 HP34401A 9 AMI AWG HP1000A 12 Aux 13Feedback Channel configuration

>> smprintchannels CH Name Device Dev. Name Dev. Ch GateQPC DecaDAC RAMP0 2 GateR DecaDAC RAMP1 3 GateL DecaDAC RAMP2 4 Nose DecaDAC RAMP4 5 Tail DecaDAC RAMP5 6 pL DecaDAC RAMP6 7 pR DecaDAC RAMP7 8 GateQPC2 DecaDAC RAMP8 9 Vbias DecaDAC RAMP9 10 B AMI420 FIELD 11 Lockin SR830 X >> smprintrange(7:11) CH Name Min Max Rate (1/s) Factor pR GateQPC Vbias e B Lockin -Inf Inf Inf 1

GUI Provides an environment similar to the LabView Special Measure Front Panel

GUI Functions Setting up simple scans – Ramps, linear sweeps, etc. – Only supports single scans for now Editing previously created scans – Change ranges, channels, etc. Log data to Powerpoint

Rxx_107.mat LockinFreq=11 R_{ } I = 4 nA No preamp 1/27/ :55 PM