Campbell Scientific COM320 User Manual

COM320 Voice
Communications Modem
Revision: 9/11
Copyright © 2002-2011
Campbell Scientific, Inc.

Warranty

“PRODUCTS MANUFACTURED BY CAMPBELL SCIENTIFIC, INC. are warranted by Campbell Scientific, Inc. (“Campbell”) to be free from defects in materials and workmanship under normal use and service for twelve (12) months from date of shipment unless otherwise specified on the corresponding Campbell invoice. Batteries, fine-wire thermocouples, desiccant, and other consumables have no warranty. Campbell's obligation under this warranty is limited to repairing or replacing (at Campbell's option) defective products, which shall be the sole and exclusive remedy under this warranty. The customer shall assume all costs of removing, reinstalling, and shipping defective products to Campbell. Campbell will return such products by surface carrier prepaid within the continental United States of America. To all other locations, Campbell will return such products best way CIP (Port of Entry) INCOTERM® 2010, prepaid. This warranty shall not apply to any Campbell products which have been subjected to modification, misuse, neglect, improper service, accidents of nature, or shipping damage. This warranty is in lieu of all other warranties, expressed or implied. The warranty for installation services performed by Campbell such as programming to customer specifications, electrical connections to products manufactured by Campbell, and product specific training, is part of Campbell’s product warranty. CAMPBELL EXPRESSLY DISCLAIMS AND EXCLUDES ANY IMPLIED WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. Campbell is not liable for any special, indirect, incidental, and/or consequential damages.”

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.campbellsci.com to determine which Campbell Scientific company serves
your country.
To obtain a Returned Materials Authorization (RMA), contact CAMPBELL SCIENTIFIC, INC., phone (435) 227-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
For all returns, the customer must fill out a "Statement of Product Cleanliness and Decontamination" form and comply with the requirements specified in it. The form is available from our web site at www.campbellsci.com/repair. A completed form must be either emailed to repair@campbellsci.com or faxed to 435-227-9579. Campbell Scientific is unable to process any returns until we receive this form. If the form is not received within three days of product receipt or is incomplete, the product will be returned to the customer at the customer's expense. Campbell Scientific reserves the right to refuse service on products that were exposed to contaminants that may cause health or safety concerns for our employees.
COM320 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 COM320 Modem....................................................................................11
4.2 Surge Suppressor ....................................................................................12
4.3 Voice Capable Dataloggers ....................................................................12
4.4 Telephone ...............................................................................................12
5. Datalogger Voice Programming ...............................12
5.1 Features...................................................................................................13
5.1.1 Callback ........................................................................................13
5.1.1.1 Data Callback ......................................................................13
5.1.1.2 Voice Callback ....................................................................13
5.1.2 Voice Callin ..................................................................................13
5.1.3 Voice Storage Data .......................................................................13
5.2 Voice Instructions...................................................................................14
5.2.1 VoiceBeg / EndVoice ...................................................................14
5.2.2 VoiceSpeak ...................................................................................14
5.2.3 VoiceKey ......................................................................................14
5.2.4 VoiceNumber................................................................................15
5.2.5 DialVoice ......................................................................................15
5.2.6 VoiceHangup ................................................................................15
5.2.7 VoiceSetup....................................................................................15
5.2.8 VoicePhrases.................................................................................16
5.3 Data Callback .........................................................................................16
5.3.1 Example Data Callback Program..................................................16
5.3.2 Data Callback Instructions............................................................17
5.4 Answer in Data Mode.............................................................................18
5.5 LoggerNet...............................................................................................18
6. Hardware Installation ................................................19
6.1 Site Requirements...................................................................................19
6.2 Powering the COM320 Modem..............................................................21
6.3 Grounding the COM320 System ............................................................21
6.4 Telephone Service ..................................................................................22
6.5 Connecting to a Surge Protector .............................................................23
i
COM320 Table of Contents
7. Troubleshooting COM320 Voice Systems ...............24
Appendices
A. IC Information .......................................................... A-1
B. Updating and Configuring the COM320 ................B-1
C. CS I/O 9 Pin Serial Port ........................................... C-1
7.1 No Communications .............................................................................. 24
7.2 Communications Problems .................................................................... 25
B.1 Removing the Cover to Access the USB Port..................................... B-1
B.2 COM320 USB Communications Cable............................................... B-1
B.3 COM320 Driver Installation ............................................................... B-1
B.4 Downloading a New Operating System to the COM320 .................... B-4
B.5 Changing COM320 Settings ............................................................... B-5
B.6 Retrieving a Vocabulary List .............................................................. B-7
D. COM320 Word List ..................................................D-1
D.1 COM320 Word List – Alphabetical Order.......................................... D-1
List of Figures
1. COM320 Voice Synthesizer Modem......................................................... 1
2. COM320 Hardware Connection Using Standard RJ11 Phone Jack ........ 20
3. COM320 / CR1000 Using Surge Protection Device................................ 21
4. COM320 Grounding and Alternate 12VDC Power................................. 22
5. Top View of Surge Suppressor Wiring.................................................... 23
6. Side View of Surge Suppressor Wiring ................................................... 24
B-1. Send OS Screen in Device Configuration.......................................... B-5
B-2. Device Configuration Screen ............................................................. B-6
B-3. Device Configuration Settings Editor ................................................ B-7
C-1. COM320’s Male 9 Pin Connector ..................................................... C-1
List of Tables
C-1. Pin Description................................................................................... C-2
ii

