Index

A note on the digital index

A link in an index entry is displayed as the section title in which that entry appears. Because some sections have multiple index markers, it is not unusual for an entry to have several links to the same section. Clicking on any link will take you directly to the place in the text in which the marker appears.

Symbols

16bpp image, PGM file structure
8bpp PGM image, PGM file structure
>> (chevron operator), Redirecting print
>>> (Python command-line prompt), The Python Command Line
{ } (curly brackets), A Simple C Program
# (hash character)
preprocessor directives and, Preprocessor Directives
Python, Comments
+ (plus) operator (Python), Strings
?: (ternary conditional), #define

A

AC (alternating current), Basic Circuit Theory, AC Circuits
AC circuits, AC CircuitsOther Waveforms: Square, Ramp, Triangle, Pulse
AC power controller simulator, AC Power Controller SimulatorInteracting with the SPC simulator
(see also SPC)
simulator block diagram, The SPC serial interface and virtual serial ports
activity diagrams, Flowcharts
ADCs (analog-to-digital converters), Data Acquisition, Analog I/O, Acquiring analog data
aliased cyclic function readout, Cyclic functions
ALL command (SPC), Command descriptions
Allen wrenches, Nice-to-Have Tools
alternating current (AC), Basic Circuit Theory, AC Circuits
amperes (A or amp), Basic Circuit Theory
amplitude, Sine Waves
AN/ARC-220 mobile radio, Circular Connectors
analog data, Data Acquisition, Data Acquisition
analog data sampling, Acquiring analog data
analog I/O, Analog I/O
analog-to-digital converters (ADCs) (see ADCs)
AND gate logic, Circuit Schematics
AND operator (C language), Bitwise operators
ANSI bar graph example output, Basic ANSI control sequences
ANSI escape sequence standards, ANSI Display Control Techniques
ANSI X3.64, ANSI Display Control Techniques
ansicon package, ANSI and Windows
ANSITerm class, The SimpleANSI library
arithmetic operators (C language), Arithmetic operators
arithmetic operators (Python), Arithmetic operators
arrays (C language), Arrays and Pointers
ASCII character encoding standard, The Original ASCII Character Set
ASCII data files, ASCII Data FilesModule FileUtils.py—ASCII Data File I/O Utilities
configuration files, Configuration DataUsing configuration files
flat files, Reading and Writing ASCII Flat Files
I/O utilities for, Module FileUtils.py—ASCII Data File I/O UtilitiesModule FileUtils.py—ASCII Data File I/O Utilities
Microsoft Excel and, Records
Python handling of ASCII characters, Python’s ASCII Character-Handling Methods
reading, Reading ASCII data files
string conversion with AutoConvert.py, Module AutoConvert.py—Automatic String Conversion
writing, Writing ASCII data files
ASCIIData formats, Module FileUtils.py—ASCII Data File I/O Utilities
ASCIIDataWrite and ASCIIDataRead classes (Python), Module FileUtils.py—ASCII Data File I/O UtilitiesModule FileUtils.py—ASCII Data File I/O Utilities
assert statement (Python), assert
assertEqual( ) and assertNotEqual( ) methods, assert versus assertEqual() and friends
assignment operators (C language), Assignment and augmented assignment operators
assignment operators (Python), Assignment operators
assignment statement (Python), Assignment
asynchronous serial data communication, Serial I/O
AT bus, Interface Formats and Protocols
atom organization, Electrical Charge
attributes, The Python Programming Language
augmented assignment operators (C language), Assignment and augmented assignment operators
augmented assignment statements (Python), Augmented assignment
AutoConvert.py module, Module AutoConvert.py—Automatic String Conversion
automated instrumentation, Preface

B

backshell assemblies, DB-Type Connectors
bang-bang controllers, Nonlinear Control: Bang-Bang ControllersNonlinear Control: Bang-Bang Controllers
Python, implementation in, Bang-Bang Controller
barrier terminal block, Terminal Blocks
basic ANSI control sequences, Basic ANSI control sequences
basic USB connector types, USB Connectors
basic use case elements, Use Cases
Batchelder, Ned, Code coverage
baud, RS-232 data formats
bench model digital multimeters, Digital Multimeter
bgansi.py, Basic ANSI control sequences
binary data files, Binary Data FilesFlat Binary Data Files
flat files, Flat Binary Data Files
image data (see image data)
Python, handling with, Handling Binary Data in Python
ctypes module, Using the ctypes module to handle structured binary dataUsing the ctypes module to handle structured binary data
struct module, Using struct to handle structured binary dataUsing struct to handle structured binary data
binary shift operators (Python), Bitwise operators
binding, GUI functionality
bitwise operators (C language), Bitwise operators
bitwise operators (Python), Bitwise operators
block diagrams, Block diagrams, Control System Block Diagrams
blocking function calls, Blocking Versus Nonblocking Calls
Boa Constructor wxPython GUI builder, wxPython
Boa’s widget layout window, Building a simple wxPython GUI
break statement (C language), break statement
break statement (Python), break
“bubble” symbols, Circuit Schematics
bug tracking, Defect Tracking
built-in scope (Python), Built-in scope
bus-based hardware I/O devices and Linux, Using Bus-Based Hardware I/O Devices with Linux
bus-based interfaces, PC Bus Interface Hardware
advantages and disadvantages, Pros and Cons of Bus-Based Interfaces
DAQ cards, Data Acquisition Cards
GPIB cards, GPIB Interface Cards
PCI bus, PC Bus Interface Hardware
bytecode, The Python Programming Language

C

