Campbell COM310A Instruction Manual

COM310
Voice Communications Modem
Revision: 3/08
CAMPBELL
Complies with Part 68, FCC rules. FCC Registration No. B9QUSA-31402-MM-T Ringer Equivalence 0.5A.Required Connector USOC RJ11C.
This equipment complies with the requirements in Part 15 of FCC Rules for Class A computing device. Operation of this equipment in a residential area may cause unacceptable interference to radio and TV reception requiring the operator to take
whatever steps are necessary to correct the interference.
S/N
1002
COM310
VOICE SYNTHESIZER
MADE IN USA
12V
G
TIP
RING
GND
Copyright © 2002-2008
Campbell Scientific, Inc.

Warranty and Assistance

The COM310 VOICE COMMUNICATIONS MODEM is warranted by CAMPBELL SCIENTIFIC, INC. to be free from defects in materials and workmanship under normal use and service for twelve (12) months from date of shipment unless specified otherwise. Batteries have no warranty. CAMPBELL SCIENTIFIC, INC.'s obligation under this warranty is limited to repairing or replacing (at CAMPBELL SCIENTIFIC, INC.'s option) defective products. The customer shall assume all costs of removing, reinstalling, and shipping defective products to CAMPBELL SCIENTIFIC, INC. CAMPBELL SCIENTIFIC, INC. will return such products by surface carrier prepaid. This warranty shall not apply to any CAMPBELL SCIENTIFIC, INC. products which have been subjected to modification, misuse, neglect, accidents of nature, or shipping damage. This warranty is in lieu of all other warranties, expressed or implied, including warranties of merchantability or fitness for a particular purpose. CAMPBELL SCIENTIFIC, INC. is not liable for special, indirect, incidental, or consequential damages.
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.campbellsci.com to determine which Campbell Scientific company serves your country. To obtain a Returned Materials Authorization (RMA), contact CAMPBELL SCIENTIFIC, INC., phone (435) 753-2342. After an applications engineer determines the nature of the problem, an RMA number will be issued. Please write this number clearly on the outside of the shipping container. CAMPBELL SCIENTIFIC's shipping address is:
CAMPBELL SCIENTIFIC, INC.
RMA#_____ 815 West 1800 North Logan, Utah 84321-1784
CAMPBELL SCIENTIFIC, INC. does not accept collect calls.
COM310 Table of Contents
PDF viewers note: These page numbers refer to the printed version of this document. Use the Adobe Acrobat® bookmarks tab for links to specific sections.
1. Introduction..................................................................1
2. Specifications ..............................................................2
3. Quick Start....................................................................2
4. System Components .................................................11
4.1 COM310 Modem....................................................................................11
4.2 Surge Suppressor ....................................................................................12
4.3 Voice Capable Dataloggers ....................................................................12
4.3.1 Mixed-array ..................................................................................12
4.3.2 Table Data.....................................................................................12
4.3.3 PakBus ..........................................................................................12
4.4 Telephone ...............................................................................................12
5. Datalogger Voice Programming ...............................13
5.1 Features...................................................................................................13
5.1.1 Callback ........................................................................................13
5.1.2 Voice Callin ..................................................................................14
5.1.3 Voice Storage Data .......................................................................14
5.2 Native PakBus Dataloggers ....................................................................15
5.2.1 Voice Instructions .........................................................................15
5.2.2 Data Callback................................................................................17
5.3 Edlog Dataloggers and LoggerTalk........................................................19
5.3.1 Install ............................................................................................19
5.3.2 Helps and Tutorials.......................................................................19
5.3.3 Modem Security Code ..................................................................20
5.3.4 Commercial Mode.........................................................................20
5.3.5 Custom Menu Strings ...................................................................20
5.3.6 Voice Callback..............................................................................21
5.3.7 View and Remove Voice Code.....................................................21
5.4 LoggerNet...............................................................................................21
6. Hardware Installation ................................................22
6.1 Site Requirements...................................................................................22
6.2 Powering the COM310 Modem..............................................................23
6.3 Grounding the COM310 System ............................................................24
6.4 Telephone Service ..................................................................................25
6.5 Telephone Transfers ...............................................................................25
6.6 Connecting to a Surge Protector .............................................................25
i
COM310 Table of Contents
7. Troubleshooting COM310 Voice Systems ...............27
Appendices
A. Theory of Operation ................................................ A-1
B. FCC Warning to Users of Class A Computing
C. IC Information ..........................................................C-1
D. Set Rings, AT Parameters ......................................D-1
7.1 No Communications .............................................................................. 27
7.2 Communications Problems .................................................................... 28
Devices................................................................ B-1
D.1 Set Number of COM310 Rings before Answer .................................. D-1
D.2 Telephone Connection to COM310 .................................................... D-1
E. CS I/O 9 Pin Serial Port ........................................... E-1
F. Reading Voice Code in a *.DLD File ....................... F-1
F.1 Typical Voice Code .............................................................................. F-1
F.2 Callback Code.......................................................................................F-2
F.3 Modem Security Enabled......................................................................F-3
G. COM310 Word List ..................................................G-1
G.1 COM310 Word List – Numerical Order ............................................. G-1
G.2 COM310 Word List – Alphabetical Order.......................................... G-3
Figures
1. COM310 Voice Synthesizer Modem......................................................... 1
2. COM310 Hardware Connection Using Standard RJ11 Phone Jack ........ 22
3. COM310/CR1000 Using Surge Protection Device.................................. 23
4. COM310 Grounding and Alternate 12 VDC Power................................ 24
5. Top View of Surge Suppressor Wiring.................................................... 26
6. Side View of Surge Suppressor Wiring ................................................... 27
E-1. COM310’s Male 9 Pin Connector.......................................................E-1
ii

