The Need for Speed: When you need a faster datalogger

Slides:



Advertisements
Similar presentations
Buffers & Spoolers J L Martin Think about it… All I/O is relatively slow. For most of us, input by typing is painfully slow. From the CPUs point.
Advertisements

Data Structures Static and Dynamic.
Analog-to-Digital Converter (ADC) And
1/1/ / faculty of Electrical Engineering eindhoven university of technology Architectures of Digital Information Systems Part 1: Interrupts and DMA dr.ir.
Oscilloscope Watch Teardown. Agenda History and General overview Hardware design: – Block diagram and general overview – Choice of the microcontroller.
Environmental Monitoring System at GBC and Its Components Presenter: Sanjaya Gurung.
CR1000s are only one part of a data acquisition system. To get good data, suitable sensors and a reliable data retrieval method are required. A failure.
Timers and Interrupts Shivendu Bhushan Summer Camp ‘13.
CR1000s are only one part of a data acquisition system. To get good data, suitable sensors and a reliable data retrieval method are required. A failure.
Dataloggers. Records voltage, current, or circuit closing Environmental variables must be converted to electronic signal.
WANs and Routers Routers. Router Description Specialized computer Like a general purpose PC, a router has:  CPU  Memory  System Bus Connecting Internal.
LabView Users Group Meeting June 20 th, 2006 Process Control Using Compact Field Point/Labview Real-time Michael Tockstein Microelectronics Technology.
AXIS 2460 System Overview  AXIS ETRAX 100LX  ARTPEC-1  4 MB FLASH  32 MB RAM  Up to 4 internal IDE hard disks  Linux 2.4.
3/7/05A. Semenov Batch-by-Batch Intensity Monitor 1 Two-Channel Batch by Batch Intensity Monitor for Main Injector BBI.
Chapter 3 Computer Hard ware
NetBurner MOD 5282 Network Development Kit MCF 5282 Integrated ColdFire 32 bit Microcontoller 2 DB-9 connectors for serial I/O supports: RS-232, RS-485,
 Introduction to Operating System Introduction to Operating System  Types Of An Operating System Types Of An Operating System  Single User Single User.
Computer System Overview Chapter 1. Operating System Exploits the hardware resources of one or more processors Provides a set of services to system users.
Data Acquisition Data acquisition (DAQ) basics Connecting Signals Simple DAQ application Computer DAQ Device Terminal Block Cable Sensors.
DLS Digital Controller Tony Dobbing Head of Power Supplies Group.
Course ILT Basics of information technology Unit objectives Define “information technology” (IT), distinguish between hardware and software, and identify.
Computing and the Web Computer Hardware Components.
S2008Final_part1.ppt CS11 Introduction to Programming Final Exam Part 1 S A computer is a mechanical or electrical device which stores, retrieves,
Atmel Atmega128 Overview ALU Particulars RISC Architecture 133, Mostly single cycle instructions 2 Address instructions (opcode, Rs, Rd, offset) 32x8 Register.
MEMORY ORGANIZTION & ADDRESSING Presented by: Bshara Choufany.
ATtiny23131 A SEMINAR ON AVR MICROCONTROLLER ATtiny2313.
Computer Architecture Lecture 32 Fasih ur Rehman.
Memory Management OS Fazal Rehman Shamil. swapping Swapping concept comes in terms of process scheduling. Swapping is basically implemented by Medium.
SEMINAR ON P.L.C. SUBMITTED BY HRIDAY MUKHERJEE AMIT DEBNATH SOMNATH SHIL
Introduction to Exceptions 1 Introduction to Exceptions ARM Advanced RISC Machines.
1 OPERATING SYSTEMS. 2 CONTENTS 1.What is an Operating System? 2.OS Functions 3.OS Services 4.Structure of OS 5.Evolution of OS.
MADEIRA Valencia report V. Stankova, C. Lacasta, V. Linhart Ljubljana meeting February 2009.
1 Computer System Overview Chapter 1. 2 Operating System Exploits the hardware resources of one or more processors Provides a set of services to system.
Advanced Datalogger: Z-GPRS3. # 4 Digital Input PNP, NPN bit max 30 Hz) RAM and Flash RAM 256 KB 1 MB + 8 MB (log) SD card max 32 GB.
SPiiPlus Training Class
BASIC PROGRAMMING C SCP1103 (02)
Digital-to-Analog Analog-to-Digital
Architectures of Digital Information Systems Part 1: Interrupts and DMA dr.ir. A.C. Verschueren Eindhoven University of Technology Section of Digital.
Memory Management.
Processes and threads.
Chapter 1 Computer System Overview
ES C263 Microprocessor Programming and Interfacing
Central Processing Unit Architecture
BASIC PROGRAMMING C SCP1103 (02)
Topics Introduction to Repetition Structures
Lecture 1 Runtime environments.
CS1251 Computer Architecture
Memory chips Memory chips have two main properties that determine their application, storage capacity (size) and access time(speed). A memory chip contains.
TYPES OFF OPERATING SYSTEM
Database Performance Tuning and Query Optimization
The Arduino Microcontroller: Atmel AVR Atmega 328
Digital-to-Analog Analog-to-Digital
Introduction to Microprocessors and Microcontrollers
Multicultural Social Community Development Institute ( MSCDI)
Process & its States Lecture 5.
Types of Computers Mainframe/Server
Five Key Computer Components
Virtual Memory Overcoming main memory size limitation
Chapter 11 Database Performance Tuning and Query Optimization
Chapter 1 Computer System Overview
Topics Introduction to Repetition Structures
Computer System Overview
Lecture 1 Runtime environments.
COMP755 Advanced Operating Systems
ADSP 21065L.
Chapter 13: I/O Systems.
Chapter 3: Process Management
Prebared by Omid Mustefa.
Chapter 1: Introduction to Computers and Programming
Presentation transcript:

The Need for Speed: When you need a faster datalogger

Overview Compile Modes and Task Management Hardware overview and measurement structure Serving Data Examples

Compile Modes and Task Management

Compile Modes Sequential Mode Pipeline Mode Each instruction executes in the order it appears in the program. Pipeline Mode Breaks up the program into tasks.

Sequential Mode Advantages Programmer has flow control Easy to read Measurements tasks inside of a processing task (logic statement etc.) InstructionTimes()

Control that manages access to limited resources Semaphore Control that manages access to limited resources Main scan holds semaphore until complete Slow scans release semaphore after each slice

Main Scan Timing: Sequential Mode What is the downside of running the main scan at maximum speed

Sequential Mode: Skipped Scans Main Scan = 5 Scan 1 Skipped Scan! Scan 3 Skipped Scan! Scan 4 Skipped Scan! Main Scan = 10 Scan 1 Scan 2 Skipped Scan!

Slow Sequence Run outside the main scan at lower priority Sliced into the executing task when time is available Up to 4 user defined slow sequence tasks Autocalibration and the Watchdog task are slow sequence tasks

Sequential Mode: Slow Sequence Main Scan Scan 1 Scan 2 Slow Sequence With a 5 sec main scan what is the minimum slow sequence scan rate? What would happen if one slow sequence task took longer than 7 units?

Pipeline Mode Advantages Faster Simultaneous measurement and processing Differentiate tasks Ex: Delay() Buffered Measurement times fixed Conserves power CR300

Buffers Each buffer is the amount of memory allocated to process one scan The actual amount of memory depends on the program Shares memory space with output tables (4 Mb) Scan(10, sec,3,0) Minimum of 2 buffers

Buffers Good for programs that will occasionally have large processing requirements Communications, Histogram, etc Insufficient buffer depth will cause a buffer overflow, generating skipped scans Only the main scan is buffered

Hardware: Analog terminals Measurement Task Hardware: Analog terminals SE/Diff channels, VX, IX, U channels Instructions Voltage Measurements: VoltSE(), VoltDiff(), Excitation: ExciteV() Resistive Measurements: BrFull(), BrHalf()

Hardware: Digital Terminals Processing Task Hardware: Digital Terminals Control, Pulse, U channels, RS232, CSI/O, Ethernet, CPI Instructions Serial I/O (SerialOut,SDI12, etc) Conditionals (If..Then…Else) Protocols: Email, FTP, SDI12, ModBus… Calculations/ Output procesing

Task Priority Each instruction broken into tasks and queued Interrupt driven Task priority Measurement Task Processing Task Analog Measurements Processing Excitation Output Pulse Counters Serial I/0 Control ports SDM

Pipeline Mode: Timing M P M P Main Scan = 10 Scan 1 Scan 2 Scan 3

Pipeline Mode: Buffers and Skipped Scans Main Scan = 6 Scan 1 Scan 2 Scan 3 Scan 4 Scan 5 M P Buffer How many buffers are necessary to avoid skipped scans PC2 PC4 PB4 PA4 PC1 PB1 PA1 PC2 PB2 PA2 PC5 PB5 PA5 Buffer Overflow!