C programming language, The C Programming Language
ANSI C standard library, The Standard Library
building C programs, Building C Programsmake
code blocks, A Simple C Program
development tools, C Development Tools
installing, Installing C
libraries, A Simple C Program
online resources, Suggested Reading
operators, OperatorsOperator precedence
Python extensions (see Python extensions)
return types of functions, A Simple C Program
simple program example, A Simple C Program
software development using, Developing Software in CC Language Wrap-Up
standard data types, Standard Data Types
user-defined types, User-Defined Types
cable, Supplies
callable methods, Extension Source Module Organization
callbacks, GUI functionality
capacitors, Capacitors
case conversion of ASCII characters, Python’s ASCII Character-Handling Methods
cdll interface class, Loading External DLLs with ctypes
checklists, Code Reviews
chipsets, Interface Formats and Protocols
CHK command (SPC), Command descriptions
chr( ) function (Python), Python’s ASCII Character-Handling Methods
circuit schematics, Circuit Schematics
circuit theory, Basic Circuit Theory
circular connectors, Circular Connectors
class statement (Python), Functions, classes, and methods
classes, The Python Programming Language
ClearPortBit( ) function, Calling the Extension
closed-loop control systems, Closed-Loop Control, Linear Control Systems
closed-loop water tank level control, Controlling position—Basic feedback
cmd.exe, The Console
code coverage analysis, Code coverage
code examples, Using Code Examples
coding, ImplementationDefect Tracking
code reviews, Code Reviews
checklists, Code ReviewsCode Reviews
coding styles, Coding Styles
guidelines for Python, Coding style
connecting to hardware, Connecting to the Hardware
defect tracking, Defect Tracking
documentation, Documenting Your Software
organizing of code, Organizing Your Code
unit testing, Unit TestingCode coverage
user documentation, User Documentation
version control, Version Control
com0com package, Windows Virtual Serial Ports, The SPC serial interface and virtual serial ports, ANSI and Windows
com2tcp, Windows Virtual Serial Ports
Comedi project and package, The Comedi project
Python, using with, Using comedi with Python
supported hardware, Comedi hardware support
command line (Python), The Python Command Line
command-line options, Command-Line Options and Environment
comments (C language), A Simple C Program
comments (Python), Comments, Use docstrings and descriptive comments
common electronic schematic symbols, Circuit Schematics
common method flags (Python extensions), Method Flags
comparison operators (C language), Comparison operators
comparison operators (Python), Comparison operators
compiled programs, Developing Software in C
complex data type, Data Types in Python
compound statements (Python), Compound statements
config files, Configuration Data
connector backshells, DB-Type Connectors
connectors, ConnectorsWiring caveats
connector failures, Connector Failures
crimp-type connectors, Crimping
crimp-type spade lugs, Terminal Blocks
proper wiring of, Wiring caveats
console interface, The ConsoleUsing Python’s msvcrt library module
console1.py, Example console display
console6.py, Using SimpleANSI
constructor methods (Python), Numeric data as objects
contact bounce or contact chatter, Discrete Digital I/O
containers, GUI, Using a GUI with Python
continue statement (C language), continue statement
continue statement (Python), continue
contract-style requirements, Requirement Types
control error, Closed-Loop Control
control output, Control Output
control systems, Basic Control Systems Theory
bang-bang controllers, Nonlinear Control: Bang-Bang ControllersNonlinear Control: Bang-Bang Controllers
closed-loop controls, Closed-Loop ControlControlling velocity—Feed-forward and PWM controllers
control system types, Control System TypesHybrid Control Systems
examples, Applications OverviewProcess Control
hybrid control systems, Hybrid Control Systems
open-loop controls, Open-Loop Control
proportional, PI, and PID controllers, Proportional, PI, and PID Controls
Python, implementation in, Implementing Control Systems in PythonSimple PID Controller
bang-bang controller, Bang-Bang Controller
linear proportional controller, Linear Proportional Controller
simple PID controller, Simple PID ControllerSimple PID Controller
sequential control systems, Sequential Control SystemsSequential Control Systems
control systems theory, Basic Control Systems Theory
block diagrams, Control System Block Diagrams
control signal, Control System Block Diagrams
control system diagram symbols, Terminology and Symbols
control system notation, Linear Control Systems
controlled output, Control System Block Diagrams
controlled variable, Control System Block Diagrams
discrete-time control systems, Discrete-time control systems
feedback, Feedback
input-output relationships, Input-output relationships
linear control systems, Linear Control Systems
nonlinear control systems, Nonlinear Control Systems
sequential control systems, Sequential Control Systems
software flow, Discrete-time control systems
software timing, Discrete-time control systems
terminology, Terminology and Symbols
time and control system behavior, Time and control systems behavior
time and frequency, Time and Frequency
transfer functions, Transfer Functions
controls (GUIs), Using a GUI with Python
counters, digital, Counters and Timers
coverage package, Code coverage
CPS (characters per second), RS-232 data formats
crossover cable, DTE and DCE
CSV (comma-separated values) files, CSV files
csv library (Python), CSV files
ctypes library (Python), Python Extensions, Handling Binary Data in Python
basic data types, Basic Data Types in ctypes
ctypes_struct.py, Using the ctypes module to handle structured binary data
foreign function library, Python’s ctypes Foreign Function LibraryUsing ctypes
loading external DLLs, Loading External DLLs with ctypes
using, Using ctypes
ctypes, C, and Python types, comparison of, Basic Data Types in ctypes
curly brackets ( { } ), A Simple C Program
current, Basic Circuit Theory
current flow, Electric Current
current sink and current source, Sinking and Sourcing
curses library (Python on Unix/Linux), Python and cursesTo Curse or Not to Curse, Is That the Question?
advantages and disadvantages, To Curse or Not to Curse, Is That the Question?
curses history, curses background
selected functions and windows methods, A simple data display using curses
simple data display using, A simple data display using cursesA simple data display using curses
subwindows, adding, Adding a subwindow
curses window hierarchy, Python’s curses library module
curses1.py, A simple data display using curses
CVS, Version Control
cyclic functions, Cyclic functions

D