COM310 Voice Communications Modem

TIP
RING
GND
CAMPBELL
SCIENTIFIC
INC.
MADE IN USA
S/N
1002
Complies with Part 68, FCC rules. FCC Registration No. B9QUSA-31402-M
M-T
Ringer Equivalence 0.5A.Required Connector USOC RJ11C.
This equipment complies with the requirements in Part 15 of FCC Rules for Class A computing device. Operation of this equipment in a residential area may cause unacceptable interference to radio and TV reception requiring the operator to take
whatever steps are necessary to correct the interference.
COM310
VOICE SYNTHESIZER
12V
G

1. Introduction

The COM310 is a voice-synthesizer modem that supports the PakBus and mixed-array dataloggers that have voice capability (see Section 4.3). The COM310 allows them to announce by telephone the data stored in variables or input locations, the status of control ports, and the status of user flags. Included is the ability to toggle datalogger ports and flags. You can program a datalogger so you can call-in to the station and listen to announcements, or so the datalogger calls you with an announcement when specified conditions are met, or you can program for both.
Although the primary function of the COM310 is voice communications, the modem is also capable of data communications. In data mode the COM310 supports standard datalogger functions including program send and data collection. The COM310 supports data callback from the CR1000, CR3000, and other dataloggers with OSs that support it. The CR10X, CR510, and CR23X mixed-array OSs support data callback but their PakBus OSs do not.
This manual provides information regarding COM310 specifications, installation, and operation. Quick Start (Section 3) presents an example CR1000 voice callback/callin program with descriptions of the code.
a Section 6.3 explains how to make a good earth ground connection to maximize
protection of the COM310 against lightning and electro-static discharge.
FIGURE 1. COM310 Voice Synthesizer Modem
1
COM310 Voice Communications Modem

2. Specifications

Bell 212A, CCITT V.21, and V.32BIS compatible
Full duplex at 9600 and 1200 baud to datalogger
V.42 LAPM and MNP2-4 error detection/correction
Hayes AT command set
RJ-11C telephone jack
FCC and IC (formerly known as DOC) approval
Pulse or tone dialing
Power supply voltage requirement: 12 VDC
Power supply current drain: 100 μA quiescent, 180 mA active
Internally switches 12 VDC power to minimize current drain
Connects directly to CS I/O port of many CSI dataloggers
(for communications and 12V power)
Logic levels: below 1.5 V inputs a low state and above 3.5 V inputs a
high state. A low voltage level on the TX data input (pin 9) and RX data output (pin 4) represents a mark
Operational temperature: 25°C to +50°C
Size: 5.2” x 1.7” x 3.6” // 13.1 x 4.3 x 9.2 cm
Weight: 0.75 lbs // 0.34 kg

3. Quick Start

