User Guide Integration of ShapeAccelArray and Campbell Scientific CR800/CR1000 Data Loggers Measurand Inc. 2111 Hanwell Rd. Fredericton, NB, Canada E3C 1M7 tel: 506-462-9119 fax: 506-462-9095 Email: SAAsupport@measurand.com http://www.measurandgeotechnical.com Copyright © 2012 by Measurand Inc.
SAA CR Logger Integration Guide Notices Measurand shall have no liability for incidental or consequential damages of any kind arising out of the sale, installation, or use of its products. Please read this document and any notes and instructions carefully before proceeding with installation and operation. The information herein is subject to change without prior notification.
SAA CR Logger Integration Guide Table of Contents Table of Contents ......................................................................................................................................... iii List of Figures ............................................................................................................................................... iv Preface ..................................................................................................................................
SAA CR Logger Integration Guide List of Figures Figure 2.1: SAA232 and SAA232-5 for connecting SAA to COM ports on CR800/CR1000 loggers. Note SAA wiring diagram on the side panel. ............................................................................................................................ 1 Figure 2.2: Wiring diagram for CR1000 with SAA232.............................................................................................. 2 Figure 2.3: Wiring diagram for CR1000 with SAA232-5. .....
SAA CR Logger Integration Guide Preface In many cases it is not convenient or desirable to collect data directly from an SAA using SAARecorder. In these cases, SAA data can be collected using Campbell Scientific’s CR800 or CR1000 data loggers. This user guide presents information needed to correctly set up a Campbell Scientific logger and SAAs for data collection. In this guide, for simplicity’s sake, only CR1000 is mentioned in most cases.
SAA CR Logger Integration Guide 1. Introduction ShapeAccelArrays (SAA) can be configured for use with a CR800 or CR1000. This is accomplished using a Measurand “SAA232” (or “SAA232-5”) device and “SAACR1000 Integration Suite” software.
SAA CR Logger Integration Guide Figure 2.2: Wiring diagram for CR1000 with SAA232. An example setup using a CR1000, 2 SAA232s, and an Airlink Raven XT modem is illustrated in Figure 2.4. If the back panel assembly and wiring has been done by Measurand, you will only need to connect the SAA wires to the SAA232 or SAA232-5 channel. This should be done prior to connecting the power to the logger (i.e.
SAA CR Logger Integration Guide Figure 2.3: Wiring diagram for CR1000 with SAA232-5.
SAA CR Logger Integration Guide Figure 2.4: Example CR800 & SAA Integration using one SAAREG, two SAA232, a CR800 logger, and a Raven XT Wireless Modem. 3. Checking SAA Performance Prior to Installation Prior to installing the SAA, it is desirable to check the performance of the SAA to verify that no damage was incurred during shipping. This is done by using the Advanced Diagnostics applications in SAARecorder software.
SAA CR Logger Integration Guide the SAA232 device to your laptop by means of a “SAA232-USB” Connector (Figure 3.1). The SAA232-USB 4-pin green connector plugs into the top receptacle on the SAA232. Power is supplied to the SAA232 by connecting the red (12V) and black (Ground) wires to available ports on the CR1000 (Figure 2.2). The USB connector is then plugged into an available USB port on a computer running SAARecorder.
SAA CR Logger Integration Guide Figure 3.2: Opening the Diagnostics Tests window in SAARecorder. Figure 3.3: Graph for Total Acceleration Check in SAARecorder.
SAA CR Logger Integration Guide 4. Using LoggerNet Setup of the CR1000 to collect SAA data requires a basic understanding of Campbell Scientific’s LoggerNet software. For more information on Campbell Scientifics’s LoggerNet software, visit the Campbell Scientific website to obtain the user manual (http://www.campbellsci.ca/). The LoggerNet toolbar is shown in Figure 4.1.
SAA CR Logger Integration Guide Figure 5.1: SAACR_FileGen utility. Reading Interval: The frequency at which SAA observations are made within the program (also known as ‘scan interval’). An SAAF can perform measurements at 400Hz (see above), thus taking an average of 1000 samples (typical value) in less than 10 seconds. However, sufficient time must be included to account for other commands and functions within the CR1000. The number of SAAFs connected to a CR1000 also affects the collection time.
SAA CR Logger Integration Guide Figure 5.2: SAA232 or SAA232-5 Channel selection. Figure 5.3: Saving a logger program created using the SAACR_FileGen utility.
SAA CR Logger Integration Guide 6. Compiling SAA Program Files Once the main program has been successfully generated, it can be viewed using the LoggerNet ‘CRBasic Editor’. At this time, it is also possible to add other code for instruments or powering the SW12V port on the logger. Once the code has been added, it should be compiled to make sure that there are no errors. To successfully compile the new program, the SAA_Include file generated with the program is also required.
SAA CR Logger Integration Guide Figure 7.1 Selecting File Control in the LoggerNet Connect utility. Once the File Control window opens, the ‘Send’ option is used to place the SAA_Include file on the CR1000, as illustrated in Figure 7.2. The ‘Run Now’ and ‘Run On Power-up’ options should be deselected when prompted (Figure 7.3) (since the SAA_Include file will not run as a standalone application). Note: The SAA_Include file must be placed on the CR1000 before the main program will run.
SAA CR Logger Integration Guide Figure 7.2: Selecting 'Send' option in ‘File Control’. Figure 7.3: Selecting ‘Run Options’ when sending files to CR1000 logger.
SAA CR Logger Integration Guide Figure 7.4: Sending a program to the CR1000. 8. Data File Management It is critical that the data files generated by the CR1000 are effectively managed. The output folders for CR1000 data files are specified under the ‘Data Files’ tab in the LoggerNet ‘Setup’ utility (Figure 8.1). By default, the data is stored in the C:\CampbellSci\LoggerNet directory and given a name of “DataloggerName_TableName_#.dat”.
SAA CR Logger Integration Guide Figure 8.1: Specifying the destination of data files using the LoggerNet Setup utility Note: Before a new project begins, any CR1000 data files residing in the output file directory should be removed. Otherwise, data from the new project may get concatenated to the existing data file, causing abnormalities in the results. 9. Manual Data Collection For each setup, the PROJECT_INFO, SAAx_DATA and SERIAL_ERRORS data files must be recorded.
SAA CR Logger Integration Guide Note: If your PC is using Daylight Savings Time, take care NOT to disrupt the time setting currently employed by the CR1000. If the station clock is adjusted to match Daylight Savings Time on your PC, gaps or overwrites in the data file will occur. If you need to adjust the station clock, make sure you set your PC clock to Standard Time. Figure 9.1: Disabling scheduled data collection.
SAA CR Logger Integration Guide Figure 9.2: Collecting data using the LoggerNet ‘Connect’ utility. 10. Automated Data Collection Once the manual data collection process has been tested, the data collection process can be automated by specifying the desired data collection interval in the ‘Schedule’ tab of the LoggerNet ‘Setup’ utility (Figure 10.1). Check the ‘Scheduled Collection Enabled’ checkbox.
SAA CR Logger Integration Guide Figure 10.1: Enabling scheduled data collection. 11. Manual Conversions of SAA Data SAA data collected using the CR1000 can be manually converted to a format viewable in the Measurand SAA3D or SAAView viewer software using the Measurand SAACR_raw2data utility. Detailed instructions are found in the SAACR_raw2data instruction manual (located in the installation directory). Before data can be converted, calibration files for your SAAs must reside on your PC.
SAA CR Logger Integration Guide Once the conversion is completed, you will be prompted on whether or not you want to view the data using either SAA3D or SAAView. 12. Viewing SAA Data When proceeding to view SAA data directly after a SAACR_raw2data conversion, you will be prompted to select which SAA viewer you would like to use. In most cases, you can use either SAAView or SAA3D. However, if you are converting convergence data, you can only view the data in SAAView.
SAA CR Logger Integration Guide Figure 12.2: Quickview of absolute shape plots for SAA in SAAView. Figure 12.3: Viewing absolute shape for SAA in Main View of SAAView 13. Automated Data Conversions Once at least one successful manual conversion has been completed, SAA data can be automatically converted to a format viewable in SAA3D or SAAView software.
SAA CR Logger Integration Guide LoggerNet ‘Task Master’ utility. The first manual conversion is necessary to generate the pref_project.txt file which contains conversion settings for subsequent operations.
SAA CR Logger Integration Guide To configure the task, click on the ‘Configure Task’ button. Once the configure screen is open (Figure 13.2), check ‘Execute File’ and browse to C:\Measurand Inc\SAA3D\SAACR_raw2data.exe (or the appropriate folder containing this file). Under ‘Command Line Options’ you must specify the pref_project.txt file that was generated when the first manual conversion was completed. It should be located in the same directory as the raw data.
SAA CR Logger Integration Guide Note: Any of the files required by SAACR_raw2data (E.g., calibration files, multi_saa_allcart.txt) cannot be open while the process is running. Otherwise an error will be generated. Figure 13.3: Viewing the status of scheduled tasks in Task Master. 14.Saving Data in Overwrite File Mode If data is to be collected over long time periods, eventually the SAA data files will become very large and require an increasing amount of time to process.
SAA CR Logger Integration Guide file (text file of all Cartesian coordinate records) will no longer be updated in this mode, just the multi_saa_curcart.txt (text file of most recent Cartesian coordinate records). Figure 14.1: Switching the "Data File Output" option in the LoggerNet 'Setup' utility to 'Overwrite Existing File'. If the SAA Data file is viewed when ‘Overwrite File’ is implemented, only the most recent data records will be contained in the file.
SAA CR Logger Integration Guide Appendix I: Integrating other Sensors into the Main Program (Advanced) ** Please contact Measurand if you need assistance in this procedure. The below example is not exactly how the code looks today, but it is similar. ** When adding additional sensor programming to the main SAA program, conflicts can arise with existing programming. The SAA_Include references COM Ports 1-4.
SAA CR Logger Integration Guide ' Enter the number of Strain Gages (SG) to be monitored: Const NUM_SGS = 20 '>>>>>>>>>>>>>>> START <<<<<<<<<<<<<<< ' Enter the number of raw data samples to average for each measurement: ' Samples can range from 100-25500; samples are collected at 400 Hz, thus ~64 seconds are required for NUM_TO_AVG = 25500 Const NUM_TO_AVG = 1000 '>>>>>>>>>>>>>>> END <<<<<<<<<<<<<<< '>>>>>>>>>>>>>>> START <<<<<<<<<<<<<<< ' Enter the maximum number of octets (8 segment units) of any single
SAA CR Logger Integration Guide '>>>>>>>>>>>>>>> START <<<<<<<<<<<<<<< ' Input number of masked segments: Const NUM_MASKED_SEGMENTS = 0 '>>>>>>>>>>>>>>> END <<<<<<<<<<<<<<< '>>>>>>>>>>>>>>> START <<<<<<<<<<<<<<< ' Input tilt alarm in degrees Const TILT_ALARM_COUNTS = 20 '>>>>>>>>>>>>>>> END <<<<<<<<<<<<<<< '>>>>>>>>>>>>>>> START <<<<<<<<<<<<<<< ' Input reference measurement: (1 = initial readings, 2 = previous readings) Const REF_MEAS = 2 '>>>>>>>>>>>>>>> END <<<<<<<<<<<<<<< '>>>>>>>>>>>>>>> START <<<<<<
SAA CR Logger Integration Guide 'Input email parameter strings (as constants), Message String & Result Variable Const ServerAddr="mail.1xbell.ca" Const ToAddr="youremail@yourcompany.com" Const FromAddr="youremail@yourcompany.com" Const Subject="CR1000 Alarm Notification" Const Attach="" Const UserName="" Const Password="" Const CRLF = CHR(13)+CHR(10) '>>>>>>>>>>>>>>> END <<<<<<<<<<<<<<< Include "CPU:SAA_Include_V2_65.
SAA CR Logger Integration Guide Public SAA1_REF_ACC_VALUES(MAX_NUM_OCTETS,NUM_SENSORS_PER_OCTET) As Float Public SAA1_SAATOP_VOLTAGE As Float Public SAA1_SAATOP_CURRENT As Float Public SAA1_SAATOP_TEMPERATURE As Float 'SAA2: Public SAA2_ACC_VALUES(MAX_NUM_OCTETS,NUM_SENSORS_PER_OCTET) As Float Public SAA2_TEMP_VALUES(MAX_NUM_OCTETS) As Float Public SAA2_REF_ACC_VALUES(MAX_NUM_OCTETS,NUM_SENSORS_PER_OCTET) As Float Public SAA2_SAATOP_VOLTAGE As Float Public SAA2_SAATOP_CURRENT As Float Public SAA2_SAATOP_TE
SAA CR Logger Integration Guide 'Logger Diagnostics: DataTable(LOGGER_DIAGNOSTICS,true,-1) Sample(1,LOGGER_VOLTAGE,Float) Sample(1,LOGGER_TEMPERATURE,Float) EndTable 'SAA Data Table Values (each SAA requires a data table): 'SAA1: DataTable(SAA1_DATA,True,-1) Sample(1,SERIAL_NUMS(1,1),Long) Sample(SAA1_NUM_OCTETS*NUM_SENSORS_PER_OCTET,SAA1_ACC_VALUES(),Float) Sample(SAA1_NUM_OCTETS,SAA1_TEMP_VALUES(),Float) EndTable DataTable(SAA1_DIAGNOSTICS,True,-1) Sample(1,SERIAL_NUMS(1,1),Long) Sample(1,SAA1_SAATOP
SAA CR Logger Integration Guide Sample(1,SAA2_SAATOP_CURRENT,Float) Sample(1,SAA2_SAATOP_TEMPERATURE,Float) EndTable ' SG Data Table DataTable(SG_DATA, True, -1) Sample(NUM_SGS*6, SG(), IEEE4) EndTable ' EPC Data Table DataTable(EPC_DATA, True, -1) Sample(NUM_EPCS*6, EPC(), IEEE4) EndTable 'SUBROUTINES '------------------------------------------------------------------------------------------------------------------------'*********************************************************************************
SAA CR Logger Integration Guide 'add calls to each SAA and store data in respective tables: '--------------------------------------------------------- 'SAA1: If HIGH_RES_SAA Call GetHighResSAAData(SAA1_ACC_VALUES,SAA1_TEMP_VALUES,1) Else Call GetSAAData(SAA1_ACC_VALUES,SAA1_TEMP_VALUES,1) EndIf CallTable SAA1_DATA If SAA1_SAATOP>0 Call GetSAATopData(SAA1_SAATOP_VOLTAGE,SAA1_SAATOP_CURRENT,SAA1_SAATOP_TEMPERATURE,1) CallTable SAA1_DIAGNOSTICS EndIf 'SAA2: If HIGH_RES_SAA Call GetHighResSAAData(
SAA CR Logger Integration Guide EndIf CallTable SAA2_DATA If SAA2_SAATOP>0 Call GetSAATopData(SAA2_SAATOP_VOLTAGE,SAA2_SAATOP_CURRENT,SAA2_SAATOP_TEMPERATURE,2) CallTable SAA2_DIAGNOSTICS EndIf 'record serial errors table: CallTable SERIAL_ERRORS 'turn off outputting of project descriptor info after first run: FIRST_SCAN = false NextScan EndSub Sub GetVWData() Scan(1,sec,0,1)'need this dummy scan to auto-allocate data tables 'Get Piezometer Data SerialOpen (COM3,38400,4,0,0) 'SerialOpen (COM4,384
SAA CR Logger Integration Guide CallTable EPC_DATA SerialClose(COM3) 'SerialClose(COM4) NextScan EndSub 'DEFINE MAIN PROGRAM: '------------------------------------------------------------------------------------------------------------------------- BeginProg 'setup project descriptors: '--------------------------'>>>>>>>>>>>>>>> START <<<<<<<<<<<<<<< ' Enter the Project Title PROJECT_NAME = "TEST" '>>>>>>>>>>>>>>> END <<<<<<<<<<<<<<< NUMBER_SAAS = NUM_SAAS NUMBER_PIEZO_STRINGS = NUM_PIEZO_STRINGS AVERA
SAA CR Logger Integration Guide 'SAA1 - S/N: 50115 'nodes 50115 50207 50241 50242 50253 50255 50274 50287 50292 50316 50350 50511 50512 50527 51498 SERIAL_NUMS(1,1) = 50115 SERIAL_NUMS(1,2) = 50207 SERIAL_NUMS(1,3) = 50241 SERIAL_NUMS(1,4) = 50242 SERIAL_NUMS(1,5) = 50253 SERIAL_NUMS(1,6) = 50255 SERIAL_NUMS(1,7) = 50274 SERIAL_NUMS(1,8) = 50287 SERIAL_NUMS(1,9) = 50292 SERIAL_NUMS(1,10) = 50316 SERIAL_NUMS(1,11) = 50350 SERIAL_NUMS(1,12) = 50511 SERIAL_NUMS(1,13) = 50512 SERIAL_NUMS(1,14) = 50527 SERIAL_NU
SAA CR Logger Integration Guide 'declare the number of octets for each SAA: '------------------------------------------ 'SAA 1: NUM_OCTETS_INDEX(1) = SAA1_NUM_OCTETS 'SAA2: NUM_OCTETS_INDEX(2) = SAA2_NUM_OCTETS 'declare the com port assignment for each SAA: '--------------------------------------------- 'SAA1: COM_PORT_INDEX(1) = SAA1_COM_PORT SAA232_5_PORT_INDEX(1) = SAA1_232_5_PORT 'SAA2; COM_PORT_INDEX(2) = SAA2_COM_PORT SAA232_5_PORT_INDEX(2) = SAA2_232_5_PORT 'declare the orientation of each SAA
SAA CR Logger Integration Guide NUM_CRC_ERRORS = 0 NUM_RANGE_ERRORS = 0 'initialize SAATOP parameters 'SAA1: SAA1_SAATOP_VOLTAGE = 0.0 SAA1_SAATOP_CURRENT = 0.0 SAA1_SAATOP_TEMPERATURE = 0.0 'SAA2: SAA2_SAATOP_VOLTAGE = 0.0 SAA2_SAATOP_CURRENT = 0.0 SAA2_SAATOP_TEMPERATURE = 0.
SAA CR Logger Integration Guide Call GetVWData() Call GetArrayData() Delay(0,10,2) Next PRELIM_COUNT 'now do actual scan indefinitely '>>>>>>>>>>>>>>> START <<<<<<<<<<<<<<< Scan(30,Min,0,0) 'power switching If Power_Save_Flag = True Then If TimeIntoInterval(510,1440,Min) Then SW12(1) EndIf If TimeIntoInterval(1170,1440,Min) Then SW12(0) EndIf Else SW12(1) EndIf ' get VW sensor data Call GetVWData() ' get SAA data May 2012 37
SAA CR Logger Integration Guide Call GetArrayData() NextScan '>>>>>>>>>>>>>>> END <<<<<<<<<<<<<<< EndProg May 2012 38