D1000 series data transmitters, Serial Interface Discrete and Analog Data I/O Devices
D1000 commands, Serial Interface Discrete and Analog Data I/O Devices
D1121 thermal chamber application, Serial Interface Discrete and Analog Data I/O Devices
DACs (digital-to-analog converters), Data Acquisition, Analog I/O, Generating analog data
DAQ (Data Acquisition) cards, Data Acquisition Cards
(see also bus-based interfaces)
data acquisition, Data Acquisition
data acquisition and control systems, Who Is This Book For?
data displayed as an image, Image Data
data files
ASCII data files (see ASCII data files)
data I/O, Basic Data I/OWriting data
handling data I/O errors, Handling Data I/O ErrorsError/warning message single-shot logic
handling inconsistent data, Handling Inconsistent DataDealing with noise: Averaging
noise and averaging, Dealing with noise: Averaging
waiting for stability, Waiting for stability
reading data, Reading dataReading data
writing data, Writing dataWriting data
data I/O interface software, Data I/O Interface Software
data I/O methods, Data I/O MethodsAcquiring data using a thread
acquiring data using threads, Acquiring data using a thread
on-demand data I/O, On-demand data I/O
polled data I/O, Polled data I/O
data sink and data source, DTE and DCE
data types (C language), Standard Data Types
data types (Python), Data Types in Python
DB-9 null-modem adapter, DTE and DCE
DB-9 pin and socket numbering, DB-Type Connectors
DB-type connectors, DB-Type Connectors
DC (direct current), Basic Circuit Theory
DC blocking, Capacitors
DC circuits, DC Circuit CharacteristicsMore About Resistors
DC motor control, PWM
DC offset or bias, Capacitors
DCE (Data Communications Equipment), DTE and DCE
debuggers (C language), C Development Tools
debuggers (Python), Debuggers
DEC VT100 VDT control sequences set, ANSI Display Control Techniques
def statement (Python), Functions, classes, and methods
defect tracking, Defect Tracking
defects, testing for (Python), Latent defects
deferred imports (Python), Deferred imports
#define macro directive, #define
delimiters, sequence objects (Python), Sequence objects
delta, Waiting for stability
derived requirements, Requirement Types
destructor methods (Python), Numeric data as objects
development environments (Python), Python Development ToolsDebuggers
DevSim
cyclic and file input threads, DevSim internals
cyclic functions, Cyclic functions
DevSim API, DevSim internalsDevSim internals
DevSim internal logic, DevSim internals
DevSim methods, DevSim methodsDevSim methods
examples, Some simple examplesSome simple examples
noise, Noise
parameter accessor methods, DevSim methods
simulator control and I
O methods, DevSim methods
usage example, Some simple examples
user-defined functions, User-defined functions
dictionaries (Python), Mapped objects—dictionaries
risks of using as function parameters, Dictionaries as function parameters
dictionary methods (Python), Mapped objects—dictionaries
digital data, Data Acquisition
digital logic symbols, Circuit Schematics
digital multimeters (DMMs), The Essentials, Digital MultimeterDMM usage tips
usage tips, DMM usage tips
digital oscilloscope display, The Oscilloscope
digital-to-analog converters (DACs) (see DACs)
digitizers, SCPI—Standard Commands for Programmable Instruments
direct current (DC), Basic Circuit Theory
discrete digital I/O, Discrete Digital I/O
discrete-time closed-loop control system, Discrete-time control systems
discrete-time control systems, Discrete-time control systems
DLL wrapper extension and support module, Calling the Extension
DLLs (dynamically linked libraries), Python Extensions
DMM data capture, Simple DMM Data Capture
DMM function and DMM range codes, Simple DMM Data Capture
do-while loop (C language), do-while loop
docstrings (Python), Docstrings, Use docstrings and descriptive comments, Documenting Your Software
drivers, Interface Formats and Protocols
droop, The proportional control term
DTE (Data Terminal Equipment), DTE and DCE
DTE/DCE MODEM communications, DTE and DCE
dual-trace oscilloscopes, The Oscilloscope
duty cycles, Other Waveforms: Square, Ramp, Triangle, Pulse

E

ECB command (SPC), Command descriptions
ECMA-48, ANSI Display Control Techniques
EIA-232 interface (see RS-232 interface)
EIA-485 interface, RS-485/EIA-485
electric charge, Electric Current
electromagnetic tachometer, Inductors
Electronic Industries Alliance (EIA), Serial Interfaces
electronic tool sources, Where to purchase tools
electronics, Essential ElectronicsSummary
AC circuits, AC CircuitsOther Waveforms: Square, Ramp, Triangle, Pulse
circuit schematics, Circuit Schematics
circuit theory, Basic Circuit Theory
DC circuit characteristics, DC Circuit CharacteristicsMore About Resistors
electric current, Electric Current
electrical charge, Electrical Charge
interfaces, InterfacesParallel I/O
electronics supplies, Supplies
electronics test instrumentation, Electronics Test Instrumentation
electrostatic cathode ray tubes (CRTs), The Oscilloscope
else block (Python), The while statement
endwin( ) function, Python’s curses library module
Epydoc tool, Documenting Your Software
output example, Documenting Your Software
error handling, testing, Testing Error Handling
event handlers and event sources, GUI functionality
event-driven programming, GUI functionality
exception trapping and handling (Python), The try statement
execution environment, DevSim internals
exiting the Python command line, The Python Command Line
exponent operator (Python), Arithmetic operators
expressions (C language), Expressions
expressions (Python), Expressions
extended C data types, Standard Data Types
extensions, Python Extensions

F