NOTE
For information regarding the COM310 theory of operation refer to Appendix A of this manual.
This section presents Basic_Voice_2.cr1 an example voice callback/callin program written to demonstrate functions of the COM310. It can serve as a starting point from which you build your own application program. Test well the auto-disconnect capability as you customize the voice code and merge your measurement sections with the voice code.
To demo the example program, obtain the following items or their equivalent:
1) COM310 (OS01062006.SR or later OS)
2) SC12 Cable
3) CR1000 datalogger
4) 3 inches of thermocouple wire
5) PS100 Power Supply
6) Phone modem for your PC
7) LED in series with 1000 Ohm resistor
8) Analog phone line
Some office phone lines are digital and the COM310 cannot interface to them. Connect the COM310 to analog phone lines only.
2
You will also need:
1) IBM
2) LoggerNet 3.15 or later installed on PC.
TM
compatible PC with available COM port
Unlike the CR10X, CR510 and CR23X where voice code is appended to a finished measurement program using LoggerTalk software, the CR1000 voice code is created along with the measurement program using the CRBasic editor. It is recommended you finish and debug the voice portion of your program first, and then add the measurement code.
The example CR1000 voice callback/callin program that follows supports the following functions:
Voice callin
Voice callback
Auto-disconnect
Auto redial
Alarm reset
The following steps show how to build a station to demo the example voice callback/callin program. The voice station can further serve to test/debug your custom voice program and merge it with your application program.

Step 1 – LoggerNet Setup

1) In LoggerNet Setup create the following device map
COM310 Voice Communications Modem
2) Configure ComPort and PhoneBase for your PC’s phone modem.
3) Configure PhoneRemote to include the COM310’s analog phone number
followed by six commas and a 9.
4) Click on CR1000phone (renamed) and verify that the PakBus Address is 1.

Step 2 – Hardware Setup

1) Start with a CR1000 having factory settings. If unsure of settings, close
LoggerNet, connect SC12 cable from PC ComPort to CR1000 RS-232 port, run Device Configuration Utility, set Serial Port to match the PC ComPort, Connect and click on the Factory Defaults button, Apply settings and Disconnect.
2) Connect CR1000 to PS100 (turned off).
3) Connect SC12 cable from COM310 to CR1000 CS I/O port.
4) Connect analog phone line to COM310.
5) Turn on PS100.
6) Connect prepared TC to CR1000’s DIFF 7 analog input.
7) Connect LED with 1000 Ohm resistor connected to anode lead from C1 to
G (resister to C1).
3
COM310 Voice Communications Modem

Step 3 – Send BASIC_VOICE_2.CR1 to CR1000

1) Download BASIC_VOICE_2.CR1 from CSI web site under Support,
Downloads, Program Examples to a folder on your hard drive.
2) From LoggerNet Toolbar run CRBasic editor and open
BASIC_VOICE_2.CR1.
3) Change PHONE1 (a constant in SlowSequence near bottom of program)
to your office phone number to be used for callback and Save and Compile the change.
4) You can change PHONE2, etc. to nearby phone numbers for testing or
comment out those lines of code. NUMPHONES should equal the number of active phone numbers.
5) If the TC at DIFF 7 isn’t Type T, change the program to match your TC
type and Compile and Save.
6) Connect to CR1000phone and in Connect Screen, Tools, File Control send
VOICE.TXT (typically in C:\Campbellsci\Lib\Compilers) to the CR1000.
7) ConnectScreen send BASIC_VOICE_2.CR1 to CR1000phone.
If you send BASIC_VOICE_2.CR1 before VOICE.TXT, you’ll see some
NOTE
errors. In this case just send VOICE.TXT followed by BASIC_VOICE_2.CR1 again, and it will compile properly.

Step 4 – Callin

Step 5 – Callback