COM320 Voice Communications Modem

1. Introduction

The COM320 is a voice-synthesized modem that supports the CR800, CR850, CR1000, and CR3000 dataloggers. The COM320 allows the datalogger to announce over the telephone specific variable data, present state of flags and/or control ports, and the ability to toggle flags and/or control ports. Along with announcing information over the phone, the datalogger can also be programmed to call specific phone numbers with different messages when specific conditions are met.
Although the primary function of the COM320 is voice communications, the modem is also capable of data communications. In data mode the COM320 supports standard datalogger functions including program send, data collection, and data callback.
This manual provides information regarding COM320 specifications, installation, and operation. Quick Start (Section 3) presents an example CR1000 voice callback/callin program with descriptions of the code.
Section 6.3 explains how to make a good earth ground connection to maximize protection of the COM320 against lightning and electro-static discharge.
FIGURE 1. COM320 Voice Synthesizer Modem
1
COM320 Voice Communications Modem

2. Specifications

Standards: V.92, K56Flex, V.90, V.34, V.32bis, V32, V23, V22bis, V22,
V.21, B212, B103
Registration:
FCC US: 3A4M508BSM2-T-W IC 2377 A-SM2TW TBR21
Operating voltage: 12 VDC
Current drain: 100 μA quiescent; 35 mA active
Operation: Full-duplex over standard analog phone lines
Operating temperature: -25° to +50°C std, -40° to +85°C optional
Dimensions: 6.5” x 1.0” x 2.6” (16.5 x 2.5 x 6.6 cm)
Weight: 0.35 lbs (0.16 kg)
For information regarding the COM320 theory of operation refer to Appendix A of this manual.

3. Quick Start

NOTE
This section presents Basic_Voice_2.cr1 an example voice callback/callin program written to demonstrate functions of the COM320. It can serve as a starting point from which to build an application program. Test 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) COM320 (COM320_OS.03 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
The COM320 cannot interface with office digital phone lines. Connect the COM320 to analog phone lines only, such as a fax line.
You will also need:
2
1) Windows compatible PC with available COM port
2) LoggerNet 3.4.1 or later installed on PC.
The datalogger’s voice code is created along with the measurement program using the CRBasic editor. It is recommended to finish and debug the voice portion of the 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 a custom voice program and merge it with an application program.

Step 1 – LoggerNet Setup

1) In LoggerNet Setup create the following device map
COM320 Voice Communications Modem
2) Configure ComPort and PhoneBase for your PC’s phone modem.
3) Configure PhoneRemote to include the COM320’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) Turn off PS100 if it isn’t already.
3) Connect CR1000 to PS100 (turned off).
4) Connect SC12 cable from COM320 to CR1000 CS I/O port.
5) Connect analog phone line to COM320.
6) Turn on PS100.
7) Connect prepared TC to CR1000’s DIFF 7 analog input.
8) Connect LED with 1000 Ohm resistor connected to anode lead from C1 to
G (resister to C1).
3
COM320 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, COM310 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, File Control send
BASIC_VOICE_2.CR1 to CR1000phone.
7) Close File Control and Disconnect from CR1000phone.

Step 4 – Callin

Step 5 – Callback

8) 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 COM320.
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
Pressing the # key you should hear:
C R ONE THOUSAND STATION PRESS ONE TO HEAR A SENSOR VALUE
4
COM320 Voice Communications Modem
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 key presses.
c) Press the same key again if getting an incorrect response.
d) If no response, try pressing the same key again or press the # key to
recover.
e) If unresponsive, try rapidly pressing a series of five * keys to
disconnect station.
f) Worst case, hang up and 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 CSI’s website under Support/Downloads/Program Examples. Following the program is a description of its main sections.
5
COM320 Voice Communications Modem
' CR1000
' BASIC_VOICE_2.CR1
' 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 COM320 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
COM320 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
COM320 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
COM320 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
Loading...
+ 35 hidden pages