failure analysis, Identifying potential failures
failure responses, Failure responses
farads (F), Capacitors
faults, Simulating Errors and Faults
feedback, Closed-Loop Control, Basic Control Systems Theory, Feedback
feedback control systems, Closed-Loop ControlControlling velocity—Feed-forward and PWM controllers
feedback controllers, Linear Control Systems
FeedbackCommand class commands, Using the Python interface with the getFeedback() method
FETCh command, SCPI—Standard Commands for Programmable Instruments
fields, Reading and Writing ASCII Flat Files
file I/O modes, Files
file methods, Files
FileUtils module, Package and Module Organization
FileUtils.py module, Module FileUtils.py—ASCII Data File I/O UtilitiesModule FileUtils.py—ASCII Data File I/O Utilities
find( ) method (Python), Strings
flat binary files, Flat Binary Data Files
flat files, Reading and Writing ASCII Flat Files
floor division operator (Python), Arithmetic operators
flowcharts, Flowcharts
for loop (C language), for loop
for statement (Python), The for statement
formal use case, Use Cases
frames, RS-232 data formats
frequency, Basic Circuit Theory, Sine Waves
frequency domain, Time and frequency domains
frequency spectrum analyzer (FSA), Time and frequency domains
Frolov, Vyacheslav, Windows Virtual Serial Ports
FSA (frequency spectrum analyzer), Time and frequency domains
full-duplex, Serial I/O, Serial Interfaces
function blocking, Blocking Versus Nonblocking Calls
function return values and tuples (Python), Function return values
functional requirements, Requirement Types
functional testing, Testing to the Requirements
pass versus fail results over time, Tracking Progress
regression testing, Regression Testing
test cases, Test Cases
testing error handling, Testing Error Handling
tracking progress, Tracking Progress
functions (C language), Functions
functions, defining (Python), Functions, classes, and methods

G

garbage collection (Python), Numeric data as objects, Strings
gating conditions, Sequential Control Systems
gcc compiler, Installing C
generic digital oscilloscope, The Oscilloscope
generic test case template, Test Cases
generic wrappers (Python extensions), Generic Wrapper Example
geometry management, Geometry management
geometry of images, Image Data
get( ) method (Python), Mapped objects—dictionaries
GetData( ) function, Acquiring data using a thread
getFeedback( ) method, Using the Python interface with the getFeedback() method
global module variables, Extension Source Module Organization
global scope (Python), Global scope
global statement (Python), global
global variables (Python), Module global variables
gnuplot, gnuplotPlotting Simulator Data with gnuplot
gnuplot.ini file, Method 1: Using Python’s popen() method
Microsoft Windows, installation on, Installing gnuplot on Windows
simulator data, plotting with, Plotting Simulator Data with gnuplotPlotting Simulator Data with gnuplot
using, Using gnuplot
via gnuplot.py package, Method 2: gnuplot.py
via popen( ) method (Python), Method 1: Using Python’s popen() method
goto statement (C language), goto statement
GPIB (General Purpose Interface Bus), Electronics Test Instrumentation, GPIB/IEEE-488
connections, GPIB Connections
PCI GPIB cards, GPIB Interface Cards
signals, GPIB/IEEE-488 Signals
via USB, GPIB via USB
gptest.py, Method 1: Using Python’s popen() method
grid method, Geometry management
GUI object inheritance, GUI objects
GUIs (Graphical User Interfaces), Graphical User InterfacesThe GUI main loop
display structure, Basic GUI display structure
functionality, GUI functionality
history and concepts, Some GUI Background and Concepts
main loop, The GUI main loop
object-oriented character, GUI objects
Python-based GUIs, Using a GUI with PythonThe GUI main loop
TkInter implementation, TkInterTools and resources for TkInter
geometry management, Geometry management
planning, Planning your GUI
TkInter example, Simple TkInter exampleSimple TkInter example
tools and resources, Tools and resources for TkInter
wxPython implementation, wxPythonTools and resources for wxPython
building a GUI, Building a simple wxPython GUI
designing a GUI, Designing a wxPython GUI
tools and resources, Tools and resources for wxPython

H

half-duplex, Serial I/O, Serial Interfaces
hand tools, Hand Tools
handshaking, Parallel I/O
header files (C language), Header files
help( ) command (Python), The Python Command Line
help( ) function (Python), Numeric data as objects
help(str) command (Python), Strings
henries (H), Inductors
Hertz (Hz), Basic Circuit Theory
hex wrenches or keys, Nice-to-Have Tools
hexadecimal notation, Numeric data as objects
Hood, Jason, ANSI and Windows
horizontal sweep, The Oscilloscope
hybrid control systems, Hybrid Control Systems
hysteresis, Nonlinear Control: Bang-Bang Controllers

I

I/O handler, Interface Formats and Protocols
I/O transaction, Blocking Versus Nonblocking Calls
identity operators (Python), Identity operators
IDEs (integrated development environments), IDE tools
for Python, Editors and IDEs
IEEE-488 (see GPIB)
if statement (Python), The if statement
if-else statement (C language), if-else statement
image data, Image DataPGM file structure
image formats, PGM
ImageJ tool, PGM file structure
import statement (Python)
cyclic imports, Cyclic imports
methods, Import methods
processing, Import processing
#include directive, #include, Extension Source Module Organization
#include statements, A Simple C Program
indentation and Python program structure, Indentation
index( ) method (Python), Lists
inductors, Inductors
INI files, Configuration Data
initialization, Extension Source Module Organization
INITiate command, SCPI—Standard Commands for Programmable Instruments
input-output relationships, Input-output relationships
InputUtils.py, Implementing unit tests
InputUtils2.py, Documenting Your Software
instrument interface components, Interface Formats and Protocols
instrumentation, Introduction to Instrumentation
instrumentation systems, The Systems
integer (Python object type), Basic Data Types in ctypes
integration requirements, Requirement Types
intensity maps, Image Data
interface faults, Interface faults
interface formats and protocols, Interface Formats and ProtocolsUnique protocols
IVI standards, IVI—Interchangeable Virtual Instrument
SCPI standard, SCPI—Standard Commands for Programmable Instruments
unique protocols, Unique protocols
command and response formats, Unique protocols
VISA standard, VISA—Virtual Instrument Software Architecture
interface support packages (Python), Python Interface Support PackagesPyVISA
interfaces, InterfacesParallel I/O
interpreted programming languages, The Python Programming Language
ISA bus, Interface Formats and Protocols
items( ) method (Python), Mapped objects—dictionaries
IVI (interchangeable virtual instrument), IVI—Interchangeable Virtual Instrument
architecture overview, IVI-compliant drivers
IVI-compliant drivers, IVI-compliant drivers

J

Jacobson, Ivar, Use Cases
join( ) thread object method, Acquiring data using a thread
joules (J), Basic Circuit Theory

K

Kapton tape, Supplies
key/value pair (KVP) organization, Configuration Data
keys( ) method (Python), Mapped objects—dictionaries
keywords (Python), Keywords

