Page 1
User Manual Nexto Series CPU NX3008 MU214620 Rev. E May 5, 2023...
Page 2
General Supply Conditions No part of this document may be copied or reproduced in any form without the prior written consent of Altus Sistemas de Automação S.A. who reserves the right to carry out alterations without prior advice. According to current legislation in Brazil, the Consumer Defense Code, we are giving the following information to clients who use our products, regarding personal safety and premises.
With a powerful 64-bit, 1 GHz ARM processor, the CPU NX3008 is ideal for controlling small to large industrial machines and processes. In addition to advanced diagnostics and the diversity of consolidated communication protocols, it has cyberse- curity resources, firewall, remote operation and the ability to customize the user’s application with the installation of external...
1. INTRODUCTION Figure 2: Nexto Series – Overview 1.2. Innovative Features Nexto Series brings to the user many innovations regarding utilization, supervision and system maintenance. These features were developed focusing a new concept in industrial automation. VPN: Nexto products have an embedded VPN service, which creates a private tunnel that connects directly to the CPU.
In order to obtain additional information regarding the Nexto Series, other documents (manuals and technical features) besides this one, may be accessed. These documents are available in its last version on the site https://www.altus.com.br/en/. Each product has a document designed by Technical Features (CE), where the product features are described. Furthermore, the product may have Utilization Manuals (the manuals codes are listed in the CE).
Page 14
Portuguese MU214603 Nexto Series HART Manual English MU214610 Advanced Control Functions User Manual English NAP151 Utilização do Tunneller OPC Portuguese NAP165 Comunicação OPC UA com Controladores ALTUS Portuguese NAP165_ing OPC UA Communication with ALTUS Controllers English Table 1: Related documents...
Altus Technical Support is contacted. 1.5. Technical Support For Altus Technical Support contact in São Leopoldo, RS, call +55 51 3589-9500. For further information regarding the Altus Technical Support existent on other places, see https://www.altus.com.br/en/...
2. TECHNICAL DESCRIPTION 2. Technical Description This chapter presents all technical features from Nexto Series CPU NX3008. 2.1. Panels and Connections The following figure shows the CPU front panel. Figure 3: NX3008 As it can be seen on the figure, on the front panel upper part is placed the graphic display used to show the whole system status and diagnostics, including the specific diagnostics of each module.
Page 17
2. TECHNICAL DESCRIPTION On the frontal panel the connection interfaces of Nexto Series CPUs are available. The table below presents a brief description of these interfaces. Interfaces Description RJ45-type connector for standard 10/100/1000Base-TX communication. Allows point-to-point or network com- NET 1..NET 3 munication.
2. TECHNICAL DESCRIPTION 2.2. Product Features 2.2.1. General Features NX3008 Backplane rack occupation 2 sequential slots Power supply integrated Ethernet TCP/IP local interface Serial Interface CAN Interface USB Port Host Memory Card Interface Real time clock (RTC) Resolution of 1 ms and maximum variance of 2 s per day.
Page 19
2. TECHNICAL DESCRIPTION NX3008 One Touch Diag (OTD) Electronic Tag on Display (ETD) Standards and Certifications IEC 61131-2 IEC 61131-3 In Progress DNV Type Approval – DNV-CG-0339 (TAA000013D) CE – 2014/35/EU (LVD) and 2014/30/EU (EMC) RoHS – 2011/65/EU UL/cUL Listed - UL 61010-1 (file E473496) In Progress EAC –...
User files memory: This memory area offers another way for the user to store files such as doc, pdf, images, and other files. This function allows data recording as in a memory card. For further information check User Files Memory section. 2.2.3. Protocols NX3008 Interface Communication with programming software NET 1 / NET 2 / NET 3 / USB Open Protocol...
2. TECHNICAL DESCRIPTION NX3008 Interface IEC 60870-5-104 Server In Progress EtherNet/IP Scanner NET 1 / NET 2 / NET 3 EtherNet/IP Adapter NET 1 / NET 2 / NET 3 MQTT Client NET 1 / NET 2 / NET 3 / USB...
2. TECHNICAL DESCRIPTION 2.2.5. CAN Interface Connector Terminal block, H and L with shield Physical interface CAN bus Supported standards CAN 2.0A 2.0B (11-bit and 29-bit identifiers) Max. number of nodes Termination Yes (Configurable) Cross section 0.5 mm Baud rate 10, 20, 50, 100, 125, 250, 500, 1000 kbit/s Isolation Logic to CAN...
2. TECHNICAL DESCRIPTION 2.2.7. Ethernet Interfaces 2.2.7.1. NET 1 NET 1 Connector Shielded female RJ45 Auto crossover Maximum cable length 100 m Cable type UTP or ScTP, category 5 Baud rate 10/100/1000 Mbps Physical layer 10BASE-Te/100BASE-TX/1000BASE-T Data link layer LLC (Logical Link Control) Network layer IP (Internet Protocol) Transport layer...
2. TECHNICAL DESCRIPTION Notes: Maximum Capacity: The memory card capacity must be less than or equal to this limit for correct operation on Nexto CPU, otherwise the Nexto CPU may not detect the memory card or even present problems during data transfer. Minimum Capacity: The memory card capacity must be greater than or equal to this limit for correct operation on Nexto CPU, otherwise the Nexto CPU may not detect the memory card or even present problems during data transfer.
MasterTool IEC XE checks the firmware version installed on the controller and, if it does not meets the minimum requirement, will show a message requesting to update. The latest firmware version can be downloaded from Altus website, and it is fully compatible with previous applications.
The interval time of the main task of the CPU can be set from 5 to 750 ms. 2.5. Physical Dimensions Dimensions in mm. Figure 4: Dimensions in mm. 2.6. Purchase Data 2.6.1. Included Itens The product package contains the following items: NX3008 module 6-terminal connector with fixing 2x3 connector with fixing...
The following code should be used to purchase the product: Code Description CPU, 3 Ethernet port, 1 USB, 1 serial, 1 CAN, memory card interface, NX3008 remote rack expansion support, power supply integrated and user web pages support Table 20: Product Code 2.7.
DANGER When executing any installation in an electric panel, certify that the main energy supply is OFF. The figure below shows the CPU NX3008 electric diagram installed in a Nexto Series backplane rack. The connectors placement depicted are merely illustrative.
Page 31
3. INSTALLATION Figure 5: NX3008 CPU Electric Diagram Diagram Notes: MicroSD card interface. RS-485 interface. CAN interface. USB 2.0 interface. Ethernet 10BASE-Te/100BASE-TX/1000BASE-T standard interface. The power supply is connected to terminals V1 and N1. Use 0.5 mm cable. The CPU is grounded through the Nexto Series backplane racks. It is recommended to reinforce the ground connecting to the PE terminal.
3. INSTALLATION 3.3. Ethernet Network Connection The NET 1, NET 2, and NET 3 isolated communication interface allows the connection with an Ethernet network, however, the NET 1 interface is the most suitable to be used for communication with MasterTool IEC XE. The Ethernet network connection uses twisted pair cables (10Base-Te/100Base-TX/1000Base-T) and the speed detection is automatically made by the Nexto CPU.
3. INSTALLATION 3.3.2. Gratuitous ARP The NETx Ethernet interface promptly sends ARP packets type in broadcast informing its IP and MAC address for all devices connected to the network. These packets are sent during a new application download by the MasterTool IEC XE software and in the CPU startup when the application goes into Run mode.
3. INSTALLATION Signal Description TxRx A + Bidirectional, positive TxRx A - Bidirectional, negative TxRx B + Bidirectional, positive TxRx C + Bidirectional, positive TxRx C - Bidirectional, negative TxRx B - Bidirectional, negative TxRx D + Bidirectional, positive TxRx D - Bidirectional, negative Table 26: RJ45 Female Connector Pinout - 1GBASE-T The interface can be connected in a communication network through a hub or switch, or straight from the communication...
Page 35
3. INSTALLATION Figure 7: Inserting the Memory Card When the card is correctly installed, a symbol will appear on the CPU graphic display. For card secure removing the MS key must be pressed then there is a little delay and the card symbol will disappear from the graphic display. The card is now ready to be taken off.
To execute the MasterTool IEC XE development software installation, it is necessary to have the distribution CD-ROM or download the installation file from the site https://www.altus.com.br/en/. For further information about the step by step to installation, consult MasterTool IEC XE User Manual MT8500 – MU299609.
4.1. Memory Organization and Access Different from other devices of the Nexto Series (which are based on a big-endian CPU), the CPU NX3008 is based on an ARM CPU, which uses the traditional little-endian memory organization (the same found on x86 and Intel processors). On this type of memory organization, the least significant byte is stored first and will always be the smallest address (e.g.
4. INITIAL PROGRAMMING The table above shows the organization and memory access, illustrating the significance of bytes and the disposition of other variable types, including overlapping. 4.2. Project Profiles A project profile in the MasterTool IEC XE consists in an application template together with a group of verification rules which guides the development of the application, reducing the programming complexity.
4. INITIAL PROGRAMMING 4.2.2. Basic In the Basic Project Profile, the application has one user task of the Continuous type called MainTask, which executes the program in a continuous loop (with no definition of cycle time) with priority fixed in 13 (thirteen). This task is responsible for the execution of a single programming unit POU called MainPrg.
4. INITIAL PROGRAMMING In this project profile, the application may also include the user task FreeTask of the Freewheeling type with priority 31, responsible for the FreePrg program execution. As this task is low priority it can be interrupted by all others so it can execute codes that might be blocked.
4. INITIAL PROGRAMMING This profile may further include an interruption task, called TimeInterruptTask00, with a higher priority than the MainTask, and hence, can interrupt its execution at any time. Tasks Priority Type Interval Event MainTask MainPrg Cyclic 20 ms TimeInterruptTask00 TimeInterruptPrg00 Cyclic 4 ms...
COM(n) - Master or Slave instances Cyclic TOTAL Table 36: Maximum Number of Tasks IEC NX3008 Notes: Profile Legend: The S, B, N, E, C and M letters correspond to the Single, Basic, Normal, Expert, Custom and Machine profiles respectively.
4. INITIAL PROGRAMMING Figure 10: Configuring the CPU Communication Port The configuration defined on this tab will be applied to the device only when sending the application to the device (down- load), which is described further on sections Finding the Device and Login.
Page 45
4. INITIAL PROGRAMMING Figure 11: Adding an Instance After that, the available protocols for the user will appear on the screen. Define the protocol configuration mode selecting MODBUS Symbol RTU Slave, for symbolic mapping setting or MODBUS RTU Slave, for direct addressing (%Q) and click on Add Device, as depicted on figure below.
4. INITIAL PROGRAMMING Figure 12: Selecting the Protocol 4.5.2. MODBUS Ethernet The first step to configure the MODBUS Ethernet (Client in this example), is to include the instance in the desired NET (in this case, NET 1, as the CPU NX3010 has only one Ethernet interface). Click on the NET with the mouse right button and select Add Device..., as shown on figure below.
Page 47
4. INITIAL PROGRAMMING Figure 13: Adding the Instance After that, the available protocols for the user will appear on the screen. In this menu is defined the configuration mode of the protocol. Selecting the option MODBUS Symbol Client, for Symbolic Mapping setting or MODBUS Client, for Direct Addressing (%Q).
4. INITIAL PROGRAMMING Figure 14: Selecting the Protocol 4.6. Finding the Device To establish the communication between the CPU and MasterTool IEC XE, first it’s necessary to find and select the desired device. The configuration of this communication is located on the object Device on device tree, on Communication Settings tab.
Page 49
4. INITIAL PROGRAMMING Figure 16: Selecting the CPU Additionally, the user can change the default name of the device that is displayed. For that, you must click the right mouse button on the desired device and select Change Device Name. After a name change, the device will not return to the default name under any circumstances.
4. INITIAL PROGRAMMING 4.7. Login After compiling the application and fixing errors that might be found, it’s time to send the project to the CPU. To do this, simply click on Login command located on Online menu of MasterTool IEC XE as shown on the following figure. This operation may take a few seconds, depending on the size of the generated file.
Page 51
4. INITIAL PROGRAMMING Figure 20: No application on the device If there is already an application on the CPU, depending on the differences between the projects, the following options will be presented: Login with online change: execute the login and send the new project without stopping the current CPU application (see Run Mode item), updating the changes when a new cycle is executed.
4. INITIAL PROGRAMMING Figure 23: Source code download Transferring the source code is fundamental to ensure the future restoration of the project and to perform modifications on the application that is loaded into the device. 4.8. Run Mode Right after the project has been sent to the CPU, the application will not be immediately executed (except for the case of an online change).
4. INITIAL PROGRAMMING Figure 25: Program running If the CPU already have a boot application internally stored, it goes automatically to Run Mode when the device is powered on, with no need for an online command through MasterTool IEC XE. 4.9.
4. INITIAL PROGRAMMING Moreover, the forced writing command (F7) writes a value into a variable without allowing this value to be changed until the forced variables are released. It is important to highlight that, when used the MODBUS RTU Slave and the MODBUS Ethernet Server, and the Read-only option from the configured relations is not selected, the forced writing command (F7) must be done over the available variables in the monitoring window as the writing command (CTRL + F7) leaves the variables to be overwritten when new readings are done.
Page 55
4. INITIAL PROGRAMMING Figure 28: Project Upload Option Next, just select the desired CPU and click OK, as shown on figure below. Figure 29: Selecting the CPU To ensure that the project loaded in the CPU is identical and can be accessed in other workstations, consult the chapter Projects Download/Login Method without Project Differences at the MasterTool IEC XE User Manual MT8500 - MU299609.
4. INITIAL PROGRAMMING ATTENTION The upload recovers the last project stored in the controller as described in the previous paragraphs. In case only the application was downloaded, without transferring its source code, it will not be possible to be recovered by the Upload procedure. 4.13.
4. INITIAL PROGRAMMING 4.14. Programs (POUs) and Global Variable Lists (GVLs) The project created by MasterTool IEC XE contains a set of program modules (POUs) and global variables lists that aims to facilitate the programming and utilization of the controller. The following sections describe the main elements that are part of this standard project structure.
4. INITIAL PROGRAMMING ATTENTION In System_Diagnostics GVL, are also declared the diagnostic variables of the direct repre- sentation MODBUS Client/Master Requests. Some devices, like the MODBUS Symbol communication driver, doesn’t have its diagnostics allocated at %Q variables with the AT directive. The same occurs with newest communication drivers, as Server IEC 60870-5-104. The following picture shows an example of the presentation of this GVL when in Online mode.
4. INITIAL PROGRAMMING [Device Name]_DISABLE_[Requisition Number] : BOOL; Where: Device name: Name that shows on Tree View to the MODBUS device. Requisition Number: Requisition number that was declared on the MODBUS device requisition table following the sequence from up to down, starting on 0001. Example: Device.Application.Disables VAR_GLOBAL...
4. INITIAL PROGRAMMING VAR_GLOBAL QUALITY_NX1001: ARRAY[0..15] LibDataTypes.QUALITY; QUALITY_NX2020: ARRAY[0..15] LibDataTypes.QUALITY; QUALITY_NX6000: ARRAY[0..7] LibDataTypes.QUALITY; QUALITY_NX6100: ARRAY[0..3] LibDataTypes.QUALITY; END_VAR Once the application is in RUN it is possible to watch the I/O modules quality variables values that were added to the project through IOQualities GVL. 4.14.7.
4. INITIAL PROGRAMMING 4.14.8. GVL Qualities The Qualities GVL contains the quality variable of the internal variables MODBUS Master/Client of symbolic mapping. It is not mandatory but is recommended to use these variables’ automatic generation, what is done clicking on button Generate Quality Variables in the device mapping tab.
4. INITIAL PROGRAMMING Figure 33: Qualities GVL in Online Mode 4.14.9. GVL ReqDiagnostics The ReqDiagnostics GVL contains the requisition diagnostics variables of symbolic mapping MODBUS Master/Client. It is not mandatory, but recommended the use of these variables’ automatic generation, what is done by clicking in the button Generate Diagnostics Variables in device requests tab.
Page 63
4. INITIAL PROGRAMMING ATTENTION The requisition diagnostics variables of direct mapping MODBUS Master/Client are de- clared at System_Diagnostics GVL. Example: Device.Application.ReqDiagnostics VAR_GLOBAL MODBUS_Device_REQDG_0001 : NXMODBUS_DIAGNOSTIC_STRUCTS. T_DIAG_MODBUS_RTU_MAPPING_1; MODBUS_Device_REQDG_0002 : NXMODBUS_DIAGNOSTIC_STRUCTS. T_DIAG_MODBUS_RTU_MAPPING_1; MODBUS_Device_REQDG_0003 : NXMODBUS_DIAGNOSTIC_STRUCTS. T_DIAG_MODBUS_RTU_MAPPING_1; MODBUS_Device_1_REQDG_0001 : NXMODBUS_DIAGNOSTIC_STRUCTS. T_DIAG_MODBUS_ETH_MAPPING_1; MODBUS_Device_1_REQDG_0002 : NXMODBUS_DIAGNOSTIC_STRUCTS. T_DIAG_MODBUS_ETH_MAPPING_1;...
5. CONFIGURATION 5. Configuration The Nexto Series CPUs are configured and programmed through the MasterTool IEC XE software. The configuration made defines the behavior and utilization modes for peripherals use and the CPUs special features. The programming represents the Application developed by the user. 5.1.
Page 65
5. CONFIGURATION Settings Description Standard Options - Disabled, only for declared Enabled, modules without startup con- - Disabled (with startup con- Hot Swap Module hot swap mode sistency (may sistency) vary accord- - Disabled, without startup ing to CPU consistency model) - Enabled, with startup con- sistency only for declared...
5. CONFIGURATION 5.1.1.1. Hot Swap Nexto Series CPUs have the possibility of I/O modules change in the bus with no need for system turn off and without information loss. This feature is known as hot swap. CAUTION Nexto Series CPUs do not guarantee the persistent and retentive variables retentivity in case the power supply or even the CPU is removed from the energized backplane rack.
5. CONFIGURATION 5.1.1.1.3. Hot Swap Disabled, without Startup Consistency Allows the system to start up even when some module is in an abnormal bus situation (as shown in Table 38). Abnormal situations are reported via diagnosis. Any modification to the bus will cause the CPU to enter Stop Mode, and the DG LED will start blinking 4x (as in Table 39).
Page 68
5. CONFIGURATION ATTENTION It is recommended the hot swapping diagnostics monitoring in the application control devel- oped by the user in order to guarantee the value returned by the module is validated before being used. The hot swap proceeding is described below: Unlock the module from the backplane rack, using the safety lock.
5. CONFIGURATION Enabled, with Startup Enabled, Disabled, Disabled, Enabled, Consistency without for declared without Condition with Startup Disabled for Declared Startup modules Startup Consistency Modules Consistency only Consistency Only Incompatible configura- Blinks 2x Blinks 2x Blinks 2x Blinks 4x Blinks 4x Blinks 4x tion Application:...
Page 70
5. CONFIGURATION In case the symbolic variables declared with the AT directive are not inside the respective retentive and/or persistent memory, errors during the code generation in MasterTool can be presented, informing that there are non-retentive or non- persistent variables defined in the retentive or persistent memory spaces. Regarding the symbolic variables which will be retentive or persistent, only the retentive variables may be local or global, as the persistent symbolic variables shall always be global.
5. CONFIGURATION 5.1.1.3. Project Parameters The CPU project parameters are related to the configuration for input/output refreshing at the task that they are used of the project tasks. Configuration Description Default Options Updates the input and output - Marked Enable I/O update per task in the tasks where they are Unmarked - Unmarked...
Page 72
5. CONFIGURATION It is also important to note that, to avoid the generation of several events in a very short space of time, that was limited the treatment of this type of event in every 10 ms, i.e., if two or more events occurs during 10 ms after the first event, the second and subsequent events are discarded.
5. CONFIGURATION Figure 37: ExternInterruptTask00 Configuration Screen 5.1.3. Time Synchronization For the time synchronization, Nexto Series CPUs use the SNTP (Simple Network Time Protocol) or the synchronism through IEC 60870-5-104. To use the time sync protocols, the user must set the following parameters at Synchronism tab, accessed through the CPU, in the device tree: Figure 38: SNTP Configuration...
5. CONFIGURATION Configuration Description Default Options Time zone of the user loca- Time Zone (hh:mm) tion. Hours and minutes can -3:00 12:59 to +13:59 be inserted. Disabled SNTP Service Enables the SNTP service. Disabled Enabled Time interval of the syn- Period for SNTP Synchro- chronization requests (sec- 1 to 255...
5. CONFIGURATION As the waiting time for the response of the SNTP server is 5 s, the user must pay attention to lower than 10 s values for the Synchronization Period. In case the primary server does not respond, the time for the synchronization will be the minimum of 5 s (waiting for the primary server response and the synchronization attempt with secondary server).
Page 76
5. CONFIGURATION Figure 39: Internal Points Configuration Screen Configuration Description Default Options Accept variables of type BOOL, WORD, DWORD, LWORD, INT, DINT, LINT, Symbol variable which stor- UINT, UDINT, ULINT, Variable Name age the internal point value REAL, LREAL or DBP. The variable can be simple, array or array’s element and can be part of a struct.
5. CONFIGURATION 5.1.4.1. Quality Conversions The internal point’s quality is a trust level information about the value stored on that point. The quality may inform, for example, that the value stored is out of range, or yet that it is valid, but low trusted. The Standards IEC 61850, DNP3 and IEC104 have their own formats to representation of point’s quality information.
5. CONFIGURATION Name Type Description This flag should indicates a quality prob- lem that the attribute to which the quality FLAG_OUT_OF_RANGE BOOL has been associated is beyond the prede- fined values capacity. This flag should indicates that the value FLAG_INACCURATE BOOL doesn’t attend the declared precision of the source.
5. CONFIGURATION Resulting Quality Resulting VALIDITY Description It has received an exception FLAG_FAILURE VALIDITY_QUESTIONABLE response, but the point has a FLAG_OLD_DATA valid old value. FLAG_RESTART Device stopped. The point VALIDITY_QUESTIONABLE FLAG_OLD_DATA has an old value. Table 45: MODBUS Quality 5.1.4.1.3. Local Bus I/O Modules Quality To help in the use of each I/O point’s diagnostic, MasterTool automatically creates a quality structure to each local bus module used on the PLC project, through an own internal structure accessible by structure QUALITY, available in GVL IOQualities.
5. CONFIGURATION 5.1.4.1.6. PROFIBUS Digital Output Quality // PROFIBUS digital output quality update, module NX1005 // In communication success case with PROFIBUS slave (address = 99) ... DG_NX5001.tMstStatus.abySlv_State.bSlave_99 = TRUE THEN // Waits the PROFIBUS slave become apt to exchange data and diagnostics // (It is necessary to wait, avoiding invalid quality generation) DG_NX5110.tPbusHeadA.tStatus1.bStation_Non_Existent = FALSE AND...
5. CONFIGURATION 5.1.4.1.7. PROFIBUS Analog Inputs Quality // PROFIBUS analog input quality update, module NX6000 // In communication success case with PROFIBUS slave (address = 99) ... DG_NX5001.tMstStatus.abySlv_State.bSlave_99 = TRUE THEN // Waits the PROFIBUS slave become apt to exchange data and diagnostics // (It is necessary to wait, avoiding invalid quality generation) DG_NX5110.tPbusHeadA.tStatus1.bStation_Non_Existent = FALSE AND...
5. CONFIGURATION END_IF // Condition to turns on general failure indication (priority) (DG_NX5110.tPbusHeadA.dwModuleNotPresent SHL(1, 3)) > 0 DG_NX5110.tPbusHeadA.tSummarized.bConfigMismatch = TRUE OR DG_NX6000_8_AI_Voltage_Current.tGeneral.bConfigMismatch = TRUE OR DG_NX6000_8_AI_Voltage_Current.tGeneral.bFatalError = TRUE OR DG_NX6000_8_AI_Voltage_Current.tDetailed.tAnalogInput_00.bOpenLoop = TRUE THEN QUALITY_PB_NX6000.VALIDITY:= VALIDITY_INVALID; QUALITY_PB_NX6000.FLAGS.FLAG_FAILURE:= TRUE; // If the point have ever been updated once ... QUALITY_PB_NX6000.FLAGS.FLAG_RESTART DG_NX6000_8_AI_Voltage_Current.tDetailed.tAnalogInput_00.bOpenLoop THEN...
Page 84
5. CONFIGURATION // if there is no external power supply missing indication and // if there is no error indication of output in open loop and // if there is no outputs short circuit indication ... (DG_NX5110.tPbusHeadA.dwModuleNotPresent SHL(1, 4)) = 0 DG_NX5110.tPbusHeadA.tSummarized.bConfigMismatch = FALSE AND DG_NX6100_4_AO_Voltage_Current.tGeneral.bConfigMismatch =...
5. CONFIGURATION QUALITY_PB_NX6100.FLAGS.FLAG_FAILURE:= FALSE; // If the point have ever been updated once ... QUALITY_PB_NX6100.FLAGS.FLAG_RESTART DG_NX6100_4_AO_Voltage_Current.tDetailed.tAnalogOutput_00.bOpenLoop THEN QUALITY_PB_NX6100.FLAGS.FLAG_OLD_DATA:= TRUE; END_IF END_IF 5.2. Serial Interfaces Configuration 5.2.1. COM 1 The COM 1 communication interface consists of the D+ and D- terminals, for the half-duplex RS-485 standard, allowing point-to-point or network communication in open protocols MODBUS RTU Slave or MODBUS RTU Master.
5. CONFIGURATION • Bit 1: Not used. • Bit 2: Not used. • Bit 3: UART interruption error. The serial input remained in logic 0 (space) for a time greater than a character (start bit + data bits + parity bit + stop bits). •...
5.4.1. System Page The System tab is for internal Altus use, restricted to the user. Here the CPU firmware update is performed. For cases in which the update is done remotely (through a radio or satellite connection, for example), the minimum speed of this link must...
5. CONFIGURATION 5.4.2. Network Page Designed to assist in the usability of the controller, the Network page (figure below) allows you to change network addresses and run the Network Sniffer. Figure 42: Network Web Page 5.4.2.1. Network Page Configuration 5.4.2.1.1. Defined by Application The Mode field defines which configuration the controller should load for its interfaces.
5. CONFIGURATION Figure 43: Interfaces Table - Application Mode 5.4.2.1.2. Defined by web page For Defined by Web Page mode, the interface table remains enabled as shown in the figure below. In this mode, the user can set the IP Address, Network Mask, and Gateway for each of the available Ethernet interfaces, as well as enabling and disabling NETs 2 and 3.
5. CONFIGURATION When this checkbox is unchecked, it indicates that the NET interface is disabled, i.e., it will not receive configuration and will be deactivated, as the NET 3 of the figure above. When the interface is enabled (with the checkbox checked), according to NET 2 in the figure above, the settings are available for editing.
5. CONFIGURATION Figure 45: Network Sniffer Running The Stop button can be used to end the sniffer execution at any time after it has been started. For each of the interfaces on which Sniffer runs, it generates a .pcap file. These files are named according to the name of the controller and the interface that was analyzed, for example, NX3008_NET1.pcap.
Page 92
5. CONFIGURATION Figure 46: USB Devices Section The content of this page changes dynamically according to the type of USB device that is connected. In the example above, there is no device connected. The following sections describe all the types of USB devices currently supported. If an unsupported device is connected, the page will inform that device is unknown: Figure 47: USB Devices - Unknown...
5. CONFIGURATION 5.5.1. Mass Storage Device 5.5.1.1. General Storage Mass storage devices can be used to expand the controller’s flash memory to store big amount of data, like on datalogger applications, for instance. To use a USB mass storage device, simply connect it to the USB port. After a few seconds, when the device is properly detected and mounted, the USB LED will turn on and the device information will appear on section USB Devices located at the tab PLC Management of the controller’s diagnostics webpage as shown below: Figure 48: Mass Storage Device Information...
5. CONFIGURATION Figure 49: USB Mass Storage Folder 5.5.1.2. Application Not Loading on Startup The USB mass storage device can be used to prevent the controller from automatically loading the application after the power on. To do that, simply place an empty text file called "dontbootapp.txt" on the root folder of mass storage device. The presence of this file is informed in the Special Files field on controller’s system webpage as shown below.
5. CONFIGURATION 5.5.1.3. Transferring an Application from a USB Device The USB mass storage device can also be used to transfer an application to the controller. To do that, place the two files Application.app and Application.crc on the root folder of mass storage device (these files are created using MasterTool IEC XE executing the command Online - Create boot application when offline).
An USB Modem with a SIM chip can be used to connect the PLC to the internet using the cellular data network (telephone services, like sending SMS, are not implemented). This feature allows to use the NX3008 controller to implement telemetry and IoT applications.
Page 97
5. CONFIGURATION The bridge modem is a non-managed device that implements a direct connection (pass through) to the mobile data network, so all the connection requests coming from the internet will reach the controller’s operating system. For this kind of device, the configuration is performed through the controller’s system web page as described further on this section.
Page 98
5. CONFIGURATION Export: saves the current configuration on an external file Reset: erases the modem configuration from controller’s memory Apply: write the configuration on the controller’s memory ATTENTION The provider APN and PIN code fields are mandatory for every SIM chip. If the provider informs these parameters, they shall be used.
5. CONFIGURATION Figure 54: Configuring Gateway with Modem IP Address ATTENTION For bridge devices, or router devices with external access enabled (port forwarding), once connected to the internet, anyone who knows the modem IP address will be able to access the controller remotely.
Page 100
5. CONFIGURATION Figure 55: USB WiFi Adapter Page This page contains basically two sections: Status and Configuration. The Status section shows all diagnostics related to the WiFi adapter: configuration state, connection state, IP address, Netmask, Gateway and MAC address. These fields are updated as soon the values change. These informations are also provided in the symbolic variables diagnostics structure (see Section Diagnostics via Variables).
Page 101
5. CONFIGURATION Figure 56: USB WiFi Adapter Configuration Besides that, the Configuration section contains the following buttons: Import: loads a configuration file Export: download a file with the current configuration Reset: returns the configuration to the default Apply: apply the current configuration Once the device is properly detected and the network parameters are configured, the controller will always try to keep connected to the WiFi network.
5.6. Ethernet Interfaces Configuration The NX3008 CPU has NET 1, NET 2, and NET 3. In addition of the local Ethernet interfaces, the Nexto Series also provides remote Ethernet interfaces through the inclusion of the module NX5000. NX5000 modules have only the NET 1 interface.
The Ethernet channels of the CPU can be configured in three distinct modes of operation: Single Mode, Redundant Mode, or Switch Mode. Different from other Nexto Series CPUs, the NX3008 has three Ethernet ports (NET 1, NET 2, and NET 3).
5. CONFIGURATION 5.6.1.4.1. Single Mode In this mode, the interface operates as an independent Ethernet port, with no relation to the subsequent interface. Figure 58: Advanced Configuration of Local Ethernet Interfaces - Single Mode 5.6.1.4.2. Redundant Mode In this mode, the interface forms a redundant pair with the subsequent interface, operating in an active/reserve scheme. A Communication Redundancy pair has a single IP address, associated with the interface that is currently active.
5. CONFIGURATION 5.6.1.4.3. Switch Mode In this mode, the interface forms a pair with the subsequent interface operating as an Ethernet switch, thus allowing communication over both ports. Thus, this mode allows the "cascading" of several CPUs, enabling the implementation of a ring network topology.
5. CONFIGURATION Hello Time (s): Period for sending BPDU frames. Can be configured with values between 1 and 10, the default value is Forward Delay (s): The time it takes for the Root Port and the Designated Port to transition to the Forwarding state when operating in STP mode.
Independently of the protocols used in each application, the Nexto Series CPUs has some maximum limits for each CPU model. There are basically two different types of communication protocols: symbolic and direct representation mappings. The maximum limit of mappings as well as the maximum protocol quantity (instances) is defined on table below: NX3008 Mapped Points 20480...
Page 108
5. CONFIGURATION Mappings: A “mapping” is the relationship between an internal application variable and an object of the application protocol. This field informs the maximum number of mappings supported by the CPU. It corresponds to the sum of all mappings made within the instances of communication protocols and their respective devices. Requests: The sum of the requests of the communications protocols, declared on devices, may not exceed the maximum number of requests supported by the CPU.
Page 109
5. CONFIGURATION MODBUS RTU MODBUS RTU MODBUS MODBUS Limitations Master Slave Ethernet Client Ethernet Server Devices per instance Requests per device Simultaneous requests per in- stance Simultaneous requests per device Table 62: MODBUS Protocol Limitations for Symbolic Mappings Notes: Devices per instance: Master or Client Protocol: Number of slave or server devices supported by each Master or Client protocol instance.
5. CONFIGURATION 5.7.1. Protocol Behavior x CPU State The table below shows in detail the behavior of each configurable protocol in Nexto Series CPUs in every state of operation. CPU operational state STOP After down- After the After load, applica- Redundant After an break-...
5. CONFIGURATION The CPU’s event queue is redundant, that means it is synchronized each cycle between both CPUs, when is used CPU’s redundancy. Further information can be found on the section about CPU redundancy. The in and out of events in this queue follows the concept of producer/consumer. Producers are those system elements capable of generate events, adding events in the CPU’s queue, while the consumers are those system elements which receive and use this events, taking them of the CPU’s queue.
5. CONFIGURATION 5.7.2.2.1. Overflow Sign The overflow sign to the consumers’ events queue occurs in two situations: When the consumer events queue is out of space to store new events If the CPU aborted the event generation (because occurred to more events in a single execution cycle than the events queue total size) 5.7.2.3.
Page 113
5. CONFIGURATION Parameter Type Description bExec BOOL When TRUE, executes the command interception Indicates that the command output data have been already bDone BOOL processed, releasing the function block to receive another command Variable address, mapped in the server driver, which will dwVariableAddr DWORD receive the client command...
Page 114
5. CONFIGURATION ATTENTION It is not recommended the simultaneous commands interception to one same variable by two or more CommandReceiver function blocks. Just one of the function blocks will intercept correctly the command, being able to suffer undesirable interference from the others function blocks if addressed to the same variable.
Page 115
5. CONFIGURATION Parameter Type Description When true indicates a selection command reception with bSelectWithValue BOOL value. Table 69: Parameters sSelectConfig Parameter Type Description Received selection command configuration. This struc- sOperateConfig STRUCT ture parameters are described on Table Field of received operation command referred value. This sValue STRUCT structure parameters are described on Table...
Page 116
5. CONFIGURATION Parameter Type Description bValue BOOL Point operation value. The pulsed command configuration parameters are stored sPulseConfig STRUCT in this structure. This structure parameters are described on Table 78. Table 73: Parameters sSinglePoint Parameter Type Description bValue BOOL Point operation value. The pulsed command configuration parameters are stored sPulseConfig STRUCT...
5. CONFIGURATION was intercepted, the function block informs that a command was intercepted through bCommandAvailable parameter. The intercepted command information are then filled in the sCommand and eStatus output parameters, according to the received command type. This operation depends only of the received command type, don’t matter the variable’s data type to which is being intercepted the command.
Page 118
5. CONFIGURATION Configuration Description Default Options Delay for the answer trans- Send Delay (ms) 0 to 65535 mission. Minimum Interframe Minimum silence time be- 3.5 to 100.0 (chars) tween different frames. Table 79: MODBUS RTU Master General Configurations Notes: Send Delay: The answer to a MODBUS protocol may cause problems in certain moments, as in the RS-485 interface or other half-duplex.
Page 119
5. CONFIGURATION Direct Repre- Diagnostic Variable sentation T_DIAG_MODBUS Size Description Variable _RTU_MASTER_1.* 0: there are no errors. 1: invalid serial port. 2: invalid serial port mode 3: invalid baud rate 4: invalid data bits 5: invalid parity 6: invalid stop bits 7: invalid modem signal parameter SERIAL_STATUS %QB(n+1)
5. CONFIGURATION Direct Repre- Diagnostic Variable sentation T_DIAG_MODBUS Size Description Variable _RTU_MASTER_1.* tCommand. %QX(n+2).7 Reserved bDiag_23_reserved %QB(n+3) BYTE Reserved byDiag_3_reserved Communication Statistics: Counter of request transmitted by the mas- tStat. %QW(n+4) WORD ter (0 to 65535). wTXRequests Counter of normal responses received by tStat.
5. CONFIGURATION Configuration Description Default Options Slave Address MODBUS slave address 0 to 255 Communication Time-out Defines the application level 3000 10 to 65535 (ms) time-out Defines the numbers of re- Maximum Number of Re- tries before reporting a com- 0 to 9 tries munication error...
5. CONFIGURATION Configuration Description Default Options Name of a variable declared Value Variable Symbolic variable name in a program or GVL Coil - Write (1 bit) Coil - Read (1 bit) Holding Register - Write Data Type MODBUS data type (16 bits) Holding Register - Read (16 bits)
Page 123
5. CONFIGURATION Figure 66: Data Requests Screen MODBUS Master Configuration Description Default Value Options 01 – Read Coils 02 – Read Input Status 03 – Read Holding Regis- Function Code ters MODBUS function type 04 – Read Input Registers 05 – Write Single Coil 06 –...
Page 124
5. CONFIGURATION Configuration Description Default Value Options Name of a variable declared Diagnostic Variable Diagnostic variable name in a program or GVL Field for symbolic variable used to disable, individually, MODBUS requests config- Variable used to disable ured. This variable must be Disabling Variable MODBUS relation of type BOOL.
Page 125
5. CONFIGURATION Write Single Register (FC 06): 1 Write Multiple Coils (FC 15): 1968 Write Multiple Registers (FC 16): 123 Mask Write Register (FC 22): 1 Read/Write Multiple Registers (FC 23): 121 Write Data Range: this field shows the MODBUS write data range configured for each request. The initial address, along with the read data size will result in the range of write data for each request.
Page 126
Exception Codes: The exception codes presented in this field are values returned by the slave. The definitions of the ex- ception codes 128, 129 and 255 presented in the table are valid only when using Altus slaves. Slaves from other manufacturers might use other definitions for each code.
5. CONFIGURATION ATTENTION Differently from other application tasks, when a depuration mark in the MainTask is reached, the task of a Master MODBUS RTU instance and any other MODBUS task will stop running at the moment that it tries to perform a writing in a memory area. It occurs in order to keep the consistency of the memory areas data while a MainTask is not running.
5. CONFIGURATION Default Configuration Description Options Value %Q Start Address of Diag- Initial address of the diag- 0 to 2147483628 nostics Area nostic variables Size Size of diagnostics area Disabled for editing Table 88: MODBUS RTU Master Configuration Notes: Initial Address of Diagnostics in %Q: this field is limited by the size of outputs variables (%Q) addressable memory of each CPU, which can be found in section Memory.
5. CONFIGURATION Default Configuration Description Options Value Identifier, according to IEC Name Name of the instance MODBUS_Device 61131-3 The MODBUS slave ad- Slave Address 0 to 255 dress Communication Time-out Sets the time-out of the ap- 1000 10 to 65535 (ms) plication level Sets the number of retries...
Page 130
5. CONFIGURATION Figure 70: MODBUS Function In table below, the number of factory default settings and the values for the column Options, may vary according to the data type and MODBUS function (FC). Configuration Description Default Value Options Read Function MODBUS function type Read Write...
5. CONFIGURATION Polling: this parameter indicates how often the communication set for this relation must be executed. At the end of communication will be awaited a time equal to the configured polling and after, will be performed a new communication as soon as possible.
5. CONFIGURATION 5.7.5.1.1. MODBUS Slave Protocol General Parameters – Configuration via Symbolic Mapping The general parameters, found on the MODBUS protocol initial screen (figure below), are defined as. Figure 71: MODBUS RTU Slave Configuration Screen Configuration Description Default Options Slave Address MODBUS slave address 1 to 255 Table 91: Slave Configurations...
Page 133
5. CONFIGURATION Configuration Description Default Options Time for the instance execu- tion within the cycle, with- Task Cycle (ms) 20 to 100 out considering its own exe- cution time Delay for the transmission Send Delay (ms) 0 to 65535 response Minimum Interframe Minimum silence time be-...
Page 134
5. CONFIGURATION Direct Repre- Diagnostic Variable sentation T_DIAG_MODBUS Size Description Variable _RTU_SLAVE_1.* 0: there is no error. 1: invalid serial port. 2: invalid serial port mode 3: invalid baud rate 4: invalid data bits 5: invalid parity 6: invalid stop bits 7: invalid modem signal parameter SERIAL_STATUS %QB(n+1)
Page 135
5. CONFIGURATION Direct Repre- Diagnostic Variable sentation T_DIAG_MODBUS Size Description Variable _RTU_SLAVE_1.* tCommand. %QX(n+2).7 Reserved. bDiag_23_reserved %QB(n+3) BYTE Reserved. byDiag_3_reserved Communication Statistics: Counter of normal requests received by the slave and answered normally. In case of tStat. %QW(n+4) WORD a broadcast command, this counter is in- wRXRequests cremented, but it is not transmitted (0 to 65535).
5. CONFIGURATION 5.7.5.1.2. Configuration of the Relations – Symbolic Mapping Setting The MODBUS relations configuration, showed on figure below, follows the parameters described on table below: Figure 73: MODBUS Data Mappings Screen Configuration Description Default Options Name of a variable declared Value Variable Symbolic variable name in a program or GVL...
5. CONFIGURATION ATTENTION Differently from other application tasks, when a depuration mark in the MainTask is reached, the task of a MODBUS RTU Slave instance and any other MODBUS task will stop running at the moment that it tries to perform a writing in a memory area. It occurs in order to keep the consistency of the memory areas data while a MainTask is not running.
5. CONFIGURATION Configuration Description Default Value Options %Q Start Address of Diag- Initial address of the diag- 0 to 2147483628 nostics Area nostic variables Size Size of diagnostics area Disabled for editing Slave Address MODBUS slave address 1 to 255 Initial address used to dis- Mapping Disabling 0 to 2147483644...
Page 139
5. CONFIGURATION Figure 76: Configuring the MODBUS Relation Default Configuration Description Options Value Coil (1 bit) Data Type MODBUS data type Coil Holding Register (16 bits) Input Register (16 bits) Input Status (1 bit) Initial address of the MOD- Data Start Address 1 to 65536 BUS data Data Size...
5. CONFIGURATION Default Value: the default value cannot be defined for the IEC Variable field since the creation of a relation can be performed at any time on application development. The MasterTool IEC XE software itself allocate a value from the range of direct representation output variables (%Q), still unused.
Page 141
5. CONFIGURATION Figure 77: MODBUS TCP Communication Network The association of MODBUS variables with CPU symbolic variables is made by the user through relations definition via MasterTool IEC XE configuration tool. It’s possible to configure up to 32 relations for the server mode and up to 128 relations for the client mode.
5. CONFIGURATION Data Type Size [bits] Description Coil Digital output that can be read or written. Input Status Digital input (read only). Holding Register Analog output that can be read or written. Input Register Analog input (read only). Table 98: MODBUS data types supported by Nexto CPUs Code Description 0x01...
5. CONFIGURATION 5.7.7.1.1. MODBUS Client Protocol General Parameters – Configuration via Symbolic Mapping The general parameters, found on the MODBUS protocol configuration initial screen (figure below), are defined as: Figure 78: MODBUS Client General Parameters Configuration Screen Configuration Description Default Options RTU via TCP Connection Mode...
Page 145
5. CONFIGURATION Figure 79: Device General Parameters Settings Configuration Description Default Options IP Address Server IP address 0.0.0.0 1.0.0.1 to 223.255.255.255 TCP Port TCP port 2 to 65534 Slave Address MODBUS Slave address 0 to 255 Table 102: MODBUS Client General Configurations Notes: IP Address: IP address of Modbus Server Device.
5. CONFIGURATION Notes: Maximum Simultaneous Requests: it is used with a high scan cycle. This parameter is fixed in 1 (not editable) when the configured protocol is MODBUS RTU over TCP. Communication Time-out: the Communication time-out is the time that the client will wait for a server response to the request.
5. CONFIGURATION Configuration Description Default Options Name of a variable declared Value Variable Symbolic variable name in a program or GVL Coil - Write (1 bit) Coil - Read (1 bit) Holding Register - Write Data Type MODBUS data type (16 bits) Holding Register - Read (16 bits)
Page 148
5. CONFIGURATION Figure 81: MODBUS Data Request Screen Configuration Description Default Value Options 01 – Read Coils 02 – Read Input Status 03 – Read Holding Regis- Function Code MODBUS function type ters 04 – Read Input Registers 05 – Write Single Coil 06 –...
Page 149
5. CONFIGURATION Configuration Description Default Value Options Field for symbolic variable used to disable, individually, MODBUS requests config- Variable used to disable ured. This variable must be Disabling Variable MODBUS relation of type BOOL. The variable can be simple or array el- ement and can be in struc- tures.
Page 150
5. CONFIGURATION Write Multiple Registers (FC 16): 123 Mask Write Register (FC 22): 1 Read/Write Multiple Registers (FC 23): 121 Write Data Range: this field shows the MODBUS write data range configured for each request. The initial address, along with the read data size will result in the range of write data for each request. Diagnostic Variable: The MODBUS request diagnostics configured by symbolic mapping or by direct representation, are stored in variables of type T_DIAG_MODBUS_RTU_MAPPING_1 for Master devices and T_DIAG_MODBUS_ETH_CLIENT_1 for Client devices and the mapping by direct representation are in 4-byte and 2-word, which are described in Table...
Page 151
Exception Codes: the exception codes show in this filed is the server returned values. The definitions of the exception codes 128, 129 and 255 are valid only with Altus slaves. For slaves from other manufacturers these exception codes can have different meanings.
5. CONFIGURATION ATTENTION Unlike other tasks of an application, when a mark is reached at MainTask debugging, the MODBUS Ethernet Client instance task or any other MODBUS task will stop being executed at the moment it tries to write in the memory area. This occurs in order to maintain data consistency of memory areas while MainTask is not running.
5. CONFIGURATION Default Setting Description Options Value %Q Start Address of Diag- Initial address of the diag- 0 to 2147483628 nostics Area nostic variables Size Size of diagnostics Disabled for editing RTU via TCP Protocol Protocol selection Table 110: MODBUS Client settings Notes: %Q Start Address of Diagnostics Area: this field is limited by the size of output variables addressable memory (%Q) at CPU, which can be found in section Memory.
5. CONFIGURATION Notes: Instance Name: this field is the identifier of the device, which is checked according to IEC 61131-3, i.e. it does not allow spaces, special characters and starting with numeral character. It is limited to 24 characters. TCP Port: if there are multiple instances of the protocol added in a single Ethernet interface, different TCP ports must be selected for each instance.
Page 155
5. CONFIGURATION In table below, the number of factory default settings and the values for the column Options, may vary according to the data type and MODBUS function (FC). Configuration Description Default Value Options Read Function MODBUS function type Read Write Read/Write Mask Write...
5. CONFIGURATION Write IEC Variable: in case the MODBUS data type is Coil (bit), the IEC variables initial address will be in the format %QX10.1. However, if the MODBUS data type is Holding Register (16 bits), the IEC variables initial address will be in the format %QW.
Page 157
5. CONFIGURATION Figure 86: MODBUS Server General Parameters Configuration Screen Configuration Description Default Options TCP Port TCP port 2 to 65534 RTU via TCP Connection Mode Protocol selection Table 113: MODBUS Server General Configurations Notes: TCP Port: if there are multiple instances of the protocol added in a single Ethernet interface, different TCP ports must be selected for each instance.
5. CONFIGURATION Figure 87: MODBUS Server Advanced Settings Configuration Screen Configuration Description Default Value Options Time for the instance execu- tion within the cycle, with- Task Cycle (ms) 5 to 100 out considering its own exe- cution time Maximum idle time between Connection Inactivity client and server before the...
Page 159
5. CONFIGURATION Direct Rep- Diagnostic Variable resentation T_DIAG_MODBUS Size Description Variable _ETH_SERVER_1 .* Diagnostic bits: tDiag. %QX(n).0 The server is running. bRunning The server is not running (see bit bInter- tDiag. %QX(n).1 ruptedByCommand). bNotRunning The bit bNotRunning was enabled, be- tDiag.
5. CONFIGURATION Direct Rep- Diagnostic Variable resentation T_DIAG_MODBUS Size Description Variable _ETH_SERVER_1 .* Ethernet frames counter received by the tStat. %QW(n+10) WORD server. An Ethernet frame can contain wRXFrames more than one request (0 to 65535). Requests received by the server counter tStat.
5. CONFIGURATION Default Configuration Description Options Value Name of a variable declared Value Variable Symbolic variable name in a program or GVL Coil Data Type MODBUS data type Input Status Holding Register Input Register Starting address Data Start Address 1 to 65536 MODBUS data Absolute Data Start Ad- Start address of absolute...
Page 162
5. CONFIGURATION Figure 89: MODBUS Server Setup Screen TCP port, protocol and direct representation variables (%Q) to control relations and diagnostics: Configuration Description Default Value Options %Q Start Address of Diag- Starting address of the diag- 0 to 2147483628 nostics Area nostic variables Size Size of diagnostics...
5. CONFIGURATION 5.7.8.2.2. Mapping Configuration – Configuration via Direct Representation (%Q) The MODBUS relations settings, viewed in the figures below, follow the parameters described in table below: Figure 90: MODBUS Data Type Figure 91: MODBUS Server Function...
Page 164
5. CONFIGURATION Configuration Description Default Options Coil (1 bit) Data Type MODBUS data type Coil Holding Register (16 bits) Input Status (1 bit) Input Register (16 bits) MODBUS data initial ad- Data Start Address 1 to 65536 dress 1 to 65536 (Holding Regis- Data Size MODBUS data quantity ter and Input Register)
5. CONFIGURATION Configuration Description Default Value Options Specifies the subnet mask in 0.0.0.0 to Read Filter Mask conjunction with the IP filter 0.0.0.0 255.255.255.255 parameter for reading. Table 120: IP Filters Note: Filters: filters are used to establish a range of IP addresses that have write or read access to MODBUS relations, being individually configured.
Page 166
5. CONFIGURATION Figure 92: OPC DA Architecture The figure above shows an architecture to communicate a SCADA system and PLCs in automation projects. All the roles present on a communication are explicit on this figure regardless of the equipment in which it’s executed, since they can be done in the same equipment or in various ones.
5. CONFIGURATION Role Description The OPC Client Device module is responsible for the requests to Device Module OPC Client the OPC DA Server using the OPC DA protocol. The collected data is stored on the SCADA Server database. The SCADA Server is responsible for connecting to the various SCADA Server Level communication devices and store the data collected by them on a database, so that it can be consulted by the SCADA Clients.
Page 168
5. CONFIGURATION Figure 93: Symbol Configuration Object The table below presents the descriptions of the Symbol Configuration object screen fields. Field Description Symbols Variable identifier that will be provided to the OPC DA Server. Indicates what the possible access right level are in the declared symbol.
Page 169
5. CONFIGURATION Figure 94: Selecting Variables on the Symbol Configuration After this procedure, the project must be loaded into a PLC so the variables will be available for communication with the OPC DA Server. If the object Symbol Configuration screen is open and any of the variables, POUs or GVLs selected is changed, its name will appear with the red color.
5. CONFIGURATION ATTENTION The configurations of the symbols that will be provided to the OPC DA Server are stored inside the PLC project. By modifying these configurations it’s necessary to load the appli- cation on the PLC so that it’s possible to access those variables. ATTENTION When a variable is removed from the project and loaded on the PLC unchecking it from the object Symbol Configuration, the variable can no longer be read with the OPC Client.
Page 171
5. CONFIGURATION Default Set- Device Configuration Description Options ting PLC description inside the This field is a STRING and OPC DA Server configura- it accepts alphanumeric (let- tion file. This field can have ters and numbers) charac- any name, but for organiza- ters and the “_”...
5. CONFIGURATION When a new PLC needs to be configured on the OPC DA Server, simply press the New Device button and the configuration will be created. When the setup screen is accessed, a list of all PLCs already configured on the OPC DA Server will be displayed.
5. CONFIGURATION State Value Description There are no symbols (variables) available in the PLC configured in the OPC DA Server. It can happen when STATE_NO_SYMBOLS there are no symbols or there isn’t a project loaded on the PLC. Finished the process of reading the symbols (variables) STATE_SYMBOLS_LOADED from the PLC configured in the OPC DA Server.
5. CONFIGURATION Maximum number of variables communicating with a single PLC Maximum number of PLCs in an OPC DA Server Maximum number of simultaneous connections of an OPC DA Server in a single PLC Table 126: OPC DA Server Communication Limits Note: Maximum number of variables communicating with a single PLC: There is no configuration limit.
Page 175
5. CONFIGURATION Figure 96: Selecting the OPC DA Server in the Client Configuration In cases where the server is remotely located, it may be necessary to add the network path or IP address of the computer in which the server is installed. In these cases, there are two configuration options. The first is to directly configure it, being necessary to enable the COM/DCOM Windows Service.
5. CONFIGURATION ATTENTION The simulation mode of MasterTool IEC XE software can be used for OPC communication tests. The information on how to configure it are presented in the Testing an OPC Commu- nication using the Simulator section of the MasterTool IEC XE User Manual – MU299609. 5.7.10.
5. CONFIGURATION Role Description The field devices and the PLCs are where the operation state and plant control information are stored. The SCADA system ac- Programmable Controllers and cess the information on these devices and store on the SCADA Field Devices Level server, so that the SCADA clients can consult it during the plant operation.
Page 178
5. CONFIGURATION Figure 99: Symbol Configuration Object ATTENTION When enabling OPC UA protocol support, OPC DA protocol support is still enabled. You can enable OPC UA and OPC DA communications at the same time to report the variables configured on the Symbol Configuration object or via attributes. Another way to access this configuration, once already created a project with the Symbol Configuration object, is given by accessing the Settings menu of the configuration tab of the Symbol Configuration.
5. CONFIGURATION 5.7.10.2. Types of Supported Variables This section defines the types of variables that support communication via the OPC UA protocol, when declared within GVLs or POUs and selected in the Symbol Configuration object (see previous section). The following types of simple variables are supported: BOOL SINT USINT / BYTE...
5. CONFIGURATION 10. Back to MasterTool, click on the icon of the Security Screen to perform a refresh; 11. On the Security Screen, select the "Quarantined Certificates" folder under the Device. In the right panel you should observe a certificate requested by the OPC UA client; 12.
5. CONFIGURATION 5.7.10.6.3. Lifetime Count and Keep-Alive Count These two parameters must be configured for each subscription. The purpose of these two parameters is to create a mechanism for deactivating a subscription on the initiative of the server, in case it does not receive customer’s PublishRequest communication packets for this subscription for a long time. PublishRequest packets must be received by the server so that it can broadcast Publish Response packets containing the subscription variables that have changed their values.
5. CONFIGURATION These parameters must be configured for each subscription. PublishingEnable must be “true” so that the subscription variables are reported in case of change of value. MaxNotificationsPerPublish indicates how many of the variables that have changed value can be included in the same Publish Response package.
5. CONFIGURATION Figure 102: List of Symbols Browsed by OPC UA The list of selected variables will be included in the Client’s communications list and can be used, for example, in screens of a SCADA system. 5.7.11. EtherCAT Master EtherCAT (Ethernet Control Automation Technology) is a master-slave architecture protocol with high performance, for deterministic Ethernet, that allows real time performance as it updates 1000 distributed I/O in 30 S or 100 servomotors axis each 100 S using twisted pair cables or optic fiber.
5. CONFIGURATION Figure 103: EtherCAT Configuration Example ATTENTION - Only one EtherCAT Master instance per project is allowed. - Only available on the NET connectors of the PLC. - It cannot be used when the NETs are set as redundant. - It cannot be used when Project has cluster redundancy.
5. CONFIGURATION Figure 104: EtherCAT Devices Search Dialog 5.7.11.2. EtherCAT Master Settings Below are listed the options to carry out the EtherCAT Master configuration, such as defined in Device Description File. 5.7.11.2.1. EtherCAT Master - General Below are the general parameters found in the initial screen of the EtherCAT Master configuration, according figure below. Figure 105: EtherCAT Master Configuration Dialog...
Page 186
5. CONFIGURATION Factory De- Device Configuration Description Possible Values fault Enable the Master and Slave Marked Autoconfig master/slaves Marked automatic configuration. Unmarked Sets the time period in Cycle time [ s] which a new data telegram 4000 2000 to 1000000 must be send to the bus.
5. CONFIGURATION Automatic Restart Slaves: By enabling this option, the Master will restart the Slaves as soon as the communication is aborted. 5.7.11.2.2. EtherCAT Master - Sync Unit Assignment This tab of the EtherCAT Master configuration editor shows all slaves that are entered below a specific master with an assignment to the sync units.
Page 188
5. CONFIGURATION Figure 106: EtherCAT Slave Configuration Dialog Default Device Configuration Description Options Value Auto incremental Address AutoInc Address (16-bit) defined by the Slave -65535 to 0 position in the network. Slave final address, assign by the Master during startup. EtherCAT Address This address is independent 1 to 65535...
Page 189
5. CONFIGURATION Default Device Configuration Description Options Value Declare the Slave as Op- Marked Optional Unmarked tional. Unmarked Show all Distributed Clock Select DC configurations provided by the device description file. Enable Distributed Marked Enable Distributed Clock Unmarked Clock configuration options. Unmarked Show the Cycle Time set in Sync Unit Cycle [ s]...
Page 190
5. CONFIGURATION Default Device Configuration Description Options Value Set a time reference for the timeout check of the switch I -> P 0 to 100000 from Init to Pre-Operation mode. Set a time reference for the timeout check of the switch from Pre-Operation P ->...
5. CONFIGURATION Enable: If the setting Optional is not activated, this setting can be activated if explicitly supported by the device description of the slave. It allows direct assignment of an alias address in order to get the slaves address independent of its position within the bus.
Page 192
5. CONFIGURATION Figure 108: Expert Process Data Dialog This dialog is divided in four sections and two options: Sync Manager: List of Sync Manager with data size and type of PDOs. PDO Assignment: List of PDOs assigned to the selected Sync Manager. The checkbox activates the PDO and I/O channels are created.
5. CONFIGURATION 5.7.11.3.3. EtherCAT Slave - Edit PDO List Figure 109: Edit PDO List Dialog This dialog is opened through the context menu from the PDO List area, presented in Figure 108. Below are some explanations on the configuration options presented in this dialog. Name: Name of the PDO input.
5. CONFIGURATION Figure 110: Slave I/O Mapping Dialog 5.7.11.3.6. EtherCAT Slave - Status and Information The Status tab of the EtherCAT Slave provides status information (e.g. ’Running’, ’Stopped’) and device-specific diagnostic messages, also on the used card and the internal bus system. The Information tab, presented in the EtherCAT Slave configuration editor, shows, if available, the following general information about the module: Name, Vendor, Type, Version, Categories, Order Number, Description, Image.
5. CONFIGURATION ATTENTION To avoid communication issues, EtherNet/IP Scanner can only have Adapters configured within the same subnetwork. 5.7.12.1. EtherNet/IP Interface To add an EtherNet/IP Scanner or Adapter it’s needed to add an EtherNet/IP Interface under the NET interface. This can be done through the command Add Device.
Page 196
5. CONFIGURATION Figure 112: Adding an EtherNet/IP Adapter or Scanner...
5. CONFIGURATION 5.7.12.2. EtherNet/IP Scanner Configuration Figure 113: Adding an EtherNet/IP Adapter Under the Scanner 5.7.12.2.1. Geral After open the Adapter declared under the Scanner it’s possible to configure it as needed. The first Tab is General, on it is possible to configure the IP address and the Electronic Keying parameters.
5. CONFIGURATION Figure 114: EtherNet/IP General Tab 5.7.12.2.2. Connections The upper area of the Connections tab displays a list of all configured connections. When there is an Exclusive Owner connection in the EDS file, it is inserted automatically when the Adapter is added. The configuration data for these connections can be changed in the lower part of the view.
Page 199
5. CONFIGURATION Default Configuration Description Options Value Request Packet Interval: ex- Multiple of MainTask inter- RPI (ms) change interval of the input 10 ms and output data. Size of the producer data O -> T Size (Bytes) from the Scanner to the Depends on adapter’s EDS 0 - 65527 Adapter (O ->...
5. CONFIGURATION 5.7.12.2.3. Assemblies The upper area of the Assemblies tab displays a list of all configured connections. When a connection is selected, the associated inputs and outputs are displayed in the lower area of the tab. Figure 117: EtherNet/IP Assemblies Output Assembly and Input Assembly: Configuration Description...
5. CONFIGURATION 5.7.12.3. EtherNet/IP Adapter Configuration The EtherNet/IP Adapter requires Ethernet/IP Modules. The Modules will provide I/O mappings that can be manipulated by user application through %I or %Q addresses according to its configuration. New Adapters can be installed on MasterTool with the EDS Files. The configuration options may differ depending on the device description file of the added Adapter.
5. CONFIGURATION 5.7.12.4. EtherNet/IP Module Configuration Figure 119: Adding an EtherNet/IP Module under the Adapter 5.7.12.4.1. Assemblies The parameters of the module’s General tab follow the same rules as described in the tables. Figure 120: EtherNet/IP Module Assemblies tab 5.7.12.4.2. EtherNet/IP Module: I/O Mapping The I/O Mapping tab shows, in the Variable column, the name of the automatically generated Adapter instances.
- Although CANopen specification allows up to 127 nodes (including Manager), applications with NX3008 must not exceed a maximum of 64 slave devices. A special care must be taken considering the physical bus lenght and the selected baudrate. The following table shows the...
5. CONFIGURATION Figure 122: Adding CANopen Slave Device 5.7.13.2. CANOpen Manager Configuration The CANopen Manager comes with a ready-to-use configuration (default values). Typically, it is just needed to set the correct baudrate and slave address to have a network running. The main parameters of CANopen manager are located at General tab: Figure 123: CANopen Manager general parameters The detailed description of CANopen Manager general parameters can be found on section Device Editors -...
5. CONFIGURATION Figure 124: CANopen Manager bus cycle task setting By default, the bus cycle task is configured to use the MainTask. This is the recommended setting for most of the applica- tions. Changing this setting is only required on a very specific scenario which requires the implementation of a time-critical control loop using CANopen I/O (5ms lets say) that can not be performed on MainTask due to heavy application code.
5. CONFIGURATION 5.8. Communication Performance 5.8.1. MODBUS Server The MODBUS devices configurable in the Nexto CPU run in the background, with a priority below the user application and cyclically. Thus, their performance varies depending on the remaining time, taking into account the difference between the interval and time that the application takes to run.
5. CONFIGURATION For cycle times equal or greater than 20 ms, the increase of the answer rate is linear, and may be calculated using an equation: N = C x (1 / T ) Where: N is the medium number of answers per second; C is the number of active connections;...
5. CONFIGURATION ATTENTION For very high cycle times (typically higher than 300 ms), even that the value of 80% is respected, it may occur a reduction in the display response time and of the diagnostics key. In case the 80 percentage is not respected and the running time of the user task is closer or exceeds the interval set for the MainTask, the screen and the diagnosis button cannot respond once its priority in the system running is lower than the user tasks.
5. CONFIGURATION Figure 126: Clock Reading and Writing Blocks ATTENTION Function blocks of RTC Reading and Writing, previously available in 2.00 MasterTool IEC XE or older become obsolete from 2.00 or newer, the following blocks are no longer used: NextoGetDateAndTime, NextoGetDateAndTimeMs, NextoGetTimeZone, NextoSetDateAnd- Time, NextoSetDateAndTimeMs and NextoSetTimeZone.
5. CONFIGURATION Input Parameters Type Description This variable returns the value of EXTENDED_DATE DATEANDTIME date and hour of RTC in the format _AND_TIME shown at Table 145. Table 136: Input Parameters of GetDateAndTime Output Parameters Type Description Returns the function error state, see GETDATEANDTIME RTC_STATUS Table 147.
5. CONFIGURATION Output Parameters Type Description Returns the function error state, see GetTimeZone RTC_STATUS Table 147. Table 139: Output Parameters of GetTimeZone Utilization example in ST language: PROGRAM UserPrg GetTimeZone_Status : RTC_STATUS; TimeZone : TIMEZONESETTINGS; xEnable : BOOL; END_VAR -------------------------------------------------------------------------- xEnable = TRUE THEN GetTimeZone_Status := GetTimeZone(TimeZone);...
5. CONFIGURATION 5.10.1.2. RTC Writing Functions The clock settings are made through function and function blocks as follows: 5.10.1.2.1. SetDateAndTime SetDateAndTime function is used to write the settings on the clock. Typically the precision is on the order of hundreds of milliseconds.
5. CONFIGURATION xExec : BOOL; xError : BOOL; xStatus : RTC_STATUS; END_VAR -------------------------------------------------------------------------- xRequest THEN SetDateAndTime.REQUEST:=TRUE; SetDateAndTime.DATEANDTIME:=DateAndTime; xRequest:= FALSE; END_IF SetDateAndTime(); SetDateAndTime.REQUEST:=FALSE; SetDateAndTime.DONE THEN xExec:=SetDateAndTime.EXEC; xError:=SetDateAndTime.ERROR; xStatus:=SetDateAndTime.STATUS; END_IF ATTENTION If you try to write time values outside the range of the RTC, the values are converted to valid values, provided they do not exceed the valid range of 01/01/2000 to 12/31/2035.
Page 214
5. CONFIGURATION Input parameters Type Description Structure with time zone to be con- TIMEZONE TIMEZONESETTINGS figured. See Table 148. Table 143: SetTimeZone Input Parameters Output parameters Type Description Returns the error occurred during SetTimeZone RTC_STATUS the reading/setting. See Table 147. Table 144: SetTimeZone Output Parameters When called, the function will configure the TIMEZONE with the new system time zone configuration.
5. CONFIGURATION 5.10.2. RTC Data Structure The reading and setting function blocks of the Nexto Series CPUs RTC use the following data structures in its configuration: 5.10.2.1. EXTENDED_DATE_AND_TIME This structure is used to store the RTC date when used the function blocks for date reading/setting within milliseconds of accuracy.
5. CONFIGURATION Enumerator Value Description INTERNAL_ERROR (8) Internal error. INVALID_TIME (9) Invalid date and hour. INPUT_OUT_OF_RANGE Out of the limit of valid date and (10) hour for the system. Error generated when the SNTP service is not enabled and it is done SNTP_NOT_ENABLE (11) an attempt for modifying the time zone.
Page 217
5. CONFIGURATION After updating the CPU column of files, the root directory of files stored in the CPU will be shown. Then it will be possible to select the folder where the files will be transferred to. The “InternalMemory” folder is a default folder to be used to store files in the CPU’s internal memory, since it is not possible to transfer files to the root directory.
5. CONFIGURATION Figure 134: Utilization Options ATTENTION For a CPU in Stop Mode or with no application, the transfer rate to the internal memory is approximately 150 Kbytes/s. 5.12. Memory Card Among other memories, Nexto Series CPUs allow the user the utilization of a memory card. It is defined according the features described in Memory Card Interface section which stores, among other files, the project and application in the CPU...
5. CONFIGURATION After generating the files in the previous item, you must navigate to the CPU General Parameters settings and click the Memory Card... button. A new screen will open as shown in figure below. In this screen you must enable the desired transfer operation(s) and, if necessary, set the password(s) with numeric characters only.
5. CONFIGURATION ATTENTION If the memory card is removed without have been unmounted through CPU’s menu, during a file transference, this process can cause the loss of card data as well as corrupt the files in it. This process may cause the need of another card formatting when it’ll be inserted on the CPU again.
Page 221
5. CONFIGURATION Level 1 Level 2 Level 3 Type TEMPERATURE Informative HARDWARE CONTRAST CONTRAST LEVEL Configurable DATE AND TIME Informative BACK Return level ENGLISH >ENGLISH Configurable LANGUAGES PORTUGUES >PORTUGUES Configurable BACK Return level NETWORK NET 1 IP ADDR. Informative NET 1 MASK Informative BACK Return level...
5. CONFIGURATION Figure 137: Contrast Adjust Besides the possibility of the Nexto CPUs menu to be closed through a long touch on the screen diagnostic button BACK from level 1, there are also other output conditions that are described below: Short touch, at any moment, in the other modules existent on the bus, make the CPU disconnect from the menu and show the desired module diagnostic.
Page 223
5. CONFIGURATION Data type Options Description Lists all baud rate possibilities (bits BAUD2400 per second) BAUD4800 BAUD9600 SERIAL_BAUDRATE BAUD19200 BAUD38400 BAUD57600 BAUD115200 SERIAL_DATABITS DATABITS_7 Lists all data bits possibilities. DATABITS_8 Serial Communication Normal Op- SERIAL_MODE NORMAL_MODE eration mode. Serial Communication Extended Operation mode in which are pro- EXTENDED_MODE vided information about the re-...
Page 224
5. CONFIGURATION Data type Options Description Silence due to the previous charac- ter or due to another event which RX_TIMESTAMP has happen before this character (serial port configuration, transmis- sion ending). It has some fields which deliver information regarding RX queue status/error, used when the normal format is utilized (no error and timestamp information): Frame errors counter: character in-...
Page 225
5. CONFIGURATION Data type Options Description Return the parameters with invalid values or out of range: - SERIAL_PORT - SERIAL_MODE ILLEGAL_* - BAUDRATE - DATA_BITS - PARITY - STOP_BITS - HANDSHAKE - UART_RX_THRESHOLD - TIMEOUT - TX_BUFF_LENGTH - HANDSHAKE_METHOD - RX_BUFF_LENGTH Indicates the serial port is being PORT_BUSY used by another instance...
5. CONFIGURATION Data type Options Description The interruption by the CTS sig- nal can’t be enabled in case CTS_INTERRUPT_ the handshake is different from NOT_ALLOWED RS232_MANUAL or in case the serial port doesn’t have the respec- tive pin. The interruption by the DSR signal can’t be enabled in case the serial DSR_INTERRUPT_ port doesn’t have the respective pin.
Page 227
5. CONFIGURATION Output parameters Type Description This variable is true when the block is com- DONE BOOL pletely executed. It is false otherwise. This variable is true while the block is be- EXEC BOOL ing executed. It is false otherwise. This variable is true when the block con- cludes the execution with an error.
5. CONFIGURATION Config.PARAMETERS := Parameters; //FUNCTION: Config(); //OUTPUTS: Config.DONE; Config.EXEC; Config.ERROR; Status := Config.STATUS; //If it is necessary to treat the error. 5.14.1.2. SERIAL_GET_CFG The function block is used to capture the desired serial port configuration. Figure 139: Block to Capture the Serial Configuration Input parameters Type Description...
5. CONFIGURATION Output parameters Type Description In case the ERROR variable is true, the STATUS structure will show the error found during the block execution. The STATUS SERIAL_STATUS possible states, already described in the SERIAL_STATUS data type, are: - NO_ERROR - ILLEGAL_SERIAL_PORT - PORT_BUSY - HW_ERROR_UART...
Page 230
5. CONFIGURATION Figure 140: Block Used to Visualize the RX Queue Status Input parameters Type Description This variable, when true, enables the func- REQUEST BOOL tion block use. Select the serial port, as described in the PORT SERIAL_PORT SERIAL_PORT data type. Table 155: SERIAL_GET_RX_QUEUE_STATUS Input Parameters Output parameters Type...
5. CONFIGURATION PROGRAM UserPrg Get_Status: SERIAL_GET_RX_QUEUE_STATUS; Port: SERIAL_PORT := COM1; Status: SERIAL_STATUS; Status_RX: SERIAL_RX_QUEUE_STATUS; END_VAR //INPUTS: Get_Status.REQUEST := TRUE; Get_Status.PORT := Port; //FUNCTION: Get_Status(); //OUTPUTS: Get_Status.DONE; Get_Status.EXEC; Get_Status.ERROR; Status := Get_Status.STATUS; //If it is necessary to treat the error. Status_RX := Get_Status.RXQ_STATUS; //If it is necessary to treat the error of the RX.
5. CONFIGURATION Output parameters Type Description This variable is true when the block is com- DONE BOOL pletely executed. It’s false otherwise. This variable is true while the block is be- EXEC BOOL ing executed. It’s false otherwise. This variable is true when the block con- cludes the execution with an error.
Page 233
5. CONFIGURATION Figure 142: Block Used to Read the Reception Buffer Values Input parameters Type Description This variable, when true, enables the func- REQUEST BOOL tion block use. Select the serial port, as described in the PORT SERIAL_PORT SERIAL_PORT data type. RX_BUFFER_ Pointer of a byte array to receive the buffer POINTER TO BYTE...
Page 234
5. CONFIGURATION Output parameters Type Description In case the ERROR variable is true, the STATUS structure will show the error found during the block execution. The possible states, already described in the STATUS SERIAL_STATUS SERIAL_STATUS data type, are: - NO_ERROR - ILLEGAL_SERIAL_PORT - PORT_BUSY - HW_ERROR_UART...
5. CONFIGURATION 5.14.1.6. SERIAL_RX_EXTENDED This function block is used to receive a serial port buffer using the RX queue extended mode as shown in the Serial Interfaces Configuration section. Figure 143: Block Used for Reception Buffer Reading Input parameters Type Description This variable, when true, enables the func- REQUEST...
Page 236
5. CONFIGURATION Output parameters Type Description In case the ERROR variable is true, the STATUS structure will show the error found during the block execution. The possible states, already described in the STATUS SERIAL_STATUS SERIAL_STATUS data type, are: - NO_ERROR - ILLEGAL_SERIAL_PORT - PORT_BUSY - HW_ERROR_UART...
5. CONFIGURATION //OUTPUTS: Receive_Ex.DONE; Receive_Ex.EXEC; Receive_Ex.ERROR; Status := Receive_Ex.STATUS; //If it is necessary to treat the error. Receive_Ex.RX_RECEIVED; Receive_Ex.RX_REMAINING; Receive_Ex.RX_SILENCE; 5.14.1.7. SERIAL_SET_CTRL This block is used to write on the control signals (RTS and DTR), when they are available in the serial port. It can also set a busy condition for the transmission, through BREAK parameter and it can only be used if the modem signal is configured for RS232_MANUAL.
Page 238
5. CONFIGURATION Output parameters Type Description This variable is true when the block is com- DONE BOOL pletely executed. It is false otherwise. This variable is true while the block is be- EXEC BOOL ing executed. It is false otherwise. This variable is true when the block con- cludes the execution with an error.
5. CONFIGURATION 5.14.1.8. SERIAL_TX This function block is used to transmit a data buffer through serial port and it is only finalized after all bytes were transmitted or after time-out (generating errors). Figure 145: Block for Values Transmission by the Serial Input parameters Type Description...
Page 240
5. CONFIGURATION Output parameters Type Description In case the ERROR variable is true, the STATUS structure will show the error found during the block execution. The possible states, already described in the STATUS SERIAL_STATUS SERIAL_STATUS data type, are: - NO_ERROR - ILLEGAL_SERIAL_PORT - PORT_BUSY - HW_ERROR_UART...
5. CONFIGURATION 5.14.2. Inputs and Outputs Update By default, the local bus and CPU integrated I/O are updated on every execution cycle of MainTask. The Refresh functions allows to update these I/O points asynchronously at any point of user application code. When the function blocks to update the inputs and outputs are not used, the update is performed every cycle of the Main- Task.
5. CONFIGURATION ERROR_FAILED: This error is returned if the function is called for a module that has only outputs, or also if the option Always update variables (located in the module’s configuration screen, tab I/O Mapping ) is not checked. ERROR_NOTSUPPORTED: The called routine is not supported by the product.
5. CONFIGURATION Input parameters Type Description byRackNumber BYTE Rack number. Position number where the module is con- bySlotNumber BYTE nected. Table 168: REFRESH_OUTPUT Input Parameters Possible TYPE_RESULT: OK_SUCCESS: Execution success. ERROR_FAILED: This error is returned if the function is called for a module that has only inputs, or also if the option Always update variables (located in the module’s configuration screen, tab I/O Mapping ) is not checked.
5. CONFIGURATION 5.14.4. Timer Retain The timer retain is a function block developed for applications as production line clocks, that need to store its value and restart the counting from the same point in case of power supply failure. The values stored by the function block, are only zero in case of a Reset Cold, Reset Origin or a new application Download (see the MasterTool IEC XE User Manual - MU299609), when the counters keep working, even when the application is stopped (Stop Mode).
5. CONFIGURATION Figure 149: TOF_RET Block Graphic Behavior Utilization example in ST language: PROGRAM UserPrg VAR RETAIN bStart : BOOL := TRUE; TOF_RET : TOF_RET; END_VAR // When bStart=FALSE starts counting TOF_RET( IN := bStart, PT := T#20S); // Actions executed at the end of the counting (TOF_RET.Q = FALSE) THEN bStart := TRUE;...
5. CONFIGURATION Input parameters Type Description This variable, when receives a rising edge, BOOL enables the function block counting. This variable specifies the block counting TIME limit (time delay). Table 171: TON_RET Input Parameters Output parameters Type Description This variable executes a rising edge as the BOOL PT variable (time delay) reaches its maxi- mum value.
Page 247
5. CONFIGURATION is (TRUE), otherwise it is (FALSE). The PT time can be changed during the counting as the block assumes the new value if the counting has not finished. Figure depicts the TP_RET and Figure shows its graphic behavior. Figure 152: TP_RET Function Block Input parameters Type...
5. CONFIGURATION bStart := FALSE; // Actions executed during the counting (TP_RET.Q = TRUE) THEN // Executes while the counter is activated ELSE // Executes when the counter is deactivated END_IF 5.14.5. User Log Feature that allows the user to create own records and write to log files on the memory card present in the CPU. The files are generated in a specific directory of the memory card in the CSV format, allowing viewing in text editors and spreadsheets.
5. CONFIGURATION ATTENTION The User Logs are available only until version 1.3.0.20 of Nexto Series CPUs. In the same way to use this feature is necessary version 1.40 or higher of MasterTool IEC XE. 5.14.5.1. UserLogAdd This function is used to add a new user log message, adding in a new line to the log file on the memory card. The message must have a maximum length of 150 characters, and the event type of the message.
5. CONFIGURATION Utilization example in ST language: PROGRAM UserPrg eLogError : USER_LOG_ERROR_CODES; END_VAR (m_DeleteLogs = TRUE) THEN eLogError := UserLogDeleteAll(); m_DeleteLogs := FALSE; //eLogError variable gets possibles function errors. END_IF ATTENTION The UserLogDeleteAll function’s return does not indicate operation completed, just confir- mation of execution that can take a large amount of time if there are hundreds of log files in the directory.
5. CONFIGURATION PROGRAM UserPrg ClearEventQueueStatus : TYPE_RESULT; END_VAR ClearEventQueueStatus := ClearEventQueue(); 5.15. User Web Pages Also called Web Visualization, or simply Webvisu, this feature allows to implement a simplified SCADA embedded into the PLC. The Visualization screens are developed on the same enviroment of the PLC application using MasterTool IEC XE. Once the application is downloaded, the PLC starts a web server hosting this special web page.
Page 253
5. CONFIGURATION Parameter Description TRUE: The values of the input and output channels are also refreshed when the PLC is in STOP mode. If the watchdog de- Refresh I/Os in stop tects a malfunction, the outputs are set to the predefined default values.
5. CONFIGURATION 5.17. Firewall The Firewall is designed to increase the security of the device while it is in use. The main function of the Firewall is to filter data packets coming into and leaving the device. The implemented filter uses information from each data packet to decide whether that packet is allowed.
Page 255
5. CONFIGURATION Figure 158: Firewall General Settings Table This table expands dynamically by selecting the options to enable UDP and TCP packet filters, revealing all the items that can be configured. The first item in this table, Enable Firewall, is used to enable and disable this functionality. When the Firewall is enabled, the web page settings, when submitted to the device, will be applied to the configuration files, and then the Firewall will filter what has been configured.
5. CONFIGURATION 5.17.3. User Rules The User Rules table was created to allow greater control over the firewall’s rule settings. With it, you can configure different rules dynamically and with more precise filters. Figure 159: Firewall User Rules Configuration Table This table changes its format according to the selected Source Type, which can be IP or MAC.
5. CONFIGURATION The HTTP port 80 can only be set by selecting it from the list of known protocols and cannot be applied to the NET 1 interface. So if the HTTP protocol is chosen, the Interface field NET 1 and Any won’t be selectable. In the Protocol field, you can select between UDP, TCP, and UDP|TCP protocols.
5. CONFIGURATION The main purpose of a VPN is to communicate securely over an unsecured network. To make this possible, data encryp- tion is used based on certificates and keys generated using TLS, Transport Layer Security, a protocol that performs 256-bit encryption, one of the most secure.
5. CONFIGURATION This section shows how OpenVPN configuration is performed. The settings will be divided into three parts: settings common to both operating modes, settings unique to a server, and settings unique to a client. 5.18.2.1. Common Configurations Looking at the figures with the client configurations, figure 163, and the server configuration, figure 162, you can identify that several parameters are the same for both configurations.
5. CONFIGURATION All security files are required for correct communication to be established between clients and the VPN server, except for TAP Key. This key is optional for communication, but if it is used on the server, it becomes mandatory for all clients on the server.
Page 262
5. CONFIGURATION Figure 164: OpenVPN Private Network Configuration Table To configure a private network that is below the server, simply select the network type as Server and configure the network addresses and mask. Configuring a private network for a client requires, in addition to setting the type as Client, to enter the Common Name of the client that owns the network being configured.
Figure 165: Architecture Example with Private Networks In the example picture, the NX3008 on the left has a private network 80 configured on its NET 2, and connected to it is an NX3003 on the same network. The NX3008 on the right has a private network 70 configured on its NET 2 and connected to it is an HMI, on the same network.
5. CONFIGURATION 5.18.3. Security Files Security files are used to establish OpenVPN’s communication securely by performing the role of encrypting and decrypt- ing the data packets that will travel through the VPN tunnel. In the TLS Key and Certificate Management section, it is described how to generate TLS keys and certificates.
Page 265
5. CONFIGURATION Figure 167: OpenVPN Status Table with Feature Disabled When VPN is disabled, the table has few parameters. The field Current State indicates whether the VPN is enabled or not, and the other fields show which certificates and keys are configured for VPN communication. If one of the security files has not been selected, the character "-"...
5. CONFIGURATION When the functionality is enabled and the settings are applied on the device, the table has its cells dynamically modified so that the remaining information is displayed. Information about the OpenVPN connection status can be found in the first two topics of the list.
5. CONFIGURATION 5.18.6.1. Host-to-Host Figure 170: Example of Host-to-Host architecture This topology allows the connection between two VPN hosts. Both hosts can be chosen to be configured as the server, then the other should be configured as the client, or both hosts can be configured as clients and have a third host that will be the server for the VPN network.
5. CONFIGURATION 5.18.6.3. Site-to-Site Below is a picture that represents a Site-to-Site connection: Figure 172: Example of Site-to-Site architecture This topology allows the connection between two VPN hosts, both of which acts as a gateway to the VPN network. Through these gateways, access is provided to establish communication between hosts A1, A2, B1, B2, Gateway A, and Gateway B.
6. MAINTENANCE 6. Maintenance One feature of the Nexto Series is the abnormality diagnostic generation, whether they are failures, errors or operation modes, allowing the operator to identify and solve problems which occurs in the system easily. The Nexto CPUs permit many ways to visualize the diagnostics generated by the system, which are: One Touch Diag Diagnostics via LED Diagnostics via WEB...
Page 270
6. MAINTENANCE the IEC 61131-3 standard), in other words, the name attributed to the CPU, and after that all diagnostics are shown, through CPU display messages. This process is executed twice on the display. Everything occurs automatically as the user only has to execute the first short touch and the CPU is responsible to show the diagnostics.
6. MAINTENANCE The table below shows the difference between the short touch time, the long touch time and stuck button. Touch type Minimum time Maximum time Indication condition No touch 59.99 ms Short touch 60 ms 0.99 s Release Long touch 20 s More than 1 s till 20 s Diagnostics indication, see...
6. MAINTENANCE 6.1.2.2. WD (Watchdog) Red LED Description Causes Priority No watchdog indica- Normal operation 3 (Low) tion User application Blinking 1x Software watchdog watchdog Damaged module Hardware watchdog and/or corrupted 1 (High) operational system Table 181: Description of the Watchdog LED States Notes: Software Watchdog: In order to remove the watchdog indication, make an application reset or turn off and turn on the CPU again.
Page 273
6. MAINTENANCE Figure 175: Initial Screen There is also the “System Overview” tab, which can be visualized through the Rack or the present module list (option on the screen right side). While there is no application on the CPU, this page will display a configuration with the largest available rack and a standard power supply, connected with the CPU.
6. MAINTENANCE Figure 177: System Diagnostics In case the Status tab is selected, the state of all detailed diagnostics is shown on the screen, as illustrated on Figure 178: Figure 178: System Status The user can choose to visualize two language options: Portuguese and English. Simply change in the upper right part of the screen to the desired language.
6. MAINTENANCE - Accessing the “Diagnostic Explorer” option in the device tree, placed on the MasterTool IEC XE screen left, and putting the correct IP in the field indicated on Figure 179. Remembering that for the diagnostics page to be shown, the user must be connected to the CPU ( Initial Programming –...
6. MAINTENANCE 6.1.5.1. Summarized Diagnostics The table below shows the meaning of each CPU summarized diagnostic bit: Diagnostics Mes- Variable Direct Variable Description sage DG_Module.tSummarized.* Variable There is no active diagnostic. NO DIAG TRUE – There is a configuration problem CONFIG.
Page 277
6. MAINTENANCE Diagnostics Mes- Variable Direct Variable Description sage DG_Module.tSummarized.* Variable TRUE – Some error occurred during, or af- COM1 CONF. bCOM1ConfigError ter, the COM 1 serial interface configura- ERROR tion. FALSE – The COM 1 serial interface con- figuration is correct. TRUE –...
Software Exception: In case the software exception diagnostic is true, the user must verify his application to guarantee it is not accessing the memory wrongly. If the problem remains, the Altus Technical Support sector must be consulted. The software exception codes are described next in the CPU detailed diagnostics table.
Page 281
6. MAINTENANCE Vari- Direct representation Size Description able_Modulo.tDetailed.* Warm Startup Counter: It will only be in- cremented during the sequence of system RetainInfo. %QW(n+32) WORD powerups and not due to the MasterTool IEC wCPUWarmStartCounter XE Hot Reset command. (0 to 65535). Counter of resets performed by RTS (Runtime RetainInfo.
Page 282
6. MAINTENANCE Variable Direct representation Size Description DG_Modulo.tDetailed.* The received frame has the mismatched parity Serial.COM1. %QW(n+61) WORD bit. wParityErrorCounter The received frame has the wrong start point, Serial.COM1. %QW(n+63) WORD usually caused by a noise or baud rate mis- wFrameErrorCounter match.
Page 283
6. MAINTENANCE variable Direct Representation Size Description DG_Modulo.tDetailed.* The transmitter is holding the data line at zero USB.tSerialConverter. %QW(n+160) WORD for too long, according to the databit config- wBreakErrorCounter ured. The received frame has the mismatched parity USB.tSerialConverter. %QW(n+162) WORD bit.
Page 284
6. MAINTENANCE variable Direct representation Size Description DG_Modulo.tDetailed.* Counter of packets sent via the NET[x] port (0 Ethernet.NET[x]. %QD(n+485+([x]-1)*139) DWORD to 4294967295). dwTransmittedPackets Connection loss counter on transmission over Ethernet.NET[x]. %QD(n+489+([x]-1)*139) DWORD the NET[x] port (0 to 4294967295). dwTransmittedDropErrors Transmission collision error counter over Ethernet.NET[x].
Page 285
6. MAINTENANCE variable Direct representation Size Description DG_Modulo.tDetailed.* Status of the Memory Card: MemoryCard. %QB(n+823) BYTE 00: Memory card not mounted byMounted 01: Memory card inserted and mounted Protection level of the Memory Card: Data MemoryCard. %QX(n+824).0 reading of the memory card by the authorized bMemcardtoCPUEnabled CPU.
Page 286
6. MAINTENANCE Code Enumerable Description Application in Stop Mode due to Absent Modules diag- nostic being set when the Hot Swap Mode is "Enabled, ABSENT_MODULES_HOT_SWAP_ with startup consistency" or "Enabled, with startup con- STARTUP_CONSISTENCY sistency for declared modules only". Application in Stop Mode due to Incompatible Config- uration diagnostic being set when the Hot Swap Mode CFG_MISMATCH_HOT_SWAP_ is "Enabled, with startup consistency"...
Page 287
6. MAINTENANCE vari- Direct representation Size Description able_Modulo.tDetailed.* Each bit represents an identification number of Rack. %QD(n+1094) DWORD a rack, if any bit is TRUE, it means that the rack, dwAbsentRacks with that identification number, is absent. Each bit represents an identification number of a rack, if any bit is TRUE, it means that more Rack.
Page 288
6. MAINTENANCE variable Direct representation Size Description DG_Module.tDetailed.* RSTP.aBridge.aBridge[x]. %QX(n+1146+[x]*107).0 Indicates if the RSTP protocol is enabled. bProtocolEnabled RSTP.aBridge.aBridge[x]. %QB(n+1146+[x]*107.1) Indicates if the Bridge is root. bBridgeIsRoot RSTP.aBridge.aBridge[x]. %QB(n+1147+[x]*107) BYTE Indicates the protocol version. eProtocol STRING RSTP.aBridge.aBridge[x]. %QB(n+1148+[x]*107) Local bridge ID (priority and MAC). (22) sBridgeId STRING...
6. MAINTENANCE 6.1.6. Diagnostics via Function Blocks The function blocks allow the visualization of some parameters which cannot be accessed otherwise. The function regard- ing advanced diagnostics is in the NextoStandard library and is described below. 6.1.6.1. GetTaskInfo This function returns the task information of a specific application. Figure 180: GetTaskInfo Function Below, the parameters that must be sent to the function for it to return the application information are described.
6. MAINTENANCE PROGRAM UserPrg sAppName : STRING; psAppName : POINTER TO STRING; sTaskName : STRING; psTaskName : POINTER TO STRING; pstTaskInfo : POINTER TO stTaskInfo; TaskInfo : stTaskInfo; Info : ERRORCODE; END_VAR //INPUTS: sAppName := 'Application'; //Variable receives the application name. psAppName := ADR(sAppName);...
Page 291
MSG. ERROR requested module(s). Indicates the product presented an unexpected problem. Get in SIGNATURE MISSING contact with Altus Technical Support sector. Indicates that occurred an error in the application and the Run- APP. ERROR RESTARTING time is restarting the application.
6. MAINTENANCE Message Description RECEIVING FIRMWARE Indicates the updating file is being transferred to the CPU. UPDATED Shows the firmware version updated in the CPU. Indicates an error has occurred during the CPU firmware updat- UPDATE ERROR ing, caused by communication failure or configuration problems. Indicates the CPU is being restarted for the updating to have REBOOTING SYSTEM...
Is the respective communication protocol correctly configured in the CPU? Are the variables which enable the MODBUS relations properly enabled? If no problem has been identified, consult the Altus Technical Support. 6.6. Troubleshooting The table below shows the symptoms of some problems with their possible causes and solutions. If the problem persists, consult the Altus Technical Support.
7. APPENDIXES 7. Appendixes 7.1. TLS Key and Certificate Management This section covers the generation of security files, certificates, and keys using TLS. The certificates commented on below are signed by CA. This type of certificate considers an entity, called Certificate Authority (CA), to generate the certificates. This entity can be an official authority service or a simple computer.
Page 295
7. APPENDIXES 2 - Copy the file vars.example and rename it to vars in the tools folder. Figure 184: Certificate Generation using Easy-RSA (step 2) 3- Open the file vars with a text editor and change the Certification Authority information. Figure 185: Certificate Generation using Easy-RSA (step 3) 4- Use the command ./easyrsa init-pki to prepare the configuration.
Page 296
7. APPENDIXES Figure 186: Certificate Generation using Easy-RSA (step 4) 5- Then type ./easyrsa build-ca nopass to generate the CA certificate. Remove the nopass argument if you want to set a password for the file. Enter the common name of the CA certificate when prompted (press enter to use the default Easy-RSA CA as the common name).
Page 297
7. APPENDIXES Figure 188: Certificate Generation using Easy-RSA (step 6) 7- Finally, type ./easyrsa sign-req server DeviceName to generate the device certificate. The DeviceName is the desired common name, and the server is the type (use client if you are generating for a VPN client). Figure 189: Certificate Generation using Easy-RSA (step 7) 8- Repeat steps 6 and 7 to generate more device certificates.
7. APPENDIXES Figure 190: Certificate Generation using Easy-RSA (step 9) 7.1.2. OpenSSL Certificate Generation OpenSSL is an open-source package with tools that help generate many files and security features. This package is native to most Linux distributions and is available for Windows. Just remember to set the OpenSSL folder in the PATH (environment variable) to allow you to use the command from anywhere via the prompt.
Page 299
7. APPENDIXES 4- Now generate the device’s private key, similar to step 2, using the command openssl genrsa -out DeviceName.key 2048. Figure 193: Certificate Generation using OpenSSL (step 4) 5- After that, generate the certificate request file based on the private key using the command openssl req -new -key DeviceName.key -out DeviceName.csr.
7. APPENDIXES 7.1.3. TA Key Generation by OpenVPN The OpenVPN project provides a tool for generating a TLS key, commonly called ta.key. This key is an extra layer of protection on OpenVPN’s UDP/TCP communication ports, so the use of this key can be interpreted as an HMAC Firewall for VPN communication, requiring the existence of the parameter on both sides of the communication for it to be established.
Need help?
Do you have a question about the NX3008 and is the answer not in the manual?
Questions and answers