8) Close File Control and Disconnect from CR1000phone
9) Your CR1000 voice station is ready to demo
1) Using a touch-tone phone, dial the number of the analog phone line
connected to the COM310.
2) You should hear a ring or two, some faint clicking and then the voice
announcements:
CURRENT STATION DATA PRESS ONE TO HEAR THE BATTERY VOLTAGE PRESS TWO TO HEAR THE DATALOGGER TEMPERATURE PRESS THREE TO HEAR THE T C TEMPERATURE PRESS STAR TO DISCONNECT
3) Pressing 1, 2, 3, or * should produce the result indicated.
1) Grip the end of the thermocouple to raise its temperature above 85F
setting an alarm condition.
2) In a few seconds you should be able to detect the dial tones as a voice
callback proceeds. The first phone number in the program should ring. Picking up the phone you should hear:
PRESS POUND TO RESET ALARM, PRESS STAR TO DISCONNECT
4
COM310 Voice Communications Modem
Pressing the # key you should hear:
C R ONE THOUSAND STATION PRESS ONE TO HEAR A SENSOR VALUE PRESS TWO TO HEAR OR TOGGLE PORT PRESS THREE TO HEAR OR TOGGLE FLAG PRESS STAR TO DISCONNECT
3) Navigate around in the menus to learn the program’s capabilities:
a) Press 2 to access the Ports Menu
b) Press 1 to read the logic state of Control Port 1
c) Press # to toggle the logic state of Control Port 1 (C1’s LED should
turn on).
d) Press # again (C1’s LED should turn off)
e) Press * to return to “C R ONE THOUSAND STATION” menu
f) Press * to hang up
4) Try hanging up the phone without pressing * (disorderly exit) and see if
the modem automatically hangs up after a few seconds.
5) As you press the keys to navigate around in the menus you will find that
occasionally you get an unexpected response. Phone connections are susceptible to noise pickup and signal attenuation. Depending on your particular phone equipment and the phone lines and equipment between you and the voice station, you may at times experience some of the following:
a) You press * and the voice station hangs up but doesn’t say,
“Goodbye.”
b) A voice callback rings your phone but you pick up to silence
Certain phones are more of a problem due to low signal levels or switch bounce.
6) Helpful hints for pressing phone keys to control a voice station
a) Press a key firmly (but not too long)
b) Allow a second between keys
c) Press the same key again if a wrong response is gotten
d) If no response, try pressing key again or press # key to recover
e) If unresponsive, try rapidly pressing a series of five * keys to
disconnect station.
f) Worst case, allow 6 minutes for the voice station to reset itself
Following is the text of the BASIC_VOICE_2.CR1 example voice callback/callin program employing VoiceSetup( ). The program should be available for download on our website under Support/Downloads/Program Examples. Following the program is a description of its main sections.
5
COM310 Voice Communications Modem
' CR1000
' BASIC_VOICE_2.CR1
' Send VOICE.TXT to CR1000 before sending this program.
' Program employs VoiceSetup instruction available in OS CR1000.Std.12 and later
' 1st phone number is called if Diff 7 TC temperature > 85F ‘ Program continues to call callback phone number list until someone answers and presses # key ‘ resetting alarm. ' Callback phone numbers are in constants in the SlowSequence at the bottom of the program.
' Key Press Functions: ' # resets alarm condition or toggles port/flag ' 1,2,3,4,5,6,7,8 select certain menu items ' * returns one menu level (returns from subroutine) or disconnects ' 0 is not used in this program ' 9 should be avoided since it will trigger an attempt to connect to a modem
' Timeouts (for key presses and for the total on line time) are constants listed below ' and can be adjusted.
Public Value(3) Alias Value(1) = BatteryV Alias Value(2) = PTemp Alias Value(3) = TCValue_F
Const KeyTimeout = 800 ' 8 second timeout waiting for key stroke before hangup Const SecsOnLine = 360 ' 6 minutes On Line Timeout Const STAR = 42 ' The * key (STAR) Const POUND = 35 ' The # key Const HangupIfKeyTimeout = TRUE ' Will hangup if times out waiting for a key Const RINGTIME = 20 ‘ Maximum time allowed for a phone to be picked up and # pressed
Public mykey As Long
' **** VOICE CODE executed when DL detects COM310 RING or when DialVoice() succeeds ****
Public CallingOut As Boolean ' Detects whether we are calling out or calling in
' STAR (*) key will be used to return from subroutines and to disconnect if not in a subroutine
VoiceSetup (STAR,STAR,0,SecsOnLine,HangupIfKeyTimeout,CallingOut)
VoiceBeg If CallingOut Then ' We are calling out triggered by DialVoice() Call CallOutVoice Else Call CallInVoice ' We are calling in EndIf EndVoice
6
COM310 Voice Communications Modem
' ***** Subroutines *****
' Called when calling in: Sub CallInVoice Do VoiceSpeak ("CURRENT STATION DATA 50MS 50MS", 0) VoiceSpeak ("PRESS ONE TO HEAR THE BATTERY VOLTAGE 50MS", 0) VoiceSpeak ("PRESS TWO TO HEAR THE DATALOGGER TEMPERATURE 50MS", 0) VoiceSpeak ("PRESS THREE TO HEAR THE T C TEMPERATURE 50MS", 0) VoiceSpeak ("PRESS STAR TO DISCONNECT", 0) Select Case VoiceKey(keytimeout) Case 1 VoiceSpeak ("THE BATTERY VOLTAGE IS" + Value(1) + "VOLTS", 1) Case 2 VoiceSpeak ("THE REFERENCE IS" + Value(2) + "DEGREES", 1) Case 3 VoiceSpeak ("THE AIR TEMPERATURE IS" + Value(3) + "DEGREES", 0) EndSelect Loop ' Until timeout or STAR EndSub
' Called when calling out: Public Alarm As Boolean, ArmAlarm As Boolean, ManualAlarm As Boolean
Sub CallOutVoice ' Dial # reset to reset alarm = 0 Timer(1,Sec,2) ‘ Start timer Do VoiceSpeak("50MS PRESS POUND TO RESET ALARM 50MS PRESS STAR TO DISCONNECT", 0) mykey = VoiceKey(0) If Timer(1,Sec,4) >= RINGTIME Then ExitSub ‘ Max time to await pick up and # press Loop Until mykey = POUND ' Someone cleared the alarm, let them proceed and do other things Alarm = False Do ' Until timeout VoiceSpeak ("50MS C R ONE THOUSAND STATION 50MS 50MS", 0) VoiceSpeak ("PRESS ONE TO HEAR A SENSOR VALUE 50MS 50MS", 0) VoiceSpeak ("PRESS TWO TO HEAR OR TOGGLE PORT 50MS 50MS", 0) VoiceSpeak ("PRESS STAR TO DISCONNECT 50MS 50MS", 0) Select Case VoiceKey(KeyTimeout) Case 1 Call SubKey1 Case 2 Call SubKey2 Case 3 Call SubKey3 EndSelect Loop ' Until timeout EndSub
7
COM310 Voice Communications Modem
' Monitors a value Sub SubKey1 Do VoiceSpeak ("50MS PRESS SENSOR NUMBER 50MS PRESS STAR TO RETURN", 0) mykey = VoiceKey (KeyTimeout) If mykey = 1 Then VoiceSpeak ("50MS THE BATTERY VOLTAGE IS" + Value(1) + "VOLTS", 1) If (mykey = 2) Then VoiceSpeak ("50MS THE REFERENCE IS" + Value(2) + "DEGREES", 1) If (mykey = 3) Then VoiceSpeak ("50MS THE T C IS" + Value(3) + "DEGREES", 1) Loop ' Sensor value loop EndSub
' Read a port and possibly toggle Sub SubKey2 Do ' Until * or timeout Dim keybit,port As Long,state VoiceSpeak("50MS PRESS PORT NUMBER 50MS PRESS STAR TO RETURN", 0) port = VoiceKey(keyTimeout) If (port > 0) AND (port <= 8) Then keybit = 2^(port-1) ' Bit 0..7 is set in keybit. Keybit = 2^(port-1). Do ReadIO(state, &b11111111) VoiceSpeak("50MS C" + port + "IS",0) If state AND keybit Then VoiceSpeak("ON",0) Else VoiceSpeak("OFF",0) EndIf VoiceSpeak("50MS PRESS POUND TO TOGGLE 50MS PRESS STAR TO RETURN", 0) If VoiceKey(KeyTimeout) = POUND Then ReadIO (state,&b11111111) If state AND keybit Then state = state AND (NOT keybit) Else state = state OR keybit EndIf WriteIO(&b11111111,state) ' Toggle control port EndIf Loop EndIf Loop EndSub
‘ Read a flag and possibly toggle Sub SubKey3 Const NUMBERFLAGS = 8 Public Flags(NUMBERFLAGS) Do ' Until * or timeout VoiceSpeak("50MS PRESS FLAG NUMBER 50MS PRESS STAR TO RETURN", 0) mykey = VoiceKey(keyTimeout) If (mykey > 0) AND (mykey <= NUMBERFLAGS) Then Do VoiceSpeak("50MS FLAG" + mykey + "IS",0)
8
COM310 Voice Communications Modem
If Flags(mykey) Then VoiceSpeak("ON",0) Else VoiceSpeak("OFF",0) EndIf VoiceSpeak("50MS PRESS POUND TO TOGGLE 50MS PRESS STAR TO RETURN", 0) If VoiceKey(KeyTimeout) = POUND Then flags(mykey) = NOT flags(mykey) Else ExitDo EndIf Loop EndIf Loop ' Port loop EndSub
DataTable (Test,1,-1) DataInterval (0,0,Sec,10) Minimum (1,BatteryV,FP2,0,False) Sample (1,PTemp,FP2) Sample (1,TCvalue_F,FP2) EndTable
' <<<<<<<<<<<<<<<<<< MEASUREMENT PROGRAM >>>>>>>>>>>>>>>>>> BeginProg
Scan (1,Sec,3,0) Battery (BatteryV) PanelTemp (PTemp,250) TCDiff (TCvalue_F,1,mV2_5C,7,TypeT,PTemp,True,0,250,1.8,32)
' Add measurement code here *******************
CallTable Test
NextScan
' <<< VOICE CALLBACK CODE that executes when alarm conditions are met >>> SlowSequence ' Slow Sequence do loop forever possibly doing alarm call out Const NUMPHONES = 3 ' 3 phone numbers to try Const PHONE1 = "1112223333" Const PHONE2 = "1112224444" Const PHONE3 = "1112225555" Dim i,Phones(NUMPHONES) As String phones(1) = PHONE1 phones(2) = PHONE2 phones(3) = PHONE3
Alarm = FALSE ArmAlarm = TRUE Do ' Forever Delay(1,1,sec) If (TCvalue_F < 85) Then ArmAlarm = TRUE
9
COM310 Voice Communications Modem
ElseIf (TCvalue_F > 85 AND ArmAlarm) OR ManualAlarm = TRUE Then ManualAlarm = False Alarm = TRUE' Do For i = 1 To NUMPHONES ' Call these numbers until the alarm is cleared If Alarm Then DialVoice(phones(i)) ' Calls only if alarm is set Next i If Alarm Then Delay(1,1,min) Loop Until Alarm = FALSE ArmAlarm = False EndIf Loop
EndProg

