- DL manuals
- Campbell
- Measuring Instruments
- CR1000
- Operator's Manual
Campbell CR1000 Operator's Manual - page 448
Section 8. Operation
Page source template:
ListFiles Response
Path | Is Directory | Size | Last Write | Run Now | Run On Power Up | Read Only | Paused |
CPU: | true | 50000 | YYYY-mm-dd hh:mm:ss.xxx | false | false | false | false |
CPU:lights-web.cr1 | false | 16994 | YYYY-mm-dd hh:mm:ss.xxx | true | true | false | false |
XML Response
When xml is entered in the
ListFiles format parameter, the response will be
formated as CSIXML
(p. 90)
with a
ListFilesResponse root element name.
Following is an example response.
is_dir="true" 448 O pe rat o r's m anual cr1000 measurement and control system preliminary for os v.28: 4/13/15 want to get going? Go to the quickstart (p. 41) section. Want to see notes pertaining to this preliminary manual release? Go to release notes (p. 34) . C o p y r i g h t © 2 0 0 0 – 2 0 1 5 c a m p b e l l ... Warranty the cr1000 measurement and control datalogger is warranted for three (3) years subject to this limited warranty: limited warranty: products manufactured by csi are warranted by csi to be free from defects in materials and workmanship under normal use and service for twelve months from the d... Assistance products may not be returned without prior authorization. The following contact information is for us and international customers residing in countries served by campbell scientific, inc. Directly. Affiliate companies handle repairs for customers within their territories. Please visit www... Precautions danger — many hazards are associated with installing, using, maintaining, and working on or around tripods, towers, and any attachments to tripods and towers such as sensors, crossarms, enclosures, antennas, etc. Failure to properly and completely assemble, install, operate, use, and mai... • prior to performing site or installation work, inform all utility companies and have all underground utilities marked. • comply with all electrical codes. Electrical equipment and related grounding devices should be installed by a licensed and qualified electrician. Elevated work and weather • exe... Table of contents 1. Introduction ................................................................ 33 1.1 hello .................................................................................................. 33 1.2 typography .......................................................................... Table of contents 5.1.2.4 strain measurements — overview ..................................... 68 5.1.3 pulse measurements — overview ................................................ 68 5.1.3.1 pulses measured .................................................................. 69 5.1.3.2 pulse-input ... Table of contents 5.3.12.1 protection from moisture — overview ............................ 93 5.3.12.2 protection from voltage transients .................................. 94 5.3.12.3 factory calibration ........................................................... 94 5.3.12.4 internal battery — det... Table of contents 7.8.2 writing and editing programs .................................................... 125 7.8.2.1 short cut programming wizard ........................................ 125 7.8.2.2 crbasic editor ................................................................. 125 7.8.2.2.1 inser... Table of contents 7.9.1 advanced programming techniques .......................................... 169 7.9.1.1 capturing events ............................................................... 169 7.9.1.2 conditional output ............................................................ 170 7.9.1.3 grou... Table of contents 7.9.14.2.1 measurements from 101 to 600 hz 2 ..................... 232 7.9.14.3 measurement rate: 601 to 2000 hz ................................ 233 7.9.15 measurement: prt ................................................................... 234 7.9.15.1 measuring pt100s (100 Ω prt... Table of contents 7.9.21.4 ftp server ...................................................................... 294 7.9.21.5 ftp client ....................................................................... 294 7.9.21.6 telnet .............................................................................. Table of contents 8.1.6.2 sdi-12 sensor support — details .................................... 363 8.1.7 field calibration — overview ................................................... 363 8.1.8 cabling effects ........................................................................... 364 8.1.8.1 ... Table of contents 8.5.3 linking pakbus nodes: neighbor discovery ............................. 395 8.5.3.1 hello-message .................................................................. 396 8.5.3.2 beacon............................................................................... 396 8.5.3.3 he... Table of contents 8.6.3.12 dns ................................................................................. 423 8.6.3.13 smtp .............................................................................. 423 8.6.3.14 web api ........................................................................ Table of contents 9.3 factory calibration or repair procedure .............................................. 476 10. Troubleshooting .................................................... 479 10.1 troubleshooting — essential tools ................................................... 479 10.2 troublesho... Table of contents 11.1 terms ................................................................................................. 507 11.2 concepts ............................................................................................. 533 11.2.1 accuracy, precision, and resolution ................. Table of contents a.7.10.1 histograms ..................................................................... 573 a.8 string functions .................................................................................. 574 a.8.1 string operations ........................................................... Table of contents g.3.5 passive signal conditioners lists .............................................. 647 g.3.5.1 resistive-bridge tim modules list ................................. 647 g.3.5.2 voltage-divider modules list .......................................... 647 g.3.5.3 current-shunt modul... Table of contents figure 9. Short cut compile confirmation ................................................... 54 figure 10. Pc200w main window ............................................................... 55 figure 11. Pc200w monitor data tab – public table ................................. 56 fi... Table of contents figure 61. Zero procedure start .................................................................. 227 figure 62. Zero procedure finish ................................................................ 227 figure 63. Pt100 in four-wire half-bridge ...................................... Table of contents figure 109. Loggernet network-map setup: com port ............................ 403 figure 110. Loggernet network-map setup: pakbusport .......................... 404 figure 111. Loggernet network-map setup: dataloggers ......................... 404 figure 112. Preconfigured html ho... Table of contents table 25. Crbasic example. Array assigned expression: transpose an array ............................................................................................... 190 table 26. Crbasic example. Array assigned expression: comparison / boolean evaluation .......................... Table of contents table 71. Resistive-bridge circuits with voltage excitation ..................... 339 table 72. Ratiometric-resistance measurement accuracy ......................... 342 table 73. Straincalc() instruction equations .............................................. 343 table 74. Auto c... Table of contents table 122. Listfiles api command parameters ......................................... 446 table 123. Listfiles api command response ............................................ 446 table 124. Newestfile api command parameters ..................................... 450 table 125. Spe... Table of contents table 168. Baudrate() array, keywords, and default settings ................... 611 table 169. Beacon() array, keywords, and default settings ..................... 612 table 170. Status/settings/dti: c .............................................................. 612 table 171. St... Table of contents table 219. Cf-card storage module .......................................................... 653 table 220. Starter software ......................................................................... 654 table 221. Datalogger support software ........................................... Table of contents crbasic example 34. Programming with bool8 and a bit-shift operator ............................................................................................... 200 crbasic example 35. Nsec — one element time array ........................ 203 crbasic example 36. Nsec — two elem... 1. Introduction 1.1 hello whether in extreme cold in antarctica, scorching heat in death valley, salt spray from the pacific, micro-gravity in space, or the harsh environment of your office, campbell scientific dataloggers support research and operations all over the world. Our customers work a spec... Section 1. Introduction • bold — crbasic instructions within the body text, input commands, output responses, gui commands, text on product labels, names of data tables. • page numbers — in the pdf version of the manual, hyperlink to the page represented by the number. • italic — glossary entries an... Section 1. Introduction newfile() instruction operating system management period averaging precision of variables programming route() instruction security skipped records subroutines sw12 and 12v terminals task sequencer terminal mode time and clock troubleshooting watchdog resets 35. 2. Cautionary statements • danger: fire, explosion, and severe-burn hazard. Misuse or improper installation of the internal lithium battery can cause severe injury. Do not recharge, disassemble, heat above 100 °c (212 °f), solder directly to the cell, incinerate, or expose contents to water. Dispose... 3. Initial inspection • check the ships with tab at http://www.Campbellsci.Com/cr1000 for a list of items shipped with the cr1000. Among other things, the following are provided for immediate use: o screwdriver to connect wires to terminals o type-t thermocouple for use in the system quickstart (p. ... 4. System quickstart reading list • quickstart (p. 41) • specifications (p. 97) • installation (p. 99) • operation (p. 303) this tutorial presents an introduction to cr1000 data acquisition and a practical programming and data retrieval exercise. 4.1 data-acquisition systems — quickstart related top... Section 4. System quickstart figure 1. Data-acquisition system components 4.2 sensors — quickstart related topics: • sensors — quickstart (p. 42) • measurements — overview (p. 62) • measurements — details (p. 303) • sensors — lists (p. 649) sensors transduce phenomena into measurable electrical form... Section 4. System quickstart o modbus o dnp3 o rs-485 refer to the appendix sensors — lists (p. 649) for a list of specific sensors available from campbell scientific. A library of sensor manuals and application notes are available at www.Campbellsci.Com to assist in measuring many sensor types. The... Section 4. System quickstart figure 2. Wiring panel 4.4 power supplies — quickstart related topics: • power supplies — specifications • power supplies — quickstart (p. 44) • power supplies — overview (p. 85) • power supplies — details (p. 100) • power supplies — products (p. 657) • power sources (p.... Section 4. System quickstart connects to g. The connection is internally reverse-polarity protected. The cr1000 is internally protected against accidental polarity reversal on the power inputs. 4.4.1 internal battery — quickstart related topics: • internal battery — quickstart (p. 45) • internal bat... Section 4. System quickstart 4.6 datalogger support software — quickstart reading list: • datalogger support software — quickstart (p. 46) • datalogger support software — overview (p. 95) • datalogger support software — details (p. 450) • datalogger support software — lists (p. 654) datalogger suppo... Section 4. System quickstart • cr1000 datalogger • power supply with an output between 10 to 16 vdc • thermocouple, 4 to 5 inches long, which is shipped with the cr1000 • personal computer (pc) with an available nine-pin rs-232 serial port, or with a usb port and a usb-to-rs-232 adapter • nine-pin f... Section 4. System quickstart figure 3. Power and serial communication connections 4.7.3 pc200w software setup 1. Install pc200w software onto the pc. Follow on-screen prompts during the installation process. Use the default folders. 2. Open pc200w. Your pc should display a window similar to figure p... Section 4. System quickstart figure 4. Pc200w main window table 1. Pc200w ezsetup wizard example selections start the wizard to follow table entries. Screen name information needed introduction provides an introduction to the ezsetup wizard along with instructions on how to navigate through the wiza... Section 4. System quickstart 4.7.4 write crbasic program with short cut short cut objectives: • create a program to measure the voltage of the cr1000 power supply, temperature of the cr1000 wiring-panel, and ambient air temperature using a thermocouple. • when program is downloaded to the cr1000, it... Section 4. System quickstart figure 5. Short cut temperature sensor folder 4.7.4.2 procedure: (short cut steps 6 to 7) 6. Double-click type t (copper-constantan) thermocouple to add it into the selected column. A dialog window is presented with several fields. By immediately clicking ok, you accept ... Section 4. System quickstart figure 6. Short cut thermocouple wiring 4.7.4.3 procedure: (short cut step 8) historical note in the space-race era, measuring thermocouples in the field was a complicated and cumbersome process incorporating a three-junction thermocouple, a micro-voltmeter, a vacuum fla... Section 4. System quickstart 8. Click next to advance to the outputs tab, which displays the list selected sensors to the left and data storage tables to the right under selected outputs. Figure 7. Short cut outputs tab 4.7.4.4 procedure: (short cut steps 9 to 12) 9. Two output tables ( 1 table1 and... Section 4. System quickstart figure 8. Short cut outputs tab 4.7.4.5 procedure: (short cut steps 13 to 14) 13. Click finish to compile the program. Give the program the name mytemperature. A summary screen will appear showing the compiler results. Any errors during compiling will be displayed. Figur... Section 4. System quickstart 14. Close this window by clicking on x in the upper right corner. 4.7.5 send program and collect data pc200w datalogger support software objectives: • send the crbasic program created by short cut in the previous procedure to the cr1000. • collect data from the cr1000. •... Section 4. System quickstart figure 11. Pc200w monitor data tab – public table 4.7.5.3 procedure: (pc200w step 5) 5. To view the onemin table, select an empty cell in the display area. Click add. In the add selection window tables field, click on onemin, then click paste. The onemin table is now dis... Section 4. System quickstart figure 12. Pc200w monitor data tab — public and onemin tables 4.7.5.4 procedure: (pc200w step 6) 6. Click on the collect data tab and select data to be collected and the storage location on the pc. Figure 13. Pc200w collect data tab 57. Section 4. System quickstart 4.7.5.5 procedure: (pc200w steps 7 to 10) 7. Click the onemin box so a check mark appears in the box. Under what to collect, select new data from datalogger. This selects the data to be collected. 8. Click on a table in the list to highlight it, then click change table's... Section 4. System quickstart 4.7.5.6 procedure: (pc200w steps 11 to 12) 11. Click on to open a file for viewing. In the dialog box, select the cr1000_onemin.Dat file and click open. 12. The collected data are now shown. Figure 15. Pc200w view data table 4.7.5.7 procedure: (pc200w steps 13 to 14) 13.... Section 4. System quickstart figure 16. Pc200w view line graph 60 5. System overview reading list • quickstart (p. 41) • specifications (p. 97) • installation (p. 99) • operation (p. 303) a campbell scientific data-acquisition system is made up of the following basic components: • sensors • datalogger, which includes: o clock o measurement and control circuitry o ... Section 5. System overview figure 17. Data-acquisition system — overview 5.1 measurements — overview related topics: • sensors — quickstart (p. 42) • measurements — overview (p. 62) • measurements — details (p. 303) • sensors — lists (p. 649) 62. Section 5. System overview most electronic sensors, whether or not they are supplied by campbell scientific, can be connected directly to the cr1000. Manuals that discuss alternative input routes, such as external multiplexers, peripheral measurement devices, or a wireless sensor network, can be fou... Section 5. System overview ground. A differential measurement measures the high signal with reference to the low signal. Each configuration has a purpose, but the differential configuration is usually preferred. A differential configuration may significantly improve the voltage measurement. Followin... Section 5. System overview table 2. Differential and single-ended input terminals diff terminals se terminals 1h 1 1l 2 2h 3 2l 4 3h 5 3l 6 4h 7 4l 8 5h 9 5l 10 6h 11 6l 12 7h 13 7l 14 8h 15 8l 16 5.1.2.1.1 single-ended measurements — overview related topics: • single-ended measurements — overview (... Section 5. System overview however, be aware that because a single-ended measurement is referenced to cr1000 ground, any difference in ground potential between the sensor and the cr1000 will result in error, as emphasized in the following examples: • if the measuring junction of a thermocouple used ... Section 5. System overview a measurement of current is accomplished through the use of external resistors to convert current to voltage, then measure the voltage as explained in the section differential measurements — overview (p. 66). The voltage is measured with the cr1000 voltage measurement circ... Section 5. System overview figure 22. Full-bridge wiring example — pressure transducer 5.1.2.4 strain measurements — overview related topics: • strain measurements — overview (p. 68) • strain measurements — details (p. 342) • fieldcalstrain() examples (p. 223) strain gage measurements are usually as... Section 5. System overview • edge timing o resolution — 540 ns note a period-averaging sensor has a frequency output, but it is connected to a se terminal configured for period-average input and measured with the periodaverage() instruction (see section period averaging — overview (p. 70) ). 5.1.3.1... Section 5. System overview 5.1.3.3 pulse sensor wiring read more see the section pulse measurement tips (p. 356) an example of a pulse sensor connection is illustrated in figure pulse-input wiring example — anemometer switch (p. 70). Pulse sensors have two active wires, one of which is ground. Conne... Section 5. System overview always "listening", whereas period averaging may filter the noise by reason of being "asleep" most of the time. Pulse-count measurements are not appropriate for sensors that are powered off between scans, whereas period-average measurements work well since they can be plac... Section 5. System overview • sdi-12 devices: c • synchronous devices for measurement (sdm): c • smart sensors: c terminals, rs-232 port, and cs i/o port with the appropriate interface. • modbus or dnp3 network: rs-232 port and cs i/o port with the appropriate interface • other serial i/o devices: c ... Section 5. System overview figure 25. Terminals configurable for rs-232 input figure 26. Use of rs-232 and digital i/o when reading rs-232 devices 5.1.7 field calibration — overview related topics: • field calibration — overview (p. 73) • field calibration — details (p. 210) calibration increases ac... Section 5. System overview 5.1.8 cabling effects — overview related topics: • cabling effects — overview (p. 74) • cabling effects — details (p. 364) sensor cabling can have significant effects on sensor response and accuracy. This is usually only a concern with sensors acquired from manufacturers o... Section 5. System overview instructions between these instructions are given the same high priority as measurement instructions and do not slip into the scan buffer if processing time is increased. Prochipri and endprochipri may not be selectable in crbasic editor. You can type them in anyway, and t... Section 5. System overview 5.3.2 wiring panel — overview related topics • wiring panel — quickstart (p. 43) • wiring panel — overview (p. 76) • measurement and control peripherals (p. 366) the wiring panel of the cr1000 is the interface to most functions. These functions are introduced in the follow... Section 5. System overview table 4. Cr1000 wiring panel terminal definitions lab els se 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 com1 com2 com3 com4 diff ┌ 1 ┐ ┌ 2 ┐ ┌ 3 ┐ ┌ 4 ┐ ┌ 5 ┐ ┌ 6 ┐ ┌ 7 ┐ ┌ 8 ┐ t x r x t x r x t x r x t x r x h l h l h l h l h l h l h l h l vx1 vx2 vx3 p1 p2 c1 c2 c3 c4 c5 c6 ... Section 5. System overview 1 terminal expansion modules are available. 2 static, frequency-domain measurement 3 check the table current source and sink limits (p. 103) 4 requires an interfacing device for sensor input. See the table cs i/o to rs-232 interfaces (p. 651). 5.3.2.1 switched voltage outp... Section 5. System overview figure 28. Control and monitoring with c terminals 5.3.2.2 voltage excitation — overview related topics: • voltage and current excitation — specifications • voltage excitation — overview (p. 79) the cr1000 has several terminals designed to supply switched voltage to periph... Section 5. System overview 5.3.2.3 grounding terminals read more see grounding (p. 105). Proper grounding lends stability and protection to a data acquisition system. It is the easiest and least expensive insurance against data loss — and often the most neglected. The following terminals are provide... Section 5. System overview conditions, and to minimize the error associated with the measurement of underpowered sensors. See section power supplies — overview (p. 85). • 5v terminals: regulated 5 vdc at 300 ma. The 5 vdc supply is regulated to within a few millivolts of 5 vdc so long as the main po... Section 5. System overview 5.3.2.5.2 rs-232 ports note rs-232 communications normally operate well up to a transmission cable capacitance of 2500 picofarads, or approximately 50 feet of commonly available serial cable. • one nine-pin dce port, labeled rs-232, normally used to communicate with a pc r... Section 5. System overview 5.3.2.5.7 ethernet port read more see the section tcp/ip (p. 289). • ethernet capability requires a peripheral ethernet interface device, as listed in the appendix network links list (p. 652). 5.3.3 keyboard display — overview related topics: • keyboard display — overview ... Section 5. System overview • to insert a space ( spc) or change case (cap), press shift one to two times for the position, then press bkspc. • to insert a character not printed on the keyboard, enter ins , scroll down to character, press enter, then scroll up, down, left, or right to the desired cha... Section 5. System overview 5.3.4 measurement and control peripherals — overview related topics: • measurement and control peripherals — overview (p. 85) • measurement and control peripherals — details (p. 366) • measurement and control peripherals — lists (p. 645) modules are available from campbell... Section 5. System overview regulator, and a rechargeable battery can be used to construct a ups (un- interruptible power supply). 5.3.6 cr1000 configuration — overview related topics: • cr1000 configuration — overview (p. 86) • cr1000 configuration — details (p. 111) • status, settings, and data tab... Section 5. System overview note once a short cut generated program has been edited with crbasic editor (p. 125), it can no longer be modified with short cut. 5.3.8 memory — overview related topics: • memory — overview (p. 87) • memory — details (p. 370) • data storage devices — list (p. 653) data co... Section 5. System overview memory for data can be increased with the addition of a cf (p. 510) card and cf storage module (connects to the peripheral port) or a mass storage device (thumb drive) that connects to cs i/o or both. See the appendix data-storage devices — list (p. 653) for information on... Section 5. System overview • short distance networks — with no extra hardware, a cr1000 can talk to another cr1000 over distances up to 30 feet by connecting transmit, receive and ground wires between the dataloggers. In a pakbus network, each datalogger is set to a unique address. The default pakbu... Section 5. System overview telecommunications the cr1000 accesses data on the card as needed to fill data-collection requests initiated with the datalogger support software collect (p. 509) command. An alternative, if care is taken, is to collect data in binary form. Binary data are collected using ... Section 5. System overview 5.3.10.1 modbus related topics: • modbus — overview (p. 91) • modbus — details (p. 411) the cr1000 supports modbus master and modbus slave communications for inclusion in modbus scada networks. Modbus is a widely used scada communication protocol that facilitates exchange ... Section 5. System overview • pakbus over tcp/ip • ping • pop3 • smtp • snmp • telnet • web api • xml 5.3.11 security — overview related topics: • security — overview (p. 92) • security — details (p. 467) the cr1000 is supplied void of active security measures. By default, rs-232, telnet, ftp and htt... Section 5. System overview operating temperatures and aging. With auto-calibration disabled, measurement accuracy over the operational temperature range is specified as less accurate by a factor of 10. That is, over the extended temperature range of –40 °c to 85 °c, the accuracy specification of ±0.... Section 5. System overview 5.3.12.2 protection from voltage transients read more see grounding (p. 105). The cr1000 must be grounded to minimize the risk of damage by voltage transients associated with power surges and lightning-induced transients. Earth grounding is required to form a complete circ... Section 5. System overview the battery is rated from -55 °c up to 85 °c. 5.4 datalogger support software — overview reading list: • datalogger support software — quickstart (p. 46) • datalogger support software — overview (p. 95) • datalogger support software — details (p. 450) • datalogger support ... 6. Specifications 1.1 -- 8 10 30 cr1000 specifications are valid from ─25° to 50°c in non-condensing environments unless otherwise specified. Recalibration is recommended every two years. Critical specifications and system configurations should be confirmed with a campbell scientific application eng... 98. 7. Installation reading list • quickstart (p. 41) • specifications (p. 97) • installation (p. 99) • operation (p. 303) 7.1 protection from moisture — details protection from moisture — overview (p. 93) protection from moisture — details (p. 99) protection from moisture — products (p. 660) when humid... Section 7. Installation figure 31. Enclosure 7.4 power supplies — details related topics: • power supplies — specifications • power supplies — quickstart (p. 44) • power supplies — overview (p. 85) • power supplies — details (p. 100) • power supplies — products (p. 657) • power sources (p. 101) • tr... Section 7. Installation interruptible power supply). Contact a campbell scientific application engineer if assistance in selecting a power supply is needed, particularly with applications in extreme environments. 7.4.1 cr1000 power requirement the cr1000 is operable with power from 9.6 to 16 vdc app... Section 7. Installation noise, and so increase measurement error. Noise from grid or mains power also may be transmitted through the transformer, or induced electro-magnetically from nearby motors, heaters, or power lines. High-quality power regulators typically reduce noise due to power regulation.... Section 7. Installation 7.4.5 external power supply installation when connecting external power to the cr1000, remove the green power in connector from the cr1000 face. Insert the positive lead into the green connector, then insert the negative lead. Re-seat the green connector into the cr1000. The ... Section 7. Installation table 5. Current source and sink limits terminal limit 1 1 "source" is positive amperage; "sink" is negative amperage (–). 2 exceeding current limits will cause voltage output to become unstable. Voltage should stabilize once current is again reduced to within stated limits. ... Section 7. Installation on the 12v terminals will change with cr1000 supply voltage. Caution voltage levels at the 12v and switched sw12 terminals, and pin 8 on the cs i/o port, are tied closely to the voltage levels of the main power supply. For example, if the power received at the power in 12v an... Section 7. Installation the primary devices for protection against esd are gas-discharge tubes (gdt). All critical inputs and outputs on the cr1000 are protected with gdts or transient voltage suppression diodes. Gdts fire at 150 v to allow current to be diverted to the earth ground lug. To be effec... Section 7. Installation figure 33. Schematic of grounds 7.6.1.1 lightning protection reading list: • esd protection (p. 105) • lightening protection (p. 107) the most common and destructive esds are primary and secondary lightning strikes. Primary lightning strikes hit instrumentation directly. Seco... Section 7. Installation note lightning strikes may damage or destroy the cr1000 and associated sensors and power supplies. In addition to protections discussed in , use of a simple lightning rod and low- resistance path to earth ground is adequate protection in many installations. . Figure 34. Light... Section 7. Installation fluctuations by separating signal grounds ( ) from power grounds ( g). To take advantage of this design, observe the following rules: • connect grounds associated with 12v, sw12, 5v, and c1 – c8 terminals to g terminals. • connect excitation grounds to the nearest terminal on... Section 7. Installation and water provide an alternate path for the excitation to return to cr1000 ground. This example is modeled in the diagram model of a ground loop with a resistive sensor (p. 110). With r g in the resistor network, the signal measured from the sensor is described by the followi... Section 7. Installation 7.7 cr1000 configuration — details related topics: • cr1000 configuration — overview (p. 86) • cr1000 configuration — details (p. 111) • status, settings, and data table information (status/settings/dti) (p. 603) your new cr1000 is already configured to communicate with campb... Section 7. Installation figure 36. Device configuration utility (devconfig) 7.7.1.2 network planner network planner is a drag-and-drop application used in designing pakbus datalogger networks. You interact with network planner through a drawing canvas upon which are placed pc and datalogger nodes. L... Section 7. Installation figure 37. Network planner setup 7.7.1.2.1 overview network planner allows you to • create a graphical representation of a network, as shown in figure network planner setup (p. 113), • determine settings for devices and loggernet, and • program devices and loggernet with new ... Section 7. Installation 7.7.1.2.2 basics pakbus settings • device addresses are automatically allocated but can be changed. • device connections are used to determine whether neighbor lists should be specified. • verification intervals will depend on the activities between devices. • beacon interval... Section 7. Installation used to access them. • no single interface accesses all status/settings/dti. Interfaces used for access include the following: table 6. Status/setting/dti: access points access point locate in... Settings editor device configuration utility, loggernet connect screen, pakbus g... Section 7. Installation wireless-ethernet (cell) modems are often controlled by a switched 12 vdc ( sw12) terminal. Sw12 is normally off, so, if the program controlling sw12 is disabled, such as by replacing it with a program that neglects sw12 control, the cell modem is switched off and the remote ... Section 7. Installation will be the current program. Otherwise, any file marked as run now will be used. 3. If there is a file specified in the include file name setting, it is compiled at the end of the program selected in step. 4. If there is no file selected in step 1, or if the selected file can... Section 7. Installation update the os on the cr1000 as directed in devconfig help. The current version of the os is found at www.Campbellsci.Com/downloads. Os updates are free of charge. Note an os file has a .Obj extension. It can be compressed using the gzip compression algorithm. The datalogger w... Section 7. Installation 4. Follow the on-screen os download instructions pros/cons this is a good way to recover a cr1000 that has gone into an unresponsive state. Often, an operating system can be loaded even if you are unable to communicate with the cr1000 through other means. Loading an operating... Section 7. Installation program send command locations datalogger support software name of button location of button devconfig send program logger control tab lower left loggernet send new... Connect window, lower right pc400 send program main window, lower right pc200w send program main window, low... Section 7. Installation loading an operating system through this method will do the following: 1. Preserve all cr1000 settings 2. Delete all data in final storage 3. Stop current program (stop and deletes data) and clears run options 4. Deletes data generated using the cardout() instruction 7.7.2.1.... Section 7. Installation 7.7.2.2 restoring factory defaults in devconfig, clicking the factory defaults button at the base of the settings editor tab sends a command to the cr1000 to revert to its factory default settings. The reverted values will not take effect until the changes have been applied. ... Section 7. Installation 7.8.1 program structure essential elements of a crbasic program are listed in the table crbasic program structure (p. 123) and demonstrated in crbasic example program structure (p. 123). Table 8. Crbasic program structure declarations define cr1000 memory usage. Declare const... Section 7. Installation crbasic program structure 'declarations 'define constants const revdiff = 1 const del = 0 'default const integ = 250 const mult = 1 const offset = 0 declare constants 'define public variables public reftemp public tc(6) 'define units units reftemp = degc units tc = degc decla... Section 7. Installation 7.8.2 writing and editing programs 7.8.2.1 short cut programming wizard short cut is easy-to-use, menu-driven software that presents lists of predefined measurement, processing, and control algorithms from which to choose. You make choices, and short cut writes the crbasic co... Section 7. Installation 7.8.2.2.1 inserting comments into program comments are non-executable text placed within the body of a program to document or clarify program algorithms. As shown in crbasic example inserting comments (p. 126), comments are inserted into a program by preceding the comment wit... Section 7. Installation a good practice is to always retrieve data from the cr1000 before sending a program; otherwise, data may be lost. Read more see file management (p. 382) and the campbell scientific mass storage device or memory card documentation available at www.Campbellsci.Com. 7.8.3.1 pres... Section 7. Installation table 10. Data table structures –data table name(s) –data-output interval or offset –number of fields per record –number of bytes per field –field type, size, name, or position –number of records in table 7.8.4 programming syntax 7.8.4.1 program statements crbasic programs ar... Section 7. Installation note crbasic statements are limited to 512 characters, whether or not a line continuation is used. Examples: public a, b, _ c,d, e, f if (a and b) _ or (c and d) _ or (e and f) then exitscan 7.8.4.2 single-statement declarations single-statements are used to declare variables... Section 7. Installation several variables can be declared on a single line, separated by commas: public reftemp, airtemp2, batt_volt variables can also be assigned initial values in the declaration. Following is an example of declaring a variable and assigning it an initial value. Public settemp = {... Section 7. Installation table 11. Data types in variable memory name command description word size (bytes) notes resolution / range string as string ascii string minimum: 3 (4 with null terminator) default: 24 maximum: limited only to the size of available cr1000 memory. See caution. 1 string size i... Section 7. Installation table 12. Data types in final-data memory name argument description word size (bytes) notes resolution / range uint2 uint2 unsigned integer 2 use to store positive count data ≤ +65535. Use to store port or flag status. See crbasic example load binary information into a variab... Section 7. Installation crbasic example 3. Data type declarations 'this program example demonstrates various data type declarations. 'data type declarations associated with any one variable occur twice: first in a public 'or dim statement, then in a datatable/endtable segment. If not otherwise speci... Section 7. Installation 7.8.4.3.2 dimensioning numeric variables some applications require multi-dimension arrays. Array dimensions are analogous to spatial dimensions (distance, area, and volume). A single-dimension array, declared as, public variablename(x) with (x) being the index, denotes x numb... Section 7. Installation five variables are declared, each 36 characters long: stringvar(1) stringvar(2) stringvar(3) stringvar(4) stringvar(5) 7.8.4.3.4 declaring flag variables a flag is a variable, usually declared as boolean (p. 508), that indicates true or false, on or off, go or not go, etc. Pr... Section 7. Installation (x) on the variable name. X number of variables are created that differ in name only by the incrementing number in the suffix. For example, the four statements public tempc1 public tempc2 public tempc3 public tempc4 can simply be condensed to public tempc(4). This statement c... Section 7. Installation are called local variables. Names of local variable can be identical to names of global variables (p. 517) and to names of local variables declared in other subroutines and functions. This feature allows creation of a crbasic library of reusable subroutines and functions that... Section 7. Installation crbasic example 8. Using the const declaration 'this program example demonstrates the use of the const declaration. 'declare variables public ptempc public ptempf 'declare constants const ctof_mult = 1.8 const ctof_offset = 32 beginprog scan (1,sec,0,0) paneltemp (ptempc,250)... Section 7. Installation 7.8.4.9 numerical formats four numerical formats are supported by crbasic. Most common is the use of base-10 numbers. Scientific notation, binary, and hexadecimal formats can also be used, as shown in the table formats for entering numbers in crbasic (p. 139). Only standard, ... Section 7. Installation 7.8.4.10 multi-statement declarations multi-statement declarations are used to declare data tables, subroutines, functions, and incidentals. Related instructions include the following: • datatable() / endtable • sub() / endsub • function() / endfunction • shutdown / shutdowne... Section 7. Installation table 14. Typical data table toa5 cr1000 cr1000 1048 cr1000.Std.13.06 cpu:data.Cr1 35723 onemin timestamp record battvolt_avg ptempc_avg tempc_avg(1) tempc_avg(2) ts rn volts deg c deg c deg c avg avg avg avg 7/11/2007 16:10 0 13.18 23.5 23.54 25.12 7/11/2007 16:20 1 13.18 23... Section 7. Installation each scalar value defined by the table. Default field names are a combination of the variable names (or alias) from which data are derived and a three-letter suffix. The suffix is an abbreviation of the data process that outputs the data to storage. For example, avg is the abb... Section 7. Installation 'main program beginprog scan (5,sec,1,0) 'default datalogger battery voltage measurement batt_volt: battery (batt_volt) 'wiring panel temperature measurement ptemp_c: paneltemp (ptemp_c,_60hz) 'type t (copper-constantan) thermocouple measurements temp_c: tcdiff (temp_c(),2,mv... Section 7. Installation rules on table size change if a cardout() instruction or tablefile() instruction with option 64 are included in the table declaration. These instructions support writing of data to a memory card. Writing data to a card requires additional memory be allocated as a data copy bu... Section 7. Installation ensure the cr1000 allocates adequate memory for each data table. Table 16. Datainterval() lapse parameter options datainterval() lapse argument effect lapse > 0 if table record number is fixed, x data frames (1 kb per data frame) are added to data table if memory is available... Section 7. Installation • reps — number of sequential elements in the variable array for which averages are calculated. Reps is set to 1 to average ptemp, and set to 2 to average two thermocouple temperatures, both of which reside in the variable array temp_c. • source — variable array to average. V... Section 7. Installation 'main program beginprog scan (1,sec,1,0) 'reset and increment counter if oscillator = 2 then oscillator = 0 oscillator = oscillator + 1 'process and control if oscillator = 1 if flag(1) = true then disablevar = true endif else disablevar = false endif 'call data tables and st... Section 7. Installation 2. Send the file to the cr1000 using tools in the file control menu of datalogger support software (p. 95). 3. Enter the path and name of the file in the include file setting using devconfig or pakbusgraph. Figures "include file" settings with devconfig (p. 149) and "include ... Section 7. Installation figure 40. "include file" settings via devconfig figure 41. "include file" settings via pakbusgraph crbasic example 12. Using an 'include' file 'this program example demonstrates the use of an 'include' file. An 'include' file is a crbasic file that usually 'resides on the cp... Section 7. Installation ' crbasic editor, name it 'includefile.Cr1, and save it to the same pc folder on which ' resides the main program file (this make pre-compiling possible. Including the ' slowsequence instruction as the first statement is required, followed by any other code. '2. Send the 'inc... Section 7. Installation features of nearly all programs. Although used less frequently, subroutine and function sequences also have a general purpose nature. In contrast, the following sequences are used only in specific applications. Shut-down sequences the shutdownbegin / shutdownend instructions ... Section 7. Installation note a program can be forced to run in sequential or pipeline mode by placing the sequentialmode or pipelinemode instruction in the declarations section of the program. Some tasks in a program may have higher priorities than others. Measurement tasks generally take precedence... Section 7. Installation all tasks are given equal processing time by the cr1000. All tasks are given the same general priority. However, when a conflict arises between tasks, program execution adheres to the priority schedule in table pipeline mode task priorities (p. 153). Table 18. Pipeline mode t... Section 7. Installation a similar concern is the reuse of the same variable in multiple tasks. Without some sort of messaging between the two tasks placed into the crbasic program, unpredictable results are likely to occur. The semaphoreget() and semaphorerelease() instruction pair provide a tool to... Section 7. Installation of the period in 10 ms increments up to 24 hours. As shown in crbasic example beginprog / scan() / nextscan / endprog syntax (p. 155), the crbasic program may be relatively short. Crbasic example 14. Beginprog / scan() / nextscan / endprog syntax 'this program example demonst... Section 7. Installation intervals in the main program. When no measurements need to be spliced, the slow-sequence scan will run independent of the main scan, so slow sequences with no measurements can run at intervals ≤ main-scan interval (still in 10 ms increments) without skipping scans. When meas... Section 7. Installation semaphore (p. 527). Main scans with measurements have priority to acquire the semaphore before measurements in a calibration or slow-sequence scan. The semaphore is taken by the main scan at its beginning if there are measurements included in the scan. The semaphore is releas... Section 7. Installation figure 42. Sequential-mode scan priority flow diagrams 7.8.4.13 programming instructions in addition to basic syntax, additional instructions are included in crbasic to facilitate measurements and store data. The section crbasic programming instructions (p. 537) contains a co... Section 7. Installation paneltemp is the keyword. Two parameters follow: dest, a destination variable name in which the temperature value is stored; and integ, a length of time to integrate the measurement. To place the panel temperature measurement in the variable reftemp, using a 250 µs integratio... Section 7. Installation table 20. Rules for names name category 1 maximum length (number of characters) allowed characters units 38 or underscore. Crbasic is not case sensitive. Units are excepted from the above rules. Since units are strings that ride along with the data, they are not subjected to ... Section 7. Installation consider the expressions: x = (z * 1.8) + 32 '(mathematical expression) if x = 23 then y = 5 '(programming expression) the variable x can be omitted and the expressions combined and written as: if (z * 1.8 + 32 = 23) then y = 5 replacing the result with the expression should ... Section 7. Installation crbasic example 16. Use of move() to conserve code space move (counter(1),6,0,1) 'reset six counters to zero. Keep array 'filled with the ten most current readings move (tempc(2),9,tempc(1),9) 'shift previous nine readings to make room 'for new measurement 'new measurement: t... Section 7. Installation converted to a long, it is truncated. This conversion is the same as the int function (arithmetic functions (p. 568) ). The conversion is to an integer equal to or less than the value of the float; for example, 4.6 becomes 4 and –4.6 becomes –5). If a float is greater than th... Section 7. Installation 7.8.4.15.4 logical expressions measurements can indicate absence or presence of an event. For example, an rh measurement of 100% indicates a condensation event such as fog, rain, or dew. The cr1000 can render the state of the event into binary form for further processing, so ... Section 7. Installation table 21. Binary conditions of true and false condition crbasic instruction(s) used memory location of binary result time timeintointerval() variable, system iftime() variable, system timeisbetween() variable, system control port trigger waitdigtrig() system communications vo... Section 7. Installation table 22. Logical expression examples the not operator complements every bit in the word. A boolean can be false (0 or all bits set to 0) or true (-1 or all bits set to 1). “complementing” a boolean turns true to false (all bits complemented to 0). Example program '(a and b) ... Section 7. Installation 'program beginprog scan (1,sec,0,0) 'assign strings to string variables word(1) = "good" word(2) = "morning" word(3) = "dave" word(4) = "i'm" word(5) = "sorry" word(6) = "afraid" word(7) = "i" word(8) = "can't" word(9) = "do" word(10) = "that" word(11) = " " word(12) = "," wo... Section 7. Installation • fieldname index is the array element number in fields that are arrays (optional). • records back is how far back into the table to go to get the value (optional). If left blank, the most recent record is acquired. Table 23. Data process abbreviations abbreviation process na... Section 7. Installation consult crbasic editor help index topic datatable access for complete information. The datatableinformation table also include this information. See status, settings, and data table information (status/settings/dti) (p. 603). 7.8.4.17 programming to use signatures signatures ... Section 7. Installation 'declare event driven data table datatable (event,true,1000) dataevent (0,deltat_c>=3,deltat_c sample (1,ptemp_c, fp2) sample (1,airtemp_c, fp2) sample (1,deltat_c, fp2) endtable 'declare time driven data table datatable (onemin,true,-1) datainterval (0,1,min,10) sample (1,ev... Section 7. Installation 'declare units units ptemp_c = deg c units airtemp_c = deg c units deltat_c = deg c 'declare output table -- output conditional on delta t >=3 'table stores data at the scan rate (once per second) when condition met 'because datainterval instruction is not included in table d... Section 7. Installation crbasic example 24. Groundwater pump test 'this program example demonstrates the use of multiple scans in a program by running a 'groundwater pump test. Note that scan() time units of sec have been changed to msec for 'this demonstration to allow the program to run its course... Section 7. Installation 'minute 10 to 30 of test: 30-second data-output interval scan (30,msec,0,40) 'there are 40 30-second scans in 20 minutes scancounter(2) = scancounter(2) + 1 'included to show passes through this scan battery (batt_volt) paneltemp (ptemp,250) call measurelevel 'call output tab... Section 7. Installation 7.9.1.4 miscellaneous features crbasic example miscellaneous features (p. 174) demonstrates use of several crbasic features: data type, units, names, event counters, flags, data-output intervals, and control. Crbasic example 25. Miscellaneous program features 'this program ex... Section 7. Installation 'optional – declare a station name into a location in the status table. Stationname (cr1000_on_desk) 'optional -- declare units. Units are not used in programming, but only appear in the 'data file header. Units batt_volt = volts units ptemp = deg c units airtemp = deg c unit... Section 7. Installation scan (1,sec,1,0) 'measurements 'battery voltage battery (batt_volt) 'wiring panel temperature paneltemp (ptemp_c,_60hz) 'type t thermocouple measurements: tcdiff (airtemp_c,1,mv2_5c,1,typet,ptemp_c,true,0,_60hz,1,0) tcdiff (airtemp_f,1,mv2_5c,1,typet,ptemp_c,true,0,_60hz,1.8,... Section 7. Installation 7.9.1.5 pulsecountreset instruction pulsecountreset is used in rare instances to force the reset or zeroing of cr1000 pulse accumulators (see measurements — overview (p. 62)) . Pulsecountreset is needed in applications wherein two separate pulsecount() instructions in separat... Section 7. Installation scan (5,sec,1,0) 'measure reference temperature paneltemp (ptemp_c,_60hz) 'measure three thermocouples and scale each. Scaling factors from the scaling array 'are applied to each measurement because the syntax uses an argument of 3 in the reps 'parameter of the tcdiff() instr... Section 7. Installation 'define data table datatable (signatures,1,1000) datainterval (0,1,day,10) sample (1,progsig,fp2) sample (1,runsig,fp2) sample (2,exesig(),fp2) endtable 'program beginprog exesig() = signature 'initialize executable code signature 'function scan (1,sec,0,0) progsig = status.P... Section 7. Installation slowsequence 'begin slow sequence 'declare public variables for secondary scan (can be declared at head of program) public batt_volt public counter2 'declare data table datatable (datatable2,1,-1) 'datatable2 is event driven. 'the event is the scan. Sample (1,batt_volt,fp2) s... Section 7. Installation by using -p . This feature allows the smallest size program file possible to be sent to the cr1000, which may help keep costs down over very expensive telecommunication links. Crbasic example conditional code (p. 181) shows a sample program that demonstrates use of conditiona... Section 7. Installation #if loggertype = 3000 'this instruction is used if the datalogger is a cr3000 voltse (valueread,1,mv1000,22,0,0,_50hz,0.1,-30) #elseif loggertype = 1000 'this instruction is used if the datalogger is a cr1000 voltse (valueread,1,mv2500,12,0,0,_50hz,0.1,-30) #elseif loggertype... Section 7. Installation immediately after menuitem(). If variable is declared as boolean, menupick() allows only true or false or declared equivalents. Otherwise, many items are allowed in the pick list. Order of items in list is determined by order of instruction; however, item displayed initially ... Section 7. Installation figure 45. Custom menu example — make notes sub menu figure 46. Custom menu example — predefined notes pick list figure 47. Custom menu example — free entry notes window figure 48. Custom menu example — accept / clear notes window 184. Section 7. Installation figure 49. Custom menu example — control sub menu figure 50. Custom menu example — control led pick list figure 51. Custom menu example — control led boolean pick list note see figures custom menu example — home screen (p. 183) through custom menu example — control led boolea... Section 7. Installation const cal_done = "cal done" 'word stored when cal_don selected const offst_chgd = "offset changed" 'word stored when offst_chgd selected const blank = "" 'word stored when blank selected public enternote as string * 30 'variable to hold free entry note public cyclenotes as st... Section 7. Installation submenu ("control ") 'create submenu named paneltemps menuitem ("count to led",countdown) 'create menu item countdown menupick (15,30,45,60) 'create a pick list for countdown menuitem ("manual led",toggleled) 'manual led control menu item menupick (on,off) endsubmenu endmenu ... Section 7. Installation 7.9.4 data input: loading large data sets large data sets, such as look up tables or tag numbers, can be loaded in the cr1000 for use by the crbasic program. This is efficiently accomplished by using the data, datalong, and read instructions, as demonstrated in crbasic exampl... Section 7. Installation • initialize • transpose • copy • mathematical • logical examples include: • process a variable array without use of for/next • create boolean arrays based on comparisons with another array or a scalar variable • copy a dimension to a new location • perform logical operations... Section 7. Installation table 24. Crbasic example. Array assigned expression: sum columns and rows 'this example sums three rows and two columns of a 3x2 array. 'source array image: '1.23,2.34 '3.45,4.56 '5.67,6.78 public array(3,2) = {1.23,2.34,3.45,4.56,5.67,6.78} 'load values into source array pu... Section 7. Installation table 26. Crbasic example. Array assigned expression: comparison / boolean evaluation 'example: comparison / boolean evaluation 'element-wise comparisons is performed through scalar expansion or by comparing each 'element in one array to a similarly located element in another... Section 7. Installation table 27. Crbasic example. Array assigned expression: fill array dimension 'example: fill array dimension public a(3) public b(3,2) public c(4,3,2) public da(3,2) = {1,1,1,1,1,1} public db(3,2) public dmultiplier(3) = {10,100,1000} public doffset(3) = {1,2,3} beginprog scan (... Section 7. Installation elements of the array, instead of performing an independent running average on each element of the array. The results will be a running average of a spatial average of the various source array elements. A running average is a digital low-pass filter; its output is attenuated ... Section 7. Installation 36 hz / 50 hz = 0.72 sin(0.72π) / (0.72π) = 0.34. So, the recorded amplitude was about 1/3 of the input-signal amplitude. A crbasic program was written with variables accel2 and accel2ra. The raw measurement was stored in accel2. Accel2ra held the result of performing a runni... Section 7. Installation figure 53. Running-average signal attenuation 7.9.7 data output: triggers and omitting samples trigvar is the third parameter in the datatable() instruction. It controls whether or not a data record is written to final memory. Trigvar control is subject to other conditional i... Section 7. Installation figure 54. Data from trigvar program crbasic example 32. Using trigvar to trigger data storage 'this program example demonstrates the use of the trigvar parameter in the datatable() 'instruction to trigger data storage. In this example, the variable counter is 'incremented by... Section 7. Installation 7.9.8 data output: two intervals in one data table crbasic example 33. Two data-output intervals in one data table 'this program example demonstrates the use of two time intervals in a data table. One time 'interval in a data table is the norm, but some applications require t... Section 7. Installation 'call output tables calltable twoint nextscan endprog 7.9.9 data output: using data type bool8 variables used exclusively to store either true or false are usually declared as boolean. When recorded in final-data memory, the state of boolean variables is typically stored in b... Section 7. Installation figure 55. Alarms toggled in bit-shift example figure 56. Bool8 data from bit-shift example (numeric monitor) 199. Section 7. Installation figure 57. Bool8 data from bit-shift example (pc data file) crbasic example 34. Programming with bool8 and a bit-shift operator 'this program example demonstrates the use of the bool8 data type and the ">>" bit-shift 'operator. Public alarm(32) public flags as long public fla... Section 7. Installation 'if bit in or bit in the result 'flags is bin/hex is is '---------- ---------- ---------- ' 0 0 0 ' 0 1 1 ' 1 0 1 ' 1 1 1 'binary equivalent of hex: if alarm(1) then flags = flags or &h1 ' &b1 if alarm(2) then flags = flags or &h2 ' &b10 if alarm(3) then flags = flags or &h4 ... Section 7. Installation flagsbool8(1) = flags and &hff 'and 1st 8 bits of "flags" & 11111111 flagsbool8(2) = (flags >> 8) and &hff 'and 2nd 8 bits of "flags" & 11111111 flagsbool8(3) = (flags >> 16) and &hff 'and 3rd 8 bits of "flags" & 11111111 flagsbool8(4) = (flags >> 24) and &hff 'and 4th 8 bits... Section 7. Installation crbasic example 35. Nsec — one element time array 'this program example demonstrates the use of nsec data type to determine seconds since '00:00:00 1 january 1990. A time stamp is retrieved into variable timevar(1) as seconds 'since 00:00:00 1 january 1990. Because the variab... Section 7. Installation 'program beginprog scan (1,sec,0,0) paneltemp (ptempc,250) maxvar = firsttable.Ptempc_max timeofmaxvar = firsttable.Ptempc_tmx calltable firsttable calltable secondtable nextscan endprog crbasic example 37. Nsec — seven and nine element time arrays 'this program example demon... Section 7. Installation crbasic example 38. Nsec —convert timestamp to universal time 'this program example demonstrates the use of nsec data type to convert a data time stamp 'to universal time. ' 'application: the cr1000 needs to display universal time (ut) in human readable 'string forms. The cr1... Section 7. Installation • data-file format examples (p. 379) • data storage drives table (p. 373) the best method for writing high-frequency time-series data to memory cards, especially in high-speed measurement applications, is usually to use the tablefile() instruction with option 64. It supports ... Section 7. Installation • easy retrieval of closed files with file control (p. 515) utility, ftp, or e-mail. 7.9.11.3 tablefile() with option 64 programming as shown in the following crbasic code snip, the tablefile() instruction must be placed inside a datatable() / endtable declaration. The tablef... Section 7. Installation 7.9.11.5 tablefile() with option 64 q & a q: how does option 64 differ from other tablefile() options? A: pre-allocation of memory combines with tob3 data format to give option 64 two principal advantages over other tablefile() options. These are: • increased runtime write pe... Section 7. Installation pc to update the info sector. The pc is much faster than the datalogger at updating the info sector. Fat32 uses an “info sector” to store the free cluster information. This info sector prevents the need to repeatedly traverse the fat for the bytes free information. After a ca... Section 7. Installation q: what happens when a card is filled? A: if the memory card fills, new data are written over oldest data. A card must be exchanged before it fills, or the oldest data will be overwritten by incoming new records and lost. During the card exchange, once the old card is removed... Section 7. Installation cal files are created if a program using fieldcal() or fieldcalstrain() does not find an existing, compatible cal file. Files are updated with each successful calibration with new calibration factors factors. A calibration history is recorded only if the crbasic program creat... Section 7. Installation comprehensive treatment of field-calibration topics. The most comprehensive resource to date covering use of fieldcal() and fieldcalstrain() is rtdaq software documentation available at www.Campbellsci.Com http://www.Campbellsci.Com. Be aware of the following precautions: • t... Section 7. Installation 7.9.12.4.2 two-point calibrations (gain and offset) use this two-point calibration procedure to adjust multipliers (slopes) and offsets (y intercepts). See fieldcal() slope and offset (opt 2) example (p. 218) and fieldcal() slope (opt 3) example (p. 220) for demonstration pro... Section 7. Installation 7.9.12.5.1 fieldcal() zero or tare (opt 0) example most crbasic measurement instructions have a multiplier and offset parameter. Fieldcal() option 0 adjusts the offset argument such that the output of the sensor being calibrated is set to the value of the fieldcal() knownvar ... Section 7. Installation crbasic example 40. Fieldcal() zero 'this program example demonstrates the use of fieldcal() in calculating and applying a zero 'calibration. A zero calibration measures the signal magnitude of a sensor in a known zero 'condition and calculates the negative magnitude to use a... Section 7. Installation scan (100,msec,0,0) 'simulate signal then make the measurement 'zero calibration is applied when variable calmode = 6 excitev (vx1,simulatedrhsignal,0) voltse (rh,1,mv2500,1,1,0,250,0.05,rhoffset) 'perform a zero calibration. 'start by setting variable calmode = 1. Finished w... Section 7. Installation 5. To simulate seven-day-service calibration conditions (30 mg/l standard solution), the variable knownsalinity remains at 30.0. Change the value in variable calmode to 1 to start the calibration. When calmode increments to 6, the seven-day-service offset calibration is compl... Section 7. Installation beginprog 'load calibration constants from file cpu:calhist.Cal 'effective after the zero calibration procedure (when variable calmode = 6) loadfieldcal (true) scan (100,msec,0,0) 'simulate signal then make the measurement 'zero calibration is applied when variable calmode = ... Section 7. Installation jumper wire between terminals vx1 and se1. 3. Perform the simulated deployment calibration as follows: a. For the first point, set variable simulatedflowsignal = 300. Set variable knownflow = 30.0. B. Start the calibration by setting variable calmode = 1. C. When calmode incr... Section 7. Installation 'measurements), the routine is complete. Note the new values in variables flowmultiplier and 'flowoffest. Now enter a new value in the simulated sensor signal as follows and note 'how the new multiplier and offset scale the measurement: ' simulatedflowsignal = 1000 'note: thi... Section 7. Installation intersects two known points sequentially entered in the fieldcal() knownvar parameter. Subsequent measurements are scaled with the same multiplier. Fieldcal() option 3 does not affect offset. Some measurement applications do not require determination of offset. Frequency anal... Section 7. Installation 'this program demonstrates the multiplier calibration with the following procedure: ' -- simulate a signal from a water content sensor. ' -- measure the 'sensor' signal. ' -- calculate and apply an offset. ' 'you can set up the simulation by loading this program into the cr10... Section 7. Installation 'perform a multiplier calibration. 'start by setting variable calmode = 1. Finished when variable calmode = 6. 'fieldcal(function, measurevar, reps, multvar, offsetvar, mode, knownvar, index, avg) fieldcal (3,wc,1,wcmultiplier,0,calmode,knownwc,1,30) 'if there was a calibrati... Section 7. Installation adjusted gage factor (gf adj ), which is then used as the gage factor in straincalc(). Gf is stored in the cal file and continues to be used in subsequent calibrations. Non-linearity of the bridge is compensated for by selecting a shunt resistor with a value that best simulat... Section 7. Installation figure 58. Quarter-bridge strain-gage with rc resistor shunt crbasic example 44. Fieldcalstrain() calibration 'this program example demonstrates the use of the fieldcalstrain() instruction by measuring 'quarter-bridge strain-gage measurements. Public raw_mvperv public microst... Section 7. Installation scan (100,msec,100,0) 'measure bridge resistance brfull (raw_mvperv,1,mv25,1,vx1,1,2500,true ,true ,0,250,1.0,0) 'calculate strain for 1/4 bridge (1 active element) straincalc (microstrain,1,raw_mvperv,zero_mvperv,1,gf_adj,0) 'steps (1) & (3): zero calibration 'balance bridge... Section 7. Installation figure 60. Strain-gage shunt calibration finish 7.9.12.6.4 fieldcalstrain() quarter-bridge zero continuing from fieldcalstrain() quarter-bridge shunt example (p. 226), keep the 249 kΩ resistor in place to simulate a strain. Using the cr1000kd keyboard display or software nume... Section 7. Installation 7.9.13 measurement: excite, delay, measure this example demonstrates how to make voltage measurements that require excitation of controllable length prior to measurement. Overcoming the delay caused by a very long cable length on a sensor is a common application for this tech... Section 7. Installation 7.9.14 measurement: faster analog rates certain data acquisition applications require the cr1000 to make analog measurements at rates faster than once per second (> 1 hz (p. 517) ). The cr1000 can make continuous measurements at rates up to 100 hz, and bursts (p. 509) of meas... Section 7. Installation table 33. Summary of analog voltage measurement rates maximum rate 100 hz 600 hz 2000 hz number of simultaneous inputs multiple inputs fewer inputs one input maximum duty cycle 100% maximum measaurements per burst n/a variable 65535 description near simultaneous measurements ... Section 7. Installation beginprog scan (1,sec,0,0) ' voltse (fastse(),1,mv2_5,1,false,100, 250,1.0,0) calltable fastsetable nextscan endprog by modifying the interval, units, and buffers arguments, voltse() can be executed at 100 hz at 100% duty cycle. The following program measures 16 analog-input ... Section 7. Installation beginprog scan (1,sec,10,0) ' subscan (5,msec,190) ' voltse (burstse(),8,mv2_5,1,false,100,250,1.0,0) calltable burstsetable nextsubscan nextscan endprog many variations of this basic code can be programmed to achieve other burst rates and duty cycles. The subscan() / nextsub... Section 7. Installation follows: since all sub-scans have to complete before the task sequencer can set the delay for the main scan, processing is delayed until this point (20 ms in the above example). So more memory is required for the raw buffer space for the sub-scan mode to run at the same speed... Section 7. Installation 200 table 34. Parameters for analog burst mode (601 to 2000 hz) crbasic analog voltage input parameters description when in burst mode destination a variable array dimensioned to store all measurements from one input. For example, the command, dim fasttemp(500) dimensions arr... Section 7. Installation 7.9.15.1 measuring pt100s (100 Ω prts) pt100s (100 Ω prts) are readily available. The cr1000 can measure pt100s in several configurations, each with its own advantages. 7.9.15.1.1 self-heating and resolution prt measurements present a dichotomy. Excitation voltage should be m... Section 7. Installation refer to crbasic editor help for specific prtcalc() parameter entries. The following information is presented as detail beyond what is available in crbasic editor help. The general form of the callendar-van dusen (cvd) equation is shown in the following equations. When r/r 0 ... Section 7. Installation table 36. Prtcalc() type-code-2 sensor us industrial standard, alpha = 0.00392 (reference: logan enterprises) constant coefficient a 3.9786300e-03 d -2.3452400e-06 e 1.8174740e-05 f -1.1726200e-06 g 1.7043690e+00 h -2.7795010e+00 i 8.8078440e+00 j 2.5129740e+02 table 37. Prtc... Section 7. Installation table 39. Prtcalc() type-code-5 sensor honeywell industrial sensors, alpha = 0.00375 (reference: honeywell) constant coefficient a 3.8100000e-03 d -2.4080000e-06 e 1.6924100e-05 f -1.2040000e-06 g 2.1790930e+00 h -5.4315860e+00 i 9.9196550e+00 j 2.6238290e+02 table 40. Prtcal... Section 7. Installation length having more than a few thousandths of an ohm resistance. In this example, the measurement range is –10° to 40 °c. The length of the cable from the cr1000 and the bridge resistors to the prt is 500 feet. Figure pt100 in four-wire half-bridge (p. 240) shows the circuit u... Section 7. Installation 7.9.15.2.3 choosing rf the fixed 100 Ω resistor must be thermally stable. Its precision is not important because the exact resistance is incorporated, along with that of the prt, into the calibrated multiplier. The 10 ppm/°c temperature coefficient of the fixed resistor will ... Section 7. Installation 7.9.15.3 pt100 in three-wire half bridge example shows: • how to measure a prt in a three-wire half-bridge configuration. Advantages: • uses half as many terminals configured for analog input as four-wire half- bridge. Disadvantages: • may not be as accurate as four-wire half... Section 7. Installation a terminal input module can be used to complete the circuit in figure pt100 in three-wire half-bridge (p. 242). Refer to the appendix signal conditioners (p. 647) for information concerning available tim modules. Figure 64. Pt100 in three-wire half-bridge crbasic example 51. ... Section 7. Installation brfull(). In this example, the prt is in a constant-temperature bath and the measurement is to be used as the input for a control algorithm. As described in table resistive-bridge circuits with voltage excitation (p. 338), the result of brfull() is x, x = 1000 v s /v x where,... Section 7. Installation the ±5 ppm per °c temperature coefficient of the fixed resistors was chosen because the ±0.01% accuracy tolerance would hold over the desired temperature range. Figure 65. Pt100 in four-wire full-bridge crbasic example 52. Pt100 in four-wire full-bridge 'this program example ... Section 7. Installation this section is slated for expansion. Below are a few tips. • short cut programming wizard has provisions for simple on/off control. • pid control can be done with the cr1000. Ask a campbell scientific application engineer for more information. • when controlling a pid algori... Section 7. Installation table 41. Ascii / ansi equivalents byte received ascii character displayed decimal ascii code hex ascii code 00001101 cr 13 d 00000001 ☺ 1 1 read more see the appendix ascii / ansi table (p. 637) for a complete list of ascii / ansi codes and their binary and hex equivalents. ... Section 7. Installation table 42. Cr1000 serial ports serial port voltage level logic rs-232 (9 pin) rs-232 full-duplex asynchronous rs-232 cs i/o (9 pin) ttl full-duplex asynchronous rs-232 com1 (c1 – c2) ttl full-duplex asynchronous rs-232/ttl com2 (c3 – c4) ttl full-duplex asynchronous rs-232/ttl... Section 7. Installation each character surrounded by one or more start and stop bits which designate the beginning and ending points of the information (see synchronous (p. 530) ). Indicates the sending and receiving devices are not synchronized using a clock signal. Term. Baud rate the rate at whic... Section 7. Installation term. Msb most significant bit (the leading bit). See the appendix endianness (p. 643). Term. Rs-232c refers to the standard used to define the hardware signals and voltage levels. The cr1000 supports several options of serial logic and voltage levels including rs-232 logic a... Section 7. Installation from the buffer to variables. Once data are in variables, string manipulation instructions are used to format and parse the data. Serialclose() must be executed before serialopen() can be used again to reconfigure the same serial port, or before the port can be used to commun... Section 7. Installation serialinrecord() 2 • can run in pipeline mode inside the digital measurement task (along with sdm instructions) if the comport parameter is set to a constant argument such as com1, com2, com3, or com4, and the number of bytes is also entered as a constant. • simplifies synchr... Section 7. Installation 3. Receive serial data as a string with serialin() or serialinrecord(). ̶ example: serialinrecord (com2,serialinstring,42,0,35,"",01) o declare the string variable large enough to accept the string. ̶ example: public serialinstring as string * 25 o observe the input string in... Section 7. Installation 3. Output string via the serial port ( serialout() or serialoutblock() command). O example: serialout (com1,serialoutstring,"",0,100) o declare the output string variable large enough to hold the entire concatenation. O example: public serialoutstring as string * 100 • serial... Section 7. Installation • serial buffer: the serial port buffer, which is declared in serialopen(), must be large enough to hold all data a device will send. The buffer holds the data for subsequent transfer to variables. Allocate extra memory to the buffer when needed, but recognize that memory add... Section 7. Installation crbasic example 53. Receiving an rs-232 string 'this program example demonstrates cr1000 serial i/o features by: ' 1. Simulating a serial sensor ' 2. Transmitting a serial string via com1 tx. 'the serial string is received at com2 rx via jumper wire. Simulated 'air temperatur... Section 7. Installation 'receive serial data as a string '42 is ascii code for "*", 35 is code for "#" serialinrecord (com2,serialinstring,42,0,35,"",01) 'parse the serial string splitstr (instringsplit(),serialinstring,"",2,0) nextscan endprog 7.9.17.6 serial i/o application testing a common proble... Section 7. Installation figure 69. Hyperterminal ascii setup 7.9.17.6.2 create send-text file create a file from which to send a serial string. The file shown in the figure hyperterminal send text-file example (p. 258) will send the string [2008:028:10:36:22]c to the cr1000. Use notepad ® (microsoft... Section 7. Installation crbasic example 54. Measure sensors / send rs-232 data 'this program example demonstrates the import and export serial data via the cr1000 rs-232 'port. Imported data are expected to have the form of the legacy campbell scientific 'time set c command: ' [yr:day:hr:mm:ss]c 'ex... Section 7. Installation 'subroutine to convert date formats (day-of-year to month and date) sub doy2moday 'store year, doy, hour, minute and second to input locations. Year = instringsplit(1) doy = instringsplit(2) hour = instringsplit(3) minute = instringsplit(4) second = instringsplit(5) usecond =... Section 7. Installation case is month = 7 date = doy + -182 case is month = 8 date = doy + -213 case is month = 9 date = doy + -244 case is month = 10 date = doy + -274 case is month = 11 date = doy + -305 case is month = 12 date = doy + -335 endselect 'if it is not a leap year, use this section. El... Section 7. Installation case is month = 10 date = doy + -273 case is month = 11 date = doy + -304 case is month = 12 date = doy + -334 endselect endif endsub '//////////////////////////// program //////////////////////////// beginprog stationid = 4771 scan (1,sec, 3, 0) '/////////////////measurement... Section 7. Installation '/////////////////serial output section///////////////////// 'construct old campbell scientific printable ascii data format and output to com1 'read datalogger clock realtime (rtime) if timeintointerval (0,5,sec) then 'load onemindata table data for processing into printable ... Section 7. Installation serialopen() instruction cause other power cycles? A: the rs-232 port is left on under the following conditions: • when the setting rs-232power (p. 627) is set • when a serialopen() with argument comrs232 is used in the program both conditions power-up the interface and leave... Section 7. Installation a: open the port in binary mode (mode 3) instead of pakbus-enabled mode (mode 0). Q: tests with an oscilloscope showed the sensor was responding quickly, but the data were getting held up in the internals of the cr1000 somewhere for 30 ms or so. Characters at the start of a r... Section 7. Installation a different sequence, or task, within the same machine. If the process is relatively fast, like the move() instruction, and an asynchronous process is reading the data, this can be even worse because the “reading old data” will happen less often but is more insidious because ... Section 7. Installation transparent mode is active and ready to transmit sdi-12 commands and display responses. Figure 72. Entering sdi-12 transparent mode 7.9.18.1.1 sdi-12 transparent mode commands commands have three components: • sensor address ( a) — a single character, and is the first charact... Section 7. Installation table 43. Sdi-12 commands for transparent mode command name command syntax 1 response 2 notes break continuous spacing for at least 12 milliseconds none address query ?! A acknowledge active a! A change address aab! B (support for this command is required only if the sensor s... Section 7. Installation aab! Changes the sensor address. A is the current address and b is the new address. Response is the new address. Syntax: aab! Ai! Requests the sensor identification. Response is defined by the sensor manufacturer, but usually includes the sensor address, sdi-12 version, manuf... Section 7. Installation where: 5 reports the sensor sdi-12 address. 004 indicates the data will be available in 4 seconds. 10 indicates that 10 values will be available. The command 5m7! Elicites a similar response, but the appendage 7 instructs the sensor to return the voltage of the internal batte... Section 7. Installation m command. The maximum number of characters returned in the part of the response is 75. Each r command is an independent measurement. For example, ar5! Need not be preceded by ar0! Through ar4!. If a sensor is unable to take a continuous measurement, then it must return its a... Section 7. Installation command name sdirecorder() sdicommand argument sdi-12 command sent sensor response 1 cr1000 response notes address query ?! Cr1000: issues a?! Command. Only one sensor can be attached to the c terminal configured for sdi-12 for this command to elicit a response. Sensor must s... Section 7. Installation the sdirecorder() acv command facilitates using the sdi-12 standard start concurrent command ( acv!) without the back-to-back measurement sequence normal to the cr1000 implementation of acv!. Consider an application wherein four sdi-12 temperature sensors need to be near- sim... Section 7. Installation sdi12recorder (temp(4),1,3,"m!",1.0,0) nextscan endsequence endprog however, problems 2 and 3 still are not resolved. These can be resolved by using the concurrent measurement command, c!. All measurements will be made at about the same time and execution time will be about 9... Section 7. Installation crbasic example 55. Using sdi12sensor() to test cv command 'this program example demonstrates how to use crbasic to simulate four sdi-12 sensors. This program can be used to 'produce measurements to test the crbasic example using alternate concurrent command (ac) (p. 277). Pu... Section 7. Installation slowsequence do sdi12sensorsetup (1,7,3,95) delay (1,95,sec) sdi12sensorresponse (temp(4)) loop endsequence endprog crbasic example 56. Using alternate concurrent command (ac) 'this program example demonstrates the use of the special sdi-12 concurrent measurement 'command (ac... Section 7. Installation 'measure sdi-12 sensors sdi12recorder (temp_tmp(1),1,0,cmd(1),1.0,0) sdi12recorder (temp_tmp(2),1,1,cmd(2),1.0,0) sdi12recorder (temp_tmp(3),1,2,cmd(3),1.0,0) sdi12recorder (temp_tmp(4),1,3,cmd(4),1.0,0) 'control measurement event for x = 1 to 4 if cmd(x) = "c!" then retry(x)... Section 7. Installation information on parsing strings, see input programming basics (p. 251). Crbasic example 57. Using an sdi-12 extended command 'this program example demonstrates the use of sdi-12 extended commands. In this example, 'a temperature measurement, tt.Tt, is sent to a ch200 charging ... Section 7. Installation when programmed as an sdi-12 sensor, the cr1000 will respond to sdi-12 commands m, mc, c, cc, r, rc, v, ?, and i. See table sdi-12 commands for transparent mode (p. 269) for full command syntax. The following rules apply: 1. A cr1000 can be assigned only one sdi-12 address pe... Section 7. Installation table 44. Sdi-12 sensor setup crbasic example — results measurement command from sdi-12 recorder source variables accessed from the cr1000 acting as a sdi-12 sensor contents of source variables 0m! Source(1), source(2) temperature °c, battery voltage 0m0! Same as 0m! 0m1! Sou... Section 7. Installation table 45. Example power usage profile for a network of sdi-12 probes time (s) command all probes awake time out expires 1 ma 2 ma 3 ma 4 ma total ma 1 1m! Yes 120 66 66 66 318 2 120 66 66 66 318 • • • • • • • • • • • • • • • • • • 14 120 66 66 66 318 15 yes 120 66 66 66 318 1... Section 7. Installation table 46. String operators operator description & concatenates strings. Forces numeric values to strings before concatenation. Example 1 & 2 & 3 & "a" & 5 & 6 & 7 = "123a567" + adds numeric values until a string is encountered. When a string is encountered, it is appended to ... Section 7. Installation + operation is performed. When working with strings, exclusive use of the & operator ensures that no string value will be converted to an integer. Table 47. String concatenation examples expression comments result str(1) = 5.4 + 3 + " volts" add floats, concatenate strings "8... Section 7. Installation i += 1 num(i) = 1 + 2 + "3" + 4 + 5 + "6" '= 33456 i += 1 num(i) = 1 + 2 + "3" + (4 + 5) + "6" '= 3396 i += 1 num(i) = 1 + 2 + "3" + 4 * 5 + "6" '= 33206 i += 1 num(i) = 1 & 2 + 3 + 4 '= 1234 i += 1 num(i) = 1 + 2 + 3 & 4 '= 64 'if a non-numeric string is attempted to be proc... Section 7. Installation but, stringvar(3) still = "12356789", so, stringvar(5) = stringvar(3,1,4+1) '"56789" stringvar(6) = stringvar(3) + 4 + stringvar(3,1,4+1) '"123456789" some smart sensors send strings containing null characters. To manipulate a string that has null characters within it (in add... Section 7. Installation 7.9.19.6 string use of ascii / ansii codes table 50. Use of ascii / ansii codes examples expression comments result longvar (7) = ascii("#") 35 longvar (8) = ascii("*") 42 longvar (9) = "#" cannot be converted to long with null nan longvar (1) = "#"-"" can be converted to lon... Section 7. Installation 7.9.19.8 formatting string hexadecimal variables table 52. Formatting hexadecimal variables — examples expression comment result crlfnumeric(1) = &h0d0a add leading zero to hex step 1 3338 stringvar(20) = "0" & hex(crlfnumeric) add leading zero to hex step 2 0d0a crlfnumeric(... Section 7. Installation crbasic example 61. Subroutine with global and local variables 'this program example demonstrates the use of global and local variables with subroutines. ' 'global variables are those declared anywhere in the program as public or dim. 'local variables are those declared in th... Section 7. Installation the following tcp/ip protocols are supported by the cr1000 when using network-links (p. 652) that use the resident ip stack or when using a cell modem with the ppp/ip key enabled. More information on some of these protocols is in the following sections. • dhcp • dns • ftp • h... Section 7. Installation 7.9.21.2 default http web server the cr1000 has a default home page built into the operating system. The home page can be accessed using the following url: http:\\ipaddress:80 note port 80 is implied if the port is not otherwise specified. As shown in the figure, preconfigure... Section 7. Installation beginning and end of alphanumeric strings inside the parentheses of the httpout() instruction. For additional information, see the crbasic editor help. In this example program, the default home page is replaced by using webpagebegin to create a file called default.Html. The n... Section 7. Installation figure 75. Customized numeric-monitor web page crbasic example 62. Custom web page html 'this program example demonstrates the creation of a custom web page that resides in the 'cr1000. In this example program, the default home page is replaced by using webpagebegin to 'creat... Section 7. Installation httpout (" temperature: " + temperature + " httpout (" httpout (" chr (34) +"monitor.Html"+ chr (34)+">monitor chr (34) +"monitor.Html"+ chr (34)+">monitor httpout (" ") httpout (" ") webpageend 'monitor web page webpagebegin ("monitor.Html",commands) httpout ("") httpout ("b... Section 7. Installation 7.9.21.6 telnet telnet is used to access the same commands that are available through the support software terminal emulator (p. 530). Start a telnet session by opening a dos command prompt and type in: telnet xxx.Xxx.Xxx.Xxx where xxx.Xxx.Xxx.Xxx is the ip address of the net... Section 7. Installation 7.9.21.12 dns the cr1000 provides a domain name server (dns) client that can query a dns server to determine if an ip address has been mapped to a hostname. If it has, then the hostname can be used interchangeably with the ip address in some datalogger instructions. 7.9.21.13... Section 7. Installation table 53. Windvector() outputopt options option description (wvc() is the output array) 4 wvc(1): unit vector mean wind direction (Θ1) wvc(2): standard deviation of wind direction σ(Θu). This standard deviation is calculated using campbell scientific's wind speed weighted alg... Section 7. Installation the epa recommends hourly standard deviation of horizontal wind direction (sigma theta) be computed from four fifteen-minute sub-intervals. 7.9.22.2.1 measured raw data • s i : horizontal wind speed • Θ i : horizontal wind direction • ue i : east-west component of wind • un i... Section 7. Installation where or, in the case of orthogonal sensors where standard deviation of wind direction (yamartino algorithm) where, and ux and uy are as defined above. Mean wind vector resultant mean horizontal wind speed, Ū: figure 77. Mean wind-vector graph where for polar sensors: 299. Section 7. Installation or, in the case of orthogonal sensors: resultant mean wind direction, Θu: standard deviation of wind direction, σ (Θu), using campbell scientific algorithm: the algorithm for σ (Θu) is developed by noting, as shown in the figure standard deviation of direction (p. 300), that ... Section 7. Installation summing (Θ i ') 2 over n samples and dividing by n yields the variance of Θu. Note the sum of the last term equals 0. The term, is 0 if the deviations in speed are not correlated with the deviation in direction. This assumption has been verified in tests on wind data by campb... 8. Operation reading list • quickstart (p. 41) • specifications (p. 97) • installation (p. 99) • operation (p. 303) 8.1 measurements — details related topics: • sensors — quickstart (p. 42) • measurements — overview (p. 62) • measurements — details (p. 303) • sensors — lists (p. 649) several feature... Section 8. Operation • data processed into averages, maxima, minima, and so forth are composites of several measurements. Associated time stamps only reflect the time the last measurement was made and processing calculations were completed, so the significance of the exact time a specific sample was... Section 8. Operation other time-processing crbasic instructions are governed by these same rules. Consult crbasic editor help for more information on specific instructions. 8.1.2 analog measurements — details related topics: • analog measurements — overview (p. 63) • analog measurements — details (p... Section 8. Operation figure. Simplified voltage measurement sequence -- 8 10 30 figure 79. Simplified voltage measurement sequence voltage measurements are made using a successive approximation a-to-d (p. 507) converter to achieve a resolution of 14 bits. Prior to the a-to-d, a high impedance progra... Section 8. Operation the cr1000 measures analog voltage by integrating the input signal for a fixed duration and then holding the integrated value during the successive approximation analog-to-digital (a-to-d) conversion. The cr1000 can make and store measurements from up to eight differential or 16... Section 8. Operation numbered se terminals on the cr1000 wiring panel. The single-ended configuration is used with the following crbasic instructions: • voltse() • brhalf() • brhalf3w() • tcse() • therm107() • therm108() • therm109() • thermistor() related topics: • differential measurements — overv... Section 8. Operation an approximate 9% range overhead exists on fixed input voltage ranges. In other words, over-range on the ±2500 mv input range occurs at approximately 2725 mv and –2725 mv. The cr1000 indicates a measurement over-range by returning a nan (not a number) for the measurement. Automa... Section 8. Operation input limits / common-mode range related topicss: • voltage measurements — specifications • voltage measurements — overview (p. 63) • voltage measurements — details (p. 305) note this section contains advanced information not required for normal operation of the cr1000. Summary ... Section 8. Operation figure 81. Pgia with input-signal decomposition – 8.1.2.1.3 voltage measurement quality read more consult the following technical papers at www.Campbellsci.Com/app- notes (http://www.Campbellsci.Com/app-notes) for in-depth treatments of several topics addressing voltage measurem... Section 8. Operation reasons for using single-ended measurements, however, include: • not enough differential terminals available. Differential measurements use twice as many h/l] terminals as do single-ended measurements. • rapid sampling is required. Single-ended measurement time is about half tha... Section 8. Operation (v+ + v–)/2 or the voltage remaining on the inputs when v dm = 0. The total voltage on the v+ and v– inputs is given as v+ = v cm + v dm /2, and v l = v cm – v dm /2, respectively. Measurement accuracy read more for an in-depth treatment of accuracy estimates, see the technical ... Section 8. Operation 7.5 1.0 2.0 2.5 0.33 0.67 note — see specifications (p. 97) for a complete tabulation of measurement resolution as an example, figure voltage measurement accuracy band example (p. 314) shows changes in accuracy as input voltage changes on the ±2500 input range. Percent-of-readin... Section 8. Operation measurement accuracy example the following example illustrates the effect percent-of-reading and offset have on measurement accuracy. The effect of offset is usually negligible on large signals: example: • sensor-signal voltage: ≈2500 mv • crbasic measurement instruction: voltdi... Section 8. Operation the magnitude of the frequency response of an analog integrator is a sin(x)/x shape, which has notches (transmission zeros) occurring at 1/(integer multiples) of the integration duration. Consequently, noise at 1/(integer multiples) of the integration duration is effectively rej... Section 8. Operation to-d (p. 507) conversion as listed in table ac noise rejection on small signals (p. 317). Table 60. Ac noise rejection on small signals 1 ac power line frequency measurement integration duration crbasic integration code 60 hz 16.667 ms _60hz 50 hz 20 ms _50hz 1 applies to all an... Section 8. Operation • a relatively large transient induced by an adjacent excitation conductor on the signal conductor, if present,because of capacitive coupling during a bridge measurement • dielectric absorption. 50 hz or 60 hz integrations require a relatively long reset time of the internal int... Section 8. Operation table 62. Crbasic measurement settling times settlingtime argument integ argument resultant settling time 1 1 450 µs is the minimum settling time required to meet cr1000 resolution specifications. Settling errors when sensors require long lead lengths, use the following general ... Section 8. Operation crbasic example 64. Measuring settling time 'this program example demonstrates the measurement of settling time using a single 'measurement instruction multiple times in succession. In this case, the program measures 'the temperature of the cr1000 wiring panel. Public reftemp 'd... Section 8. Operation figure 85. Settling time for pressure transducer table 63. First six values of settling-time data timestamp rec pt(1) pt(2) pt(3) pt(4) pt(5) pt(6) smp smp smp smp smp smp 1/3/2000 23:34 0 0.03638599 0.03901386 0.04022673 0.04042887 0.04103531 0.04123745 1/3/2000 23:34 1 0.03658... Section 8. Operation appending the range code with a c results in a 50 µs internal connection of the v+ input of the pgia to a large over-voltage. The v– input is connected to ground. Upon disconnecting the inputs, the true input signal is allowed to settle and the measurement is made normally. If t... Section 8. Operation offset voltage compensation related topics • auto calibration — overview (p. 92) • auto calibration — details (p. 344) • auto-calibration — errors (p. 490) • offset voltage compensation (p. 323) • factory calibration (p. 94) • factory calibration or repair procedure (p. 476) sum... Section 8. Operation voltages, especially those below 200 mv, such as are output from pyranometers and thermocouples. Differential measurements also have the advantage of an input reversal option, revdiff. When revdiff is true, two differential measurements are made, the first with a positive polari... Section 8. Operation a measurement sequence if a single measurement instruction must be used. The table offset-voltage compensation options (p. 325) lists some of the tools available to minimize the effects of offset voltages. Table 65. Offset voltage compensation options crbasic measurement instruc... Section 8. Operation 2. Sets the excitation, and then settle, and then measure 3. Reverse the excitation, and then settles, and then measure 4. Reverse the excitation, reverse the input terminals, settle, measure 5. Reverse the excitation, settle, measure there are four delays per measure. The cr100... Section 8. Operation 8.1.2.2 thermocouple measurements —- details related topics: • thermocouple measurements — details • thermocouple measurements — instructions thermocouple measurements are special case voltage measurements. Note thermocouples are inexpensive and easy to use. However, they pose s... Section 8. Operation voltage polynomial fit error, the non-ideal nature of the thermocouple (deviation from standards published in nist monograph 175), the thermocouple-voltage measurement accuracy, and the voltage-to-temperature polynomial fit error (difference between nist standard and cr1000 poly... Section 8. Operation figure 86. Panel-temperature error summary figure 87. Panel-temperature gradients (low temperature to high) 329. Section 8. Operation figure 88. Panel-temperature gradients (high temperature to low) thermocouple limits of error the standard reference that lists thermocouple output voltage as a function of temperature (reference junction at 0°c) is the nist (national institute of standards and technology) monog... Section 8. Operation thermocouple. Table 66. Limits of error for thermocouple wire (reference junction at 0°c) thermocouple temperature limits of error (whichever is greater) type range °c standard special t –200 to 0 ± 1.0 °c or 1.5% 0 to 350 ± 1.0 °c or 0.75% ± 0.5 °c or 0.4% j 0 to 750 ± 2.2 °c o... Section 8. Operation table 67. Voltage range for maximum thermocouple resolution reference temperature at 20°c tc type and temperature range (°c) temperature range (°c) for ±2.5 mv input range temperature range (°c) for ±7.5 mv input range temperature range (°c) for ±25 mv input range temperature ra... Section 8. Operation reference temperature = 25 °c delta t (temperature difference) = 20 °c thermocouple output multiplier at 45 °c = 42.4 µv °c -1 thermocouple output = 20°c • 42.4 µv °c -1 = 830.7 µv input range = ±2.5 mv error calculations with input reversal = true µv error = gain term + offset ... Section 8. Operation error calculations with input reversal = false µv error = gain term + offset term = (44500 µv * 0.12%) + (3 * 66.7 µv + 2.0 µv) = 53.4 µv + 200 µv = 7.25 µv (= 7.25 °c) ground looping error when the thermocouple measurement junction is in electrical contact with the object being... Section 8. Operation table 68. Limits of error on cr1000 thermocouple polynomials tc type range °c limits of error °c relative to nist standards 200 to 1000 ±0.02 k – 50 to 1372 –50 to 950 ±0.01 950 to 1372 ±0.04 reference-junction error thermocouple instructions tcdiff() and tcse() include the para... Section 8. Operation • the typical (and industry accepted) manufacturing error of thermocouple wire • the reference temperature the table thermocouple error examples (p. 336) tabulates the relative magnitude of these errors. It shows a worst case example where, • a temperature of 45 °c is measured w... Section 8. Operation junction box wherein the reference junction is the cr1000. Terminal strips are a different metal than the thermocouple wire. Thus, if a temperature gradient exists between a and a' or b and b', the junction box will act as another thermocouple in series, creating an error in the... Section 8. Operation by supplying a precise and known voltage to a resistive-bridge circuit and measuring the returning voltage, resistance can be calculated. Crbasic instructions for measuring resistance include: brhalf() — half-bridge brhalf3w() — three-wire half-bridge brhalf4w() — four-wire half... Section 8. Operation table 71. Resistive-bridge circuits with voltage excitation resistive-bridge type and circuit diagram crbasic instruction and fundamental relationship other relationships half-bridge 1 crbasic instruction: brhalf() fundamental relationship 2 : three-wire half-bridge 1,3 crbasic ... Section 8. Operation table 71. Resistive-bridge circuits with voltage excitation resistive-bridge type and circuit diagram crbasic instruction and fundamental relationship other relationships full-bridge 1,3 crbasic instruction: brfull() fundamental relationship 2 : these relationships apply to brfu... Section 8. Operation crbasic example 65. Four-wire full-bridge measurement and processing 'this program example demonstrates the measurement and processing of a four-wire resistive 'full bridge. In this example, the default measurement stored in variable x is 'deconstructed to determine the resistan... Section 8. Operation note error discussed in this section and error-related specifications of the cr1000 do not include error introduced by the sensor or by the transmission of the sensor signal to the cr1000. The accuracy specifications for ratiometric-resistance measurements are summarized in the ... Section 8. Operation sets the polarity of v r to negative. Table 73. Straincalc() instruction equations straincalc() brconfig code configuration 1 quarter-bridge strain gage: 2 half-bridge strain gage. One gage parallel to strain, the other at 90° to strain. 3 half-bridge strain gage. One gage paral... Section 8. Operation straincalc example: see fieldcalstrain() examples (p. 223) 8.1.2.6 auto-calibration — details related topics • auto calibration — overview (p. 92) • auto calibration — details (p. 344) • auto-calibration — errors (p. 490) • offset voltage compensation (p. 323) • factory calibrat... Section 8. Operation worst-case is (91 segments) • (4 s / segment) = 364 s per complete self-calibration. During instrument power-up, the cr1000 computes calibration coefficients by averaging ten complete sets of self-calibration measurements. After power up, newly determined g and b values are low-... Section 8. Operation table 74. Auto calibration gains and offsets status table element descriptions of status table elements differential (diff) single-ended (se) offset or gain ±mv input range integration calgain(1) gain 5000 250 ms calgain(2) gain 2500 250 ms calgain(3) gain 250 250 ms calgain(4) ... Section 8. Operation table 74. Auto calibration gains and offsets status table element descriptions of status table elements differential (diff) single-ended (se) offset or gain ±mv input range integration calseoffset(16) se offset 25 50 hz rejection calseoffset(17) se offset 7.5 50 hz rejection cal... Section 8. Operation table 75. Calibrate() instruction results array cal() element descriptions of array elements typical value differential (diff) single-ended (se) offset or gain ±mv input range integration 10 se offset 25 250 ms ±5 lsb 11 diff offset 25 250 ms ±5 lsb 12 gain 25 250 ms –0.0067 mv/... Section 8. Operation table 75. Calibrate() instruction results array cal() element descriptions of array elements typical value differential (diff) single-ended (se) offset or gain ±mv input range integration 44 diff offset 250 50 hz rejection ±5 lsb 45 gain 250 50 hz rejection –0.067 mv/lsb 46 se o... Section 8. Operation figure 91. Pulse-sensor output-signal types figure 92. Switch-closure pulse sensor 350 Section 8. Operation figure 93. Terminals configurable for pulse input table 76. Pulse measurements:, terminals and programming measurement p terminals c terminals crbasic instruction low-level ac, counts puls eco unt () low-level ac, hz low-level ac, running average high frequency, counts high freq... Section 8. Operation 8.1.3.1 pulse measurement terminals p terminals • input voltage range = –20 to 20 v if pulse input voltages exceed ±20 v, third-party external-signal conditioners should be employed. Contact a campbell scientific application engineer if assistance is needed. Under no circumstanc... Section 8. Operation p terminals • maximum input frequency is dependent on input voltage: o 1.0 to 20 hz at 20 mv rms o 0.5 to 200 hz at 200 mv rms o 0.3 to 10 khz at 2000 mv rms o 0.3 to 20 khz at 5000 mv rms • crbasic instruction: pulsecount() internal ac coupling is used to eliminate dc-offset vo... Section 8. Operation where fr = resolution of the frequency measurement (hz) s = scan interval of crbasic program resolution of a frequency measurement made with the timerio() instruction is where fr = frequency resolution of the measurement (hz) r = timing resolution of the timerio() measurement = ... Section 8. Operation a: in the background, a 32-bit-timer counter is saved each time the signal transitions as programmed (rising or falling). This counter is running at a fixed high frequency. A count is also incremented for each transition. When the timerio() instruction executes, it uses the diff... Section 8. Operation c terminals • maximum input frequency • crbasic instruction: timerio() • rising or falling edges of a square-wave signal are detected: o rising edge — transition from 3.5 vdc. O falling edge — transition from >3.5 vdc to • edge-timing resolution is approximately 540 ns. 8.1.3.6 ... Section 8. Operation table 79. Switch closures and open collectors on p terminals switch closure on p terminal open collector on on p terminal table 80. Switch closures and open collectors on c terminals switch closure on c terminal: no pull-up switch closure on c terminal: 5 vdc pull-up open collec... Section 8. Operation switch closure on c terminal: 12 vdc pull-up open collector on c terminal: 12 vdc pull-up internal cr1000 circuitry that supports open-collector and switch-closure measurements (fyi) • pay attention to specifications. Take time to understand the signal to be measured and compati... Section 8. Operation 8.1.3.7.1 timerio() nan conditions • nan will be the result of a timerio() measurement if one of two conditions occurs: o timeout expires o the signal frequency is too fast (> 3 khz). When a c terminal experiences a too fast frequency, the cr1000 operating system disables the in... Section 8. Operation table 83. Low-level ac amplitude and maximum measured frequency ac mv (rms) maximum frequency 20 200 2000 5000 20 200 10,000 20,000 figure 94. Amplitude reduction of pulse-count waveform (before and after 1 µs time-constant filter) 8.1.4 period averaging — details related topics... Section 8. Operation signals, but it is not recommended for small amplitude sensor signals. For sensor amplitudes less than 20 mv peak-to-peak, a dc blocking capacitor is recommended to center the signal at cr1000 ground (threshold = 0) because of offset voltage drift along with limited accuracy (±1... Section 8. Operation the figure vibrating-wire sensor (p. 362) illustrates basic construction of a sensor. To make a measurement, plucking and pickup coils are excited with a swept frequency (p. 530). The ideal behavior then is that all non-resonant frequencies quickly decay, and the resonant freque... Section 8. Operation 76) for those terminals and serial ports configurable for either ttl or true rs-232 communications. Use of the cs i/o port for true rs-232 communications requires use of an interface device. See the appendix cs i/o serial interfaces (p. 652). If additional serial inputs are requ... Section 8. Operation by adding fieldcal() or fieldcalstrain() instructions to the cr1000 crbasic program, measurements of a linear sensor can be adjusted by modifying the programmed multiplier and offset applied to the measurement. 8.1.8 cabling effects related topics: • cabling effects — overview (... Section 8. Operation 8.1.9 synchronizing measurements related topics: • synchronizing measurements — overview (p. 74) • synchronizing measurements — details (p. 365) timing of a measurement is usually controlled relative to the cr1000 clock. When sensors in a sensor network are measured by a single ... Section 8. Operation 4. Radios — a pakbus enabled radio network has an advantage over ethernet in that clockreport() can be broadcast to all dataloggers in the network simultaneously. Each will set its clock with a single pakbus broadcast from the master. Each datalogger in the network must be progr... Section 8. Operation 8.2.2 pulse-input modules read more for more information see appendix pulse-input modules list (p. 646). Pulse-input expansion modules are available for switch-closure, state, pulse-count and frequency measurements, and interval timing. 8.2.2.1 low-level ac input modules — overv... Section 8. Operation digital-to-analog conversion to output an analog voltage or current. The output level is maintained until updated by the cr1000. 8.2.7 plc control modules — overview related topics: • plc control — overview (p. 74) • plc control — details (p. 244) • plc control modules — overvie... Section 8. Operation figure 99. Current sourcing from c terminals configured for control 8.2.7.2 relays and relay drivers read more for more information see appendix relay drivers modules list (p. 649). Several relay drivers are manufactured by campbell scientific. Compatible, inexpensive, and relia... Section 8. Operation figure 100. Relay driver circuit with relay figure 101. Power switching without relay 8.3 memory related topics: • memory — overview (p. 87) • memory — details (p. 370) • data storage devices — list (p. 653) 8.3.1 storage media cr1000 memory consists of four non-volatile storage... Section 8. Operation table cr1000 memory allocation (p. 371) and table cr1000 sram memory (p. 372) illustrate the structure of cr1000 memory around these media. The cr1000 uses and maintains most memory features automatically. However, users should periodically review areas of memory wherein data fi... Section 8. Operation table 84. Cr1000 memory allocation internal serial flash 3 512 kb • device settings (12 kb) — pakbus address and settings, station name. Rebuilt when a setting changes. • cpu:drive (500 kb) — program files, field calibration files, other files not frequently overwritten. When a ... Section 8. Operation table 85. Cr1000 main memory use comments static memory operational memory used by the operating system. Rebuilt at power-up, program re-compile, and watchdog events. ———————————— operating settings and properties "keep" (p. 519) memory. Stores settings such as pakbus address, s... Section 8. Operation table 86. Memory drives drive recommended file types cpu: 1 cr1, .Cal usr: 2 cr1, .Cal usb: .Dat crd: principal use is to expand final-data memory (p. 515), but it is also used to store .Jpg, cr1, and .Dat files. 1 the cpu: drive uses a fat16 file system, so it is limited to 128... Section 8. Operation 8.3.1.1.3 usr: drive sram can be partitioned to create a fat32 usr: drive, analogous to partitioning a second drive on a pc hard disk. Certain types of files are stored to usr: to reserve limited cpu: memory for datalogger programs and calibration files. Partitioning also helps ... Section 8. Operation caution when removing mass-storage devices, do so when the led is not flashing or lit. Consider the following when using campbell scientific mass-storage devices: • format as fat32 • connect to the cr1000 cs i/o port • remove only when inactive or data corruption may result 8.3.... Section 8. Operation to sram. When a card is inserted later, data accumulated in the sram table are copied to the card. Formatting memory cards the cr1000 accepts memory cards formatted as fat or fat32; however, fat32 is recommended. Otherwise, some functionality, such as the ability to manage large... Section 8. Operation header, time stamps, and record numbers are usually required. Fully compatible formats are indicated with an asterisk. A more detailed discussion of data-file formats is available in the campbell scientific publication loggernet instruction manual, which is available at www.Camp... Section 8. Operation data-file format examples tob1 tob1 files may contain an ascii header and binary data. The last line in the example contains cryptic text which represents binary data. Example: "tob1","11467","cr1000","11467","cr1000.Std.20","cpu:file format.Cr1","61449","test" "seconds","nanose... Section 8. Operation csijson csijson files contain header information and data in a json (p. 519) format. Example: "signature": 38611,"environment": {"stationfiname": "11467","tablefiname": "test","model": "cr1000","serialfino": "11467", "osfiversion": "cr1000.Std.21.03","progfiname": "cpu:file form... Section 8. Operation tablefile() instruction optionally includes timestamps in some formats. Record element 2 – record number record numbers are optionally provided in some formats as a means to ensure data integrity and provide an up-count data field for graphing operations. The maximum record numb... Section 8. Operation editor compile, save and send (p. 511). See preserving data at program send (p. 127) for a more-detailed discussion of preserve / erase data at program send. 8.3.3.3 manual data-table reset data-table memory is selectively reset from • support software station status (p. 529) co... Section 8. Operation table 89. File-control functions file-control functions accessed through deleting files from memory drives file control 2 , power-up with campbell scientific mass storage device or memory card 5 , web api filecontrol stopping program execution file control 2 , web api filecontro... Section 8. Operation table 90. Cr1000 file attributes attribute function attribute for programs sent to cr1000 with: (see table powerup.Ini commands (p. 388) ). Run on power-up runs only on power-up a) file control 2 with run on power-up checked. B) campbell scientific mass storage device or memory ... Section 8. Operation serial number inserted. A second instance of a setting can be configured using the same node pakbus address and same file type, in which case two files will be written according to each of the two settings. For example, (55,usr:photo.Jpg,100) (55:usr:newestphoto.Jpg,0) will stor... Section 8. Operation table 91. Data-preserve options if "preserve data if no table changed" keep cf data from overwritten program if current program = overwritten program keep cpu data keep cache data else erase cpu data erase cache data end if end if if "erase cf data" erase cf data from overwritte... Section 8. Operation • formatting memory drives. • deleting data files associated with the previously running program. When power is connected to the cr1000, it searches for powerup.Ini and executes the command(s) prior to compiling a program. Powerup.Ini performs three operations: 1. Copies the pro... Section 8. Operation table 92. Powerup.Ini commands and applications command description applications 1 1 run always, preserve data copies the specified program to the designated drive and sets the run attribute of the program to run always. Data on a cf card from the previously running program will... Section 8. Operation table 95. Powerup.Ini example. Format the usr: drive 'format the usr: drive 5,,usr: table 96. Powerup.Ini example. Send os on power-up 'load an operating system (.Obj) file into flash as the new os. 9,cr1000.Std.28.Obj table 97. Powerup.Ini example. Run program from usb: drive '... Section 8. Operation available drives. All occurrences are rare, but they are most likely to occur when using the crd: drive. Table 100. File system error codes error code description 1 invalid format 2 device capabilities error 3 unable to allocate memory for file operation 4 max number of availabl... Section 8. Operation table 100. File system error codes error code description 36 miscellaneous i/o error 37 pipe size of 0 requested 38 memory-release error (relmem) 39 fat sectors unreadable (all copies) 40 bad bpb sector 41 time-out waiting for filesystem available 42 controller failure error 43 ... Section 8. Operation 8.4.1 protocols the cr1000 communicates with datalogger support software (p. 95) and other campbell scientific dataloggers (p. 645) using the pakbus (p. 522) protocol. See the section alternate telecommunications — details (p. 407) for information on other supported protocols, s... Section 8. Operation applications. Caution when using the comme communication port with non-pakbus protocols, incoming characters can be corrupted by concurrent use of the cs i/o for sdc communications. Pakbus communications use a low-level protocol (pause / finish / ready sequence) to stop incoming... Section 8. Operation pc and allows backup of settings on the pc hard drive. Pakbusgraph is used over a telecommunication link to change settings, but has no provision for backup. Caution care should be taken when changing pakbus ® addresses with pakbusgraph or in the status table. If an address is c... Section 8. Operation table 101. Pakbus leaf-node and router device configuration network device description pakbus leaf node pakbus router pakbus aware transparent cr200x datalogger • cr6 cs i/o port datalogger • • cr800 datalogger • • cr1000 datalogger • • cr3000 datalogger • • cr5000 datalogger • ... Section 8. Operation • neighbor • neighbor-filters • hello • hello-exchange • hello-message • hello-request • cvi • beacon to form a network, nodes must establish links with neighbors (neighbors are adjacent nodes). Links are established through a process called discovery. Discovery occurs when node... Section 8. Operation event the primary path fails. Redundant and unreliable paths can be eliminated by activating neighbor-filters in the various nodes and by disabling some beacons. 8.5.3.6 maintaining links links are maintained by means of the cvi (p. 511). The cvi can be specified in each node wi... Section 8. Operation hence, the size of the responses to the file-receive commands that the cr1000 sends is governed by the max packet size setting for the datalogger as well as that of any of its parents in the loggernet network map. Note that this calculation also takes into account the error rate... Section 8. Operation figure 103. Flat map figure 104. Tree map the difference between the two configurations is that the flat map configures the router with static routes that report that all of the dataloggers are neighbours to the server. The tree map configures static routes wherein "cr1000" is c... Section 8. Operation 8.5.6 pakbus lan example to demonstrate pakbus networking, a small lan (local area network) of cr1000s can be configured as shown in figure configuration and wiring of pakbus lan (p. 400). A pc running loggernet uses the rs-232 port of the first cr1000 to communicate with all cr... Section 8. Operation 8.5.6.2 lan setup configure cr1000s before connecting them to the lan: 1. Start device configuration utility (devconfig). Click on device type: select cr1000. Follow on-screen instructions to power cr1000s and connect them to the pc. Close other programs that may be using the pc... Section 8. Operation table 103. Pakbus-lan example datalogger-communication settings software→ device configuration utility (devconfig) tab→ deployment sub-tab→ datalogger comport settings advanced setting→ pakbus adr com1 com2 is router sub-setting→ baud rate neighbors 1 baud rate neighbors 1 datal... Section 8. Operation figure 110. Loggernet network-map setup: pakbusport as shown in figure loggernet device map setup: pakbusport (p. 404), set the pakbusport maximum baud rate to 115200. Leave other settings at the defaults. Figure 111. Loggernet network-map setup: dataloggers as shown in figure l... Section 8. Operation 8.5.7 route filters the route filters setting restricts routing or processing of some pakbus message types so that a "state changing" message can only be processed or forwarded by this cr1000 if the source address of that message is in one of the source ranges and the destinatio... Section 8. Operation com4 (c7,c8) 12 ip 1 101,102,… 1 if the value of the port number is ≥ 101, the connection is made through pakbus/tcp, either by the cr1000 executing a tcpopen() instruction or by having a connection made to the pakbus/tcp cr1000 service. Via neighbor adr specifies address of nei... Section 8. Operation receive only encrypted commands and data. Header level information needed for routing is not encrypted. An encrypted cr1000 can also communicate with an unencrypted datalogger. Use an encryptexempt() instruction in the crbasic program to define one or more pakbus addresses to wh... Section 8. Operation the cr1000 communicates with datalogger support software (p. 95) and other campbell scientific dataloggers (p. 645) using the pakbus (p. 522) protocol. Modbus, dnp3, tcp/ip, and several industry-specific protocols are also supported. Can bus is supported when using the campbell ... Section 8. Operation table 105. Dnp3 implementation — data types required to store data in public tables for object groups data type group description boolean 1 binary input 2 binary input change 10 binary output 12 control block long 30 analog input 32 analog change event 40 analog output status 41... Section 8. Operation syntax dnpupdate (dnpslaveaddr,dnpmasteraddr) 8.6.1.2.3 programming for dnp3 data acquisition as shown in crbasic example implementation of dnp3 (p. 410), program the cr1000 to return data when polled by the dnp3 master using the following three actions: 1. Place dnp() at the be... Section 8. Operation public iarray(4) as long public barray(2) as boolean public windspd public winddir public batt_volt public ptemp_c units windspd=meter/sec units winddir=degrees units batt_volt=volts units ptemp_c=deg c 'main program beginprog 'dnp communication over ip at 115.2kbps. Cr1000 dnp ... Section 8. Operation the cr1000 supports modbus master and modbus slave communications for inclusion in modbus scada networks. Modbus is a widely used scada communication protocol that facilitates exchange of information and data between computers / hmi software, instruments (rtus) and modbus-compat... Section 8. Operation terminal configured for control are inferred if parameter 5 of the modbusslave() instruction is set to 0. Coils are assigned to modbus registers 00001 to 09999. Term. Digital registers 10001 to 19999 hold values resulting from a digital measurement. Digital registers in the modb... Section 8. Operation table 107. Crbasic ports, flags, variables, and, modbus registers cr1000 feature example crbasic declaration equivalent example modbus register terminal configured for control public port(8) 00001 to 00009 flag public flag(17) 00001 to 00018 boolean variable public arrayb(56) as... Section 8. Operation 8.6.2.2.4 supported modbus function codes modbus protocol has many function codes. Cr1000 commands support the following. Table 108. Supported modbus function codes code name description 01 read coil/port status reads the on/off status of discrete output(s) in the modbusslave 02... Section 8. Operation 8.6.2.4 modbus over ip modbus over ip functionality is an option with the cr1000. Contact campbell scientific for details. 8.6.2.5 modbus q and a q: can modbus be used over an rs-232 link, 7 data bits, even parity, one stop bit? A: yes. Precede modbusmaster() / modbusslave() wit... Section 8. Operation scan (1,sec,0,0) 'in the case of the cr1000 being the modbus master then the 'modbusmaster instruction would be used (instead of fixing 'the variables as shown between the beginprog and scan instructions). Modbusmaster (result,comrs232,-115200,5,3,register(),-1,2,3,100) 'movebyt... Section 8. Operation 8.6.3.1 pakbus over tcp/ip and callback once the hardware has been configured, basic pakbus ® communication over tcp/ip is possible. These functions include the following: • sending programs • retrieving programs • setting the cr1000 clock • collecting data • displaying the curr... Section 8. Operation figure 112. Preconfigured html home page 8.6.3.3 custom http web server although the default home page cannot be accessed for editing, it can be replaced with the html code of a customized web page. To replace the default home page, save the new home page under the name default.... Section 8. Operation figure 113. Home page created using webpagebegin() instruction figure 114. Customized numeric-monitor web page 420 Section 8. Operation crbasic example 68. Custom web page html 'this program example demonstrates the creation of a custom web page that resides in the 'cr1000. In this example program, the default home page is replaced by using webpagebegin to 'create a file called default.Html. The graphic in the w... Section 8. Operation httpout (" chr (34) + "command=newestrecord&table=status" + chr (34) + _ ">current record from status table chr (34) + "command=newestrecord&table=status" + chr (34) + _ ">current record from status table httpout (" chr (34) +"default.Html"+ chr (34) + ">back to the home page _ ... Section 8. Operation 8.6.3.8 ping (ip) ping can be used to verify that the ip address for the network device connected to the cr1000 is reachable. To use the ping tool, open a command prompt on a computer connected to the network and type in: ping xxx.Xxx.Xxx.Xxx where xxx.Xxx.Xxx.Xxx is the ip addr... Section 8. Operation • data management ̶ collect data • control — crbasic program language logic can allow remote access to many control functions by means of changing the value of a variable. ̶ set variables / flags / ports • clock functions — clock functions allow a web client to monitor and set t... Section 8. Operation if access to the cr1000 web server is attempted without correct security credentials, the cr1000 returns the error 401 authorization required. This error prompts the web browser or client to display a user name and password request dialog box. If .Csipasswd is blank or does not ... Section 8. Operation table 109. Api commands, parameters, and arguments parameter commands in which the parameter is used function of parameter argument(s) format • browsesymbols • dataquery • clockset • clockcheck • filecontrol • listfiles specifies response format. • html, xml, json: apply to all ... Section 8. Operation table 109. Api commands, parameters, and arguments parameter commands in which the parameter is used function of parameter argument(s) expr newestfile specifies path and wildcard expression for the desired set of files to collect. Path and wildcard expression 8.6.3.14.3 time syn... Section 8. Operation examples: command for a response wherein symbols for all tables are returned as html http://192.168.24.106/?Command=browsesymbols&uri=dl:public&fo rmat=html command for a response wherein symbols for all fields in a single table (maindata) are returned as html http://192.168.24.... Section 8. Operation html tabular response: html page source: html public "-//ietf//dtd html//en"> read_only e false /td> /td> /td> /td> d> e xml response when xml is entered in the browsesymbols format parameter, the response will be formated as csixml (p. 90) with a browsesymbolsresponse root elem... Section 8. Operation example page source output: .. Name="status" uri="dl:status" type="6" is_enabled="true" is_read_only="false" can_expand="true"/> name="maindata" uri="dl:maindata" type="6" is_enabled="true" is_read_only="false" can_expand="true"/> name="ballasttank1" uri="dl:ballasttank1" type="... Section 8. Operation { "symbols": [ {"name": "status","uri": "dl:status","type": 6,"is_enabled": true,"is_read_only": false,"can_expand": true}, {"name": "maindata","uri": "dl:maindata","type": 6,"is_enabled": true,"is_read_only": false,"can_expand": true}, {"name": "ballasttank1","uri": "dl:ballast... Section 8. Operation p1 optional. Specifies: • maximum number of records (most-recent) • beginning date and/or time (since-time, date-range). See time syntax (p. 427) for format. • beginning record number (since-record) • interval in seconds (backfill) p2 optional. Specifies: • ending date and/or ti... Section 8. Operation command: http://192.168.24.106/?Command=dataquery&uri=dl:maindata.Cond41& format=html&mode=backfill&p1=7200 response: backfill all records since 3600 seconds ago dataquery response the dataquery format parameter determines the format of theresponse. For more detail concerning da... Section 8. Operation xml response when xml is entered in the dataquery format parameter, the response will be formatted as csixml. Following is an example response. Q2 ballastline cr1000 18583 cr1000.Std.25 cpu:indianaharbor_081712.Cr1 33322 66 66 66 66 66 json response when json is entered in the d... Section 8. Operation ....}, ...."fields": [{ ......"name": "induced_water", ......"type": "xsd:float", ......"process": "smp", ......"settable": false}] }, ......"data": [{ ......"time": "2012-08-21t22:41:50", ......"no": 104, ......"vals": [66] },{ ......"time": "2012-08-21t22:42:00", ......"no": 1... Section 8. Operation "2012-05-04 03:00:00",10,0,-0.8754569,-0.9275675,-0.8910902,- 0.8546127,72.53336,0 "2012-05-04 04:00:00",11,0,-0.8949984,-0.9575311,-0.9106316,- 0.8793653,72.47779,0 "2012-05-04 05:00:00",12,0,-0.9236593,-0.9705587,-0.908026,- 0.8715487,72.4006,0 "2012-05-04 06:00:00",13,0,-0.91... Section 8. Operation setvalueex requires a minimum .Csipasswd access level of 2 (set variables allowed). Table 113. Setvalueex api command parameters uri specifies the variable that should be set in the following format: dl:tablename.Fieldname value specifies the value to set format the following ta... Section 8. Operation html response when html is entered in the setvalueex format parameter, the response will be html following are example responses. Html tabular response: html page source: html public "-//ietf//dtd html//en"> xml response when xml is entered in the setvalueex format parameter, th... Section 8. Operation 8.6.3.14.7 clock functions — clockset command clockset allows a web client to set the cr1000 real time clock. Clockset takes the form: http://ip_address/?Command=clockset&format=html&time=yyyy-mm- ddthh:mm:ss.Ms clockset requires a minimum .Csipasswd access level of 1 (all acces... Section 8. Operation html tabular response: html page source: html public "-//w3c//dtd html 4.01 transitional//en" "http://www.W3.Org/tr/html4/loose.Dtd"> html public "-//ietf//dtd html//en"> xml response when xml is entered in the clockset format parameter, the response will be formated as csixml (... Section 8. Operation example: http://192.168.24.106/?Command=clockcheck&format=html response: checks the host cr1000 real time clock and requests the response be an html table. Clockcheck response the clockcheck format parameter determines the format of the response. If a format is not specified, th... Section 8. Operation html page source: html public "-//w3c//dtd html 4.01 transitional//en" "http://www.W3.Org/tr/html4/loose.Dtd"> html public "-//ietf//dtd html//en"> xml response when xml is entered in the clockcheck format parameter, the response will be formated as csixml (p. 90) with a clockch... Section 8. Operation password password in the .Csipasswrd file ipadr ip address of the cr1000 drive memory drive of the cr1000 examples: to load an operating system to the cr1000, open a command prompt window ("dos window") and execute the following command, as a continuous line: curl -xput -v -s -t... Section 8. Operation curl -v -s --user username:password "http://192.168.24.106/?Command=filecontrol&file=cpu:program.Cr1 &action=1" both operations can be combined in a batch file. 8.6.3.14.10 file management — filecontrol command filecontrol allows a web client to perform file system operations on... Section 8. Operation example: http://192.168.24.106/?Command=filecontrol&file=usr:apitest.Dat& action=4 response: apitest.Dat is deleted from the cr1000 usr: drive. Http://192.168.24.106/?Command=filecontrol&file=cpu:indianajones _090712_2.Cr1&action=1 response: set program file to run now. Http://1... Section 8. Operation listfiles requires a minimum .Csipasswd access level of 3 (read only). Table 122. Listfiles api command parameters format specifies the format of the response. The values html, json, and xml are valid. If this parameter is omitted, or if the value is html, empty, or invalid, the... Section 8. Operation html tabular response: html page source: html public "-//w3c//dtd html 4.01 transitional//en" "http://www.W3.Org/tr/html4/loose.Dtd"> html public "-//ietf//dtd html//en"> 447. Section 8. Operation page source template: html public "-//ietf//dtd html//en"> xml response when xml is entered in the listfiles format parameter, the response will be formated as csixml (p. 90) with a listfilesresponse root element name. Following is an example response. Is_dir="true" 448 is_dir="... Section 8. Operation path="cpu:" size="50000" last_write="yyyy-mm-ddthh:mm:ss.Xxx" run_now="false" run_on_power_up="false" read_only="false" paused="false" /> is_dir="false" path="cpu:lights-web.Cr1" last_write="yyyy-mm-ddthh:mm:ss.Xxx" size="16994" run_now="true" run_on_power_up="true" read_only="f... Section 8. Operation newestfile requires a minimum .Csipasswd access level of 3 (read only) for all files except program files. Program files require access level 1 (all access allowed). Table 124. Newestfile api command parameters expr specifies the complete path and wildcard expression for the des... Section 8. Operation routing, or scheduled data collection. • loggernet datalogger support software supports combined telecommunication options, customized data-monitoring displays, and scheduled data collection. It includes short cut and crbasic editor for creating cr1000 programs. It also includes... Section 8. Operation table 125. Special keyboard-display key functions key special function [end] move cursor to bottom of the list [pg up] move cursor up one screen [pg dn] move cursor down one screen [bkspc] delete character to the left [shift] change alpha character selected [num lock] change to ... Section 8. Operation figure 115. Using the keyboard / display 453. Section 8. Operation 8.8.1 data display figure 116. Displaying data with the keyboard / display 454. Section 8. Operation 8.8.1.1 real-time tables and graphs figure 117. Real-time tables and graphs 8.8.1.2 real-time custom the cr1000kd keyboard display can be configured with a customized real-time display. The cr1000 will keep the setup as long as the defining program is running. Read more custom m... Section 8. Operation figure 118. Real-time custom 456. Section 8. Operation 8.8.1.3 final-memory tables figure 119. Final-memory tables 457. Section 8. Operation 8.8.2 run/stop program figure 120. Run/stop program 458. Section 8. Operation 8.8.3 file display figure 121. File display 8.8.3.1 file: edit the crbasic editor is recommended for writing and editing datalogger programs. When making minor changes with the cr1000kd keyboard display, restart the program to activate the changes, but be aware that, unless prog... Section 8. Operation figure 122. File: edit 460 Section 8. Operation 8.8.4 pccard (memory card) display figure 123. Pccard (cf card) display 461. Section 8. Operation 8.8.5 ports and status read more see the appendix registers. Figure 124. C terminals (ports) status 8.8.6 settings figure 125. Settings 462. Section 8. Operation 8.8.6.1 set time / date move the cursor to time element and press enter to change it. Then move the cursor to set and press enter to apply the change. 8.8.6.2 pakbus settings in the settings menu, move the cursor to the pakbus® element and press enter to change it. After modifyi... Section 8. Operation a: compressing a file has the potential of significantly reducing its size. Actual reduction depends primarily on the number and proximity of redundant blocks of information in the file. A reduction in file size means fewer bytes are transferred when sending a file to a datalogg... Section 8. Operation c) when prompted, set the archive format to “gzip”. D) select ok. The resultant file names will be of the type “myprogram.Cr1.Gz” and “cr1000.Std.25.Obj.Gz”. Note that the file names end with “.Gz”. The ".Gz” extension must be preceded with the original file extension (.Cr1, .Ob... Section 8. Operation 8.10 memory cards and record numbers related topics: • memory card (crd: drive) — overview (p. 89) • memory card (crd: drive) — details (p. 376) • memory cards and record numbers (p. 466) • data output: writing high-frequency data to memory cards (p. 205) • file-system errors (p... Section 8. Operation not stop earlier, or is ring and not fill-and-stop, then more records will be stored on the card than originally allocated, i.E., about 2 kb worth of records, assuming no lapses. At the point the writing of final-data stops, the cr1000 recalculates the number of records, display... Section 8. Operation 8.11.1 vulnerabilities while "security through obscurity" may have provided sufficient protection in the past, campbell scientific dataloggers increasingly are deployed in sensitive applications. Devising measures to counter malicious attacks, or innocent tinkering, requires an ... Section 8. Operation 8.11.2 pass-code lockout pass-code lockouts (historically known in campbell scientific dataloggers simply as "security codes") are the oldest method of securing a datalogger. Pass-code lockouts can effectively lock out innocent tinkering and discourage wannabe hackers on non-ip ... Section 8. Operation • level 2 — data collection is unrestricted, requiring no security code. If the user enters the security2 code, the datalogger clock can be changed and variables in the public table can be changed. • level 3 — when this level is set, all communication with the datalogger is proh... Section 8. Operation 8.11.3.3 tcp/ip instructions the following crbasic instructions that service cr1000 ip capabilities have provisions for password protection: • emailrecv() • emailsend() • ftpclient() 8.11.3.4 settings — passwords settings, which are accessible with devconfig (p. 111), enable the... Section 8. Operation file name are not available for viewing. See file management (p. 382) for more information. 8.11.7 signatures recording and monitoring system and program signatures are important components of a security scheme. Read more about use of signatures in programming to use signatures ... 9. Maintenance — details related topics: • maintenance — overview (p. 93) • maintenance — details (p. 473) • protect the cr1000 from humidity and moisture. • replace the internal lithium battery periodically. • send to campbell scientific for factory calibration every three years. 9.1 protection fro... Section 9. Maintenance — details o run-now and run-on power-up settings. O routing and communication logs (relearned without user intervention). O time. Clock will need resetting when the battery is replaced. O final-memory data tables. A replacement lithium battery can be purchased from campbell sc... Section 9. Maintenance — details figure 128. Pull edge away from panel pull one edge of the canister away from the wiring panel to loosen it from three internal connector seatings. Figure 129. Remove nuts to disassemble canister 475. Section 9. Maintenance — details remove six nuts, then open the clam shell. Figure 130. Remove and replace battery remove the lithium battery by gently prying it out with a small flat point screwdriver. Reverse the disassembly procedure to reassemble the cr1000. Take particular care to ensure the ca... Section 9. Maintenance — details scientific's shipping address is: campbell scientific, inc. Rma#_____ 815 west 1800 north logan, utah 84321-1784 for all returns, the customer must fill out a "statement of product cleanliness and decontamination" form and comply with the requirements specified in it... 10. Troubleshooting if a system is not operating properly, please contact a campbell scientific application engineer for assistance. When using sensors, peripheral devices, or telecommunication hardware, look to the manuals for those products for additional help. Note if a campbell scientific produc... Section 10. Troubleshooting the principle of independent verification, the root cause of most errors can be determined and remedies put into effect. Errors are indicated by multiple means, a few of which actually communicate using the word error. Things that indicate that a closer look should be tak... Section 10. Troubleshooting 10.4 troubleshooting — status table information in the status table lends insight into many problems. The appendix status table and settings (p. 603) documents status table registers and provides some insights as to how to use the information in troubleshooting. Review th... Section 10. Troubleshooting 10.5.3 nan and ±inf nan (not-a-number) and ±inf (infinite) are data words indicating an exceptional occurrence in datalogger function or processing. Nan is a constant that can be used in expressions as shown in the following code snip that sets a crbasic control feature (... Section 10. Troubleshooting 10.5.3.3 data types, nan, and ±inf nan and ±inf are presented differently depending on the declared-variable data type. Further, they are recorded differently depending on the final-memory data type chosen compounded with the declared-variable data type used as the source... Section 10. Troubleshooting table 129. Variable and final-memory data types with nan and ±inf final-memory data type & associated stored values variable type test expression public / dim variables fp2 ieee4 uint2 unit4 string bool bool8 long as float 1 / 0 inf inf 1 inf 1 65535 2 4294967295 +inf tru... Section 10. Troubleshooting crbasic example 69. Using nan to filter data 'this program example demonstrates the use of nan to filter what data are used in output processing functions such as 'averages, maxima, and minima. 'declare variables and units public tc_refc public tc_tempc public disvar as b... Section 10. Troubleshooting messages may not be obvious because the display is limited. Much of this information is more easily accessed through the datalogger support software (p. 95) station status report. The message reports the following: • program compiled ok • warnings about possible problems ... Section 10. Troubleshooting table 130. Warning message examples message meaning warning: internal data storage memory was re-initialized. Sending a new program has caused final- memory to be re-allocated. Previous data are no longer accessible. Warning: machine self-calibration failed. Indicates a p... Section 10. Troubleshooting 10.5.4.4 skippedrecord skippedrecord is normally incremented when a write-to-data-table event is skipped, which usually occurs because a scan is skipped. Skippedrecord is not incremented by all events that leave gaps in data, including cycling power to the cr1000. 10.5.4.... Section 10. Troubleshooting if any of the previous are not the apparent cause, contact a campbell scientific application engineer for assistance. Causes that require assistance include the following: • memory corruption. Check for memory failures with m command in terminal mode (p. 501). • operating... Section 10. Troubleshooting 10.6 troubleshooting — operating systems updating the cr1000 operating system will sometimes fix a problem. Operating systems are available, free of charge, at www.Campbellsci.Com/downloads (http://www.Campbellsci.Com/downloads). Operating systems undergo extensive testin... Section 10. Troubleshooting 10.8.2 communicating with multiple pcs the cr1000 can communicate with multiple pcs simultaneously. For example, the cr1000 may be a node of an internet pakbus network communicating with a distant instance of loggernet. An onsite technician can communicate with the cr1000... Section 10. Troubleshooting the following expressions are used to pick the individual values from commsmemfree(1): tiny = commsmemfree(1) % 100 lil = (commsmemfree(1) / 100) % 100 mid = (commsmemfree(1) / 10000) % 100 med = (commsmemfree(1) / 1000000) % 100 lrg = (commsmemfree(1) / 100000000) % 100 ... Section 10. Troubleshooting commsmemfree(2). Doubling pakbusnodes to 100 doubles commsmemfree(2) from ≈300 to ≈600 (assuming a large pakbus network has not been just discovered). The larger the discovered pakbus network, and the larger the number of simultaneous tcp connections, the smaller commsmem... Section 10. Troubleshooting 10.9 troubleshooting — power supplies related topics: • power supplies — specifications • power supplies — quickstart (p. 44) • power supplies — overview (p. 85) • power supplies — details (p. 100) • power supplies — products (p. 657) • power sources (p. 101) • troublesho... Section 10. Troubleshooting 10.9.3 troubleshooting power supplies — procedures required equipment: o voltmeter o 5 kΩ resistor o 50 Ω, 1 watt resistor for the charging circuit tests and to adjust the charging circuit voltage. 10.9.3.1 battery test the procedure outlined in this flow chart tests seal... Section 10. Troubleshooting battery test if using a rechargeable power supply, disconnect the charging source (i.E., solar panel or ac transformer) from the battery pack. Wait 20 minutes before proceeding with this test. Test voltage at charging regulator set a voltmeter to read dc voltage as high a... Section 10. Troubleshooting charging regulator with solar-panel test disconnect any wires attached to the 12v and g (ground) terminals on the ps100 or ch100 charging regulator. Unplug any batteries. Connect the solar panel to the two chg terminals. Polarity of inputs does not matter. Only the solar ... Section 10. Troubleshooting 10.9.3.3 charging regulator with transformer test the procedure outlined in this flow chart tests ps100 and ch100 charging regulators that use ac/ac or ac/dc transformers as power source. If a need for repair is indicated after following the procedure, see warranty and as... Section 10. Troubleshooting charging regulator with ac or dc transformer test disconnect any wires attached to the 12v and g (ground) terminals on the ps100 or ch100 charging regulator. Unplug any batteries. Connect the power input ac or dc transformer to the two chg terminals. Polarity of the input... Section 10. Troubleshooting adjusting charging circuit 1) place a 5 kΩ resistor between a 12v terminal and a g (ground) ground terminal on the charging regulator. Use a voltmeter to measure the voltage across the 5 kΩ resistor. 2) connect a power source that supplies a voltage >17 v to the input chg... Section 10. Troubleshooting figure 131. Potentiometer r3 on ps100 and ch100 charger / regulator 10.10 terminal mode table cr1000 terminal commands (p. 502) lists terminal mode options. With exception of perhaps the c command, terminal options are not necessary to routine cr1000 operations. To enter ... Section 10. Troubleshooting table 133. Cr1000 terminal commands option description use 0 scan processing time; real time in seconds lists technical data concerning program scans. 1 serial flash data dump campbell scientific engineering tool 2 read clock chip lists binary data concerning the cr1000 c... Section 10. Troubleshooting table 133. Cr1000 terminal commands option description use sdi12 sdi12 talk through issue commands from keyboard that are passed through the cr1000 sdi-12 port to the connected device. Similar in concept to serial talk through. T unused u data recovery provides the means ... Section 10. Troubleshooting frequently open and close a serial port, the probability is higher that a non-pakbus character will arrive at the closed serial port, thus closing an existing talk-through or comms watch session. If this occurs, the filemanager() setting to send comms watch or sniffer to ... Section 10. Troubleshooting or usb: drive back in place and re-run the datalogger data recovery wizard before restarting the crbasic program. In any case, even when the recovery runs properly, the result will be that good data is recovered mixed with sections of empty or old junk. With the entire da... 11. Glossary 11.1 terms term. Ac see vac (p. 532). Term. Accuracy a measure of the correctness of a measurement. See also the appendix accuracy, precision, and resolution (p. 533). Term. A-to-d analog-to-digital conversion. The process that translates analog voltage levels to digital values. Term. A... Section 11. Glossary term. Asynchronous the transmission of data between a transmitting and a receiving device occurs as a series of zeros and ones. For the data to be "read" correctly, the receiving device must begin reading at the proper point in the series. In asynchronous communication, this coo... Section 11. Glossary term. Burst refers to a burst of measurements. Analogous to a burst of light, a burst of measurements is intense, such that it features a series of measurements in rapid succession, and is not continuous. Term. Calibration wizard the calibration wizard facilitates the use of the... Section 11. Glossary term. Compactflash compactflash ® (cf) is a memory-card technology used in some campbell scientific card-storage modules. Compactflash ® is a registered trademark of the compactflash ® association. Term. Input/output instructions usually refers to a crbasic command. Term. Comman... Section 11. Glossary term. Cpu central processing unit. The brains of the cr1000. Also refers to two the following two memory areas: o cpu: memory drive o memory used by the cpu to store table data. Term. Cr1000kd an optional hand-held keyboard display for use with the cr1000 datalogger. See the app... Section 11. Glossary term. Datalogger support software campbell scientific software that includes at least the following functions: o datalogger telecommunications o downloading programs o clock setting o retrieval of measurement data see datalogger support software — overview (p. 95) and the append... Section 11. Glossary processing memory. Term. Dc see vdc (p. 532). Term. Dce data communication equipment. While the term has much wider meaning, in the limited context of practical use with the cr1000, it denotes the pin configuration, gender, and function of an rs-232 port. The rs-232 port on the ... Section 11. Glossary term. Dte data terminal equipment. While the term has much wider meaning, in the limited context of practical use with the cr1000, it denotes the pin configuration, gender, and function of an rs-232 port. The rs-232 port on the cr1000 is dce. Attachment of a null-modem cable to ... Section 11. Glossary term. Execution time time required to execute an instruction or group of instructions. If the execution time of a program exceeds the scan() interval, the program is executed less frequently than programmed and the status table skippedscan (p. 487) register will increment. Term.... Section 11. Glossary term. Flash a type of memory media that does not require battery backup. Flash memory, however, has a lifetime based on the number of writes to it. The more frequently data are written, the shorter the life expectancy. Term. Float four-byte floating-point data type. Default cr10... Section 11. Glossary term. Garbage the refuse of the data communication world. When data are sent or received incorrectly (there are numerous reasons why this happens), a string of invalid, meaningless characters (garbage) often results. Two common causes are: 1) a baud-rate mismatch and 2) synchron... Section 11. Glossary term. Include file a file containing crbasic code to be included at the end of the current crbasic program, or it can be run as the default program. See include file name setting (p. 603). Term. Inf a data word indicating the result of a function is infinite or undefined. Term. ... Section 11. Glossary signals to pass, but breaks alternate ground paths and may filter some electromagnetic noise. Campbell scientific offers optically isolated rs-232 to cs i/o interfaces as a cr1000 accessory for use on the cs i/o port. See the appendix serial i/o modules list (p. 646). Term. Json... Section 11. Glossary term. Mains power the national power grid term. Manually initiated initiated by the user, usually with a cr1000kd keyboard display (p. 651), as opposed to occurring under program control. Term. Mass storage device usb: "thumb" drive. See appendix data storage devices (p. 653). T... Section 11. Glossary term. Mv the si abbreviation for millivolts. Term. Nan not a number. A data word indicating a measurement or processing error. Voltage over-range, sdi-12 sensor error, and undefined mathematical results can produce nan. See the section nan and ±inf (p. 482). Term. Neighbor devic... Section 11. Glossary term. Ohm's law describes the relationship of current and resistance to voltage. Voltage equals the product of current and resistance (v = i • r). Term. On-line data transfer routine transfer of data to a peripheral left on-site. Transfer is controlled by the program entered in ... Section 11. Glossary node is typically a campbell scientific datalogger, a pc, or a telecommunication device. See section datalogger support software (p. 450). Term. Parameter parameter (p. 523): part of a procedure (or command) definition. Argument (p. 507): part of a procedure call (or command exe... Section 11. Glossary term. Preservevariables crbasic instruction that protects public variables from being erased when a program is recompiled. Term. Print device any device capable of receiving output over pin 6 (the pe line) in a receive- only mode. Printers, "dumb" terminals, and computers in a t... Section 11. Glossary term. Pulse an electrical signal characterized by a rapid increase in voltage follow by a short plateau and a rapid voltage decrease. Term. Record a record is a complete line of data in a data table or data file. All data in a record share a common time stamp. Term. Regulator a ... Section 11. Glossary term. Ring memory a memory configuration that allows the oldest data to be overwritten with the newest data. This is the default setting for final-memory data tables. Term. Ringing oscillation of sensor output (voltage or current) that occurs when sensor excitation causes parasi... Section 11. Glossary interval after compilation. If the scan() interval does not divide evenly into 24 hours, execution will start on the first even second after compilation. Term. Scan time when time functions are run inside the scan() / nextscan construct, time stamps are based on when the scan wa... Section 11. Glossary term. Short cut software a crbasic program wizard suitable for many cr1000 applications. Knowledge of crbasic is not required to use short cut. It is available at no charge at www.Campbellsci.Com. Term. Si (système internationale) the uniform international system of metric units... Section 11. Glossary term. Station status command a command available in most datalogger support software (p. 95). The following figure is a sample of station status output. Term. String a datum or variable consisting of alphanumeric characters. Term. Support software see term. Datalogger support so... Section 11. Glossary term. Swept frequency a succession of frequencies from lowest to highest used as the method of wire excitation with vspect (p. 532) measurements. Term. Synchronous the transmission of data between a transmitting and a receiving device occurs as a series of zeros and ones. For th... Section 11. Glossary measurement requires linearization by means of a steinhart-hart or polynomial equation. Crbasic instructions therm107(), therm108(), and therm109() use steinhart-hart equations. Term. Time domain time domain describes data graphed on an x-y plot with time on the x axis. Time-ser... Section 11. Glossary term. Uri uniform resource identifier term. Url uniform resource locater term. Variable a packet of sram given an alphanumeric name. Variables reside in variable memory. Term. Variable memory that portion of sram reserved for storing variables. Variable memory can be, and regula... Section 11. Glossary term. Watchdog timer an error-checking system that examines the processor state, software timers, and program-related counters when the crbasic program is running. See section watchdog errors (p. 488). The following will cause watchdog timer resets, which reset the processor and... Section 11. Glossary practice" as an analogy. Table accuracy, precision, and resolution (p. 533) shows four targets. The bull's eye on each target represents the absolute correct measurement. Each shot represents an attempt to make the measurement. The diameter of the projectile represents resolutio... 12. Attributions use of the following trademarks in the cr1000 operator's manual does not imply endorsement by their respective owners of campbell scientific: • crydom • newark • mouser • microsoft • wordpad • hyperterminal • li-cor 535. Appendix a. Crbasic programming instructions related topics: • crbasic programming — overview (p. 86) • crbasic programming — details (p. 122) • crbasic programming — instructions (p. 537) • programming resource library (p. 169) • crbasic editor help all cr1000 crbasic instructions (p. 518) are list... Appendix a. Crbasic programming instructions setsecurity sets numeric password for datalogger security levels 1, 2, and 3. Executes at compile time. Syntax setsecurity(security[1], security[2], security[3]) stationname sets the station name internal to the cr1000. Does not affect data files created ... Appendix a. Crbasic programming instructions syntax dim [variable name (x,y,z)] essvariables automatically declares variables required by an environmental sensor station application. Used in conjunction with essinitialize. Syntax essvariables newfieldnames assigns a new name to a generic variable or... Appendix a. Crbasic programming instructions syntax const [constant name] = [value or expression] consttable / endconsttable declares constants, the value of which can be changed using the cr1000kd keyboard display or terminal c option. The program is recompiled with the new values when values chang... Appendix a. Crbasic programming instructions fillstop sets a data table to fill and stop. By default, data tables are ring memory (p. 526). Syntax fillstop note to reset a table after it fills and stops, use resettable() instruction in the crbasic program or the datalogger support software reset tab... Appendix a. Crbasic programming instructions tablefile writes a file from a data table to a cr1000 memory drive. Syntax tablefile("filename", options, maxfiles, numrecs / timeintointerval, interval, units, outstat, lastfilename) a.2.3 processing for output to final-data memory read more see data out... Appendix a. Crbasic programming instructions syntax median(reps, source, maxn, datatype, disablevar) minimum stores the minimum value over the data-output interval. Syntax minimum(reps, source, datatype, disablevar, time) moment stores the mathematical moment of a value over the data-output interval... Appendix a. Crbasic programming instructions a.2.3.2 multiple-source etsz stores evapotranspiration (etsz) and solar radiation (rso). Syntax etsz(temp, rh, uz, rs, longitude, latitude, altitude, zw, sz, datatype, disablevar) rainflowsample stores a sample of the cdm_vw300rainflow into a data table. ... Appendix a. Crbasic programming instructions syntax pulsecountreset a.4 program control instructions a.4.1 common program controls beginprog / endprog marks the beginning and end of a program. Syntax beginprog [program code] endprog call transfers program control from the main program to a subroutin... Appendix a. Crbasic programming instructions syntax scan (interval, units, option, count) [statement block] exitscan [statement block] continuescan [statement block] nextscan select case / case / case is / case else / endselect executes one of several statement blocks depending on the value of an ex... Appendix a. Crbasic programming instructions waittriggersequence used with triggersequence to control the execution of code within a slow sequence. Syntax waittriggersequence waitdigtrig triggers a measurement scan from an external digital trigger. Syntax waitdigtrig(controlport, option) while / wen... Appendix a. Crbasic programming instructions variable = iftime(tintoint, interval, units) read reads constants from the list defined by data or datalong into a variable array. Syntax read [variable expression] restore resets the location of the read pointer back to the first value in the list define... Appendix a. Crbasic programming instructions if timeintointerval(tintoint, interval, units) timeisbetween determines if the cr1000 real-time clock falls within a range of time. Syntax timeisbetween(begintime, endtime, interval, units) a.5 measurement instructions read more for information on recordi... Appendix a. Crbasic programming instructions a.5.2 voltage voltdiff measures the voltage difference between high and low inputs of a differential analog-input channel. Syntax voltdiff(dest, reps, range, diffchan, revdiff, settlingtime, integ, mult, offset) voltse measures the voltage at a single-end... Appendix a. Crbasic programming instructions syntax brfull(dest, reps, range, diffchan, vx/exchan, measpex, exmv, revex, revdiff, settlingtime, integ, mult, offset) brfull6w measures ratio of v diff2 / v diff1 of a six-wire full-bridge. Reports 1000 • (v diff2 / v diff1 ). Syntax brfull6w(dest, reps... Appendix a. Crbasic programming instructions sw12 sets a sw12 switched 12 vdc terminal high or low. Syntax sw12(port) a.5.6 pulse and frequency related topics: • pulse measurements — specifications • pulse measurements — overview (p. 68) • pulse measurements — details (p. 349) • pulse measurements —... Appendix a. Crbasic programming instructions a.5.7 digital i/o checkport returns the status of a c terminal configured for control. Syntax x = checkport(port) portget reads the status of a c terminal configured for control. Syntax portget(dest, port) portsconfig configures c terminals for input or o... Appendix a. Crbasic programming instructions writeio set the status of c terminals. Syntax writeio(mask, source) a.5.7.2 measurement pwm performs pulse-width modulation on a c terminal. Syntax pwm(source, terminal, period, units) timerio measures interval or frequency on a c terminal. Syntax timerio... Appendix a. Crbasic programming instructions a.5.9 specific sensors acpower measures ac mains power and power-quality parameters for single-, split-, and three-phase 'y' configurations. Do not connect ac mains power directly to the cr1000. Syntax acpower(destac, configac, linefrq, chanv, vmult, maxv... Appendix a. Crbasic programming instructions analyzers via sdm. Syntax ec100(dest, sdmaddress, ec100cmd) ec100configure configures the ec150 open path and ec155 closed path ir gas analyzers. Syntax ec100configure(result, sdmaddress, configcmd, destsource) gps used with a gps device to keep the cr100... Appendix a. Crbasic programming instructions syntax therm107(dest, reps, sechan, vx/exchan, settlingtime, integ, mult, offset) therm108 measures a campbell scientific model 108 thermistor. Syntax therm108(dest, reps, sechan, vx/exchan, settlingtime, integ, mult, offset) therm109 measures a campbell ... Appendix a. Crbasic programming instructions syntax cwb100rssi(cwbport) a.5.10 peripheral device support multiple sdm instructions can be used within a program. Am25t controls the am25t analog-voltage input multiplexer. Syntax am25t(dest, reps, range, am25tchan, diffchan, tctype, tref, clkport, resp... Appendix a. Crbasic programming instructions syntax cdm_vw300static(cpiaddress, destfreq, desttherm, deststddev) cpispeed controls the speed of the cpi bus. Syntax cpispeed(bitrate)) muxselect selects the specified channel on a multiplexer. Syntax muxselect(clkport, resport, clkpulsewidth, muxchan, ... Appendix a. Crbasic programming instructions sdmcvo4 control the sdm-cvo4 four-channel, current/voltage output device. Syntax sdmcvo4(cvo4source, cvo4reps, sdmaddress, cvo4mode) sdmgeneric sends commands to an sdm device that is otherwise unsupported in the operating system. See the appendix endiann... Appendix a. Crbasic programming instructions syntax sdmtrigger sdmx50 controls the sdm-x50 coaxial multiplexer independent of the tdr100() instruction. Syntax sdmx50(sdmaddress, channel) tdr100 measures tdr probes connected to the tdr100 time-domain reflectometer directly or through a sdmx50 coaxial... Appendix a. Crbasic programming instructions sdmcv04() sdmio16() timedcontrol() prochipri/endprochipri dnp() dnpupdate() dnpvariable() modbusmaster() modbusslave() a.7 processing and math instructions a.7.1 mathematical operators note program declaration angledegrees() (see program declarations (p. ... Appendix a. Crbasic programming instructions less than or equal to a.7.3 bitwise operations bitwise shift operators ( and >>) allow crbasic to manipulate the position of bits within a variable declared as long (integer). Following are example expressions and expected results: • &b00000001 produces &... Appendix a. Crbasic programming instructions crbasic example 70. Using bit-shift operators 'this program example demonstrates the unpacking of a packed integer. The binary value in 'variable input_val is unpacked resulting in three integers individually stored in variables 'value(1), value(2), and v... Appendix a. Crbasic programming instructions eqv performs a logical equivalence on two expressions. Syntax result = expr1 eqv expr2 not performs a logical negation on an expression. Syntax result = not expression or performs a logical disjunction on two expressions. Syntax result = expr1 or expr2 xo... Appendix a. Crbasic programming instructions asin returns the arcsin of a number. Syntax x = asin(source) atn returns the arctangent of a number. Syntax x = atn(source) atn2 returns the arctangent of y / x. Syntax x = atn(y , x) cos returns the cosine of an angle specified in radians. Syntax x = cos... Appendix a. Crbasic programming instructions tanh returns the hyperbolic tangent of an expression or value. Syntax x = tanh(source) a.7.6.2 derived trigonometric functions table derived trigonometric functions (p. 568) lists trigonometric functions that can be derived from intrinsic trigonometric fu... Appendix a. Crbasic programming instructions exp returns e (the base of natural logarithms) raised to a power. Syntax x = exp(source) floor rounds a value to a lower integer. Syntax variable = floor(number) frac returns the fractional part of a number. Syntax x = frac(source) int or fix return the i... Appendix a. Crbasic programming instructions syntax result = operand1 mod operand2 pwr performs an exponentiation on a variable. Same functionality as ^ operator. See section arithmetic operators (p. 563). Syntax pwr(x, y) rectpolar converts from rectangular to polar coordinates. Syntax rectpolar(de... Appendix a. Crbasic programming instructions syntax prt(dest, reps, source, mult) prtcalc calculates temperature from the resistance of an rtd according to a range of alternative standards, including iec. Supercedes prt() in most applications. Syntax prtcalc(dest, reps, source, prttype, mult, offset... Appendix a. Crbasic programming instructions covspa computes the spatial covariance of sets of data. Syntax covspa(dest, numofcov, sizeofsets, corearray, datarray) fftspa performs a fast fourier transform on a time series of measurements. Syntax fftspa(dest, n, source, tau, units, option) maxspa fin... Appendix a. Crbasic programming instructions syntax addprecise(precisionvariable, x) avgrun stores a running average of a measurement. Syntax avgrun(dest, reps, source, number) note avgrun() should not be inserted within a for / next construct with the source and dest parameters indexed and reps set... Appendix a. Crbasic programming instructions syntax histogram4d(binselect, source, datatype, disablevar, bins1, bins2, bins3, bins4, form, wtval, lolim1, uplim1, lolim2, uplim2, lolim3, uplim3, lolim4, uplim4) levelcrossing processes data into a one- or two-dimensional histogram using a level-crossi... Appendix a. Crbasic programming instructions table 139. String operations string comparison operators the comparison operators =, >,,, >= and operate on strings. String final-data output processing the sample() instruction will convert data types if the source data type is different than the sample(... Appendix a. Crbasic programming instructions syntax string = formatlong(long, formatstring) formatlonglong converts a 64-bit long integer into a decimal value in the format of a string variable. Syntax formatlonglong(longlongvar(1)) hex returns a hexadecimal string representation of an expression. S... Appendix a. Crbasic programming instructions lowercase converts a string to all lowercase characters. Syntax string = lowercase(sourcestring) mid returns a substring that is within a string. Syntax string = mid(searchstring, start, length) replace searches a string for a substring and replaces that ... Appendix a. Crbasic programming instructions syntax length = sprintf(destination, format,...) trim returns a copy of a string with no leading or trailing spaces. Syntax variable = trim(trimstring) uppercase converts a string to all uppercase characters syntax string = uppercase(sourcestring) a.9 tim... Appendix a. Crbasic programming instructions syntax variable = daylightsaving(dstset, dstnstart, dstdaystart, dstmonthstart, dstnend, dstdayend, dstmonthend, dsthour) daylightsavingus determine if us daylight saving time has begun or ended. Optionally advance or turn back the cr1000 clock one hour. ... Appendix a. Crbasic programming instructions if timeintointerval(tintoint, interval, units) timeisbetween determines if the cr1000 real-time clock falls within a range of time. Syntax timeisbetween(begintime, endtime, interval, units) timer returns the value of a timer. Syntax variable = timer(timno... Appendix a. Crbasic programming instructions voicenumber returns one or more numbers (1 to 9) terminated by the # or * key. Syntax voicenumber(timeout*idh_popup_voicekey_timeout) voicephrases provides a list of phrases for voicespeak(). Syntax voicephrases(phrasearray, phrases) voicesetup controls t... Appendix a. Crbasic programming instructions syntax: displayline(value) displaymenu / endmenu marks the beginning and ending of a custom menu. Syntax: displaymenu("menuname", addtosystem) [menu definition] endmenu displayvalue defines the name and associated data-table value or variable for an item ... Appendix a. Crbasic programming instructions a.12 serial input / output read more see serial i/o (p. 245). Movebytes moves binary bytes of data into a different memory location when translating big- endian to little-endian data. See the appendix endianness (p. 643). Syntax movebytes(destination, des... Appendix a. Crbasic programming instructions serialinrecord reads incoming serial data on a com port and stores the data in a destination variable. Syntax serialinrecord(comport, dest, beginword, nbytes, endword, nbytesreturned, loadnan) serialopen sets up a datalogger port for communication with a ... Appendix a. Crbasic programming instructions • comsdc11 • com1 (c1,c2) • com2 (c3,c4) • com3 (c5,c6) • com4 (c7,c8) • com32 – com46 (available when using a one-channel i/o expansion module. See the appendix serial i/o modules list (p. 646) ) baud rate on asynchronous ports (comrs232, comme, com1, co... Appendix a. Crbasic programming instructions datagram initializes a serialserver / datagram / pakbus application in the datalogger when a program is compiled. Syntax datagram(comport, baudrate, pakbusaddr, destappid, srcappid) dialsequence / enddialsequence defines the code necessary to route packet... Appendix a. Crbasic programming instructions network in conjunction with sendgetvariables, configures destination dataloggers in a pakbus network to send and receive data from the host. Syntax network(resultcode, reps, beginaddr, timeintointerval, interval, gap, getswath, getvariable, sendswath, sen... Appendix a. Crbasic programming instructions syntax sendgetvariables(resultcode, comport, routeraddr, pakbusaddr, security, timeout, sendvariable, sendswath, getvariable, getswath) sendtabledef sends the table definitions from a data table to a remote pakbus device. Syntax sendtabledef(comport, rout... Appendix a. Crbasic programming instructions table 140. Asynchronous-port baud rates 1 autobaud: measurements are made on the communication signal and the baud rate is determined by the cr1000. A.14 variable management arrayindex returns the index of a named element in an array. Syntax variable = ar... Appendix a. Crbasic programming instructions syntax calfile(source/dest, numvals, "device:filename", option) filecopy copies a file from one drive to another. Syntax filecopy(fromfilename, tofilename) fileclose closes a file handle created by fileopen(). Syntax fileclose(filehandle) fileencrypt perf... Appendix a. Crbasic programming instructions filereadline reads a line in a file referenced by filehandle and stores the result in a variable or variable array. Syntax filereadline(filehandle, destination, length) filerename changes the name of file on a cr1000 drive. Syntax filerename(drive:oldfile... Appendix a. Crbasic programming instructions a.16 data-table access and management commands to access and manage data stored in data tables, including public and status tables. Filemark inserts a filemark into a data table. Syntax filemark(tablename) getrecord retrieves one record from a data table ... Appendix a. Crbasic programming instructions tablename.Output determine if data was written to a specific data table the last time the data table was called. Syntax tablename.Output(1,1) tablename.Record determines the record number of a specific data table record. Syntax tablename.Record(1,n) table... Appendix a. Crbasic programming instructions device that has the ppp/ip key enabled, such as when the cr1000 ip stack is used. Dhcprenew restarts dhcp on the ethernet interface. Syntax dhcprenew emailrecv polls an smtp server for email messages and stores the message portion of the email in a string... Appendix a. Crbasic programming instructions string to output httpout (" html string to output " + variable + " additional string to output webpageend httppost sends files or text strings to a url. Syntax httppost( uri, contents, response, header) httpput sends a request to the http server to store ... Appendix a. Crbasic programming instructions pingip pings ip address. Syntax variable = pingip(ipaddress, timeout) pppopen establishes a ppp connection with a server. Syntax variable = pppopen pppclose closes an opened ppp connection with a server. Syntax variable = pppclose snmpvariable defines a c... Appendix a. Crbasic programming instructions webpagebegin / webpageend declares a web page that is displayed when a request for the defined html page comes from an external source. Syntax webpagebegin ("webpagename", webpagecmd) httpout (" html string to output " + variable + " additional string to ... Appendix a. Crbasic programming instructions dnp sets up a cr1000 as a dnp slave (outstation/server) device. Third parameter is optional. Syntax dnp(comport, baudrate, disablelinkverify) dnpupdate determines when the dnp slave will update arrays of dnp elements. Specifies the address of the dnp mast... Appendix a. Crbasic programming instructions syntax fieldcal(function, measurevar, reps, multvar, offsetvar, mode, knownvar, index, avg) fieldcalstrain sets up the datalogger to perform a zero or shunt calibration for a strain measurement. Syntax fieldcalstrain(function, measurevar, reps, gfadj, zer... Appendix a. Crbasic programming instructions argosdatarepeat sets the repeat rate for the argosdata() instruction. Syntax argosdatarepeat(resultcode, repeatrate, repeatcount, bufferarray) argoserror sends a get and clear error message command to the argos transmitter. Syntax argoserror(resultcode, e... Appendix a. Crbasic programming instructions goesstatus requests status and diagnostic information from a campbell scientific goes satellite transmitter. Syntax goesstatus(dest, statuscommand) a.21.3 omnisat omnisatdata sends a table of data to the omnisat transmitter for transmission via the goes o... Appendix a. Crbasic programming instructions insatsetup configures the omnisat-i transmitter for sending data over the insat-1 satellite. Syntax insatsetup(resultcode, platformid, rfpower) insatstatus queries the transmitter for status information. Syntax insatstatus(resultcode) a.22 user-defined fu... Appendix b. Status, settings, and data table information (status/settings/dti) related topics: • status, settings, and data table information (status/settings/dti) (p. 603) • common uses of the status table (p. 604) • status table as debug resource (p. 485) the status table, cr1000 settings, and the... Appendix b. Status, settings, and data table information (status/settings/dti) b.1 status/settings/dti directories links in the following tables will help you navigate through the status/settings/dti system: table 142. Status/settings/dti: directories frequently used (p. 604) alphabetical listing of... Appendix b. Status, settings, and data table information (status/settings/dti) table 144. Status/settings/dti: alphabetical listing of keywords b battery (p. 611) baudrate() (p. 611) beacon() (p. 612) buffdepth (p. 612) e errorcalib (p. 616) ethernetenable (p. 616) ethernetpower (p. 616) m maxbuffde... Appendix b. Status, settings, and data table information (status/settings/dti) table 145. Status/settings/dti: status table entries on cr1000kd keyboard display recnum (p. 626) timestamp (p. 630) osversion (p. 622) osdate (p. 622) ossignature (p. 622) varoutofbound (p. 631) skippedscan (p. 628) skip... Appendix b. Status, settings, and data table information (status/settings/dti) table 147. Status/settings/dti: settings (comport) on cr1000kd keyboard display baudrate() (p. 611) beacon() (p. 612) neighbors() (p. 622) verify() (p. 632) table 148. Status/settings/dti: settings (tcp/ip) on cr1000kd ke... Appendix b. Status, settings, and data table information (status/settings/dti) table 151. Status/settings/dti: auto-calibration caldiffoffset() (p. 612) calgain() (p. 613) calseoffset() (p. 613) errorcalib (p. 616) lastsystemscan (p. 619) maxsystemproctime (p. 621) skippedsystemscan (p. 628) systemp... Appendix b. Status, settings, and data table information (status/settings/dti) table 156. Status/settings/dti: communications, tcp_ip iii pppdial (p. 624) pppdialresponse (p. 625) pppinterface (p. 625) pppipaddr (p. 625) pppipmask (p. 625) ppppassword (p. 625) pppusername (p. 625) table 157. Status/... Appendix b. Status, settings, and data table information (status/settings/dti) table 163. Status/settings/dti: os and hardware versioning osdate (p. 622) ossignature (p. 622) osversion (p. 622) revboard (p. 626) serialnumber (p. 628) table 164. Status/settings/dti: power monitors battery (p. 611) li... Appendix b. Status, settings, and data table information (status/settings/dti) b.2 status/settings/dti descriptions (alphabetical) table 167. Status/settings/dti: b keyword alias, access, description read/write, datatype, units default value normal range battery station status: battery voltage keybo... Appendix b. Status, settings, and data table information (status/settings/dti) beacon() settings editor: beacon interval alias: communication ports beacon intervals keyboard: settings (comports) crbasic: variable = settings.Keyword; setsettings() governs the rate at which the cr1000 broadcasts pakbu... Appendix b. Status, settings, and data table information (status/settings/dti) calgain() 2 keyboard: status table ≈ line 61 crbasic: variable = status.Keyword array of 18 floating-point values reporting calibration gain for each integration / range combination. Updated by background calibration. Rea... Appendix b. Status, settings, and data table information (status/settings/dti) (disabled) commsmemalloc settings editor: communication allocation aka: pakbusnodes, pakbus nodes allocation, pakbus network node number keyboard: settings (general) ≈ line 7 crbasic: variable = settings.Keyword; setsetti... Appendix b. Status, settings, and data table information (status/settings/dti) cpudrivefree keyboard: settings (general) ≈ line 16 crbasic: variable = settings.Keyword; setsettings() bytes remaining on the cpu: drive. This drive resides in the serial flash and is always present. Crbasic programs are... Appendix b. Status, settings, and data table information (status/settings/dti) specifies the addresses of up to two domain name servers that the cr1000 can use to resolve domain names to ip addresses. Note that if dhcp is used to resolve ip information, the addresses obtained via dhcp are appended t... Appendix b. Status, settings, and data table information (status/settings/dti) ftpport settings editor: ftp service port keyboard: settings (tcp/ip) ≈ line 17 crbasic: variable = settings.Keyword; setsettings() configures the tcp port on which the ftp service is offered. Generally, the default value... Appendix b. Status, settings, and data table information (status/settings/dti) name of a file to be included at the end of the current crbasic program, or that can be run as the default program. See section 'include file' (p. 147). Specify {drive}:{filename}, where drive: = cpu:, usr:, usb: or crd: ... Appendix b. Status, settings, and data table information (status/settings/dti) iptracecode settings editor: ip trace code keyboard: settings (tcp/ip) ≈ line 31 crbasic: variable = settings.Keyword; setsettings() this setting controls what type of information is sent on the port specified by iptracep... Appendix b. Status, settings, and data table information (status/settings/dti) battery (p. 473). Low12vcount station status: number of times voltage has dropped below 12v keyboard: status table ≈ line 21 crbasic: variable = status.Keyword increments by 1 each time the primary cr1000 supply voltage d... Appendix b. Status, settings, and data table information (status/settings/dti) maxsystemproctime keyboard: status table ≈ line 48 crbasic: variable = status.Keyword maximum time required to process the auto (background) calibration, which runs in a hidden slow-sequence type scan. Displays 0 until an... Appendix b. Status, settings, and data table information (status/settings/dti) table 178. Status/settings/dti: n keyword alias, access, description read/write, datatype, units default value normal range neighbors() settings editor: neighbors allowed keyboard: settings (comports) crbasic: variable = ... Appendix b. Status, settings, and data table information (status/settings/dti) table 180. Status/settings/dti: p keyword alias, access, description read/write, datatype, units default value normal range pakbusaddress settings editor: pakbus address keyboard: settings (general) ≈ line 5 crbasic: vari... Appendix b. Status, settings, and data table information (status/settings/dti) pakbustcpenabled settings editor: ??? Keyboard: settings (tcp/ip) ≈ line 39 aliased from: servicesenabled() crbasic: variable = settings.Keyword; setsettings() enables ( true) or disables (false) the pakbus tcp service. R... Appendix b. Status, settings, and data table information (status/settings/dti) pppdialresponse settings editor: ppp dial response keyboard: settings (tcp/ip) ≈ line 29 crbasic: variable = settings.Keyword; setsettings() specifies the response expected after dialing a modem before a ppp connection ca... Appendix b. Status, settings, and data table information (status/settings/dti) 620), skippedscan (p. 628), maxproctime (p. 620). Progerrors keyboard: status table ≈ line 25 crbasic: variable = status.Keyword number of compile or runtime errors for the running program. Read-only long counts 0 ≥ 0 pro... Appendix b. Status, settings, and data table information (status/settings/dti) rs232power settings editor: rs232 always on keyboard: settings (general) ≈ line 20 crbasic: variable = settings.Keyword; setsettings() controls whether the rs-232 port will remain active even when communication is not tak... Appendix b. Status, settings, and data table information (status/settings/dti) security(3) settings editor: security level 3 aka: security code 3 keyboard: settings (general) ≈ line 4 crbasic: variable = settings.Keyword; setsettings() third level in an array of three security codes. Not shown if se... Appendix b. Status, settings, and data table information (status/settings/dti) slowproctime() keyboard: status table ≈ line 47 crbasic: variable = status.Keyword integer for each slowsequence scan in the crbasic program. Indicates time required to process the scan. See lastslowscan (p. 619), maxslow... Appendix b. Status, settings, and data table information (status/settings/dti) telnetenabled settings editor: telnet enabled aliased from: servicesenabled() keyboard: settings (tcp/ip) ≈ line 37 crbasic: variable = settings.Keyword; setsettings() enables ( true) or disables (false) the telnet servic... Appendix b. Status, settings, and data table information (status/settings/dti) table 184. Status/settings/dti: u keyword alias, access, description read/write, datatype, units default value normal range udpbroadcastfilter settings editor: ip broadcast filtered keyboard: settings (tcp/ip) ≈ line 34 r... Appendix b. Status, settings, and data table information (status/settings/dti) verify() settings editor: verify interval aka: communication ports verification intervals keyboard: settings (comports) crbasic: variable = settings.Keyword; setsettings() array of integers indicating the interval that is... Appendix c. Serial port pinouts c.1 cs i/o communication port pin configuration for the cr1000 cs i/o port is listed in table cs i/o pin description (p. 633). Table 187. Cs i/o pin description abr: abbreviation for the function name. Pin: pin number. O: signal out of the cr1000 to a peripheral. I: s... Appendix c. Serial port pinouts connect the computer dte device to the cr1000 dce device. The following table describes rs-232 pin function with standard dce-naming notation. Note pins 1, 4, 6, and 9 function differently than a standard dce device. This is to accommodate a connection to a modem or o... Appendix c. Serial port pinouts send the data, and return to sleep mode with no 40 second timeout. Table 189. Standard null-modem cable or adapter-pin connections db9 socket # db9 socket # 1 & 6 ——————————— 4 2 ——————————— 3 3 ——————————— 2 4 ——————————— 1 & 6 5 ——————————— 5 7 ——————————— 8 8 —————... Appendix d. Ascii / ansi table reading list: • term. Ascii / ansi (p. 507) • ascii / ansi table (p. 637) american standard code for information interchange (ascii) / american national standards institute (ansi) table 190. Decimal and hexadecimal codes and characters used with cr1000 tools dec hex ke... Appendix d. Ascii / ansi table table 190. Decimal and hexadecimal codes and characters used with cr1000 tools dec hex keyboard display loggernet hyper terminal dec hex keyboard display loggernet hyper terminal 28 1c ∟ 156 9c œ £ 29 1d ↔ 157 9d ¥ 30 1e ▲ 158 9e ž pt 31 1f ▼ 159 9f Ÿ ƒ 32 20 sp sp sp ... Appendix d. Ascii / ansi table table 190. Decimal and hexadecimal codes and characters used with cr1000 tools dec hex keyboard display loggernet hyper terminal dec hex keyboard display loggernet hyper terminal 63 3f ? ? ? 191 bf ¿ ┐ 64 40 @ @ @ 192 c0 À └ 65 41 a a a 193 c1 Á ┴ 66 42 b b b 194 c2 ┬ ... Appendix d. Ascii / ansi table table 190. Decimal and hexadecimal codes and characters used with cr1000 tools dec hex keyboard display loggernet hyper terminal dec hex keyboard display loggernet hyper terminal 99 63 c c c 227 e3 ã π 100 64 d d d 228 e4 ä Σ 101 65 e e e 229 e5 å σ 102 66 f f f 230 e6... Appendix e. Fp2 data format fp2 data are two-byte big-endian values. See the appendix endianness (p. 643). Representing bits in each byte pair as abcdefgh ijklmnop, bits are described in table fp2 data-format bit descriptions (p. 641). Table 191. Fp2 data-format bit descriptions bit description a po... Appendix f. Endianness synonyms: • "byte order" and "endianness" • "little endian" and "least-significant byte first" • "big endian" and "most-significant byte first" endianness lies at the root of an instrument processor. It is determined by the processor manufacturer. A good discussion of endianne... Appendix g. Supporting products lists supporting products power and expand the measurement and control capability of the cr1000. Products listed are manufactured by a campbell scientific group company unless otherwise noted. Consult product literature at www.Campbellsci.Com or a campbell scientific ... Appendix g. Supporting products lists • measurement and control peripherals — details (p. 366) • measurement and control peripherals — lists (p. 645) g.3 sensor-input modules lists input peripherals expand sensor input capacity of the cr1000, condition sensor signals, or distribute the measurement l... Appendix g. Supporting products lists g.3.4 vibrating-wire input modules list vibrating-wire input modules improve the measurement of vibrating wire sensors. Table 198. Vibrating-wire input modules model description cdm-vw300 two-channel dynamic vspect vibrating-wire measurement device cdm-vw305 eig... Appendix g. Supporting products lists g.3.5.4 transient-voltage suppressors list table 202. Transient voltage suppressors model description 16980 surge-suppressor kit for uhf/vhf radios 14462 surge-suppressor kit for rf401 radio & cr206 datalogger 16982 surge-suppressor kit for rf416 radio & cr216 d... Appendix g. Supporting products lists g.4.2 continuous-analog-output (cao) modules list cao modules enable the cr1000 to output continuous, adjustable voltages that may be required for strip charts and variable-control applications. Table 205. Continuous-analog-output (cao) modules model description... Appendix g. Supporting products lists most electronic sensors, regardless of manufacturer, will interface with the cr1000. Some sensors require external signal conditioning. The performance of some sensors is enhanced with specialized input modules. G.5.1 wired-sensor types list the following wired-... Appendix g. Supporting products lists table 210. Sensors types available for connection to cws900 air temperature relative humidity dissolved oxygen soil heat flux infrared surface temperature soil temperature leaf wetness solar radiation pressure surface temperature quantum sensor wind speed / wind... Appendix g. Supporting products lists g.6.2 hardwire, single-connection comms devices list table 212. Hardwire, single-connection comms devices model description sc32b optically isolated cs i/o to pc rs-232 interface (requires pc rs-232 cable) sc929 cs i/o to pc rs-232 interface cable sc-usb optical... Appendix g. Supporting products lists g.6.6 private-network radios list m table 216. Private-network radios model description rf401 series spread-spectrum, 100 mw, cs i/o connection to remote cr1000 datalogger. Compatible with rf430. Rf430 series spread-spectrum, 100 mw, usb connection to base pc. C... Appendix g. Supporting products lists g.8 datalogger support software — lists reading list: • datalogger support software — quickstart (p. 46) • datalogger support software — overview (p. 95) • datalogger support software — details (p. 450) • datalogger support software — lists (p. 654) software pro... Appendix g. Supporting products lists table 221. Datalogger support software software compatibility description pc200w starter software pc, windows basic datalogger support software for direct connect. Pc400 pc, windows mid-level datalogger support software. Supports single dataloggers over most tel... Appendix g. Supporting products lists table 222. Loggernet suite 1,2 software description rtmcpro an enhanced version of rtmc. Rtmc pro provides additional capabilities and more flexibility, including multi-state alarms, email- on-alarm conditions, hyperlinks, and ftp file transfer. Rtmcrt allows vi... Appendix g. Supporting products lists table 224. Software development kits software compatibility description loggernets-sdk pc, windows loggernet server sdk. Allows software developers to create custom client applications that communicate through a loggernet server with any datalogger supported by ... Appendix g. Supporting products lists ps84 84 ahr, rechargeable battery, sunsaver regulator, and enclosure (requires primary source). G.9.2 batteries list table 226. Batteries model description bpalk d-cell, 12 vdc alkaline battery pack bp7 7 ahr, sealed-rechargeable battery (requires regulator & pr... Appendix g. Supporting products lists sp90-l 90 watt solar panel (requires regulator) dcdc18r 12 vdc to 18 vdc boost regulator (allows automotive supply voltages to recharge sealed, rechargeable batteries) g.9.5 24 vdc power supply kits list table 229. 24 vdc power supply kits model description 2837... Appendix g. Supporting products lists ut10 3 meter (10 ft) free-standing tower, aluminum ut20 6 meter (20 ft) free-standing tower, aluminum, guying is an option ut30 10 meter (30 ft) free-standing tower, aluminum, guying is an option cm375 10 meter (30 ft) mast, galvanized and stainless steel, requi... Index 1 12 volt supply ......................................... 104 12v terminal ........................................... 80, 105 5 5 volt pin ................................................. 633 5 volt supply ........................................... 104 50 hz rejection ........................ Index bridge ...................................................... 67, 337, 339 bridge — quarter-bridge shunt .............. 226 bridge measurement ............................... 104, 341, 551 buffer depth ............................................ 603 buffer size .................................. Index current .................................................... 103 current loop sensor ............................... 66, 80, 337 current sourcing limit ............................ 105, 368 custom display ....................................... 455 custom menu .................................... Index 337, 482, 483, 491 error — analog measurement ................ 108, 109, 482 error — programming ............................. 481 error — soil temperature thermocouple ............ 109 error — thermocouple ............................ 327, 331, 334, 336 esd ...................................... Index i i/o port .................................................... 78 ieee4 ...................................................... 130, 517 include file .............................................. 147, 603 inf ........................................................... 482, 517 infinite ......... Index instructions — dialmodem ...................... 597 instructions — dialsequence / enddialsequence ............ 585 instructions — dialvoice ......................... 580 instructions — dim .................................. 513, 538 instructions — displayline ...................... 581 instruc... Index instructions — long .............................. 130, 162, 163, 483, 519 instructions — lowercase ...................... 575 instructions — ltrim ............................... 575 instructions — maximum ......................... 542 instructions — maxspa ........................... 571 ins... Index endselect ............ 545 instructions — semaphoreget ................ 153, 548 instructions — semaphorerelease ........ 548 instructions — senddata ........................ 585 instructions — sendfile .......................... 585 instructions — sendgetvariables ........... 585 instructions... Index instructions — xor ................................ 565 instrumentation amplifier ........................ 305 integer ..................................................... 163, 518 integrated processing ............................. 570 integration ............................................... Index moisture ................................................... 93, 99 monitoring data ....................................... 48, 55 mounting .................................................. 43, 99 msb ......................................................... 248, 249, 643 multi-meter ........... Index polarity .................................................... 47 polarity reversal ..................................... 325 polarized sensor ..................................... 341 polynomial — thermocouple ................... 334 port .......................................................... Index q quarter-bridge ........................................ 223, 337 quarter-bridge shunt .............................. 226 quarter-bridge zero ................................ 227 quickstart tutorial ................................... 41 r rain gage .............................................. Index sequence — modem hangup ................. 151 sequence — shut down ......................... 151 sequence — web page .......................... 151 sequential mode ..................................... 105, 153 serial ....................................................... 62, 527 serial — com... Index tcp/ip ..................................................... 290, 530 tcp/ip information .................................. 603 telecommunication ................................. 48, 55, 89, 90, 391, 408 telnet ...................................................... 295, 530 telnet settings ..... Index web page................................................ 593 web page sequence .............................. 151 web server ............................................. 291 wheatstone bridge .................................. 337 wind vector ............................................. 296,... Campbell scientific companies campbell scientific, inc. (csi) 815 west 1800 north logan, utah 84321 united states www.Campbellsci.Com • info@campbellsci.Com campbell scientific africa pty. Ltd. (csaf) po box 2450 somerset west 7129 south africa www.Csafrica.Co.Za • cleroux@csafrica.Co.Za campbell sc...Summary of CR1000
Page 1
Page 3: Warranty
Page 5: Assistance
Page 7: Precautions
Page 8
Page 9: Table Of Contents
Page 10
Page 11
Page 12
Page 13
Page 14
Page 15
Page 16
Page 17
Page 18
Page 19
Page 20
Page 21
Page 22
Page 23
Page 24
Page 25
Page 26
Page 27
Page 28
Page 29
Page 30
Page 31
Page 33: 1. Introduction
Page 34
Page 35
Page 37: 2. Cautionary Statements
Page 39: 3. Initial Inspection
Page 41: 4. System Quickstart
Page 42
Page 43
Page 44
Page 45
Page 46
Page 47
Page 48
Page 49
Page 50
Page 51
Page 52
Page 53
Page 54
Page 55
Page 56
Page 57
Page 58
Page 59
Page 60
Page 61: 5. System Overview
Page 62
Page 63
Page 64
Page 65
Page 66
Page 67
Page 68
Page 69
Page 70
Page 71
Page 72
Page 73
Page 74
Page 75
Page 76
Page 77
Page 78
Page 79
Page 80
Page 81
Page 82
Page 83
Page 84
Page 85
Page 86
Page 87
Page 88
Page 89
Page 90
Page 91
Page 92
Page 93
Page 94
Page 95
Page 97: 6. Specifications
Page 98
Page 99: 7. Installation
Page 100
Page 101
Page 102
Page 103
Page 104
Page 105
Page 106
Page 107
Page 108
Page 109
Page 110
Page 111
Page 112
Page 113
Page 114
Page 115
Page 116
Page 117
Page 118
Page 119
Page 120
Page 121
Page 122
Page 123
Page 124
Page 125
Page 126
Page 127
Page 128
Page 129
Page 130
Page 131
Page 132
Page 133
Page 134
Page 135
Page 136
Page 137
Page 138
Page 139
Page 140
Page 141
Page 142
Page 143
Page 144
Page 145
Page 146
Page 147
Page 148
Page 149
Page 150
Page 151
Page 152
Page 153
Page 154
Page 155
Page 156
Page 157
Page 158
Page 159
Page 160
Page 161
Page 162
Page 163
Page 164
Page 165
Page 166
Page 167
Page 168
Page 169
Page 170
Page 171
Page 172
Page 173
Page 174
Page 175
Page 176
Page 177
Page 178
Page 179
Page 180
Page 181
Page 182
Page 183
Page 184
Page 185
Page 186
Page 187
Page 188
Page 189
Page 190
Page 191
Page 192
Page 193
Page 194
Page 195
Page 196
Page 197
Page 198
Page 199
Page 200
Page 201
Page 202
Page 203
Page 204
Page 205
Page 206
Page 207
Page 208
Page 209
Page 210
Page 211
Page 212
Page 213
Page 214
Page 215
Page 216
Page 217
Page 218
Page 219
Page 220
Page 221
Page 222
Page 223
Page 224
Page 225
Page 226
Page 227
Page 228
Page 229
Page 230
Page 231
Page 232
Page 233
Page 234
Page 235
Page 236
Page 237
Page 238
Page 239
Page 240
Page 241
Page 242
Page 243
Page 244
Page 245
Page 246
Page 247
Page 248
Page 249
Page 250
Page 251
Page 252
Page 253
Page 254
Page 255
Page 256
Page 258
Page 260
Page 261
Page 262
Page 263
Page 264
Page 265
Page 266
Page 267
Page 268
Page 269
Page 270
Page 271
Page 272
Page 273
Page 274
Page 275
Page 276
Page 277
Page 278
Page 279
Page 280
Page 281
Page 282
Page 283
Page 284
Page 285
Page 286
Page 287
Page 288
Page 289
Page 290
Page 291
Page 292
Page 293
Page 294
Page 295
Page 296
Page 297
Page 298
Page 299
Page 300
Page 301
Page 303: 8. Operation
Page 304
Page 305
Page 306
Page 307
Page 308
Page 309
Page 310
Page 311
Page 312
Page 313
Page 314
Page 315
Page 316
Page 317
Page 318
Page 319
Page 320
Page 321
Page 322
Page 323
Page 324
Page 325
Page 326
Page 327
Page 328
Page 329
Page 330
Page 331
Page 332
Page 333
Page 334
Page 335
Page 336
Page 337
Page 338
Page 339
Page 340
Page 341
Page 342
Page 343
Page 344
Page 345
Page 346
Page 347
Page 348
Page 349
Page 350
Page 351
Page 352
Page 353
Page 354
Page 355
Page 356
Page 357
Page 358
Page 359
Page 360
Page 361
Page 362
Page 363
Page 364
Page 365
Page 366
Page 367
Page 368
Page 369
Page 370
Page 371
Page 372
Page 373
Page 374
Page 375
Page 376
Page 377
Page 378
Page 379
Page 380
Page 381
Page 382
Page 383
Page 384
Page 385
Page 386
Page 387
Page 388
Page 389
Page 390
Page 391
Page 392
Page 393
Page 394
Page 395
Page 396
Page 397
Page 398
Page 399
Page 400
Page 401
Page 403
Page 404
Page 405
Page 406
Page 407
Page 408
Page 409
Page 410
Page 411
Page 412
Page 413
Page 414
Page 415
Page 416
Page 417
Page 418
Page 419
Page 420
Page 421
Page 422
Page 423
Page 424
Page 425
Page 426
Page 427
Page 428
Page 429
Page 430
Page 431
Page 432
Page 433
Page 434
Page 435
Page 436
Page 437
Page 438
Page 439
Page 440
Page 441
Page 442
Page 443
Page 444
Page 445
Page 446
Page 447
Page 448
Page 449
Page 450
Page 451
Page 452
Page 453
Page 454
Page 455
Page 456
Page 457
Page 458
Page 459
Page 460
Page 461
Page 462
Page 463
Page 464
Page 465
Page 466
Page 467
Page 468
Page 469
Page 470
Page 471
Page 472
Page 473
Page 474
Page 475
Page 476
Page 477
Page 479: 10. Troubleshooting
Page 480
Page 481
Page 482
Page 483
Page 484
Page 485
Page 486
Page 487
Page 488
Page 489
Page 490
Page 491
Page 492
Page 493
Page 494
Page 495
Page 496
Page 497
Page 498
Page 499
Page 500
Page 501
Page 502
Page 503
Page 504
Page 505
Page 507: 11. Glossary
Page 508
Page 509
Page 510
Page 511
Page 512
Page 513
Page 514
Page 515
Page 516
Page 517
Page 518
Page 519
Page 520
Page 521
Page 522
Page 523
Page 524
Page 525
Page 526
Page 527
Page 528
Page 529
Page 530
Page 531
Page 532
Page 533
Page 534
Page 535: 12. Attributions
Page 537: Instructions
Page 538
Page 539
Page 540
Page 541
Page 542
Page 543
Page 544
Page 545
Page 547
Page 548
Page 549
Page 550
Page 551
Page 552
Page 553
Page 554
Page 555
Page 556
Page 557
Page 558
Page 559
Page 560
Page 561
Page 562
Page 563
Page 564
Page 565
Page 566
Page 567
Page 568
Page 569
Page 570
Page 571
Page 572
Page 573
Page 574: A.8 String Functions
Page 575
Page 576
Page 577
Page 578
Page 579
Page 580: A.10
Page 581: A.11
Page 582
Page 583: A.12
Page 584: A.13
Page 585
Page 586
Page 587
Page 588
Page 589: A.14
Page 590
Page 591
Page 592: A.16
Page 593: A.17
Page 594
Page 595
Page 596
Page 597: A.18
Page 598: A.20
Page 599: A.21
Page 600
Page 601
Page 602: A.22
Page 603
Page 604
Page 605
Page 606
Page 607
Page 608
Page 609
Page 610
Page 611: (Alphabetical)
Page 612
Page 613
Page 614
Page 615
Page 616
Page 617
Page 618
Page 619
Page 620
Page 621
Page 622
Page 623
Page 624
Page 625
Page 626
Page 627
Page 628
Page 629
Page 630
Page 631
Page 632
Page 633
Page 634
Page 635
Page 637
Page 638
Page 639
Page 640
Page 641: Appendix E. Fp2 Data Format
Page 643: Appendix F. Endianness
Page 645: G.1 Dataloggers — List
Page 646
Page 647
Page 648
Page 649: G.5 Sensors — Lists
Page 650
Page 651: Peripherals — Lists
Page 652
Page 653
Page 654
Page 655
Page 656
Page 657
Page 658
Page 659: G.10
Page 660: G.12
Page 661: Index
Page 662
Page 663
Page 664
Page 665
Page 666
Page 667
Page 668
Page 669
Page 670
Page 671
Page 672
Page 673
Page 674
Page 675
Page 678