Wireless 4-20mA Output with USB Highlights
Control Industrial 4-20mA devices over a Long Range Wireless Mesh Network or over a USB Connection using the ASM1-4 endNode. The ASM1-4 offers four 4-20mA Output channels, 14-Bit Resolution per Channel, and a I2C Expansion Port offering Limitless Expansion Capabilities. With a 2-Mile Wireless Range and 128-Bit AES Security, endNode is the most powerful industrial IoT wireless 4-20mA output control solution available. endNodes help you modernize factory, industrial, and business control applications without the excessive price tag charged by most companies.
- 4-Channel 14-Bit Wireless 4-20mA Output endNode with USB
- Actual Output Range of 0-25mA with Near 14-Bit Resolution
- Long Range Wireless Communications with 128-Bit AES Encryption
- USB Communications Interface with Virtual COM Port Access
- Dual 9-32V DC Power Interface with Power and RGB Status LEDs
- Long Range Wireless Communications up to 2 Miles at 900MHz
- 900MHz, 868MHz and 2.4GHz Wireless Options with Antenna
- Pluggable Connectors for Wireless 4-20mA Output and Power
- Based on NCD endNode Wireless I²C Architecture
- I2C Expansion Port for Limitless Expansion Capabilities
- Expandable to Control NCD I2C Devices and Sensors
- ProXR Enterprise Command Set for I2C Relay Expansions
4-20mA Output 4-Channel endNode Introduction
The ASM1-4 is a 4-Channel 4-20mA Output endNode device, capable of controlling 4-20mA devices using a USB and Long Range Wireless Communications. endNodes were designed to communicate to computers, servers, gateways, PLCs, and embedded computers by offering a simple serial communications protocol. NCD endNodes were designed to retrofit traditional 4-20mA devices into modern IoT installations. endNodes have many unique benefits over competing devices as they offer unlimited hardware expansion options. At the heart of NCD endNode devices is our custom communications endNode processor. This processor essentially converts serial communications to I2C communications. Since nearly every sensor in the world communicates using the I2C bus, NCD endNode devices may be expanded to communicate with all of today’s most modern sensors and controllers while offering forward compatibility with sensors and controllers, not yet developed, and without the need for firmware upgrades.
Wireless 4-20mA Output
endNodes support long-range wireless communications, making them ideal for wireless 4-20mA output applications. We have implemented 900MHz wireless communications in our endNode devices, as we know these devices will be installed in factory floors. We have a strong preference for using 900MHz in industrial applications, as we have used this frequency in automotive manufacturing plants in excess of 1 mile in length without problems. We have also used 900MHz in areas that required heavy shielding, which is achievable with proper planning. Most importantly, wireless 4-10mA control data should be encrypted, which is standard feature with all endNode devices. NCD places a strong emphasis on security, and 4-20mA output devices are fully secure using 128-bit AES encryption, right out of the box using our default encryption keys. Users may change the encryption key as needed for specific installations.
endNode devices respond to multiple computers, servers, and PLCs, giving all remote devices access to a single Wireless 4-20mA output endNode. endNode devices wait for a command from a remote device and respond to that particular remote device. This “speak when spoken to” strategy makes it possible for many computers to ask the status of inputs simultaneously.
NCD endNode devices are also capable of wireless grouping. This allows large numbers of endNode devices to be installed on each floor of a high-rise building without interference between floors. Ideally, every floor should have it’s own modem or gateway, allowing NCD endNode devices to scale to massive installations.
USB 4-20mA Output
All endNode devices are equipped with USB port. The USB Port may be used to read 4-20mA outputs, but also provides a mechanism of device configuration. NCD follows a strict set of rules regarding device configuration for the purposes of security. endNode devices cannot be reconfigured remotely as part of our security strategy. Vital configuration changes require the USB port. So the USB port on endNode devices may be used for daily use or it may be used for device configuration. endNode devices accept communications from both the Wireless and USB ports simultaneously, so it’s possible to connect a endNode device to a computer while remote computers are also capable of accessing the same endNode device.
Controlling 4-20mA Output Channels
endNode devices were designed to be easy to use. Simply send a few bytes of data to the ASM1-4 and the endNode will control 4-Channels of 4-20mA outputs or report the 4-20mA current output value of 1, 2, 3, or all 4 channels at one time. It could not be easier. Every endNode controller is equipped with a USB port. We suggest plugging this port into a modern Window 10 computer when working with endNode controllers for the first time. Our windows software will demonstrate the functionality of endNode devices in about 5 minutes.
Below you will see a wiring diagram for how to connect endNode devices to your 4-20mA devices:
USB Communications
Step 1: Download and Install Alpha Station
If you have not done so, now is a good time to download and install Alpha Station on your Windows 10 computer. Alpha Station is required for device configuration and serves as reference software for testing all endNode devices. We do not recommend the purchase or use of endNode devices without Alpha Station installed on at least one computer. Alpha Station is not required for daily use, but it is an essential tool for device configuration and learning. You may download and install Alpha Station from https://ncd.io/alpha (link opens in a new window).
Step 2: Plug in the USB Port
Before we get into wireless, we advise starting with USB communications. Wireless will be covered later, but for now, our objective is to make sure the necessary drives are working and make sure communications is possible. We also would like for you to see the device in operation as quickly as possible. The endNode device should mount as a virtual COM port on your computer. In the screenshot below, make sure your communication settings look similar to what is shown. Please note that COM58 will probably not be the same on your computer.
When running Alpha Station, simply select the COM port of the endNode device. If all goes well, you should see a window that looks similar to the one shown below, so go ahead on click on “PR53-33 4-Channel 0-20mA/0-40mA Transmitter” as highlighted in Blue.
Step 3: Read 4-20mA Output Channels
The 4-20mA Output Control Panel will display the current readings on all 4 outputs.
Wireless Communications
Before we get started talking to a endNode using wireless communications, you are going to need a wireless modem to convert data from your computer to wireless data for the endNode. We currently offer 3 modem options, make sure you have one of the 3 modems shown below:
| |||
|
Step 1: Wireless Serial Number
Now that you have the ASM1-4 working over USB, let’s talk to the device using wireless communications. To get started, look carefully at the enclosure of the ASM1-4 endNode. You will see a sticker with the serial number printed on the back side. This serial number is required for wireless communications. This serial number is how we will identify each ASM1-4 endNode controller. No two endNode devices will ever have the same serial number, so keep track of these serial numbers so you have wireless access to your endNode ecosystem. We suggest keeping track of the serial number, the installation location, the network ID, and the encryption key (if you choose not to use the default key).
Step 2: Connect a Wireless Modem
Connect a wireless modem to your computer. You may choose USB, Ethernet, WiFi, Bluetooth (Virtual COM Port), but for the purposes of this tutorial, we will be using a USB Wireless Modem to access a endNode device.
Step 3: Run Alpha Station
Alpha Station is capable of communicating to endNode devices over wireless communications as well. It’s important to setup Alpha Station to use the Serial Number as mentioned in step 4. To do this, make sure “Communicate to a Remote Wireless endNode” is checked and the “Destination Address of Remote Node” matches the serial number printed on your endNode device.
Step 4: Read Wireless 4-20mA Outputs
You should now be able to read all four 4-20mA input channels over wireless communications. If you experienced any communication problems, try exiting and running Alpha Station again.
ASM1-4 Command Set
Reading Wireless 4-20mA Output Channels
Hopefully you followed both tutorials shown above. If so, take a look at the two screen shots below:
USB 4-20mA Communications Command Structure
Wireless 4-20mA Communications Command Structure
You will notice the USB commands are slightly different than the wireless commands. USB does not require a serial number for communications, so the protocol is slightly different. These windows will help you understand the commands required for communicating to endNode devices using your own software. Simply send these commands to the endNode device (Hex Bytes) and you will be controlling wireless 4-20mA outputs in no time.
Every byte used for communicating to NCD endNodes has a meaning and a purpose. This section will help explain the specific commands supported by the ASM1-4 endNode. Please note that many more commands are supported by the ASM1-4, these common commands are explained in other documents. This guide will explain the commands that are unique to the ASM1-4 for the purposes of controlling 4-20mA output channels.
The API Calculator is Required
Before we dive into the command set, the protocol for communications is very carefully controlled to reduce the possibility of communication errors. The overall format for communicating to endNodes is covered in the API Calculator, this is a REQUIRED tool for understanding the overall byte structure of all endNode commands. We will not cover this protocol in this document, as this is covered in great detail on the API Calculator page. We will make many references to this calculator in the command set below, the commands will not work unless properly encoded, so be SURE to use the API Calculator to encode the commands shown below.
4-20mA Output Read and Write Commands
The ASM1-4 is a “speak when spoken to” device supporting a single command for controlling and reading 4-20mA output channels using both required and optional parameters. Be sure to use the API Calculator, as the commands shown below must be encoded for proper operation.
4-20mA Output Read Command
Reading the 4-20mA Output Channel Status is very easy. Simply specify the command and channels you wish to read:
Function: Read 4-20 Output Channel Values Format: 0x35, 0x21, Start_Channel, Stop_Channel Parameter: Start_Channel Valid Range 1 to 4 Parameter: Stop_Channel Valid Range 1 to 4 Send: 0x35, 0x21, 0x01, 0x04 Receive: 0x19, 0x61, 0x16, 0x9E, 0x18, 0xFC, 0x1B, 0x17 (Example) Channel 1: 0x19, 0x61 (MSB, LSB) Channel 2: 0x16, 0x9E (MSB, LSB) Channel 3: 0x18, 0xFC (MSB, LSB) Channel 4: 0x1B, 0x17 (MSB, LSB) Note: See the API Calculator to Encode/Decode these Commands
Channel 1 may be read by using the following command:
Send: 0x35, 0x21, 0x01, 0x01 Receive: 0x19, 0x61
Channels 2 and 3 may be read by using the following command:
Send: 0x35, 0x21, 0x02, 0x03 Receive: 0x16, 0x9E, 0x18, 0xFC
4-20mA Output Write Command
The 4-20mA Output Write Command should be used to control the current on each channel. The ASM1-4 goes into write command when Channel Values are included as part of the command. While this controller accepts a 16-Bit value, the internal driver is limited to accepting decimal 4-20mA current values of 0 to 15,250. A value of 0 will yield 0mA current draw on the selected output channels while a value of 15,250 will yield a 25mA current draw on the selected output channels.
The write command is unique in that only the Channel 1 parameter is required. The Channel 1 Parameter is “spread” to all selected outputs, which allows all channels to update to the exact same value using only a single Channel 1 value. To set all 4 channels to unique output values, all four Channel values may be included.
Function: Write 4-20 Output Channel Values
Format: 0x35, 0x21, Start_Channel, Stop_Channel, Channel_1_MSB, Channel_1_LSB, Channel_2_MSB, Channel_2_LSB, Channel_3_MSB, Channel_3_LSB, Channel_4_MSB, Channel_4_LSB
Parameter: Start_Channel Valid Range 1 to 4
Parameter: Stop_Channel Valid Range 1 to 4
Parameter: Channel_1_MSB, Channel_1_LSB (Required)
Parameter: Channel_2_MSB, Channel_2_LSB (Optional)
Parameter: Channel_3_MSB, Channel_3_LSB (Optional)
Parameter: Channel_4_MSB, Channel_4_LSB (Optional)
Below, you will find a few examples of different ways channel values may be written to each of the output channels.
Set Channel 1 to 25mA:
Send: 0x35, 0x21, 0x01, 0x01, 0x3B, 0x92
Receive: 0x3B, 0x92
Note: See the API Calculator to Encode/Decode these Commands
Set Channels 1-4 to 25mA:
Send: 0x35, 0x21, 0x01, 0x04, 0x3B, 0x92
Receive: 0x3B, 0x92, 0x3B, 0x92, 0x3B, 0x92, 0x3B, 0x92
Note: See the API Calculator to Encode/Decode these Commands
Set Channels 1-2 to 25mA and 3 and 4 to 0mA, the following shortcut may be applied. Note that only 3 words are used to set 4 channels. Channels 1, 2, and 3 are loaded as usual. Since Channel 4 was not specified, the last channel value is spread to Channel 4.
Send: 0x35, 0x21, 0x01, 0x04, 0x3B, 0x92, 0x3B, 0x92, 0x00, 0x00
Receive: 0x3B, 0x92, 0x3B, 0x92, 0x00, 0x00, 0x00, 0x00
Note: See the API Calculator to Encode/Decode these Commands
Set Channels all four channels to a unique value:
Send: 0x35, 0x21, 0x01, 0x04, 0x16, 0x62, 0x16, 0x9D, 0x18, 0xFB, 0x1B, 0x16
Receive: 0x16, 0x62, 0x16, 0x9D, 0x18, 0xFB, 0x1B, 0x16
Note: See the API Calculator to Encode/Decode these Commands
When the ASM1-4 4-20mA Output Controller Powers Up, the outputs will default to one of 3 states as indicated below using FRAM memory read/write commands.
Power Up Outputs to the Last Known State:
Send: FE 35 1D D0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
Receive: 55
Note: See the API Calculator to Encode/Decode these Commands
Turn All Outputs Off on Power-Up:
Send: FE 35 1D D0 01 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
Receive: 55
Note: See the API Calculator to Encode/Decode these Commands
Preset to a Specific State on Power-Up:
Send: FE 35 1D D0 02 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
Receive: 55
Note: See the API Calculator to Encode/Decode these Commands
Store Current State as the Power-Up Default State
Please Note the Values Shown Below Store Actual Default Power-Up Values for all 4 Channels.
Send: FE 35 1D C0 14 61 16 9C 18 FA 1B 16 14 61 16 9C 18 FA 1B 16
Receive: 55
Note: See the API Calculator to Encode/Decode these Commands
To Convert Decimal Values to mA Values, Use the Following Formula:
mA Value = 16-Bit Decimal Value * 0.00164689
Note: Analog Values will Fluctuate Slightly, this is Normal Operation