L

LabJack U3 device, USB Example: The LabJack U3
connections, LabJack Connections
driver structure, LabJack driver structure
installing LabJackPython, Installing and testing LabJackPython
LabJackPython.py module, LabJack driver structure
Linux installation, LabJack on Linux
Python interface, usage with the getFeedback( ) method, Using the Python interface with the getFeedback() method
U3 class (Python), U3 configuration
U3 configuration, U3 configuration
U3 interface class derivation, LabJack driver structure
u3.py module, LabJack driver structure
u3ledblink.py, Using the Python interface with the getFeedback() method
Windows installation, LabJack on Windows
laboratory instrumentation, Laboratory Instrumentation
ladder diagrams, Sequential Control Systems
Laplace transform, Transfer Functions
Leyden jar, Capacitors
libraries (C language), A Simple C Program, Libraries
libvisa.so.7, PyVISA
Liechti, Chris, pySerial
lightweight process, DevSim internals
LIM command (SPC), Command descriptions
line termination in different operating systems, The Original ASCII Character Set
linear control systems, Linear Control Systems
linear proportional controller, Python implementation, Linear Proportional Controller
lineman’s pliers, Nice-to-Have Tools
lines, Discrete Digital I/O
linker (C language), Linking
Linux
bus-based hardware I/O devices, using with, Using Bus-Based Hardware I/O Devices with Linux
comedi drivers, The Comedi project
console interfaces, The Console
lists (Python), Sequence objects, Lists
ljust( ) method (Python), Strings
local scope (Python), Local scope
local variables (C language), A Simple C Program
logic analyzers, Logic Analyzers
logical operators (C language), Logical operators
logical operators (Python), Logical operators
long (Python object type), Basic Data Types in ctypes
Loper, Edward, Documenting Your Software
luminance maps, Image Data

M

macros, Preprocessor Directives
main( ) function (C language), A Simple C Program
mainloop( ) method (Python), The GUI main loop
make utility (C language), make
map( ) method (Python), PGM file structure
mapped objects (Python), Mapped objects—dictionaries
mask, Calling the Extension
MDI (multiple document interface), Some GUI Background and Concepts
MEASure command, SCPI—Standard Commands for Programmable Instruments
membership operators (Python), Membership operators
memset( ) library function (C language), A Simple C Program
message sequence charts (MSCs), Message sequence charts
method flags (Python extensions), Method Flags
method table (Python extensions), Extension Source Module Organization, The Method Table
methods, The Python Programming Language
methods, defining (Python), Functions, classes, and methods
METH_KEYWORDS, METH_KEYWORDS example
METH_NOARGS, METH_NOARGS example
METH_VARARGS, METH_VARARGS example
Microsoft Visual Studio, Installing C
Microsoft Windows
console interfaces, The Console
curses library module, absence on, Python and curses
electronics hardware and, Python Extensions
Tera Term, Serial Terminal Emulators
VSPs (virtual serial ports), Windows Virtual Serial Ports
MIL-type circular connector, Circular Connectors
MIL-type crimp pin, Crimping
millihenries (mH), Inductors
MinGW (Minimalist GNU for Windows), Installing C
miniature socket sets, Nice-to-Have Tools
minicom, Serial Terminal Emulators
models, What Is Simulation?
module global variables (Python), Module global variables
modules (Python), The Python Programming Language, Modules and packages
considered as objects, Think of modules as objects
creating, Program OrganizationDocstrings
importing, Importing ModulesCyclic imports
MSCs (message sequence charts), Message sequence charts
multidrop configuration, RS-485 multi-drop
multifunction DAQ cards, Data Acquisition Cards

N

namespaces (Python), Numeric data as objects
scope and, ScopeBuilt-in scope
NAND (Not-AND) gate logic, Circuit Schematics
Netpbm image format family, PGM
NewID( ) function (Python), Think of modules as objects
noise (in simulations), Noise
noisy data, Dealing with noise: Averaging
nonblocking function calls, Blocking Versus Nonblocking Calls
None (Python object type), Basic Data Types in ctypes
nonlinear control systems, Nonlinear Control Systems
nonlinear pulse control, Nonlinear Control Systems
nonprintable characters, risks of using, The Original ASCII Character Set
null-modem cable, DTE and DCE
numeric data objects (Python), Numeric data as objects
nut drivers, Nice-to-Have Tools

O

object files (C language), Object files
object types (Python), Objects in Python
object-oriented programming, The Python Programming Language
octal notation, Numeric data as objects
ohms, Basic Circuit Theory
Ohm’s law, Ohm’s Law
oledll interface class, Loading External DLLs with ctypes
Omega D1112 RS-485 data transmitter, Serial Interface Discrete and Analog Data I/O Devices
Omega Engineering, Serial Interface Discrete and Analog Data I/O Devices
on-off controllers, Nonlinear Control: Bang-Bang Controllers
open( ) method, Files
open-collector output, Discrete Digital I/O
open-loop control systems, Open-Loop Control, Open-Loop Control
operators (C language), OperatorsOperator precedence
operator precedence, Operator precedenceOperator precedence
operators (Python), OperatorsOperator precedence
operator precedence, Operator precedence
OR operator (C language), Bitwise operators
orbital shells, Electrical Charge
ord( ) function (Python), Python’s ASCII Character-Handling Methods
oscilloscopes, The Oscilloscope
bandwidth, The Oscilloscope
overstuffed toolkit, Hand Tools

P

