Home
Manual Monitoriza
Contents
1. vr An important issue is that the images shown in Panellmagenes can have transparent areas allowing us to put more controls ImagesPanel overlapping each other and to display the images that are provided under the above transparent For example suppose we have these three images of the Acimut Monitoriza Image Library We can combine putting a few before others to get this other figure thanks to the parts that are transparent In this case transparency is achieved because the images used are created in vector wmf format and is only a few solid areas concerned If we want a bitmap image have transparency we define the image with the alpha channel with value 0 The main properties of this control are Pag 51 MONITORIZA e Server Group Variable and UseBit Used to refer to the PLC variable depending on the communications server the group that is defined and the symbolic name we give to the variable additionally set the property UseBit if we want to refer to a bit in particular e Images Images property allows us to define the collection of images that we associate with the variable for this operation we will use in the editor of the collection of images in which we will define the variable ranges and images that we associate with each value Propiedades de Rango 0 SANE Illustration 49 Image Collection Edit Window Also the images are affected by the Rotate Property which
2. ACIMUT_ES esanchi ACIMUT_ES esanchi ACIMUT_ES esanchi AcTRaLIT ren VCDDaemon exe 1 1 1 1 1 ACIMUT_ES esanchi 1 1 1 1 1 58282383 vmware tray exe JATMANAINON PY E A Mom cloro dro FAA des de corner F Show processes from all users F Show processes in all sessions a P m r ie Find Symbol Results E Output 4j Task List 3 Pending Checkins 44 Error List Ready Ln3 Col 73 Ch73 INS User Manual Pag 93 We also have set a breakpoint in our function when we click the button code stops and will show in Visual Studio where we can examine the contents of variables step through and any other functionality that give us Visual Studio 6 SA ClaseMonitoriza Debugging Microsoft Visual Studio Administrator J nn s File Edit View Project G a Class1 vb4 Tools Test Window Help 7 7 Aaga Build Debug Go alal ae Ira Hig sal ClaseMonitoriza mw MsgBox E Public Class End Sub End Class Public Sub MsgBox ByVal sender As Object ClaseMonitoriza ByVal e As EventArgs sender El 4 sender Text Boton1 Tm 4 Controles Boton Text Boton1 sayuado1d k J8J0 dx3 UONNIOS R Ma Breakpoints 1 Call Stack Immediate Window Error List 3 Pending Checkins Find Symbol Results E Output 38 Ready Ln 3 Col 52
3. User Manual Pag 21 Propiedades de Grupo3 e EN El E OPC Group IsSubscribed Name UpdateRate Variables Illustration 26 OPC Group The properties that define a group of an OPC server are e IsSubscribed Indicates that this group of variables will be read continuously If we define a group with only variables that will be written and read is not needed leave this property to False eName Name of the group and should be as descriptive as possible for organizational reasons e UpdateRate If is suscribed property is True will indicate the rate for reading in milliseconds for each group It is advisable to adpat this value to the type of communication available e Variables The property through which we can enlist the variables used Once we have defined the group we can define variables or records to do it in the same window we have the property Variables in which if we click on the three point button property appears the definition window for variables or registers MONITORIZA ACIMUT S L PAG 22 MONITORIZA Editor de Grupos Editor de Variables Miembros Propiedades de Registro 1 Registro A A Bu as a E Alarms Active Alarms Alarms E Features Sign Value type E Permissions Authentication Required RequiresAudit Scaling Scaling E Simulation Maximum Value Minimum Value Period Value Simulation Type E Variable Name PLC Variable Active A
4. accedemos a las varlables Microsoft VisualBasic MsgBox Variables formul Variables Count Microsoft VisualBasic MsgBox Variable Servidor Grupol Registrol formul Variables Servidor Grupol Registrol accedemos a los componentes Microsoft VisualBasic MsgBox Componentes id amp formul Componentes Count Dim temp As Controles Temporizador temp formul Componentes Temporizadorl Microsoft VisualBasic MsgBox Interval de Temporizadorl dl amp temp Interval End Sub End Class MONITORIZA ACIMUT S L PAG 96 CONTROL LIBRARY User Manual In the same way that we can bind external code to the events in the monitoriza controls also is possible to include controls designed in an external application inside Monitoriza itself These are UserControls In order to use these controls we must create a Windows Forms Control Library in Visual Studio 6 PruebaControlMonitoriza Microsoft Visual Studio File Edit View Project Build Debug Data Format Tools Window Help deca 444 a3a a lt S Ae a CS Ce AAA AE UserControl1 vb Design xoqioo 134 3 Error List 5 Pending Checkins Creating project PruebaControlMonitoriza project creation successful In this library we must add the controls we want to use later in Monitoriza In order to use these controls in Monitoriza we must to add a reference to Monitoriza s Controles dll Project Add reference and in each control we must
5. MyMailMessage Subject Start Alarm Grupol Registrol Dimis t neod as string strBody String Format 0 The variable Grupol Registrol has reached the value 1 Now clsVariables Variables ModBusTCP1 Grupol Regis ao do MyMailMessage Body strBody Create the SmtpClient object and specifies the user s credentials Dim SMTPServer As New SmtpClient smtp gmail com SMTPServer Port 587 SMTPServer Credentials New System Net NetworkCredential usuario gmail com contrase a SMTPServer EnableSsl True Send the message Ale SMTPServer Send MyMailMessage Catch ex As SmtpException MessageBox Show Ex1 amp ex Message ol Tiy Catch ex2 As SmtpException MessageBox Show Ex2 amp ex2 Message End Try End Sub Ena Class End Namespace Pag 33 CREATE FORMS In Acimut Monitoriza Scada to create a project the minimum needed is to define the communication servers with PLC and the user interface To create the user interface we can design as many forms as we need for our project and for this we will add any of the controls that are displayed in the Toolbox window in any of the tabs Scada Design Windows and User Controls Also we can add controls by dragging directly from the Variables window the desired variable as we can see in a later example To add a form to a project click the button on the toolbar shown below F A fu a amp a Or select New Form from the File Menu E M
6. The ImageList control is used to store images that can be displayed in other controls You can use an image list with any control that has a property ImageList The main properties of this control are e ColorDepth Gets or sets the number of colors used to render the image of the image list This property must be established before the Images property e ImageSize Image size in pixels This property must be established before the Images property e Images Collection of images stored in the ImageList IndicadorAnalogico The function of this control is to show the value of a variable visually having an analog representation of the variable usually when we know the range of values for a variable and want to make a graphical representation of it The control has the ability to store the maximum value it reaches in the corresponding session or while the application is running not permanently stored If you want while running the application you can restore the maximum by clicking on the control You can programmatically invoke the Reset method to reset the control maximum The main properties of this control are MONITORIZA ACIMUT S L PAG 44 MONITORIZA User Manual e ArrowColor Gets or sets the display color of the arrow indicating the value of the variable e Decimals Number of decimal digits shown in the numbers on the scale of values e StoreMaximum Set to True if you want to display dur
7. ACCESSING MONITORIZA CONTROLS PROPERTIES As seen in the example above when we have to get or change properties of a control we do not have Intellisense but it is also easy to fix and have all the help provided by Visual Studio 6 To do this in the project we will add a reference to the library Controles dll that is in the directory where you installed the Client Monitor Scada exe Microsoft VisualBasic r itoriza Mi i ini 5 A ClaseMonitoriza Microsoft Visual Studio Administrator 4 500 ane a File Edit View Project Build Debug Data Tools Test Window Help qeda das aalas Pra a Pinares Sp e 5 CaseMonitoriza Start Page Classl vb x A ca o o 2 a S Application S o o N A v tf N A lu Compile 3 2 3 O A oO IE ET B 1 E References Reference Name Type Version Copy Local Path 4 Controles NET 1 0 3341 32046 True ENS 3 hoj Bi Pesos System NET 2 0 0 0 False CA ua J System Core NET 3 5 0 0 False Ci S wo Services 3 System Data NET 2 0 0 0 False Ci Settings System Data DataSetExtensions NET 3 5 0 0 False CA JE System Xml NET 2 0 0 0 False CA y s Signing System Xml Linq NET 3 5 0 0 False cl g My Extensions Imported namespaces 3 Microsoft VisualBasic System CGurtam Onllartinne El Y J Aj Task List E Output Ready 3 Pending Checkins 43 Find Symbol Results Error L
8. In the same window there is also a button labeled Import used to assign an image control that we have but not is incorporated into the Library The images that incorporate the control using the Import button increase the size of the project based on the number of times you use it User Manual Pag 71 MONITORIZA To create the image library for the project select the option Image Library on the View menu as shown below Ventana Propiedades Servidores Usuarios Configuraci n Comunicaciones Libreria de Personalizaci n Libreria de Im genes Referencias Cruzadas N mero de Variables 2 Plantillas de Recetas The following screen appears Libreria de Imagenes a Illustration 58 Image Library Creation The first thing we must do is define the categories in which we classify our images At least we define a category To set up categories and click the Edit button window appears the categories screen MONITORIZA ACIMUT S L PAG 72 User Manual Illustration 59 Category Window In which we introduce each of the categories and press the button to close the window From then on the category drop down we will select the category to assign the image you want Libreria de Imagenes Once selected you have the Add Image button to select the image you want to add and the Remove button to delete an image that we added to the Library Project The type of images that are acc
9. One feature that Acimut Monitoriza that helps in the form design is the Image Library In one hand the Image Library is a set of clip art by Acimut that can be used freely in any project that we develop and the in the other hand has the possibility of creating our own image library project having categorized and readily available images ready for use Another advantage of the Image Library is that if we use the images in the Library the project stores only a single instance of the image regardless of how often we use it which makes the size of our projects are not unnecessarily increased Images of the Library Art by Acimut are part of the facility and therefore do not increase the size of your project simply makes a reference to the image Controls in Acimut Monitoriza that are capable of using this feature are e BotonEstado e Panellmagenes e Imagen When setting the Picture property of the image collection and BotonEstado or property Panellmagenes Picture in Picture control us a window like this is shown Selecci g Seleccione imagen Im genes Proyecto Librer a Im genes Monitoriza Categoria Illustration 56 Select an image from Image Library This has two tabs to determine the source of the image The project images which contained all the images that we have added to the project and the Monitoriza Library tab that shows all the images of the library provided by Acimut
10. when you click on a control LinkLabel opens Internet Explorer and navigate to the address specified by the URL property LinkLabel control is not associated with Scada variables and therefore can not represent any value Panellmagenes Panellmagenes control allows us to display different images depending on the value of a variable For example we can make the control Panellmagenes to show next image if the value of the variable is less than 150 To assign the images we use the images property and using the Image Collection Manager we will define the images and values that we want to display Acimut Monitoriza features a wide variety of predefined images in the Image Library enabling us to make some attractive designs Some of these images are shown in the following figures Seleccione imagen O Im genes Proyecto Librer a Im genes Monitoriza Categoria depositoAverde MEN MONITORIZA ACIMUT S L PAG 50 User Manual A m e mae _ e b Im genes Proyecto Libreria Im genes Monitoriza Categoria Tuber as Vectoriales 5 Valvula2 Abierta Azul Valvula2 Abierta Cobre Valvula2 Abierta Verde a d br Valvula2 Cerrada Azul Valvula2 Cerrada Cobre Vertical Amarillo Vertical Azul
11. Grupo5 H Servidor_RTU fA Servidor_OPC Bl Servidor Natne Illustration 52 Test the project By choosing the Server option the application runs a Monitoriza Server that performs all communication tasks with PLC s and devices and then it displays a Scada Client with our interface for the scada This way of testing is the most accurate to the production environment and the server connects to the real devices The only difference between a real environment and this testing environment is that while in production we usually have the server and the client in different machines in testing all applications editor server and client are running in the same machine Once we have chosen an option Server or Simulator the project editor stores the preferred option and we can simply click on the Play button to run it again without having to display the options menu If we choose the simulation option is because we have no access to devices or simply want to test for navigability between the forms in the user interface In the simulation there is no connection with PLC and therefore there are not real values of the variables This is a fairly situation Acimut s Monitoriza gives us the option to simulate variable values using a form in which we can assign values to variables to see if our development is behaving as we expect if an alarm is triggering while we had planned for example While the definition of the vari
12. Illustration 17 Servers Menu Or Servers button in the Variables window MONITORIZA ACIMUT S L PAG 16 Archivo Editar Ver Herramientas OA XL aa E Illustration 18 Servers And we will get the dialog for the definition of the servers Edi Servidores Modbus RTU ModBus TCP Servidor_TCP Illustration 19 Server Definition Demo http www acimut com monitoriza videos definir servidores default html A new project needs at least one server here is the list of different server types Monitoriza have native communication servers with PLCs Modbus RTU Modbus TCP and ISO Simatic S7 and third party servers as OPC this allows you to connect a multitude of devices If you want to store a history of variable values and or a history of alarms that occur in the system we define one or more database servers in which we will establish the database used The definition of data servers will be shown in detail in Section Save Database Another possibility is to define an internal data server Server Type Interno by this server can specify a set of variables that are independent of the variables of the PLC but can serve to store values such as configuration parameters or values calculated Each communication servers with the PLC will have different properties as discussed below Pag 17 MONITORIZA ModBUS RTU The different properties of a MODBUS RTU server type are shown below These
13. The possible values are None Solid Horizontal Vertical ForwardDiagonal and BackwardDiagonal None and Solid choices produce a solid color fill using respectively the BackColor and ForeColor to fill Options Landscape Portrait ForwardDiagonal and BackwardDiagonal fill with a color gradient in the direction specified by the option FillColorStart Start color of the gradient filling FillColorEnd End color of the gradient filling Thickness Width of the line border CornerRadius Radius for rounded corners User Manual Pag 63 Rotulo Rotulo control provides the ability to display text in any direction and with a filling color that can be either solid color with a gradient To rotate the label in any direction we have two options set the Angle property to the value we want or use the Form Editor as with the control line lf you drag this handle when we release the handler the label will be drawn in the direction specified nn The ability to turn the label using the front handle allows us to set the Angle property easily Another useful tool when designing a label are the vertical and horizontal indicators these indicators are displayed when you are moving the label by its handle and the label is parallel to one of the coordinate axes as shown in the following images Demo http www acimut com monitoriza videos mover_rotulo default html Due to the transparency feature of the Rotulo control for s
14. Numero de bit a utilizar Illustration 33 Alarms property window Let s look in detail by examining each of the properties of the alarm e Store Defines if the alarm will be stored In order to store the alarms we must to define an additional database server with the property Alarms established e Alarm Message Alarm message displayed when activated e AlarmGroup Permission group linked to the alarm e Validate If set to True will require a user to validate in order to hide it in the window display when no alarm is active For a properly work in validation it is necessary to store the alarm We will see how to define the database table and fields in the Save Database point e Evaluate by Sets the comparison condition that determines when the alarm is active The possible values are Equal MoreThan LessThan and Distinct e TypeValue The possible values are constant and variable Constant is used if the EvaluateBy property is to compare a absolute value this value is defined in the value property If we want to fire the alarm comparing whith another variable in the system we must to set the TypeValue property to Variable and the properties Server Variable and Group will be used to set the variable used in the comparation e Value Set the value to apply the condition evaluation for the alarm For example if we are monitoring the temperature and we define the property value to 40 and assesses property for a Gr
15. Server Group and Variable and therefore can t represent the data binded whith these variables Their inclusi n in the toolbox is due to the possibility of providing additional functionality to the Scada controls using Programming and Extensibility that is implemented in these windows controls A brief description of each control CheckBox CheckBox CheckBox control is used to make easy to the user choose between true and false values User Manual Pag 65 CheckedListBox CheckedListBox control allows to show a list of items with a checkbox associated with each item in order to define the selected items ComboBox ComboBox control allows to show a dropdown list of items ComboBox control has two parts one part is always visible allowing the user to type like in a textbox and a second part that is a normally hidden listbox that we can expand to select an item from the list 14 12 2009 Gy 4 diciembre de 2009 lun mar mi jue vie s b dom 30 1 2 3 4 5 6 7 8 9 10 ili 12 13 15 16 17 18 19 2 22 2 23 24 2 2 27 28 29 30 31 1 2 3 4 5 6 7 8 9 10 C_ Hoy 14 12 2009 Date TimerPicker DateTimerPicker control allows the user to select a date or a time GroupBox GroupBox control is used to Group other controls There are two main reasons to group controls Create a visual grouping of the controls in order to create a more useful interface Create a grouping functionality like including sever
16. a variable Once we have assigned a control type to the variable each time we drag that variable a control of this type is created in the desired form MONITORIZA ACIMUT S L PAG 36 Archivo Editar Ver Herramientas Ayuda PE A i EALA Ee GB BRS r OOS Another useful action we can do is to drag a variable but dropping it on an existing control This action will cause the target control the one on the form acquire the Server Group and Variable properties from the dragged variable If we drag the variable on a control type without the mentioned properties nothing occurs MONITORIZA CONTROLS Controls that can be used are in the ToolBox in any of the tabs Scada Design Windows or User Controls User Manual Pag 37 Ine Puntero CheckBox E CheckedListBox lle Puntero Boton A Rectangulo EJ ComboBox BotonEstado R Rotulo T DateTimePicker A Etiqueta GroupBox GrupoOpciones da HScrollBar al ImageList lt ListBox MonthCalendar NumericUpDown Panel PictureBox IndicadorAnalogico iii IndicadorLCD IndicadorLeds TE IndicadorNumerico mj Level A LinkLabel L Panellmagenes mj ProgressBar wr Recipe TecladoNumerico Temporizador 5 Tendencia bl Texto TextoConMascara h ToolTip 0 TrackBar RadioButton TabControl 25 RichTextBox VScrallBar EF WebBrowser BS ToolBox ES Variables All these controls can be dragged to
17. click the button a value is binded to the variable asigned to the control in the Monitoriza Project That is frm Variables Me Servidor Me Grupo Me Variable ValorAEscribir Once we have the control the way we want and the project is builded Project Build we must include the DLL in Monitoriza for this we must use the References form MONITORIZA ACIMUT S L PAG 98 MONITORIZA Referencias Eventos Controles 3 3 Referencias wi PruebaControlM onitoriza gregar Libreria CAM onitorizapruebas USERCONTROL PruebaCo ntrolM onitoriza PruebaControlM onitorizabintRelea se PruebaControlMonitoriza dil C Incluir informaci n de depuraci n Cerrar Validating the form in the toolbox appears a new control in the User Controls Group ToolBox Dise o Windows Controles Usuario Ejemplol This control can be used like each other native in Monitoriza Once included in the desired form we must compliment the Scada properties Server Group Variable etc and the control is ready to use dEl Formulario Control de flujo Control de flujo UserControls can access to variables and components from Monitoriza like Events Dil do To do this we must use the same method indicated in Accesing variables and components CROSS REFERENCES Acimut Monitoriza includes a useful application named Cross References in wich is possible to check where are used the v
18. of the property e UseBit Bit number to use in the variable Text may display O or 1 depending the value of the variable e Value Value of the variable associated with Server Group and Variable e Messages Using this property we can make the control to display different messages depending on the value of the variable bound to it using the Messages Collection Editor to establish the ranges that we want use to show each of the messages Miembros Y Rango 0 1 Rango 5 2 Rango 10 For each of the possible messages we must set the properties Range Message BackColor and ForeColor being Range the highest rank value below MONITORIZA ACIMUT S L PAG 42 MONITORIZA which we want to show the message Message the text message will be displayed and BackColor and ForeColor colors of background for label and text respectively e Validations Validations property allows us to define a set of conditions on the value of the variable that is bound to the control so if running the project value met any of these conditions will display a notice at the control for example we can design a form as the following figure al Panel Temperatura 95 Y Precauci n temperatura excesiva Where two labels have been defined one with a fixed text and one linked to a variable with a property defined in Validations Collection Editor as shown in the figure below Miembros Y Precauci n temperatura ex
19. properties set the parameters for serial communication and the number of slave to connect to a ModBUS environment lt should be noted that Monitoriza establishes connections ModBUS as a master Illustration 20 RTU ModBUS TCP The properties of a MODBUS TCP server type E Server IPAddress Are the IP address of Modbus devices in an SlaveNumber 1 Ethernet environment is needed and the number of El TCP Groups slave to connect to a ModBUS environment It Groups Grupos should be noted that Monitoriza establishes connections ModBUS as a master The use of slave number allows access gateways Illustration 21 TCP OPC OPC stands for OLE for Process Control it E OPC Groups is a standard defined by Microsoft which Groups Grupos aims to unify methods of communication with Server all types of devices because of its good Driver acceptance by various manufacturers we Node can say that there is an appropriate OPC Type server for any device that is in the market The properties that allow us to connect to an OPC server are as follows Illustration 22 We begin by describing the last of these properties the Type this is the name that the manufacturer has given its OPC server a dropdown will allow us to choose between the OPC server installed on your machine or in a computer in our network using Node you must have the proper permissions it is operating system dependent there is abundan
20. saved the project MONITORIZA ACIMUT S L PAG 14 MONITORIZA Scada Acimut Demo aut mata ModBusTC Archivo Editar Ver Herramientas Ayuda Dees 9 KB gt SRST Se el e aa 2 alo wv Variables Formulario2 Explorador Servidores CO AAA E Demo aut mata ModBusTCP p m Ere a Formulario j r a Sa Grupo1 j a Grupo5 fi Servidor_RTU E 118 Servidor_OPC g Servidor_Datos E all Formulario E ToolBox Variables E illustration 14 Auto hide a window Demo http www acimut com monitoriza videos editor2 default html In the Tools menu we have a couple of options that help us in design tasks In this menu we have the Options item Opciones Dise SnapLines i 8 8 GridSize The options of this menu are Layout Mode We can choose between Snaplines default that uses the advanced positioning features of Microsoft applications the other possible value is Grid in order to use the classical grid allowing us to set the size between dots using GridSize property We can choose the options for the grid using the properties ShowGrid Show or hide the grid in design mode SnapToGrid If we want to snap the controls to the grid or not User Manual Pag 15 CREATE A PROJECT STARTING To create a project using the Monitoriza editor at least we must define a communications server with PLC the variables that we want acce
21. they have permission to do it To understand how it works it is appropriate to complement this information with the _ chapter related to recipes and batch control The main properties of this control are e Template Here we specify what recipe template will use this control e SendToPLC Indicates if from this control can be uploaded a recipe in the PLC During execution you try to load a recipe if any problems occur or not comply with some requirements of the recipe some elements of the grid will show in red otherwise the color will be green e ReadOnly Indicates if the control allow to edit recipes The control buttons have the following features Edit or add recipes The following screen is displayed _ SelectionValue field also allows us to specify the load value of each batch recipe if necessary o A Save modifications to the recipes Important The recipes are stored by _ the server in a file in the same location and with the same name that the project but with the extension recipes Load selected recipe into PLC User Manual Pag 53 MONITORIZA In the grid we have the records to if you have permission modify the value to load in each of the records Moreover when attempting to upload a recipe in the PLC the grid will be colored in green if it is successful and in red if there is a problem or not met the conditions specified in the recipe
22. to indicate that the controls must inherit the main class from Controles AcimutUserControl 6 PruebaControlMonitoriza Microsoft Visual Studio File Edit View Project Build Debug Data Tools Window Help aE w ir F ee Oe Gee ee ee See e EE ec ei aA PruebaControlMonitoriza Ejemploi yb Ejemplo1 vb Design 4 MEE saunos epg E saipadoid el 4840 dx3 LOnnos o g Ejemplo1 ES Declarations 14 Public Class Ejemplo1 2 Inherits Controles icimutUserControl xoqon O 5 LEnd Class lt E Output B Error List igs Pending Checkins Ready Visual Studio throw a warning indicating that is not possible to inherit AcimutUserControl and UserControl at the same time then we must indicate to inherit only AcimutUserControl Let s see a simple example of UserControl creation and the latar using in Monitoriza Pag 97 MONITORIZA Once created the Project we add a control named Ejemplo1 In this control we add a label a button and a combobox with 3 items a PruebaControlMonitoriza Microsoft Visual Studio File Edit View Project Build Debug Data Tools Window Help cada ee ee Oe re al 3 gt PruebaControlMonitoriza Ejemplo1 vb Ejemplo1 vb Design Properties E ComboBox1 System Windows Forms Ci REA 57 3 y ApplicationSettings DataBindings Name Combo AccessibleDescription AccessibleName AccessibleRole Default AllowDrop False Anchor Top Le
23. variable changing through the collection of images or colors each time you press the button Each of the images or colors is assigned to a value or range and show the image or color depending on the value of the variable The main properties of this control are e Server Group Variable and UseBit Used to refer to the PLC variable depending on the communications server the group that is defined and the symbolic name we give to the variable additionally set the property UseBit if we want to refer to a bit in particular e Color v 0 y Color v 1 Define the color that will show the button when the variable is O and 1 respectively The default colors are red for the value O and Green for 1 e Shape Possible values are Circle and Square the button is represented respectively as seen in the following figures O e BorderWidth Defines width of the border line e ReadOnly Indicates that the button will simply display the value of the variable pressing the button will have no effect e Value Variable value associated with the properties Server Group and Variable e Text The text property allows us to establish a text that is displayed in the control MONITORIZA ACIMUT S L PAG 40 User Manual e Images When we make the button to display a set of images or a list of colors depending on the value of the variable we must use this property with the editor of the collection shown in the figure below gt stor ER esen aee E
24. 095 Maximum Scaling Value 60 Minimum Analogic Value D Minimum Scaling Value 40 Scaling True By this way we have the value scaled keep in mind that scaled value is used for alarms recipes etc But values in simulation aren t scaled A lineal scaling is used User Manual Pag 23 e Simulation Type When running a project in design mode this option allows you to automatically change the value of the variables lf you choose any type that not is manual simulation we ll see the following three properties e Maximum value ls the maximum value that the simulation system will give to the variable e Minimum value Is the minimum value that the simulation system will give to the variable e Period value lt is the time in seconds of each cycle or state will influence the changing speed of the value of the variable There are simulations for random incremental decremental Square Wave Sine Wave and Triangular Wave We see in the picture below an example of waves generated by monitoriza and the signal period for the square wave Value Type property and Sing property only appear when the group is MODBUS TCP or MODBUS RTU and the kind of group can t be defined as ReadCoilStatus since this type involves a bit of a internal coil Demo http www acimut com monitoriza videos crear variables default html Once we have created the groups and variables can also edit them by selecting the corresponding variable or group of variables
25. ALARMS TABLE Following is the table definition to storage alarms as defined in SQL Server CREATE TABLE Alarmas ID int IDENTITY 1 1 NOT NULL Servidor varchar 50 NULL Grupo varchar 50 NULL Variable varchar 50 NULL TextoAlarma varchar 250 NULL Accion varchar 50 NULL Valor varchar 50 NULL Usuario varchar 50 NULL FechaHora datetime NULL Numerico int NULL Sencillo float NULL ON PRIMARY GO ALTER TABLE Alarmas WITH NOCHECK ADD CONSTRAINT PK Alarmas PRIMARY KEY CLUSTERED TD ON PRIMARY GO CREATE INDEX IX Alarmas ON Alarmas Servidor Grupo Variable TextoAlarma ON PRIMARY GO CREATE INDEX IX Alarmas 1 ON Alarmas FechaHora ON PRIMARY GO AUDIT TABLE Following is the table definition to storage audit records as defined in SQL Server CREATE TABLE dbo Auditoria ID int IDENTITY 1 1 NOT NULL Computer varchar 50 NULL UserName varchar 50 NULL ActionAudited varchar 50 NULL Parameterl varchar 250 NULL Parameter2 varchar 250 NULL Parameter3 varchar 250 NULL DateTime datetime NULL ON PRIMARY GO ALTER TABLE dbo Auditoria ADD CONSTRAINT PK Auditoria PRIMARY KEY CLUSTERED 10 ON PRIMARY GO Pag 101 MODBUS Registers Modbus Registers Range PLCs and Modbus devices store information in registers The registers are div
26. G 54 MONITORIZA Acimut Monitoriza supports extensibility of the framework through programming functions and libraries in the language Net Visual Basic and C and it is within this framework where the timer is helpful since we can personalize the timer Tick event as seen in the Extensibility and Programming chapter and in this event perform related functions The main properties of this control are e Interval Frequency of the Tick event in milliseconds e Enabled Enables or disables the generation of Tick events Tendencia The Tendencia control is used to display the value of one or more variables over time We must put this control on a form if we want the user of SCADA has a screen to see how evolve the set of variables has been defined in the design If we want that at some point the user can see a history by selecting the variable data and the period we need a button with the Action property set to MostrarGrafica as shown in paragraph Show Historical Data An important thing to remember when we use a control trend is that if we have a history of variable values we must define actions for save these variables as seen in paragraph Save to Database In case of not saving the values of variables in the control database trend can also show the changing values of variables but only displays the values collected during the current session i e starting with the empty graph without any value represented an
27. HB ControiText ED Leva FomBorderStye Sizable E Panel RightToLeftLayout False ial Panellmagenes Text Simulaci n aa PictureBox UseWaitCursor False ProgressBar A _ ito ar m Ow ise a na E AutoValidate EnablePreventFocusChar Seo EFE ContextMenuStrip ninguno Temporizador Double Buffered False E Tendencia Enabled Ta abl Texto ImeMode NoControl TextoConMascara E Datos a 9 TrackBar DataBindings 3 WebBrowser Tag E Dise o ESA Name Formulario 1 AutoScaleMode Font Auto Scroll False Auto ScrollMargin 0 0 AutoScrollMinSize 0 0 AutoSize False AutoSizeMode GrowOnly Fill Solid FillColorEnd E LightGray FillColorStart C White Location 0 0 Locked False gt iF E ToolBox S Explorador Illustration 67 Connection configuration window This option shows the following form e Configuraci n Comunicaciones Puerto LAN EANN Puerto WAN IPWIAN On the one hand the Monitoriza server can be accessed from a LAN the default port is the 8800 as shown in the LAN Port field on the other hand normally is necessary to access from a network like the Internet for this must choose a port in Port WAN and monitoriza must be informed of the public IP address to be on the Internet in the IPWAN field The required configuration of firewalls and routers is beyond the scope of this manual It should be noted that in the case of WAN communications HTTP protocol is used for convenience when configuring firewa
28. ILITY AND PROGRAMMING Although in most of the Monitoriza projects is not necessary to add programming occasionally by the complexity of what is intended or because the developer feels more comfortable it s necessary to have a tool that supports more advanced programming in that case we can say that Monitoriza is programmable in Net that is with all the power of C and Visual Basic Net from Microsoft allowing both simple and elaborate user functions On the one hand we can code the assign of properties and events of the controls inside the own monitoriza editor and on the other hand we can assign external libraries developed in NET Keep in mind that these functions are running on the client side of Monitoriza INTERNAL CODE CodeBindings Monitoriza controls and forms have a number of properties which can be allocated at design time But sometimes we wish this allocation is dynamic depending on what is happening That s why Monitoriza controls have CodeBindings property using this property we reach the next screen Code Binding Editor a Controles i fae Formulario 1 2 Auto ScrollMargin a wg A Auto Scroll Min Size Mitt Ope cl A AutoSize A Auto SizeMode 2 Auto Validate 2 BackColor i Zy a Backgroundlmage 2 e sd BackgroundimageLay FillColorStart r r We can see that we have a list on the left with the properties of the selected control these properties are those that can be allocated dynami
29. Miembros Propiedades de Rango 0 EME Le Color L Transparent Image BidonRojo Range 0 Illustration 46 Images amp Colors Collection Editor We should add value ranges as many states we want to have for each state we assign a color to an image if an image not is assigned to a range control will show the color corresponding to that range if an image is assigned control will display image instead the color Property Image will override all the color properties defined for the rank That is if a color is defined for v 0 and v 1 and images defined for these ranges control will use the images instead the colors Also the images are affected by the Rotate property that modifies the aspect of the visualization transforming if we desire it the way of showing it Rotate integrates in one property the possibility of rotate the image 90 180 and 270 degrees and the possibility of create a mirrored image in the X axis in the Y axis or in both axis Let s see several examples of it Vo ORIGINAL FotateSOF liph one AotateS0Flipr i 2 RotateN oneF lips Rotate oneFlipy Etiqueta The label control allows us to display fixed text variable values and text variables based on the value of the variable It is a read only control i e its functionality is to display text or values but we can t change a value with this control Pag 41 MONITORIZA The default behavior of the c
30. Monitoriza USER MANUAL v 3 2 http monitoriza acimut com 2012 gt MONITORIZA MONITORIZA Supervisory Control and Data Acquisition SCADA pal i e 4 od Aut matas Servidor ACIMUT Integraci n de Sistemas S L 2007 2012 All rights reserved MONITORIZA ACIMUT S L PAG 2 MONITORIZA INDEX IND isa 3 MONITORIZA uso 5 EWAATE MONITORIZA ea 5 IN TAE n A E E A E A 7 EDITO acido coiecaiciad 10 CREATE A PROJECT ies 16 A A o E Uno 16 OPENAND SAVING PROJECTS sra di rtaiocio 19 CRESTE VARIABLES sd dida 19 VOTA DIES EVO CEDE AENA eo 25 O e o III EEE A A A 27 CF COS AMOS dd 27 Alarms VW aaa 29 e A ee ee A eee ee eee ee ee ee ee eee ee 31 CREATE FORMI rta 34 MONITORIZA CONTROLS esssssssesesessosssssessosssossssososososeseseososossssosososssssssessososossssssososossssssosososssssessosossesosssssosese 37 PPP O E Pi OO O E E E S 39 DOOI E E E E o o asm ease eases 39 BOTONES a 40 EU ae 41 GTUDO OD CIO CS iaa 43 THO CNN en A Yoda el NE E tae ical Gate E dean dette Meant ieoaee E nade 44 MO GOAN lolo CO TAEA q o o o e E O o teatime 44 isa A EI A TAE eeoleaeaeeaneeneeeas 45 AO BYE 0 0 Berar eet nee Oa E OOO O DanC ae E E E eee eee eee 47 MACAO NUNCA o 48 O A o Ii UNO Po tacuaveeenin cetacean ene 49 MIE io A UU ga A II ne IIA 50 PANDEMIA da 50 AE get ao CEA AN PP A PP e o re ee Coreen ee ner eee ee eee 52 A o o o bee nieceateacadaattnnoraatiasncseiene banter E EEE EE 53 Tecla
31. NT User Manual 18 52 Br um BE 05 2010 Ilustraci n 70 Communications Server And then select the Exit option Using the icon marked in red in the figure below 18 58 10 05 2010 Be Bt Ilustraci n 71 PLC Control We can see the status of communications of the Server with PLC s to check if it s correctly accessing each of the devices Ta APCStatus Status Version 1 0 3738 23172 a aa MBus TCP 624051 142452 500000 Detal sai e 85 10 05 10 18 50 45 Server connected 2 10 05 10 18 50 45 New group Grup 2 10 0570 18 50 45 New group Grup New tem ftem 10 added to Grupo 1 6 New tem ftem 10 added to Grupo No item selected E View style gt Clear E llustraci n 72 Status PLC Monitoriza client must refer to a server to show the execution of a project The simplest case is when the server is on the same computer does not require parameters by default Monitoriza looks for a server on the local machine However we show here the parameters supported by the monitoriza client ServerName Net and Port ServerName is the name or IP address of the computer running the server Port is the TCP port that runs the Monitoriza server 8800 is the default Net can have two values WAN Communications used over the Internet for example use an HTTP protocol LAN Indicates communications using a LAN it uses a TCP protocol Pag 87 EXTENSIB
32. Windows Forms Designer which greatly facilitates the design e At the project level we can define users and permissions assigned to each of them For example you can have only Read permissions or have full access to a form e Immediate definition of alarms e Effective operations monitoring Increased instantaneous information User Manual Pag 5 MONITORIZA ACIMUT S L e Easy tracking for variables e Information in several accessible formats Monitoriza can store monitorized variables in standard databases on the market Microsoft SQL Server Microsoft Access Oracle etc e Minimum investment and immediately redeemable e Definition of recipes using templates with a user control to use recipes e Functions for loading batch recipes per event e Monitoriza provides server variables defined by OPC services and external applications that can connect to Monitoriza and access variables for use This service is only available in the Monitoriza Professional version and above PAG 6 INSTALL Monitoriza has a very simple installation lt consists of two files setup exe and Installation Monitoriza msi Double clicking on setup exe and installation begins Monitoriza require the Net Framework Windows 3 5 SP1 if that is not installed you will get the following dialog window i Instalacion de Monitoriza Para loz siguientes componentes HET Framework 3 5 5P1 Lea
33. a Acimut Archivo Editar Ver Herr Dees 7 9 Variables q 0 18 Servidor_TCP c0 18 Servidor_RTU 5 0 Servidor_OPC E Servidor_Datos Ea E TCP Groups ET Grupos C Groups ToolBox G Variables Illustration 24 Create Edit groups Depending on the type of server group characteristics are similar but with some difference so we ll see each in detail MONITORIZA ACIMUT S L PAG 20 Illustration 25 ModBUS TCP 8 ModBUS RTU Groups The properties that define a group of a MODBUS TCP server are e GroupType Group type indicates whether the variables are of a register type or bit Select ReadHoldingRegisters when the variables are read write register a word 2 bytes and ReadCoilStatus type for bit variables e IsSubscribed Indicates that this group of variables is read continuously If we define a group with only variables that will be written and not will be readed we can leave this property to False value e Name Is a text describing the contens of the Group for organization purposes is better to set a descriptive text e UpdateRate In case of IsSuscribed is set to True this property indicates the rate in milliseconds for reading the contents of a group IS appropriate to adapt the value of this property to the communication type and protocol e Variables Is the property through which we can enlist the variables used Will see this property in more detail later
34. ables we saw a section in the variable definition indicating the simulation type SJ jas 18 E Alarms Active Alams True Alarms Alarmas E Simulation Maximum Value 50 Minimum Value 25 Period Value 10 Incremental x E Variable Name PLC Variable Illustration 53 Type of simulation If we choose a type of simulation different to manual the value of the variable will change automatically Pag 69 We may also in the simulation using input controls such as control text input values to variables and test the Scada like we re receiving data Through simulation we can test the permissions that are established for each defined user We are prompted to save the project if we have not done it previously and will launch the simulation 2 Monitoriza Scada Acimut Simulaci n Archivo Editar Ver Ayuda DaeWB7 9 C K BOs SRA 222590 ks ala dhiewnevilon t t ag Simulaci n El Accesibilidad a GrupoOpciones sj ImageList IndicadorAnalogico m IndicadorLCD IndicadorLeds i E IndicadorNumericof 40 Simulaci n TD Level A LinkLabel Panel a Panelimagenes a PictureBox ED ProgressBar C3 TabControl TedadoNumerico Temporizador Backgroundimage _ ninguno BackgroundimageLay None Cursor Default Font Microsoft Sans Serif 8 25 ForeColor MM ControlTex AutoValidate EnablePreventFocusChar Context Menu Strip n
35. al RadioButton but allowing only the selection of one of them g7 HScrollBar HScrollBar Control allows performing a simple browsing when we have a large amount of information items to show PAG 66 MONITORIZA ACIMUT S L List Boor ListBox ListBox control is used to show a list of items which the user can select one or more 4 diciembre de 2009 gt lun mar mi jue vie s b dom 3 1 2 3 4 5 6 7 8 9 10 n 12 13 15 16 17 18 19 2 21 22 23 2 25 26 21 23 29 3 3 1 2 3 4 5 6 7 8 9 1 C Hoy 14 12 2009 MonthCalendar MonthCalendar control allows user to select a date showing a complete calendar on which the user can browse years and months 0 Ea NumericUpDown The NumericUpDown control is a combination of a textbox control and two controls that allows to increment or decrement the value of the control Panel Panel control is used to visually group other controls and make a more clear and visual design for the SCADA For example setting the backcolor of the panel to different colors depending on the meaning for the controls Ll PictureBox Picturebox Control allows us to display an image By using the controls Image and Panellmagenes from Acimut Monitoriza we can perform more powerful functions because from these controls we can access to the integrated image library RadioButton RadioButton RadioButton control allows the user to select an option from a group
36. ariables of the project and if is necessary reasign the variables binded to the controls User Manual Pag 99 If we want to know where is used a variable in wich controls is used across the entire application we can use this application that is located in the View menu r Referencias Cruzadas Servidores Grupos Variables Formulario Control First we must to select a server in the first column when we select it in the second column appears all the groups related to this server once selected the group we want in the next column appears the different variables that conform this group and once again if we select the register we want to inspect in the last column appears all the controls form and control that use the selected variable We can see the form itself using the Go fo button In case we want to change the variable that is assigned to these controls we can use the Reasign option In order to reasign variables we must select the desired controls in the last column the controls to change and click on Reasign button a new window appears In this window we must select the new variable to use in the selected controls This may cause that all previously selected controls will change the bindings associated with fessor ones them MONITORIZA ACIMUT S L PAG 100 APPENDICE
37. at is defined and the symbolic name we give to the variable additionally set the property UseBit if we want to refer to a bit in particular e Divider When control is binded to a variable shows the value of the variable divided by the value of the property e Multiplier When control is binded to a variable shows the value of the variable multiplied by the value of the property e Value Value of the variable associated with Server Group and Variable e Maximum Maximum value of the scale of values Any variable value greater than this value represents the maximum value e LedsNumber Number of LEDs to display in the control For example if we set its value to 5 with the maximum property 100 will be represented as shown in Fig e ShowScale Determines whether to show the scale of control values e ForeColorLeds Color of LEDs when illuminated Pag 47 oJoJo 0 Tolo IndicadorNumerico MONITORIZA ACIMUT S L IndicadorNumerico control can show the value of a variable like an odometer or tachometer lts function is read only and this control only can view data but can not modify them The main properties of this control are e Server Group Variable and UseBit Used to refer to the PLC variable depending on the communications server the group that is defined and the symbolic name we give to the variable additionally set the property UseBit if we want to refer to a bit in particular e Divider When control i
38. cally In the picture we see that in this case the BackColor is assigned in execution time the value of the MONITORIZA ACIMUT S L PAG 88 MONITORIZA variable Registro2 this is a simple type binding and is associated with the button a to remove the associaton we have the button As well as values of variables property values of other controls can also be associated As the direct use of values of variables or properties do not always meet our expectations and we need something more elaborate this is where we can choose a binding s type code when we choose this type display becomes as follows Code Binding Editor PTE S Auto Scroll Margin ijl Controles 2 AutoScrollMinSize g Formulario A AutoSize B ii Variables 2 AutoSizeMode 5 H Ope 2H AutoValidate za Grupo 2 BackgroundimageLay x 2 CancelButton ry Dock 1 Imports System 2 Enabled 2 Imports System Drawing 3 FillColorEnd 3 Imports System Data 2 FillColorStart q Imports System Xml A Font Imports System Windows Forms 2 ForeColor E Imports Microsoft VisualBasic A FormBorderStyle 7 Namespace Scada 2 Height Public Class Monitoriza Public Function CodeBindings ByVal frm As Controles Formulario As Object Icon 1 Dim Result As String m Select frm Variables 0pc Grupol Registro2 Case 1 14 result First Ey MainMenuStrip i Case 2 S MaximizeBox 16 result Second 2H MaximumSize 17 Case 3 2 MinimizeBox 18 re
39. ccccccccccscscscscsccccccccccccccccecscscsceccccccccccccccccecececscececcccccceees 85 SERVER AA is 86 COEN TA A ias 87 EXTENSIBILITY AND PROGRAMMING cccceccccccccccccccccccccscscsccccccccccccccccccececececcccccccccccccccecscecsceccccccccccccccccececs 88 INTERNAL CODE CODEBINDINGS c ccccecceccecceccscscecceccecescscucceccececuececceceecuecusceececeeceecuceeceeceeceeceeeeceeceecusaecascaeeass 88 EXTERNAL DEN ee ne ae ee 90 EVENT LIBRARY AND CONTROL LIBRARY 0ccoccoccocsccoscaccacceccecoscascecceccecascacceccecsecasencceccecascasonccecescasceccscecaneas 90 THE PROGRAMMING FOOL a ada 91 PUN e senate 91 ACCESSING MONITORIZA CONTROLS PROPERTIES 2 csccecceccececceccecceccscescsecsecsccscescsecscescsscsscseesctscssascescsceans 94 ACCESING TO VARIABLES AND COMPONENTS c ccccoececcecceccececeecsccsccsceecsecsecscscsscsecscescsscsseseesctscssaseescesceeans 96 CONTROL AY soeces 97 MO od aa at REN ee en ne ne a ne oe ee 99 APPENDICE acc 101 ALAR MIS TABLE indi ataei s 101 A SS a 101 MODBUS REGISTERS cetonas 102 MONITORIZA ACIMUT S L PAG 4 MONITORIZA MONITORIZA WHAT IS MONITORIZA Monitoriza is a monitoring and control system SCADA Supervisory Control 8 Data Acquisition which covers the requirements of any project both basic and advanced Monitoriza allows us to create solutions for capturing information in industrial processes or any other field With that information the process gets a feedbac
40. cesiva In which is specified to display an alarm message associated with this control when the variable value is greater than 90 Gr Opciones Opci n O Opc n2 O GrupoOpciones GrupoOpciones control is used to set or display the value of a variable that has a defined set of values The main properties of this control are e Server Group Variable and UseBit Used to refer to the PLC variable depending on the communications server the group that is defined and the symbolic name we give to the variable additionally set the property UseBit if we want to refer to a bit in particular e Text Textshown as headline of the group e ReadOnly If set to true control will display the value but we can t change this value e Value Value of the variable associated with Server Group and Variable e Options With this property we can set the options associated with the control this will use the Options Collection Editor shown in the figure below User Manual Pag 43 MONITORIZA Propiedades de Opci n 1 65 S E Scada e TU Microsoft Sans SC Text Opci n 1 Value 0 Illustration 48 Options Collection Editor In which for each of the options we set the Value Text and Font properties where Value is the value of the variable which is selected and will set the value to the variable when select the option Font is the text font for the option Imagelistl mageList
41. ciated with a variable we can define one or more alarms depending on the conditions we want to control We must set the message we want to show when defining the alarm if we store the event to keep track of which has occurred or if a user needs to validate the alarm and the conditions in which an alarm should be fired User Manual Pag 27 MONITORIZA We can make that the evaluation of the alarms should be by comparison of the variable in which the alarm is set with a constant value eg the temperature is less than 40 or we may be interested to compare the variable that is defined in the Alarm system with another variable eg if you are monitoring the production of various products can be stored in a variable that you want to fire the alarm temperatures depending on the product we are producing Set the property to Constant or Variable TypeValue respectively for either case Additionally we can define a group of alarms using the AlarmGroup property this group of alarms is used to specify user level permissions or define the users that will see that alarms or if they can validate or not as seen in the chapter Users and Permissions Editor de Grupos Editor de Variables Editor de Alarmas Miembros Propiedades de Temperatura alta EN a y a E Alarms Alarm Message AlarmGroup Store Validate E Evaluation Evaluate by Type Value Use Bit E Scada Divider Format Multiplier E Variable Group Server Variable UseBit
42. d Namespace Imports System Imports System Drawing Imports System Xml Imports Microsoft VisualBasic Partial Public Class Formulario1 Public Sub Formulario MouseMove ByVal sender As Object Byval e as System Windows Forms MouseEventArgs frm Text e Location ToString End Sub End Class 4 Ready VB NET In this case the list on the left side helps us to drag and drop properties and variables on the code and in the part of the code we can navigate between the different events through the list of the top of the window During execution of the event run this code EXTERNAL CODE EVENTS EVENT LIBRARY AND CONTROL LIBRARY The libraries allow you to associate event of an external library code to an event Monitoriza control Control Libraries instead of events libraries allow to incluye User Controls directly in the Monitoriza project and we can use them like other native control in the application We can include referentes to DLL using the Customization Library in the view menu MONITORIZA ACIMUT S L Referencias LO PAG 90 MONITORIZA THE PROGRAMMING TOOL The programming tool is Visual Studio 2005 or later version the programming language is anyone who is supported by Visual Studio and pleases the developer Visual Basic C etc It should be noted that Microsoft provided free Express version of Visual Studio and is
43. d as time goes on will generate the corresponding graph but closing the application these values will be lost and will be empty the next time you run the scada In the same graph we can mix both types of variables AccionGuardado type variables when we have historic values in the database and dynamic type variables when only represent the values contained in the current session The main properties of this control are e Frequency Frequency for updating the data in the graph expressed in seconds e Period Is set in minutes and corresponds to the time interval shown in the graph For example if you set a period of 100 minutes on the graph to visualize the values of the variables corresponding to the last 100 minutes e Series Set of variables that we want to represent To define the series uses the series Editor shown in the figure below User Manual Pag 55 E Tipo variable TipoVariable a E Dise o Color E Salmon Seriel E Scada Servidor Grupo Variable Illustration 50 Series Edit window For each series we have to set the following properties VariableType determines whether the variable is saved in database or not and accepts as possible values SaveAction and Dynamic indicating respectively when we have to save in database and when not In case is SaveAction we must set the server properties SaveAction and SaveVariable being respectively the database server where the variable to represent is defined a
44. dada dada duda P feoj TecladoNumerico TecladoNumerico control function is the ability to have an on screen keyboard in cases where the running system has no physical keyboard for security reasons or because they are designed for industrial environtment and there is only a touch screen The control works by sending the key is pressed to the form control that has focus Switching between controls can be controlled by pressing Keys Ll and J move the insertion point one character to the left and right respectively Pressing l will clear the immediate key left of the insertion point Key send press the Enter key depending on the control wich has the focus the functionality will be different The main properties of this control are those for the visual appearance of control and are as follows e BackColor Background color of the control e ForeColor Foreground color of the control Used to display the text of the keys and the border of them e Font Font of the key text e Fill Determine how the background of each key is painted The possible values are None Horizontal Vertical ForwardDiagonal F b a and BackwardDiagonal 7 e FillColorStart Gradient start color of the background of the key e FillColorEnd Gradient end color of the background of the key Temporizador Temporizador Timer control is used to trigger an event in the user defined intervals MONITORIZA ACIMUT S L PA
45. dification of the different elements that we monitored The variables are ultimately what we will be measuring or monitoring including temperature pressure voltage open or closed status of any of the devices of our process Each Monitoriza variable is defined by three different elements The communications server which refers to the PLC that manages and controls the device or devices on which we operate or control The group which is a grouping of variables depending on the characteristics of these for example by combining the variables that we are only interested to read in a group and others we want to read and write in another or if we have a group of variables we must read with a different cadence from other variables grouped into different groups lt is also important to consider the communication protocols so when we read a set of records such records in contiguous PLC memory positions reading either by an OPC server or a server ModBUS is more efficient if we put the adjacent records in the same group and will improve the performance of our SCADA Name is the symbolic name we give to record the PLC User Manual Pag 19 MONITORIZA Therefore to create variables once we have established communications servers as we saw in the previous chapter we must create the groups to which the variables will belong To do this in the server window click on the three points of the Groups property _ Monitoriza Scad
46. diting Windows will be displayed in order to set the action to perform when _ the value of the variable changes MONITORIZA ACIMUT S L PAG 26 V bl iP j j o 1 ME 1 Imports System E IB Servidor_TCP Eta Guo Imports System Drawing Imports System Data Imports System Xml Imports System Windows Forms Imports Microsoft VisualBasic Imports System Net Mail Namespace Scada Public Class Monitoriza Public Sub ValueChanged ByRef clsVariables As object End Sub End Class End Namespace Ready VB NET Illustration 31 Code Events Editor Our code will run on the communications server of Monitoriza therefore we have access to all resources on the server where is installed ALARMS Create Alarms Whenever we want the Scada system notifies us of a certain condition we must set an alarm These alarms can check for example if a temperature is above or below a certain value the pressure has reached a value or any other aspect that we want to consider Alarms are associated with variables and it is in the variable definition window where we establish if we bind a variable to an alarm To do this when creating or editing a variable we must set to True the property Active Alarms then the Alarms property will appear and by hitting the button with three points we can define the alarms associated to the variable Temperatural PLC Variable Illustration 32 Alarm creation Asso
47. do NUMETI OO orir iiae aAA AA ii dia 54 T T a A E E S 54 TS UE OA E AEE E I AO 55 OIG EIE So EE ER EE O e E o ERE E A In 57 IONS IE EEA E EEA aces 58 VOT AAAPP A A o A E 59 TCI OI NAPA eo io o 59 DESTINAR A a 59 cd 60 FINO A ae E O OR UE A EE E o O A 60 PAP A 62 PROC IGE asi caiste comune 63 ROO E E 64 WINDOWS TAB serea a a E R E E A EE E E campnestnasaanneeanyGaneeceeaantncrsenreesoneee 65 User Manual Pag 3 MONITORIZA HR e o O IA 65 Ai o A 66 COMPOBO co 66 e en 66 CUID O nt ii ia ico 66 A cece 66 E A O O EEE EA AS 67 Log a GG 6 2 aio 67 NOTE UPOO e a aa 67 P AEN A E EEEE EAEE 67 PPV UOT nia 67 FOO ais ste restate A cette ss tos ac ots adi te ae vc E a no ed ea db dean ad as ota he ade wd cain ad ea tad 67 A 68 A A 68 o ee OE ee A OE Se Re ne AAEN EEIEIE NA ee ea EAA A ee Te 68 A ds 68 TEST THE PROJECT bi 68 IMAGE LIBRARY anta 71 USERS amp PERMISSIONS essessessessesssesssssosscessossossosscessessosscsscesoesscsssescesoossssscescessossssscesoesosssosssescessessosscesoessesses 74 RECIPES amp INTERFACE BATCH ccccccscscscscccccsccccccscscscsccccccccccccccccccscscscsccccccccccccccccscscscscscccecccccscsccccsoscscscsccccccs 77 SAVING IN DATABASE Secada dd dia 80 DISPLAY HISTORIC DATA iiccvcccnatenccscacncascuaicaccceaensacstuaieasseeniieadseateweascacneasdsadsasceeaensusssedsaadeadessadtwedeneceeceseasheasensdeass 83 DISPLAY HISTORIC ALARMS cenar taa 84 CONFIGURE SERVER COMMUNICATIONS cccccccc
48. e symbolic name we give to the variable additionally set the property UseBit if we want to refer to a bit in particular e Divider When control is binded to a variable shows the value of the variable divided by the value of the property e Multiplier When control is binded to a variable shows the value of the variable multiplied by the value of the property e Value Value of the variable associated with Server Group and Variable IndicadorLCD The primarily function for LCDDisplay control is design because it will be used to show the value of a variable in a way that simulates the representation by a dot matrix LCD panel Its function is read only and this control only can view data but can not modify them Pag 45 MONITORIZA The main properties of this control are e Server Group Variable and UseBit Used to refer to the PLC variable depending on the communications server the group that is defined and the symbolic name we give to the variable additionally set the property UseBit if we want to refer to a bit in particular e Divider When control is binded to a variable shows the value of the variable divided by the value of the property e Multiplier When control is binded to a variable shows the value of the variable multiplied by the value of the property e Value Value of the variable associated with Server Group and Variable e Format Displays the value in the format specified by the property for examp
49. e section this section we have four variables Variable for recipe selection this record is the one with the value given adding prescription ValorSeleccion field determine which recipe will be selected for loading in the PLC If you want to configure a batch recipe this field is required e Variable for load triggering this record is the one that when having the value specified will trigger the load If you want to configure a batch upload this field is required User Manual Pag 79 MONITORIZA lt e Variable for successful loading If the batch loading procedure is completed successfully this register is written to the specified value in the PLC There is a required field e Variable for loading error if the batch loading procedure is not completed successfully this register is written to the specified value of the PLC There is a required field l SAVING IN DATABASE First we must create a server data type You can define as many data servers as you need each of them will give us access to a particular database Editing Connection property Variables Data Provider Data Source Connection Conexi n a la base de datos ToolBox GS Variables see a wizard that will guide us in the connection process MONITORIZA ACIMUT S L PAG 80 Choose Data Source Microsoft Access Database File Microsoft ODBC Data Source Use this selection to connectto _ Microsoft SQL Server Microsoft SQL Serv
50. eaterThan we activate the alarm if the temperature value exceeds the value of 40 MONITORIZA ACIMUT S L PAG 28 e UseBit lt allows us to use in isolation of the bits of the variable in the assessment given first bit is 0 Clearly in this case we can only compare with the values 0 and 1 e Server Group and Variable Set the system variable that we will use for comparison when the TypeValue is set to Variable Scada property group allows us to specify the variable value for storage in the database and therefore for display in the Alarm Viewer e Divider Display the variable value divided by the number indicated in the property e Multiplier Display the variable value multiplied by the number indicated in the property e Format Change the appearance of the value of the variable for example a format equal to 00 variable will cause the display with two decimal places We can define alarms groups when we are defining the alarm using the option New of the AlarmGroup property or using the command Alarm Groups in the View menu which shows us this form Grupos Alarmas Autenticaci n para validar Illustration 34 Alarm Groups In which we can not only specify the name of the alarm group but change it if we have been mistaken at the creation set if the user is to be required to authenticate entering username and password every time it wants to validate an alarm belonging to this group As you w
51. ed with an image of the deposit and have a visual representation of the volume as we can see a figure Its function is read only and this control only can view data but can not modify them The main properties of this control are User Manual Server Group Variable and UseBit Used to refer to the PLC variable depending on the communications server the group that is defined and the symbolic name we give to the variable additionally set the property UseBit if we want to refer to a bit in particular Divider When control is binded to a variable shows the value of the variable divided by the value of the property Multiplier When control is binded to a variable shows the value of the variable multiplied by the value of the property Value Value of the variable associated with Server Group and Variable Maximum Maximum value of the scale values that may render the control Any variable value that exceeds the value of the property is represented with the value of the property Minimum The minimum value of the scale of values that can represent the control Any value of the variable less than the value of the property is represented with the value of the property ForeColorLevel Color for representing the value of the control Orientation Possible values of this property are Vertical and Horizontal Horizontal Pag 49 LinkLabel LinkLabel control function has the ability to put links to Web sites on the Scada So
52. el siguiente Contrato de licencia Presione la tecla Ay P g para ver el resto del contrato T RMINOS SUPLEMENTARIOS A LA LICENCIA DE USO DE SOFTWARE DE MICROSOFT MICROSOFT NET FRAMEWORK 3 5 SP1 Wer CLUF para imprimirlo Acepta los t rminos del Contrato de licencia pendiente 5i elige No se cerrar el programa de instalaci n Para instalar primero debe aceptar loz t rminos de este Contrato Illustration 1 Net Framework 3 5 SP1 In which we are asked for the License Agreement of Net Framework from Microsoft Then install proceeds to download from the Microsoft website and install the appropriate package Ss Instalacion de Monitoriza eo i Instalando MET Framework 3 5 SP1 i Cancelar Illustration 2 Net Framework 3 5 SP1 Download User Manual Pag 7 MONITORIZA Once installed start the installation of the Monitoriza main module lll pp grar ma Din er Instalaci n de Acin Bienvenido al Asistente de Instalaci n de Acimut Monitoriza El Asistente de Instalaci n instalar Acimut Monitoriza en su ordenador Pulse Siguiente para continuar o Cancelar para salir del Asistente de Instalaci n Acimut Illustration 3 Welcome screen Clicking on the Next button appears the custom installation screen in which we can select the system elements that we want to install These elements are the Editor that lets you create and modify our Scada forms the Client w
53. electing the control we must to click in non transparent region of it The main properties of this control are e BackColor Fill color of the ellipse if the Fill property is set to None MONITORIZA ACIMUT S L PAG 64 MONITORIZA e ForeColor Color of the line forming the ellipse If the Fill property is set to Solid color is used as the fill color of the ellipse e Fill Fill Type of the ellipse The possible values are None Solid Horizontal Vertical ForwardDiagonal and BackwardDiagonal None and Solid choices produce a solid color fill using respectively the BackColor and ForeColor to fill Options Landscape Portrait ForwardDiagonal and BackwardDiagonal fill with a color gradient in the direction specified by the option e FillColorStart Start color of the gradient filling e FillColorEnd End color of the gradient filling e Thickness Width of the line border e Angle Angle of the text in the control Windows Tab In this section are described the controls of the Windows Tab in the Monitoriza Toolbox lle Puntero CheckBox ES CheckedListBox ComboBox E DateTimePicker ea GroupBox 2 8 HScrollBar ListBox Bey MonthCalendar NumericUpDown Panel Lai PictureBox 2 RadioButton TabControl 25 RichTextBox S WScrollBar Er WebBrowser This tab shows the standard Windows controls and therefore can t be associated to the Monitoriza variables because they don t have any of the scada properties like
54. epted are JPG and BMP raster images without animation raster GIF with animation image and vector WMF image The Acimut Image Library is not modifiable ie can not add or remove pictures from the collection of images that compose it Some examples of Acimut image library are Seleccione imagen Libreria Imagenes Monitoriza Pag 73 Categor a Motores dE USERS 8 PERMISSIONS To edit application users there is a menu option Users and permissions from the View menu Herramientas Ayuda Ventana Propiedades Servidores Usuarios y permisos a ModBusRTU Grupos de alarmas Configuraci n Comunicaciones gist Libreria de Personalizaci n Libreria de Im genes e isti Referencias Cruzadas M mero de Variables fd egagiliad Plantillas de Recetas i SimaticISOS7 ee Illustration 60 User access Menu This menu leads us to the next screen MONITORIZA ACIMUT S L PAG 74 MONITORIZA Usuarios y permisos _ Tipo Acceso Sin acceso Acceso total Acceso total Sin acceso S lo lectura Illustration 61 User Permission window Screen is divided in two tabs the first one devoted to the definition of the Scada Users and the second one dedicated to the Permisions from a global to the project point of view In the Users tab we will able to register the necessary users will specify their passwo
55. er 2000 or 2005 Microsoft SQL Server Database File using the NET Framework Data Oracle Database Provider for SQL Server lt other gt Data provider Tl Away use ths eet The alarms can be stored in a database for this must be a table that is described in the appendices Table Alarms The data server in which we have this table should have Alarms property to True It will also be the data server that will store the audit records and Alarms property also must be set to True The Audit table fields are described in Appendix Table Audit Also the data servers can be defined for saving for it must be HasStoreActions property to True and consequently define the property collection StoreActions from which we can access the Store Actions Editor that see below Editor de Acciones de Guardado Miembros O Illustration 63 Storing Actions property window In this editor we will define the name of the store action and the Trigger Type Event or Cadence If Event is chosen we can see that a variable is selected with Server Group and Variable and as in the case of Alarms we should choose in Evaluate By UseBit and Value the fact that it will trigger the save action lf we choose Cadence we have to specify how many seconds will pass between saving actions Moreover we need to define what values are stored in which table and what fields the table will be written in the table propert
56. er the title of the window we can position them more conveniently for our work User Manual Pag 13 E Monitoriza Scada Acimut Demo aut mata ModBusTCP Archivo Editar Ver Ayuda D GAUAF CX aa E a E a N E E Formulario4 Fomula o1 Fomulario3 4 x Propiedades amea MNAE El Accesibilidad Boton BotonEstado A Etiqueta GrupoOpciones 11 IndicadorLCD Microsoft Sans Serif 8 25pt IndicadorLeds E Control Text Ii IndicadorNumerico Sette Level False A LinkLabel E Panel los PanelImagenes laa PictureBox ProgressBar TabControl TecladoNumerico Temporizador a Tendencia abl Texto _ TextoConMascara 9 TrackBar VuMeter 3 WebBrowser Illustration 13 Forms amp Windows repositioning Demo http www acimut com monitoriza videos editor1 default html Also the windows for Variables Properties Toolbox and Explorer can set for automatically hide when they lost the focus making the work surface larger simply clicking on the corresponding button on the window title marked in red in the Illustration below the window hiddes when lost the focus To re view move the mouse over the tab that represents the window is visible and if we want to stop hiding again press the same button to fix your position Positioning settings of each window is stored with each project and when we reopen a particular project the windows are positioned as they were when we
57. f AutoCompleteCustomSource Collecti AutoCompleteMode None AutoCompleteSource None BackColor C wi String Collection Editor 1 CausesValidation True Enter the strings in the collection one per line contoxtMenuStrip none Cursor Default 7 ie DataSource none Alto DisplayMember none Dock None DrawMode Normal DropDownHeight 106 DropDownStyle DropDo DropDownwidth 139 Enabled True FlatStyle Popup Font Microsof ForeColor iwi FormatString FormattingEnabled True d GenerateMember True ImeMode NoContr IntegralHeight True TtemHeight 13 Ttems Collec Location 4 25 Locked False Let s add some code to the Project Private Sub Buttoni Click ByVal sender As System Object ByVal e As System EventArgs Handles Buttonl1 Click Dim ValorAEscribir As Integer 0 Seleccionamos el valor a escribir en la variable en funcion de lo que se escoja en el combo los 3 valores permitidos son BAJO MEDIO y ALTO Select Case Me ComboBoxl1 Text Case Bajo ValorAEscribir 10 Me BackColor Color Coral Case Medio ValorAEscribir 50 Me BackColor Color Yellow Case Alto ValorAEscribir 100 Me BackColor Color Green Case Else ValorAEscribir 0 End Select Asignamos el objeto frm al formulario padre que en este caso es el formulario de Monitoriza que est usando este usercontrol Dim frm As Controles Formulario Me TopLevelControl frm Variables Me Servidor Me Grupo Me Variable ValorAEscribir End Sub By this way when we
58. fore changing a variable or validating an alarm Allways The pplication will allways require again user name and password before changing a variable value or validating an alarm Depending on configuration User name and password will be required to the user depending on the AuthenticationRequired propertie value of the variable been changed or the alarm group that the alarm belongs to Time Out Authentication parameter This parameter sets the time in seconds that an active authentication is valid for example if a Time Out of 30 seconds is established and a second change of a variable value is done before 30 seconds had passed after last authentication the application will not require user name and password again A value of O seconds means that Time Out is infinite Interaction with Windows The interaction with Windows parameters are used to set how we desire Windows to behave with respect with Monitoriza These parameters allow us to define a higher level of security for a SCADA project because they can determine whether it is possible to use or not other applications simultaneously to SCADA what might affect its performance The DisableAltTabKey property set to True means that the user cannot change to another application using de Alt Tab combination The DisableAltEscKey property set to True means that the user cannot change to another application using de Alt Esc combination The DisableWindowsKey property set to True means tha
59. hically display the values of the variables store in a database the values of variables keep a history of alarms graphically show the variable values stored write variables on a PLC or other devices and manage who can access the project resources The Editor User interface is what can be seen in the two following illustrations Archivo Editar Ver Herramientas OSA IO C x MA 2e Halbert hlew 4 0 on ToolBox Boton BotonEstado A Etiqueta GrupoOpciones a ImageList IndicadorAnalogico m IndicadorLCD IndicadorLeds TE IndicadorNumerico D Level A LinkLabel aa Panellmagenes TecladoNumerico Temporizador pa Tendencia labi Texto _ TextoConMascara G5 ToolBox E3 Variables G5 Explorador E Propiedades Illustration 6 Editor 1 MONITORIZA ACIMUT S L PAG 10 User Manual OSA I0 CO xa mR Variables A Formulario Explorador ES Propiedades Variables Illustration 7 Editor 2 Let s see in some detail each part of the user interface At the top is the menu bar and toolbar with standard elements such as operations to open or save a project editing operations copy cut paste and operations for formatting and alignment Archivo Editar Ver Herramientas Ayuda ORR SF 9 e XKEBBl gt A AS se er see abs d fak
60. hich set the environment for project implementation and SCADA Communication Server for establishing communications with both the OPC servers and databases and PLC Seleccione la forma en la que desea que se instalen las funciones Pulse en los iconos del siguiente rbol para cambiar la forma en la que se instalar n las Cliente Servidor Comunicaciones Esta funci n necesita 2952KB en su disco duro Buscar Illustration 4 Custom setup MONITORIZA ACIMUT S L PAG 8 MONITORIZA On the next screen we will click on the Install button to start the installation process itself fa Instalaci n de Acimut Monitoriza Preparado para instalar Acimut Monitoriza A Pulse Instalar para empezar la instalaci n Pulse Atr s para revisar o cambiar cualquiera de las opciones de instalaci n Pulse Cancelar para salir del asistente Illustration 5 Setup complete Acimut Monitoriza is compatible with operating systems Windows 7 Vista XP 2003 and 2008 the only requirement is to have installed Net Framework 3 5 SP1 Microsoft User Manual Pag 9 EDITOR Acimut Monitoriza Editor is one of the three main components of the system with it we can create design and modify our scada projects that are then executed through the Communications Server and Client Scada When you create or modify a scada project using the publisher you can define variables and alarms create forms to grap
61. id color fill using respectively the BackColor and ForeColor to fill Options Landscape Portrait ForwardDiagonal and BackwardDiagonal fill with a color gradient in the direction specified by the option e FillColorStart Start color of the gradient filling e FillColorEnd End color of the gradient filling e Thickness Width of the line border Image The control Image is used to display an image in our form MONITORIZA ACIMUT S L PAG 60 User Manual The main property in the Image control is the Picture property By this property we establish the image displayed in the control Acimut Monitoriza features a wide variety of predefined images thanks to its Image Library that allows us to make some attractive designs Some of these images are shown in the figure below 2 Seleccione imagen Im genes Proyecto Libreria Imagenes Monitoriza Categoria In the control Image when you resize the control the image is properly adjusted to the new size This adjustment is more perfect if the image we have used is vector rather than bitmap The Acimut Monitoriza Image Library provides images of the two types Also animated images are provided for example in the following figure Wentilador A Mow Ventilador A Mov Verde Ventilador A Paro There are three versions of the fan the fi
62. ided into blocks of 65536 units Monitoriza uses ranges between O and 65535 Different types of data can be stored in each block lf we want to read or write to a Modbus register we must have specific information about the module or PLC to find out which group of Modbus data is involved and therefore what type of group we must use in Monitoriza The Modbus registers have 16 bits one word while marks coils are 1 bit data Monitoriza provide the ability to read directly double words and single float registers What follows next is a table of the ranges of Modbus registers and the group type to be used in Monitoriza Modbus Register Modbus Range Output Coils Rango de 0 65535 000001 065536 For example Digital input points and digital output points Input Discretes Rango de 0 65535 100001 165536 o For example Digital input points Input Registers Rango de 0 65535 300001 365536 For example Digital input points and analog input points Holding Registers Rango de 0 65535 400001 465536 For example Digital input points digital output points analog inputs and analog output points ModBUS Functions used by Monitoriza Start Digit Monitoriza Modbus Function Code ReadCoilStatus WriteCoil ReadInputStatus Solo lectura ReadInputRegisters Solo lectura ReadHoldingRegisters WriteMultipleRegisters The Modbus protocol uses different functions for each
63. ill see in the chapter USERS amp PERMISSIONS there are project overall parameters that will affect this behaviour Demo http www acimut com monitoriza videos crear alarmas default html Alarms Viewer User Manual The alarm display is the centerpiece of notification and validation of alarms that occur in SCADA project implementation Pag 29 Illustration 35 Alarm viewer Whenever an alarm fires because the conditions stablished in design have been fullfilled the display shows alarm the possible states of the alarm depending on if you have set as you need validation or not and these states are represented by different colors e Red Indicates that the alarm is active and requires validation that is we must click on the Validate button to indicate that a user has ignored the alarm and took the appropriate action e Pink Indicates that the alarm is active and has been validated i e a user has clicked on the SCADA Validate button al Alarmas e Yellow Indicates that the alarm is no longer active but has not yet been validated e Blue Indicates that the alarm is active and does not require validation In this case not requires validation and disappears at the moment the alarm is no longer active If an alarm requires validation depending on the alarm group to which he belongs may be necessary to re authenticate that is you may be prompted again the username and password This will loo
64. imut Der lusTCP Archivo Editar Ver Herramientas Ayuda D ae ed BF DO O amp Ga D BH jo SS St a a Formulario5 a Formulario GrupoOpciones sy Imagetist IndicadorAnalogico Illustration 41 Drag a control from the Toolbox window Or drag a variable from the Variables window as shown in the illustration Monitoriza si Archivo Editar Ver Herramientas Ayuda DI 4 as 0 0 xQMAa 4 Y jo MSs Vanables 2 Formulario5 Servidores MB Servidor_TCP B Grupo abl Registro 1 abl Registro5 a Grupo5 iB Servidor_RTU M Servidor_OPC E Servidor_Datos Illustration 42 Drag a control from the Variables window Dragging a variable has the advantage that in the same operation we are doing two actions on the one hand we are designing the form by setting the necessary controls and on the other hand we are assigning directly the Server Group and Variable properties Pag 35 MONITORIZA By default dragging a variable creates a Text control but clicking on the variable name we can change the control type associated to the variable choosing the appropriate type from the dropdown list that appears _ Monitoriza Scada Acimut Demo aut mata ModBusTCP Archio Editar Wer Herramientas Ayuda Illustration 43 List of controls that can be used with variables The list of controls shown has all the Acimut s Monitoriza controls that can display or edit the value of
65. in the tree at the top of the window variables and editing their properties in the lower pane of the window MONITORIZA ACIMUT S L PAG 24 MONITORIZA Bee BY Registro iA Servidor_RTU fi Servidor_RTU fi Servidor_OPC ce IB Servidor_OPC gE Servidor_Datos gE Servidor_Datos Lo ffi Servidor_Simatic_ISO_S7 ffl Servidor_Simatic_ISO_S7 Group Type Active Alarms Tipo del grupo Indica si activa alarmas Illustration 28 Edit groups amp variables Variables Event Once we have defined a variable we can set the alarms associated with that variable as discussed in the next chapter alarms or control the valueChanged event of the variable By both methods we are able to perform actions when the value of a variable changes We will use the alarm method when we want to get a notification for a certain condition for the value of the variable and will use a valueChanged event when we want to take an action simply because the value has changed To set the valueChanged event we must click on the Events button properties window for the variable marked in red in figure User Manual Pag 25 AA A Illustration 29 Activate event window Once in the event window we must click the three dots button Propiedades de Registro 1 Miembros 0 i E pe B upa E E Events ValueChanged Illustration 30 Variable event A code e
66. ing the session the peak performance for the variable For example in the figure below shows the AnalogGauge representing a value of 60 reaching a maximum of 80 ERA O a 50 S e StartingAngle Initial angle in degrees for the initial value of the scale e BarsBetweenValues Number of sections or sub marks to be drawn between each of the major established marks for the scale of values e EspacingBetweenNumbers Spacing in degrees between the leading marks of the scale values e Interval Number of units of the scale values among leading marks e Maximum Maximum value of the scale values that may render the control Any variable value that exceeds the value of the property is represented with the value of the property e MaximumStored Peak achieved during the session Do not store the high value of the variable e Minimum The minimum value of the scale of values that can represent the control Any value of the variable less than the value of the property is represented with the value of the property e ClockWiseDirection Direction of rotation which represent the values of the scale If set to True meaning rotate in a clockwise direction e Text Text associated with the control Normally we use this text to indicate what we are measuring or units of the variable e Server Group Variable and UseBit Used to refer to the PLC variable depending on the communications server the group that is defined and th
67. inguno Scada Acimut r gt Double Buffered False FB Tendencia Simulador de variables abl Texto Variable Valor TextoConMascara Servidor Grupo 1 Registro 1 in a E WebBrowser El AutoScrollMargin 0 0 E AutoScrollMinSize 0 0 AutoSize False AutoSizeMode GrowOnly Fill FillColorEnd E LightGray FillColorStart C White El Location 0 0 Locked False Text Texto asociado al control E ToolBox a fos Explorador Illustration 54 Simulation running In the picture above you can see the Monitor Editor and the form you are designing running The form has added a text control that has been associated with variable Registro of Group1 and Server1 so when the window of the simulator variables enter a value in that variable that is immediately displayed in the associated text control To end the simulation we can either close the window of the simulator variables or close all forms in the project that we have opened or click on the play button that in this moment is displaying a red square instead the green triangle indicating that we can stop the execution Y Monitoriza Scada Acim Archivo Editar Ver Herramientas Ayuda D E Uaz A X k a 1 AY Variables g Ilustraci n 55 Stop execution Demo http www acimut com monitoriza videos simulacion default html MONITORIZA ACIMUT S L PAG 70 MONITORIZA IMAGE LIBRARY
68. ist Now a small code change will provide the IntelliSense Following is the new code and its effect o n the editor Public Class Monitoriza Public Sub MsgBox ByVal sender As Object ByVal e As EventArgs Dim boton As Controles Boton sender Microsoft VisualBasic MsgBox Hola soy amp boton Name ToString MONITORIZA ACIMUT S L PAG 94 gt MONITORIZA User Manual End Another peculiarity is the possibility from a control to End Sub Class 6 ClaseMonitoriza Microsoft Visual Studio Administrator File Edit View Project Build Debug Data Tools Test Window Help as ca dar aaa 3 90 0C 6 5 lt ClaseMonitoriza Start Page Class1 vb Ls a mr oa dias be i iM Wil 115 g ClaseMonitoriza v V MsgBox E Public Class ClaseMonitoriza End Clas As Microsoft VisualBasic MsgBoxResult Prompt line 13101033 Janas auIno juaunsog F xoqroo we Public Sub MsgBox ByVal sender As Object Dim boton As Controles Boton sender Microsoft VisualBasic MsgBox Hola soy End MsgBox Prompt As Object Buttons As Microsoft VisualBasic MsgBoxStyle MsgBoxStyle DefaultButton1 Title As Object Nothing ByVal e As EventArgs amp boton Name ToString Required String expression displayed as the message in the dialog box The maximum length of Prompt is approximately 1024 characters depending on the width of the characters used If Promp
69. k and can be used for decision making It consists of three parts A project editor for defining all the elements A server that will execute the project and will ensure communication with the process data acquisition process benchmarking etc A client that displays visually the information of the processes that are being monitored Monitoriza is a flexible system in their configuration because it can be run by multiple users simultaneously lt can operate on a stand alone or infrastructure on a local network or through remote sites connected via the Internet Among the main features of Monitoriza can be highlighted e Simple and immediate product installation e Easy setup even if it is a remote installation WAN because communications between client computers and server are based on Internet standards HTTP protocol Includes ModBUS native communications Ethernet S7 for S7 300 and OPC connectivity e No programming required to create fully functional projects simply drag and drop SCADA objects on the forms and set the corresponding properties for a working solution If required advanced functionality not covered in the objects defined in SCADA there is no problem because Monitoriza can be extended by programming in C or VB Net It is also possible to use third party libraries developed for NET Framework for Windows e The creation of the graphical user interface is based on technology Microsoft
70. k in more detail in the chapter of Users and permissions Its function is to reinforce security and that only authenticated users can validate the alarm Demo http www acimut com monitoriza videos validar alarma default html MONITORIZA ACIMUT S L PAG 30 Alarm Events Alarm Events is one of the more important extensibility elements in Monitoriza Using the Alarm Viewer described in the previous section we have seen that we have the opportunity to be notified whenever an alarm occurs and we can validate it if it is defined that way so the alarm will appear until the alarm is validated even if the alarm condition no longer occurs The problem is that the Alarm Viewer notify us via a popup window in the operation post that the alarm has occurred and therefore if you are not controlling the screen not we realize the alarm To solve this issue we have the alarm events that can be defined as procedures that are triggered in the server of Monitoriza whenever an alarm is initiated completed or validated The typical use of these events is to send a notification that the alarm has entered into a certain state for example by sending an email or SMS message Thus if we are controlling for example temperature and this exceeds a certain value we can send a message to a particular phone or an email message indicating that the temperature has exceeded the preset value While this is a typical use the truth is that we can d
71. larms Indica si activa alarmas Illustration 27 Create Edit variables This has the following properties e Active Alarms Indicates whether to activate alarms for that variable We show in more detail in the next chapter e Value Type Sets the size of the variable The options are Single Word 2 bytes and Double_Word 4 bytes e Sign Defines whether the variables are considered signed or unsigned The options are Unsignedinteger unsigned integer and Signedinteger signed integer e Name The symbolic name we give to the variable Must consist of alphanumeric characters and contain neither spaces nor symbols e PLC Variable Identifies the PLC register and must follow the rules and conventions for the selected plc type e Permissions Properties RequiresAudit and AuthenticationRequired specify whether a user must authenticate to be able to change a value and if you keep a record of changes respectively These properties are detailed in the chapter Users and Permissions e Scaling Indicates that the value of this register is scaled i e we can specify the maximum and minimum values for scaling analog values for example if we have a record that will give us the input value of a probe and on the one hand we have a signal of 12 bits and the other a probe 4 20 mA measuring temperatures between 40 C to 60 C we should configure these properties this way EO Scaling Maximum Analogic Value 4
72. le equal to 0000 format will make the variable display box is filled with zeroes on the left of the value as shown in Figure O56 e Validations Validations property allows us to define a set of conditions on the value of the variable that is bound to the control so if running the project value met any of these conditions will display a notice at the control for example we can design a form as the following figure Precaucion tempera excesiva Which have placed LCDDisplay linked to a variable this property has been set by Validations Collection Editor as shown in the figure below Miembros Y Precauci n temperatura excesiva s EvaluateBy Value In which is specified to display an alarm message associated with this control when the variable value is greater than 90 BorderWidth Defines width of the border line MONITORIZA ACIMUT S L PAG 46 User Manual LedDisplay The LedDisplay belongs to the set of controls that serves to show in a graphic form the value of a variable Their representation is based on the pretense that depending on the value of the variable is turned on or off the LED shown in the control lts function is read only and this control only can view data but can not modify them The main properties of this control are e Server Group Variable and UseBit Used to refer to the PLC variable depending on the communications server the group th
73. lie w eel o ne t x Illustration 8 Menu bar and toolbar On the sides are browser windows of the project the toolbox the server features and variables and the properties window Pag 11 The project explorer window shows the list of forms that conforms our project and with a double click we can display the form in question we may also use the context menu to perform certain operations on the forms as illustrated in next image Archive Editar Ver Herramientas Ayuda PA RADA amp YA Explorador El Demo aut mata ModBus TCF Formulario 1 Formularia Establecer formulario inicial Eliminar Guardar formulario como Agregar formulario Illustration 9 Project explorer window The ToolBox window allows us to add components to forms with these components we design the forms and give them the desired functionality or use components that allow us to view or modify the variables or parameters that we want to monitor Scada tab or components used to control the flow of application and define its design or appearance Layout and Windows tab Ie Puntero Elipse CheckBox CheckedListBox M Rectangulo i BotonEstado R Rotulo E DateTimePicker A Etiqueta E GroupBox GrupoOpciones JA HScrollBar al ImageList ListBox IndicadorAnalogioo E MonthCalendar fii IndicadorLCD NumericUpDown IndicadorLeds Panel TE IndicadorNumerico laa PictureBox TO Level RadioButton A LinkLabel TabCo
74. lls The server supports both LAN and WAN User Manual Pag 85 SERVER Acimut s Monitoriza server is responsible for establishing and coordinating communications with both devices and PLC s and also databases The server monitors the changes in the variables defined in real time and reports to clients ie the checkpoints so they can present information to system user s It is also responsible for evaluating the values of the variables to see if either of the conditions to trigger an alarm is true Base de datos Cliente Aut matas Cliente Servidor de comunicaciones Ilustraci n 68 Communications scheme When server is started application asks us to create a shortcut to the application Mecesita un proyecto Proyecto Scada Quiere configurar un cceso Directo Ilustraci n 69 Configure shortcut This is because the server needs to know the project we want to run We must to specify a project Scada created with the Monitoriza s Editor and clicking the Create Shortcut on the desktop we will create a link to the server that will remain as such C Program Files 1 Acimut APCNetServer exe C 1 Documents and Settings User My Documents 1 ServidorModBUSTCP scada To end the server application we have to click with right mouse button on the server icon located on the desktop notification bar marked in red in the figure below MONITORIZA ACIMUT S L PAG 86 CLIE
75. m the lists of the screen Each record added to the template has two additional fields e UseBit allows us to use individual bits of the variable e ValidityCheck is a field that if used will be a requirement prior to loading of the recipe In other words if the record hasn t that value will not load the recipe nor manually or by a batch procedure Once we have defined the template we can add recipes using the recipes button it _ Is also possible in execution by the user with the Recipe control MONITORIZA ACIMUT S L PAG 78 This is the screen you will see that has a behavior identical to the one while executing the project except for the fact that can not be loaded in the PLC Editor de Recetas d x Plantilla 1 With the Edit button we add edit or remove Recipes ValorSeleccion field also allows us to specify the load value of each batch recipe if necessary Important The recipes are stored in a file in the same location and name the project has but with the extension recipes Every time we add a recipe the system will populate the grid of the screen template registers the user can simply fill in the values loaded in the PLC Each template has some registers to configure the load behavior in batch ie independently of the action of a user the Monitoriza server checks a number of records to determine when to load a recipe in the PLC Batch settings for each template is in the Batch Interfac
76. modifies the aspect of the visualization transforming if we desire it the way of showing it HA ProgressBar ProgressBar control functionality is to represent the value of a variable the size of the progress bar is proportional to the value of the variable The main properties of this control are e Server Group Variable and UseBit Used to refer to the PLC variable depending on the communications server the group that is defined and the symbolic name we give to the variable additionally set the property UseBit if we want to refer to a bit in particular e Divider When control is binded to a variable shows the value of the variable divided by the value of the property e Multiplier When control is binded to a variable shows the value of the variable multiplied by the value of the property e Value Value of the variable associated with Server Group and Variable e Maximum Maximum value of the scale values that may render the control Any variable value that exceeds the value of the property is represented with the value of the property e Minimum The minimum value of the scale of values that can represent the control Any value of the variable less than the value of the property is represented with the value of the property MONITORIZA ACIMUT S L PAG 52 MONITORIZA Plantilla Y Eta UsarBit Recipe Recipe control is a control that allows users to view edit and upload Recipes in the PLC if
77. mos hecho clic accedemos a otro control en el formulario Dim etiqueta As Windows Forms Label etiqueta boton TopLevelControl Controls Labell etiqueta Text Aqui tambi n cambiamos el texto End Sub End Class For these changes to take effect first we must generate the new library and then reload the project before running ACCESING TO VARIABLES AND COMPONENTS An important element to highlight is ability for accessing from the code to the values of variables these are found in a Dictionary property of the Form also allows access to components such as the timer on a property similar to Controls called Components we see an example how easy access to these two properties of the form When we access the property variables we indicate what variable we get the value from with the arguments server name group name and the name of the variable separated by commas Public Class Monitoriza Public Sub MsgBox ByVal sender As Object ByVal e As EventArgs Dim boton As Controles Boton sender le cambiamos el t tulo al formulario boton TopLevelControl Text Hemos hecho clic accedemos a otro control en el formulario Dim etiqueta As Windows Forms Label etiqueta boton TopLevelControl Controls Labell etiqueta Text Aqui tambi n cambiamos el texto accedemos a las variables y componentes definimos el formulario Dim formul As Controles Formulario formul CType boton ToplevelControl Controles Formulario
78. nd the particular variable that we represent In the case that the variable type is dynamic we have to set the Server properties Group and Variable corresponding to server communications with the PLC the group of variables where the variable is defined and the variable we wish to represent For both types of variables we must specify the color with which plot the variable using the Color property and the text that appears associated with the variable in the Legend property XAxisColor Color for drawing the horizontal axis XAxisText Text that appears next to the x axis YAxisColor Color for drawing the vertical axis YAxisText Text that appears next to the y axis GraphicStartColor Initial color for the chart gradient background GraphicEndColor Final color for the chart gradient background PanelStartColor Initial color for the chart area gradient background PanelEndColor Final color for the chart area gradient background Legend Set to True if you want to display the legends associated with each variable else set to False TitleColor Text color for the title e FontTitle Font used to display the title e TitleText Text for the title of the chart MONITORIZA ACIMUT S L PAG 56 MONITORIZA Text The text control is possibly the most used control in any SCADA project its goal is both to display values of variables and edit and modify these values The Value edition is completed by pressing the Enter 2 ke
79. ng the variable if we assign a read only permission the user will can not modify variable values regardless of the Read only property value of the controls You can also specify permissions for groups of alarms User Manual Pag 75 MONITORIZA Alarm Groups are a way to group sets of alarms based on the target users for those alarms Por example if we have two control points in a facility monitoring two different processes for each alarm that we define we must assign it to a group using the AlarmGroup property Thus in the permissions window we will set permissions for each user about whether the alarm is displayed or not and about whether the user can validate or not it By default all users have full access to all alarm groups that is if we want to restrict access we must do it by specifying permissions Possible types of access are No Access The user not is notified of the alarms Read Only The user is notified of the alarm but can t validate it Full Access The user is notified of the alarm and can validate it The Permissions tab in the users form is as shown here Usuarios y permisos Auditor a y Autenticaci n Interacci n con Windows Auditor a Seg n Configuraci n DisableAtTabKey Seg n Configuraci n v DisableAtlEscKey Time Out Autenticaci n Seg n Configuraci n DisableWindowsKey Autenticaci n Se pide usuario y contrase a para validar las alarmas y los cambios de variables L
80. ntrol isa Panellmagenes 2 RichTextBox mj ProgressBar E WscrollBar Recipe EF WebBrowser TecladoNumerico Temporizador z Tendencia Texto TedtoConMascara E ToolTip 0 TrackBar E ToolBox E Variables Variables ToolBox G Variables E ToolBox Illustration 10 Toolbox The window of features and server variables allows us to define parameters for each communication server that we define in the project such as the IP address of the PLC with which we communicate and the characteristics of groups and variables defined on each server MONITORIZA ACIMUT S L PAG 12 MONITORIZA a f ModBusRTU SN ModBusTCP Ebl Registro 14 pak abi Registro 15 dd Nombre Registro 12 MW12 E Simulaci n Variables G5 ToolBox GS Variables een Illustration 11 Server amp Variables property window In the Properties window we can define the characteristics of each of the components added to the forms for example in the following figure we see that selecting the IndicadorNumerico component in the properties window will show the characteristics or properties of that component particularly als alo wy wind Illustration 12 Control Property window Keep in mind that although the windows are arranged on the sides this layout is configurable and simply dragging ov
81. o a wide range of actions when an alarm is set launch a process in the server or stop it record in a database invoke a service external to our system so how Monitoriza allows you to define procedures to be fired when the alarm starts ends or is validated is programming the procedure in C or VB NET Let s see how to do this From the Alarms Editor window we must select the alarm to which we assign events Editor de Alarmas Oke Evaluate by Type Value Use Bit Value E Scada Divider Format Multiplier Illustration 36 Alarms Editor Clicking the Events button in red in the picture will show the next window User Manual Pag 31 Propiedades de Temperatura alta E a Ha Alarm Validated Illustration 37 Alarms Events In this Window are three events AlarmStarts AlarmEnd and AlarmValidated that are the events that will be fired when an alarm situation is started ended or validated We can bind code to one event or to all For example to bind code to the event AlarmStarts we must click over the three dots button in red in the illustration in order to open the code editor for the event Code Events Eien oq ME 1 Imports 5 H ModBusTCP1 gt Imports System Drawing S a Imports System Data Imports System Xml Imports System Windows Forms Imports Microsoft VisualBasic Imports System Net Mail Namespace Scada Public Class Monitoriza Public Sub AlarmStarts ByRef clsVa
82. o get the following ad Simulaci n ClaseMonitoriza Hola soy Botonl As previously said you can debug the library must be generated with debug information and include debugging information in the project The first step is to open with Visual Studio project the library then we start the project and again on Visual Studio choose the menu option Tools Attach to Process and in a screen like this choose Scada exe process ClaseMonitoriza Microsoft Visual Studio Administrator File Edit View Project Build Debug Data Tools Test Window Help Oo AG aaa 29 04 80 03039707200 0 85 mi mi g ClaseMonitoriza Y 9 MsgBox y Public C attach to Process gt Publ Transport eT End End Clas Qualifier EMILIO z Transport Information The default transport lets you select processes on this computer or a remote computer running the Microsoft Visual Studio Remote Debugging Monitor MSVSMON EXE sa madosd 1aso1dx3 uonnjos R l Attach to Automatic T SQL code Managed code Available Processes 13101033 Jamas saumo yaunsod F xoq oo x User Name p ACIMUT_ES esanchi ACIMUT_ES esanchi ACIMUT_ES esanchi m Process OfficeLiveSignIn exe OUTLOOK EXE rundll32 exe m RES Scada Acimut ACIMUT_ES esanchi ACIMUT_ES esanchi sidebar exe RealUptime sidebar exe AppBar Bullet ssexp exe VSS6 Explorador de Visual SourceSafe taskeng exe ACIMUT_ES esanchi
83. of options when the radio button is matched with other radiobuttons User Manual Pag 67 TabPagel TabPage2 2 TabControl TabControl is used to show several tabs like dividers on a notebook or labels of the folders in a filing cabinet Tabs can contain images and other controls The most important property for the tabcontrol is TabPages that contains the individual tabs Each individual tab is a TabPage control Rich Test Box RichTextBox RichTextBoxcontrol allows displaying formatted text that is with different fonts and styles a VScrollBar VScrollBar control allows an easy browsing when we have a large set of items to show WebBrowser WebBrowser control allows the user to browse web pages In order to use the control we must to set in the Url property a valid web address for example a valid url can be http www acimut es TEST THE PROJECT Acimut Monitoriza has the option to simulate the execution of the project while we are developing it using two different ways If our development environment has no connection with PLC neither other devices we want to check we can test the project using Simulation mode MONITORIZA ACIMUT S L PAG 68 Else if we can access to the PLC or the desired device we can use the Server mode to test EF Monitoriza Scada Acimut Archivo Editar Ver Herramientas Ayuda J GS A RE z lane x SU a da Variables E q E 1iB Servidor_TCP Ga
84. of this control but simply by the presence of a ToolTip control on the form all other controls contained in that form adquire the ToolTip property In this ToolTip property of each of the controls where we can introduce the text to show as help and information for the corresponding control Y TrackBar TrackBar control represents the standard Windows control for tracking bars To configure the intervals between which the value of the Value property of a track bar will be moving you must set the Minimum property to specify the lower end of the range and the Maximum property to specify the upper end of range e Server Group Variable and UseBit Used to refer to the PLC variable depending on the communications server the group that is defined and the symbolic name we give to the variable additionally set the property UseBit if we want to refer to a bit in particular e Divider When control is binded to a variable shows the value of the variable divided by the value of the property e Multiplier When control is binded to a variable shows the value of the variable multiplied by the value of the property e Value of the variable associated with Server Group and Variable e ReadOnly Controls whether you can change the value of the variable If set to True you can display only values but may not be modified e Minimum Lower end of the range e Maximum Upper end of the range Design Tab From it we can see controls belonging to De
85. onitoriza 5cada Acimut Archivo Editar Wer Herramientas 14 Nuevo proyecto Ctrl ES Abrir Ctrl A la Guardar Ctrl G Guardar como eS Nuevo formulario Now the Monitoriza Editor looks like IRS Monitorzal Senda Acimut CS xp Archivo Editar Ver Herramientas Ayuda DWE 9 o KBB gt a oO see saat dle we o o me Formulario1 Auto Scroll False E AutoScrollMargin 0 0 AutoScrollMinSize 0 0 Auto Size False AutoSizeMode GrowOnly Fill Solid ToolBox Variables Illustration 39 Monitoriza Editor Now we have a new form and its properties on the right Also note that now we have enabled the editing tools in the toolbar Additional forms will be created in new tabs and also in the Explorer tree on the right Closing a tab does not involve deleting a form MONITORIZA ACIMUT S L PAG 34 User Manual E Demo aut mata ModBusTCP E Formulario 1 Establecer formulario inicial Guardar formulario como Agregar formulario Illustration 40 Project Explorer treeview The Project Explorer allows with double click open a form and using a contextual menu Delete Export and Import forms Demo http www acimut com monitoriza videos crear formularios default html As mentioned above to add controls to the form we can drag them from the ToolBox window as shown int t he next illustration la Ac
86. ontrol is display a fixed text To show the value of a variable we must bind a variable to control through properties Server Group and Variable If we want to show various texts we must use the messages property Main properties of the control are e Server Group Variable and UseBit Used to refer to the PLC variable depending on the communications server the group that is defined and the symbolic name we give to the variable additionally set the property UseBit if we want to refer to a bit in particular Setting these properties change the behavior of the control so the control show the value of the variable referenced by Server Group and Variable instead of text that is set to the Text property e Text Text of the control This property has no effect if we bind the Server Group and Variable properties e AutoEllipsis If set to True the text that extend beyond the width of the control is replaced by ellipses e AutoSize If set to True will enable automatic size of the control to fit the size of the text e Divider When control is binded to a variable shows the value of the variable divided by the value of the property e Format When control is binded to a variable displays the value using the format specified by the property for example a format equal to 00 variable will cause the display of two decimal places e Multiplier When control is binded to a variable shows the value of the variable multiplied by the value
87. os posibles valores son Nunca No se solicitar n Siempre Siempre se solicitar n Seg n configuraci n Se solicitar el usuario y la contrase a en funci n de lo establecido en las variables y los grupos de alarmas Illustration 62 Permissions tab This form is the place to establish general criteria for auditing events changes authentication and the application interaction with Windows Auditing parameter Through Auditing parameter it is set how to audit the use of the application thus it is possible to set a record of the events that occurs during the use of the application when it is started when it is stopped when a variable value has changed and what is the new value when a particular form is open when it is closed The possible values for this parameter are Never Nothing will be audited Allways Everything will be audited Depending on configuration Changes of the variables will be audited depending on the RequiresAudit propertie value of each variable All other events not corresponding to changes of the variables will be all audited MONITORIZA ACIMUT S L PAG 76 MONITORIZA Authentication parameter Through Authentication parameter we can set whethe changes of a variable value or validation of an alarm will require a new authentication or not The possible values for this parameter are Never The application will never require an authentification to the user be
88. perfectly valid for use with Monitoriza In this document we will see examples developed in Visual Basic FUNCTIONS Monitoriza uses NET DLL projects to run functions to create a project of this kind from Visual Studio choose the option File New Project menu and select a project type and Class Library for example we will give it the name ClaseMonitoriza There are a number of conditions that a library must meet to be used from Monitoriza first however the library can have any number of classes Monitoriza can see only the public ones so it must also be public functions We see here an easy and usable code from Monitoriza g SA ClaseMonitoriza Microsoft Visual Studio Administrator o po a File Edit View Project Build Debug Data Tools Test Window Help E M AEA N EET E EET E N e e EEEE Class1 vb Start Page x 4 ClaseMonitoriza v Dedarations Public Class ClaseMonitoriza Public Sub MsgBox ByVal sender As Object ByVal e As EventArgs i Hl samadosd ple 18101dx3 uonnjos Ra A End Sub End Class 1310103 191138 Ez auno yuawnsog F xoqioo X de Find Symbol Results E Output Task List T Pending Checkins D Error List Ready Ln4 Col 12 ch12 INS An important observation is that the functions we write will be used from events of different Monitoriza objects so they must contain the two arguments of
89. rds and as you can see you can assign the startup form and permissions for each SCADA application form As you can see there are defined two types of users or in other words two types of user authentication In one hand there is the Monitoriza Authentication which is characteristic of the Scada project itself and in the other hand there is the Windows Authentication in which we can specify which users of the active directory Domain are allowed to use the Scada project Within a single project it is possible to create and use users with either Monitoriza or Windows authentication Which one of both will be more accurated will depend on the security policies established in your environment When defining a user with Monitoriza authentication a user name and a password must be provided while defining a user with Windows authentication just needs to enter the Windows login in the format domainluser as it appears in the active directory and the password will be that one the user has defined in it so when the user will need to login the application he just need to enter the Windows user name and password as he does when login to Windows Whether you choose one type of authentication or the other it is mandatory to specify the start form and the permissions for each form Keep in mind that if you assign a user full access permissions on a form the user can modify variable values unless it is prevented specifically by the control holdi
90. record type functions used in Monitoriza are in the table below Modbus Function Code Funcionalidad FC1 Read Coil Status FC2 Read Input Status FC3 Read Holding Registers FC4 Read Input Registers FCS Write Coil FC16 Write Multiple Registers MONITORIZA ACIMUT S L PAG 102 Functions not used are User Manual Pag 103 MONITORIZA Review October 2012 Acimut Integraci n de Sistemas MONITORIZA ACIMUT S L PAG 104
91. riables As object End Sub End Class End Namespace Illustration 38 Code Events Editor In the Code Editor of Events we can write code in both C and in VB NET by simply selecting the appropriate menu MONITORIZA ACIMUT S L PAG 32 MONITORIZA User Manual Left panel shows the list of servers groups and variables that we have defined having the ability to drag and drop any of the variables on the editor window in order to pick up their value or change it Here s an example of code used to send an email using a gmail com account In the example we can see that consists in creating a SmtpClient object to set the connection to the mail server a MailMessage object that allows us to identify the sender recipients subject and message body In the example we use the value of the variable Registrol to compose the message body in the property MyMailMessage Body Moor ts oy seem Imports System Drawing imports SYSTEM Dara Imports System Xml Imports System Windows Forms Importo Micweesorr Vista lBas Tte Imports System Net Mail Namespace Scada Pulplive Class Mono niza Public sub AlarmStarts ByRef clsVariables As object LEY Start by creating a mail message object Dim MyMailMessage As New MailMessage From requires an instance of the MailAddress type MyMailMessage From New MailAddress remitente gmail com To is a collection of MailAddress types MyMailMessage To Add destinatario dominio com
92. rst is an image that has movement while the last image corresponds to a stop When selecting an image from the Image library images are displayed in animated movement to make clear its functionality Also the images are affected by the Rotate property that modifies the aspect of the visualization transforming if we desire it the way of showing it Pag 61 MONITORIZA TW The control line serves to draw a line under the surface of the form or within any other container control Line is represented as shown in the figure below Besides the identifying framework indicating the control is selected we see two red dots These two dots are called handlers and serve to drag the start or end of the line to another position To do this simply select the handler with the mouse and drag itto another position when we release the button we draw the line with the start or end in the final position of the mouse handler The same could have been done modifying in the properties window StartPoint property or EndPoint property Another useful tool when drawing a line are the vertical and horizontal indicators these indicators are shown when moving the starting or end point of a line through their handlers and the line is parallel to one of the coordinate axes such and as seen in the following pictures a Formulario Demo http www acimut com monitoriza videos mover_linea default html The main properties of thi
93. s binded to a variable shows the value of the variable divided by the value of the property e Multiplier When control is binded to a variable shows the value of the variable multiplied by the value of the property e Value Value of the variable associated with Server Group and Variable e Format Displays the value in the format specified by the property for example a format equal to 00 will cause the display to two decimal places using the color defined in ForeColorDecimal e Validations Validations property allows us to define a set of conditions on the value of the variable that is bound to the control so if running the project value met any of these conditions will display a notice at the control In order to define the collection of valiodations we must use de validations Collection Editor Miembros Propiedades de Precauci n temperatura ex I Precauci n temperature e a E Validation Alarm Text Precauci n temperal Evaluate By Mayor Que Value 90 e Digits Number of digits used to display decimal places e ForeColorDecimal Color for the decimal part of the number For example the value 30 56 will be displayed if we stablish ForeColorDecimal to Red and Format equal to 00 PAG 48 Level Level control is used to graphically represent a value of one variable For example if we have a tank in wich we are controlling the volume we can put a volume control on Level associat
94. s control are e ForeColor Color of the line forming the ellipse If the Fill property is set to Solid color is used as the fill color of the ellipse e Fill Fill Type of the ellipse The possible values are None Solid Horizontal Vertical ForwardDiagonal and BackwardDiagonal None and Solid choices MONITORIZA ACIMUT S L PAG 62 MONITORIZA produce a solid color fill using respectively the BackColor and ForeColor to fill Options Landscape Portrait ForwardDiagonal and BackwardDiagonal fill with a color gradient in the direction specified by the option FillColorStart Start color of the gradient filling FillColorEnd End color of the gradient filling Thickness Width of the line border StartPoint Coordinates for starting point of the line EndPoint Coordinates for ending point of the line StartCap and EndCap Sets out the shape of the beginning and end of the line respectively The possible values are IA Flat MO Square IS Round A Triangle MA NoAnchor E SquareAnchor D or G DiamondAnchor e o E Anchor Mask A Custom Rectangle The Rectangle control allows us to draw rectangles that we can fill with gradients The main properties of this control are e BackColor Fill color of the ellipse if the Fill property is set to None e ForeColor Color of the line forming the ellipse If the Fill property is set to Solid color is used as the fill color of the ellipse e Fill Fill Type of the ellipse
95. sign Tab in Acimut Monitoriza Elipse g Imagen Fi Linea Rectangulo R Rotulo Illustration 51 Design ToolBox Tab User Manual Pag 59 MONITORIZA These controls have primarily a function of design for our form and are not associated in any way with data display in Scada All controls in this tab are designed to have visual transparency and not to react to mouse clicks That is the controls aren t in a rectangular region of the form as is normal in Windows but in those regions where the control does not draw anything any control that is below will be visible capturing mouse actions in these transparent zones For example we have a Rotulo control over a Boton control as shown in the picture below In this case Rotulo control despite occupying the same rectangular area of the form let us see the control button behind and if we click with the mouse for example in the center of the O in word Rotulo the click is made on Boton control Ellipse The control allows us to draw Ellipses and Circles The main properties of this control are e BackColor Fill color of the ellipse if the Fill property is set to None e ForeColor Color of the line forming the ellipse If the Fill property is set to Solid color is used as the fill color of the ellipse e Fill Fill Type of the ellipse The possible values are None Solid Horizontal Vertical ForwardDiagonal and BackwardDiagonal None and Solid choices produce a sol
96. sk Sets the string that controls the entry allowed e Format Displays the value in the format specified by the property for example a format equal to 00 will cause the display to two decimal places e Text Variable value associated with the Server properties Group and Variable e ReadOnly Controls whether you can change the value in the edit control e NumberingSystem Displays the value of the variable in the numbering system specified Possible values are decimal and hexadecimal e Validations Validations property allows us to define a set of conditions on the value of the variable that is bound to the control so if running the project value met any of these conditions will display a notice at the control To define validations we must use the Validations Collection Editor in which we designate to every condition that we define the following properties Alarm Text EvaluateBy and Value where Alarm Text is the alarm message text to display if condition is met EvaluateBy the kind of condition we want to establish with the possible values Same GreaterThan MinorThan and Different and Value is the value we want to compare 4 Precauci n temperatura excesiva s MONITORIZA ACIMUT S L PAG 58 MONITORIZA AsTooTie ToolTip ToolTip control is used to display an info window when you have your mouse over a particular control The main property of this control really is not assigned in the properties
97. ss to that will join in groups and at least one form for designing the user interface of the project Additionally we can set alarms that are triggered with the conditions that we define users and permissions to establish form access to each of the defined user In the definition of servers we can also set the database server where we store permanently the values of the variables we monitored Here s how to do each task To start the Monitoriza Editor we will have to start a new project by clicking on the New Project option from the File menu Editar Ver Abrir Ctri A Muevo proyecto Guardar Guardar como Illustration 15 New Project menu Or else clicking the New Project button in the toolbar EEE Archio Editar Ver Herramientas Ayuda fr r a r EE El a E Nuevo proyecto Illustration 16 New Project toolbar icon Then we define the communication servers with PLC and databases either by clicking on the View menu option Servers ES Monitoriza Scada Acimut manual i Archivo Editar Herramientas Ayuda n amp B amp 427 Ventana Propiedades F4 Vas Servidores 9 Usuarios y permisos ModBusRTU Grupos de alarmas Ea Grupo2 a Configuraci n Comunicaciones 6 3 Grupo3 F Librer a de Personalizaci n f ModBus TCP Librer a de Im genes ffi OPC Referencias Cruzadas N mero de Variables o Plantillas de Recetas
98. sult Third 2 MinimumSize 9 Case Else S Opacity 20 result Another 2 Padding 2 end select 2 RightToLeft 22 Return Result 7 RightToLeftLayout 23 End Function Showlcon 24 End Class 2 Showin Taskbar 25 End Namespace 2 TransparencyKey SF UseWaitCursor 7 Visible lt o Ready VB NET We will continue having the same functionality in the list on the left but now we have a new code editing window in which we can develop a function the value returned by the function is dynamically assigned to the chosen property We can use the list of the top to drag and drop on the new code window and not have to write or properties or variables When making the association with the button z code will be compiled and reported for syntax errors As we see in the picture above we have created a procedure based on the value of a variable that returns us different values assigned to the Text property As mentioned besides being able to dynamically assign values to control properties we can execute code on events of the controls Writing the code for these events can be achieved by double clicking on a control or by double clicking on the chosen event in the properties events window and then Monitoriza will show the following window User Manual Pag 89 q MouseMove 3 i Imports System Data z Imports System Windows Forms 7 Namespace Scada 15 En
99. t documentation on this subject that its outside the scope of this manual The property is vendor specific driver we must consult the documentation for each OPC server is a prefix that usually defines how we communicate with the PLC and its direction and characteristics In the next chart we can see some examples Siemens 57 200 7200 0PCServer 192 168 100 120 1200 1001 VW1000 INT RW Telemecanique Schneider UNTLW01 0 254 0 MW 2000 Aut OFS 2 po ESE MW2000 po PO 192 168 1 2 10 2 YMW2000 MONITORIZA ACIMUT S L PAG 18 MONITORIZA Simatic ISO S7 The properties of a server type Simatic S7 ISO are Are the Simatic device IP address the number of CPU Rack usually 0 and the slot in the Rack in which lies the CPU usually the 2 Illustration 23 Simatic OPEN AND SAVING PROJECTS On the File menu options are typical Open Save and Save As to allow us to open previously saved projects and save the changes that we make to our projects These operations can also be done from the toolbar rn ad Monitoriza Scada Acimut Demo i Archiwo Editar Ver Herramienta _ Nuevo proyecto Ctrl N ES Abrir Ctrl A la Guardar Ctri G Guardar como CREATE VARIABLES The variables in Acimut Monitoriza are the basic element of information with them we set the bond between the tags and records of the PLC and the various components of our project enabling the visualization and mo
100. t actions by the user The main properties of this control are Action and Actions we will use the first when we want to make a single button action and property Actions should be used when we want a series of actions in rapid succession The possible options for the Action property and set of actions are NoAction Indicates that the button has no action to perform OpenForm Opens the form named in the property Form CloseForm Closes current form ExitScada Closes the application ForceValue Force the value of the variable referred by Server Group and Value and makes that the new value is the one in the Value property ShowAlarmsHistory Opens the Alarms Storage form e ShowGraphic Opens the Data Storage form User Manual Pag 39 MONITORIZA To establish a set of actions for the button it s made using the Actions Collection Editor as shown in the image below Miembros 0l Forzar Valor U Cerrar Formulario Illustration 45 Actions Collection Edit window BotonEstado This control normally will be used to display and modify the status of a variable The default operation is to assign to StatusButton a variable defined in the communication servers and display a color or another depending on whether the variable is O or 1 and each time you click the button the value of the binded variable can change to 0 or 1 We can display a set of images or a list of colors depending on the value of the
101. t consists of more than one line you can separate the lines using a carriage return character Chr 13 a line feed character Chr 10 or a carriage return linefeed character combination Chr 13 amp Chr 10 between each semedoid 1aso1dx3 uognjos R l MouseButtons MousePosition Y NotifyDefault ep Padding 7 Parent Y PerformClick Y PerformLayout Y PointToClient PointToScreen Common Public Property Name As String A Task List Output 3 Pending Checkins jg3 Find Symbol Results 2 Error List Ready control contained herein Ln4 Col 58 Ch 58 INS achieve the form or other To show this add a Label to the form of the project and modify the code The form would be as follows Monitoriza Scada Acimut Simulaci n Archivo Editar Ver Ayuda Da BF 0 0 amp Ga D GB Bi ji one Bs ae 12 Formulario 1 A xv O El GEV ABRBO gt E An E pepi rackBar wl 7 FI i ToolBox ES Explorador We must modify the code this way Habilita cambio de tama o autom tico seg n el tama o de la fuente Esta opci n es s lo v lida par Pag 95 MONITORIZA Public Class Monitoriza Public Sub MsgBox ByVal sender As Object ByVal e As EventArgs Dim boton As Controles Boton sender le cambiamos el titulo al formulario boton TopLevelControl Text He
102. t the user cannot access the Start Menu and thus cannot start another applications or wndows components RECIPES amp INTERFACE BATCH Let us first define what is a recipe A recipe is a set of PLC records with a default value lt could serve as an example a mixture of several components in a manufacturing depending on the percentage of these elements would have a different final product The recipe would be for example the percentages of each element lt would mean different recipe depending on the final product that we wanted to obtain Monitoriza allows the loading of recipes either manually or automatically Batch So each set of recipes starts from a template in which you define what we will use and whether such records shall comply with any condition Edit templates and recipes are available from the Templates menu option from the View menu recipes This option will lead to the following screen User Manual Pag 77 Each template will have an associated set of records that will be generic for all recipes and if so decided a batch interface for automatic loading To get started we need to register at least one template the Edit button will allow us to register modify or delete templates recipes When we click on this button will display the following Plantillas Once we have at least one template we can add records to it go for it by selecting the server group and variable that we will use fro
103. the database can be accessed from an application monitoriza with ease for it is only necessary to add a button on a form in which his Action property is set to MostrarHistoricoAlarmas During execution of the application this will show us the form below al Hist rico Alarmas A AA Desde 25 02 2009 18 56 31 Hasta 25 02 2009 18 56 31 Illustration 66 Alarms briefing This form will allow us to see a history of alarms that we choose MONITORIZA ACIMUT S L PAG 84 CONFIGURE SERVER COMMUNICATIONS Monitoriza is a application that uses client server communications technology so it is necessary to properly configure the server for this issue we have the next menu y Monitoriza Scada Acimut Simulaci n Archivo Editar Ver Ayuda 06d 4 Ventana Propiedades EEE ETE E E ToolBox 7 Ed Servidores gt z Dise o 8 Usuarios _ Fomulario1 Controles Formulario Scada Configuraci n Comunicaciones EH E g El Librer a de Personalizaci n El Accesibilidad A Boton e gt Librer a de Im genes AccessibleDescription BotonEstado AccessibleName A Etiqueta Referencias Cruzadas AccesshleRiole Defaut GrupoOpciones N mero de Variables E Apariencia a ImageList i BackColor Control IndicadorAnalogico Backgroundimage _ ninguno 11 IndicadorLCD nte ay o E ursor aul de i ae gt Font Microsoft Sans Serf 8 25 i iS ForeColor
104. the form Public Sub MsgBox ByVal sender As Object ByVal e As EventArgs End Sub sender is the control form timer etc that triggers the event e is the parameter associated with the corresponding event Let s add some code to the function User Manual Pag 91 MONITORIZA ACIMUT S L Public Class Monitoriza Public Sub MsgBox ByVal sender As Object ByVal e As EventArgs Microsoft VisualBasic MsgBox Hello I am amp sender name ToString End Sub End Class To use this function we have written we must generate the library and add it to the Monitoriza project for this issue in Visual Studio choose the menu option Generate ClaseMonitoriza In the Monitoriza Project Editor we must generate a new project and choose the menu option View Customization Library in the next window we look for and assign the library to the project KS Librer a de personalizaci n Libreria CMonitorizaClase MbnitorizaClase Monitoriza bin Debug Clase Monitoriza dll Incluir informaci n de depuraci n We have chosen to include debugging information we will see in the next step how to debug a function Keep in mind that we will not need to distribute the library as an additional file library is embedded in the Monitoriza project this is why every time you change the library you need to refresh it using the previous screen and accepting the changes Once accepted the previous option and on a new form declared as defa
105. the surface of a form once on the form their properties may be edited in order to give them the desired functionality There are two main groups of controls One allows us to group functionalities such as Panel and TabControl and the other show the user the values of the variables These controls have properties to define how to display the value of a variable Let s see an example of these properties used in most of the cases The properties Server Group and Variable refer Scada to the variable to be represented UseBit property if Server used refers to the bit between O and 15 which will CodeBindings be displayed value 0 or 1 ia S m Group Multiplier and Divider properties alter the value Multiplier 1 displayed The property NumberingSystem allows NumberingSyste Decimal you to display values in hexadecimal UseBit Validations Format allows us for example display and limit the Variable number of decimal places displayed Finally Validations property allows us to establish conditions for writing and display on the control when validations are true we will receive an incidence warning next to the control Let s see the validations editor MONITORIZA ACIMUT S L PAG 38 MONITORIZA Valor no permitido EvaluateBy Mayor Que 100 Illustration 44 Validations Edit Window The complete list of available controls is as follows Scada Tab Boton The functionality of this control is to implemen
106. ult we will place a button and assign the Click event ClaseMonitoriza MsgBox let s see how it looks E Monitoriza Scada Acimut Simu aci n _ OE aa a T a aC Archivo Editar Ver Ayuda Oe SF 9 o KBB gt SRA e e a a e a MGA AHH ToolBox 2 Formulario 1 4 gt x Propiedades a Boton1 Controles Boton m Scada a Simulaci n 632 8 AHA E Acci n EIA Moritoriza MsgBox y a A Etiqueta MouseCtick GrupoOpciones E Apariencia Imagelist Paint 5 IndicadorAnalogico El Arrastrar y colocar 111 Indicador CD Dest er IndicadorLeds ee p 3 DragOver Level GiveFeedback A LinkLabel QueryContinueDrag E Panel E Comportamiento l Panellmagenes Change UlCues d PictureBox ControlAdded ProgressBar ControlRemoved E QueryAccessibilityHelr TedadoNumerico StyleChanged Temporizador SystemColorsChangec E Tendencia E Datos abl Texto DataBindings TextoConMascara E Dise o 9 TrackBar Layout 3 WebBrowser MarginChanged Move PaddingChanged Resize El Foco Enter Leave Validated Validating E La propiedad cambi a Click Tiene lugar cuando se hace clic en el componente G5 ToolBox E Explorador PAG 92 MONITORIZA Now we will implement the project with the Play button 48 Monitoriza Scada Acimut Archivo Editar Wer Ayuda Dees A Ox It will bring up the project in simulation mode and click on the button t
107. valuateBy and Value where Alarm Text is the alarm message text to display if condition is met Evaluated by the kind of condition we want to establish with the possible values Same GreaterThan MinorThan and Different and value is the value we want to compare Miembros Y Precauci n temperatura excesiva User Manual Pag 57 MONITORIZA MaskedTextBox MaskedTextBox control is very similar to control text the only difference is that we can define a mask for editing the text for example if we re showing a variable representing time information we can use a mask as _ _ in which separate the hours of the minutes As in text control we can view and edit values of variables using control MaskedTextBox 2 The Value edition is completed by pressing the Enter l key until Enter is not pressed data new value is not transmitted to the PLC The main properties of this control are e Server Group Variable and UseBit Used to refer to the PLC variable depending on the communications server the group that is defined and the symbolic name we give to the variable additionally set the property UseBit if we want to refer to a bit in particular e Divider When control is binded to a variable shows the value of the variable divided by the value of the property e Multiplier When control is binded to a variable shows the value of the variable multiplied by the value of the property e Ma
108. y until Enter is not pressed data new value is not transmitted to the PLC The main properties of this control are e Server Group Variable and UseBit Used to refer to the PLC variable depending on the communications server the group that is defined and the symbolic name we give to the variable additionally set the property UseBit if we want to refer to a bit in particular e Divider When control is binded to a variable shows the value of the variable divided by the value of the property e Multiplier When control is binded to a variable shows the value of the variable multiplied by the value of the property e Format Displays the value in the format specified by the property for example a format equal to 00 will cause the display to two decimal places e Text Variable value associated with the Server properties Group and Variable e ReadOnly Controls whether you can change the value in the edit control e NumberingSystem Displays the value of the variable in the numbering system specified Possible values are decimal and hexadecimal e Validations Validations property allows us to define a set of conditions on the value of the variable that is bound to the control so if running the project value met any of these conditions will display a notice at the control To define validations we must use the Validations Collection Editor in which indicating to every condition that we define the following properties Alarm Text E
109. y while the rest will be in the Saved User Manual Pag 81 MONITORIZA Variables Editor which we accessed from the property collection variables we see then this editor Editor de Acciones de Guardado Editor de Variables de Guardado Miembros ONPE Illustration 64 Storing Variables Editor Here we define the fields you wish to write to the table and the type of data to be recorded in the property field will have the field name the Data type property will allow us to save Data Variable values Scada Date Time field or constant the rest of properties change depending on the data type It should be noted that if you later want to display or plot these data from the application Monitoriza it is necessary to have a field of type Date Time MONITORIZA ACIMUT S L PAG 82 DISPLAY HISTORIC DATA Acimut Monitoriza allows storage of values in database and can easily show it to the user It is only necessary to add a button on a form and with his Action property set to MostrarGrafica During execution of the application this will show us the form below r al Gr ficas T tulo Desde 25 02 2009 18 55 37 v Hasta 25 02 2009 18 55 33 v Illustration 65 Graphics viewer This form will allow us to see the values and plot them of the Store Action we choose User Manual Pag 83 MONITORIZA DISPLAY HISTORIC ALARMS Alarms stored in
Download Pdf Manuals
Related Search
Related Contents
Samsung 400UX-M Наръчник за потребителя 食品の味評価のための 味覚センサ活用マニュアル (第3版) Reliable MSK-8600B User's Manual Brochure TU31/TU32 Induction Motor Speed Controller User`s Manual View PDF - Thermsaver Heating Solutions 2,27 Mb - ACTIONCLIMA Srl 一般競争入札(WTO)予定表 10月29日 ∼ 12月10日 Trachlight Copyright © All rights reserved.
Failed to retrieve file