Example Program Description

Basic_Voice_2.cr1 has five main sections:
1. VoiceSetup( ) - handles auto-disconnect.
VoiceSetup( )
WARNING
2. Voice Beg / EndVoice - routes execution to callin or callout subroutines.
3. CallInVoice Subroutine - executes when VoiceBeg detects a callin
4. CallOutVoice Subroutine - executes when VoiceBeg detects a dial-up. It
looks for a pound (#) key to reset “alarm” variable to false.
5. SlowSequence - continually looks for the “alarm” variable to be true
which, if it finds, it dials a list of phone numbers until “alarm” is no longer true. It signals Voice Beg when a callout dial-up is in progress.
The VoiceSetup instruction is used to control the hang up of the COM310 voice modem. It controls which key is used to exit a subroutine and which is used to continue to the next VoiceKey instruction. It also determines how long the COM310 can be ‘off hook’ before the datalogger automatically hangs it up (auto-disconnect). And it controls whether or not the modem hangs up after a VoiceKey instruction timeout. The “Callout” parameter indicates that the modem has received a ‘call in’ or has dialed a ‘call out.‘
The VoiceSetup SecsOnLine setting is important as it hangs up (auto-disconnects) the modem in case someone cradles the phone or leaves the phone off-hook without pressing star keys for an orderly “good-bye” disconnect. Test well your entire program in this regard before deployment to avoid possible lengthy off-hook states disallowing incoming calls, running up a phone bill and draining the station power supply.
10
Voice Beg / EndVoice
The VoiceBeg / EndVoice instruction pair enclose the code that is executed when the datalogger detects a ring from its voice modem (at call in).
CallInVoice Subroutine
This subroutine contains the code pointed to by VoiceBeg / EndVoice that is to execute after a call in occurs. It consists mainly of VoiceSpeak menu announcements followed by a VoiceKey instruction prompting caller input and a Select Case statement choosing the program’s responses to various caller key presses.
CallOutVoice Subroutine
The CallOutVoice subroutine contains the code that is to execute when VoiceBeg / EndVoice detects that a call out phone number has been dialed. It prompts a responding party to press the # key after which it announces the menu selections to hear: battery voltage, panel temperature, or thermocouple temperature (SubKey1); datalogger port status of C1 - C8 (SubKey2); or datalogger flag status of F(1) - F(8) (SubKey3). The state of the ports and flags can be toggled as well as heard.
COM310 Voice Communications Modem
SlowSequence
Contains code that continually executes looking for the Diff 7 thermocouple to exceed 85F in which case the variable “alarm” is set to True and a call out (callback) is initiated. It dials the first phone number on the list. If no answer, after 20 seconds the second number is dialed. The list of phone numbers is dialed repeatedly until someone picks up and presses the # key (monitored by the CallOutVoice subroutine) which resets “alarm” to False and allows the responding party to proceed into the CallOutVoice menus.

4. System Components

4.1 COM310 Modem

Connecting a COM310 voice modem to a datalogger provides all COM210 supported functions plus the following:
Voice retrieval of data (user or datalogger initiated)
Reading/Toggling of datalogger control ports
Reading/Toggling of program Flags
The COM310 ships with an SC12 cable (9-pin to 9-pin) for connecting between the modem CS I/O port and datalogger CS I/O port.
NOTE
The COM310’s communication port is designed to function with a Campbell Scientific CS I/O port. This is not an RS-232 port. See Appendix E for the CS I/O port description.
11
COM310 Voice Communications Modem

4.2 Surge Suppressor

If the phone company does not provide surge protection at the datalogger site, you will need to install some. CSI offers surge protectors in two forms. Item # 6362 is a surge protector with environmental enclosure mounting hardware. Item # 4330 is the surge protector with no mounting hardware (see Section
6.6).