packages (Python), Modules and packages
pack_struct_file.py, Using struct to handle structured binary data
padding, Flat Binary Data Files
panel-mount connectors, DB-Type Connectors
parallel interfaces, Parallel I/O
pass statement (Python), pass
PC bus interface hardware, PC Bus Interface HardwareGPIB Interface Cards
PCB-mount terminal block, Terminal Blocks
PCBs (printed circuit boards), Connectors
PCI (Peripheral Component Interconnect) bus, PC Bus Interface Hardware
PCI DAQ (Data Acquisition) cards, Data Acquisition Cards
PCI Express bus, PC Bus Interface Hardware
PCI GPIB interface cards, GPIB Interface Cards
PDevAPI.c, Generic Wrapper Example
PEP-257, Docstring Conventions, Adopting existing coding style guidelines
PEP-8 coding style, Coding style
PEP-8, Style Guide for Python Code, Adopting existing coding style guidelines
performance requirements, Requirement Types
PGM (Portable Grayscale Map) image format, PGM
file structure, PGM file structure
pgmtest.pgm, PGM file structure
pgmtest.py, PGM file structure
PGMWrite( ) function (Python), PGM file structure
physical interfaces, Physical Interfaces
older interfaces, Old Doesn’t Mean Bad
PID (proportional-integral-derivative) controllers, Off-the-shelf controllers versus software implementationPI and PID controls
Python, implementation in, Simple PID ControllerSimple PID Controller
PID control block diagram, PID overview
pins, Discrete Digital I/O
pipes, gnuplot
pixel data size, Image Data
place geometry manager, Geometry management
planning, Getting Started
project objectives, Project Objectives
projects, defining, Defining the Project
requirements, RequirementsCapturing Requirements
capturing requirements, Capturing Requirements
characteristics of well-formed requirements, Well-Formed Requirements
requirement types, Requirement Types
software requirements in development flow, The Big Picture
traceability, Traceability
use cases, Use Cases
requirements-driven design, Requirements-Driven Design
statement of need, Stating the Need
plant, Introduction to Instrumentation, Controlling position—Basic feedback
PLC (programmable logic controller), Sequential Control Systems
plug-in circuit boards, Interface Formats and Protocols
pointers (C language), PointersPointers
popen( ) method (Python), Method 1: Using Python’s popen() method
ports, Discrete Digital I/O
POW command (SPC), Command descriptions
power, Basic Circuit Theory
preprocessor directives, A Simple C Program, Preprocessor Directives#define
print statement (Python), print, Console output using print, Writing ASCII data files
procedural programming, The Python Programming Language
process, DevSim internals
process control, Process Control
programmable logic controller (PLC), Sequential Control Systems
proportional control term, The proportional control term
proportional controller droop, The proportional control term
proportional term control response, The proportional control term
pseudocode, Pseudocode
pull-up and pull-down resistors, Discrete Digital I/O
pulse-width modulation (PWM), PWM
PWM (pulse-width modulation), PWM
PyArg_Parse( ) method, Passing Data
PyArg_ParseTuple type codes, Passing Data
PyArg_ParseTuple( ) method, METH_VARARGS example, Passing Data
PyArg_ParseTupleAndKeywords( ) method, METH_KEYWORDS example, Passing Data
PyArg_UnpackTuple( ) method, Passing Data
PyArg_VaParse( ) method, Passing Data
.pyd extension, Python Extensions
pyParallel package, pyParallel
pySerial package, pySerialpySerial
PySims package, Package and Module Organization
Python extensions, Python Extensions
(see also C programming language)
C extension API, Python’s C Extension APICalling the Extension
API types and functions, Python API Types and Functions
extension source module organization, Extension Source Module Organization
generic discrete I/O API, Generic Discrete I/O APIGeneric Discrete I/O API
generic wrapper example, Generic Wrapper ExampleGeneric Wrapper Example
method flags, Method FlagsMETH_NOARGS example
method table, The Method Table
passing data, Passing Data
calling extensions, Calling the ExtensionCalling the Extension
error checking, Calling the Extension
creating, Creating Python Extensions in C
ctypes library (see ctypes library)
hierarchy, Creating Python Extensions in C
Python manpage, Command-Line Options and Environment
Python programming language, Why Python?, The Python Programming Language
command line, The Python Command Line
curses library (see curses library)
data types, Data Types in Python
ctypes data types, compared to, Basic Data Types in ctypes
input and output, Basic Input and OutputRedirecting print
command-line parameters, Command-line parameters
console output using print, Console output using print
files, Files
redirecting print output, Redirecting print
installing, Installing Python
interface support packages, Python Interface Support PackagesPyVISA
loading and running programs, Loading and Running a Python Program
objects, Objects in Python
Python extensions (see Python extensions)
simulators, creating in (see Python simulators)
text editors and IDEs, Editors and IDEs
unittest facility, Implementing unit tests
Python simulators, Using Python to Create a SimulatorInteracting with the SPC simulator
AC power controller simulator, AC Power Controller SimulatorInteracting with the SPC simulator
data I/O simulator, Data I/O SimulatorNoise
packages and modules, Package and Module Organization
PythonCard, Tools and resources for wxPython
PyUniversalLibrary, Alternatives for Windows
PyVISA package, PyVISA
Py_BuildValue( ) method, Passing Data, Passing Data

Q

quantization and quantization error, Analog I/O
quoting of string literals (Python), String quotes

R

range( ) function (Python), The for statement
rapidly changing average data, Dealing with noise: Averaging
raw_input( ) function (Python), User input
RDD (requirements-driven design), Requirements-Driven Design
read-modify-write, Calling the Extension
read183dmm.py, Simple DMM Data Capture
readData( ) method, Some simple examples
readinto( ) file object method, Using the ctypes module to handle structured binary data
records, Records
reference input, Control System Block Diagrams
regression testing, Regression Testing
relay driver circuit, Discrete Digital I/O
replace( ) method (Python), Strings
requirement and test case relationship, Test Cases
requirements traceability matrix, Traceability
requirements-driven design (RDD), Requirements-Driven Design
reserved keywords in Python, Keywords
reset, PI and PID controls
resistance, Basic Circuit Theory, DC Circuit Characteristics
resistors, More About Resistors
resolution of data, Acquiring analog data
RetCodes module, Package and Module Organization
return statement (Python), return
rjust( ) method (Python), Strings
Roundup tool, Defect Tracking
RS-232 and RS-485 interfaces, Serial Interfaces
RS-232 DB-9 pin definitions, RS-232 signals
RS-232 interface, Serial I/O, RS-232/EIA-232
data formats, RS-232 data formats
signals, RS-232 signals
versus RS-485, RS-232 versus RS-485
RS-485, Unique protocols
RS-485 command-response sequence, RS-485 multi-drop
RS-485 half-duplex data flow and operation, RS-485 multi-drop
RS-485 interface, RS-485/EIA-485
RS-485 interface drivers in two-wire and four-wire modes, Line drivers and receivers
RS-485 signals, RS-485 signals
RST command (SPC), Command descriptions

