Welcome to Scribd, the world's digital library. Read, publish, and share books and documents. See more
Buy Now $43.99
Standard view
Full view
of .
Save to My Library
Look up keyword or section
Like this
25Activity

Table Of Contents

Preface
CHAPTER 1
Introduction to Instrumentation
Data Acquisition
Control Output
Open-Loop Control
Closed-Loop Control
Sequential Control
Applications Overview
Electronics Test Instrumentation
Laboratory Instrumentation
Process Control
Summary
CHAPTER 2
Essential Electronics
Electrical Charge
Electric Current
Basic Circuit Theory
Circuit Schematics
Analog I/O
Counters and Timers
Serial I/O
Parallel I/O
Suggested Reading
CHAPTER 3
The Python Programming Language
Procedural and Object-Oriented Programming
Installing Python
The Python Command Line
Command-Line Options and Environment
Objects in Python
Data Types in Python
Expressions
Operators
Statements
Strings
Program Organization
Importing Modules
Loading and Running a Python Program
Basic Input and Output
User-Defined Types
Arrays and Pointers
Structures
Generic Discrete I/O API
Generic Wrapper Example
Calling the Extension
Python’s ctypes Foreign Function Library
Loading External DLLs with ctypes
Basic Data Types in ctypes
Using ctypes
CHAPTER 6
Hardware: Tools and Supplies
The Essentials
Hand Tools
Digital Multimeter
Soldering Tools
Nice-to-Have Tools
Advanced Tools
The Oscilloscope
Logic Analyzers
Test Equipment Caveats
Supplies
New Versus Used
CHAPTER 7
Physical Interfaces
Connectors
DB-Type Connectors
USB Connectors
Circular Connectors
Terminal Blocks
Wiring
Connector Failures
Serial Interfaces
Half- and Full-Duplex
RS-232/EIA-232
RS-485/EIA-485
Windows Virtual Serial Ports
GPIB/IEEE-488
GPIB/IEEE-488 Signals
GPIB Connections
GPIB via USB
PC Bus Interface Hardware
Pros and Cons of Bus-Based Interfaces
Data Acquisition Cards
GPIB Interface Cards
Old Doesn’t Mean Bad
CHAPTER 8
Getting Started
Defining the Project
Requirements-Driven Design
Stating the Need
Project Objectives
Requirements
Why Requirements Matter
Well-Formed Requirements
The Big Picture
Requirement Types
Use Cases
Traceability
Capturing Requirements
Designing the Software
The Software Design Description
Graphics in the SDD
Pseudocode
Divide and Conquer
Handling Errors and Faults
Functional Testing
Testing to the Requirements
Test Cases
Testing Error Handling
Regression Testing
Tracking Progress
Implementation
Coding Styles
Organizing Your Code
Code Reviews
Unit Testing
Time and Frequency
Control System Types
Nonlinear Control: Bang-Bang Controllers
Proportional, PI, and PID Controls
Equation 9-4
Equation 9-5
Equation 9-6
Hybrid Control Systems
Implementing Control Systems in Python
Linear Proportional Controller
Equation 9-7
Bang-Bang Controller
Simple PID Controller
Equation 9-8
Equation 9-9
Equation 9-10
Equation 9-11
CHAPTER 10
Building and Using Simulators
What Is Simulation?
Low Fidelity or High Fidelity
Simulating Errors and Faults
Using Python to Create a Simulator
Package and Module Organization
Data I/O Simulator
AC Power Controller Simulator
Serial Terminal Emulators
Using Terminal Emulator Scripts
Displaying Simulation Data
gnuplot
Using gnuplot
Plotting Simulator Data with gnuplot
Creating Your Own Simulators
Justifying a Simulator
The Simulation Scope
Time and Effort
CHAPTER 11
Instrumentation Data I/O
Data I/O Interface Software
Interface Formats and Protocols
Python Interface Support Packages
Alternatives for Windows
Using Bus-Based Hardware I/O Devices with Linux
Data I/O: Acquiring and Writing Data
Basic Data I/O
Blocking Versus Nonblocking Calls
Data I/O Methods
Handling Data I/O Errors
Handling Inconsistent Data
CHAPTER 12
Reading and Writing Data Files
ASCII Data Files
The Original ASCII Character Set
Python’s ASCII Character-Handling Methods
Reading and Writing ASCII Flat Files
Configuration Data
Module AutoConvert.py—Automatic String Conversion
Module FileUtils.py—ASCII Data File I/O Utilities
Binary Data Files
Flat Binary Data Files
Handling Binary Data in Python
Image Data
CHAPTER 13
User Interfaces
Text-Based Interfaces
The Console
ANSI Display Control Techniques
Python and curses
To Curse or Not to Curse, Is That the Question?
Graphical User Interfaces
Some GUI Background and Concepts
Using a GUI with Python
TkInter
wxPython
CHAPTER 14
Real World Examples
Simple DMM Data Capture
Serial Interface Discrete and Analog Data I/O Devices
Serial Interfaces and Speed Considerations
USB Example: The LabJack U3
LabJack Connections
Installing a LabJack Device
LabJack and Python
Free and Open Source Software Resources
Instrument Sources
Index
P. 1
Real World Instrumentation with Python: Automated Data Acquisition and Control Systems