4.3 Voice Capable Dataloggers

There are several Campbell Scientific dataloggers that are capable of voice communications. The following sections tell which mixed-array, PakBus, and table-based dataloggers are capable of which functions.
4.3.1 Mixed-array
A CR10X, CR510, or CR23X with mixed-array OS is capable of COM310 voice communications.
4.3.2 Table Data
4.3.3 PakBus
The TD OSs (OS10XTD, OS510TD, and OS23XTD) do not support any COM310 communications. For data collection you can use a COM210 modem.
With PakBus dataloggers the COM310 supports such functions as program send, data collection, and clock check. The following voice/data functions are supported as well.
COM310/PakBus Datalogger Support
DATALOGGER Voice Callback Voice Callin Data Callback
CR1000 yes yes yes
CR10XPB yes yes no
CR510PB yes yes no
CR23XPB yes yes no
The COM310 supports concurrent communications. PakBus dataloggers with multiple peripherals (COM310, RF450, RF401, MD485, NL100, CR10KD, CR1000KD, and SC32B) can communicate simultaneously via those peripherals.
12

4.4 Telephone

A touch-tone phone is normally used to call the COM310 modem. A rotary phone will work if the programmed voice announcements do not require you to navigate through the COM310’s menu system.
COM310 Voice Communications Modem
NOTE
The COM310 must connect to an analog phone line. Some office environment PBX phone lines are digital and don’t interface to an analog modem such as the COM310. Of course, any phone may be used to call in to or receive callbacks from the COM310. A touch-tone phone is necessary for input.