Pipeline Mode: Slow Sequence Processing and measurement broken up means it can fit into smaller slices All measurements sliced in before any processing

Slow Sequence Timing: Pipeline Mode Main Scan Scan 1 Scan 2 Scan 3 Scan 4 Scan 5 M P Slow Sequence M P Scan 1 Scan 2 Scan 3 Scan 4 Scan 5 M P

Hardware overview and measurement structure

CR1000 Fastest Recorded Measurement The Fastest the CR1000 can take a measurements and record the data without skipping Scans is approximately 100Hz Approximately 1300uS for measurement time. The remaining time is allocated for processing ADC measurement values, background calibration tasks, and recording data.

CR6 Fastest Recorded Measurement The Fastest the CR6 can take a measurements and record the data without skipping scans is approximately 250Hz Approximately 1600uS for measurement time. The remaining time is allocated for processing ADC measurement values, background calibration tasks, and recording data.

CR300 Fastest Recorded Measurement The Fastest the CR300 can take a measurements and record the data without skipping Scans is approximately 16Hz Approximately 1400uS for measurement time. The remaining time is allocated for processing measurement, buffering data, flash erase and flash write tasks. Fast Measurement Slow to Record. The CR300 Writes to flash and it is extremely slow compared the SRAM in other Dataloggers. Flash Requires erase events where as RAM you can overwrite individual bits.

CR1000x Fastest Recorded Measurement The Fastest the CR1000X can take a measurements and record the data without skipping scans is approximately 333Hz Approximately 1000uS for measurement time. The remaining time is allocated for processing ADC measurement values, background calibration tasks, and recording data.

Reps(Number of measurements on consecutive channels) VoltDiff ( Variable , Reps , Range , Channel , RevDiff , SettlingTime , Fn1 , Mult , Offset ) VoltDiff ( Variable1 , 1 , Range , 1 , False , SettlingTime , Fn1 , Mult , Offset ) VoltDiff ( Variable2 , 1 , Range , 2 , False , SettlingTime , Fn1 , Mult , Offset ) VoltDiff ( Variable3 , 1 , Range , 3 , False , SettlingTime , Fn1 , Mult , Offset ) VS VoltDiff ( Variable() , 3 , Range , 1 , False , SettlingTime , Fn1 , Mult , Offset )

RevDiff(Determines if inputs are reversed for a second measurement) VoltDiff ( Variable , Reps , Range , Channel , RevDiff , SettlingTime , Fn1 , Mult , Offset ) VoltDiff ( Variable , 1 , Range , Channel , FALSE , SettlingTime , Fn1 , Mult , Offset ) VS VoltDiff ( Variable , 1 , Range , Channel , TRUE , SettlingTime , Fn1 , Mult , Offset )

Fn1(Determines the lowest frequency that will be notched out by the sync filter.CR6,CR300,CR1000x) Integ(Time in microseconds to integrate. CR800,CR1000,CR3000) VoltDiff ( Variable , Reps , Range , Channel , RevDiff , SettlingTime , Fn1 , Mult , Offset )

CDMs Increase the channel count of your dataloggers and allow you to make multiple measurements simultaneously with the datalogger, rather than multiplexing one measurement at a time.

Burst(Number of consecutive measurements on the same channel) VoltDiff ( Variable , Reps , Range , Channel , RevDiff , SettlingTime , Fn1 , Mult , Offset ) Note: The Measurement Burst rate is determined by the Fn1 for the CR6 CR300 and CR1000x dataloggers. For the CR800,CR1000,and CR3000 the settling time parameter is used to determent the Burst rate. VoltDiff ( Variable , 5 , Range , -1 , False , SettlingTime , Fn1 , Mult , Offset )

Serving Data Examples

Serving Data

FTP- Most commonly, FTPClient() is used to send data or image files from the datalogger’s local file system to a remote FTP server hosted by a computer or another datalogger CR300 – Fast, Requires lots of RAM only 512KB available CR1000 – Extremely Slow, 4MB of RAM available CR1000X/CR6 – Fast, 4MB of RAM available

EmailRelay() Demonstration Approximate time to process CR1000 35 seconds CR6 10 seconds CR300 10 seconds CR1000X 10 seconds

Speed Summary Pipeline Mode Measurement Hardware CR1000 vs CR6 vs CDM Data Storage Speed vs Measurement speed Instruction parameters Reps, Fn1, Settling time, Burst Serving Data

Thank You