WELLOG                          DAQ SOFTWARE

 

REVISED: 5-22-2008

© 2005 - 2008 WELLOG>

All Rights Reserved

 

Software can be written in Low-Level language or High-Level Language.

 

Low-Level language is considered to be assembly language.  Assembly language uses instructions that are “assembled” into native microprocessor op codes and operands. Assembly language programs are very fast and efficient. Development may be time consuming and requires that great attention be given to every detail. Micro controllers are complete computer systems on a single chip. Companies like Microchip http://www.microchip.com make many different types of microcontrollers. The Microchip PIC microcontrollers are a good example of a low cost – high performance microcontroller. They are reasonably easy to program in low-level assembly language.

 

Digital Signal Processors:

 

Advanced microcontrollers called DSP controllers have Digital Signal Processing capabilities. WELLOG uses the latest Digital Signal Processor technology and high speed microcontrollers in current applications.

 

ASSEMBLY LANGUAGE:

 

The Microchip PIC16F877 is an example of a microcontroller.  It is a high performance Reduced Instruction Set Computer (RISC) microcontroller. It has 35 single word instructions. This microcontroller is a complete Data Acquisition (DAQ) system on a single chip.

 

One common instruction performs addition. The contents of the “working” register (W) may be added to a literal value using the instruction ADDLW. In a program it looks like this:

 

                        ADDLW            14

 

If the W register contained the value of 3 and the instruction above is executed then the result would be 17 which is stored into the W register.

 

The contents of two registers can be added using a similar instruction, ADDWF.

 

                        ADDWF            14, F

 

In this case the contents of the W register are added to the contents of register 14 and the result is stored in register 14.

 

A slight variation is:

 

                        ADDWF            14,W

 

In this case the contents of the W register are added to the contents of register 14 and the result is stored in register W.

 

In order to place a value into the W register, the following instruction may be used:

 

                        MOVLW            14

 

This instruction, called a “move” instruction moves the literal value 14 into register W.

 

Advanced high speed controllers such as the PIC18F8722 used on the V30 Logger use similar instructions.

 

HIGH-LEVEL LANGUAGE:

 

High-level languages are languages like BASIC, COBOL, FORTRAN, C, C++ and PASCAL. Each language is suited to a particular application. FORTRAN stands for formula translation and is used in mathematical applications. COBOL stands for Consumer Oriented Business Language and is used in business applications. BASIC and C are languages well suited to computer input/output and Data Acquisition (DAQ) applications.

 

BASIC and C programs are compiled using a compiler to convert instructions into an executable program containing machine level op-codes and operands. PowerBASIC http://www.powerbasic.com is an example of a BASIC language compiler.  PowerBASIC 8 for Windows is the current compiler used for WELLOG virtual instrumentation panels.

 

Examples of BASIC:

 

                        A = 3

 

                        B = A + 14

 

                        PRINT B

 

                        PRINT “THE ANSWER IS ”; B

 

BASIC can PEEK and POKE into memory. Examples of PEEK and POKE:

 

                        A = PEEK(5000)   

 

The contents of memory location 5000 are placed in variable A. PEEK is used to read computer memory.

 

                        POKE 5000, 3

 

The value 3 is placed into memory location 5000.

 

BASIC instructions INP and OUT are used to input and output values to and from computer i/o space.

 

                        A = INP(300)

 

Places the value contained in i/o space 300 into variable A.

 

                        OUT 300, 5

 

Places the value 5 into i/o space 300.

 

A typical PowerBASIC program that operates a DAQ card is DAQ2DISK.BAS.

 

This program is referred to as “source code” it is compiled using a BASIC compiler like PowerBASIC . Compilers convert BASIC program source code into executable programs that operate under DOS or Windows. These executable programs are launched using desktop icons in Windows.

 

Real Time Operating System (RTOS):

 

Another typical BASIC program that receives high speed serial data from an RTOS logging system and logs the data to a file on Flash memory stick is BLKBOX.BAS.

 

Windows compatible Software can be written in Visual BASIC or Visual C++, and PowerBASIC 8.1.  These programs have the look and feel of Windows.

 

WELLOG has Windows “virtual panels” that operate under Windows XP and other Windows operating systems that drive our acquisition systems.

 

Software in any of the forms described above operate on a hardware platform selected by the user.

 

ACQUISITION SOFTWARE:

 

Software is needed to acquire data using an acquisition system, communicate with a PC, display and store the data in memory or hard drive.

 

DISPLAY SOFTWARE:

 

Software is needed to provide a representative display of the acquired data. WELLOG has NEW Well Logging Software!

 

WELLOG Well Logging Software saves logs in an easy to display format that allows editing, archiving, sending by email and printing.

 

PRESENTATION SOFTWARE:

 

Additional LogPlot presentation software can be used to provide a hardcopy of the display data.

 

WELLOG has presentation software for acquisition applications.

 

x-y deviation:

 

 

Strip Chart:

 

View ccl log

 

View sp_500

 

View sp_cal4

 

View step demo

 

API Log Format:

 

View api file

 

View api file v1

 

View well plot