5. Datalogger Voice Programming

The voice code for the CR1000 and other voice capable CRBasic dataloggers is integrated with the main program. It is probably advantageous to write your custom voice program and debug it before adding the measurement part. The example voice callback/callin program in Quick Start can provide a starting point for your program.
With the CR10X, CR510, and CR23X dataloggers, voice code is added to Edlog created dld files using LoggerTalk software.

5.1 Features

The voice instructions listed in 5.2.1 are combined with standard CRBasic instructions to create the code needed for telephone answering, dialing, voicing word strings, voicing data, receiving key presses from the remote phone, and acting upon those key presses.
5.1.1 Callback
5.1.1.1 Data Callback
For Edlog dataloggers, use multiple P97s with a different flag for each P97.
Callback is the ability of a datalogger/COM310 station to initiate a phone call ‘back’ to a PC running LoggerNet (data mode) or to a telephone (voice mode). You can include data callback and voice callback code in the same program. See example CR1000 voice callback/callin program for details.
A station can be programmed to do a data callback in the event specified conditions are met to a PC (with phone modem) running LoggerNet. Data callback causes LoggerNet to collect datalogger data marked for collection. You must enable Callback (sometimes in two places) in LoggerNet Setup.
A CR1000 program uses a SendVariables instruction to effect a data callback (see example data callback program below). No callback ID is used.
A CR10X, CR510 or CR23X program uses a P97 typically with a “42” in Parameter 1 for 9600 baud. A callback ID is required in P97’s Parameter 8 matching that assigned in the LoggerNet Setup.
Data callback is not supported in table-based or PakBus OSs for the CR10X, CR510, and CR23X.
13
Loading...
+ 37 hidden pages