External Sensors ================ Current Source 1 and 2 ---------------------- Two 12V switched current sources, which can source a maximum of 200mA each are supplied on pins 3 and 5. The 12V supply is internally generated and is battery backed and so can still be used when running of solar or battery power. Current supplied by each of the switched current sources is measured to a resolution of 0.1mA and so is able to be used to supply and measure the output of 4-20mA and other current-output sensors. Internal resettable fuses protect the outputs against over-current events. The switched current sources are expected to be used to power external sensors such as hall-effect sensors, 4-20mA sensors and serial devices. It can be configured to turn on prior to measurement to allow sensors time to boot or for measurements to stabilise. After measurements are complete, the output can be switched off to preserve power; this is especially important when running off solar or batteries. The current sources can be used to power a sensor that is measured using one of the inputs, since the inputs are measured just before the current sources are turned off. .. note:: When a current source is used to power a sensor that is read by an input, the intervals specified for the current source and input must be the same. Many 4-20mA sensors are powered by the current flowing through the loop to which they are connected and are called loop powered devices. Loop powered sensors can be connected using switched source 1 as the current source (pin 3) and GND (pin 2 or 4) or alternatively using switched source 2 as the current source (pin 5 as shown below) and GND. .. figure:: ../images/externalcurrent1.png :width: 500px :alt: Single current sensor :align: center :figclass: align-center Connecting a single loop powered device Some sensors and systems that use current as an output require an external power supply. In an implementation where system power is available, the sensor can be connected as shown below. .. figure:: ../images/externalcurrent2.png :width: 500px :alt: Single externally powered current sensor :align: center :figclass: align-center Connection of a single externally powered 4-20mA device In solar or battery operated systems where permanent power is not available, externally powered current-output sensors can utilise the ORB switched power source as shown below. Switched source 1 and 2 should be configured to switch on for the minimum amount of time before a measurement is made in order to minimise power consumption. .. figure:: ../images/externalcurrent3.png :width: 500px :alt: Connection of a single externally powered 4-20mA device using switched power :align: center :figclass: align-center Connection of a single externally powered 4-20mA device using switched power Two loop powered 4-20mA sensors can be connected to the ORB by utilising both of the switched current sources. .. figure:: ../images/externalcurrent4.png :width: 500px :alt: Connection of two loop powered 4-20mA devices :align: center :figclass: align-center Connection of two loop powered 4-20mA devices Both inputs will report the voltage that is connected to them and so can be used as general purpose analog or digital inputs. .. note:: When a voltage is connected to the current source pins, current may flow backwards into the ORB and the resulting current measurement may be negative. .. warning:: Connecting a power source greater than 12V to pins 3 or 5 may result in permanent damage to the functions of those pins or to the ORB. Specification ............. ======================================================================== ================================================= Parameter Specification ======================================================================== ================================================= Maximum source current 100mA per pin Maximum measurable current 40mA Current measurement accuracy +-0.1mA Current measurement precision 20uA (11 bits over 40mA) Maximum voltage on pins 12V Voltage measurement accuracy +-300mV ======================================================================== ================================================= Settings ........ Measurements can be scheduled as a multiple of the base-interval. At the *interval*, the current sources will turn on and a measurement will be made. The fastest possible measurement rate is achieved by setting the interval to 1 in which case measurements will occur on every base interval. To reduce power consumption, the measurement rate can be turned down by increasing the measurement-interval. If a connected device needs some time to stabilise before measurements can be taken, the current sources can be set to turn on a short time before a measurement is to be made using the *start time* option. Keep the *start time* value to a minimum to reduce overall power consumption when running on batteries or solar. .. note:: If more than one external device is being powered by the switched power, please ensure that the stabilisation time is set to the maximum for all devices powered. If the current sources are being used to power an external sensor device that needs to be constantly powered, the *always on* option can be used to prevent the current source from being turned off. The ORB measures current, in mA, sourced by the two outputs. If however the attached sensor is calibrated in a unit other than mA, then that *calibration* can be applied to the measurement. If for instance, a 4-20mA level sensor is attached to output 1 and 4mA represents 0m of water and 20mA represents 100m of water, then the *calibration* values are set as follows: ====================================== ======================================================== current1.calibration.low_x = 4 4mA is the low value at which the sensor is specified current1.calibration.low_y = 0 0m is the value represented by 4mA current1.calibration.high_x = 20 20mA is the high value at which the sensor is specified current1.calibration.high_y = 100 100m is the value represented by 20mA current1.calibration.unit = m m is the unit as measured by the sensor ====================================== ======================================================== The mA values measured by the ORB will be converted into the user specified units before being transmitted or being compared with the warning and alarm values. If the user wants to leave the units in mA, then use the defaults as specified in the table below. The input measurement range and accuracy can be optimised specifically for 4-20mA devices. Select the *optimise* option to optimise accuracy for 4-20mA sensors. *Warning* and *alarm* thresholds can be enabled. Once enabled, each time a measurement is completed, the returned value will be compared with minimum and maximum *warning* and *alarm* thresholds. If a *warning* or *alarm* level is breached, a message will immediately be transmitted. As long as the *warning* or *alarm* condition persists, messages will be transmitted at the exception-interval rather than the transmit-interval. *Hysteresis* can be specified in increments of the specified unit, to prevent multiple alarms in the presence of electrical noise. A full list of current source settings is given in the table at the end of this chapter. Serial Interface ---------------- The serial port can be used to capture data that is sent from an external system or to interface to a MODBUS sensor. The serial port occupies pins 6 and 7 on the interface header. The pins have functions that depend on the chosen interface as shown in the table below. When RS485 mode is chosen, an optional 120\ |ohm| termination resistor can be selected. =============== ================== =============== Interface type Pin 6 function Pin 7 function =============== ================== =============== RS232 Receive (Rx) Transmit (Tx) RS485 RS485-B RS485-A =============== ================== =============== .. note:: RS485-B is sometimes referred to as D+ or TX+/RX+ and RS485-A as D- or TX-/RX-. The RS485 receiver supports up to 256 nodes per bus, and features full failsafe operation for floating, shorted or terminated inputs. Interface pins are protected against electrostatic discharge up to 26kV, whether the ORB is powered or unpowered. Specification ............. ============================================================================= ================================================= Parameter Specification ============================================================================= ================================================= RS232 transmitter output low voltage (typical) -5.5V RS232 transmitter output high voltage (typical) +5.9V RS232 Input threshold voltage +1.5V RS485 differential output voltage (minimum with load resistance 120\ |ohm|\ ) +2V RS485 differential input signal threshold +-220mV Maximum nodes in RS485 mode 256 RS485 termination resistor 120\ |ohm| ============================================================================= ================================================= Settings ........ Measurements can be scheduled as a multiple of the base-interval. The fastest possible measurement rate is achieved by setting the *interval* to 1 in which case measurements will occur on every base interval. To reduce power consumption, the measurement rate can be turned down by increasing the *interval*. In *serial capture* mode the measurement interval can be used to reduce the number of readings being provided by a connected sensor or system that may be permanently powered. If for instance, a connected system is sending a message every second but it is only required to be read and transmitted every minute, the measurement interval can be set to 1 minute in which case the ORB will wake on the minute interval, receive a message and return to sleep thereby missing the other 59 messages sent by the attached system. Since serial packets cannot be interrogated by the ORB without a customised script, it makes sense to set the measurement interval to the same as the transmit interval in most cases. The serial port on the ORB can be configured as an RS232 or RS485 hardware interface using the *type* option. If RS485 mode is selected, an optional 120\ |ohm| termination resistor can be selected by selecting the *Termination resistor* option. The purpose of the termination resistor is to match the impedance of a transmission line to the hardware impedance of the interface to which it is connected. Termination is generally not required in lower speed networks (9600 baud or less) and networks shorter than 500m in length. No more than 2 termination resistors should be used, one at each end of the RS485 transmission line. A *baud rate* of 4800, 9600, 19200, 38400, 56800 or 115200 needs to be selected using the *baud rate* option. Other settings, including the number of bits, odd or even parity and 1 or 2 stop bits are added in the *settings* field. The most common setup is 8 bits, no parity and 1 stop bit or "8N1". The serial interface can be configured in serial capture mode or :term:`MODBUS` mode using the *mode* option. Capture mode is typically used where an external sensor sends serial data and a portion of that serial data is to be captured. MODBUS mode is used to connect to external sensors that are compatible with the MODBUS standard. In *serial capture mode* The ORB listens for periodic data and when received, transmits this data at the next send interval. The maximum length of a message that can be captured is 512 characters. Once 512 characters have been received, the ORB will terminate the capture and will transmit it on the next transmit interval. In capture mode, the *max-time* setting can be used to set a timeout after which the serial port will return to sleep. *Max-time* can be used as a way to end serial measurement in the event that no serial data is received, or as a mechanism to allow the ORB to sample the serial port for a defined time-period. .. note:: If the serial port needs to be kept on all the time, set the *max-time* to longer than the measurement interval. The contents of the serial buffer is retained as long as the ORB does not return to sleep. The operation of the *max chars* option is similar to the *max time* setting except that the serial port stops sampling after a certain number of characters has been received. In most cases where the *max-chars* setting is used to terminate serial capture, the *max-time* setting is also used to end the serial measurement in the event that data does not arrive. In *Serial capture mode*, in systems where many messages are sent and only a few are of interest, a *start string* of up to 10 characters can be enabled. For instance, in a typical GPS serial NMEA feed, the following are a subset of available messages: * DTM - Datum being used. * GGA - Fix information * GLL - Lat\/Lon data * GSA - Overall Satellite data * GSV - Detailed Satellite data * RMC - Recommended minimum data for GPS * RTE - Route message * VTG - Vector track an Speed over the Ground If in the application, the user is only interested in receiving the GGA message, then a *start string* can be set to GGA. In that way, any messages starting with DTM, GLL, GSA or other unwanted messages will be discarded. .. note:: If a start string is enabled, the ORB will stay awake until the string is received or until the *max-time* is reached. In firmware revisions less than 2, serial *start strings* are specified as text, with special characters such as carriage return and line feed being specified by their respective escape sequences. A list of allowable escape sequences is given below: * \\f Form-feed * \\n Newline (Line Feed) * \\r Carriage Return * \\t Horizontal Tab * \\v Vertical Tab * \\\\ Backslash .. note:: Because escape sequences start with a backslash (\\), if a capture string contains a backslash, it needs to be escaped and so is represented as a double backslash (\\\\). In firmware release 2 and above, serial *start strings* are specified as text, with special characters such as carriage return and line feed being specified by their respective ASCII codes in hexadecimal. A list of example hexadecimal sequences is given below: * \\x0C Form-feed * \\x0A Newline (Line Feed) * \\x0D Carriage Return * \\x09 Horizontal Tab * \\x0B Vertical Tab * \\x08 Backslash The change to the method used to represent special characters has been made to allow for all ASCII characters to be used, and to allow for hexadecimal data to be captured. .. note:: In firmware revisions 2 and lower, special characters are specified as escape characters. In revisions 2 and above, special characters are represented by their ASCII representations in hexadecimal. In some serial protocols, the start of a packet is specified by a preceding period of inactivity on the serial bus. The *Idle Time Before Start* parameter can be used to specify an idle time, which is exceeded will trigger the serial port to start capturing serial data. .. note:: If the serial port is capturing data and a subsequent idle time occurs, the capture process will restart and captured data will be discarded. A serial capture *stop string* of up to 10 characters can also be provided. Again using the NMEA example, all NMEA messages end with a carriage return and line feed and so the serial capture *stop strings* in each case will be the same and will be "\\r\\n" or \\x0D\\x0A in revision 2 and above firmware. In most instances, the serial *stop strings* will be the same for all messages. .. note:: If a *start string* is specified without a *stop string*, or the *stop string* is never encountered, the serial port will capture characters until the *max-time* or *max-chars* is reached, the next measurement interval occurs or 256 characters are received. An optional serial *request string* can be sent, on each measurement interval, to an external device. The purpose of the *request sting* is to request data from an external sensor or system. The *request string* can be a maximum of 10 characters and can be entered as text. Special characters like carriage return and line feed can be inserted using escape sequences or their ASCII representations as described earlier in the chapter. The ORB implements the *MODBUS* communications protocol standard as a master, which enables communication with many slave devices connected to the network. The ORB can be configured to periodically request specific data from slave *MODBUS* devices on the network and transmit that data at specified intervals. Up to twenty MODBUS data requests can be configured on the ORB; these data requests can either be from twenty individual slave devices or multiple requests from the same device. For each of the twenty data reads, the *slave address*, *function* and *register address* need to be specified. The *slave address* will be specified by the manufacturer of the device that is attached to the ORB; in some cases, slave devices allow their addresses to be configured. The *function* specifies the type of data to be read from the slave device. The ORB supports the following types of data reads: * Disabled - the particular MODBUS channel is not used * Read Coil - a 1 bit data value * Read Discrete - a 1 bit data value * Read Holding - a single 16 bit holding register * Read Input - a 16 bit input register * Read Holding (32 bits, Little Endian register order) - a 32 bit holding register * Read Holding (32 bits, Big Endian register order) - a 32 bit holding register * Read Input (32 bits, Little Endian register order) - a 32 bit input register * Read Input (32 bits, Little Endian register order) - a 32 bit input register Endianness is the order or sequence of bytes of digital data in computer storage and will be specified by the sensor that is being connected to the ORB. A single MODBUS device may have multiple data values that can be read. The *register address* specifies which data the slave device needs to deliver. In *MODBUS mode*, calibration can be applied so that the registers read by the ORB can be scaled to be in the units of what is being measured. For instance, a register that returns 0 to 255 may represent 0% humidity to 100% humidity. The ORB can be calibrated to take a number and to convert it to humidity in % and return that as the measured value. In any system, the sensor and possibly the measured value will be subject to errors that may accumulate to reduce accuracy. In a system that uses the ORB to measure fluid volume in a 100 litre tank using a MODBUS sensor, the sensor may have offset errors such that with zero liquid in the tank, the ORB is showing a small volume. The ORB and sensor may also not be perfectly linear in that they may not measure 1 litre in exactly the same way when the tank is empty versus when it is full. The tank itself may also not be perfectly manufactured and may, for instance have walls that are not perfectly straight. All of these errors could add together such that the final system is less accurate than expected. To achieve a more accurate system, a calibration can be performed. In this example, the tank could be calibrated by adding a small amount of liquid, say 10 litres (low Y) and noting the value reported by the ORB (low X). Now fill the tank by adding another 99 litres (high y) and note the value being reported by the ORB (high X). By filling the high and low X and Y values into the calibration constants associated with *analog mode*, offset and non-linearity errors can be eradicated, resulting in a much more accurate system. In *MODBUS mode*, *warning* and *alarm* thresholds for can be set for each MODBUS channel. Once enabled, each time a measurement is completed, the returned value will be compared with minimum and maximum *warning* and *alarm* thresholds. If a *warning* or *alarm* level is breached, a message will immediately be transmitted. As long as the *warning* or *alarm* condition persists, messages will be transmitted at the exception-interval rather than the transmit-interval. .. note:: If calibration has been applied, then the warning and enable thresholds are in the calibrated units. A full list of serial interface settings is given in the table at the end of the chapter. Inputs ------ Pins 8 and 9 on the 12 way header are multi-purpose inputs. The inputs can be configured to measure analog voltages, where the value on the pin is measured; digital states that represent ON or OFF; frequency; duty cycle and count pulses. In analog and digital mode, pin 8 represents input 1 and pin 9 represents input 2. ====== ============== Pin Channel ====== ============== 8 Input 1 9 Input 2 ====== ============== The voltage present on the inputs should not exceed 72V. The inputs are protected against over-voltage events to 100V and against static discharge. The equivalent input impedance of pins 8 and 9 is the same and is shown below. As far as DC circuits are concerned, any input connected to pin 8 or 9 will experience a 310k\ |ohm| resistance to ground. For analog measurements, a low-pass filter reduces high frequency noise, improving measurement accuracy. .. figure:: ../images/input1.png :width: 500px :alt: Equivalent circuit for inputs :align: center :figclass: align-center Equivalent circuit for inputs .. note:: The low pass filter is not applied when the input module is used to measure frequency and duty cycle. Specification ............. ======================================================================== ================================================= Parameter for Analog and Digital measurements Specification ======================================================================== ================================================= Maximum input voltage 72V Analog measurement accuracy +-50mV Input resistance (Input1) 182k\ |ohm| Input resistance (Input2) 310k\ |ohm| Input filter cutoff frequency 53Hz ======================================================================== ================================================= ======================================================================== ================================================= Parameter for Frequency and Duty Cycle Measurement Specification ======================================================================== ================================================= Maximum input voltage 72V Input resistance (Input1) 182k\ |ohm| Minimum amplitude 3V (measured down to 1.7V but not guaranteed) Minimum measureable frequency 1Hz (square wave, 3V minimum amplitude) Maximum measureable frequency 10kHz (square wave, 3V minimum amplitude) Frequency measurement resolution 1Hz Frequency measurement accuracy +-1Hz to 100Hz, +-10Hz to 10kHz Maximum measurable duty cycle 100% Minimum measureable duty cycle 1% Duty cycle measurement resolution 1% Duty cycle accuracy +-1% Minimum pulse duration for duty cycle measurement 10msec (1% of 1Hz) ======================================================================== ================================================= ======================================================================== ================================================= Parameter for Pulse Counting Specification ======================================================================== ================================================= Maximum input voltage 72V Input resistance (Input1) 182k\ |ohm| Minimum amplitude 3V (tested down to 1.7V but not guaranteed) Minimum frequency 0.01Hz (not tested lower) Maximum measureable frequency 5kHz (square wave, 3V amplitude) Minimum pulse duration for pulse counting +100usec (tested to 20usec but not guaranteed) ======================================================================== ================================================= Settings ........ Measurements can be scheduled as a multiple of the base-interval. The fastest possible measurement rate is achieved by setting the *interval* to 1 in which case measurements will occur on every base interval. To reduce power consumption, the measurement rate can be turned down by increasing the *interval*. The mode selects the function of the input pin. Input 1 can be operated in *Digital*, *Analog*, *Frequency* and *Duty Cycle* modes; input 2 only has *Digital* and *Analog* modes. **Analog mode** Select *analog mode* if the input is a voltage that needs to be measured. Analog measurement should be used when interfacing with voltage-output sensors or when measuring a voltage, for instance when reporting on solar capacity. The maximum voltage that can be measured is 72V and the resolution is 50mV. For maximum accuracy, and to allow for scaling of sensors, calibration can be applied in analog mode. **Digital mode** Select *digital mode* if the input typically has two levels and can be considered as ON or OFF. Digital mode is typically used when interfacing to a switch or a system that has two discrete voltages representing ON and OFF. An example of a signal with 2 discrete on and off voltage levels would be an ignition signal on a vehicle. In digital mode, the *threshold* at which an input is considered ON or OFF can be set between 0 and 72V in 100mV increments. For example, if the ORB is being used to detect an ignition signal in a 12V vehicle, the *threshold* could be set to 6 volts. In a system where the output is either 0 or 5 volts, the *threshold* could be set at 2.5 volts. Hysteresis can be applied to prevent false changes in state if the input voltage crosses the *threshold* slowly or in the presence of noisy inputs. In the example below, adding *hysteresis* prevents the output falsely showing as on as the noisy signal crosses the threshold. In digital mode, the hours that the input is above the threshold can be counted and used as an hour meter. .. figure:: ../images/input6.png :width: 500px :alt: Hysteresis :align: center :figclass: align-center Hysteresis Since the inputs on the ORB have a 310k\ |ohm| resistance to ground, if an external switch is placed between supply and the input, no additional circuitry is required. When the external switch is open, the 310k resistance will pull the input low. When the external switch is closed, the input will be driven high. Where there is no permanent power source, switches can be powered using one of the current loops. Connection to an external switch that is connected to system power is shown below. .. figure:: ../images/input2.png :width: 500px :alt: External switch connection when switch to positive :align: center :figclass: align-center External switch connection when switch to positive If an external switch is to be connected to ground, an external pullup resistor of less than 10k\ |ohm| is required between the pin to which the switch is connected and system power. Power to the pullup can also be provided using the internally generated switched power on either of the current source pins. When the switch is open , the external pullup drives the pin high. When the switch is closed, the pin is grounded. Connection to an external switch that is connected to ground is shown below. .. figure:: ../images/input3.png :width: 500px :alt: External switch connection when switch to ground :align: center :figclass: align-center External switch connection when switch to ground .. note:: Connecting an external pullup resistor will increase current consumption when running of batteries and using the switched power output. In digital mode, an *alert* can be generated when the input changes state. This may be useful, for instance where monitoring an alarm system to see if it is activated or not. Each time the system is activated or de-activated, an *alert* can be generated and transmitted Input 1 has additional functionality that allows switch change of state detection whilst the ORB is in sleep state. This allows the ORB to remain in a very low power sleep state, to wake on switch level change and transmit the change of state. This functionality is not available on input 2. **Frequency mode** Input 1 has an additional mode that allows for the measurement of frequency. In *frequency mode*, on each measurement interval, the frequency of a signal on the pin is measured. Primary applications are speed, rpm and flow rate measurement. In the diagram below, the ORB is configured to measure engine speed using an output from the P (pulse) terminal on an alternator. .. figure:: ../images/input5.png :width: 500px :alt: RPM measurement :align: center :figclass: align-center RPM measurement **Duty-Cycle mode** Input 1 has an additional mode that allows for the measurement of duty-cycle. In *duty-cycle mode*, on each measurement interval, the duty-cycle of a signal on the pin is measured. Sensors regularly use duty cycle to communicate percentage of full-scale; for instance, 0% duty cycle may represent 0% humidity and 100% duty-cycle may represent 100% humidity. In some sensors, 0% and 100% duty cycle represent error conditions. **Calibration** In *analog mode*, *frequency mode* and *duty-cycle mode*, calibration can be applied so that the measurement returned by the ORB is in the units of what is being measured. For instance, in *analog mode*, a voltage of 0 to 5V may represent 0% humidity to 100% humidity. The ORB can be calibrated to take a voltage measurement and to convert the measurement to humidity in % and return that as the measured value. In any system, the measurement instrument (the ORB), the sensor and possibly the measured value will be subject to errors that may accumulate to reduce accuracy. In a system that uses the ORB to measure fluid volume in a 100 litre tank using a 4-20mA sensor, the ORB and sensor may have offset errors such that with zero liquid in the tank, the ORB is showing a small volume. The ORB and sensor may also not be perfectly linear in that they may not measure 1 litre in exactly the same way when the tank is empty versus when it is full. The tank itself may also not be perfectly manufactured and may, for instance have walls that are not perfectly straight. All of these errors could add together such that the final system is less accurate than expected. To achieve a more accurate system, a calibration can be performed. In this example, the tank could be calibrated by adding a small amount of liquid, say 10 litres (low Y) and noting the value reported by the ORB (low X). Now fill the tank by adding another 99 litres (high y) and note the value being reported by the ORB (high X). By filling the high and low X and Y values into the calibration constants associated with *analog mode*, offset and non-linearity errors can be eradicated, resulting in a much more accurate system. **Warnings and Alarms** In *analog mode*, *frequency mode* and *duty-cycle mode*, *warning* and *alarm* thresholds for can be set. Once enabled, each time a measurement is completed, the returned value will be compared with minimum and maximum *warning* and *alarm* thresholds. If a *warning* or *alarm* level is breached, a message will immediately be transmitted. As long as the *warning* or *alarm* condition persists, messages will be transmitted at the exception-interval rather than the transmit-interval. .. note:: If calibration has been applied, then the warning and enable thresholds are in the calibrated units. **Pulse counting** In all modes, the number of pulses that have occurred since the ORB was last reset can be measured and reported. To enable the counting of pulses, enable the *pulse* option. If for instance, a flow-sensor is being used to deliver fuel to a vehicle, the instantaneous frequency would represent flow rate (possibly in litres per minute) and the number of pulses would represent the total amount of fuel delivered (possibly in litres). When *pulse* counting is enabled, the ORB remains awake, continuously monitoring the input in order to capture all the pulses that occur. The count can be set to *reset* after a number of pulses have been counted. This may be useful, for instance if a sensor is measuring water in litres, and only kilolitre indications are required. In this case, a *pulse warning* level can be set at 1000 pulses at which time a transmission will be made and at the same time, the counter will be *reset*. One transmission will be made for each 1000 litres of water measured. .. note:: Because *pulse* counting keeps the input active, there will be an increase in power consumption. In the diagram below, a flow sensor with integrated reed-switch is connected to input 1 to allow the number of pulses occurring to be measured. .. figure:: ../images/input4.png :width: 500px :alt: Flow sensor connection :align: center :figclass: align-center Flow sensor connection A full list of settings for the inputs is given in the table at the end of this chapter. Thermocouple Interface ---------------------- The ORB-X1 has a thermocouple interface. Pins 11 and 12 on the ORB header are specifically for connection to a thermocouple to allow temperature measurement. The positive terminal of a thermocouple, typically yellow for K-type, should be connected to pin 12 and the negative terminal, typically red, to pin 11. The thermocouple input is extremely sensitive and no other connections should be made except directly to thermocouples. .. warning:: Connection of anything to pins 11 or 12 except a thermocouple can result in permanent damage to the thermocouple input and potentially to the ORB as well. Thermocouples come in various types. The ORB supports K, J, T, N, S, E, B and R-Type thermocouples. Typical temperature measurement accuracy is +-0.5\ |deg|\ C with a resolution of 0.0625\ |deg|\ C. Temperature measurement accuracy is guaranteed to be +-1.5\ |deg|\ C accurate, based on an ambient temperature of between 0 to +85\ |deg|\ C. Note that the temperature of the body being measured can be hotter it colder than 0 to +85\ |deg|\ C; the 0 to +85\ |deg|\ C range applies only to the ambient (air) temperature.. A thermocouple is comprised of at least two metals joined together to form two junctions. One is connected to the body whose temperature is to be measured; this is the hot or measuring junction. The other junction is connected to a body of known temperature (the terminal block in the ORB); this is the cold or reference junction. Therefore the thermocouple measures unknown temperature of the body with reference to the known temperature of the other body. .. figure:: ../images/thermocouple.png :width: 500px :alt: Thermocouple polarity :align: center :figclass: align-center Typical thermocouple polarity .. note:: The negative terminal of a thermocouple is typically red. A thermocouple connected incorrectly may appear to work at some temperatures. In the ORB, the ambient temperature accuracy (Cold junction accuracy) is typically +-0.5\ |deg|\ C or a maximum of +-1.0\ |deg|\ C over the ambient temperature range of 0 to +85\ |deg|\ C. The ORB is capable of measuring the hot junction to an accuracy of typically +-0.25\ |deg|\ C or a maximum of +-0.5\ |deg|\ C over the ambient temperature range 0 to +85\ |deg|\ C and assuming the below thermocouple temperature ranges: Specification ............. ====================== ==================================== Parameter Specification ====================== ==================================== Temperature accuracy +-0.5\ |deg|\ C (typical) Temperature accuracy +-1.5\ |deg|\ C (0 to 85\ |deg|\ C) Resolution +-0.0625\ |deg|\ C Hot junction accuracy +-0.25\ |deg|\ C (typical) Hot junction accuracy +-0.5\ |deg|\ C (0 to 85\ |deg|\ C) Cold junction accuracy +-0.5\ |deg|\ C (typical) Cold junction accuracy +-1.0\ |deg|\ C (0 to 85\ |deg|\ C) ====================== ==================================== ================= =================================== Thermocouple Type Temperature range ================= =================================== Type K: -200 to +1372\ |deg|\ C Type J: -150 to +1200\ |deg|\ C Type T: -200 to +400\ |deg|\ C Type N: -150 to +1300\ |deg|\ C Type E: -200 to +1000\ |deg|\ C Type S: 250 to +1664\ |deg|\ C Type B: 1000 to +1800\ |deg|\ C Type R: 250 to +1664\ |deg|\ C ================= =================================== Thermocouple correction coefficients are derived from the National Institute of Standards and Technology (NIST) ITS-90 Thermocouple Database. Settings ........ The ORB can be configured to use K, J, T, N, S, E, B and R-Type Thermocouples using the *type* setting. It is important to select the correct thermocouple type in order to maximise temperature measurement accuracy. Measurements can be scheduled as a multiple of the base-interval. The fastest possible measurement rate is achieved by setting the *interval* to 1 in which case measurements will occur on every base interval. After each measurement, the ORB can be configured to compare the value to pre-set *warning* and *alarm* levels. To reduce power consumption, the measurement rate can be turned down by increasing the *interval*. *Warning* and *alarm* thresholds can be enabled. Once enabled, each time a measurement is completed, the returned value will be compared with minimum and maximum *warning* and *alarm* thresholds. If a *warning* or *alarm* level is breached, a message will immediately be transmitted. Hysteresis can be specified in 1\ |deg|\ C increments, to prevent multiple alarms in the presence of noisy signals. A full list of temperature sensor settings is given in the table at the end of this chapter. CAN Bus Interface ---------------------- The ORB-C1 has a CAN bus interface that can be used to read data from all kinds of vehicles and sensors that use CAN as their communications medium. Hundreds of sensors can be connected to a single CAN network. In many cases, the protocol that is being used on the CAN bus is known, and so large volumes of understandable data can be extracted from all kinds of vehicles. Common CAN protocols include: * J1939, the dominating CAN-based protocol for trucks and busses. * ISO 11783, a J1939 flavor for agricultural tractors. * ISO 11992, an interface between trucks and trailers. * NMEA 2000, a protocol based on J1939 for marine use. * CANopen, provides a standard for industrial machinery commonly used in industrial automation. The ORB is compatible with the latest CAN Flexible-Data-rate (FD) specification. Pins 11 and 12 on the ORB header provide the interface to a CAN network with pin 11 being CAN High (dominant high) and pin 12 being CAN Low (dominant low). In CAN networks, 120\ |ohm| terminating resistors are found at each end of the network. In most systems, the terminating resistors will already be in place and will not be needed. In cases where a sensor network is being formed between an ORB and external sensor, a 120\ |ohm| resistor should be placed between the pins 11 and 12 on the ORB. .. warning:: In CAN bus systems, the ground supplied to the ORB must be the same ground as used by the CAN network. High differential voltages between the CAN lines and ground can damage the CAN interface. Specification .............. ============================================================================= ================================================= Parameter Specification ============================================================================= ================================================= CAN High driver voltage (typical) 2.9V CAN Low driver voltage (typical) 0.9V Common mode voltage for reception (maximum) +-25V Absolute maximum voltage on CAN High and CAN Low +-60V Termination resistor 120\ |ohm| ============================================================================= ================================================= Settings ........ Measurements can be scheduled as a multiple of the base-interval. The fastest possible measurement rate is achieved by setting the *interval* to 1 in which case the CAN network will be sampled on every base interval. To reduce power consumption, the measurement rate can be turned down by increasing the *interval*. The CAN bus peripheral on Senquip devices supports can bit rates of 125, 250, 500 and 1000 bits per second as specified in the *Nominal Baud Rate* field. To ensure minimum intrusion on CAN systems, the CAN peripheral can be set to listen only. In this mode the Senquip device will only receive messages that are acknowledged on the bus by a listening node. Where required, the Senquip device can be made to acknowledge messages by selecting the *TX Enable* option. A typical automotive CAN network will contain hundreds of messages, all with their own identifiers. The CAN peripheral can filter only the required messages by filling in the *ID Capture List*. Required identifiers should be entered in hexadecimal and should be separated by commas, for example "18FF20F2, 18FF36F0, 18FF1BF2". When the Senquip device wakes for the next measurement interval, the CAN network will be sampled until all the messages listed have been found or the *Capture Time* has been reached. If multiple messages with the same identifier are required in a single measurement interval, place a \* followed by the number of messages of that identifier to be returned. For example, populating the *ID Capture List* with "18FF20F2\*4, 18FF36F0, 18FF1BF2\*10, 18FF1F12*" will return four 18FF20F2 messages, one 18FF36F0 message, ten 18FF1BF2 messages, and one 18FF1F12 message. Leave the *ID Capture List* blank to receive one of every message that arrives. Place a \* in the *ID Capture List* to receive all messages in the order that they arrive. Keep in mind that receiving every message on the bus could overwhelm the Senquip device in systems with lots of high repetition rate messages. The *Capture Time* setting can be used to set a timeout after which the CAN bus peripheral will stop listening, allowing the Senquip device to transmit received messages and return to sleep. *Capture-time* can also be used as a mechanism to allow the CAN peripheral to sample the CAN bus for a defined time-period. A full list of CAN bus settings is given in the table at the end of this chapter. Output ------ An open-collector output that can be made to switch to ground is provided on pin 10 of the header. The output is capable of sinking 450mA to ground and has an internal resettable fuse in place to prevent over-current events. The output is capable of switching coils and is therefore able to drive external relays and low power solenoids. The open circuit voltage applied to the output should not exceed system voltage or 72V. As an alternate function, where additional inputs are required, the output can be configured as an analog or digital input. .. note:: There is a limit to the amount of energy that the protection circuit can absorb. For instance, shorting the output to power at 72V when the output is on will likely destroy the output. The output is typically used to indicate warning and alarm conditions currently active and can be set to active in the event of a measurement returning an exception. When configured to do so, the buzzer or indicator lamp shown in the diagram below will turn on when a warning or alarm condition exists as pin 10 is switched to ground. .. figure:: ../images/output1.png :width: 500px :alt: Using the output to drive a buzzer with permanent power :align: center :figclass: align-center Using the output to drive a buzzer with permanent power In solar or battery operated systems where permanent power is not available, externally powered current output sensors can utilise the ORB switched power source on pin 3 as shown below. .. figure:: ../images/output2.png :width: 500px :alt: Using the output and internal power to drive a buzzer :align: center :figclass: align-center Using the output and internal power to drive a buzzer Specification ............. ======================================================================== ================================================= Parameter Specification ======================================================================== ================================================= Maximum open circuit voltage 72V Maximum hold current 450mA min Minimum fuse current 550mA max Digital input threshold 6V Hysteresis 1V ======================================================================== ================================================= Settings ........ The output can be scheduled to be configured at a multiple of the base-interval. In the event that the *Interval* is set to a number higher than 1, the output state will only checked and configured on the next output interval. This can be used to create a pulsed output that may be useful in driving alert indicators or in allowing attached devices to time to cool down. The *Mode* setting can be used to configure the output with alternate functions as an analog or digital input. In input mode, the same settings as are associated with Input 2 apply except that the digital threshold and hysteresis are fixed. The output can be configured to activate when any of the peripherals report an exception (*warning*, *alarm* or *alert*) as a result of a measurement and can be set to remain on only as long as the warning or alarm is active or to *hold* on for a time after the *warning* or *alarm* has gone away. .. note:: The output state will be configured at each output interval. The hold-time is how long the output is kept enabled after the exceptions are cleared. A full list of settings for the output is given in the table at the end of this chapter. External Sensor Settings ------------------------ A full list of settings for external sensors is given in the table below. .. csv-table:: :file: ../csv/settings_external.csv :widths: 15 10 40 10 10 15 :header-rows: 1 .. |deg| unicode:: U+000B0 .. |ohm| unicode:: U+003A9