Ethernet Configuration
For Cyclone LC, Cyclone FX, Cyclone MultiChannel
This section describes the mechanism used by the Cyclone device to transact data over an Ethernet network. It primarily focuses on the User Datagram Protocol (UDP), which is a popular method for sending data over a network when the speed of a data transaction is of more concern than the guarantee of its delivery. The Cyclone takes advantage of the UDP protocol's penchant for speed, and adds an extra layer of logic to help ensure UDP packet delivery, offering a best-of-both-worlds solution.
Note
By default the Cyclone is configured to dynamically fetch an IP address from the local network via DHCP. Static assignments can be made in the Cyclone Control GUI via USB.
Network Architectures
Before delving into the details of Ethernet message passing, it is prudent to briefly describe the different network architectures in use today, and how they pertain to the operation of the Cyclone. Computers are, of course, connected to one another through intermediary devices in order to form networks. There are several classes of these intermediary devices, but they generally fall into one of the following three groups:
Hubs
At the most basic level, computers are connected to one another through a Hub. A Hub is a device with several ports that are used to connect multiple computers together. It is a repeater device – a Hub simply copies the data incoming on one port as data outgoing on the other ports. In this manner, if there are four computers connected through a Hub, and if the first computer is sending data to the second computer, then the third and the fourth computers will also receive an identical copy of that data. Hubs are usually used to set up a small Local Area Network (LAN), which may have on the order of 10 to 20 computers.
Switches
The aforementioned type of process, where the data is simply replicated onto every available port, quickly becomes inefficient for larger networks. For this reason, a larger LAN uses Switches instead of Hubs. A Switch is essentially a smart Hub, in that it limits the input and output of data to the two transacting computers.
Routers
Larger networks, such as Wide Area Networks (WANs), or the Internet for that matter, use progressively more sophisticated devices to transact data. At the core of these devices is the Router, which functions as a switch between networks.
The Cyclone operates regardless of the connection mechanism, with one very important caveat: it needs to be set up with the appropriate network parameters for the underlying network architecture.
Network Parameters
A typical network becomes operational not after the physical connections have been established, but after network parameters in the form of IP (Internet Protocol) numbers have been assigned to the individual computers. An IP number is a unique string that consists of four numbers ranging between 0 and 255, separated by dots, e.g., 192.168.1.2. Every computer that is on a network needs to have a unique IP number. The computer uses this IP number to identify itself on the network, and also to address the recipient of its data.
Assignment of this IP number is sufficient information to transact data on a simple network connected by a hub. On a more complex network, however, routing information becomes important. The routing information consists of two more IP numbers. The first of these is called the Subnet Mask, and is used to determine whether or not the destination address resides on the same subnet (i.e., doesn't need to be forwarded to another network). The other IP number is the Gateway Address, which is the address of the computer that handles forwarding and receiving of packets to and from other networks.
Before first use, the Cyclone needs to be programmed with a unique IP number, the Subnet Mask IP number, and also the default Gateway's IP number. This can be done via the USB or the serial port, and is described in greater detail in the "Configuring the Cyclone" section of this manual.
Internet Protocol
Once the network has been established and the required IP settings have been assigned, the Cyclone communicates over Ethernet using UDP/IP. UDP/IP is well suited to the Cyclone's real-time operating requirements because it allows fast communication with minimal protocol overhead.
Because UDP does not inherently guarantee packet delivery, the Cyclone firmware implements additional mechanisms to help ensure reliable data transfer while retaining the efficiency of UDP communication.
Connecting The Cyclone Device
There are two methods for establishing a connection between a Cyclone and a PC with an Ethernet cable. The most basic method is to connect the Cyclone directly to a PC, via a crossover Ethernet cable. However, the more common method is to place the Cyclone and the PC on the same network through a Hub.
Connecting the Cyclone to the PC over a network
The Cyclone was intended for use on a network of multiple computers (and other Cyclones). There are many possible network configurations, and to describe them all is beyond the scope of this document. However, most configurations are a modification of a basic theme, which is that of connecting one or more PCs through a Hub to one or more Cyclones.
In order to connect these devices to the Hub, you will need to use the provided straight-through Ethernet cable. The straight-through cable, which is the standard Ethernet cable, is used to connect devices of different types together, such as a PC to a Hub, or a Hub to a Cyclone.
At this point, it once again becomes necessary to program the Cyclone with valid IP numbers, the process for which is described in greater detail in the following section. However, it is important for the Cyclone and the PCs to have matching Subnet and Gateway IP numbers, and for each to have a unique IP number on the network. An example configuration is as follows:
| Device | IP Number | Gateway IP | Subnet Mask |
|---|---|---|---|
| Device | IP Number | Gateway IP | Subnet Mask |
| PC1 | 192.168.100.1 | 192.168.100.3 | 255.255.255.0 |
| PC2 | 192.168.100.2 | 192.168.100.3 | 255.255.255.0 |
| CYCLONE | 192.168.100.4 | 192.168.100.3 | 255.255.255.0 |
| Gateway | 192.168.100.3 | 192.168.100.3 | 255.255.255.0 |
It is important to briefly touch upon the underlying network architecture, which can be a 10Mb (Megabit), 100Mb, 10/100Mb, half-duplex, or a full-duplex connection. The details of the underlying network architecture are beyond the scope of this document, but it is sufficient to note that most modern network cards, as well as the Cyclone device, have the capability to configure themselves for the underlying network through the Auto-negotiation mechanism. Auto-negotiation is performed as soon as a network cable is connected to the device, and it sets the operating parameters of the device to match those of the network.
Connecting Cyclone-to-PC via an Ethernet cable
In order to connect the Cyclone to a PC directly via an Ethernet cable, you need to use what is known as a crossover cable. A crossover cable, which is not provided by PEmicro, is normally used to connect two similar devices such as a PC to a PC, or a Hub to a Hub. It is a cable that has its receive and transmit wires crossed over so that the similar devices can effectively communicate with one another.
With this configuration, it is still important to assign IP numbers to both the PC and the Cyclone device. Although at first glance it may not seem necessary to assign a Gateway address in this configuration, the Cyclone was designed to operate on a network of more than two computers, and therefore it needs to be programmed with a Gateway address.
Assuming the desktop's IP number is 192.168.100.1, this is an example of the three IP numbers that would need to be programmed into the Cyclone:
| Device | IP Number | Gateway IP | Subnet Mask |
|---|---|---|---|
| Device | IP Number | Gateway IP | Subnet Mask |
| PC | 192.168.100.1 | none | 255.255.255.0 |
| CYCLONE | 192.168.100.2 | 192.168.100.1 | 255.255.255.0 |
For more information on programming these IP numbers into the Cyclone device, please see the following section.
Cyclone IP Setup Via LCD Menu
When the user is connecting the Cyclone via Ethernet, before the connection is established between the Cyclone and the network the menu's Home Screen will display the Cyclone's IP address as 0.0.0.0.
Once a connection has been established, the menu's Home Screen displays the Cyclone's IP address and connection setting (Static or Dynamic).
The Ethernet cable can either be attached at the start of Cyclone startup or connected after setup is complete. The connection with the network will be established when the cable is connected. If the Ethernet cable is disconnected after setup is complete, the user should be able to simply reconnect the cable to reestablish networking. However, depending on the setup of the DHCP server, if the Ethernet cable is left unplugged for a considerable time the IP address may expire and connection will have to be set up once again. This can be accomplished by restarting the Cyclone.
Configure Network Settings
To configure network settings for the Cyclone, navigate to the following Menu location:
Main Menu / Configure Cyclone Settings / Configure Network Settings
The following options will be available under Configure Network Settings:
- Show Current IP Settings
- Edit Static IP Settings
- Enable/Disable Dynamic IP
- Edit Cyclone Name
Show Current IP Settings
Show Current IP Settings displays the current IP settings, including:
- Current IP Mode
- IP Number
- Mask
- Gateway
- MAC Address
If you are in Static IP mode, these settings (excluding the MAC address) may be changed by tapping on them. In this case a tap will take you to the Edit menus. If you are in Dynamic IP mode, tapping will show a message that the Cyclone settings cannot be changed.
Dynamic vs. Static
There are two schemes for assigning IP addresses. One is the Static IP addressing mode. This involves the user manually setting the IP address for every device on the network. In this case, it falls to the user to ensure the IPs assigned do not conflict and are within the boundaries of the network. The other is the Dynamic Host Configuration Protocol (DHCP). This involves setting up a separate server to manage the IP addresses. The server is given a list of valid IP addresses for the network. Using a predetermined set of rules, each new device that wishes to connect to the network is given an IP address by the server. This takes the task of managing the validity and uniqueness of IP addresses out of the user's hands and relegates it to the server. Cyclone programmers are capable of using either Static IP addressing or DHCP.
Note
The current IP settings may also be viewed/edited by navigating to: Main Menu / Status / Show Current IP Settings
Edit Static IP Settings
This allows editing of IP, Mask, and Gateway in Static IP mode. In the edit dialogs, the user must enter a valid IP address to continue:
Format
xxx.xxx.xxx.xxx
Where:
0 <= xxx <= 255
Enable/Disable Dynamic IP
Opens a dialog to toggle the IP settings between Static and Dynamic. Once an option is selected a message is displayed indicating that the Cyclone must be reset for this option to take effect. The reset button on the front of the Cyclone may be used.
Configuring Cyclone Network Settings using the Cyclone Control GUI
Before the Cyclone device transacts data on an Ethernet network, it will need to be configured with the relevant network parameters. This configuration can be done in the "Network Settings" tab of the Cyclone Control GUI.