====== Definitions of terms necessary for work in Mervis IDE ====== ===== Solution ===== A Solution is a set of projects and PLCs. A Solution contains any number of PLCs and any number of projects. ([[:en:mervis-ide:35-help:010-start_ide:005-new_solution|new_solution]]) ===== PLC ===== A PLC controller is a set of PLC and I/O modules or other communicative devices, such as variable speed drives, room units etc. ([[:en:mervis-ide:35-help:015-plc:005-attach_plc|PLC attachment]]) ===== Project ===== A Project is a set of programs, functions, and function blocks. ([[:en:mervis-ide:35-help:025-new_project|new_project]]) ===== Program ===== A Program, in ST or FUPLA language, defines the contents of cmputing cycles. ([[:en:mervis-ide:35-help:035-software_basic:045-pou:025-program|program]]) ===== Global variable ===== A global variable is a variable defined by user within a project, which means that it can be used in more programs belonging to a project. ([[:en:mervis-ide:35-help:035-software_basic:030-common-elements:030-variables|variables]], [[:en:mervis-ide:35-help:025-new_project:010-variable_definition|variable definition]]) ===== Local variable ===== A Local variable is a variable belonging to a program, function, or a function block. Local variable can not be mapped to a physical (hardware, HW) variable. ([[:en:mervis-ide:35-help:035-software_basic:030-common-elements:030-variables|variables]], [[:en:mervis-ide:35-help:025-new_project:010-variable_definition|variable definition]]) ===== Function ===== A Function is part of a program which can be referred to by a program in different parts of the code. It is created in similar way to a program, but it can not be referred to in a PLC task.  ([[:en:mervis-ide:35-help:035-software_basic:045-pou:005-function|function]]) ===== Function block ===== A Function block is a function with inner state. ([[:en:mervis-ide:35-help:035-software_basic:045-pou:015-fb|function block]]) ===== Reference ===== Reference to another project within one Solution. By referring a project to another project we are able to use functions, function blocks, and programs in another project. ([[:en:mervis-ide:35-help:025-new_project|new project]]) ===== Task ===== A Task is an assignment of a program to a controller. According to the platform type, or hardware design of the PLC, and its computing power, a PLC may execute different numbers of tasks. A task may contain one or more Programs. ([[:en:mervis-ide:35-help:015-plc:065-plc_prog_map|definition of activity of a PLC]])