S

ScaledInput( ) test cases, Defining a unit test
schematic wiring notation, Circuit Schematics
schematics, Circuit Schematics
Schleef, David, The Comedi project
scope (Python), ScopeBuilt-in scope
SCPI (Standard Commands for Programmable Instruments), SCPI—Standard Commands for Programmable Instruments
SDD (software design description), Defining the Project, The Software Design DescriptionMessage sequence charts
block diagrams, Block diagrams
failure analysis, Identifying potential failures
failure responses, Failure responses
flowcharts, Flowcharts
functional testing (see functional testing)
graphics, usage in, Graphics in the SDD
handling errors and faults, Handling Errors and Faults
message sequence charts, Message sequence charts
organization, Divide and Conquer
pseudocode, Pseudocode
state diagrams, State diagrams
unit testing, mapping to, Defining a unit test
SDLC (software development life cycle), Requirements-Driven Design
SEM command (SPC), Command descriptions
SendTrigger( ) function, Acquiring data using a thread
SEQ command (SPC), Command descriptions
sequence objects (Python), Sequence objects
sequential control systems, Control Output, Sequential Control, Sequential Control Systems, Sequential Control SystemsSequential Control Systems
control system states, Sequential Control Systems
SFCs, Sequential Control Systems
serial interfaces, Serial I/O, Physical Interfaces, Serial Interfaces, Serial InterfacesSimple DMM Data Capture
discrete and analog data I/O devices, Serial Interface Discrete and Analog Data I/O DevicesSerial Interface Discrete and Analog Data I/O Devices
speed considerations, Serial Interfaces and Speed Considerations
tpi model 183 DMM, data capture from, Simple DMM Data CaptureSimple DMM Data Capture
serial terminal emulators, Serial Terminal EmulatorsUsing Terminal Emulator Scripts
terminal emulator scripting, Using Terminal Emulator Scripts
series and parallel resistance, More About Resistors
set and check instrument output, Writing data
setDataFile( ) method, Some simple examples
setInputSrc( ) and setOutputSrc( ) methods, Some simple examples
SFCs (sequential function charts), Sequential Control Systems
signal switchers, SCPI—Standard Commands for Programmable Instruments
SimLib package, Package and Module Organization
simple LED circuit, Ohm’s Law
Simple Power Controller (see SPC)
SimpleANSI library, The SimpleANSI libraryUsing SimpleANSI
using, Using SimpleANSI
SimpleANSI library module, The SimpleANSI library
simulation, Building and Using SimulatorsWhat Is Simulation?
fidelity, Low Fidelity or High Fidelity
Python simulators, creating (see Python simulators)
simulating errors and faults, Simulating Errors and Faults
versus the real world, What Is Simulation?
simulation package structure, Package and Module Organization
simulator cyclic data types, DevSim methods
simulator fault injection using object variables, System faults
simulators, Building and Using Simulators
creating, Creating Your Own Simulators
evaluating needs, Justifying a Simulator
scope of simulation, The Simulation Scope
time and effort, Time and Effort
data I/O simulator (see DevSim)
serial terminal emulators, Serial Terminal Emulators
simulation data, displaying, Displaying Simulation DataPlotting Simulator Data with gnuplot
gnuplot, using (see gnuplot)
sine waves, Sine Waves
sine_print.c program, A Simple C Program
sine_print2.c, #define
single-trace oscilloscopes, The Oscilloscope
size of digital data, Data Acquisition
slope intercept equation, Linear Control Systems
software bang-bang controller, Nonlinear Control: Bang-Bang Controllers
software design description (SDD) (see SDD)
software design process, Designing the SoftwareFailure responses
software design description (see SDD)
software development
coding (see coding)
software development life cycle (SDLC), Requirements-Driven Design
solder cup connection, Soldering
soldering, Soldering Tools, Soldering
soldering guns versus soldering irons, Soldering Tools
solid-state components, Circuit Schematics
SOR command (SPC), Command descriptions
SOW (statement of work), Defining the Project
SPC (Simple Power Controller), The SPC model
command set, The SPC command setCommand descriptions
communication with, Communicating with SPC
configuring, Configuring the SPC
interacting with, Interacting with the SPC simulator
serial interface and virtual serial ports, The SPC serial interface and virtual serial ports
simulator internals, SPC simulator internals
SPC command-response MSC, SPC simulator internals
special-purpose interfaces, Serial Interfaces
sprinkler system sequential control, Sequential Control Systems
square wave, Other Waveforms: Square, Ramp, Triangle, Pulse
standard library (C language), The Standard Library
state diagrams, State diagrams
statement of need, Defining the Project
statement of work (SOW), Defining the Project
statements (C language), Statementsgoto statement
statements (Python), StatementsThe try statement
blocks and indentation, Indentation
compound statements, Compound statements
simple statements, Simple statements
static global variables (C language), Developing Software in C
stdin, User input
stdout, Console output using print
step input, The proportional control term
STM command (SPC), Command descriptions
stranded versus single-conductor wire, Supplies
string (Python object type), Basic Data Types in ctypes
string indexing (Python), Strings
string nulls (C language), A Simple C Program
strings (Python), Sequence objects, Strings, StringsString formatting
commonly used string methods, String methods
string escape sequences, String formatting
string format placeholder flags, String formatting
string formatting, String formatting
string methods, String methods
string quotes, String quotes
Struct class (Python), Using struct to handle structured binary data
struct data type format codes, Using struct to handle structured binary data
struct functions, Using struct to handle structured binary data
struct module (Python)
16-bit image data, building with, PGM file structure
Structure class (ctypes), Using the ctypes module to handle structured binary data
structure padding, Flat Binary Data Files
structured programming, The Python Programming Language
structures (C language), StructuresStructures
SubVersion, Version Control
summing junction or node, Closed-Loop Control
summing node or summing junction, Feedback
supplies, Supplies
SWIG (Simplified Wrapper and Interface Generator), Using comedi with Python
SWIG tool, Python’s C Extension API
switch statement (C language), switch statementswitch statement
symbols in circuit schematics, Circuit Schematics
synchronous serial data communication, Serial I/O
system faults, Simulating Errors and Faults, System faults
system time constant, Discrete-time control systems
system-level fault injection, System faults