Real World Instrumentation with Python: Automated Data Acquisition and Control Systems

Ratings: (0)|Views: 1,322 |Likes:

Learn how to develop your own applications to monitor or control instrumentation hardware. Whether you need to acquire data from a device or automate its functions, this practical book shows you how to use Python's rapid development capabilities to build interfaces that include everything from software to wiring. You get step-by-step instructions, clear examples, and hands-on tips for interfacing a PC to a variety of devices.

Use the book's hardware survey to identify the interface type for your particular device, and then follow detailed examples to develop an interface with Python and C. Organized by interface type, data processing activities, and user interface implementations, this book is for anyone who works with instrumentation, robotics, data acquisition, or process control.

Understand how to define the scope of an application and determine the algorithms necessary, and why it's important Learn how to use industry-standard interfaces such as RS-232, RS-485, and GPIB Create low-level extension modules in C to interface Python with a variety of hardware and test instruments Explore the console, curses, TkInter, and wxPython for graphical and text-based user interfaces Use open source software tools and libraries to reduce costs and avoid implementing functionality from scratch

Learn how to develop your own applications to monitor or control instrumentation hardware. Whether you need to acquire data from a device or automate its functions, this practical book shows you how to use Python's rapid development capabilities to build interfaces that include everything from software to wiring. You get step-by-step instructions, clear examples, and hands-on tips for interfacing a PC to a variety of devices.

Use the book's hardware survey to identify the interface type for your particular device, and then follow detailed examples to develop an interface with Python and C. Organized by interface type, data processing activities, and user interface implementations, this book is for anyone who works with instrumentation, robotics, data acquisition, or process control.

Understand how to define the scope of an application and determine the algorithms necessary, and why it's important Learn how to use industry-standard interfaces such as RS-232, RS-485, and GPIB Create low-level extension modules in C to interface Python with a variety of hardware and test instruments Explore the console, curses, TkInter, and wxPython for graphical and text-based user interfaces Use open source software tools and libraries to reduce costs and avoid implementing functionality from scratch

More info:

Publish date: Nov 15, 2010
Added to Scribd: Sep 02, 2011
Copyright:Traditional Copyright: All rights reservedISBN:9781449396701
List Price: $43.99 Buy Now

Availability:

Read on Scribd mobile: iPhone, iPad and Android.
See more
See less

08/19/2014

622

9781449396701

$43.99

USD

pdf

You're Reading a Free Preview
Pages 25 to 47 are not shown in this preview.
You're Reading a Free Preview
Pages 72 to 134 are not shown in this preview.
You're Reading a Free Preview
Pages 159 to 177 are not shown in this preview.
You're Reading a Free Preview
Pages 202 to 317 are not shown in this preview.
You're Reading a Free Preview
Pages 342 to 622 are not shown in this preview.

Activity (25)

You've already reviewed this. Edit your review.
1 hundred reads
1 thousand reads
darebusi1 liked this
nileshsaw liked this
jablan liked this
luispotter liked this
MASCUL liked this
zabira liked this
Antonio Felleca liked this

You're Reading a Free Preview

Download
/*********** DO NOT ALTER ANYTHING BELOW THIS LINE ! ************/ var s_code=s.t();if(s_code)document.write(s_code)//-->