T

tachometer continuity sense, Capacitors
Telecommunications Industry Association (TIA), Serial Interfaces
Tera Term, Serial Terminal Emulators
TTL (Tera Term Language) scripting language, Using Terminal Emulator Scripts
Teranashi, T., Serial Terminal Emulators
termcap (Unix), ANSI Display Control Techniques
terminal blocks, Terminal Blocks
terminfo (Linux), ANSI Display Control Techniques
terms, PID overview
ternary conditional (?:), #define
test cases, Test Cases
test procedures, Test Cases
text data or text files, ASCII Data Files
text editors, Editors and IDEs
text-based interfaces, Text-Based InterfacesTo Curse or Not to Curse, Is That the Question?
ANSI display control techniques, ANSI Display Control Techniques
basic ANSI control sequences, Basic ANSI control sequences
SimpleANSI library, The SimpleANSI libraryUsing SimpleANSI
Windows and, ANSI and Windows
consoles, The ConsoleUsing Python’s msvcrt library module
curses, Python and curses
textual data display, Example console display
thread, DevSim internals
time and frequency domain graphs, Time and frequency domains
time domain, Time and frequency domains
time-invariant and time-variant systems, Time and control systems behavior
timers, Counters and Timers
tkdemo1.py, Simple TkInter example
tkdemo2.py, Simple TkInter example
tokens, A Simple C Program
tools, Hardware: Tools and SuppliesTest Equipment Caveats
assessing quality, Where to purchase tools
electronic tool sources, Where to purchase tools
logic analyzers, Logic Analyzers
new versus used tools, New Versus Used
proper use, Be kind to your tools
proper use of test equipment, Test Equipment Caveats
soldering tools, Soldering Tools
tpi 183, Unique protocols
tpi model 183 data output format, Simple DMM Data Capture
tpi model 183 DMM, Serial Interfaces
traceability, Traceability
transfer functions, Transfer Functions
transistor-transistor logic (TTL) voltage, Discrete Digital I/O
try statement (Python), The try statement
tstamp, Writing ASCII data files
tty0tty package, The SPC serial interface and virtual serial ports
tuples (Python), Sequence objects, Tuples
returning function values with, Function return values
typedef (C language), User-Defined Types

U

UART (Universal Asynchronous Receive-Transmitter) devices, Serial I/O
unary operators (C language), Unary operators
unbounded loops, for loop
UNC Python Tools package, Alternatives for Windows
unit testing, Unit TestingCode coverage
code coverage analysis, Code coverage
definition, Defining a unit test
implementing, Implementing unit testsImplementing unit tests
mapping to the SDD, Defining a unit test
Python unittest facility, Implementing unit tests
Python unittest library
assert-type methods, assert versus assertEqual() and friends
unittest library (Python), Implementing unit tests
upper( ) method (Python), Strings
USB (Universal Serial Bus) interface, Serial Interfaces, USBUSB instrumentation
LabJack U3, USB Example: The LabJack U3Using the Python interface with the getFeedback() method
installation, Installing a LabJack Device
LabJack connections, LabJack Connections
LabJackPython interface, LabJack and Python
USB connectors, USB Connectors
USB interface modules, Process Control
USB logic analyzer modules, Logic Analyzers
USB-to-GPIB interface, GPIB via USB
USB-to-serial converters, Windows Virtual Serial Ports
use cases, Use Cases
user input (Python), User input
user interfaces, User Interfaces
text-based interfaces (see text-based interfaces)
user level, Interface Formats and Protocols
user-defined functions, User-defined functions
UTF-8 character encoding, ASCII Data Files
UUT (unit under test), Electronics Test Instrumentation

V

valence shell, Electrical Charge
value tolerance checking, Writing data
values( ) method (Python), Mapped objects—dictionaries
variables (Python), Data Types in Python
VDT (Video Display Terminal), ANSI Display Control Techniques
version control, Version Control
vintage Leeds and Northrup resistance bridge test set, DMM usage tips
virtual ports, The SPC serial interface and virtual serial ports
VISA (Virtual Instrument Software Architecture), VISA—Virtual Instrument Software Architecture
visa32.dll, VISA—Virtual Instrument Software Architecture, PyVISA
voltage and volts (V), Basic Circuit Theory
voltage dividers, More About Resistors
VSPs (virtual serial ports), Windows Virtual Serial Ports

W

warmup convergence, Waiting for stability
waterfall model of software life-cycle, Requirements-Driven Design
watt (W), Basic Circuit Theory
waveforms, Other Waveforms: Square, Ramp, Triangle, Pulse
sine waves, Sine Waves
wgnuplot, limitations of, Method 1: Using Python’s popen() method
while loop (C language), while loop
while statement (Python), The while statement
widgets, Some GUI Background and Concepts, Using a GUI with Python
windll interface class, Loading External DLLs with ctypes
Windows VSPs (virtual serial ports), Windows Virtual Serial Ports
wire, Supplies
wire cutters and strippers, Be kind to your tools
wiring, WiringWiring caveats
correct technique, Wiring caveats
wrappers, Python Extensions
write( ) method (Python), Files, Writing ASCII data files
wxexample.py, Building a simple wxPython GUI
wxGlade, Tools and resources for wxPython

X

XOR operator (C language), Bitwise operators
..................Content has been hidden....................

You can't read the all page of ebook, please click here login for view all page.
Reset
3.144.207.151