<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0" xmlns:content="http://purl.org/rss/1.0/modules/content/">
	<channel>
		
		<title>oscada.org: Latest News</title>
		<link>http://www.oscada.org/</link>
		<description>Latest news from oscada.org</description>
		<language>en</language>
		<image>
			<title>oscada.org: Latest News</title>
			<url>http://www.oscada.org/fileadmin/tt_news_article.gif</url>
			<link>http://www.oscada.org/</link>
			<width></width>
			<height></height>
			<description>Latest news from oscada.org</description>
		</image>
		<generator>TYPO3 - get.content.right</generator>
		<docs>http://blogs.law.harvard.edu/tech/rss</docs>
		
		
		
		<lastBuildDate>Thu, 08 Dec 2011 17:07:00 +0200</lastBuildDate>
		
		
		<item>
			<title>OpenSCADA took part in the exhibition during the Qt Developer Days 2011 in Munich and San Francisco</title>
			<link>http://qt.nokia.com/qtdevdays2011</link>
			<description>The following solutions were presented:

The dynamic model of the DMKD multifuel stem boiler unit...</description>
			<content:encoded><![CDATA[]]></content:encoded>
			<category>News</category>
			<category>Publication</category>
			
			
			<pubDate>Thu, 08 Dec 2011 16:28:00 +0200</pubDate>
			
		</item>
		
		<item>
			<title>Release of OpenSCADA 0.7.2</title>
			<link>http://www.oscada.org/en/news-storage/single-page/article//release-of-openscada-072//0a9525937d08f126b9b11fc5734539c8/</link>
			<description>The main purpose of this release is the stabilization and testing of key functions before releasing...</description>
			<content:encoded><![CDATA[<p class="indent10">&nbsp;</p><div style="text-align: center; "><h1 style="margin: 0px; padding: 2px 0px 7px; font-family: Verdana; font-size: 23px; line-height: 25px; color: rgb(51, 51, 51); ">&nbsp;</h1>
<h1 style="margin: 0px; padding: 2px 0px 7px; font-family: Verdana; font-size: 23px; line-height: 25px; color: rgb(51, 51, 51); ">OpenSCADA 0.7.2 </h1></div><h2>Introduction</h2>
<p id="p31934-3" class="indent10 auto align-justify"> This release is a planned one of a working version of OpenSCADA, which  are usually made at intervals of 3-4 months. The main purpose of this  release is the stabilization and testing of key functions before  releasing the next long term support (LTS) version of OpenSCADA 0.8.0.  In addition to the main purposes within the limits of this release a  great work for stabilization, cleaning the source code, full empowerment  and testing on the embedded and mobile ARM devices is made.</p>
<p id="p31934-4" class="indent10 auto align-justify"> This document is the processing (compilation) of &lt;ChangeLog&gt;  document of the OpenSCADA system of 0.7.2 version, which is designed for  briefly and clearly covering the new features and changes of the  OpenSCADA system. To get acquainted with all the changes in the  OpenSCADA system it is possible in the file ChangeLog from the  distribution kit of the  system, or here: <a href="../websvn/filedetails.php?repname=OpenSCADA&amp;path=%2Ftrunk%2FOpenSCADA%2FChangeLog" title="Внешняя ссылка (откроется в новом окне)" target="_blank" class="outerlink" ><img src="http://wiki.oscada.org/themes/default/icons/web.gif" alt="">http://oscada.org/websvn/filedetails.php?repname=OpenSCADA&amp;path=%2Ftrunk%2FOpenSCADA%2FChangeLog</a> .</p>
<p id="p31934-5" class="auto indent10"> The key features of this version are:</p><ul><li> Implementation of planned tasks. </li><li> Optimization, increasing of stability, sustainability and system performance. </li><li> Improvement and stabilization of the graphics subsystem. </li><li> Expansion of user programming API. </li><li> System-wide expansions. </li><li> Publication of OpenSCADA solutions.</li></ul><p id="p31934-6" class="auto indent10"> New and updated modules:</p><ul><li> <em>Archive.DBArch (0.9.5)</em> — The limits for requesting data on the request time are added as well as some more extensions. </li><li> <em>Archive.FSArch (1.5.0)</em> — The files' indexes of the  values' archives read performance is increased. The adaptation of  storing and reading the floating to the ARM FPA is made. The limits for  requesting data on the request time are added. Some extensions. A  significant stabilization. </li><li> <em>DB.FireBird (0.9.7)</em> — Stabilization. </li><li> <em>DB.MySQL (1.7.1)</em> — Stabilization. </li><li> <em>DB.PostgreSQL (0.9.2)</em> — Stabilization. </li><li> <em>DB.SQLite (1.6.4)</em> — Stabilization. </li><li> <em>DAQ.BFN (0.5.1)</em> — Stabilization. </li><li> <em>DAQ.BlockCalc (1.5.0)</em> — The CRON scheduling of calls is added. The start and stop blocks' call is added. Stabilization. </li><li> <em>DAQ.DAQGate (0.9.5)</em> — The CRON scheduling of calls is added. Stabilization. </li><li> <em>DAQ.DCON (0.5.1)</em> — Stabilization. </li><li> <em>DAQ.DiamondBoards (1.2.5)</em> — The ability to change the parameter's type is added. Stabilization. </li><li> <em>DAQ.ICP_DAS (0.8.0)</em> — The &quot;ICP DAS&quot; API library  libi8k.a for the ARM architecture is added, the ability to build the  module for ARM is added. Stabilization. </li><li> <em>DAQ.JavaLikeCalc (1.9.5)</em> — The direct, dynamic call  of library functions is added. The direct association of string  constants is added. The conditional call of the expression's arguments (  the second argument) with the logical operators ||(OR) and  &amp;&amp;(AND) is added. The significant stabilization. Some  extensions. </li><li> <em>DAQ.LogicLev (1.2.0)</em> — Stabilization. The ability to change the parameter's type is added. The CRON scheduling of calls is added.  Some extensions. </li><li> <em>DAQ.ModBus (1.2.0)</em> — The support for &quot;Logical&quot;  parameter's type is added for the working with template of the  parameter, and also the functions of the user's API to send arbitrary,  non-standard ModBus requests from the templates are added. The function  is added and used the formation of alleged violations of the controller.  The support of the function for group record (0x0F, 0x10) is added. The  significant stabilization. </li><li> <em>DAQ.OPC_UA (0.6.2)</em> — Stabilization. The adaptation of storing and reading the floating to the ARM FPA. </li><li> <em>DAQ.SNMP (0.6.1)</em> — Stabilization. Some improvements. </li><li> <em>DAQ.Siemens (1.3.0)</em> — Significant stabilization.  Library LibnoDave is updated to the 0.8.4.6 version. The CRON scheduling  of calls is added. The reconnection function for the &quot;Industrial  Ethernet&quot; connections is added. Some extensions. </li><li> <em>DAQ.System (1.7.5)</em> — Stabilization. The CRON scheduling of calls is added. </li><li> <em>Transport.SSL (1.0.0)</em> — Stabilization. Some improvements. </li><li> <em>Transport.Serial (0.7.3)</em> — Stabilization. </li><li> <em>Transport.Sockets (1.5.0)</em> — Significant stabilization. </li><li> <em>Protocol.HTTP (1.6.0)</em> — The support of user's  templates for internal contents of the module is added. The generation  of the user's authentication messages is added. The support of all major  versions of the completion the string during HTTP-request parsing is  added. </li><li> <em>Protocol.ModBus (0.6.3)</em> — Stabilization. Some improvements. </li><li> <em>Protocol.OPC_UA (0.6.2)</em> — Stabilization. </li><li> <em>Protocol.SelfSystem (0.9.5)</em> — Stabilization. </li><li> <em>Protocol.UserProtocol (0.6.2)</em> — Stabilization. </li><li> <em>Special.FLibComplex1 (1.1.0)</em> — The direct, dynamic call of library functions is added. </li><li> <em>Special.FLibMath (0.6.0)</em> — The direct, dynamic call of library functions is added. </li><li> <em>Special.FLibSYS (1.0.0)</em> — The direct, dynamic call of library functions is added. </li><li> <em>UI.QTCfg (2.1.0)</em> — Stabilization. Significant extensions and improvements. The implementation of a number of features to enhance comfort. </li><li> <em>UI.QTStarter (1.6.2)</em> — Stabilization. The font of message in splash is fixed at 10 pixels to ensure the uniform representation. </li><li> <em>UI.VCAEngine (1.2.0)</em> — Stabilization. Significant extensions and improvements. </li><li> <em>UI.Vision (1.2.0)</em> — Significant stabilization. Significant extensions and improvements. </li><li> <em>UI.WebCfg (1.5.6)</em> — Stabilization. </li><li> <em>UI.WebCfgD (0.8.0)</em> — Stabilization. Significant extensions and improvements. </li><li> <em>UI.WebUser (0.6.2)</em> — Stabilization. </li><li> <em>UI.WebVision (1.0.0)</em> — Significant stabilization. Significant extensions and improvements.</li></ul><p class="bodytext"> <a name="h1084-3"></a></p>
<h2>1 Implementation of planned tasks</h2>
<p id="p31934-7" class="indent10 auto align-justify"> In accordance with the <a name=".homepageen.works.roadmap" href="http://wiki.oscada.org/HomePageEn/Works/RoadMap?v=nqm" title="Home&amp;nbsp;Page&amp;nbsp;En&amp;nbsp;/&amp;nbsp;Works&amp;nbsp;/&amp;nbsp;Road&amp;nbsp;Map">plane</a> of the release there were made the following tasks:</p><ul><li> <em>The implementation of the undo/redo editing changes mechanism in the Vision. </em>  — As part of the widget's visual editing window the multi-level  changes' undo/redo mechanism is implemented for all basic operations: a  visual changes in the geometry, changing the value of the widget's  attribute, add/remove the widget, copy the widget and editing the  widgets, based on the primitive &quot;ElFigure&quot;. </li><li> <em>Adaptation of OpenSCADA to work on the ARM hardware platform.</em> — In addition to the primary adaptation, in the last release for the N800 tablet (<a href="http://wiki.oscada.org/Works/Tests/ARM" target="_blank" class="outerlink" >http://wiki.oscada.org/Works/Tests/ARM</a> ) the build and adaption of OpenSCADA for the complex (very old) program environment of the <a name=".homepageen.using.lp5xxx" href="http://wiki.oscada.org/HomePageEn/Using/LP5xxx?v=7g7" title="Home&amp;nbsp;Page&amp;nbsp;En&amp;nbsp;/&amp;nbsp;Using&amp;nbsp;/&amp;nbsp;LP&amp;nbsp;5&amp;nbsp;xxx">LP-5451</a> controller was made, and also the builds for the <a href="http://segnetics.com/main.aspx?Page=412" title="Внешняя ссылка (откроется в новом окне)" target="_blank" class="outerlink" ><img src="http://wiki.oscada.org/themes/default/icons/web.gif" />SMH2Gi</a>  controller and for the Nokia smartphones: N900, N950, N9 were made. As  part of the build and adaptation to different mobile devices the  following tasks were implemented: <ul><li> <em>DAQ.ICP_DAS</em>:	The &quot;ICP DAS&quot; API library libi8k.a for the ARM architecture is added, the ability to build the module for ARM is added. </li><li> <em>SYS, DAQ.OPC_UA</em>: The system functions floatLE(),  floatLErev(), doubleLE(), doubleLErev() are added to convert the storage  format of a real number on different architectures. </li><li> <em>SYS</em>: The adaptation is made to build with the GLibC version less than 2.5 (2.3.2). </li><li> <em>Archive.FSArch</em>: <ul><li> The LE format real number storage in the archive on the ARM architecture is fixed. </li><li> The algorithm of the quickly count the number of bits uses the function of not aligned reading TSYS::getUnalign32(). </li><li> The encoding field size in the plane archive of messages expanded from 9 to 99 characters.</li></ul></li></ul></li></ul><p class="bodytext"> <a name="h1084-4"></a></p>
<h2>2 Optimization, stability, sustainability and system performance increasing</h2>
<p id="p31934-8" class="indent10 auto align-justify"> During the work on this version, as well as during its practical  adaptation, it was discovered and corrected in a total of about 170  error. Also the work on cleaning code from the compiler's warnings with  the &quot;-Wall&quot; flag was continued.</p>
<p id="p31934-9" class="indent10 auto align-justify"> Lets list the most significant errors correction of which significantly affected the increasing of stability:</p><ul><li> <em>SYS</em>: <ul><li> The unscheduled calls on the schedule, related to desync of the  functions values time() and clock_gettime(CLOCK_REALTIME,&amp;sp_tm),  are fixed. </li><li> The checking and waiting for threads to access due to the overlapping with the previous, eponymous one's stop. </li><li> The waiting for initialization of the disconnectable tasks is  disabled in order to prevent freezing in anticipation of rapidly closing  tasks. </li><li> The work of not aligned reading functions getUnalign*() is fixed on the ARM. The Problem is detected on PXA270. </li></ul></li><li> <em>Archive.FSArch</em>: <ul><li> The reading data from the archive's buffer in accordance with  the buffer's size in the algorithm of fast calculation of the bits'  number is fixed. </li><li> The placement of the offset in the cache from the algorithm of fast calculation of the bits' number is fixed. </li><li> The incorrect handling of the end of not aligned blocks of the fast algorithm for calculation of the bits' number is fixed. </li><li> The exclusive resource to the calcVlOff() function's call is added in order to prevent the incorrect operation with cache. </li></ul></li><li> <em>Transport, DAQ.AMRDevs, DAQ.DCON, DAQ.ICP_DAS, DAQ.ModBus, DAQ.OPC_UA, Protocol.HTTP</em>: The usage of the TTransportOut::messIO() function at the request of the tail and getting the zero response is fixed. </li><li> <em>DAQ.ModBus, Transport.Serial, UI.WebCfg, UI.WebCfgD, UI.WebUser, UI.WebVision</em>:  The incorrect using of the string terminator '\n' for a variety of  software platforms UNIX, MAC, DOS/Windows is fixed by replacing it with  &quot;\x0A&quot;. </li><li> <em>Transport.*</em>: The using of unsigned type in the return  of the read() and write() functions is fixed. The resources for the  counters of the i/o requests are added. </li><li> <em>Transport.Sockets</em>: The missing of the initialization of the size of the return value of the getsockopt() function is fixed. </li><li> <em>DAQ.JavaLikeCalc</em>: The crash of the replace() function of the &quot;RegExp&quot; object is fixed. </li><li> <em>DAQ.Siemens</em>: The receiving and recording the values  of real types is fixed. The reconnect in the case of error is fixed. The  using of the size property of the integer, real and string is fixed.  The cleaning of the parameter's links at its disabling is added. </li><li> <em>UI.Vision, UI.WebVision</em>: The access abroad the vector's size during the rendering of the primitives &quot;FormEls&quot; graphics is fixed. </li><li> <em>UI.VCAEngine</em>: The possibility of changes' loss in the  visualization server is precluded when displayed in the visualizers by  preliminary saving the value of clock counter in the &quot;openList&quot; service  request. </li><li> <em>UI.WebVision</em>: <ul><li> The opening and replacing the root page is fixed. </li><li> The handling of nested pages' scale is fixed, taking into account the scale of the root one.</li></ul></li></ul><p id="p31934-10" class="auto indent10"> Optimization and performance improvement:</p><ul><li> <em>SYS</em>: The  mechanism of the &quot;ResString&quot; object resource is replaced from the  RW-locks with mutex in order to improve performance and reduce memory  consumption. </li><li> <em>Archive.FSArch</em>: The processing of the values' archive  index table is significantly accelerated through the use of fast  algorithm for computing the number of bits in a 32-bit integer. </li><li> <em>UI.WebCfgD</em>: The group request of the page's contents is used to greatly improve the performance on slow and high latency channels. </li><li> <em>UI.Vision</em>: The rendering performance of the fills of the &quot;ElFigure&quot; primitive is improved. </li><li> <em>UI.VCAEngine</em>: <ul><li> The measures to increase the speed of project's session  initiation are implemented: the initialization of the basic attributes  because of their subsequent inheritance is skipped. </li><li> The translation of certain messages of the runtime session is removed. </li><li> The enabling of only the necessary pages at startup of the  session is implemented. Other pages of the running session are enabled  when accessed. This has greatly increase the speed of session's startup,  as well as reduce the dependence of the starting speed on the  complexity of the visualization project. </li><li> Implementation of the archive mode of the &quot;Document&quot; primitive  is changed to direct work with the database, which let to expand the  depth of the archive up to the 1000000 documents, and without prejudice  to the RAM.</li></ul></li></ul><p class="bodytext"> <a name="h1084-5"></a></p>
<h2>3 Improvement and stabilization of the graphics subsystem</h2>
<p id="p31934-11" class="indent10 auto align-justify"> The notable work was made within the graphics system, namely in the VCA  engine modules UI.VCAEngine, visualizers UI.Vision and UI.WebVision, as  well as in the configurators. The changes were provided for  stabilization, the optimization of memory consumption and improvement of  user's properties.</p>
<p id="p31934-12" class="auto"> Improvements of the graphics subsystem:</p><ul><li> <em>UI.VCAEngine, UI.Vision, UI.WebVision</em>: <ul><li> The handling abroad the array (vector) in the construction of trends of the &quot;Diagram&quot; primitive is fixed. </li><li> The width property of trend of the &quot;Diagram&quot; primitive is added and implemented. </li><li> The periodic inspection of the widgets' tree of the page is  added in order to detect the fact of widgets' removing by requesting the  complete list of widgets. </li><li> The display of trends, graphics group of the &quot;Diagram&quot;  primitive in the scale of values is implemented in the case of  differences between the scales of all graphs not more than 20%. </li><li> The ability to select the confirmation mode for the items of the line and text editing of the primitive &quot;FormEl&quot;. </li><li> The possibility of loosing of some changes in the model, when displayed in the visualizers is fixed. </li><li> The property of the values' count of the one pixel in the  trends of the &quot;Diagram&quot; primitive is added and implemented in order to  control granularity of export to CSV etc. </li><li> The logarithmic scale of values for the trends of &quot;Diagram&quot; is implemented. </li><li> The storage of aspect ratio property of the main page during  the maximization of the main window of the project's session execution  is added and implemented. </li></ul></li><li> <em>UI.VCAEngine</em>: <ul><li> The enabling of project's session pages when it is really  necessary is implemented in order to speed up the startup and optimize  memory usage. </li><li> The &quot;Document&quot; primitive is remade for keeping the archives  fully in the database, as well as the function of user API to access the  elements of the archive is added. </li><li> The periodic (30 minutes) check and the closing of the unused (orphaned) projects' sessions are added. </li><li> The previous one (controversial) rollback mechanism of nested  widgets deleting is removed and it is replaced by the full-fledged  rollback mechanism in the <em>UI.Vision</em> visualizer. </li><li> Optimization of memory usage by the session's elements up to 20% is implemented. </li><li> The support of the first, out of date, version of the database structure of the visual area is removed. </li><li> The restriction on the time of the document's generation in the &quot;Document&quot; primitive in 5 seconds is added. </li><li> The support of the attribute's type &quot;Object&quot; and &quot;Text&quot; is added. </li><li> The forced initialization of new user's attributes in EVAL is disabled. </li><li> The &quot;Document&quot; primitive is switched to XML parsing in order to fully preserve the XHTML markup. </li><li> The display of the correct status of the links in the form of &quot;(+)&quot; at the end of the line is added. </li></ul></li><li> <em>UI.Vision</em>: <ul><li> The implementation of the full-fledged undo and redo the changes in visual editing widgets is added. </li><li> Improvements in the sensitivity and updating the changes in  the project's session: the rendering performance of the &quot;ElFigure&quot;  primitives is optimized, handling of the changes in the &quot;geomZ&quot; level of  the widget is added. </li><li> The export to CSV format from the &quot;Diagram&quot; and &quot;Document&quot; primitives is added. </li><li> The limit on the size of the input dialogs is added and an adaptive determination of their sizes by their contents is added. </li><li> The rules' execution mechanism for syntax highlighting is completely rewritten. </li><li> The new session creation after the restoration of remote connection and absence of the previous session is added. </li><li> Window background for the editable widget is set to  QT::Dense7Pattern template to eliminate the possible of overlapping by  color. </li><li> The event handling of the widget's selecting when press in the scroll area, but outside of the widget is added. </li><li> &quot;Elementary figure&quot; primitive: <ul><li> The reorganization of the operations of the Properties dialog and context menu with dynamic and static properties is completed. </li><li> In the process of addition the figure its rendering when moving the mouse cursor is implemented. </li></ul></li></ul></li><li> <em>UI.WebVision</em>: <ul><li> The handling of nested frames scale is fixed, as well as the mechanism of formation-enabling of scroll is revised. </li><li> The function of the images conversion on the server's side is  added. Conversion function is used for resizing and discoloration the  images of inactive buttons. </li><li> The opening of small windows of the nested pages as the  DIV-blocks is implemented, it solves the problem of lock and the long  opening of the external windows in many browsers. </li><li> The main page of the interface is centered in the browser's window. </li></ul></li><li> <em>UI.QTCfg</em>: <ul><li> The restriction on the height of the rows of tables at half the height of the table is added. </li><li> The limit on the size of the input dialogue is added, and the adaptive determination of its size on its contents is added. </li><li> For the elements available to adjust their height by the user, for the work elsewhere, the fixed style &quot;StyledPanel&quot; is set. </li><li> The function of full text editing of table's cells is added. </li><li> Playback engine of the syntax highlight rules is completely rewritten to simplify it and to avoid hidden errors. </li></ul></li><li> <em>UI.WebCfgD</em>:  <ul><li> The brightness of decolorized-passive buttons is reduced. </li><li> All dialogs windows are implemented as DIV-blocks in order to  avoid problems and delays in opening external windows in different  browsers. </li><li> The group request the page's contents is used for the  significant improvement of the performance on slow and high latency  channels. </li><li> The information in the status bar about the current user and the possibility of its change are added. </li><li> The adaptation to work in full screen width is made.</li></ul></li></ul><p class="bodytext"> <a name="h1084-6"></a></p>
<h2>4 Extension of the user programming API</h2>
<p id="p31934-13" class="indent10 auto align-justify"> It was continued the development of object API of the user programming,  which provides the integration of user's functions into the object's  tree of OpenSCADA. In addition, a number of changes was made to the  existing library of the user's API functions.</p>
<p id="p31934-14" class="auto indent10"> In particular the following changes were made:</p><ul><li> <em>SYS</em>: <ul><li> The functions to work with files are added: SYS.fileRead() and SYS.fileWrite(). </li><li> The getElementBy() function is added to the XMLNodeObj object's API to search for embedded nodes by attribute's value. </li><li> The function of encoding the text between different character encodings is added. </li><li> The NodeObj.nodePath() function is added. </li></ul></li><li> <em>TConfig, TBD, TTransportIn, TTransportOut,  TUser, TGroup, TPrmTmplLib, TPrmTempl, TParamContr, TController,  TVArchive, TVArchivator, TMArchivator</em>: The following functions of  the user API are added: cfg() and cfgSet() to access the configuration  of the objects (stored in the database). </li><li> <em>DAQ</em>: <ul><li> The TController::alarmSet() function is added to generate the  typical alarms in the controller's object of the &quot;Data acquisition&quot;  subsystem's modules. </li><li> The  SYS.DAQ[&quot;Modul&quot;][&quot;Controller&quot;][&quot;Parameter&quot;][&quot;Attribute&quot;].arch() function  is added to directly access the object's archive associated with the  attribute of the parameter. </li><li> The following functions of the user API are added: enable() and start() for the direct monitoring of the controller's object. </li></ul></li><li> <em>DAQ.JavaLikeCalc, Special.FLibComplex1, Special.FLibMath, Special.FLibSYS</em>: The function for the dynamic call of the library functions is added: SYS.DAQ.JavaLikeCalc[&quot;lib_{Lib}&quot;].funcId(prms, ...). </li><li> <em>Archive</em>: The following functions of the user API are  added: status(), end() and begin() for access to the state and  properties of an object of the messages' archiver. </li><li> <em>DAQ.JavaLikeCalc</em>: <ul><li> The isEVal() function for the &quot;null&quot; data type is added, which always returns &quot;true&quot;. </li><li> The call() function of the user API is added to the objects of the library functions. </li></ul></li><li> <em>DAQ.ModBus</em>: The messIO() function of the  user API is added in the &quot;ModBus&quot; controller's object in order to  provide an opportunity to send custom ModBus-queries directly from the  template of the parameter.</li></ul><p class="bodytext"> <a name="h1084-7"></a></p>
<h2>5 System-wide expansions</h2>
<p id="p31934-15" class="indent10 auto align-justify"> To the system-wide API of the OpenSCADA system there have been made the  significant changes and extensions with the purpose of the general  stabilization and expansion:</p><ul><li> <em>SYS</em>:  <ul><li> The storage object of the string with the &quot;ResString&quot; resource  is significantly expanded for the clear conversion from/to std::string  type. </li><li> The ability to save to the configuration file is added: <ul><li> The database prefix &quot;&lt;cfg&gt;&quot; is added for presentation of the configuration file as a source of load/store configuration. </li><li> The TDBS::dataSeek() and TDBS::dataDel() functions are updated for the strict processing the configuration file. </li><li> The chkSelDB() function is adapted to support the record to the configuration file. </li><li> The storage of large and multi-line field values in the text box of the individual tag of the configuration file is added. </li></ul></li><li> The &quot;long long&quot; type, usually a 64-bit integer is replaced everywhere by the &quot;int64_t&quot; on all architectures. </li><li> The objects of the OpenSCADA treads are rigidly linked with  their thread. The load and periodic threads' calls statistics is added. </li><li> The possibility of checking the loaded objects for their  absence in the database and deleting is added. Check function is  activated only in the case of direct loading from the database. </li><li> The perSYSCall() system periodic function for the call of  subsystems' and their modules' objects is added. It is used for service  purposes of unloaded and rare task of the modules and subsystems. </li><li> The test function of the expression by the template is moved to the TRegExp object. </li><li> <em>SYS.XMLNode</em>: <ul><li> The code of &quot;Expat&quot; XML-parser using is completely removed. </li><li> The ability to load text parts of the tag to the separate  specific tags in full mode is added. It is designed for full storage the  configuration of the tag. </li><li> The ability to load and store the comments blocks into the separate specific tags in full mode is added. </li></ul></li></ul></li><li> <em>DOC</em>: <ul><li> Check and repair the English texts in the OpenSCADA core is  made. The translations for the OpenSCADA core to German, Russian and  Ukrainian languages are updated. </li><li> Check and repair the English texts in the OpenSCADA modules is  made. The translations for the OpenSCADA modules to German, Russian and  Ukrainian languages are updated. </li><li> The all key documents in accessible languages are updated:  openscada.pdf, build.pdf, properties.pdf, &quot;OpenSCADA API&quot;, &quot;About  OpenSCADA&quot;, &quot;TechApp Library&quot;, &quot;Quick Start&quot;, &quot;WLib Main&quot;, &quot;WLib Mnemo  Elements&quot;.  </li></ul></li><li> <em>Libraries databases</em>: <ul><li> The library of the main visual elements is appended by the  frames of the implementation of editing and execution of &quot;Prescriptions&quot;  - &quot;User's programs&quot;. </li><li> The <a name=".homepageen.using.graphicelementslibraries.electroelements" href="http://wiki.oscada.org/HomePageEn/Using/GraphicElementsLibraries/ElectroElements?v=48e" title="Home&amp;nbsp;Page&amp;nbsp;En&amp;nbsp;/&amp;nbsp;Using&amp;nbsp;/&amp;nbsp;Graphic&amp;nbsp;Elements&amp;nbsp;Libraries&amp;nbsp;/&amp;nbsp;Electro&amp;nbsp;Elements">library of the electrical elements</a> is added to the kit of libraries package.  </li><li> The frame of the main page is appended by the mechanism of &quot;playing&quot; the models of technological processes (TP). </li><li> The <a name=".using.modeldmkk9" href="http://wiki.oscada.org/Using/ModelDMKK9?v=yz3" title="Using&amp;nbsp;/&amp;nbsp;Model&amp;nbsp;DMKK&amp;nbsp;9">industrial boiler unit(RUS</a>) model is translated to English and Ukrainian languages. </li></ul></li><li> <em>DB</em>: The time limit of 5 seconds and the  field of specifying the starting offset are added for the request of the  large tables' contents. </li><li> <em>DAQ</em>: The ability to select the type of the &quot;object&quot;  template's attribute is added. It is made primarily to store internal  data in the object and can not be used as the type of parameter's  attribute of data source controller's object. </li><li> <em>TArchives</em>: The ability to use regular expressions when searching by category using &quot;/match/&quot; is added. </li><li> <em>Transport</em>: Types of formats for outgoing requests are expanded with versions of the text with a different end of line: LF, CR, CR/LF. </li><li> <em>DAQ, DAQ.DiamondBoards, DAQ.ModBus, DAQ.LogicLev</em>: The  ability to change the type of the parameter for the disabled parameters  of multi-type modules of &quot;Data acquisition&quot; subsystem is added. </li><li> <em>DAQ.LogicLev, DAQ.Siemens, DAQ.ModBus</em>: In the case of  the scheduled execution the time after the last calculation in the  negative value is written to the &quot;f_frq&quot; attribute. The initialization  and stop calls are added during enabling/disabling of the parameter. </li><li> <em>TArchives, Archive.DBArch, Archive.FSArch</em>: The time border when requesting messages from the archive is added. </li><li> <em>SYS.TConfig, Archives, DAQ, Security, Transports, Archive.*, DAQ.*, Protocol.UserProtocol, Transport.*, UI.VCAEngine, UI.WebUser</em>:  Keeping the string configuration fields is moved to the &quot;ResString&quot; object of the resource string.</li></ul><p class="bodytext"> <a name="h1084-8"></a></p>
<h2>6 Publication of OpenSCADA solutions</h2>
<p id="p31934-16" class="indent10 auto align-justify"> During the work on this version the solutions, based on the OpenSCADA,  have been presented at various conferences and exhibitions:</p><ul><li> <a href="http://www.foss-sea.org.ua/" title="Внешняя ссылка (откроется в новом окне)" target="_blank" class="outerlink" ><img src="http://wiki.oscada.org/themes/default/icons/web.gif" />FOSS Sea 2011</a>  — the report about the solutions, based on the OpenSCADA was read at  the conference and in the hall there was made the mini-stand with the  live solutions, based on OpenSCADA. </li><li> <a href="http://www.hi-techexpo.com/" title="Внешняя ссылка (откроется в новом окне)" target="_blank" class="outerlink" ><img src="http://wiki.oscada.org/themes/default/icons/web.gif" />International Innovation Forum 2011</a>  — at the stand of &quot;DІYA&quot; Ltd and Dneprodzerzhinsk State University  (DSTU) the equipment and materials on the solution, based on OpenSCADA  were presented. </li><li> <a href="http://conference.osdn.org.ua/" title="Внешняя ссылка (откроется в новом окне)" target="_blank" class="outerlink" ><img src="http://wiki.oscada.org/themes/default/icons/web.gif" />10 Ukrainian Conference for Free Software Developers and Users</a>  —  the report about the solutions, based on the OpenSCADA was read at  the conference and in the hall there was made the mini-stand with the  live solutions, based on OpenSCADA. </li><li> <a href="http://qt.nokia.com/qtdevdays2011" title="Внешняя ссылка (откроется в новом окне)" target="_blank" class="outerlink" ><img src="http://wiki.oscada.org/themes/default/icons/web.gif" />Qt Developer Days 2011</a> in Munich and San Francisco: there were made the demonstration of OpenSCADA solutions <a href="http://wiki.oscada.org/Using/ModelDMKK9" target="_blank" class="outerlink" >Dynamic model of the DMKD multifuel steam boiler unit №9</a> on the PC and <a href="http://wiki.oscada.org/HonmePageEn/Using/ModelAGLKS" target="_blank" class="outerlink" >The dynamic model of real-time of the Anastasievskaja GLKS</a> on Nokia N9 in the Qt Demo Pavilion.</li></ul><p class="bodytext"> <a name="h1084-9"></a></p>
<h2>Conclusion</h2>
<p id="p31934-17" class="indent10 auto align-justify"> This release of OpenSCADA actually finishes the work on adaptation to  the ARM hardware architecture, which will be verified in the provision  and publication of the official release 0.7.2 builds for mobile devices.</p>
<p id="p31934-18" class="indent10 auto align-justify"> Although this release was delayed and a few late but it still was  carefully prepared and will be a good basis for finishing the project's  code base for the upcoming responsible release 0.8.0 LTS. In addition,  this release can be used for widespread implementation in critical  applications, followed by a smooth transition to 0.8.0 LTS after its  release.</p>
<p id="p31934-19" class="indent10 auto align-justify"> Subsequent development efforts will be directed to the completion of  planned tasks and preparation for release the OpenSCADA long term  support (LTS) version 0.8.0.</p>]]></content:encoded>
			<category>News</category>
			<category>Release</category>
			
			<author>rom_as@oscada.org</author>
			<pubDate>Mon, 05 Dec 2011 16:00:00 +0200</pubDate>
			
		</item>
		
		<item>
			<title>First production release of OpenSCADA 0.7.0 LTS (update 6)</title>
			<link>http://oscada.org/en/main/releases/single-page/article//first-production-release-of-openscada-070</link>
			<description>First production release is targeted for wide implementation to automations solutions for platforms...</description>
			<content:encoded><![CDATA[<p class="indent10">&nbsp;</p><div style="text-align: center; "><h1 style="margin: 0px; padding: 2px 0px 7px; font-family: Verdana; font-size: 23px; line-height: 25px; color: rgb(51, 51, 51); ">OpenSCADA 0.7.0 LTS</h1></div><h2 style="margin: 20px 0px 5px; padding: 0px; font-family: Verdana; font-size: 20px; border-bottom: 3px dotted rgb(221, 221, 221); ">Changes</h2><ul style="margin: 0px 0px 5px; "><li>24.10.2010 - Production release 0.7.0.</li><li>19.12.2010 - The&nbsp;first planed update of&nbsp;production release. Fixed about&nbsp;30 bugs.</li><li>01.03.2011 - The second planed update of&nbsp;production release. Fixed more 30 bugs.</li><li>09.05.2011 - The third planed update of&nbsp;production release. Fixed more 30 bugs.</li><li>09.07.2011 - The fourth planed update of&nbsp;production release. Fixed more 15 bugs and append some improve.</li><li>12.10.2011 - The fifth planed update of&nbsp;production release. Fixed more 50 bugs and append some improve.</li></ul><h2 style="margin: 20px 0px 5px; padding: 0px; font-family: Verdana; font-size: 20px; border-bottom: 3px dotted rgb(221, 221, 221); ">Introduction</h2>
<p id="p38812-3" style="font-family: Verdana; font-size: 13px; margin: 0px; padding: 0px; " class="indent10 auto align-justify">The release of an open SCADA (Supervisory control and data acquisition) system of version 0.7.0 is the first stable, industrial release, which is associated with the completion of beta testing that began from version 0.6.4.</p>
<p id="p38812-3" style="font-family: Verdana; font-size: 13px; margin: 0px; padding: 0px; " class="indent10 auto align-justify">The main purpose of this release is providing the community of users and developers of free software with the platform for the solutions of complex automation systems and related solutions, as well as providing commercial services on the basis of the OpenSCADA project.</p>
<p id="p38812-3" style="font-family: Verdana; font-size: 13px; margin: 0px; padding: 0px; " class="indent10 auto align-justify">This release is the first stable release, for which technical support is available from the developers and for which it is planned to release fixes during a long time.</p>
<p id="p38812-3" style="font-family: Verdana; font-size: 13px; margin: 0px; padding: 0px; " class="indent10 auto align-justify">This document is the processing (compilation) of &lt;ChangeLog&gt; document of the OpenSCADA system version 0.6.4, which is designed to cover brief and clear the new features of the OpenSCADA system. To get acquainted with all the changes in the OpenSCADA system it is possible in the file ChangeLog from the distribution kit of the system, or here (RU):&nbsp;<span style="color: rgb(0, 51, 153); text-decoration: none; "><a href="http://wiki.oscada.org/Works/ChangeLog" target="_blank" class="outerlink" >http://wiki.oscada.org/Works/ChangeLog</a></span>.</p>
<p id="p38812-3" style="font-family: Verdana; font-size: 13px; margin: 0px; padding: 0px; " class="indent10 auto align-justify">The key features of this version are:</p><ul style="margin-top: 0px; margin-bottom: 0px; padding-top: 0px; padding-bottom: 0px; "><li style="font-family: Verdana; font-size: 13px; ">Implementation of planned tasks.</li><li style="font-family: Verdana; font-size: 13px; ">Optimization, increasing of stability, sustainability and system performance.</li><li style="font-family: Verdana; font-size: 13px; ">Improvement and stabilization of the VCA.</li><li style="font-family: Verdana; font-size: 13px; ">Formation and stabilization of the user programming API.</li><li style="font-family: Verdana; font-size: 13px; ">System-wide expansions.</li><li style="font-family: Verdana; font-size: 13px; ">Significant improvements and fixes of individual modules.</li><li style="font-family: Verdana; font-size: 13px; ">Formation of the documentation and translations of documentation and interface.</li><li style="font-family: Verdana; font-size: 13px; ">Unification of the demo database.</li></ul><p id="p38812-8" style="font-family: Verdana; font-size: 13px; margin: 0px; padding: 0px; " class="auto indent10">&nbsp;</p>
<p id="p38812-8" style="font-family: Verdana; font-size: 13px; margin: 0px; padding: 0px; " class="auto indent10">New and updated modules:</p><ul style="margin-top: 0px; margin-bottom: 0px; padding-top: 0px; padding-bottom: 0px; "><li style="font-family: Verdana; font-size: 13px; ">Archive.FSArch - 1.3.1 -&gt; 1.4.1, fixes and enhancements to improve performance;</li><li style="font-family: Verdana; font-size: 13px; ">Archive.DBArch - 0.9.0 -&gt; 0.9.2, fixes and some improvements;</li><li style="font-family: Verdana; font-size: 13px; ">DB.DBF - 2.0.1 -&gt; 2.0.2, fixes;</li><li style="font-family: Verdana; font-size: 13px; ">DB.MySQL - 1.6.1 -&gt; 1.6.2, some improvements;</li><li style="font-family: Verdana; font-size: 13px; ">DB.SQLite - 1.6.1 -&gt; 1.6.2, improvements;</li><li style="font-family: Verdana; font-size: 13px; ">DB.FireBird - 0.9.1 -&gt; 0.9.5, significant improvements;</li><li style="font-family: Verdana; font-size: 13px; ">DB.PostgreSQL - 0.9.0, new module;</li><li style="font-family: Verdana; font-size: 13px; ">DAQ.DiamondBoards - 1.2.0 -&gt; 1.2.1, API change adaptation;</li><li style="font-family: Verdana; font-size: 13px; ">DAQ.System - 1.7.0 -&gt; 1.7.2, code cleanup and API change adaptation;</li><li style="font-family: Verdana; font-size: 13px; ">DAQ.BlockCalc - 1.2.1 -&gt; 1.4.0, improvements and fixes;</li><li style="font-family: Verdana; font-size: 13px; ">DAQ.JavaLikeCalc - 1.5.0 -&gt; 1.8.0, significant improvements, bug fixes and optimization;</li><li style="font-family: Verdana; font-size: 13px; ">DAQ.LogicLev - 1.0.1 -&gt; 1.1.2, improvements and fixes;</li><li style="font-family: Verdana; font-size: 13px; ">DAQ.SNMP - 0.4.0 -&gt; 0.4.1, API change adaptation;</li><li style="font-family: Verdana; font-size: 13px; ">DAQ.Siemens - 1.2.1 -&gt; 1.2.3, fixes and API change adaptation;</li><li style="font-family: Verdana; font-size: 13px; ">DAQ.ModBus - 1.0.1 -&gt; 1.1.1, improvements and fixes;</li><li style="font-family: Verdana; font-size: 13px; ">DAQ.DCON - 0.3.0 -&gt; 0.3.3, improvements and fixes;</li><li style="font-family: Verdana; font-size: 13px; ">DAQ.ICP_DAS - 0.5.0 -&gt; 0.7.2, significant improvements and fixes;</li><li style="font-family: Verdana; font-size: 13px; ">DAQ.DAQGate - 0.8.0 -&gt; 0.9.1, significant improvements and fixes;</li><li style="font-family: Verdana; font-size: 13px; ">DAQ.SoundCard - 0.6.0 -&gt; 0.6.1, API change adaptation;</li><li style="font-family: Verdana; font-size: 13px; ">DAQ.OPC_UA - 0.6.0, mew module;</li><li style="font-family: Verdana; font-size: 13px; ">Transport.Sockets - 1.4.0 -&gt; 1.4.5, improvements and fixes;</li><li style="font-family: Verdana; font-size: 13px; ">Transport.SSL - 0.8.2 -&gt; 0.9.5, improvements and fixes;</li><li style="font-family: Verdana; font-size: 13px; ">Transport.Serial - 0.5.0 -&gt; 0.7.1, significant improvements and fixes;</li><li style="font-family: Verdana; font-size: 13px; ">Protocol.HTTP - 1.4.1 -&gt; 1.5.0, significant improvements;</li><li style="font-family: Verdana; font-size: 13px; ">Protocol.SelfSystem - 0.9.1 -&gt; 0.9.3, fixes and API change adaptation;</li><li style="font-family: Verdana; font-size: 13px; ">Protocol.UserProtocol - 0.6.0, new module;</li><li style="font-family: Verdana; font-size: 13px; ">Protocol.ModBus - 0.5.0 -&gt; 0.6.1, improvements and fixes;</li><li style="font-family: Verdana; font-size: 13px; ">Protocol.OPC_UA - 0.6.0, new module;</li><li style="font-family: Verdana; font-size: 13px; ">Special.FLibComplex1 - 1.0.4 -&gt; 1.0.6, improvements and fixes;</li><li style="font-family: Verdana; font-size: 13px; ">Special.FLibMath - 0.5.1 -&gt; 0.5.2, API change adaptation;</li><li style="font-family: Verdana; font-size: 13px; ">Special.FLibSYS - 0.9.0 -&gt; 0.9.2, improvements and fixes;</li><li style="font-family: Verdana; font-size: 13px; ">Special.SystemTests - 1.3.7 -&gt; 1.5.0, remaking and the unification of the tests;</li><li style="font-family: Verdana; font-size: 13px; ">UI.QTStarter - 1.5.3 -&gt; 1.6.0, improvements;</li><li style="font-family: Verdana; font-size: 13px; ">UI.QTCfg - 1.8.1 -&gt; 1.9.0, significant improvements and fixes;</li><li style="font-family: Verdana; font-size: 13px; ">UI.WebCfg - 1.5.3 -&gt; 1.5.4, fixes and API change adaptation;</li><li style="font-family: Verdana; font-size: 13px; ">UI.WebCfgD - 0.6.2 -&gt; 0.6.5, fixes;</li><li style="font-family: Verdana; font-size: 13px; ">UI.VCAEngine - 0.9.0 -&gt; 1.0.0, significant improvements, bug fixes and optimization;</li><li style="font-family: Verdana; font-size: 13px; ">UI.Vision - 0.9.0 -&gt; 1.0.0, significant improvements, bug fixes and optimization;</li><li style="font-family: Verdana; font-size: 13px; ">UI.WebVision - 0.7.0 -&gt; 0.9.0, significant improvements and fixes;</li><li style="font-family: Verdana; font-size: 13px; ">UI.WebUser - 0.6.0, new module;</li></ul><p class="bodytext"><span style="color: rgb(0, 51, 153); text-decoration: none; "><a name="h1023-3"></a></span></p>
<h2 style="margin: 20px 0px 5px; padding: 0px; font-family: Verdana; font-size: 20px; border-bottom: 3px dotted rgb(221, 221, 221); ">1 Implementation of planned tasks</h2>
<p id="p38812-9" style="font-family: Verdana; font-size: 13px; margin: 0px; padding: 0px; " class="indent10 auto align-justify">In accordance with the plan of release the following tasks were implemented:</p><ul style="margin-top: 0px; margin-bottom: 0px; padding-top: 0px; padding-bottom: 0px; "><li style="font-family: Verdana; font-size: 13px; "><em>Implementation of the primitives &quot;Link&quot; and &quot;Function&quot; of the VCA.</em>&nbsp;- In a view of the unprincipled to the industrial release and unclaimed at the moment, this task has been moved beyond the first industrial release.</li><li style="font-family: Verdana; font-size: 13px; "><em>The stabilization and release of industrial branch of OpenSCADA.</em>&nbsp;- The big work on stabilization and optimization of the industrial release was done, as detailed in the next section.</li><li style="font-family: Verdana; font-size: 13px; "><em>Implementation of the database ODBC module, PostgresSQL and transport module of the DB.</em>&nbsp;- Maxim Lysenko has done the implementation of the &quot;PostgreSQL&quot; DB module. Implementation of the database module &quot;ODBC&quot; was considered inappropriate, because the &quot;ODBC&quot; technology is actually the interface of SQL-queries that do not address specific SQL-dialects of the real database, and therefore can not be right, without regard to the type of database, used in solving OpenSCADA basic tasks. The prospect of using &quot;ODBC&quot; is to implement access to the database that have no &quot;native&quot; API of direct access to the database, but there is the ODBC driver, or to provide a simple interface of SQL-queries in OpenSCADA. The implementation of the transport module of DB was moved beyond the first industrial release.</li><li style="font-family: Verdana; font-size: 13px; "><em>Implementation of the new mechanism/module of OpenSCADA system's test.</em>&nbsp;- To perform the intra-system tests of OpenSCADA the mechanism of testing module was implemented as the user's API functions, which on the one hand retains the possibility of an autonomous call of static tests and on the other it provides an opportunity to call tests one by one, manually, as well as from user's scripts in any order and with the necessary number of individual tasks.</li></ul><p class="bodytext"><span style="color: rgb(0, 51, 153); text-decoration: none; "><a name="h1023-4"></a></span></p>
<h2 style="margin: 20px 0px 5px; padding: 0px; font-family: Verdana; font-size: 20px; border-bottom: 3px dotted rgb(221, 221, 221); ">2 Optimization, increasing of stability, sustainability and system's performance.</h2>
<p id="p38812-10" style="font-family: Verdana; font-size: 13px; margin: 0px; padding: 0px; " class="align-justify auto indent10">During the work on this version, as well as its practical adaptation, it was found and corrected in a total of about 200 errors.</p>
<p id="p38812-10" style="font-family: Verdana; font-size: 13px; margin: 0px; padding: 0px; " class="align-justify auto indent10">In addition to correcting of big number of errors it had been done the work on optimization of the various OpenSCADA's components. Especially, notable optimization was made in the Visual Control Area (VCA) and its visualizers.</p>
<p id="p38812-10" style="font-family: Verdana; font-size: 13px; margin: 0px; padding: 0px; " class="align-justify auto indent10">Lets list the most significant errors, correction of which significantly affected the increasing of stability:</p><ul style="margin-top: 0px; margin-bottom: 0px; padding-top: 0px; padding-bottom: 0px; "><li style="font-family: Verdana; font-size: 13px; "><em>System-wide</em>:<ul style="margin-top: 0px; margin-bottom: 0px; padding-top: 0px; padding-bottom: 0px; "><li style="font-family: Verdana; font-size: 13px; ">The incorrect setting of policy for real-time threads is fixed. It has not been set the PTHREAD_EXPLICIT_SCHED thread flag.</li><li style="font-family: Verdana; font-size: 13px; ">The control of dual capture of the resource in the single thread and capture the resource by timeout.</li><li style="font-family: Verdana; font-size: 13px; ">Mechanism to prevent the multiple startup is corrected for verification of PID of the blocked process due to removal by the system the lock-files in the directory /tmp.</li><li style="font-family: Verdana; font-size: 13px; ">The packing of classes structure's data using the # pragma pack (push, 1) is disabled because of the appearance of implicit buzz bug of one of the threads and blocking the rest on the OpenSCADA firmware of LP8x81 PLC.</li><li style="font-family: Verdana; font-size: 13px; ">Initialization and updating code of modules is updated to avoid the double initialization of shared libraries.</li><li style="font-family: Verdana; font-size: 13px; ">The function of the task creation is corrected to prevent crashing when creating the automatically closed tasks during the rapid closing.</li><li style="font-family: Verdana; font-size: 13px; ">The hang of function cron() is fixed at reason zero scheduling set.</li></ul></li><li style="font-family: Verdana; font-size: 13px; "><em>Transports</em>:<ul style="margin-top: 0px; margin-bottom: 0px; padding-top: 0px; padding-bottom: 0px; "><li style="font-family: Verdana; font-size: 13px; "><em>Serial, DAQ.DCON, DAQ.ModBus</em>: Transport of the serial interface is optimized, is made the typical one and is corrected for several errors. The transport's clients are adapted to use the new mechanism.</li><li style="font-family: Verdana; font-size: 13px; "><em>Sockets, SSL</em>: The possibility of incomplete recording by the write() function is fixed. When writing to the socket, this function writes only the part of the size of its buffer (50k). For complete record of large messages the repeat of record is added.</li><li style="font-family: Verdana; font-size: 13px; "><em>Transport.SSL:</em>&nbsp;It is finally fixed the waiting for data response from the server by waiting the data processing in the BIO_read() functions.</li><li style="font-family: Verdana; font-size: 13px; "><em>Transport.Sockets:</em>&nbsp;The processing of null result of the waiting the tail of messages is fixed to avoid hangs on the queries in DAQ.System.HDDTemp.</li><li style="font-family: Verdana; font-size: 13px; "><em>Transport.Serial:</em>&nbsp;CSTOPB flag using for stop bits number set is fixed.</li></ul><span style="color: rgb(0, 51, 153); text-decoration: none; "><a name="p38812-13"></a></span><p id="p38812-13" class="auto" style="font-family: Verdana; font-size: 13px; margin: 0px; padding: 0px; ">*&nbsp;<em>Data acquisition</em>:</p><ul style="margin-top: 0px; margin-bottom: 0px; padding-top: 0px; padding-bottom: 0px; "><li style="font-family: Verdana; font-size: 13px; "><em>ModBus</em>: The loss of resources during the data acquisition if fixed. For this reason it is excluded the possibility of assigning the string directly to the object of the resource string.</li><li style="font-family: Verdana; font-size: 13px; "><em>JavaLikeCalc</em>: The using of functions for the parameters of the DAQ controllers from the IO functions for first use is fixed.</li><li style="font-family: Verdana; font-size: 13px; "><em>DAQ, BlockCalc, JavaLikeCalc, LogicLev, Siemens</em>: The receiving of the erroneous data on the redundancy scheme in the nonredundant tasks and with the absence of redundant stations is fixed.</li></ul></li><li style="font-family: Verdana; font-size: 13px; "><em>Protocol.HTTP, UI.WebCfg, UI.WebCfgD, UI.WebUser, UI.Vision:</em>&nbsp;The value of the HTTP-parameter &quot;Content-Type&quot; is fixed for the &quot;Charset&quot; element.</li><li style="font-family: Verdana; font-size: 13px; "><em>UI.VCAEngine:</em>&nbsp;The crash of the VCA when changing the mutable attributes, that are multiply inherited, is fixed.</li></ul><p id="p38812-14" style="font-family: Verdana; font-size: 13px; margin: 0px; padding: 0px; " class="auto indent10">&nbsp;</p>
<p id="p38812-14" style="font-family: Verdana; font-size: 13px; margin: 0px; padding: 0px; " class="auto indent10">Optimization and performance improvement:</p><ul style="margin-top: 0px; margin-bottom: 0px; padding-top: 0px; padding-bottom: 0px; "><li style="font-family: Verdana; font-size: 13px; "><em>SYS.XML</em>: Conversion function of an XML tree into a string is optimized over the time.</li><li style="font-family: Verdana; font-size: 13px; "><em>SYS.Archive</em>: The mechanism for adaptive generation of requests to the archives of various qualities in the case of a general request is added. It prevents the long processing time in the case of requesting the large intervals of time and the availability of lower quality archives.</li><li style="font-family: Verdana; font-size: 13px; "><em>DAQ, DAQ.DAQGate</em>: Optimization of request between redundant stations over the requests' size and time is done. Only archive attributes of DAQ parameters and attributes, planned to request, are requested.</li><li style="font-family: Verdana; font-size: 13px; "><em>Archive.FSArch</em>: The creation of information files of the packaged archives without storing these data in the database is added. This feature allows quick connection of large archives to other stations.</li><li style="font-family: Verdana; font-size: 13px; "><em>UI.Vision</em>: In the &quot;ElFigure&quot; primitive for the drawing it is used QPixmap instead of QImage, it greatly improved the performance.</li><li style="font-family: Verdana; font-size: 13px; "><em>UI.Vision</em>: To construct the image of the &quot;Diagram&quot; primitive the QImage is used instead of QPicture, it greatly improved the performance.</li><li style="font-family: Verdana; font-size: 13px; "><em>TFunction, DAQ.JavaLikeCalc</em>: The enclosed context of the functions is added in order to improve the performance of external calls.</li></ul><p id="p38812-15" style="font-family: Verdana; font-size: 13px; margin: 0px; padding: 0px; " class="auto indent10">&nbsp;</p>
<p id="p38812-15" style="font-family: Verdana; font-size: 13px; margin: 0px; padding: 0px; " class="auto indent10">Optimization of the memory usage:</p><ul style="margin-top: 0px; margin-bottom: 0px; padding-top: 0px; padding-bottom: 0px; "><li style="font-family: Verdana; font-size: 13px; "><em>SYS</em>: The system is switched to the traditional &quot;map&quot; instead of &quot;hash_map&quot; for all objects in order to reduce memory consumption.</li><li style="font-family: Verdana; font-size: 13px; "><em>UI.VCAEngine</em>: The object of the &quot;Attr&quot; attribute is divorced from the &quot;TCntrNode&quot; object in order to reduce memory consumption by up to 25%.</li></ul><p class="bodytext"><span style="color: rgb(0, 51, 153); text-decoration: none; "><a name="h1023-5"></a></span></p>
<h2 style="margin: 20px 0px 5px; padding: 0px; font-family: Verdana; font-size: 20px; border-bottom: 3px dotted rgb(221, 221, 221); ">3 Improvement and stabilization of the VCA.</h2>
<p id="p38812-16" style="font-family: Verdana; font-size: 13px; margin: 0px; padding: 0px; " class="indent10 auto align-justify">Notable changes were made in the visual control area (VCA), namely, in the VCA engine (UI.VCAEngine) modules: UI.Vision and UI.WebVision visualizers. These changes were aimed at stabilizing, optimization of memory consumption and improvement of user's properties of VCA.</p>
<p id="p38812-17" style="font-family: Verdana; font-size: 13px; margin: 0px; padding: 0px; " class="indent10 auto align-justify">Improvements of the VCA:</p><ul style="margin-top: 0px; margin-bottom: 0px; padding-top: 0px; padding-bottom: 0px; "><li style="font-family: Verdana; font-size: 13px; ">The full support for vertical scaling of the diagrams is added.</li><li style="font-family: Verdana; font-size: 13px; ">The support for alpha channel in color attributes of all primitives is added.</li><li style="font-family: Verdana; font-size: 13px; "><em>UI.VCAEngine</em>:<ul style="margin-top: 0px; margin-bottom: 0px; padding-top: 0px; padding-bottom: 0px; "><li style="font-family: Verdana; font-size: 13px; ">It is included and made safe the inheritance of the description of mutable attributes.</li><li style="font-family: Verdana; font-size: 13px; ">The new user's API functions for the sessions are added: wdgAdd(), wdgDel(), link() and linkSet(). Addition of these functions allowed to implement the concept of a fully dynamic formation of the user interface.</li><li style="font-family: Verdana; font-size: 13px; ">Properties of access rights to the widget are implemented by the attributes &quot;owner&quot; and &quot;perm&quot; to increase the flexibility of control.</li><li style="font-family: Verdana; font-size: 13px; ">The mechanism for automatically creating and running session at startup is added.</li></ul></li><li style="font-family: Verdana; font-size: 13px; "><em>UI.Vision</em>:<ul style="margin-top: 0px; margin-bottom: 0px; padding-top: 0px; padding-bottom: 0px; "><li style="font-family: Verdana; font-size: 13px; ">In the attributes inspector the ability of group setting of same attributes of various widgets is added. Setting is done in the group container of the properties of attributes' inspector that appears when you select multiple widgets simultaneously.</li><li style="font-family: Verdana; font-size: 13px; ">In the &quot;ElFigure&quot; primitive for the drawing the QPixmap is used instead of QImage, it greatly improved the performance.</li><li style="font-family: Verdana; font-size: 13px; ">To construct the image of the &quot;Diagram&quot; primitive The QImage is used instead of QPicture, it greatly improved performance.</li><li style="font-family: Verdana; font-size: 13px; ">The support of properties of the user interface is added. The control and changing of the toolbar icons' size is added.</li><li style="font-family: Verdana; font-size: 13px; ">The ability to copy the values of attributes and links through the context menu of attributes' and links' inspectors is added.</li><li style="font-family: Verdana; font-size: 13px; ">The search function in the &quot;TextEdit&quot; element is added.</li></ul></li><li style="font-family: Verdana; font-size: 13px; "><em>UI.WebVision</em>:<ul style="margin-top: 0px; margin-bottom: 0px; padding-top: 0px; padding-bottom: 0px; "><li style="font-family: Verdana; font-size: 13px; ">The support of turning the &quot;Text&quot; primitive is added.</li><li style="font-family: Verdana; font-size: 13px; ">The generation of the basic mouse events is added. For processing of some events the stack of processing functions is added.</li><li style="font-family: Verdana; font-size: 13px; ">For the sender-user the access to its session and control is adapted.</li></ul></li></ul><p class="bodytext"><span style="color: rgb(0, 51, 153); text-decoration: none; "><a name="h1023-6"></a></span></p>
<h2 style="margin: 20px 0px 5px; padding: 0px; font-family: Verdana; font-size: 20px; border-bottom: 3px dotted rgb(221, 221, 221); ">4 Formation and stabilization of API of user's programming.</h2>
<p id="p38812-18" style="font-family: Verdana; font-size: 13px; margin: 0px; padding: 0px; " class="indent10 auto align-justify">Extensively it has been made the formation of new object API of the user's programming, which provides the integration of user's functions in the objects' tree of OpenSCADA. In addition, a number of changes to the existing library of functions of the user's API was made.</p>
<p id="p38812-19" style="font-family: Verdana; font-size: 13px; margin: 0px; padding: 0px; " class="auto indent10">In particular the following changes were done:</p><ul style="margin-top: 0px; margin-bottom: 0px; padding-top: 0px; padding-bottom: 0px; "><li style="font-family: Verdana; font-size: 13px; "><em>SYS</em>:<ul style="margin-top: 0px; margin-bottom: 0px; padding-top: 0px; padding-bottom: 0px; "><li style="font-family: Verdana; font-size: 13px; "><em>SYS, Special.FLibSYS</em>: XMLNodeObj object of the user's API moved into the OpenSCADA core (tvariant.h and tvariant.cpp files).</li><li style="font-family: Verdana; font-size: 13px; ">User's system API of OpenSCADA based on the TCntrNodeObj object is expanded to control the user's access rights.</li><li style="font-family: Verdana; font-size: 13px; ">TAreaObj object is renamed to TArrayObj.</li><li style="font-family: Verdana; font-size: 13px; ">Properties of objects, functions' calls and exceptions' processing of user's API are unified.</li><li style="font-family: Verdana; font-size: 13px; "><em>SYS.TVarObj</em>: The propList() function is added to provide an ability to scan the attributes.</li></ul></li><li style="font-family: Verdana; font-size: 13px; "><em>DAQ.JavaLikeCalc</em>:<ul style="margin-top: 0px; margin-bottom: 0px; padding-top: 0px; padding-bottom: 0px; "><li style="font-family: Verdana; font-size: 13px; ">Functions of the user's API: insert(), replace(), toReal(), toInt(), parse(), parsePath() and path2sep() are added in the object of the string type value.</li><li style="font-family: Verdana; font-size: 13px; ">The isEVal() function is added to basic types in order to detect the EVAL-values.</li></ul></li><li style="font-family: Verdana; font-size: 13px; "><em>Special.FLibComplex1</em>: PID function is expanded with new parameters: Kd, Tzd and followSp. The Tf parameter is removed.</li><li style="font-family: Verdana; font-size: 13px; "><em>Object API of the user's programming</em>:<ul style="margin-top: 0px; margin-bottom: 0px; padding-top: 0px; padding-bottom: 0px; "><li style="font-family: Verdana; font-size: 13px; "><em>SYS</em>: User's API functions: system(), message(), XMLNode(), cntrReq(), time(), localtime(), strftime(), strptime(), cron(), messDebug(), messInfo(), messNote(), messWarning(), messErr(), messCrit(), messAlert(), messEmerg() и strFromCharCode() are added to the root object of the OpenSCADA core.</li><li style="font-family: Verdana; font-size: 13px; "><em>DB</em>: SQLReq() user's API function is added to the database object.</li><li style="font-family: Verdana; font-size: 13px; "><em>Transport</em>: messIO() user's API function is added to the object of the outgoing transport.</li><li style="font-family: Verdana; font-size: 13px; "><em>UI.VCAEngine</em>:<ul style="margin-top: 0px; margin-bottom: 0px; padding-top: 0px; padding-bottom: 0px; "><li style="font-family: Verdana; font-size: 13px; ">User's API functions: user(), alrmSndPlay() and alrmQuittance() are added to the session's object of the project.</li><li style="font-family: Verdana; font-size: 13px; ">To the &quot;Widget&quot; object the functions of user's API were added: ownerSess(), ownerPage(), ownerWdg(), attrPresent(), attr(), attrSet(), wdgAdd(), wdgDel(), link() and linkSet().</li><li style="font-family: Verdana; font-size: 13px; ">The special attribute &quot;this&quot; is added into all VCA's scripts to access the widget's object and further calling of its functions of user's API.</li></ul></li><li style="font-family: Verdana; font-size: 13px; "><em>Archives</em>: messGet() user's API function is added to the object of subsystem &quot;Archives&quot;.</li><li style="font-family: Verdana; font-size: 13px; "><em>DAQ.Value</em>: The functions of user's API get() and set() of the attribute are added.</li></ul></li></ul><p class="bodytext"><span style="color: rgb(0, 51, 153); text-decoration: none; "><a name="h1023-7"></a></span></p>
<h2 style="margin: 20px 0px 5px; padding: 0px; font-family: Verdana; font-size: 20px; border-bottom: 3px dotted rgb(221, 221, 221); ">5 System-wide expansions.</h2>
<p id="p38812-20" style="font-family: Verdana; font-size: 13px; margin: 0px; padding: 0px; " class="align-justify auto indent10">To the system-wide API of OpenSCADA system there have been made the significant changes and expansions in order to improve the functionality and overall stabilization:</p><ul style="margin-top: 0px; margin-bottom: 0px; padding-top: 0px; padding-bottom: 0px; "><li style="font-family: Verdana; font-size: 13px; "><em>SYS</em>:<ul style="margin-top: 0px; margin-bottom: 0px; padding-top: 0px; padding-bottom: 0px; "><li style="font-family: Verdana; font-size: 13px; ">The mechanism to prevent re-run is added to the scripts: demo-start and user-start.</li><li style="font-family: Verdana; font-size: 13px; ">The global functions to create (register) taskCreate () and to close taskDestroy () of the treads are added. All components of OpenSCADA use new API.</li><li style="font-family: Verdana; font-size: 13px; ">The debian/* files for support the building of Debian packages are added.</li><li style="font-family: Verdana; font-size: 13px; ">The strParse() function is added for the expansion of the strSepParse() function in order to support of multi-character separators and for the integration of single-character ones.</li><li style="font-family: Verdana; font-size: 13px; ">The infrastructure of the debugging counters is added.</li><li style="font-family: Verdana; font-size: 13px; ">The ability to assign processors to the threads of OpenSCADA on multi-processor systems and multi-core processors is added.</li><li style="font-family: Verdana; font-size: 13px; ">The task manager is added. The id field of the thread's process is added to the task manager.</li><li style="font-family: Verdana; font-size: 13px; ">To implement specific functions the wrapper on the tasks of OpenSCADA is added. The &quot;TError&quot; exceptions' processing is added for the tasks inside the wrapper.</li><li style="font-family: Verdana; font-size: 13px; ">The core's code of the OpenSCADA is placed in the &quot;OSCADA&quot; scope. Version of the OpenSCADA's сore library is increased to 1:0:0.</li><li style="font-family: Verdana; font-size: 13px; ">The rules of access to all elements of the control interface are unified.</li><li style="font-family: Verdana; font-size: 13px; ">The check for a version 2.0 of the libtool library is added. It is enabled the building of only shared libraries for modules.</li><li style="font-family: Verdana; font-size: 13px; ">The ID of the module is placed in the class of the constructor to simplify initialization of translating the text messages of the modules.</li><li style="font-family: Verdana; font-size: 13px; ">For all translations the parameters &quot;-C --no-location --no-wrap -k_&quot; of the xgettext utility are used. It is used for cleaning the garbage from the translation files.</li><li style="font-family: Verdana; font-size: 13px; ">API versions of the all modular sub-systems are set to 5.</li></ul></li><li style="font-family: Verdana; font-size: 13px; "><em>SYS.Function, DAQ.BlockCalc, DAQ.LogicLev, UI.VCAEngine</em>: The mechanism for changes' monitoring in the parameters of &quot;DAQ&quot; subsystem's controller is added.</li><li style="font-family: Verdana; font-size: 13px; "><em>DB</em>:<ul style="margin-top: 0px; margin-bottom: 0px; padding-top: 0px; padding-bottom: 0px; "><li style="font-family: Verdana; font-size: 13px; ">The automatic opening of the available tables on request to them is added.</li><li style="font-family: Verdana; font-size: 13px; ">The transaction control is added to the function sqlReq(), as well as the function transCloseCheck() is added.</li></ul></li><li style="font-family: Verdana; font-size: 13px; "><em>TFunction, DAQ.JavaLikeCalc</em>: The enclosed сontext of functions is added in order to improve the performance of external calls.</li><li style="font-family: Verdana; font-size: 13px; "><em>DAQ</em>: The error code is added to the state of the controller, which allows us to identify state and display it.</li><li style="font-family: Verdana; font-size: 13px; "><em>Protocol, Transport, DAQ.ModBus, Protocol.UserProtocol</em>: The function itemListIn() is added to select elements of a protocol. The module's API of the subsystem is changed to 3. The selection of protocol's elements via the function TProtocol::itemListIn() is added.</li></ul><p class="bodytext"><span style="color: rgb(0, 51, 153); text-decoration: none; "><a name="h1023-8"></a></span></p>
<h2 style="margin: 20px 0px 5px; padding: 0px; font-family: Verdana; font-size: 20px; border-bottom: 3px dotted rgb(221, 221, 221); ">6 Significant improvements and fixes of the individual modules.</h2>
<p id="p38812-21" style="font-family: Verdana; font-size: 13px; margin: 0px; padding: 0px; " class="indent10 auto align-justify">While working on this industrial release the significant changes, improvements and stabilization were made with the individual modules of OpenSCADA:</p><ul style="margin-top: 0px; margin-bottom: 0px; padding-top: 0px; padding-bottom: 0px; "><li style="font-family: Verdana; font-size: 13px; "><em>DB.MySQL</em>:<ul style="margin-top: 0px; margin-bottom: 0px; padding-top: 0px; padding-bottom: 0px; "><li style="font-family: Verdana; font-size: 13px; ">The support for unbounded values of &quot;Real&quot; and &quot;Integer&quot; data types is added.</li><li style="font-family: Verdana; font-size: 13px; ">The conversion of EVAL for the real type is added.</li></ul></li><li style="font-family: Verdana; font-size: 13px; "><em>DB.SQLite</em>: The transaction mechanism is improved to support user's SQL-queries and closing the old transactions.</li><li style="font-family: Verdana; font-size: 13px; "><em>DB.FireBird</em>: The support for multilingual text variables is added. The support of transactions is unified.</li><li style="font-family: Verdana; font-size: 13px; "><em>DAQ</em>:<ul style="margin-top: 0px; margin-bottom: 0px; padding-top: 0px; padding-bottom: 0px; "><li style="font-family: Verdana; font-size: 13px; "><em>DAQGate</em>: The support of ability to request the individual attributes is added. It is used to request the archived and often requested attributes. All other attributes are requested with the period of synchronization by a full request. It is used to reduce the workload and time in exchange of DAQGate with a remote OpenSCADA station.</li><li style="font-family: Verdana; font-size: 13px; "><em>ICP_DAS</em>: The status of the DIP-switch for LP-8781 PLC is added. The functions to send the messages via the serial interface are moved into the general serReq() function and all requests use it.</li><li style="font-family: Verdana; font-size: 13px; "><em>ModBus</em>: The suffixes &quot;i2, i4, f, b0&quot; are added to the registers (R and RI) for flexible access through a variety of data types.</li><li style="font-family: Verdana; font-size: 13px; "><em>JavaLikeCalc</em>:<ul style="margin-top: 0px; margin-bottom: 0px; padding-top: 0px; padding-bottom: 0px; "><li style="font-family: Verdana; font-size: 13px; ">The support of the review loop &quot;for( &lt;i&gt; in &lt;obj&gt; ) &lt;code&gt;;&quot; to scan the object's properties is added.</li><li style="font-family: Verdana; font-size: 13px; ">Properties of objects, functions' calls and exceptions' processing of user's API are unified.</li></ul></li></ul></li><li style="font-family: Verdana; font-size: 13px; "><em>Transport</em>:<ul style="margin-top: 0px; margin-bottom: 0px; padding-top: 0px; padding-bottom: 0px; "><li style="font-family: Verdana; font-size: 13px; "><em>Serial</em>:<ul style="margin-top: 0px; margin-bottom: 0px; padding-top: 0px; padding-bottom: 0px; "><li style="font-family: Verdana; font-size: 13px; ">The ability to select the type of the thread's control is added. It is supported the hardware (CRTSCTS) and software (IXON IXOFF) thread's control.</li><li style="font-family: Verdana; font-size: 13px; ">The support of the modem mode for all input and output transports is added.</li></ul></li><li style="font-family: Verdana; font-size: 13px; "><em>SSL</em>:<ul style="margin-top: 0px; margin-bottom: 0px; padding-top: 0px; padding-bottom: 0px; "><li style="font-family: Verdana; font-size: 13px; ">The support of KeepAlive limits is added. The support of reconnection after the connection loss for prevention the loss of messages is added.</li><li style="font-family: Verdana; font-size: 13px; ">The getting of the sender's address is added.</li></ul></li><li style="font-family: Verdana; font-size: 13px; "><em>SSL, Sockets</em>: In the outgoing transport it is added the timings for the individual connection time and time of the subsequent responses control.</li><li style="font-family: Verdana; font-size: 13px; "><em>Protocol.HTTP</em>:<ul style="margin-top: 0px; margin-bottom: 0px; padding-top: 0px; padding-bottom: 0px; "><li style="font-family: Verdana; font-size: 13px; ">The function of the outgoing protocol is added.</li><li style="font-family: Verdana; font-size: 13px; ">The support of automatic login is added.</li></ul></li></ul></li><li style="font-family: Verdana; font-size: 13px; "><em>Archive.FSArch</em>: The creation of information files of packaged archives is added without storing these data in the database. This feature allows quick connection of large archives to other stations.</li><li style="font-family: Verdana; font-size: 13px; "><em>UI.QTCfg</em>:<ul style="margin-top: 0px; margin-bottom: 0px; padding-top: 0px; padding-bottom: 0px; "><li style="font-family: Verdana; font-size: 13px; ">The adjustment of rows for tables after adding the new rows is added. The support for copying the contents of the table to the clipboard is added.</li><li style="font-family: Verdana; font-size: 13px; ">The search function in the &quot;TextEdit&quot; element is added.</li><li style="font-family: Verdana; font-size: 13px; ">The ability to copy the list of selected nodes is added.</li></ul></li></ul><p class="bodytext"><span style="color: rgb(0, 51, 153); text-decoration: none; "><a name="h1023-9"></a></span></p>
<h2 style="margin: 20px 0px 5px; padding: 0px; font-family: Verdana; font-size: 20px; border-bottom: 3px dotted rgb(221, 221, 221); ">7 Formation of the documentation, translation of documentation and interface.</h2>
<p id="p38812-22" style="font-family: Verdana; font-size: 13px; margin: 0px; padding: 0px; " class="indent10 auto align-justify">Since this release is positioned as an industrial release with a prolonged period of support, it was finished writing the documentation in Russian and translation into English of all the main documentation. In addition, the translation of the user's interface into English, Russian, Ukrainian and German languages is completed:</p><ul style="margin-top: 0px; margin-bottom: 0px; padding-top: 0px; padding-bottom: 0px; "><li style="font-family: Verdana; font-size: 13px; ">The README translation into Ukrainian is added.</li><li style="font-family: Verdana; font-size: 13px; ">The translation of the DAQ document and the summarizing document into English is done.</li><li style="font-family: Verdana; font-size: 13px; ">The document &quot;Quick Start&quot; is added.</li><li style="font-family: Verdana; font-size: 13px; ">The translation of the document &quot;Quick Start&quot; into English language is added.</li><li style="font-family: Verdana; font-size: 13px; ">General document &quot;OpenSCADA&quot; in English is updated to include the following parts: &quot;Quick Start&quot; and DAQ.OPC_UA.</li><li style="font-family: Verdana; font-size: 13px; ">The interface translation of the system core to Russian, Ukrainian and German languages is updated.</li><li style="font-family: Verdana; font-size: 13px; ">For all translations the parameters &quot;-C - no-location - no-wrap-k_&quot; of the xgettext utility are used. It is used for cleaning the garbage from the translation files.</li></ul><p class="bodytext"><span style="color: rgb(0, 51, 153); text-decoration: none; "><a name="h1023-10"></a></span></p>
<h2 style="margin: 20px 0px 5px; padding: 0px; font-family: Verdana; font-size: 20px; border-bottom: 3px dotted rgb(221, 221, 221); ">8 Unification of the demonstration database.</h2>
<p id="p38812-23" style="font-family: Verdana; font-size: 13px; margin: 0px; padding: 0px; " class="indent10 auto align-justify">During the preparation of the industrial release, considerable attention was paid to improving the demo database as a vivid demonstration of the OpenSCADA system:</p><ul style="margin-top: 0px; margin-bottom: 0px; padding-top: 0px; padding-bottom: 0px; "><li style="font-family: Verdana; font-size: 13px; ">Significant upgrade to support new features and include new improvements from the automation control system of ball mills.</li><li style="font-family: Verdana; font-size: 13px; ">The support of user's calling of the demonstration database in the full mode on the record is added.</li><li style="font-family: Verdana; font-size: 13px; ">The scaling of existing elements in the case of absence of rows and/or columns for the overview frame and the result graphics is added.</li><li style="font-family: Verdana; font-size: 13px; ">It is updated to include new models of machines of technological processes and for adapt all the other models.</li><li style="font-family: Verdana; font-size: 13px; ">It is updated for:<ul style="margin-top: 0px; margin-bottom: 0px; padding-top: 0px; padding-bottom: 0px; "><li style="font-family: Verdana; font-size: 13px; ">Addition of the signaling objects of the compressors: KM201, KM301, KM202 and KM302.</li><li style="font-family: Verdana; font-size: 13px; ">Support of the manual input of variables from the control panel.</li><li style="font-family: Verdana; font-size: 13px; ">Translation's update.</li><li style="font-family: Verdana; font-size: 13px; ">Fixing of the several bugs.</li></ul></li><li style="font-family: Verdana; font-size: 13px; ">Script of the main page of the project is rewritten to use new functions of the user's API.</li><li style="font-family: Verdana; font-size: 13px; ">The new mechanism to access user's interface elements is used. The real read access for a simple user (&quot;user&quot;) is provided.</li></ul><p class="bodytext"><span style="color: rgb(0, 51, 153); text-decoration: none; "><a name="h1023-11"></a></span></p>
<h2 style="margin: 20px 0px 5px; padding: 0px; font-family: Verdana; font-size: 20px; border-bottom: 3px dotted rgb(221, 221, 221); ">9 Solutions, based on OpenSCADA</h2>
<p id="p38812-24" style="font-family: Verdana; font-size: 13px; margin: 0px; padding: 0px; " class="align-justify auto indent10">Actually the whole range of automation solutions is built on the basis of OpenSCADA project, which clearly demonstrates the capabilities and is the signal of readiness of the system for the wide industrial application.</p>
<p id="p38812-25" style="font-family: Verdana; font-size: 13px; margin: 0px; padding: 0px; " class="indent10 auto align-justify">In general, on the basis of OpenSCADA the authors of the project solved the following tasks: the full dynamic simulation (modeling) of technological processes (TP), process control at the level of the programmable logic controller (PLC) and formation of HMI of the TP.</p>
<p id="p38812-26" style="font-family: Verdana; font-size: 13px; margin: 0px; padding: 0px; " class="indent10 auto align-justify">Modelling of the TP is presented by the solutions: &quot;Library of models of technological devices&quot;, &quot;The dynamic model of real-time of the Anastasievskaja GLKS&quot; and &quot;The dynamic model of the steam boiler number 9 DMKD&quot; . Besides the solution &quot;The dynamic model of real-time of the Anastasievskaja GLKS&quot; was the basis for the demonstration project database and it is distributed with all distributions of OpenSCADA.</p>
<p id="p38812-27" style="font-family: Verdana; font-size: 13px; margin: 0px; padding: 0px; " class="indent10 auto align-justify">The scope of process control at the level of the programmable logic controller (PLC) is presented by the solution &quot;OpenSCADA into programmable logic controller (PLC)&quot; and &quot;Runtime of the PLC LP-8x81 of the ICP DAS company based on the OpenSCADA&quot;.</p>
<p id="p38812-27" style="font-family: Verdana; font-size: 13px; margin: 0px; padding: 0px; " class="indent10 auto align-justify">The scope of the formation of the TP HMI is presented by the solutions: &quot;Library of the graphic elements of the user's interfaces&quot; and &quot; ACS TP of the ball mills &quot;ШБМ 287/410&quot; of the boiler &quot;БКЗ 160–100 ПТ&quot; &quot;.</p>
<p id="p38812-27" style="font-family: Verdana; font-size: 13px; margin: 0px; padding: 0px; " class="indent10 auto align-justify">One should also note the presence of a number of solutions that are not included in the list above, and made by the developers of the system for the third parties or directly by the users.</p>
<h2 style="margin: 20px 0px 5px; padding: 0px; font-family: Verdana; font-size: 20px; border-bottom: 3px dotted rgb(221, 221, 221); ">Conclusion</h2>
<p id="p38812-30" style="font-family: Verdana; font-size: 13px; margin: 0px; padding: 0px; " class="align-justify auto indent10">OpenSCADA system is ready for practical use in harsh industrial conditions and to perform a wide range of automatic process control tasks.</p>
<p id="p38812-30" style="font-family: Verdana; font-size: 13px; margin: 0px; padding: 0px; " class="align-justify auto indent10">With the purpose to provide the quality service based on the OpenSCADA solutions, as well as for development in the direction of support the specialized equipment, protocols and interfaces, developers are actively working on the formation the policy of providing the services on the commercial basis. The list of commercial services will include: technical support, consultations and targeted development of extensions, integration and implementation of solutions, and development of customized solutions and products, based on OpenSCADA.</p>
<p id="p38812-30" style="font-family: Verdana; font-size: 13px; margin: 0px; padding: 0px; " class="align-justify auto indent10">The 0.7.0 version provides the OpenSCADA solutions only for the Linux x86 and x86_64 platforms. To implement the support of other hardware and software platforms, planned by the project, the work will continue. So, for version 0.8.0 it is planned to expand the support of hardware platforms, at least of the ARM platform, as the representative of RISC architecture.</p>
<p id="p38812-30" style="font-family: Verdana; font-size: 13px; margin: 0px; padding: 0px; " class="align-justify auto indent10">In the appearance of the first industrial version of OpenSCADA actively participated the following people:</p><ul style="margin-top: 0px; margin-bottom: 0px; padding-top: 0px; padding-bottom: 0px; "><li style="font-family: Verdana; font-size: 13px; "><span style="color: rgb(0, 51, 153); text-decoration: none; "><a title="Roman&amp;nbsp;Savochenko" href="http://wiki.oscada.org/RomanSavochenko?v=1bw8" name=".romansavochenko">Roman Savochenko</a></span>: The main works on the projecting, development, documentation's writing and testing.</li><li style="font-family: Verdana; font-size: 13px; "><span style="color: rgb(0, 51, 153); text-decoration: none; "><a title="Home&amp;nbsp;Page&amp;nbsp;En&amp;nbsp;/&amp;nbsp;Maxim&amp;nbsp;Lysenko" href="http://wiki.oscada.org/HomePageEn/MaximLysenko?v=t6q" name=".homepageen.maximlysenko">Maxim Lysenko</a></span>: Development of the &quot;ElFigure&quot; VCA primitive, creation of the DB module &quot;PostgreSQL&quot; and translation of the main part of documentation into English.</li><li style="font-family: Verdana; font-size: 13px; "><span style="color: rgb(0, 51, 153); text-decoration: none; "><a title="Yashina&amp;nbsp;Ksenia" href="http://wiki.oscada.org/YashinaKsenia?v=139q" name=".yashinaksenia">Yashina Ksenia</a></span>: Development of the &quot;ElFigure&quot; VCA primitive.</li><li style="font-family: Verdana; font-size: 13px; "><em>Попкова Ирина</em>: Translation of the system interface of OpenSCADA and its modules into German language.</li><li style="font-family: Verdana; font-size: 13px; "><em>Almaz Kharimov</em>: Development of the DCON Protocol module and active testing of the system.</li><li style="font-family: Verdana; font-size: 13px; "><span style="color: rgb(0, 51, 153); text-decoration: none; "><a title="Popkov&amp;nbsp;Aleksey" href="http://wiki.oscada.org/PopkovAleksey?v=141x" name=".popkovaleksey">Popkov Aleksey</a></span>: Active testing and participation.</li><li style="font-family: Verdana; font-size: 13px; ">Many other OpenSCADA users, via extensive testing.</li></ul>]]></content:encoded>
			<category>News</category>
			
			<author>rom_as@oscada.org</author>
			<pubDate>Wed, 16 Nov 2011 18:00:00 +0200</pubDate>
			
		</item>
		
		<item>
			<title>On September, 27-30th 2011 in city Kiev (Ukraine) the international innovation forum and On October 1 the conference of developers and users of the free software and exhibition of free software solutions took place.</title>
			<link>http://www.oscada.org/en/news-storage/single-page/article//on-september-27-30th-2011-in-city-kiev-ukraine-the-international-innovation-forum-and-on-october//fde0007294bca2799aa9853dea92d645/</link>
			<description>On the stand of Dneprodzerzhinsk State Technical University (DSTU) and Co. Ltd. NPC &quot;DІYA&quot; within...</description>
			<content:encoded><![CDATA[<p class="align-justify indent10">The forum and exhibition was present the following OpenSCADA solutions:</p><ul><li>Dynamic models of of technological processes and their control systems: Gas compressor station for six compressors, steam multifuel boiler unit BKZ-160.</li><li>The model and controller (ICP_DAS) of the ACS of ball mill for coal grinding for the boilers of thermal power station.</li><li>OpenSCADA on the mobile devices: Nokia N800, N950.</li><li>OpenSCADA on the industrial controllers: ICP_DAS LP-8781, LP-5141.</li></ul>]]></content:encoded>
			<category>News</category>
			<category>Report</category>
			<category>Publication</category>
			
			<author>rom_as@oscada.org</author>
			<pubDate>Sun, 25 Sep 2011 08:52:00 +0300</pubDate>
			
		</item>
		
		<item>
			<title>Building OpenSCADA and firmware for ARM-controllers of ICP DAS company (LP-5141)</title>
			<link>http://www.oscada.org/en/news-storage/single-page/article//building-openscada-and-firmware-for-arm-controllers-of-icp-das-company-lp-5141//61001115c510f2257645d5ca37197b2c/</link>
			<description>Name: LP-5xxx
Start: august 2011
Finish: september 2011
Version: 1.0.0
Performers: Roman...</description>
			<content:encoded><![CDATA[<p id="p93132-4" class="align-justify auto indent10"> The <a href="http://www.icpdas.com/" title="Внешняя ссылка (откроется в новом окне)" target="_blank" class="outerlink" ><img src="http://wiki.oscada.org/themes/default/icons/web.gif" alt="">ICP_DAS</a> company produces the controllers on <a href="http://en.wikipedia.org/wiki/ARM" target="_blank" class="outerlink" >ARM</a> architecture processors for quite a long time with <a href="http://en.wikipedia.org/wiki/Linux" target="_blank" class="outerlink" >OS Linux</a> as preinstalled environment, which makes interesting the creation or OpenSCADA build or the new firmware with OpenSCADA.</p>
<p id="p93132-5" class="align-justify auto indent10"> Until the last moment there were a number of reasons that prevent the  creation of an OpenSCADA build for ARM-controllers of the ICP DAS:</p><ul><li> absence of the ARM-controller; </li><li> unavailability of OpenSCADA to work on ARM-architecture; </li><li> extremely outdated Linux environment on the ARM-controllers of &quot;ICP DAS&quot;.</li></ul><p id="p93132-6" class="align-justify auto indent10"> At the moment, all of these obstacles have been eliminated. So, thanks  to Peter Litkovets we got the LP-5141 controller, and by this time  OpenSCADA was largely already adapted to work on ARM-architecture,  through processing and stabilization on the handheld computer of <a href="http://www.nokia.com/" title="Внешняя ссылка (откроется в новом окне)" target="_blank" class="outerlink" ><img src="http://wiki.oscada.org/themes/default/icons/web.gif" alt="">Nokia</a> company - <a href="http://en.wikipedia.org/wiki/Nokia_N800" title="Внешняя ссылка (откроется в новом окне)" target="_blank" class="outerlink" ><img src="http://wiki.oscada.org/themes/default/icons/web.gif" alt="">N800</a>.  Later during the same work with the LP-5141 controller it has been  eliminated the last obstacle by updating the original software  environment while maintaining the original functionality.</p>
<p id="p93132-7" class="align-justify auto indent10"> In general, the goal of this project is to develop the mechanisms and  the creation of OpenSCADA building for the ARM family of the controllers  of &quot;ICP DAS&quot; company, as well as the creation of a firmware for the  &quot;ICP DAS&quot; controllers, which will fall into the hands of OpenSCADA  developers.</p>
<h2>1. PLC LP-5141</h2>
<p id="p93132-8" class="indent10 auto align-justify"> PLC is designed in the monoblock form-factor that does not  include built-in computer-process interface, and the connection of the  external one is made through the built in RS-485, for example, in the  form of modules I-7000 of the the &quot;ICP DAS&quot; company.</p><div style="float:center; text-align:center"><p class="bodytext"><img src="http://wiki.oscada.org/Using/LP5xxx/files?get=lp5141.png" alt=""><br /> Fig. PLC of the LP-5xxx series.</p></div><p id="p93132-9" class="align-justify auto indent10"> CPU of the controller has the following specifications:</p><table rules="all" style="border-style: solid; border-width: 1px; border-color: rgb(0, 0, 0); border-collapse: collapse; " class="contenttable"> <thead><tr class="userrow"><th scope="col" class="usercell"><p class="bodytext"> CPU </p></th><th scope="col" class="usercell"><p class="bodytext"> PXA270 or compatible (32-bit and 520MHz) </p></th></tr></thead><tbody> <tr class="userrow"><td class="usercell"><p class="bodytext"> SDRAM </p></td><td class="usercell"><p class="bodytext"> 128 MB </p></td></tr> <tr class="userrow"><td class="usercell"><p class="bodytext"> Flash </p></td><td class="usercell"><p class="bodytext"> 64 MB </p></td></tr> <tr class="userrow"><td class="usercell"><p class="bodytext"> EEPROM </p></td><td class="usercell"><p class="bodytext"> 16 KB<br /> Data storage: 40 years; 1,000,000 delete/write cycles. </p></td></tr> <tr class="userrow"><td class="usercell"><p class="bodytext"> Extended Flash memory </p></td><td class="usercell"><p class="bodytext"> microSD socket with a 2GB microSD card (can support 16 GB microSDHC card) </p></td></tr> <tr class="userrow"><td class="usercell"><p class="bodytext"> 64-bit serial number of the equipment </p></td><td class="usercell"><p class="bodytext"> Present </p></td></tr> <tr class="userrow"><td class="usercell"><p class="bodytext"> Dual Watchdog Timer </p></td><td class="usercell"><p class="bodytext"> Present </p></td></tr> <tr class="userrow"><td class="usercell"><p class="bodytext"> VGA </p></td><td class="usercell"><p class="bodytext"> 800 × 600 </p></td></tr> <tr class="userrow"><td class="usercell"><p class="bodytext"> Ethernet ports </p></td><td class="usercell"><p class="bodytext"> RJ-45 x 2, 10/100 Base-TX Ethernet controller (Auto-negotiation, auto MDI/MDI-X, LED indicator) </p></td></tr> <tr class="userrow"><td class="usercell"><p class="bodytext"> USB 1.1 (хост) </p></td><td class="usercell"><p class="bodytext"> 1 </p></td></tr> <tr class="userrow"><td class="usercell"><p class="bodytext"> COM1 (/dev/ttySA0) </p></td><td class="usercell"><p class="bodytext"> RS-232 (RxD, TxD and GND); not isolated </p></td></tr> <tr class="userrow"><td class="usercell"><p class="bodytext"> COM2 (/dev/ttySA1) </p></td><td class="usercell"><p class="bodytext"> RS-485 (D2+,D2-); 2500 VDC; isolated </p></td></tr> <tr class="userrow"><td class="usercell"><p class="bodytext"> COM3 (/dev/ttySA3) </p></td><td class="usercell"><p class="bodytext"> RS-232 (RxD, TxD and GND); not isolated </p></td></tr> <tr class="userrow"><td class="usercell"><p class="bodytext"> Operating temperature </p></td><td class="usercell"><p class="bodytext"> -25 ~ +75 °C </p></td></tr> </tbody></table><p class="bodytext"> <a name="h1078-4"></a></p>
<h2>2. Software environment based on OpenSCADA.</h2>
<p id="p93132-10" class="align-justify auto indent10"> Software environment, based on the Linux operating system for ARM  controllers of ICP DAS usually includes: the Linux kernel 2.6.19, GLibC  2.2.5 and GCC 2.95. To build a third-party software the ICP DAS provides  an SDK with the cross-compiler, set of libraries and headers for them  (Linux toolchain). As you can see, the version of GCC and are very old,  namely it is the 2001 year. OpenSCADA building in this environment is  actually impossible. If the using of the GLibC of 2.2.5 version is still  possible, the GCC of version 2.95 has the C++ compiler, which crashes  during the building of the OpenSCADA code, and the standard C++ library  or STL is extremely limited and it requires the significant and  senseless adaptation. For this reason, it is necessary to update the  original software environment to version for at least 3 of GCC compiler  and C++ library.</p>
<p id="p93132-11" class="align-justify auto indent10"> Because internal flash memory has a relatively small capacity (64 MB),  and a full rebuild of the original software environment of the  controller - a very laborious process, it was decided to ensure the  compatibility of the basic libraries of old and new environments.  Namely, the ability to use libraries like fontconfig, i8k from the  source environment and the work of the source environment programs with  the new libraries.</p>
<p id="p93132-12" class="indent10 auto align-justify"> In the process of selecting a new software environment for the PXA-270  processor of the &quot;ICP DAS&quot; controller several options have been tried  because some of them had one or other disadvantages:</p><ul><li> <em><a href="http://kegel.com/crosstool" title="Внешняя ссылка (откроется в новом окне)" target="_blank" class="outerlink" ><img src="http://wiki.oscada.org/themes/default/icons/web.gif" />crosstool-0.43</a></em>  — interesting but outdated project (latest version is 2006 year) to  build a Linux cross environment for the necessary equipment. It was  postponed after several unsuccessful attempts to build a new environment  to work with &quot;Software FP&quot; and &quot;VFP&quot;. As it turned out subsequently for  the original environment object files the information about the  presence there &quot;Software FP&quot; and &quot;VFP&quot; is incorrectly displayed, when in  fact the operations with real numbers there are made through &quot;FPA&quot;.  Consequently, we may later return to this version. </li><li> <em><a href="http://pxa-linux.sourceforge.net/" title="Внешняя ссылка (откроется в новом окне)" target="_blank" class="outerlink" ><img src="http://wiki.oscada.org/themes/default/icons/web.gif" />PXA-Linux Project</a></em> — a project to create an independent set of Linux tools for building for the PXA processor. It has the binary building <a href="ftp://ftp.arm.linux.org.uk/pub/armlinux/people/xscale/mainstone/02-25-2005/bin/arm-linux-toolchain-bin-12-15-04-driscoll.tar.gz" target="_blank" class="outerlink" ><img src="http://wiki.oscada.org/themes/default/icons/file.gif" />02-25-2005/bin/arm-linux-toolchain-bin-12-15-04-driscoll.tar.gz</a>.  It turned out that this building was built with the &quot;Software FP&quot; and  &quot;VFP&quot;, and also has a problem in the form of disabling of set of  expansions for the gcc compiler, for example: __attribute__((packed)). </li><li> binary build of the cross compilation tools (<a href="http://voipac.com/downloads/pxa/toolchain/bin/arm-linux-gcc-3.4.1.tar.gz" target="_blank" class="outerlink" ><img src="http://wiki.oscada.org/themes/default/icons/file.gif" />arm-linux-gcc-3.4.1.tar.gz</a>)  from the firm &quot;Voipac&quot; for their own equipment on the PXA-270  processor. This set approached perfectly for all parameters and the  subsequent building was done using it.</li></ul><p id="p93132-13" class="indent10 auto align-justify"> The resulting environment of the controller with OpenSCADA was formed by  replacing the original environment core libraries on the libraries from  the &quot;Voipac&quot; set of tools, building of the OpenSCADA and placing the  OpenSCADA files to source environment tree.</p>
<p id="p93132-14" class="indent10 auto align-justify"> OpenSCADA was built with disabling of the number of libraries and  modules. So, it were build and tested the following modules and  functions of OpenSCADA:</p><ul><li> <em>OpenSCADA core</em> — built with  the LibGD2 library (the work is checked). In the process of checking  and adaptation the functions of storage the OpenSCADA configuration in  the configuration file are expanded. </li><li> <em>DB.SQLite</em> — SQLite DB (the work is checked). The  library and module of OpenSCADA to work with SQLite database are built.  During the check process the error of GLibC 2.3.2, related to the lack  of check on inter-locking of &quot;rw&quot;-resources is found and eliminated. </li><li> <em>DB.DBF</em> — DBF DB (the work is checked). Module to work with DBF-files of version 3. </li><li> <em>Transport.Sockets</em> — The module the the TCP, UDP and  Unix sockets' transport (the work is checked). In the process of  TCP-sockets using it was found and corrected the structure's of check  the socket's status not initialization. </li><li> <em>Transport.SSL</em> — Transport module of the secure socket layer: SSL, TLS (the work is checked). </li><li> <em>Transport.Serial</em> — Transport module of serial  interfaces (the work is checked). It was found that for some reason COM3  is located on the device /dev/ttySA3. </li><li> <em>Protocol.SelfSystem</em> — The module of the own OpenSCADA protocol (the work is checked). </li><li> <em>Protocol.HTTP</em> — The module of the HTTP protocol implementation (the work is checked). </li><li> <em>Protocol.ModBus</em> — The module of the ModBus protocol  implementation (the work is checked). The configuration of the station  as a data server through the ModBus protocol. </li><li> <em>Protocol.OPC_UA</em> — The module of the OPC UA protocol  implementation (the work is checked). The configuration of the station  as a data server through the OPC UA protocol . There was a problem of  difference of real number representation on x86 and ARM FPA! </li><li> <em>Protocol.UserProtocol</em> — The module of free  implementation by the user of simple protocols using the programming  language of OpenSCADA (the work is checked). </li><li> <em>DAQ.System</em> — The module of the operating system data (the work is checked). It is built without the LibSensors library using. </li><li> <em>DAQ.JavaLikeCalc</em> — The module of implementation of user Java-like language and calculations based on it (the work is checked). </li><li> <em>DAQ.BlockCalc</em> — The module of implementation of block computing (the work is checked). </li><li> <em>DAQ.LogicLev</em> — The module of implementation of the logic level data sources (the work is checked). </li><li> <em>DAQ.ModBus</em> — The module of working with data sources via the ModBus protocol (the work is checked). </li><li> <em>DAQ.DCON</em> — The module of working with data sources  via the DCON protocol (the work is checked). For example, with the  devices ICP_DAS I-7000. It was found and fixed the crash when receiving a  negative response size. The result of the answer is now always returned  &gt;=0. </li><li> <em>DAQ.ICP_DAS</em> — The module of the ICP_DAS data sources (<span class="cl-blue">there is no equipment to check</span>).  Serial series: I-87000 and I-7000; Parallel (quick): series I-8000. The  module is built with a library libi8k.a for ARM-architecture.<br /> </li><li> <em>DAQ.DAQGate</em> — The module of implementation of the locking of data sources from other OpenSCADA stations (the work is checked). </li><li> <em>DAQ.OPC_UA</em> — The module of working with data sources  via the OPC_UA protocol (the work is checked). There was a problem of  difference of real number representation on x86 and ARM FPA - the  conversion when transmitting is added! </li><li> <em>DAQ.Siemens</em> — The module of the working with the Siemens controllers via Industrial Ethernet (ISO_TCP) (the work is checked). </li><li> <em>DAQ.SNMP</em> — The data acquisition module of the network equipment via SNMP (the work is checked). </li><li> <em>Archive.DBArch</em> — The module of the database archiving (the work is checked). </li><li> <em>Archive.FSArch</em> — The module of the file system  archiving (the work is checked). There was a problem during the  verifying of the archive, giving the following message at startup:  &quot;Error archive file structure: &lt;ARCHIVES/VAL/1s/CPULoad_load  2011-09-12 17:47:17.val&gt;. Margin = -8 byte. Will try fix it!&quot;. As a  result, it was found that the algorithm of fast bits' counting is not  aligned to 4 bytes when reading the memory buffer - it is fixed. </li><li> <em>UI.WebCfg</em> — The Web configurator module of OpenSCADA (the work is checked). </li><li> <em>UI.WebCfgD</em> — The dynamic Web configurator module of OpenSCADA (the work is checked). </li><li> <em>UI.VCAEngine</em> — The visualization engine module (the work is checked). </li><li> <em>UI.WebVision</em> — The module of the user interfaces visualizer in the <em>UI.VCAEngine</em> by means of the Web-interface (the work is checked). </li><li> <em>UI.WebUser</em> — The module of free user's visualization by means of the Web-interface (the work is checked). </li><li> <em>Special.FLibComplex1</em> — The library of compatibility  functions with Complex1 (&quot;DIYA&quot; LTD) (the work is checked). It is used  for the block programming. </li><li> <em>Special.FLibMath</em> —The library of standard mathematical functions (the work is checked). </li><li> <em>Special.FLibSYS</em> — The library of system expansion functions of OpenSCADA (the work is checked).</li></ul><p id="p93132-15" class="indent10 auto align-justify"> For the purpose of convenient distribution and use of the resulting  OpenSCADA build for ARM-controllers of &quot;ICP DAS&quot; the parsing of the  firmwares format for these controllers and the formation of a new one,  including OpenSCADA were completed. The firmware of the &quot;ICP DAS&quot;  ARM-controllers is a binary file with a name like &quot;lp5x4x_1.1.bin&quot;.  Structurally, this file contains the kernel and root file system -  JFFS2. You can get their exact location by using the commands in the  original environment of the controller, for example, for LP-5141:<br /> </p><div class="code indent"><p class="bodytext"><span style="color: #000000"> $&nbsp;cat&nbsp;/proc/mtd<br />dev:&nbsp;&nbsp;&nbsp;&nbsp;size&nbsp;&nbsp;&nbsp;erasesize&nbsp;&nbsp;name<br />mtd0:&nbsp;00040000&nbsp;00020000&nbsp;&quot;Bootloader&quot;<br />mtd1:&nbsp;00040000&nbsp;00020000&nbsp;&quot;Bootloader&nbsp;Param&quot;<br />mtd2:&nbsp;00280000&nbsp;00080000&nbsp;&quot;Kernel&quot;<br />mtd3:&nbsp;03c80000&nbsp;00080000&nbsp;&quot;JFFS2&nbsp;Filesystem&quot;</span> </p></div><p id="p93132-16" class="indent10 auto align-justify"> From the obtained result of the command you can conclude that the  connection point of the image kernel and filesystem is placed at  0x280000 offset of the firmware file, and the size of the erase flash  block is 0x80000 (512kB). With this information we can extract the  firmware and make changes to the image of its file system:</p><div class="code indent"><p class="bodytext"><span style="color: #000000"> #&nbsp;Extracting&nbsp;the&nbsp;source&nbsp;images&nbsp;of&nbsp;the&nbsp;kernel&nbsp;and&nbsp;root&nbsp;file&nbsp;system<br />$&nbsp;dd&nbsp;if=lp5x4x_1.1.bin&nbsp;of=kernel_orig&nbsp;bs=1K&nbsp;count=2560<br />$&nbsp;dd&nbsp;if=lp5x4x_1.1.bin&nbsp;of=jffs2_orig&nbsp;bs=1K&nbsp;skip=2560<br /><br />#&nbsp;Connecting&nbsp;the&nbsp;the&nbsp;source&nbsp;image&nbsp;of&nbsp;the&nbsp;file&nbsp;system<br />$&nbsp;modprobe&nbsp;mtdram&nbsp;total_size=65536&nbsp;erase_size=512<br />$&nbsp;modprobe&nbsp;mtdblock<br />$&nbsp;dd&nbsp;if=root_orig.img&nbsp;of=/dev/mtdblock0<br />$&nbsp;mount&nbsp;-t&nbsp;jffs2&nbsp;/dev/mtdblock0&nbsp;/mnt/tmp<br />#&nbsp;Copy&nbsp;the&nbsp;changes&nbsp;and&nbsp;OpenSCADA&nbsp;files&nbsp;to&nbsp;the&nbsp;root&nbsp;file&nbsp;system&nbsp;of&nbsp;the&nbsp;controller<br />#&nbsp;Create&nbsp;a&nbsp;new&nbsp;file&nbsp;system&nbsp;with&nbsp;changes.<br />$&nbsp;mkfs.jffs2&nbsp;--root=/mnt/tmp&nbsp;--pad=$((61952*1024))&nbsp;--eraseblock=512&nbsp;--output=root.img<br />#&nbsp;Build&nbsp;the&nbsp;new&nbsp;firmware&nbsp;image<br />$&nbsp;cat&nbsp;kernel_orig.img&nbsp;root.img&nbsp;&gt;&nbsp;lp5x4x_oscada_1.0.bin</span> </p></div><p id="p93132-18" class="align-justify auto indent10"> Thus we get the new firmware with OpenSCADA in the file  lp5x4x_oscada_1.0.bin, which can be downloaded to the controller in the  standard way, described in the &quot;ICP DAS&quot; documentation.</p>
<h2>3. Remarks</h2>
<p id="p26359-19" class="indent10 auto align-justify"> As it turned out that the operations with real numbers are performed by  the FPA co-processor instructions (Float Point Acceleration), which is  not present in this processor, and calls of the commands themselves are  made through an imitation of an exception in the Linux kernel, then the  performance of mathematical calculations is extremely low, even compared  to the direct &quot;Software FP&quot;, &quot;VFP&quot;. For example, the calculation of a  single operation <strong>sin(pi)</strong> is about ~200 ms, compared to  ~20 ms for N800 with VFP and ~2 ms at x86, detailed in next table. So,  this controller shouldn't be considered as the platform for at least any  serious calculations! Moreover, the real numbers when working with FPA  are stored in a different way - namely, the special <em>big-endian</em>, which requires a transformation in the case of the binary external exchange to the typical <em>little-endian</em> representation, for example for DAQ.OPC_UA.</p><table rules="all" style="border-style: solid; border-width: 1px; border-color: rgb(0, 0, 0); border-collapse: collapse;" class="contenttable"> <thead><tr class="userrow"><th scope="col" class="usercell"><p class="bodytext"> <strong>Device</strong> </p></th><th scope="col" class="usercell"><p class="bodytext"> <strong>Operation sin(Pi) (in JavaLikeCalc), mcs</strong> </p></th><th scope="col" class="usercell"><p class="bodytext"> <strong>Operation pow(Pi,2) (in JavaLikeCalc), mcs</strong> </p></th></tr></thead><tbody> <tr class="userrow"><td class="usercell"><p class="bodytext"> ICP DAS LP-5141 </p></td><td class="usercell"><p class="bodytext"> 100 (200) </p></td><td class="usercell"><p class="bodytext"> 51 (152) </p></td></tr> <tr class="userrow"><td class="usercell"><p class="bodytext"> Nokia N800 </p></td><td class="usercell"><p class="bodytext"> 6 (15) </p></td><td class="usercell"><p class="bodytext"> 6 (17) </p></td></tr> <tr class="userrow"><td class="usercell"><p class="bodytext"> Nokia N950 </p></td><td class="usercell"><p class="bodytext"> 3 (6) </p></td><td class="usercell"><p class="bodytext"> 2 (6) </p></td></tr> <tr class="userrow"><td class="usercell"><p class="bodytext"> AMD Athlon X2 3600+ </p></td><td class="usercell"><p class="bodytext"> 3 (3) </p></td><td class="usercell"><p class="bodytext"> 3 (3) </p></td></tr> <tr class="userrow"><td class="usercell"><p class="bodytext"> AMD Turion L625 1.6 </p></td><td class="usercell"><p class="bodytext"> 3 (4) </p></td><td class="usercell"><p class="bodytext"> 3 (4) </p></td></tr> <tr class="userrow"><td class="usercell"><p class="bodytext"> Intel Core2 Duo 1.6 </p></td><td class="usercell"><p class="bodytext"> 2 (2) </p></td><td class="usercell"><p class="bodytext"> 2 (3) </p></td></tr> </tbody></table><p id="p26359-20" class="auto">&nbsp;</p>
<p id="p26359-20" class="align-justify auto indent10"> A significant difference in computing time on an ARM with a direct call  to the mathematical operations and from a virtual machine JavaLikeCalc  may be related to unaligned reading from the memory when reading the  instructions the virtual machine, with which it makes sense to find out  later and maybe somehow compensate.</p>
<p id="p26359-21" class="align-justify auto indent10"> In the initial configuration the COM1 port (/dev/ttySA0) is used as a  console, which is initialized by the kernel command  &quot;console=/dev/ttySA0&quot;. However, after adjustment this is not necessary  and is often desirable to release another one COM-port for other  purposes. It is possible to release COM1 from work for a console by  reassigning the other device for this role, for example by: <strong>$busybox setconsole /dev/tty1</strong>. However, this method does not fully release the COM-port and requests are lost, reading by the parallel connection.</p>
<h2>4. Conclusion</h2>
<p id="p93132-21" class="align-justify auto indent10"> The result was the building of OpenSCADA for Linux controllers of  ARM-architecture of &quot;ICP DAS&quot; company. The building can be loaded  directly on any Linux-ARM controller, unpacking it at the root of the  original operating system. In this case, however, the duplicates of the  old core libraries (/lib/*) will remain, which can be removed after a  successful restart.</p>
<p id="p93132-22" class="align-justify auto indent10"> For family of controllers LP-5x4x the firmware with the building  OpenSCADA was created, which can be downloaded in the standard for these  controllers way, which is described in the original &quot;ICP DAS&quot;  documentation. Firmware for LP-5x4x can possible fit for the LP-5x3x,  but it is not checked!</p>]]></content:encoded>
			<category>News</category>
			<category>Solution</category>
			
			<author>rom_as@oscada.org</author>
			<pubDate>Fri, 23 Sep 2011 09:26:00 +0300</pubDate>
			
		</item>
		
		<item>
			<title>On September, 16-18th 2011 in city Odessa (Ukraine) the conference of developers and users of the free software and exhibition of free software solutions on the Sea took place.</title>
			<link>http://www.oscada.org/en/news-storage/single-page/article//on-september-16-18th-2011-in-odessa-the-conference-of-developers-and-users-of-the-free-software-and//080bb4818e72822b3e23e2888c55bd99/</link>
			<description>The conference is organized by [Root@UA]Media, UAFOSS and Odessa National University. There was...</description>
			<content:encoded><![CDATA[<p class="indent10 align-justify">The exhibition was present the following OpenSCADA solutions:</p><ul style="margin: 0px; padding: 0px 0px 6px 60px; overflow: auto;"><li style="margin: 0px; padding: 0px; text-indent: 0px;"><span class="right-column inline-block" style="margin: 0px; padding: 0px;">Dynamic models of of technological processes and their control systems: Gas compressor station for six compressors, steam multifuel boiler unit BKZ-160.</span></li><li style="margin: 0px; padding: 0px; text-indent: 0px;"><span class="right-column inline-block" style="margin: 0px; padding: 0px;">The model and controller (ICP_DAS) of the ACS of ball mill for coal grinding for the boilers of thermal power station.</span></li><li style="margin: 0px; padding: 0px; text-indent: 0px;"><span class="right-column inline-block" style="margin: 0px; padding: 0px;">OpenSCADA on the mobile devices: Nokia N800, N950.</span></li><li style="margin: 0px; padding: 0px; text-indent: 0px;"><span class="right-column inline-block" style="margin: 0px; padding: 0px;">OpenSCADA on the industrial controllers: ICP_DAS LP-8781, LP-5141.</span></li></ul>]]></content:encoded>
			<category>News</category>
			<category>Report</category>
			<category>Publication</category>
			
			<author>rom_as@oscada.org</author>
			<pubDate>Mon, 19 Sep 2011 11:00:00 +0300</pubDate>
			
		</item>
		
		<item>
			<title>Developed the user's prescriptions-programms execution interface</title>
			<link>http://wiki.oscada.org/HomePageEn/Using/GraphicElementsLibraries/MainElements#h1039-63</link>
			<description>In project &quot;Vacuum unit control system&quot; developed interface for user's prescriptions-programs...</description>
			<content:encoded><![CDATA[]]></content:encoded>
			<category>News</category>
			
			<author>rom_as@oscada.org</author>
			<pubDate>Sat, 03 Sep 2011 17:55:00 +0300</pubDate>
			
		</item>
		
		<item>
			<title>Apartment house automation - &quot;Smart House&quot; (HouseSpirit)</title>
			<link>http://www.oscada.org/en/news-storage/single-page/article//apartment-house-automation-smart-house-housespirit//7e39d3c6733f125e928cc4eaeacf1f8c/</link>
			<description>Name: &quot;Smart House&quot; (HouseSpirit)
Start: 28 03(March) 2011
Finish: 12 06(June) 2011
Location:...</description>
			<content:encoded><![CDATA[<h2 style="margin-top: 20px; margin-right: 0px; margin-bottom: 5px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; font-family: Verdana; font-size: 20px; border-bottom-width: 3px; border-bottom-style: dotted; border-bottom-color: rgb(221, 221, 221); ">1. Automation object</h2>
<p id="p15644-9" style="font-family: Verdana; font-size: 13px; line-height: 1.3em; margin: 0px; padding: 0px; " class="indent10 auto align-justify">The area of the automation object - 300 m2. The air temperature in rooms intended for the server, sensors and actuators placement from 10 to 25 degrees Celsius. The air temperature outside the premises where the sensors and actuators are placed: from - 30 to 30 ° C.</p>
<p id="p15644-9" style="font-family: Verdana; font-size: 13px; line-height: 1.3em; margin: 0px; padding: 0px; " class="indent10 auto align-justify">The levels of pollution, humidity, light, noise and ionizing radiation correspond to sanitary and epidemiological requirements for residential buildings and premises (САНПИН 2.1.2.1002-00).</p>
<p id="p15644-9" style="font-family: Verdana; font-size: 13px; line-height: 1.3em; margin: 0px; padding: 0px; " class="indent10 auto align-justify">At the object there is electromagnetic radiation induced by the appliances, as well as by means of different equipment (Bluetooth, Wi-Fi, GSM).</p>
<p id="p15644-9" style="font-family: Verdana; font-size: 13px; line-height: 1.3em; margin: 0px; padding: 0px; " class="indent10 auto align-justify">The &quot;Smart house. Control Server&quot; system is a hardware-software module, which is the main control center of the automation object. The server receives and processes signals from various sensors, generates and transmits signals to control actuators, communicating with the user via GSM. Management of the system is made via the web interface.</p>
<p id="p15644-10" style="font-family: Verdana; font-size: 13px; line-height: 1.3em; margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; " class="indent10 auto align-justify">The &quot;Smart house. Control Server&quot; system includes the following subsystems:</p><ol style="margin-top: 0px; margin-bottom: 0px; padding-top: 0px; padding-bottom: 0px; " type="1"><li style="font-family: Verdana; font-size: 13px; line-height: 1.3em; ">Access control subsystem.</li><li style="font-family: Verdana; font-size: 13px; line-height: 1.3em; ">Lighting control subsystem.</li><li style="font-family: Verdana; font-size: 13px; line-height: 1.3em; ">Climate control subsystem.</li><li style="font-family: Verdana; font-size: 13px; line-height: 1.3em; ">Water network control subsystem.</li><li style="font-family: Verdana; font-size: 13px; line-height: 1.3em; ">Household and multimedia devices control subsystem.</li><li style="font-family: Verdana; font-size: 13px; line-height: 1.3em; ">Subsystem of the processing the information from the sensors.</li><li style="font-family: Verdana; font-size: 13px; line-height: 1.3em; ">Subsystem for the providing the interaction with the user through the Web-interface and via GSM.</li><li style="font-family: Verdana; font-size: 13px; line-height: 1.3em; ">Authorization subsystem.</li><li style="font-family: Verdana; font-size: 13px; line-height: 1.3em; ">The reporting subsystem.</li><li style="font-family: Verdana; font-size: 13px; line-height: 1.3em; ">Configuration subsystem provides mechanisms to add, remove or edit information in the used database for the 1-8 subsystems.</li></ol><p id="p15644-11" style="font-family: Verdana; font-size: 13px; line-height: 1.3em; margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; " class="indent10 auto align-justify">&nbsp;</p>
<p id="p15644-11" style="font-family: Verdana; font-size: 13px; line-height: 1.3em; margin: 0px; padding: 0px;" class="indent10 auto align-justify">The block diagram of the house automation system is shown in Figure 1.</p><div style="float: center; text-align: center; "><p class="bodytext"><img src="http://wiki.oscada.org/HomePageEn/Using/SmartHouse/files?get=struct_en.png" alt="Overall structure – png (194&amp;nbsp;Кб)" title="Overall structure – png (194&amp;nbsp;Кб)" style="border-top-width: 0px; border-right-width: 0px; border-bottom-width: 0px; border-left-width: 0px; vertical-align: middle; " height="698" width="838"><br />Fig. 1. The block diagram of the house automation system</p></div><p id="p15644-13" style="font-family: Verdana; font-size: 13px; line-height: 1.3em; margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; " class="indent10 auto align-justify">&nbsp;</p>
<p id="p15644-13" style="font-family: Verdana; font-size: 13px; line-height: 1.3em; margin: 0px; padding: 0px; " class="indent10 auto align-justify">To control the various hardware of the house it was designed the hub and built the wireless network<span class="Apple-converted-space">&nbsp;</span><span style="color: rgb(0, 51, 153); text-decoration: none; "><a href="http://en.wikipedia.org/wiki/Zigbee" target="_blank" class="outerlink" >ZigBee</a></span><span class="Apple-converted-space">&nbsp;</span>of the devices for the equipment control. Overall equipment control, as well as providing the Web-based user interface and other methods of notification are made by the dedicated server of house automation. The hub if the ZigBee network is connected to the server through the RS-232 and ModBus/RTU protocol. Alarms in the automatics' control area will be sent to the user via SMS-notifications through the connected GSM-modem.</p>
<p id="p15644-13" style="font-family: Verdana; font-size: 13px; line-height: 1.3em; margin: 0px; padding: 0px; " class="auto indent10">Wireless controller has the following specifications:</p><ul style="margin-top: 0px; margin-bottom: 0px; padding-top: 0px; padding-bottom: 0px; "><li style="font-family: Verdana; font-size: 13px; line-height: 1.3em; ">The presence of the ZigBee transceiver;</li><li style="font-family: Verdana; font-size: 13px; line-height: 1.3em; ">ZigBee protocol data rate of at least 200 kb/s;</li><li style="font-family: Verdana; font-size: 13px; line-height: 1.3em; ">Availability of USB or COM - port to connect to the server;</li><li style="font-family: Verdana; font-size: 13px; line-height: 1.3em; ">Power supply 220 V.</li></ul><p id="p15644-14" style="font-family: Verdana; font-size: 13px; line-height: 1.3em; margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; " class="auto indent10">&nbsp;</p>
<p id="p15644-14" style="font-family: Verdana; font-size: 13px; line-height: 1.3em; margin: 0px; padding: 0px;" class="auto indent10">GSM-module has the following specifications (Siemens TC65):</p><ul style="margin-top: 0px; margin-bottom: 0px; padding-top: 0px; padding-bottom: 0px; "><li style="font-family: Verdana; font-size: 13px; line-height: 1.3em; ">Support of GSM-900;</li><li style="font-family: Verdana; font-size: 13px; line-height: 1.3em; ">Availability of USB or COM - port to connect to the server;</li><li style="font-family: Verdana; font-size: 13px; line-height: 1.3em; ">Support of AT standard commands of the GSM 07.05 GSM 07.07;</li><li style="font-family: Verdana; font-size: 13px; line-height: 1.3em; ">Power supply 220 V.</li></ul><p id="p15644-15" style="font-family: Verdana; font-size: 13px; line-height: 1.3em; margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; " class="auto indent10">&nbsp;</p>
<p id="p15644-15" style="font-family: Verdana; font-size: 13px; line-height: 1.3em; margin: 0px; padding: 0px;" class="auto indent10">The hardware of the server:</p><ul style="margin-top: 0px; margin-bottom: 0px; padding-top: 0px; padding-bottom: 0px; "><li style="font-family: Verdana; font-size: 13px; line-height: 1.3em; ">processor of x86_32 or x86_64 architecture (not less than Intel Core2Duo);</li><li style="font-family: Verdana; font-size: 13px; line-height: 1.3em; ">2GB DDR3 RAM;</li><li style="font-family: Verdana; font-size: 13px; line-height: 1.3em; ">presence of at least three USB - ports.</li></ul><p id="p15644-16" style="font-family: Verdana; font-size: 13px; line-height: 1.3em; margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; " class="indent10 auto align-justify">&nbsp;</p>
<p id="p15644-16" style="font-family: Verdana; font-size: 13px; line-height: 1.3em; margin: 0px; padding: 0px;" class="indent10 auto align-justify">As a software environment, to serve the house automation functions — &quot;Smart House&quot; an open SCADA system<span class="Apple-converted-space">&nbsp;</span><span style="color: rgb(0, 51, 153); text-decoration: none; "><a href="../" title="Внешняя ссылка (откроется в новом окне)" target="_blank" class="outerlink" ><img src="http://wiki.oscada.org/themes/default/icons/web.gif" style="border-top-width: 0px; border-right-width: 0px; border-bottom-width: 0px; border-left-width: 0px; vertical-align: middle; " alt="">OpenSCADA</a></span><span class="Apple-converted-space">&nbsp;</span>is used, in the environment of which it is designed the Web-based user interface &quot;Smart House&quot;, and implemented the interrogation and control of devices via ZigBee concentrator.</p>
<h2 style="margin-top: 20px; margin-right: 0px; margin-bottom: 5px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; font-family: Verdana; font-size: 20px; border-bottom-width: 3px; border-bottom-style: dotted; border-bottom-color: rgb(221, 221, 221); ">2. Automation system</h2>
<p id="p15644-17" style="font-family: Verdana; font-size: 13px; line-height: 1.3em; margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; " class="indent10 auto align-justify">OpenSCADA system has several ways of forming visualization user interfaces, stating from integrated development tools of standard interfaces of controls the various areas of automation and ending by the low-level mechanisms of libraries and interfaces of graphic concepts.</p>
<p id="p15644-18" style="font-family: Verdana; font-size: 13px; line-height: 1.3em; margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; " class="auto indent10">The integrated interfaces of OpenSCADA are:</p><ul style="margin-top: 0px; margin-bottom: 0px; padding-top: 0px; padding-bottom: 0px; "><li style="font-family: Verdana; font-size: 13px; line-height: 1.3em; ">The &quot;<span style="color: rgb(0, 51, 153); text-decoration: none; "><a name=".homepageen.doc.vcaengine" href="http://wiki.oscada.org/HomePageEn/Doc/VCAEngine?v=agv" title="Home&amp;nbsp;Page&amp;nbsp;En&amp;nbsp;/&amp;nbsp;Doc&amp;nbsp;/&amp;nbsp;VCA&amp;nbsp;Engine">UI.VCAEngine</a></span>&quot; module — visualization engine to build a unified interfaces and presentations (final visualization) using different types of graphical interfaces, as well as with the ability to work as a server of visualization interface.</li><li style="font-family: Verdana; font-size: 13px; line-height: 1.3em; ">The &quot;<span style="color: rgb(0, 51, 153); text-decoration: none; "><a name=".homepageen.doc.vision" href="http://wiki.oscada.org/HomePageEn/Doc/Vision?v=n04" title="Home&amp;nbsp;Page&amp;nbsp;En&amp;nbsp;/&amp;nbsp;Doc&amp;nbsp;/&amp;nbsp;Vision">UI.Vision</a></span>&quot; module — &quot;UI.VCAEngine&quot; visualizer and the GUI development interface based on the<span class="Apple-converted-space">&nbsp;</span><span style="color: rgb(0, 51, 153); text-decoration: none; "><a href="http://en.wikipedia.org/wiki/Qt4" target="_blank" class="outerlink" >QT4</a></span><span class="Apple-converted-space">&nbsp;</span>library.</li><li style="font-family: Verdana; font-size: 13px; line-height: 1.3em; ">The &quot;<span style="color: rgb(0, 51, 153); text-decoration: none; "><a name=".homepageen.doc.webvision" href="http://wiki.oscada.org/HomePageEn/Doc/WebVision?v=h86" title="Home&amp;nbsp;Page&amp;nbsp;En&amp;nbsp;/&amp;nbsp;Doc&amp;nbsp;/&amp;nbsp;Web&amp;nbsp;Vision">UI.WebVision</a></span>&quot; module — &quot;UI.VCAEngine&quot; visualizer based on the Web-interfaces:<span class="Apple-converted-space">&nbsp;</span><span style="color: rgb(0, 51, 153); text-decoration: none; "><a href="http://en.wikipedia.org/wiki/XHTML" target="_blank" class="outerlink" >XHTML</a></span>,<span class="Apple-converted-space">&nbsp;</span><span style="color: rgb(0, 51, 153); text-decoration: none; "><a href="http://en.wikipedia.org/wiki/XML" target="_blank" class="outerlink" >XML</a></span>,<span class="Apple-converted-space">&nbsp;</span><span style="color: rgb(0, 51, 153); text-decoration: none; "><a href="http://en.wikipedia.org/wiki/CSS" target="_blank" class="outerlink" >CSS</a></span>,<span class="Apple-converted-space">&nbsp;</span><span style="color: rgb(0, 51, 153); text-decoration: none; "><a href="http://en.wikipedia.org/wiki/JavaScript" target="_blank" class="outerlink" >JavaScript</a></span>,<span class="Apple-converted-space">&nbsp;</span><span style="color: rgb(0, 51, 153); text-decoration: none; "><a href="http://en.wikipedia.org/wiki/Document_Object_Model" target="_blank" class="outerlink" >DOM</a></span><span class="Apple-converted-space">&nbsp;</span>and<span class="Apple-converted-space">&nbsp;</span><span style="color: rgb(0, 51, 153); text-decoration: none; "><a href="http://en.wikipedia.org/wiki/AJAX" target="_blank" class="outerlink" >AJAX</a></span>.</li></ul><p id="p15644-19" style="font-family: Verdana; font-size: 13px; line-height: 1.3em; margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; " class="indent10 auto align-justify">&nbsp;</p>
<p id="p15644-19" style="font-family: Verdana; font-size: 13px; line-height: 1.3em; margin: 0px; padding: 0px;" class="indent10 auto align-justify">The low-level mechanisms of constructing the user interfaces include any other graphics libraries, which have a rapid development tools of the user interface. The co-operation with OpenSCADA is produced as with data source and with the interface of the unified control of the equipment under different protocols.</p>
<p id="p15644-20" style="font-family: Verdana; font-size: 13px; line-height: 1.3em; margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; " class="indent10 auto align-justify">In order to provide the ability of user's Web-interfaces formation directly in the OpenSCADA, the module &quot;<span style="color: rgb(0, 51, 153); text-decoration: none; "><a name=".homepageen.doc.webuser" href="http://wiki.oscada.org/HomePageEn/Doc/WebUser?v=1d4g" title="Home&amp;nbsp;Page&amp;nbsp;En&amp;nbsp;/&amp;nbsp;Doc&amp;nbsp;/&amp;nbsp;Web&amp;nbsp;User">UI.WebUser</a></span>&quot; module is provided. Overall, the OpenSCADA contains all the basic functions of a typical Web-server, as follows:</p><ul style="margin-top: 0px; margin-bottom: 0px; padding-top: 0px; padding-bottom: 0px; "><li style="font-family: Verdana; font-size: 13px; line-height: 1.3em; ">Acception of the client connections over standard transport protocols:<span class="Apple-converted-space">&nbsp;</span><span style="color: rgb(0, 51, 153); text-decoration: none; "><a href="http://en.wikipedia.org/wiki/TCP" target="_blank" class="outerlink" >TCP</a></span>,<span class="Apple-converted-space">&nbsp;</span><span style="color: rgb(0, 51, 153); text-decoration: none; "><a href="http://en.wikipedia.org/wiki/UDP" target="_blank" class="outerlink" >UDP</a></span>,<span class="Apple-converted-space">&nbsp;</span><span style="color: rgb(0, 51, 153); text-decoration: none; "><a href="http://en.wikipedia.org/wiki/Unix_domain_socket" target="_blank" class="outerlink" >Unix</a></span>, as well as over the protected connections<span class="Apple-converted-space">&nbsp;</span><span style="color: rgb(0, 51, 153); text-decoration: none; "><a href="http://en.wikipedia.org/wiki/SSL" target="_blank" class="outerlink" >SSL</a></span><span class="Apple-converted-space">&nbsp;</span>и<span class="Apple-converted-space">&nbsp;</span><span style="color: rgb(0, 51, 153); text-decoration: none; "><a href="http://en.wikipedia.org/wiki/Transport_Layer_Security" target="_blank" class="outerlink" >TLS</a></span>.</li><li style="font-family: Verdana; font-size: 13px; line-height: 1.3em; ">Support of the basic<span class="Apple-converted-space">&nbsp;</span><span style="color: rgb(0, 51, 153); text-decoration: none; "><a href="http://en.wikipedia.org/wiki/HTTP" target="_blank" class="outerlink" >HTTP</a></span><span class="Apple-converted-space">&nbsp;</span>protocol functions: GET and POST.</li><li style="font-family: Verdana; font-size: 13px; line-height: 1.3em; ">Dynamic creation of user-generated content through an internal JavaScript (<span style="color: rgb(0, 51, 153); text-decoration: none; "><a name=".homepageen.doc.javalikecalc" href="http://wiki.oscada.org/HomePageEn/Doc/JavaLikeCalc?v=dfu" title="Home&amp;nbsp;Page&amp;nbsp;En&amp;nbsp;/&amp;nbsp;Doc&amp;nbsp;/&amp;nbsp;Java&amp;nbsp;Like&amp;nbsp;Calc">JavaLikeCalc</a></span>) language in the form of the flows with the contents: HTML, XHTML, XML, CSS, JavaScript languages, images of different formats, etc.</li></ul><p id="p15644-21" style="font-family: Verdana; font-size: 13px; line-height: 1.3em; margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; " class="indent10 auto align-justify">&nbsp;</p>
<p id="p15644-21" style="font-family: Verdana; font-size: 13px; line-height: 1.3em; margin: 0px; padding: 0px;" class="indent10 auto align-justify">Consequently, for the construction of any user control interface it is enough to have installed<span class="Apple-converted-space">&nbsp;</span><span style="color: rgb(0, 51, 153); text-decoration: none; "><a href="../" title="Внешняя ссылка (откроется в новом окне)" target="_blank" class="outerlink" ><img src="http://wiki.oscada.org/themes/default/icons/web.gif" style="border-top-width: 0px; border-right-width: 0px; border-bottom-width: 0px; border-left-width: 0px; vertical-align: middle; " alt="">OpenSCADA</a></span><span class="Apple-converted-space">&nbsp;</span>system with the following modules:<span class="Apple-converted-space">&nbsp;</span><span style="color: rgb(0, 51, 153); text-decoration: none; "><a name=".homepageen.doc.soskets" href="http://wiki.oscada.org/HomePageEn/Doc/Soskets?v=11ne" title="Home&amp;nbsp;Page&amp;nbsp;En&amp;nbsp;/&amp;nbsp;Doc&amp;nbsp;/&amp;nbsp;Soskets">Transport.Sockets</a></span>,<span style="color: rgb(0, 51, 153); text-decoration: none; "><a name=".homepageen.doc.ssl" href="http://wiki.oscada.org/HomePageEn/Doc/SSL?v=c6s" title="Home&amp;nbsp;Page&amp;nbsp;En&amp;nbsp;/&amp;nbsp;Doc&amp;nbsp;/&amp;nbsp;SSL">Transport.SSL</a></span>,<span class="Apple-converted-space">&nbsp;</span><span style="color: rgb(0, 51, 153); text-decoration: none; "><a name=".homepageen.doc.http" href="http://wiki.oscada.org/HomePageEn/Doc/HTTP?v=g7t" title="Home&amp;nbsp;Page&amp;nbsp;En&amp;nbsp;/&amp;nbsp;Doc&amp;nbsp;/&amp;nbsp;HTTP">Protocol.HTTP</a></span><span class="Apple-converted-space">&nbsp;</span>and<span class="Apple-converted-space">&nbsp;</span><span style="color: rgb(0, 51, 153); text-decoration: none; "><a href="http://wiki.oscada.org/HomePageEn/Doc/WebUser?v=1d4g" title="Home&nbsp;Page&nbsp;En&nbsp;/&nbsp;Doc&nbsp;/&nbsp;Web&nbsp;User" target="_blank" >UI.WebUser</a></span>.</p>
<h3 style="margin-top: 15px; margin-right: 0px; margin-bottom: 5px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; font-family: Verdana; font-size: 17px; border-bottom-width: 2px; border-bottom-style: dotted; border-bottom-color: rgb(221, 221, 221); ">2.1. The structure and location of files</h3>
<p id="p15644-22" style="font-family: Verdana; font-size: 13px; line-height: 1.3em; margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; " class="indent10 auto align-justify">In order to reduce the load on the fully dynamic formation of the user interface, as well as to facilitate the future expansion and modification of style the Web-interface was divided into static and dynamic parts.</p>
<p id="p15644-23" style="font-family: Verdana; font-size: 13px; line-height: 1.3em; margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; " class="indent10 auto align-justify">The static part consists of a set of template HTML-files with labels of the dynamics placement and resource files: CSS, JavaScript and images. In general, the static part is represented by files, which are described in the table below:</p><table class="usertable" style="border-top-width: 1px; border-right-width: 1px; border-bottom-width: 1px; border-left-width: 1px; border-top-style: none; border-right-style: none; border-bottom-style: none; border-left-style: none; border-color: initial; border-collapse: collapse; " border="1"><tbody><tr class="userrow"><td class="usercell" style="font-family: Verdana; font-size: 13px; line-height: 1.3em; border-top-width: 1px; border-right-width: 1px; border-bottom-width: 1px; border-left-width: 1px; border-top-color: black; border-right-color: black; border-bottom-color: black; border-left-color: black; border-top-style: solid; border-right-style: solid; border-bottom-style: solid; border-left-style: solid; padding-top: 4px; padding-right: 4px; padding-bottom: 4px; padding-left: 4px; vertical-align: top; "><p class="bodytext"><strong>File</strong></p></td><td class="usercell" style="font-family: Verdana; font-size: 13px; line-height: 1.3em; border-top-width: 1px; border-right-width: 1px; border-bottom-width: 1px; border-left-width: 1px; border-top-color: black; border-right-color: black; border-bottom-color: black; border-left-color: black; border-top-style: solid; border-right-style: solid; border-bottom-style: solid; border-left-style: solid; padding-top: 4px; padding-right: 4px; padding-bottom: 4px; padding-left: 4px; vertical-align: top; "><p class="bodytext"><strong>Description</strong></p></td></tr><tr class="userrow"><td class="usercell" colspan="2" style="font-family: Verdana; font-size: 13px; line-height: 1.3em; border-top-width: 1px; border-right-width: 1px; border-bottom-width: 1px; border-left-width: 1px; border-top-color: black; border-right-color: black; border-bottom-color: black; border-left-color: black; border-top-style: solid; border-right-style: solid; border-bottom-style: solid; border-left-style: solid; padding-top: 4px; padding-right: 4px; padding-bottom: 4px; padding-left: 4px; vertical-align: top; "><p class="bodytext"><em>HTML-templates (HouseSpirit/Web/*)</em></p></td></tr><tr class="userrow"><td class="usercell" style="font-family: Verdana; font-size: 13px; line-height: 1.3em; border-top-width: 1px; border-right-width: 1px; border-bottom-width: 1px; border-left-width: 1px; border-top-color: black; border-right-color: black; border-bottom-color: black; border-left-color: black; border-top-style: solid; border-right-style: solid; border-bottom-style: solid; border-left-style: solid; padding-top: 4px; padding-right: 4px; padding-bottom: 4px; padding-left: 4px; vertical-align: top; "><p class="bodytext">main.html</p></td><td class="usercell" style="font-family: Verdana; font-size: 13px; line-height: 1.3em; border-top-width: 1px; border-right-width: 1px; border-bottom-width: 1px; border-left-width: 1px; border-top-color: black; border-right-color: black; border-bottom-color: black; border-left-color: black; border-top-style: solid; border-right-style: solid; border-bottom-style: solid; border-left-style: solid; padding-top: 4px; padding-right: 4px; padding-bottom: 4px; padding-left: 4px; vertical-align: top; "><p class="bodytext">The main user interface template. Contains a general user interface with location tag of the pages' content &quot;#####CONTEXT#####&quot;.</p></td></tr><tr class="userrow"><td class="usercell" style="font-family: Verdana; font-size: 13px; line-height: 1.3em; border-top-width: 1px; border-right-width: 1px; border-bottom-width: 1px; border-left-width: 1px; border-top-color: black; border-right-color: black; border-bottom-color: black; border-left-color: black; border-top-style: solid; border-right-style: solid; border-bottom-style: solid; border-left-style: solid; padding-top: 4px; padding-right: 4px; padding-bottom: 4px; padding-left: 4px; vertical-align: top; "><p class="bodytext">auth.html</p></td><td class="usercell" style="font-family: Verdana; font-size: 13px; line-height: 1.3em; border-top-width: 1px; border-right-width: 1px; border-bottom-width: 1px; border-left-width: 1px; border-top-color: black; border-right-color: black; border-bottom-color: black; border-left-color: black; border-top-style: solid; border-right-style: solid; border-bottom-style: solid; border-left-style: solid; padding-top: 4px; padding-right: 4px; padding-bottom: 4px; padding-left: 4px; vertical-align: top; "><p class="bodytext">Template of the authorization interface with the tag of content's location &quot;#####CONTEXT#####&quot;. It is created for using by the HTTP protocol module (/sub_Protocol/mod_HTTP).</p></td></tr><tr class="userrow"><td class="usercell" style="font-family: Verdana; font-size: 13px; line-height: 1.3em; border-top-width: 1px; border-right-width: 1px; border-bottom-width: 1px; border-left-width: 1px; border-top-color: black; border-right-color: black; border-bottom-color: black; border-left-color: black; border-top-style: solid; border-right-style: solid; border-bottom-style: solid; border-left-style: solid; padding-top: 4px; padding-right: 4px; padding-bottom: 4px; padding-left: 4px; vertical-align: top; "><p class="bodytext">access.html</p></td><td class="usercell" style="font-family: Verdana; font-size: 13px; line-height: 1.3em; border-top-width: 1px; border-right-width: 1px; border-bottom-width: 1px; border-left-width: 1px; border-top-color: black; border-right-color: black; border-bottom-color: black; border-left-color: black; border-top-style: solid; border-right-style: solid; border-bottom-style: solid; border-left-style: solid; padding-top: 4px; padding-right: 4px; padding-bottom: 4px; padding-left: 4px; vertical-align: top; "><p class="bodytext">Access control template.</p></td></tr><tr class="userrow"><td class="usercell" style="font-family: Verdana; font-size: 13px; line-height: 1.3em; border-top-width: 1px; border-right-width: 1px; border-bottom-width: 1px; border-left-width: 1px; border-top-color: black; border-right-color: black; border-bottom-color: black; border-left-color: black; border-top-style: solid; border-right-style: solid; border-bottom-style: solid; border-left-style: solid; padding-top: 4px; padding-right: 4px; padding-bottom: 4px; padding-left: 4px; vertical-align: top; "><p class="bodytext">temperature.html</p></td><td class="usercell" style="font-family: Verdana; font-size: 13px; line-height: 1.3em; border-top-width: 1px; border-right-width: 1px; border-bottom-width: 1px; border-left-width: 1px; border-top-color: black; border-right-color: black; border-bottom-color: black; border-left-color: black; border-top-style: solid; border-right-style: solid; border-bottom-style: solid; border-left-style: solid; padding-top: 4px; padding-right: 4px; padding-bottom: 4px; padding-left: 4px; vertical-align: top; "><p class="bodytext">Climate control template.</p></td></tr><tr class="userrow"><td class="usercell" style="font-family: Verdana; font-size: 13px; line-height: 1.3em; border-top-width: 1px; border-right-width: 1px; border-bottom-width: 1px; border-left-width: 1px; border-top-color: black; border-right-color: black; border-bottom-color: black; border-left-color: black; border-top-style: solid; border-right-style: solid; border-bottom-style: solid; border-left-style: solid; padding-top: 4px; padding-right: 4px; padding-bottom: 4px; padding-left: 4px; vertical-align: top; "><p class="bodytext">light.html</p></td><td class="usercell" style="font-family: Verdana; font-size: 13px; line-height: 1.3em; border-top-width: 1px; border-right-width: 1px; border-bottom-width: 1px; border-left-width: 1px; border-top-color: black; border-right-color: black; border-bottom-color: black; border-left-color: black; border-top-style: solid; border-right-style: solid; border-bottom-style: solid; border-left-style: solid; padding-top: 4px; padding-right: 4px; padding-bottom: 4px; padding-left: 4px; vertical-align: top; "><p class="bodytext">Lighting control template.</p></td></tr><tr class="userrow"><td class="usercell" style="font-family: Verdana; font-size: 13px; line-height: 1.3em; border-top-width: 1px; border-right-width: 1px; border-bottom-width: 1px; border-left-width: 1px; border-top-color: black; border-right-color: black; border-bottom-color: black; border-left-color: black; border-top-style: solid; border-right-style: solid; border-bottom-style: solid; border-left-style: solid; padding-top: 4px; padding-right: 4px; padding-bottom: 4px; padding-left: 4px; vertical-align: top; "><p class="bodytext">water.html</p></td><td class="usercell" style="font-family: Verdana; font-size: 13px; line-height: 1.3em; border-top-width: 1px; border-right-width: 1px; border-bottom-width: 1px; border-left-width: 1px; border-top-color: black; border-right-color: black; border-bottom-color: black; border-left-color: black; border-top-style: solid; border-right-style: solid; border-bottom-style: solid; border-left-style: solid; padding-top: 4px; padding-right: 4px; padding-bottom: 4px; padding-left: 4px; vertical-align: top; "><p class="bodytext">Water supply subsystem control template.</p></td></tr><tr class="userrow"><td class="usercell" style="font-family: Verdana; font-size: 13px; line-height: 1.3em; border-top-width: 1px; border-right-width: 1px; border-bottom-width: 1px; border-left-width: 1px; border-top-color: black; border-right-color: black; border-bottom-color: black; border-left-color: black; border-top-style: solid; border-right-style: solid; border-bottom-style: solid; border-left-style: solid; padding-top: 4px; padding-right: 4px; padding-bottom: 4px; padding-left: 4px; vertical-align: top; "><p class="bodytext">tech.html</p></td><td class="usercell" style="font-family: Verdana; font-size: 13px; line-height: 1.3em; border-top-width: 1px; border-right-width: 1px; border-bottom-width: 1px; border-left-width: 1px; border-top-color: black; border-right-color: black; border-bottom-color: black; border-left-color: black; border-top-style: solid; border-right-style: solid; border-bottom-style: solid; border-left-style: solid; padding-top: 4px; padding-right: 4px; padding-bottom: 4px; padding-left: 4px; vertical-align: top; "><p class="bodytext">Electronic and household appliances control template.</p></td></tr><tr class="userrow"><td class="usercell" style="font-family: Verdana; font-size: 13px; line-height: 1.3em; border-top-width: 1px; border-right-width: 1px; border-bottom-width: 1px; border-left-width: 1px; border-top-color: black; border-right-color: black; border-bottom-color: black; border-left-color: black; border-top-style: solid; border-right-style: solid; border-bottom-style: solid; border-left-style: solid; padding-top: 4px; padding-right: 4px; padding-bottom: 4px; padding-left: 4px; vertical-align: top; "><p class="bodytext">friend.html</p></td><td class="usercell" style="font-family: Verdana; font-size: 13px; line-height: 1.3em; border-top-width: 1px; border-right-width: 1px; border-bottom-width: 1px; border-left-width: 1px; border-top-color: black; border-right-color: black; border-bottom-color: black; border-left-color: black; border-top-style: solid; border-right-style: solid; border-bottom-style: solid; border-left-style: solid; padding-top: 4px; padding-right: 4px; padding-bottom: 4px; padding-left: 4px; vertical-align: top; "><p class="bodytext">User devices control template.</p></td></tr><tr class="userrow"><td class="usercell" style="font-family: Verdana; font-size: 13px; line-height: 1.3em; border-top-width: 1px; border-right-width: 1px; border-bottom-width: 1px; border-left-width: 1px; border-top-color: black; border-right-color: black; border-bottom-color: black; border-left-color: black; border-top-style: solid; border-right-style: solid; border-bottom-style: solid; border-left-style: solid; padding-top: 4px; padding-right: 4px; padding-bottom: 4px; padding-left: 4px; vertical-align: top; "><p class="bodytext">user.html</p></td><td class="usercell" style="font-family: Verdana; font-size: 13px; line-height: 1.3em; border-top-width: 1px; border-right-width: 1px; border-bottom-width: 1px; border-left-width: 1px; border-top-color: black; border-right-color: black; border-bottom-color: black; border-left-color: black; border-top-style: solid; border-right-style: solid; border-bottom-style: solid; border-left-style: solid; padding-top: 4px; padding-right: 4px; padding-bottom: 4px; padding-left: 4px; vertical-align: top; "><p class="bodytext">Users manager template.</p></td></tr><tr class="userrow"><td class="usercell" style="font-family: Verdana; font-size: 13px; line-height: 1.3em; border-top-width: 1px; border-right-width: 1px; border-bottom-width: 1px; border-left-width: 1px; border-top-color: black; border-right-color: black; border-bottom-color: black; border-left-color: black; border-top-style: solid; border-right-style: solid; border-bottom-style: solid; border-left-style: solid; padding-top: 4px; padding-right: 4px; padding-bottom: 4px; padding-left: 4px; vertical-align: top; "><p class="bodytext">devices.html</p></td><td class="usercell" style="font-family: Verdana; font-size: 13px; line-height: 1.3em; border-top-width: 1px; border-right-width: 1px; border-bottom-width: 1px; border-left-width: 1px; border-top-color: black; border-right-color: black; border-bottom-color: black; border-left-color: black; border-top-style: solid; border-right-style: solid; border-bottom-style: solid; border-left-style: solid; padding-top: 4px; padding-right: 4px; padding-bottom: 4px; padding-left: 4px; vertical-align: top; "><p class="bodytext">Device manager template.</p></td></tr><tr class="userrow"><td class="usercell" style="font-family: Verdana; font-size: 13px; line-height: 1.3em; border-top-width: 1px; border-right-width: 1px; border-bottom-width: 1px; border-left-width: 1px; border-top-color: black; border-right-color: black; border-bottom-color: black; border-left-color: black; border-top-style: solid; border-right-style: solid; border-bottom-style: solid; border-left-style: solid; padding-top: 4px; padding-right: 4px; padding-bottom: 4px; padding-left: 4px; vertical-align: top; "><p class="bodytext">loginError.html</p></td><td class="usercell" style="font-family: Verdana; font-size: 13px; line-height: 1.3em; border-top-width: 1px; border-right-width: 1px; border-bottom-width: 1px; border-left-width: 1px; border-top-color: black; border-right-color: black; border-bottom-color: black; border-left-color: black; border-top-style: solid; border-right-style: solid; border-bottom-style: solid; border-left-style: solid; padding-top: 4px; padding-right: 4px; padding-bottom: 4px; padding-left: 4px; vertical-align: top; "><p class="bodytext">Page of authentication error messages, or lack of it.</p></td></tr><tr class="userrow"><td class="usercell" style="font-family: Verdana; font-size: 13px; line-height: 1.3em; border-top-width: 1px; border-right-width: 1px; border-bottom-width: 1px; border-left-width: 1px; border-top-color: black; border-right-color: black; border-bottom-color: black; border-left-color: black; border-top-style: solid; border-right-style: solid; border-bottom-style: solid; border-left-style: solid; padding-top: 4px; padding-right: 4px; padding-bottom: 4px; padding-left: 4px; vertical-align: top; "><p class="bodytext">mess.html</p></td><td class="usercell" style="font-family: Verdana; font-size: 13px; line-height: 1.3em; border-top-width: 1px; border-right-width: 1px; border-bottom-width: 1px; border-left-width: 1px; border-top-color: black; border-right-color: black; border-bottom-color: black; border-left-color: black; border-top-style: solid; border-right-style: solid; border-bottom-style: solid; border-left-style: solid; padding-top: 4px; padding-right: 4px; padding-bottom: 4px; padding-left: 4px; vertical-align: top; "><p class="bodytext">Active alarm messages template.</p></td></tr><tr class="userrow"><td class="usercell" style="font-family: Verdana; font-size: 13px; line-height: 1.3em; border-top-width: 1px; border-right-width: 1px; border-bottom-width: 1px; border-left-width: 1px; border-top-color: black; border-right-color: black; border-bottom-color: black; border-left-color: black; border-top-style: solid; border-right-style: solid; border-bottom-style: solid; border-left-style: solid; padding-top: 4px; padding-right: 4px; padding-bottom: 4px; padding-left: 4px; vertical-align: top; "><p class="bodytext">report.html</p></td><td class="usercell" style="font-family: Verdana; font-size: 13px; line-height: 1.3em; border-top-width: 1px; border-right-width: 1px; border-bottom-width: 1px; border-left-width: 1px; border-top-color: black; border-right-color: black; border-bottom-color: black; border-left-color: black; border-top-style: solid; border-right-style: solid; border-bottom-style: solid; border-left-style: solid; padding-top: 4px; padding-right: 4px; padding-bottom: 4px; padding-left: 4px; vertical-align: top; "><p class="bodytext">Template for alarms', actions and system messages reports formation.</p></td></tr><tr class="userrow"><td class="usercell" style="font-family: Verdana; font-size: 13px; line-height: 1.3em; border-top-width: 1px; border-right-width: 1px; border-bottom-width: 1px; border-left-width: 1px; border-top-color: black; border-right-color: black; border-bottom-color: black; border-left-color: black; border-top-style: solid; border-right-style: solid; border-bottom-style: solid; border-left-style: solid; padding-top: 4px; padding-right: 4px; padding-bottom: 4px; padding-left: 4px; vertical-align: top; "><p class="bodytext">welcome.html</p></td><td class="usercell" style="font-family: Verdana; font-size: 13px; line-height: 1.3em; border-top-width: 1px; border-right-width: 1px; border-bottom-width: 1px; border-left-width: 1px; border-top-color: black; border-right-color: black; border-bottom-color: black; border-left-color: black; border-top-style: solid; border-right-style: solid; border-bottom-style: solid; border-left-style: solid; padding-top: 4px; padding-right: 4px; padding-bottom: 4px; padding-left: 4px; vertical-align: top; "><p class="bodytext">The welcome page displayed by default in the content field.</p></td></tr><tr class="userrow"><td class="usercell" colspan="2" style="font-family: Verdana; font-size: 13px; line-height: 1.3em; border-top-width: 1px; border-right-width: 1px; border-bottom-width: 1px; border-left-width: 1px; border-top-color: black; border-right-color: black; border-bottom-color: black; border-left-color: black; border-top-style: solid; border-right-style: solid; border-bottom-style: solid; border-left-style: solid; padding-top: 4px; padding-right: 4px; padding-bottom: 4px; padding-left: 4px; vertical-align: top; "><p class="bodytext"><em>Resources (HouseSpirit/Web/res/*)</em></p></td></tr><tr class="userrow"><td class="usercell" style="font-family: Verdana; font-size: 13px; line-height: 1.3em; border-top-width: 1px; border-right-width: 1px; border-bottom-width: 1px; border-left-width: 1px; border-top-color: black; border-right-color: black; border-bottom-color: black; border-left-color: black; border-top-style: solid; border-right-style: solid; border-bottom-style: solid; border-left-style: solid; padding-top: 4px; padding-right: 4px; padding-bottom: 4px; padding-left: 4px; vertical-align: top; "><p class="bodytext">stylesheet.css</p></td><td class="usercell" style="font-family: Verdana; font-size: 13px; line-height: 1.3em; border-top-width: 1px; border-right-width: 1px; border-bottom-width: 1px; border-left-width: 1px; border-top-color: black; border-right-color: black; border-bottom-color: black; border-left-color: black; border-top-style: solid; border-right-style: solid; border-bottom-style: solid; border-left-style: solid; padding-top: 4px; padding-right: 4px; padding-bottom: 4px; padding-left: 4px; vertical-align: top; "><p class="bodytext">Cascading Style Sheets of the user interface.</p></td></tr><tr class="userrow"><td class="usercell" style="font-family: Verdana; font-size: 13px; line-height: 1.3em; border-top-width: 1px; border-right-width: 1px; border-bottom-width: 1px; border-left-width: 1px; border-top-color: black; border-right-color: black; border-bottom-color: black; border-left-color: black; border-top-style: solid; border-right-style: solid; border-bottom-style: solid; border-left-style: solid; padding-top: 4px; padding-right: 4px; padding-bottom: 4px; padding-left: 4px; vertical-align: top; "><p class="bodytext">main.js</p></td><td class="usercell" style="font-family: Verdana; font-size: 13px; line-height: 1.3em; border-top-width: 1px; border-right-width: 1px; border-bottom-width: 1px; border-left-width: 1px; border-top-color: black; border-right-color: black; border-bottom-color: black; border-left-color: black; border-top-style: solid; border-right-style: solid; border-bottom-style: solid; border-left-style: solid; padding-top: 4px; padding-right: 4px; padding-bottom: 4px; padding-left: 4px; vertical-align: top; "><p class="bodytext">JavaScript code of the main template for the time counter and session.</p></td></tr><tr class="userrow"><td class="usercell" style="font-family: Verdana; font-size: 13px; line-height: 1.3em; border-top-width: 1px; border-right-width: 1px; border-bottom-width: 1px; border-left-width: 1px; border-top-color: black; border-right-color: black; border-bottom-color: black; border-left-color: black; border-top-style: solid; border-right-style: solid; border-bottom-style: solid; border-left-style: solid; padding-top: 4px; padding-right: 4px; padding-bottom: 4px; padding-left: 4px; vertical-align: top; "><p class="bodytext">devMon.js</p></td><td class="usercell" style="font-family: Verdana; font-size: 13px; line-height: 1.3em; border-top-width: 1px; border-right-width: 1px; border-bottom-width: 1px; border-left-width: 1px; border-top-color: black; border-right-color: black; border-bottom-color: black; border-left-color: black; border-top-style: solid; border-right-style: solid; border-bottom-style: solid; border-left-style: solid; padding-top: 4px; padding-right: 4px; padding-bottom: 4px; padding-left: 4px; vertical-align: top; "><p class="bodytext">JavaScript code that implements a dynamic AJAX interface for the monitoring of subsystems' device.</p></td></tr><tr class="userrow"><td class="usercell" style="font-family: Verdana; font-size: 13px; line-height: 1.3em; border-top-width: 1px; border-right-width: 1px; border-bottom-width: 1px; border-left-width: 1px; border-top-color: black; border-right-color: black; border-bottom-color: black; border-left-color: black; border-top-style: solid; border-right-style: solid; border-bottom-style: solid; border-left-style: solid; padding-top: 4px; padding-right: 4px; padding-bottom: 4px; padding-left: 4px; vertical-align: top; "><p class="bodytext">access.png, accesson.png</p></td><td class="usercell" style="font-family: Verdana; font-size: 13px; line-height: 1.3em; border-top-width: 1px; border-right-width: 1px; border-bottom-width: 1px; border-left-width: 1px; border-top-color: black; border-right-color: black; border-bottom-color: black; border-left-color: black; border-top-style: solid; border-right-style: solid; border-bottom-style: solid; border-left-style: solid; padding-top: 4px; padding-right: 4px; padding-bottom: 4px; padding-left: 4px; vertical-align: top; "><p class="bodytext">Images of the access control subsystem.</p></td></tr><tr class="userrow"><td class="usercell" style="font-family: Verdana; font-size: 13px; line-height: 1.3em; border-top-width: 1px; border-right-width: 1px; border-bottom-width: 1px; border-left-width: 1px; border-top-color: black; border-right-color: black; border-bottom-color: black; border-left-color: black; border-top-style: solid; border-right-style: solid; border-bottom-style: solid; border-left-style: solid; padding-top: 4px; padding-right: 4px; padding-bottom: 4px; padding-left: 4px; vertical-align: top; "><p class="bodytext">temperature.png, temperatureon.png</p></td><td class="usercell" style="font-family: Verdana; font-size: 13px; line-height: 1.3em; border-top-width: 1px; border-right-width: 1px; border-bottom-width: 1px; border-left-width: 1px; border-top-color: black; border-right-color: black; border-bottom-color: black; border-left-color: black; border-top-style: solid; border-right-style: solid; border-bottom-style: solid; border-left-style: solid; padding-top: 4px; padding-right: 4px; padding-bottom: 4px; padding-left: 4px; vertical-align: top; "><p class="bodytext">Images of the climate control subsystem.</p></td></tr><tr class="userrow"><td class="usercell" style="font-family: Verdana; font-size: 13px; line-height: 1.3em; border-top-width: 1px; border-right-width: 1px; border-bottom-width: 1px; border-left-width: 1px; border-top-color: black; border-right-color: black; border-bottom-color: black; border-left-color: black; border-top-style: solid; border-right-style: solid; border-bottom-style: solid; border-left-style: solid; padding-top: 4px; padding-right: 4px; padding-bottom: 4px; padding-left: 4px; vertical-align: top; "><p class="bodytext">light.png, lighton.png</p></td><td class="usercell" style="font-family: Verdana; font-size: 13px; line-height: 1.3em; border-top-width: 1px; border-right-width: 1px; border-bottom-width: 1px; border-left-width: 1px; border-top-color: black; border-right-color: black; border-bottom-color: black; border-left-color: black; border-top-style: solid; border-right-style: solid; border-bottom-style: solid; border-left-style: solid; padding-top: 4px; padding-right: 4px; padding-bottom: 4px; padding-left: 4px; vertical-align: top; "><p class="bodytext">Images of the lightning control subsystem.</p></td></tr><tr class="userrow"><td class="usercell" style="font-family: Verdana; font-size: 13px; line-height: 1.3em; border-top-width: 1px; border-right-width: 1px; border-bottom-width: 1px; border-left-width: 1px; border-top-color: black; border-right-color: black; border-bottom-color: black; border-left-color: black; border-top-style: solid; border-right-style: solid; border-bottom-style: solid; border-left-style: solid; padding-top: 4px; padding-right: 4px; padding-bottom: 4px; padding-left: 4px; vertical-align: top; "><p class="bodytext">water.png, wateron.png</p></td><td class="usercell" style="font-family: Verdana; font-size: 13px; line-height: 1.3em; border-top-width: 1px; border-right-width: 1px; border-bottom-width: 1px; border-left-width: 1px; border-top-color: black; border-right-color: black; border-bottom-color: black; border-left-color: black; border-top-style: solid; border-right-style: solid; border-bottom-style: solid; border-left-style: solid; padding-top: 4px; padding-right: 4px; padding-bottom: 4px; padding-left: 4px; vertical-align: top; "><p class="bodytext">Images of the water supply control subsystem.</p></td></tr><tr class="userrow"><td class="usercell" style="font-family: Verdana; font-size: 13px; line-height: 1.3em; border-top-width: 1px; border-right-width: 1px; border-bottom-width: 1px; border-left-width: 1px; border-top-color: black; border-right-color: black; border-bottom-color: black; border-left-color: black; border-top-style: solid; border-right-style: solid; border-bottom-style: solid; border-left-style: solid; padding-top: 4px; padding-right: 4px; padding-bottom: 4px; padding-left: 4px; vertical-align: top; "><p class="bodytext">tech.png, techon.png</p></td><td class="usercell" style="font-family: Verdana; font-size: 13px; line-height: 1.3em; border-top-width: 1px; border-right-width: 1px; border-bottom-width: 1px; border-left-width: 1px; border-top-color: black; border-right-color: black; border-bottom-color: black; border-left-color: black; border-top-style: solid; border-right-style: solid; border-bottom-style: solid; border-left-style: solid; padding-top: 4px; padding-right: 4px; padding-bottom: 4px; padding-left: 4px; vertical-align: top; "><p class="bodytext">Images of the electronic appliances control subsystem.</p></td></tr><tr class="userrow"><td class="usercell" style="font-family: Verdana; font-size: 13px; line-height: 1.3em; border-top-width: 1px; border-right-width: 1px; border-bottom-width: 1px; border-left-width: 1px; border-top-color: black; border-right-color: black; border-bottom-color: black; border-left-color: black; border-top-style: solid; border-right-style: solid; border-bottom-style: solid; border-left-style: solid; padding-top: 4px; padding-right: 4px; padding-bottom: 4px; padding-left: 4px; vertical-align: top; "><p class="bodytext">friend.png, friendon.png</p></td><td class="usercell" style="font-family: Verdana; font-size: 13px; line-height: 1.3em; border-top-width: 1px; border-right-width: 1px; border-bottom-width: 1px; border-left-width: 1px; border-top-color: black; border-right-color: black; border-bottom-color: black; border-left-color: black; border-top-style: solid; border-right-style: solid; border-bottom-style: solid; border-left-style: solid; padding-top: 4px; padding-right: 4px; padding-bottom: 4px; padding-left: 4px; vertical-align: top; "><p class="bodytext">Images of the user's devices control subsystem.</p></td></tr><tr class="userrow"><td class="usercell" style="font-family: Verdana; font-size: 13px; line-height: 1.3em; border-top-width: 1px; border-right-width: 1px; border-bottom-width: 1px; border-left-width: 1px; border-top-color: black; border-right-color: black; border-bottom-color: black; border-left-color: black; border-top-style: solid; border-right-style: solid; border-bottom-style: solid; border-left-style: solid; padding-top: 4px; padding-right: 4px; padding-bottom: 4px; padding-left: 4px; vertical-align: top; "><p class="bodytext">user.png, useron.png</p></td><td class="usercell" style="font-family: Verdana; font-size: 13px; line-height: 1.3em; border-top-width: 1px; border-right-width: 1px; border-bottom-width: 1px; border-left-width: 1px; border-top-color: black; border-right-color: black; border-bottom-color: black; border-left-color: black; border-top-style: solid; border-right-style: solid; border-bottom-style: solid; border-left-style: solid; padding-top: 4px; padding-right: 4px; padding-bottom: 4px; padding-left: 4px; vertical-align: top; "><p class="bodytext">Images of the users' Manager.</p></td></tr><tr class="userrow"><td class="usercell" style="font-family: Verdana; font-size: 13px; line-height: 1.3em; border-top-width: 1px; border-right-width: 1px; border-bottom-width: 1px; border-left-width: 1px; border-top-color: black; border-right-color: black; border-bottom-color: black; border-left-color: black; border-top-style: solid; border-right-style: solid; border-bottom-style: solid; border-left-style: solid; padding-top: 4px; padding-right: 4px; padding-bottom: 4px; padding-left: 4px; vertical-align: top; "><p class="bodytext">devices.png, deviceson.png</p></td><td class="usercell" style="font-family: Verdana; font-size: 13px; line-height: 1.3em; border-top-width: 1px; border-right-width: 1px; border-bottom-width: 1px; border-left-width: 1px; border-top-color: black; border-right-color: black; border-bottom-color: black; border-left-color: black; border-top-style: solid; border-right-style: solid; border-bottom-style: solid; border-left-style: solid; padding-top: 4px; padding-right: 4px; padding-bottom: 4px; padding-left: 4px; vertical-align: top; "><p class="bodytext">Images of the devices' manager.</p></td></tr><tr class="userrow"><td class="usercell" style="font-family: Verdana; font-size: 13px; line-height: 1.3em; border-top-width: 1px; border-right-width: 1px; border-bottom-width: 1px; border-left-width: 1px; border-top-color: black; border-right-color: black; border-bottom-color: black; border-left-color: black; border-top-style: solid; border-right-style: solid; border-bottom-style: solid; border-left-style: solid; padding-top: 4px; padding-right: 4px; padding-bottom: 4px; padding-left: 4px; vertical-align: top; "><p class="bodytext">report.png, reporton.png</p></td><td class="usercell" style="font-family: Verdana; font-size: 13px; line-height: 1.3em; border-top-width: 1px; border-right-width: 1px; border-bottom-width: 1px; border-left-width: 1px; border-top-color: black; border-right-color: black; border-bottom-color: black; border-left-color: black; border-top-style: solid; border-right-style: solid; border-bottom-style: solid; border-left-style: solid; padding-top: 4px; padding-right: 4px; padding-bottom: 4px; padding-left: 4px; vertical-align: top; "><p class="bodytext">Images of the alarms, actions and system messages reports formation.</p></td></tr><tr class="userrow"><td class="usercell" style="font-family: Verdana; font-size: 13px; line-height: 1.3em; border-top-width: 1px; border-right-width: 1px; border-bottom-width: 1px; border-left-width: 1px; border-top-color: black; border-right-color: black; border-bottom-color: black; border-left-color: black; border-top-style: solid; border-right-style: solid; border-bottom-style: solid; border-left-style: solid; padding-top: 4px; padding-right: 4px; padding-bottom: 4px; padding-left: 4px; vertical-align: top; "><p class="bodytext">help.png, helpon.png</p></td><td class="usercell" style="font-family: Verdana; font-size: 13px; line-height: 1.3em; border-top-width: 1px; border-right-width: 1px; border-bottom-width: 1px; border-left-width: 1px; border-top-color: black; border-right-color: black; border-bottom-color: black; border-left-color: black; border-top-style: solid; border-right-style: solid; border-bottom-style: solid; border-left-style: solid; padding-top: 4px; padding-right: 4px; padding-bottom: 4px; padding-left: 4px; vertical-align: top; "><p class="bodytext">Images of the help page.</p></td></tr><tr class="userrow"><td class="usercell" style="font-family: Verdana; font-size: 13px; line-height: 1.3em; border-top-width: 1px; border-right-width: 1px; border-bottom-width: 1px; border-left-width: 1px; border-top-color: black; border-right-color: black; border-bottom-color: black; border-left-color: black; border-top-style: solid; border-right-style: solid; border-bottom-style: solid; border-left-style: solid; padding-top: 4px; padding-right: 4px; padding-bottom: 4px; padding-left: 4px; vertical-align: top; "><p class="bodytext">HouseSpirit.ico</p></td><td class="usercell" style="font-family: Verdana; font-size: 13px; line-height: 1.3em; border-top-width: 1px; border-right-width: 1px; border-bottom-width: 1px; border-left-width: 1px; border-top-color: black; border-right-color: black; border-bottom-color: black; border-left-color: black; border-top-style: solid; border-right-style: solid; border-bottom-style: solid; border-left-style: solid; padding-top: 4px; padding-right: 4px; padding-bottom: 4px; padding-left: 4px; vertical-align: top; "><p class="bodytext">Icon of the Web-based interface.</p></td></tr><tr class="userrow"><td class="usercell" style="font-family: Verdana; font-size: 13px; line-height: 1.3em; border-top-width: 1px; border-right-width: 1px; border-bottom-width: 1px; border-left-width: 1px; border-top-color: black; border-right-color: black; border-bottom-color: black; border-left-color: black; border-top-style: solid; border-right-style: solid; border-bottom-style: solid; border-left-style: solid; padding-top: 4px; padding-right: 4px; padding-bottom: 4px; padding-left: 4px; vertical-align: top; "><p class="bodytext">hd_l.png, hd_r.png</p></td><td class="usercell" style="font-family: Verdana; font-size: 13px; line-height: 1.3em; border-top-width: 1px; border-right-width: 1px; border-bottom-width: 1px; border-left-width: 1px; border-top-color: black; border-right-color: black; border-bottom-color: black; border-left-color: black; border-top-style: solid; border-right-style: solid; border-bottom-style: solid; border-left-style: solid; padding-top: 4px; padding-right: 4px; padding-bottom: 4px; padding-left: 4px; vertical-align: top; "><p class="bodytext">The left and right parts of the header.</p></td></tr><tr class="userrow"><td class="usercell" style="font-family: Verdana; font-size: 13px; line-height: 1.3em; border-top-width: 1px; border-right-width: 1px; border-bottom-width: 1px; border-left-width: 1px; border-top-color: black; border-right-color: black; border-bottom-color: black; border-left-color: black; border-top-style: solid; border-right-style: solid; border-bottom-style: solid; border-left-style: solid; padding-top: 4px; padding-right: 4px; padding-bottom: 4px; padding-left: 4px; vertical-align: top; "><p class="bodytext">select_l.png, select_r.png</p></td><td class="usercell" style="font-family: Verdana; font-size: 13px; line-height: 1.3em; border-top-width: 1px; border-right-width: 1px; border-bottom-width: 1px; border-left-width: 1px; border-top-color: black; border-right-color: black; border-bottom-color: black; border-left-color: black; border-top-style: solid; border-right-style: solid; border-bottom-style: solid; border-left-style: solid; padding-top: 4px; padding-right: 4px; padding-bottom: 4px; padding-left: 4px; vertical-align: top; "><p class="bodytext">Background images of the selected menu item on the left and right</p></td></tr><tr class="userrow"><td class="usercell" style="font-family: Verdana; font-size: 13px; line-height: 1.3em; border-top-width: 1px; border-right-width: 1px; border-bottom-width: 1px; border-left-width: 1px; border-top-color: black; border-right-color: black; border-bottom-color: black; border-left-color: black; border-top-style: solid; border-right-style: solid; border-bottom-style: solid; border-left-style: solid; padding-top: 4px; padding-right: 4px; padding-bottom: 4px; padding-left: 4px; vertical-align: top; "><p class="bodytext">space_l.png, space_r.png</p></td><td class="usercell" style="font-family: Verdana; font-size: 13px; line-height: 1.3em; border-top-width: 1px; border-right-width: 1px; border-bottom-width: 1px; border-left-width: 1px; border-top-color: black; border-right-color: black; border-bottom-color: black; border-left-color: black; border-top-style: solid; border-right-style: solid; border-bottom-style: solid; border-left-style: solid; padding-top: 4px; padding-right: 4px; padding-bottom: 4px; padding-left: 4px; vertical-align: top; "><p class="bodytext">Images of the free menu item on the left and right.</p></td></tr><tr class="userrow"><td class="usercell" style="font-family: Verdana; font-size: 13px; line-height: 1.3em; border-top-width: 1px; border-right-width: 1px; border-bottom-width: 1px; border-left-width: 1px; border-top-color: black; border-right-color: black; border-bottom-color: black; border-left-color: black; border-top-style: solid; border-right-style: solid; border-bottom-style: solid; border-left-style: solid; padding-top: 4px; padding-right: 4px; padding-bottom: 4px; padding-left: 4px; vertical-align: top; "><p class="bodytext">status_l.png, status_r.png status_edge.png</p></td><td class="usercell" style="font-family: Verdana; font-size: 13px; line-height: 1.3em; border-top-width: 1px; border-right-width: 1px; border-bottom-width: 1px; border-left-width: 1px; border-top-color: black; border-right-color: black; border-bottom-color: black; border-left-color: black; border-top-style: solid; border-right-style: solid; border-bottom-style: solid; border-left-style: solid; padding-top: 4px; padding-right: 4px; padding-bottom: 4px; padding-left: 4px; vertical-align: top; "><p class="bodytext">Images of the status bar.</p></td></tr><tr class="userrow"><td class="usercell" colspan="2" style="font-family: Verdana; font-size: 13px; line-height: 1.3em; border-top-width: 1px; border-right-width: 1px; border-bottom-width: 1px; border-left-width: 1px; border-top-color: black; border-right-color: black; border-bottom-color: black; border-left-color: black; border-top-style: solid; border-right-style: solid; border-bottom-style: solid; border-left-style: solid; padding-top: 4px; padding-right: 4px; padding-bottom: 4px; padding-left: 4px; vertical-align: top; "><p class="bodytext"><em>Report files (HouseSpirit/Web/reports/*)</em></p></td></tr><tr class="userrow"><td class="usercell" style="font-family: Verdana; font-size: 13px; line-height: 1.3em; border-top-width: 1px; border-right-width: 1px; border-bottom-width: 1px; border-left-width: 1px; border-top-color: black; border-right-color: black; border-bottom-color: black; border-left-color: black; border-top-style: solid; border-right-style: solid; border-bottom-style: solid; border-left-style: solid; padding-top: 4px; padding-right: 4px; padding-bottom: 4px; padding-left: 4px; vertical-align: top; "><p class="bodytext">rep_{user}.html</p></td><td class="usercell" style="font-family: Verdana; font-size: 13px; line-height: 1.3em; border-top-width: 1px; border-right-width: 1px; border-bottom-width: 1px; border-left-width: 1px; border-top-color: black; border-right-color: black; border-bottom-color: black; border-left-color: black; border-top-style: solid; border-right-style: solid; border-bottom-style: solid; border-left-style: solid; padding-top: 4px; padding-right: 4px; padding-bottom: 4px; padding-left: 4px; vertical-align: top; "><p class="bodytext">The latest report of the &quot;user&quot; user.</p></td></tr></tbody></table><p id="p15644-24" style="font-family: Verdana; font-size: 13px; line-height: 1.3em; margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; " class="auto">&nbsp;</p>
<p id="p15644-24" style="font-family: Verdana; font-size: 13px; line-height: 1.3em; margin: 0px; padding: 0px; " class="indent10 auto align-justify">The dynamic part is implemented by the scripts in the internal language of OpenSCADA - JavaLikeCalc, which are described in the table below:</p><table class="usertable" style="border-top-width: 1px; border-right-width: 1px; border-bottom-width: 1px; border-left-width: 1px; border-top-style: none; border-right-style: none; border-bottom-style: none; border-left-style: none; border-color: initial; border-collapse: collapse; " border="1"><tbody><tr class="userrow"><td class="usercell" style="font-family: Verdana; font-size: 13px; line-height: 1.3em; border-top-width: 1px; border-right-width: 1px; border-bottom-width: 1px; border-left-width: 1px; border-top-color: black; border-right-color: black; border-bottom-color: black; border-left-color: black; border-top-style: solid; border-right-style: solid; border-bottom-style: solid; border-left-style: solid; padding-top: 4px; padding-right: 4px; padding-bottom: 4px; padding-left: 4px; vertical-align: top; "><p class="bodytext"><strong>Script address</strong></p></td><td class="usercell" style="font-family: Verdana; font-size: 13px; line-height: 1.3em; border-top-width: 1px; border-right-width: 1px; border-bottom-width: 1px; border-left-width: 1px; border-top-color: black; border-right-color: black; border-bottom-color: black; border-left-color: black; border-top-style: solid; border-right-style: solid; border-bottom-style: solid; border-left-style: solid; padding-top: 4px; padding-right: 4px; padding-bottom: 4px; padding-left: 4px; vertical-align: top; "><p class="bodytext"><strong>Description</strong></p></td></tr><tr class="userrow"><td class="usercell" colspan="2" style="font-family: Verdana; font-size: 13px; line-height: 1.3em; border-top-width: 1px; border-right-width: 1px; border-bottom-width: 1px; border-left-width: 1px; border-top-color: black; border-right-color: black; border-bottom-color: black; border-left-color: black; border-top-style: solid; border-right-style: solid; border-bottom-style: solid; border-left-style: solid; padding-top: 4px; padding-right: 4px; padding-bottom: 4px; padding-left: 4px; vertical-align: top; "><p class="bodytext"><em>The script of the Web-site (/sub_UI/mod_WebUser/)</em></p></td></tr><tr class="userrow"><td class="usercell" style="font-family: Verdana; font-size: 13px; line-height: 1.3em; border-top-width: 1px; border-right-width: 1px; border-bottom-width: 1px; border-left-width: 1px; border-top-color: black; border-right-color: black; border-bottom-color: black; border-left-color: black; border-top-style: solid; border-right-style: solid; border-bottom-style: solid; border-left-style: solid; padding-top: 4px; padding-right: 4px; padding-bottom: 4px; padding-left: 4px; vertical-align: top; "><p class="bodytext">up_hs</p></td><td class="usercell" style="font-family: Verdana; font-size: 13px; line-height: 1.3em; border-top-width: 1px; border-right-width: 1px; border-bottom-width: 1px; border-left-width: 1px; border-top-color: black; border-right-color: black; border-bottom-color: black; border-left-color: black; border-top-style: solid; border-right-style: solid; border-bottom-style: solid; border-left-style: solid; padding-top: 4px; padding-right: 4px; padding-bottom: 4px; padding-left: 4px; vertical-align: top; "><p class="bodytext"><span style="color: rgb(0, 51, 153); text-decoration: none; "><a name="p15644-25"></a></span><p id="p15644-25" class="auto" style="font-family: Verdana; font-size: 13px; line-height: 1.3em; margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; ">Main Web-site script, which performs direct reception, initial processing and forming the definitive reply, namely:</p></p><ul style="margin-top: 0px; margin-bottom: 0px; padding-top: 0px; padding-bottom: 0px; "><li style="font-family: Verdana; font-size: 13px; line-height: 1.3em; ">Processing the requests to the template-pages:<ul style="margin-top: 0px; margin-bottom: 0px; padding-top: 0px; padding-bottom: 0px; "><li style="font-family: Verdana; font-size: 13px; line-height: 1.3em; ">read the file of the selected template-page, if the selection had taken place;</li><li style="font-family: Verdana; font-size: 13px; line-height: 1.3em; ">reading and parsing of the file of the main interface template (main.html);</li><li style="font-family: Verdana; font-size: 13px; line-height: 1.3em; ">placing the current server time in the &quot;value&quot; attribute of the element of the main template tree with the &quot;time_vl&quot; ID;</li><li style="font-family: Verdana; font-size: 13px; line-height: 1.3em; ">placement of the initial counter value of an active session in the &quot;value&quot; attribute of the element of the main template tree with the &quot;ses_vl&quot; ID;</li><li style="font-family: Verdana; font-size: 13px; line-height: 1.3em; ">checking the public access of the authenticated user to some parts of the interface and to hiding items that do not have access to be viewed;</li><li style="font-family: Verdana; font-size: 13px; line-height: 1.3em; ">processing the selected menu item of the page:<ul style="margin-top: 0px; margin-bottom: 0px; padding-top: 0px; padding-bottom: 0px; "><li style="font-family: Verdana; font-size: 13px; line-height: 1.3em; ">backlight of the menu item of the active page;</li><li style="font-family: Verdana; font-size: 13px; line-height: 1.3em; ">search and call of the (/sub_DAQ/mod_JavaLikeCalc/lib_web/*) dynamics script from the &quot;script URL&quot; argument of the selected page.</li></ul></li><li style="font-family: Verdana; font-size: 13px; line-height: 1.3em; ">reading of the welcome page file (welcome.html), in the case of absence the selected page from the menu;</li><li style="font-family: Verdana; font-size: 13px; line-height: 1.3em; ">setting the values of the current page and the user in the status bar;</li><li style="font-family: Verdana; font-size: 13px; line-height: 1.3em; ">placing of the page context to the main template of the interface.</li></ul></li><li style="font-family: Verdana; font-size: 13px; line-height: 1.3em; ">Processing the requests to the resource files and reports:<ul style="margin-top: 0px; margin-bottom: 0px; padding-top: 0px; padding-bottom: 0px; "><li style="font-family: Verdana; font-size: 13px; line-height: 1.3em; ">Processing the resource files extension and the formation of the attribute of (Content-Type) type for the transmitted content.</li></ul></li><li style="font-family: Verdana; font-size: 13px; line-height: 1.3em; ">Generation the replies with an error if there is no template-pages, or resource files.</li></ul></td></tr><tr class="userrow"><td class="usercell" colspan="2" style="font-family: Verdana; font-size: 13px; line-height: 1.3em; border-top-width: 1px; border-right-width: 1px; border-bottom-width: 1px; border-left-width: 1px; border-top-color: black; border-right-color: black; border-bottom-color: black; border-left-color: black; border-top-style: solid; border-right-style: solid; border-bottom-style: solid; border-left-style: solid; padding-top: 4px; padding-right: 4px; padding-bottom: 4px; padding-left: 4px; vertical-align: top; "><p class="bodytext"><em>Script library of the template-pages, and system processes (/sub_DAQ/mod_JavaLikeCalc/lib_web/*)</em></p></td></tr><tr class="userrow"><td class="usercell" style="font-family: Verdana; font-size: 13px; line-height: 1.3em; border-top-width: 1px; border-right-width: 1px; border-bottom-width: 1px; border-left-width: 1px; border-top-color: black; border-right-color: black; border-bottom-color: black; border-left-color: black; border-top-style: solid; border-right-style: solid; border-bottom-style: solid; border-left-style: solid; padding-top: 4px; padding-right: 4px; padding-bottom: 4px; padding-left: 4px; vertical-align: top; "><p class="bodytext">user</p></td><td class="usercell" style="font-family: Verdana; font-size: 13px; line-height: 1.3em; border-top-width: 1px; border-right-width: 1px; border-bottom-width: 1px; border-left-width: 1px; border-top-color: black; border-right-color: black; border-bottom-color: black; border-left-color: black; border-top-style: solid; border-right-style: solid; border-bottom-style: solid; border-left-style: solid; padding-top: 4px; padding-right: 4px; padding-bottom: 4px; padding-left: 4px; vertical-align: top; "><p class="bodytext">Script of the template-page &quot;Users Manager&quot; implements the function of the formation of form for the users' management, depending on the rights of the logged in user.</p></td></tr><tr class="userrow"><td class="usercell" style="font-family: Verdana; font-size: 13px; line-height: 1.3em; border-top-width: 1px; border-right-width: 1px; border-bottom-width: 1px; border-left-width: 1px; border-top-color: black; border-right-color: black; border-bottom-color: black; border-left-color: black; border-top-style: solid; border-right-style: solid; border-bottom-style: solid; border-left-style: solid; padding-top: 4px; padding-right: 4px; padding-bottom: 4px; padding-left: 4px; vertical-align: top; "><p class="bodytext">devices</p></td><td class="usercell" style="font-family: Verdana; font-size: 13px; line-height: 1.3em; border-top-width: 1px; border-right-width: 1px; border-bottom-width: 1px; border-left-width: 1px; border-top-color: black; border-right-color: black; border-bottom-color: black; border-left-color: black; border-top-style: solid; border-right-style: solid; border-bottom-style: solid; border-left-style: solid; padding-top: 4px; padding-right: 4px; padding-bottom: 4px; padding-left: 4px; vertical-align: top; "><p class="bodytext">Script of the template-page &quot;Devices Manager&quot; implements the function of forming the devices' control and the alarms generation form for two types of devices: decimal and dynamic.</p></td></tr><tr class="userrow"><td class="usercell" style="font-family: Verdana; font-size: 13px; line-height: 1.3em; border-top-width: 1px; border-right-width: 1px; border-bottom-width: 1px; border-left-width: 1px; border-top-color: black; border-right-color: black; border-bottom-color: black; border-left-color: black; border-top-style: solid; border-right-style: solid; border-bottom-style: solid; border-left-style: solid; padding-top: 4px; padding-right: 4px; padding-bottom: 4px; padding-left: 4px; vertical-align: top; "><p class="bodytext">devMon</p></td><td class="usercell" style="font-family: Verdana; font-size: 13px; line-height: 1.3em; border-top-width: 1px; border-right-width: 1px; border-bottom-width: 1px; border-left-width: 1px; border-top-color: black; border-right-color: black; border-bottom-color: black; border-left-color: black; border-top-style: solid; border-right-style: solid; border-bottom-style: solid; border-left-style: solid; padding-top: 4px; padding-right: 4px; padding-bottom: 4px; padding-left: 4px; vertical-align: top; "><p class="bodytext">The script of the formation of the monitoring interface and form of the devices' management, configured in the &quot;Devices Manager&quot;. This script is used by all subsystems of the devices monitoring.</p></td></tr><tr class="userrow"><td class="usercell" style="font-family: Verdana; font-size: 13px; line-height: 1.3em; border-top-width: 1px; border-right-width: 1px; border-bottom-width: 1px; border-left-width: 1px; border-top-color: black; border-right-color: black; border-bottom-color: black; border-left-color: black; border-top-style: solid; border-right-style: solid; border-bottom-style: solid; border-left-style: solid; padding-top: 4px; padding-right: 4px; padding-bottom: 4px; padding-left: 4px; vertical-align: top; "><p class="bodytext">alarms</p></td><td class="usercell" style="font-family: Verdana; font-size: 13px; line-height: 1.3em; border-top-width: 1px; border-right-width: 1px; border-bottom-width: 1px; border-left-width: 1px; border-top-color: black; border-right-color: black; border-bottom-color: black; border-left-color: black; border-top-style: solid; border-right-style: solid; border-bottom-style: solid; border-left-style: solid; padding-top: 4px; padding-right: 4px; padding-bottom: 4px; padding-left: 4px; vertical-align: top; "><p class="bodytext">Script of the periodical task that checks the value of variables of devices for the configured alarms. In addition to the direct formation of alarms the script provides the SMS-notification messages to users' phones, set for notification via SMS.</p></td></tr><tr class="userrow"><td class="usercell" style="font-family: Verdana; font-size: 13px; line-height: 1.3em; border-top-width: 1px; border-right-width: 1px; border-bottom-width: 1px; border-left-width: 1px; border-top-color: black; border-right-color: black; border-bottom-color: black; border-left-color: black; border-top-style: solid; border-right-style: solid; border-bottom-style: solid; border-left-style: solid; padding-top: 4px; padding-right: 4px; padding-bottom: 4px; padding-left: 4px; vertical-align: top; "><p class="bodytext">mess</p></td><td class="usercell" style="font-family: Verdana; font-size: 13px; line-height: 1.3em; border-top-width: 1px; border-right-width: 1px; border-bottom-width: 1px; border-left-width: 1px; border-top-color: black; border-right-color: black; border-bottom-color: black; border-left-color: black; border-top-style: solid; border-right-style: solid; border-bottom-style: solid; border-left-style: solid; padding-top: 4px; padding-right: 4px; padding-bottom: 4px; padding-left: 4px; vertical-align: top; "><p class="bodytext">Script of the template-page &quot;Alarms&quot; implements the function of forming the active list of alarms.</p></td></tr><tr class="userrow"><td class="usercell" style="font-family: Verdana; font-size: 13px; line-height: 1.3em; border-top-width: 1px; border-right-width: 1px; border-bottom-width: 1px; border-left-width: 1px; border-top-color: black; border-right-color: black; border-bottom-color: black; border-left-color: black; border-top-style: solid; border-right-style: solid; border-bottom-style: solid; border-left-style: solid; padding-top: 4px; padding-right: 4px; padding-bottom: 4px; padding-left: 4px; vertical-align: top; "><p class="bodytext">report</p></td><td class="usercell" style="font-family: Verdana; font-size: 13px; line-height: 1.3em; border-top-width: 1px; border-right-width: 1px; border-bottom-width: 1px; border-left-width: 1px; border-top-color: black; border-right-color: black; border-bottom-color: black; border-left-color: black; border-top-style: solid; border-right-style: solid; border-bottom-style: solid; border-left-style: solid; padding-top: 4px; padding-right: 4px; padding-bottom: 4px; padding-left: 4px; vertical-align: top; "><p class="bodytext">Script of the template-page &quot;Reports&quot; implements the function of forming the table-report with the events in the system and in the various subsystems for a specified period of time. Report is generated simultaneously on the screen and in the file that can be downloaded separately by the link.</p></td></tr></tbody></table><p id="p15644-26" style="font-family: Verdana; font-size: 13px; line-height: 1.3em; margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; " class="auto">&nbsp;</p>
<p id="p15644-26" style="font-family: Verdana; font-size: 13px; line-height: 1.3em; margin: 0px; padding: 0px; " class="indent10 auto align-justify">In general, the algorithm processing the requests to the pages is(on the example of<span class="Apple-converted-space">&nbsp;</span><strong><a href="http://localhost:10002/WebUser/temperature?script=devMon" target="_blank" >localhost/WebUser/temperature</a></strong>):</p><ul style="margin-top: 0px; margin-bottom: 0px; padding-top: 0px; padding-bottom: 0px; "><li style="font-family: Verdana; font-size: 13px; line-height: 1.3em; ">request is received in the script<span class="Apple-converted-space">&nbsp;</span><strong>/sub_UI/mod_WebUser/hs</strong><span class="Apple-converted-space">&nbsp;</span>from the transport<span class="Apple-converted-space">&nbsp;</span><strong>/sub_Transport/mod_Sockets/in_WEB_1</strong>, by means of the<span class="Apple-converted-space">&nbsp;</span><em>Protocol.HTTP</em><span class="Apple-converted-space">&nbsp;</span>protocol module;</li><li style="font-family: Verdana; font-size: 13px; line-height: 1.3em; ">the template file is loaded<span class="Apple-converted-space">&nbsp;</span><em>temperature.html</em>;</li><li style="font-family: Verdana; font-size: 13px; line-height: 1.3em; ">the script of the &quot;devMon&quot; page is being looking for (<strong>/sub_DAQ/mod_JavaLikeCalc/lib_web/devMon</strong>). If the<span class="Apple-converted-space">&nbsp;</span><em>script</em><span class="Apple-converted-space">&nbsp;</span>argument is missing the script search is made by the name of the page (<strong>/sub_DAQ/mod_JavaLikeCalc/lib_web/temperature</strong>);</li><li style="font-family: Verdana; font-size: 13px; line-height: 1.3em; ">the transfer of the page's template to the found script for the formation of dynamics is made;</li><li style="font-family: Verdana; font-size: 13px; line-height: 1.3em; ">the result of the page's script execution is placed to the main template;</li><li style="font-family: Verdana; font-size: 13px; line-height: 1.3em; ">if the page's script is not found, the page's template puts its contents directly into the main template.</li></ul><p class="bodytext"><span style="color: rgb(0, 51, 153); text-decoration: none; "><a name="h1066-6"></a></span></p>
<h3 style="margin-top: 15px; margin-right: 0px; margin-bottom: 5px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; font-family: Verdana; font-size: 17px; border-bottom-width: 2px; border-bottom-style: dotted; border-bottom-color: rgb(221, 221, 221); ">2.2. Devices Manager</h3>
<p id="p15644-28" style="font-family: Verdana; font-size: 13px; line-height: 1.3em; margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; " class="indent10 auto align-justify">The Devices Manager is available only for root and builds the form for edit, and and remove devices of two types: binary and decimal. </p>
<p id="p15644-28" style="font-family: Verdana; font-size: 13px; line-height: 1.3em; margin: 0px; padding: 0px; " class="indent10 auto align-justify">The created device are placed in the attributes list of the parameter of the specifically taken subsystem of &quot;ZigBee&quot; controller of the data source module &quot;ModBus&quot; (<strong>/sub_DAQ/mod_ModBus/cntr_ZegBee/</strong>). Recording format of an attribute is as follows:</p><ul style="margin-top: 0px; margin-bottom: 0px; padding-top: 0px; padding-bottom: 0px; "><li style="font-family: Verdana; font-size: 13px; line-height: 1.3em; ">«<strong>R:0:r:cond:Airconditioning:bin:10:Enabled:0:Disabled:(120|100)</strong>» — for binary sensor:<ul style="margin-top: 0px; margin-bottom: 0px; padding-top: 0px; padding-bottom: 0px; "><li style="font-family: Verdana; font-size: 13px; line-height: 1.3em; "><em>R</em><span class="Apple-converted-space">&nbsp;</span>— ModBus register;</li><li style="font-family: Verdana; font-size: 13px; line-height: 1.3em; "><em>0</em><span class="Apple-converted-space">&nbsp;</span>— ModBus register address;</li><li style="font-family: Verdana; font-size: 13px; line-height: 1.3em; "><em>r</em><span class="Apple-converted-space">&nbsp;</span>— read only;</li><li style="font-family: Verdana; font-size: 13px; line-height: 1.3em; "><em>cond</em><span class="Apple-converted-space">&nbsp;</span>— ID of an attribute-senso;</li><li style="font-family: Verdana; font-size: 13px; line-height: 1.3em; "><em>Airconditioning</em><span class="Apple-converted-space">&nbsp;</span>— sensor's name;</li><li style="font-family: Verdana; font-size: 13px; line-height: 1.3em; "><em>bin</em><span class="Apple-converted-space">&nbsp;</span>— sensor's type - &quot;Binary&quot;;</li><li style="font-family: Verdana; font-size: 13px; line-height: 1.3em; "><em>10</em><span class="Apple-converted-space">&nbsp;</span>— the first value;</li><li style="font-family: Verdana; font-size: 13px; line-height: 1.3em; "><em>Enabled</em><span class="Apple-converted-space">&nbsp;</span>— the name of the first value;</li><li style="font-family: Verdana; font-size: 13px; line-height: 1.3em; "><em>0</em><span class="Apple-converted-space">&nbsp;</span>— the second value;</li><li style="font-family: Verdana; font-size: 13px; line-height: 1.3em; "><em>Disabled</em><span class="Apple-converted-space">&nbsp;</span>— the name of the second value;</li><li style="font-family: Verdana; font-size: 13px; line-height: 1.3em; "><em>(120|100)</em><span class="Apple-converted-space">&nbsp;</span>— location coordinates<span class="Apple-converted-space">&nbsp;</span><strong>({x}|{y})</strong><span class="Apple-converted-space">&nbsp;</span>of the sensor in the scheme of premises.</li></ul></li><li style="font-family: Verdana; font-size: 13px; line-height: 1.3em; ">«<strong>R:3:rw:tGhost1:The temperature in the living room 1:dec:deg. С:y=2*x;:(120|100)</strong>» — for the decimal sensor:<ul style="margin-top: 0px; margin-bottom: 0px; padding-top: 0px; padding-bottom: 0px; "><li style="font-family: Verdana; font-size: 13px; line-height: 1.3em; "><em>rw</em><span class="Apple-converted-space">&nbsp;</span>— read only;</li><li style="font-family: Verdana; font-size: 13px; line-height: 1.3em; "><em>dec</em><span class="Apple-converted-space">&nbsp;</span>— sensor's type - &quot;Decimal&quot;;</li><li style="font-family: Verdana; font-size: 13px; line-height: 1.3em; "><em>deg. C</em><span class="Apple-converted-space">&nbsp;</span>— unit of the variable;</li><li style="font-family: Verdana; font-size: 13px; line-height: 1.3em; "><em>y=2*x;</em><span class="Apple-converted-space">&nbsp;</span>— conversion formula for the received variable for display;</li><li style="font-family: Verdana; font-size: 13px; line-height: 1.3em; "><em>(120|100)</em><span class="Apple-converted-space">&nbsp;</span>— location coordinates<span class="Apple-converted-space">&nbsp;</span><strong>({x}|{y})</strong><span class="Apple-converted-space">&nbsp;</span>of the sensor in the scheme of premises.</li></ul></li></ul><p id="p15644-29" style="font-family: Verdana; font-size: 13px; line-height: 1.3em; margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; " class="auto">&nbsp;</p>
<p id="p15644-29" style="font-family: Verdana; font-size: 13px; line-height: 1.3em; margin: 0px; padding: 0px; " class="indent10 auto align-justify">In addition to direct sensors the configuration and formation of alarms is made in the form of text procedure. The program of formation is placed in the &quot;var&quot; attribute of the alarms controller parameter<span class="Apple-converted-space">&nbsp;</span><strong>/sub_DAQ/mod_JavaLikeCalc/cntr_alarms/prm_rules</strong>. The &quot;var&quot; attribute contains the following XML tree:</p><div class="code" style="background-image: initial; background-attachment: initial; background-origin: initial; background-clip: initial; background-color: rgb(255, 255, 255); border-top-style: solid; border-right-style: solid; border-bottom-style: solid; border-left-style: solid; border-top-color: rgb(136, 136, 136); border-right-color: rgb(136, 136, 136); border-bottom-color: rgb(136, 136, 136); border-left-color: rgb(136, 136, 136); border-top-width: 2px; border-right-width: 2px; border-bottom-width: 2px; border-left-width: 2px; font-family: 'Courier New'; color: black; font-size: 10pt; width: 941px; padding-top: 3px; padding-right: 3px; padding-bottom: 3px; padding-left: 3px; background-position: initial initial; background-repeat: initial initial; "><p class="bodytext">&lt;code&gt;<span style="color: rgb(0, 0, 0); ">&lt;ALARMS&gt;<br />&nbsp;&nbsp;&lt;it&nbsp;id&nbsp;=&nbsp;&quot;temperature.cond1&quot;&gt;<br />&nbsp;&nbsp;&nbsp;&nbsp;if(x&amp;lt;10)&nbsp;err&nbsp;=&nbsp;&amp;quot;Low&nbsp;temperature:&nbsp;&amp;quot;+x+&amp;quot;&nbsp;&amp;lt;&nbsp;10&amp;quot;;<br />&nbsp;&nbsp;&lt;/it&gt;<br />&lt;/ALARMS&gt;</span>&lt;/code&gt;</p></div><p id="p15644-30" style="font-family: Verdana; font-size: 13px; line-height: 1.3em; margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; " class="indent10 auto align-justify">&nbsp;</p>
<p id="p15644-30" style="font-family: Verdana; font-size: 13px; line-height: 1.3em; margin: 0px; padding: 0px; " class="indent10 auto align-justify">According to the XML-tree the formation of alarms and sending SMS-notifications to the subscribed users is made in the controller's task<strong>/sub_DAQ/mod_JavaLikeCalc/cntr_alarms</strong>, which is executed with a period of 1 minute.</p>
<p id="p15644-31" style="font-family: Verdana; font-size: 13px; line-height: 1.3em; margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; " class="indent10 auto align-justify">SMS-notifications are sent via the serial transport<span class="Apple-converted-space">&nbsp;</span><strong>/sub_Transport/mod_Serial/out_GSM</strong><span class="Apple-converted-space">&nbsp;</span>and through the user's SMS-protocol (<strong>/sub_Protocol/mod_UserProtocol/up_SMS</strong>).</p>
<p id="p15644-32" style="font-family: Verdana; font-size: 13px; line-height: 1.3em; margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; " class="indent10 auto align-justify">You can also select the delayed giving of the control action. To do this, the user sets the right time, in the form of:<span class="Apple-converted-space">&nbsp;</span><strong>{Min}:{Sec}</strong>. Processing of the delayed control is made in the controller<span class="Apple-converted-space">&nbsp;</span><strong>/sub_DAQ/mod_JavaLikeCalc/cntr_timers</strong><span class="Apple-converted-space">&nbsp;</span>by setting the &quot;var&quot; attribute of the &quot;rules&quot; parameter with the help of requests in the XML tree:</p><div class="code" style="background-image: initial; background-attachment: initial; background-origin: initial; background-clip: initial; background-color: rgb(255, 255, 255); border-top-style: solid; border-right-style: solid; border-bottom-style: solid; border-left-style: solid; border-top-color: rgb(136, 136, 136); border-right-color: rgb(136, 136, 136); border-bottom-color: rgb(136, 136, 136); border-left-color: rgb(136, 136, 136); border-top-width: 2px; border-right-width: 2px; border-bottom-width: 2px; border-left-width: 2px; font-family: 'Courier New'; color: black; font-size: 10pt; width: 941px; padding-top: 3px; padding-right: 3px; padding-bottom: 3px; padding-left: 3px; background-position: initial initial; background-repeat: initial initial; "><p class="bodytext">&lt;code&gt;<span style="color: rgb(0, 0, 0); ">&lt;TIMERS&gt;<br />&nbsp;&nbsp;&lt;timer&nbsp;id=&quot;temperature.tGhost1&quot;&nbsp;tm=&quot;60&quot;&nbsp;user=&quot;root&quot;&gt;20&lt;/timer&gt;<br />&nbsp;&nbsp;&lt;timer&nbsp;id=&quot;temperature.cond1&quot;&nbsp;tm=&quot;10&quot;&nbsp;user=&quot;root&quot;&gt;0&lt;/timer&gt;<br />&lt;/TIMERS&gt;</span>&lt;/code&gt;</p></div><p class="bodytext"><span style="color: rgb(0, 51, 153); text-decoration: none; "><a name="h1066-7"></a></span></p>
<h3 style="margin-top: 15px; margin-right: 0px; margin-bottom: 5px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; font-family: Verdana; font-size: 17px; border-bottom-width: 2px; border-bottom-style: dotted; border-bottom-color: rgb(221, 221, 221); ">2.3. Subsystems</h3>
<p id="p15644-33" style="font-family: Verdana; font-size: 13px; line-height: 1.3em; margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; " class="indent10 auto align-justify">All visualization subsystems are served by the<span class="Apple-converted-space">&nbsp;</span><strong>/sub_DAQ/mod_JavaLikeCalc/lib_web/devMon</strong><span class="Apple-converted-space">&nbsp;</span>script. This script process the requests from the script of the dynamic visualization of Web-browser and receive the data on the subsystem's devices, required for visualization. Data about the devices are transferred in accordance with the privileges of the logged user.</p>
<p id="p15644-34" style="font-family: Verdana; font-size: 13px; line-height: 1.3em; margin: 0px; padding: 0px; " class="indent10 auto align-justify">The configuration of sensors is read from the parameter corresponding to the &quot;ZigBee&quot; controller's subsystem (<strong>/sub_DAQ/mod_ModBus/cntr_ZegBee</strong>). The values are read and written to the attributes of the sensors of these parameters or through the controller or delayed management.</p>
<p id="p15644-35" style="font-family: Verdana; font-size: 13px; line-height: 1.3em; margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; " class="indent10 auto align-justify">The task of the &quot;ZigBee&quot; controller is executed with the period of 1 second, in the process of which the request of the the current values of all configured sensors is made. Record of the the values is made on the fact of modification, regardless of the periodic polling task or through the delayed management controller in the case of installation of nonzero timer.</p>
<p id="p15644-36" style="font-family: Verdana; font-size: 13px; line-height: 1.3em; margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; " class="indent10 auto align-justify">Connection to the &quot;ZigBee&quot; controller is made via serial outgoing transport<span class="Apple-converted-space">&nbsp;</span><strong>/sub_Transport/mod_Serial/out_ZegBee</strong>.</p>
<h3 style="margin-top: 15px; margin-right: 0px; margin-bottom: 5px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; font-family: Verdana; font-size: 17px; border-bottom-width: 2px; border-bottom-style: dotted; border-bottom-color: rgb(221, 221, 221); ">2.4. Users manager</h3>
<p id="p15644-38" style="font-family: Verdana; font-size: 13px; line-height: 1.3em; margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; " class="indent10 auto align-justify">Users manager is intended to create, delete and edit accounts of ordinary users. </p>
<p id="p15644-38" style="font-family: Verdana; font-size: 13px; line-height: 1.3em; margin: 0px; padding: 0px; " class="indent10 auto align-justify">Users are divided into administrators and ordinary users. Identification of the user as an administrator in the OpenSCADA system is made by turning it into the &quot;WebRoot&quot; group (<strong>/sub_Security/grp_WebRoot</strong>). An ordinary user is included into the &quot;Web&quot; group (<strong>/sub_Security/grp_Web</strong>).</p>
<p id="p15644-39" style="font-family: Verdana; font-size: 13px; line-height: 1.3em; margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; " class="indent10 auto align-justify">In OpenSCADA system, each user (<strong>/sub_Security/usr_test1/</strong>) has a text description field, which in this case serves to store its special settings in the following way:</p><div class="code" style="background-image: initial; background-attachment: initial; background-origin: initial; background-clip: initial; background-color: rgb(255, 255, 255); border-top-style: solid; border-right-style: solid; border-bottom-style: solid; border-left-style: solid; border-top-color: rgb(136, 136, 136); border-right-color: rgb(136, 136, 136); border-bottom-color: rgb(136, 136, 136); border-left-color: rgb(136, 136, 136); border-top-width: 2px; border-right-width: 2px; border-bottom-width: 2px; border-left-width: 2px; font-family: 'Courier New'; color: black; font-size: 10pt; width: 941px; padding-top: 3px; padding-right: 3px; padding-bottom: 3px; padding-left: 3px; background-position: initial initial; background-repeat: initial initial; "><p class="bodytext">&lt;code&gt;<span style="color: rgb(0, 0, 0); ">TEL:&nbsp;+380679859815<br />SMS:&nbsp;true<br />Report:&nbsp;false<br />sub_access:&nbsp;--<br />sub_friend:&nbsp;--<br />sub_light:&nbsp;--<br />sub_tech:&nbsp;--<br />sub_temperature:&nbsp;rw<br />sub_water:&nbsp;--</span>&lt;/code&gt;</p></div><p id="p15644-40" style="font-family: Verdana; font-size: 13px; line-height: 1.3em; margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; " class="auto">&nbsp;</p>
<p id="p15644-40" style="font-family: Verdana; font-size: 13px; line-height: 1.3em; margin: 0px; padding: 0px; " class="indent10 auto align-justify">In the case of an administrator's account the records of an access rights to the subsystems are not available, but there are system-wide settings such as the lifetime of the session (<strong>/sub_Protocol/mod_HTTP</strong>).</p>
<h3 style="margin-top: 15px; margin-right: 0px; margin-bottom: 5px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; font-family: Verdana; font-size: 17px; border-bottom-width: 2px; border-bottom-style: dotted; border-bottom-color: rgb(221, 221, 221); ">2.5. Messages</h3>
<p class="bodytext">The message list is formed based on the active list of alarms in their categories &quot;ALARM:House:*&quot; in tabular form, with the time, category, level and the alarm message.<br /><span style="color: rgb(0, 51, 153); text-decoration: none; "><a name="h1066-10"></a></span></p>
<h3 style="margin-top: 15px; margin-right: 0px; margin-bottom: 5px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; font-family: Verdana; font-size: 17px; border-bottom-width: 2px; border-bottom-style: dotted; border-bottom-color: rgb(221, 221, 221); ">2.6. Reports</h3>
<p id="p15644-42" style="font-family: Verdana; font-size: 13px; line-height: 1.3em; margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; " class="indent10 auto align-justify">During the report's generating the time range is indicated and messages' types are select. The generation of message for the following types is provided:</p><ul style="margin-top: 0px; margin-bottom: 0px; padding-top: 0px; padding-bottom: 0px; "><li style="font-family: Verdana; font-size: 13px; line-height: 1.3em; ">&quot;System events&quot; — includes messages about login and logout users on the resource by means of the massages category &quot;/\/sub_Protocol\/mod_HTTP\//&quot;.</li><li style="font-family: Verdana; font-size: 13px; line-height: 1.3em; ">&quot;Monitoring and management subsystems' events&quot; — includes alarms and record the new values of the sensors through the categories of messages «/(ALARM|SET)\:House\/:».</li></ul><p id="p15644-43" style="font-family: Verdana; font-size: 13px; line-height: 1.3em; margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; " class="auto">&nbsp;</p>
<p id="p15644-43" style="font-family: Verdana; font-size: 13px; line-height: 1.3em; margin: 0px; padding: 0px; " class="indent10 auto align-justify">The protocol is formed as a table with the time, category, level and message of the alarm, which is also recorded in the separate report file, later available on the link to the separate opening.</p>]]></content:encoded>
			<category>News</category>
			<category>Solution</category>
			
			<author>rom_as@oscada.org</author>
			<pubDate>Sun, 12 Jun 2011 00:00:00 +0300</pubDate>
			
		</item>
		
		<item>
			<title>Release of OpenSCADA 0.7.1</title>
			<link>http://www.oscada.org/en/news-storage/single-page/article//release-of-openscada-071//6c69282cc834404b07faf1115067a195/</link>
			<description>The main purpose of this release is the implementation of commercial service on the OpenSCADA basis...</description>
			<content:encoded><![CDATA[<p class="indent10">&nbsp;</p><div style="text-align: center;"><h1 style="margin: 0px; padding: 2px 0px 7px; font-family: Verdana; font-size: 23px; line-height: 25px; color: rgb(51, 51, 51);"><span class="Apple-style-span" style="border-collapse: separate; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; orphans: 2; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px; font-size: medium;"><span class="Apple-style-span" style="font-family: Verdana; font-size: 13px; line-height: 16px; text-align: center;"></span></span></h1>
<h1 style="margin: 0px; padding: 2px 0px 7px; font-family: Verdana; font-size: 23px; line-height: 25px; color: rgb(51, 51, 51);">OpenSCADA 0.7.1</h1></div><p class="bodytext"><span class="Apple-style-span" style="border-collapse: separate; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; orphans: 2; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px; font-size: medium;"><span class="Apple-style-span" style="font-family: Verdana; font-size: 13px; line-height: 16px;"></span></span></p>
<h2 style="margin: 20px 0px 5px; padding: 0px; font-family: Verdana; font-size: 20px; border-bottom: 3px dotted rgb(221, 221, 221);">Introduction</h2>
<p id="p76556-3" style="font-family: Verdana; font-size: 13px; line-height: 1.3em; margin: 0px; padding: 0px;" class="align-justify auto indent10">This release is a planned one of a working version of OpenSCADA, which are usually made at intervals of 3-4 months. The main purpose of this release is the implementation of commercial service on the OpenSCADA basis and adaptation to the ARM hardware. In addition to the main purposes within the limits of this release a great work for stabilization, cleaning the source code, as well as for the full empowerment is made.</p>
<p id="p76556-4" style="font-family: Verdana; font-size: 13px; line-height: 1.3em; margin: 0px; padding: 0px;" class="align-justify auto indent10">This document is the processing (compilation) of &lt;ChangeLog&gt; document of the OpenSCADA system of 0.7.1 version, which is designed for briefly and clearly covering the new features and changes of the OpenSCADA system. To get acquainted with all the changes in the OpenSCADA system it is possible in the .file ChangeLog from the distribution kit of the system, or here:<span class="Apple-converted-space">&nbsp;</span><span style="color: rgb(0, 51, 153); text-decoration: none;"><a href="../websvn/filedetails.php?repname=OpenSCADA&amp;path=%2Ftrunk%2FOpenSCADA%2FChangeLog" title="Внешняя ссылка (откроется в новом окне)" target="_blank" class="outerlink" ><img src="http://wiki.oscada.org/themes/default/icons/web.gif" style="border-width: 0px; vertical-align: middle;" alt="">http://oscada.org/websvn/filedetails.php?repname=OpenSCADA&amp;path=%2Ftrunk%2FOpenSCADA%2FChangeLog</a></span><span class="Apple-converted-space">&nbsp;</span>.</p>
<p id="p76556-5" style="font-family: Verdana; font-size: 13px; line-height: 1.3em; margin: 0px; padding: 0px;" class="auto indent10">The key features of this version are:</p><ul style="margin-top: 0px; margin-bottom: 0px; padding-top: 0px; padding-bottom: 0px;"><li style="font-family: Verdana; font-size: 13px; line-height: 1.3em;">Implementation of planned tasks.</li><li style="font-family: Verdana; font-size: 13px; line-height: 1.3em;">Optimization, increasing of stability, sustainability and system performance.</li><li style="font-family: Verdana; font-size: 13px; line-height: 1.3em;">Improvement and stabilization of the graphics subsystem.</li><li style="font-family: Verdana; font-size: 13px; line-height: 1.3em;">Formation and stabilization of user programming API.</li><li style="font-family: Verdana; font-size: 13px; line-height: 1.3em;">System-wide expansions.</li></ul><p id="p76556-6" style="font-family: Verdana; font-size: 13px; line-height: 1.3em; margin: 0px; padding: 0px;" class="auto indent10">New and updated modules are:</p><ul style="margin-top: 0px; margin-bottom: 0px; padding-top: 0px; padding-bottom: 0px;"><li style="font-family: Verdana; font-size: 13px; line-height: 1.3em;"><em>Archive.FSArch (1.4.5)</em><span class="Apple-converted-space">&nbsp;</span>- Significant stabilization.</li><li style="font-family: Verdana; font-size: 13px; line-height: 1.3em;"><em>DB.MySQL (1.7.0)</em><span class="Apple-converted-space">&nbsp;</span>- Stabilization. The ability to specify connection timeouts is added.</li><li style="font-family: Verdana; font-size: 13px; line-height: 1.3em;"><em>DB.SQLite (1.6.3)</em><span class="Apple-converted-space">&nbsp;</span>- Stabilization.</li><li style="font-family: Verdana; font-size: 13px; line-height: 1.3em;"><em>DB.FireBird (0.9.6)</em><span class="Apple-converted-space">&nbsp;</span>- Stabilization.</li><li style="font-family: Verdana; font-size: 13px; line-height: 1.3em;"><em>DB.PostgreSQL (0.9.1)</em><span class="Apple-converted-space">&nbsp;</span>- Stabilization.</li><li style="font-family: Verdana; font-size: 13px; line-height: 1.3em;"><em>DAQ.DiamondBoards (1.2.2)</em><span class="Apple-converted-space">&nbsp;</span>- Stabilization.</li><li style="font-family: Verdana; font-size: 13px; line-height: 1.3em;"><em>DAQ.System (1.7.3)</em><span class="Apple-converted-space">&nbsp;</span>- Stabilization. Dependence on the library &quot;Libsensors&quot; is made optional.</li><li style="font-family: Verdana; font-size: 13px; line-height: 1.3em;"><em>DAQ.BlockCalc (1.4.1)</em><span class="Apple-converted-space">&nbsp;</span>- Stabilization. The syntax highlighting is added.</li><li style="font-family: Verdana; font-size: 13px; line-height: 1.3em;"><em>DAQ.JavaLikeCalc (1.9.0)</em><span class="Apple-converted-space">&nbsp;</span>- Stabilization. The syntax highlighting is added. The adaptation to the ARM architecture hardware is made. The implementation of regular expressions and a number of extensions of user API is added. The ability to write characters in a string using octal &quot;\041&quot; and hex &quot;\x21&quot; numbers is added.</li><li style="font-family: Verdana; font-size: 13px; line-height: 1.3em;"><em>DAQ.LogicLev (1.1.3)</em><span class="Apple-converted-space">&nbsp;</span>- Stabilization. Certain extension.</li><li style="font-family: Verdana; font-size: 13px; line-height: 1.3em;"><em>DAQ.SNMP (0.6.0)</em><span class="Apple-converted-space">&nbsp;</span>- Stabilization. Implementation of the full support of the client-side of protocol. The support for all types of values is added. The support for writing values is added. Errors handling is improved. Additional connection configuration options are added.</li><li style="font-family: Verdana; font-size: 13px; line-height: 1.3em;"><em>DAQ.Siemens (1.2.4)</em><span class="Apple-converted-space">&nbsp;</span>- Stabilization.</li><li style="font-family: Verdana; font-size: 13px; line-height: 1.3em;"><em>DAQ.ModBus (1.1.2)</em><span class="Apple-converted-space">&nbsp;</span>- Stabilization. The syntax highlighting of the attributes' list is added. Some improvements.</li><li style="font-family: Verdana; font-size: 13px; line-height: 1.3em;"><em>DAQ.DCON (0.5.0)</em><span class="Apple-converted-space">&nbsp;</span>- The module is completely rewritten for support of mixed modules by selecting the query command.</li><li style="font-family: Verdana; font-size: 13px; line-height: 1.3em;"><em>DAQ.ICP_DAS (0.7.3)</em><span class="Apple-converted-space">&nbsp;</span>- Stabilization.</li><li style="font-family: Verdana; font-size: 13px; line-height: 1.3em;"><em>DAQ.DAQGate (0.9.2)</em><span class="Apple-converted-space">&nbsp;</span>- Stabilization. The parameters' cache for their initialization during the autonomous operation is added.</li><li style="font-family: Verdana; font-size: 13px; line-height: 1.3em;"><em>DAQ.SoundCard (0.6.2)</em><span class="Apple-converted-space">&nbsp;</span>- Stabilization.</li><li style="font-family: Verdana; font-size: 13px; line-height: 1.3em;"><em>DAQ.OPC_UA (0.6.1)</em><span class="Apple-converted-space">&nbsp;</span>- Stabilization. he syntax highlighting of the attributes' list is added.</li><li style="font-family: Verdana; font-size: 13px; line-height: 1.3em;"><em>DAQ.BFN (0.5.0)</em><span class="Apple-converted-space">&nbsp;</span>- New module.</li><li style="font-family: Verdana; font-size: 13px; line-height: 1.3em;"><em>Transport.Sockets (1.4.6)</em><span class="Apple-converted-space">&nbsp;</span>- Stabilization.</li><li style="font-family: Verdana; font-size: 13px; line-height: 1.3em;"><em>Transport.SSL (0.9.6)</em><span class="Apple-converted-space">&nbsp;</span>- Stabilization.</li><li style="font-family: Verdana; font-size: 13px; line-height: 1.3em;"><em>Transport.Serial (0.7.2)</em><span class="Apple-converted-space">&nbsp;</span>- Stabilization. During initialization of the port the previous settings are used and an opportunity to omit some of the settings is implemented.</li><li style="font-family: Verdana; font-size: 13px; line-height: 1.3em;"><em>Protocol.ModBus (0.6.2)</em><span class="Apple-converted-space">&nbsp;</span>- Stabilization. Some improvements.</li><li style="font-family: Verdana; font-size: 13px; line-height: 1.3em;"><em>Protocol.OPC_UA (0.6.1)</em><span class="Apple-converted-space">&nbsp;</span>- Stabilization.</li><li style="font-family: Verdana; font-size: 13px; line-height: 1.3em;"><em>Protocol.HTTP (1.5.1)</em><span class="Apple-converted-space">&nbsp;</span>- Stabilization. The support for HTTP variable &quot;Transfer-Encoding = chunked&quot; in the outgoing transport is added.</li><li style="font-family: Verdana; font-size: 13px; line-height: 1.3em;"><em>Protocol.SelfSystem (0.9.4)</em><span class="Apple-converted-space">&nbsp;</span>- Stabilization.</li><li style="font-family: Verdana; font-size: 13px; line-height: 1.3em;"><em>Protocol.UserProtocol (0.6.1)</em><span class="Apple-converted-space">&nbsp;</span>- The syntax highlighting is added.</li><li style="font-family: Verdana; font-size: 13px; line-height: 1.3em;"><em>Special.SystemTests (1.5.1)</em><span class="Apple-converted-space">&nbsp;</span>- Some improvements.</li><li style="font-family: Verdana; font-size: 13px; line-height: 1.3em;"><em>UI.QTStarter (1.6.1)</em><span class="Apple-converted-space">&nbsp;</span>- Stabilization. Adaptation for the ARM.</li><li style="font-family: Verdana; font-size: 13px; line-height: 1.3em;"><em>UI.QTCfg (2.0.0)</em><span class="Apple-converted-space">&nbsp;</span>- Stabilization. The group request to the control interface is used to optimize the remote access to OpenSCADA stations. Adaptation for the ARM. The function for the manual change the height of the elements of the text and tables (grabbed the bottom edge and dragging) is added. The multi-level syntax highlighting is added.</li><li style="font-family: Verdana; font-size: 13px; line-height: 1.3em;"><em>UI.WebCfg (1.5.5)</em><span class="Apple-converted-space">&nbsp;</span>- Stabilization.</li><li style="font-family: Verdana; font-size: 13px; line-height: 1.3em;"><em>UI.WebCfgD (0.6.6)</em><span class="Apple-converted-space">&nbsp;</span>- Stabilization.</li><li style="font-family: Verdana; font-size: 13px; line-height: 1.3em;"><em>UI.VCAEngine (1.1.0)</em><span class="Apple-converted-space">&nbsp;</span>- Stabilization. The tooltip for the attributes of widget's primitives is added. The syntax highlighting to the text attributes of widget's primitives is added.</li><li style="font-family: Verdana; font-size: 13px; line-height: 1.3em;"><em>UI.Vision (1.1.0)</em><span class="Apple-converted-space">&nbsp;</span>- Significant stabilization. Notable improvements. Adapted for the ARM. The display and restoration of lost communication are added during the remote execution of the session. The separate full-text editor for text attributes is added. The tooltip for the attributes of widget's primitives is added. The syntax highlighting for text attributes of the widgets primitives is added. The dialog of the set properties adjustment of separately selected figures is added.</li><li style="font-family: Verdana; font-size: 13px; line-height: 1.3em;"><em>UI.WebVision (0.9.1)</em><span class="Apple-converted-space">&nbsp;</span>- Significant stabilization. Small improvements.</li><li style="font-family: Verdana; font-size: 13px; line-height: 1.3em;"><em>UI.WebUser (0.6.1)</em><span class="Apple-converted-space">&nbsp;</span>- Stabilization. The syntax highlighting of the procedures is added.</li></ul><p class="bodytext"><span style="color: rgb(0, 51, 153); text-decoration: none;"><a name="h1053-3"></a></span></p>
<h2 style="margin: 20px 0px 5px; padding: 0px; font-family: Verdana; font-size: 20px; border-bottom: 3px dotted rgb(221, 221, 221);">1 Implementation of planned tasks</h2>
<p id="p76556-7" style="font-family: Verdana; font-size: 13px; line-height: 1.3em; margin: 0px; padding: 0px;" class="indent10 auto align-justify">In accordance with the<span class="Apple-converted-space">&nbsp;</span><span style="color: rgb(0, 51, 153); text-decoration: none;"><a name=".homepageen.works.roadmap" href="http://wiki.oscada.org/HomePageEn/Works/RoadMap?v=nqm" title="Home&amp;nbsp;Page&amp;nbsp;En&amp;nbsp;/&amp;nbsp;Works&amp;nbsp;/&amp;nbsp;Road&amp;nbsp;Map">plane</a></span><span class="Apple-converted-space">&nbsp;</span>of the release there were made the following tasks:</p><ul style="margin-top: 0px; margin-bottom: 0px; padding-top: 0px; padding-bottom: 0px;"><li style="font-family: Verdana; font-size: 13px; line-height: 1.3em;"><em>Formation of the provision of commercial services based on OpenSCADA.</em><span class="Apple-converted-space">&nbsp;</span>- The concept is built and the mechanisms are created to provide commercial services by the developers based on OpenSCADA (<span style="color: rgb(0, 51, 153); text-decoration: none;"><a href="../en/services" title="Внешняя ссылка (откроется в новом окне)" target="_blank" class="outerlink" ><img src="http://wiki.oscada.org/themes/default/icons/web.gif" style="border-width: 0px; vertical-align: middle;" />http://oscada.org/en/services</a></span><span class="Apple-converted-space">&nbsp;</span>).</li><li style="font-family: Verdana; font-size: 13px; line-height: 1.3em;"><em>Adaptation of OpenSCADA to work on the ARM hardware platform.</em><span class="Apple-converted-space">&nbsp;</span>- The building, adaptation and full testing of OpenSCADA on the ARM architecture is made on the<span class="Apple-converted-space">&nbsp;</span><span style="color: rgb(0, 51, 153); text-decoration: none;"><a href="http://en.wikipedia.org/wiki/Nokia_N800" title="Внешняя ссылка (откроется в новом окне)" target="_blank" class="outerlink" ><img src="http://wiki.oscada.org/themes/default/icons/web.gif" style="border-width: 0px; vertical-align: middle;" />N800</a></span><span class="Apple-converted-space">&nbsp;</span>Internet tablet of the<span class="Apple-converted-space">&nbsp;</span><span style="color: rgb(0, 51, 153); text-decoration: none;"><a href="http://en.wikipedia.org/wiki/Nokia" title="Внешняя ссылка (откроется в новом окне)" target="_blank" class="outerlink" ><img src="http://wiki.oscada.org/themes/default/icons/web.gif" style="border-width: 0px; vertical-align: middle;" />Nokia</a></span><span class="Apple-converted-space">&nbsp;</span>company (<span style="color: rgb(0, 51, 153); text-decoration: none;"><a href="http://wiki.oscada.org/Works/Tests/ARM" target="_blank" class="outerlink" >http://wiki.oscada.org/Works/Tests/ARM</a></span><span class="Apple-converted-space">&nbsp;</span>(RU)). As well as private activities for adaptation:<ul style="margin-top: 0px; margin-bottom: 0px; padding-top: 0px; padding-bottom: 0px;"><li style="font-family: Verdana; font-size: 13px; line-height: 1.3em;"><em>SYS</em>: Functions' prototypes TMess::put(), TMess::get(), TCntrNode::grpSize(), TCntrNode::grpId(), TCntrNode::grpAt() are changed to correct the usage of an unsigned type &quot;char&quot; on the ARM as a signed.</li><li style="font-family: Verdana; font-size: 13px; line-height: 1.3em;"><em>SYS.TVariant, DAQ.AMRDevs, DAQ.OPC_UA</em>: The not aligned access to data is fixed.</li><li style="font-family: Verdana; font-size: 13px; line-height: 1.3em;"><em>SYS.TCntrNode</em>: The usage of an unsigned type &quot;char&quot; on the ARM as a signed is fixed.</li><li style="font-family: Verdana; font-size: 13px; line-height: 1.3em;"><em>Archive</em>: Functions' prototypes TArchiveS::messPut() and TArchiveS::messGet() are changed to correct variable of the message level as a signed number.</li><li style="font-family: Verdana; font-size: 13px; line-height: 1.3em;"><em>DAQ.JavaLikeCalc</em>: Virtual Machine is rewritten for direct using the structures of commands to avoid alignment problems, as well as for some increasing of productivity.</li><li style="font-family: Verdana; font-size: 13px; line-height: 1.3em;"><em>DAQ.Siemens</em>: The problem of the NoDave library for a global packing structures command calling &quot;#pragma pack(1)&quot; is fixed.</li><li style="font-family: Verdana; font-size: 13px; line-height: 1.3em;"><em>UI.QTCfg</em>: The short time sleep after closing all windows in the switch off function is added. In order to provide the time for the object of all the windows to be finally destroyed and to prevent crashing.</li></ul></li></ul><p class="bodytext"><span style="color: rgb(0, 51, 153); text-decoration: none;"><a name="h1053-4"></a></span></p>
<h2 style="margin: 20px 0px 5px; padding: 0px; font-family: Verdana; font-size: 20px; border-bottom: 3px dotted rgb(221, 221, 221);">2 Optimization, stability, sustainability and system performance increasing</h2>
<p id="p76556-8" style="font-family: Verdana; font-size: 13px; line-height: 1.3em; margin: 0px; padding: 0px;" class="indent10 auto align-justify">During the work on this version, as well as its practical adaptation, it was discovered and corrected in a total of about 90 errors. In general, work has been done on cleaning code from the compiler's warnings with the &quot;-Wall&quot; flag:</p><ul style="margin-top: 0px; margin-bottom: 0px; padding-top: 0px; padding-bottom: 0px;"><li style="font-family: Verdana; font-size: 13px; line-height: 1.3em;">unused variables removing;</li><li style="font-family: Verdana; font-size: 13px; line-height: 1.3em;">adding the return in the all functions;</li><li style="font-family: Verdana; font-size: 13px; line-height: 1.3em;">initialization of variables with the possibility of their undefined using;</li><li style="font-family: Verdana; font-size: 13px; line-height: 1.3em;">exception of the incomplete handling of the enumeration types in the select operation;</li><li style="font-family: Verdana; font-size: 13px; line-height: 1.3em;">comparison between signed with unsigned integer.</li></ul><p id="p76556-9" style="font-family: Verdana; font-size: 13px; line-height: 1.3em; margin: 0px; padding: 0px;" class="indent10 auto align-justify">Lets list the most significant errors correction of which significantly affected the increasing of stability:</p><ul style="margin-top: 0px; margin-bottom: 0px; padding-top: 0px; padding-bottom: 0px;"><li style="font-family: Verdana; font-size: 13px; line-height: 1.3em;"><em>System-wide:</em><ul style="margin-top: 0px; margin-bottom: 0px; padding-top: 0px; padding-bottom: 0px;"><li style="font-family: Verdana; font-size: 13px; line-height: 1.3em;">The command of the building system &quot;$ make dist&quot; is corrected and adapted to correct creation of the OpenSCADA distributions.</li><li style="font-family: Verdana; font-size: 13px; line-height: 1.3em;">The TSYS::cron() function to call on the schedule is repeatedly corrected.</li><li style="font-family: Verdana; font-size: 13px; line-height: 1.3em;">The variable type to store the result of the find() function, the string, is everywhere changed to the correct one &quot;size_t&quot;.</li><li style="font-family: Verdana; font-size: 13px; line-height: 1.3em;"><em>Function</em>: The possibility of a memory leak when attempting to set the object to a non-object function's parameter is excluded.</li></ul></li><li style="font-family: Verdana; font-size: 13px; line-height: 1.3em;"><em>Data bases:</em><ul style="margin-top: 0px; margin-bottom: 0px; padding-top: 0px; padding-bottom: 0px;"><li style="font-family: Verdana; font-size: 13px; line-height: 1.3em;"><em>DB.PostgreSQL</em>: The handling of database address to determine the empty fields is fixed.</li></ul></li><li style="font-family: Verdana; font-size: 13px; line-height: 1.3em;"><em>Transports and protocols:</em><ul style="margin-top: 0px; margin-bottom: 0px; padding-top: 0px; padding-bottom: 0px;"><li style="font-family: Verdana; font-size: 13px; line-height: 1.3em;"><em>Transport</em>: The loading of transports from the database is fixed, if there are records about the transport the module of which is missing.</li><li style="font-family: Verdana; font-size: 13px; line-height: 1.3em;"><em>Transport.Serial</em>: O_NONBLOCK flag is set to open() function of a serial device to prevent the blocking of port's opening on some USB-&gt; RS485 converters.</li><li style="font-family: Verdana; font-size: 13px; line-height: 1.3em;"><em>Transport.Sockets, Transport.SSL</em>: The clearing of the input buffer is added to prevent re-use on high latency channels after timeout.</li><li style="font-family: Verdana; font-size: 13px; line-height: 1.3em;"><em>Transport.Sockets</em>: The closing of the client connection by the time out of the lifetime for connections in the case of the data absence is fixed.</li><li style="font-family: Verdana; font-size: 13px; line-height: 1.3em;"><em>Transport.Sockets</em>: Unix-socket is set to nonblocking mode by the O_NONBLOCK flag. The generating of the error messages for outgoing transports is fixed.</li><li style="font-family: Verdana; font-size: 13px; line-height: 1.3em;"><em>Protocol.HTTP, UI.WebCfg, UI.WebCfgD, UI.WebVision, UI.WebUser</em>: The parsing of POST-request elements is fixed by the for parsing all the attributes of each element.</li></ul></li><li style="font-family: Verdana; font-size: 13px; line-height: 1.3em;"><em>Data acquisition and archives:</em><ul style="margin-top: 0px; margin-bottom: 0px; padding-top: 0px; padding-bottom: 0px;"><li style="font-family: Verdana; font-size: 13px; line-height: 1.3em;"><em>Archive</em>: The using of the buffer with a soft grid with low-and high-resolution time in the archives of values is fixed.</li><li style="font-family: Verdana; font-size: 13px; line-height: 1.3em;"><em>Archive.FSArch</em>: The creation of messages archive's files when you place a set of old messages is fixed. The parameter to prevent duplicates is added.</li><li style="font-family: Verdana; font-size: 13px; line-height: 1.3em;"><em>Archive.FSArch</em>: The result of the fgetc() function is recorded in an integer variable instead of a character one that has corrected the discovery of &quot;EOF&quot;.</li><li style="font-family: Verdana; font-size: 13px; line-height: 1.3em;"><em>DAQ.System</em>: The crash when exiting to the &quot;Hddtemp&quot; source is fixed.</li><li style="font-family: Verdana; font-size: 13px; line-height: 1.3em;"><em>DAQ.ModBus</em>: The setting of values of the parameter's attributes mode is changed to active and the error handling is improved.</li><li style="font-family: Verdana; font-size: 13px; line-height: 1.3em;"><em>DAQ.JavaLikeCalc</em>: The check of the index when accessing the character of the string on the index is added, in order to prevent the out of range situation.</li></ul></li><li style="font-family: Verdana; font-size: 13px; line-height: 1.3em;"><em>Visualization Interface:</em><ul style="margin-top: 0px; margin-bottom: 0px; padding-top: 0px; padding-bottom: 0px;"><li style="font-family: Verdana; font-size: 13px; line-height: 1.3em;"><em>UI.VCAEngine</em>: The blocking of the session for dynamically active projects with dynamic access to their own widget's attributes is fixed.</li><li style="font-family: Verdana; font-size: 13px; line-height: 1.3em;"><em>UI.Vision</em>: The crash of the session for projects with an execution period of more than 500 ms is fixed.</li><li style="font-family: Verdana; font-size: 13px; line-height: 1.3em;"><em>UI.Vision</em>: The fine-tuning of the coordinates of the &quot;Elementary figure&quot; primitive shapes is implemented to the remainder of the widget's position.</li><li style="font-family: Verdana; font-size: 13px; line-height: 1.3em;"><em>UI.Vision</em>: Scaling the text primitive &quot;Text&quot; is changed to change the font size instead of scaling the final image, which increased the overall quality of the display font.</li><li style="font-family: Verdana; font-size: 13px; line-height: 1.3em;"><em>UI.Vision, UI.WebVision</em>: The resolution of the coordinates is increased of all the widgets to three decimal places, in order to ensure proper positioning on a large scales.</li><li style="font-family: Verdana; font-size: 13px; line-height: 1.3em;"><em>UI.WebVision, UI.Vision</em>: The redraw of the primitive &quot;Elementary figure&quot; is fixed when the scale is changed.</li><li style="font-family: Verdana; font-size: 13px; line-height: 1.3em;"><em>UI.WebVision</em>: The validation of figures' points for their getting to the display area of the primitive &quot;Elementary figure&quot; is removed. This function is shifted to the GD library.</li><li style="font-family: Verdana; font-size: 13px; line-height: 1.3em;"><em>UI.WebVision</em>: The possibility of crashing for primitives &quot;Diagram&quot; or &quot;ElFigure&quot; is excluded in the case of transmission of incorrect values of attributes of the image &quot;xSc&quot; or &quot;ySc&quot; from a Web-browser.</li></ul></li></ul><p id="p76556-10" style="font-family: Verdana; font-size: 13px; line-height: 1.3em; margin: 0px; padding: 0px;" class="auto indent10">Optimization and performance improvement :</p><ul style="margin-top: 0px; margin-bottom: 0px; padding-top: 0px; padding-bottom: 0px;"><li style="font-family: Verdana; font-size: 13px; line-height: 1.3em;"><em>UI.WebCfgD</em>: The resizing of icons on the server side is added to reduce traffic.</li><li style="font-family: Verdana; font-size: 13px; line-height: 1.3em;"><em>UI.QTCfg</em>: The group request to the control interface is used for performance improvement on slow and high latency connections.</li><li style="font-family: Verdana; font-size: 13px; line-height: 1.3em;"><em>UI.QTCfg</em>: The multiple query of the elements of selectable table columns is excluded.</li></ul><p class="bodytext"><span style="color: rgb(0, 51, 153); text-decoration: none;"><a name="h1053-5"></a></span></p>
<h2 style="margin: 20px 0px 5px; padding: 0px; font-family: Verdana; font-size: 20px; border-bottom: 3px dotted rgb(221, 221, 221);">3 Improvement and stabilization of the graphics subsystem</h2>
<p id="p76556-11" style="font-family: Verdana; font-size: 13px; line-height: 1.3em; margin: 0px; padding: 0px;" class="indent10 auto align-justify">The notable work was made within the graphics system, namely in the VCA engine modules UI.VCAEngine, visualizers UI.Vision and UI.WebVision, as well as in the configurators. The changes were provided for stabilization, the optimization of memory consumption and improvement of user's properties.</p>
<p id="p76556-12" style="font-family: Verdana; font-size: 13px; line-height: 1.3em; margin: 0px; padding: 0px;" class="auto indent10">Improvements of the graphics subsystem:</p><ul style="margin-top: 0px; margin-bottom: 0px; padding-top: 0px; padding-bottom: 0px;"><li style="font-family: Verdana; font-size: 13px; line-height: 1.3em;"><em>SYS, DAQ.JavaLikeCalc, UI.QTCfg, UI.VCAEngine, UI.Vision</em>: The API of syntax highlighting is added. On the basis of this API the syntax highlighting is added to:<ul style="margin-top: 0px; margin-bottom: 0px; padding-top: 0px; padding-bottom: 0px;"><li style="font-family: Verdana; font-size: 13px; line-height: 1.3em;"><em>DAQ.BlockCalc</em>: syntax highlighting in description of the parameters' attributes.</li><li style="font-family: Verdana; font-size: 13px; line-height: 1.3em;"><em>DAQ.JavaLikeCalc</em>: syntax highlighting for the compiler of the JavaLikeCalc.JavaScript language, as well as for all text fields using the language inside the module.</li><li style="font-family: Verdana; font-size: 13px; line-height: 1.3em;"><em>DAQ.ModBus, DAQ.OPC_UA</em>: syntax highlighting of the attributes' list.</li><li style="font-family: Verdana; font-size: 13px; line-height: 1.3em;"><em>Protocol.UserProtocol</em>: syntax highlighting to the text of the protocol's procedures.</li><li style="font-family: Verdana; font-size: 13px; line-height: 1.3em;"><em>UI.QTCfg</em>: multilevel syntax highlighting displaying, transmitted from the data model in the form of the rules of regular expressions.</li><li style="font-family: Verdana; font-size: 13px; line-height: 1.3em;"><em>UI.VCAEngine</em>: syntax highlighting for text attributes of the widget's primitives for which this is necessary.</li><li style="font-family: Verdana; font-size: 13px; line-height: 1.3em;"><em>UI.Vision</em>: syntax highlighting for text attributes of the widget's primitives, as well as for the texts of the widgets' programs.</li><li style="font-family: Verdana; font-size: 13px; line-height: 1.3em;"><em>UI.WebUser</em>: syntax highlighting in the procedures for constructing the Web-based interface.</li></ul></li><li style="font-family: Verdana; font-size: 13px; line-height: 1.3em;"><em>UI.QTCfg</em>:<ul style="margin-top: 0px; margin-bottom: 0px; padding-top: 0px; padding-bottom: 0px;"><li style="font-family: Verdana; font-size: 13px; line-height: 1.3em;">The ability to manual change the height of the text and table fields. Change is made by grasping and dragging the bottom edge of the field.</li><li style="font-family: Verdana; font-size: 13px; line-height: 1.3em;">Group request &quot;CntrReqs&quot; is used to query the page's context.</li></ul></li><li style="font-family: Verdana; font-size: 13px; line-height: 1.3em;"><em>UI.VCAEngine</em>: The specific properties of the attributes of primitives are added, such as help and syntax highlighting.</li><li style="font-family: Verdana; font-size: 13px; line-height: 1.3em;"><em>UI.Vision</em>:<ul style="margin-top: 0px; margin-bottom: 0px; padding-top: 0px; padding-bottom: 0px;"><li style="font-family: Verdana; font-size: 13px; line-height: 1.3em;">The display of help for the widget's attributes is added.</li><li style="font-family: Verdana; font-size: 13px; line-height: 1.3em;">The display of message about loss of connection with the visualization server and its recovery is added for remote visualization.</li><li style="font-family: Verdana; font-size: 13px; line-height: 1.3em;">For the &quot;Elementary figure&quot; primitive the dialog to set properties for the separately selected figures is added.</li><li style="font-family: Verdana; font-size: 13px; line-height: 1.3em;">The separate full-text editor for text attributes is added.</li></ul></li><li style="font-family: Verdana; font-size: 13px; line-height: 1.3em;"><em>UI:WebVision</em>: The support for gif and jpg images in the elements of the &quot;Elementary figure&quot; primitive is added.</li></ul><p class="bodytext"><span style="color: rgb(0, 51, 153); text-decoration: none;"><a name="h1053-6"></a></span></p>
<h2 style="margin: 20px 0px 5px; padding: 0px; font-family: Verdana; font-size: 20px; border-bottom: 3px dotted rgb(221, 221, 221);">4 Formation and stabilization of the user programming API</h2>
<p id="p76556-13" style="font-family: Verdana; font-size: 13px; line-height: 1.3em; margin: 0px; padding: 0px;" class="indent10 auto align-justify">It was continued the development of object API of the user programming, which provides the integration of user's functions in the object's tree of OpenSCADA. In addition, a number of changes was made to the existing library of the user's API functions.</p>
<p id="p76556-14" style="font-family: Verdana; font-size: 13px; line-height: 1.3em; margin: 0px; padding: 0px;" class="auto indent10">In particular the following changes were made:</p><ul style="margin-top: 0px; margin-bottom: 0px; padding-top: 0px; padding-bottom: 0px;"><li style="font-family: Verdana; font-size: 13px; line-height: 1.3em;"><em>SYS</em>: User's API for the TArrayObj object is extended for the possibility of using object properties if the properties are not the numbers.</li><li style="font-family: Verdana; font-size: 13px; line-height: 1.3em;"><em>SYS</em>: In the object tree of OpenSCADA of the user's API the SYS.Security.access() function is added to control user access to OpenSCADA resources with the necessary privileges.</li><li style="font-family: Verdana; font-size: 13px; line-height: 1.3em;"><em>SYS, DAQ.JavaLikeCalc</em>: The implementetion of the support for regular expressions of user's API, based on PCRE, through the TRegExp object is added. The interface of functions RegExp.exec() and RegExp.test() is implemented in the standard for the JavaScript language. The &quot;new RegExp()&quot; initialization of the TRegExp object is implemented for the DAQ.JavaLikeCalc. The additional functions using RegExp: int search(); Array match(); Array split(RegExp pat, int limit); string replace(string substr, string str); string replace(RegExp pat, string str) are implemented for DAQ.JavaLikeCalc.</li><li style="font-family: Verdana; font-size: 13px; line-height: 1.3em;"><em>TFunction, DAQ.JavaLikeCalc</em>: The user's API object &quot;TFuncArgObj&quot; is added for function arguments get.</li><li style="font-family: Verdana; font-size: 13px; line-height: 1.3em;"><em>DB</em>: The following functions of the user's API are added: fieldStruct(), fieldSeek(), fieldGet(), fieldSet() and fieldDel() for thetable object to provide the user access to the database through the database interface OpenSCADA.</li><li style="font-family: Verdana; font-size: 13px; line-height: 1.3em;"><em>DAQ.JavaLikeCalc</em>: The built-in function typeof() to check the value's type is added.</li></ul><p class="bodytext"><span style="color: rgb(0, 51, 153); text-decoration: none;"><a name="h1053-7"></a></span></p>
<h2 style="margin: 20px 0px 5px; padding: 0px; font-family: Verdana; font-size: 20px; border-bottom: 3px dotted rgb(221, 221, 221);">5 System-wide expansions</h2>
<p id="p76556-15" style="font-family: Verdana; font-size: 13px; line-height: 1.3em; margin: 0px; padding: 0px;" class="indent10 auto align-justify">To the system-wide API of the OpenSCADA system there have been made the significant changes and extensions with the purpose of the general stabilization and in view of the general measures for cleaning the source code and reorganizing the sources' tree:</p><ul style="margin-top: 0px; margin-bottom: 0px; padding-top: 0px; padding-bottom: 0px;"><li style="font-family: Verdana; font-size: 13px; line-height: 1.3em;"><em>SYS</em>:<ul style="margin-top: 0px; margin-bottom: 0px; padding-top: 0px; padding-bottom: 0px;"><li style="font-family: Verdana; font-size: 13px; line-height: 1.3em;">The new structure of the sources tree is implemented.</li><li style="font-family: Verdana; font-size: 13px; line-height: 1.3em;">All the resources of the project are moved to the separate archive.</li><li style="font-family: Verdana; font-size: 13px; line-height: 1.3em;">To create sources' and resources' archives you can use the command &quot;$ make dist-lzma&quot; and &quot;$ make dist-reslzma&quot;.</li><li style="font-family: Verdana; font-size: 13px; line-height: 1.3em;">Documentation is made the static for modules and is divided by languages. For each documentation language it is formed the separate package. In the documentation of each language it is created an index file for the entire list of local and network documentation. The total list of local documentation is greatly expanded with new documents, as well as with the supported network documentation.</li><li style="font-family: Verdana; font-size: 13px; line-height: 1.3em;">The packages of librarian databases are added: *-LibDB.Main and *-LibDB.VCA, they are placed to data/LibsDB.</li><li style="font-family: Verdana; font-size: 13px; line-height: 1.3em;">Instead of the DemoDB package the packages of the &quot;AGLKS&quot; and &quot;Boiler&quot; models are added and placed to the data/ModelsDB.</li><li style="font-family: Verdana; font-size: 13px; line-height: 1.3em;">Configuration files to build RPM and DEB packages have been updated.</li><li style="font-family: Verdana; font-size: 13px; line-height: 1.3em;">Dependence on the library PCRECPP is globally replaced by PCRE.</li><li style="font-family: Verdana; font-size: 13px; line-height: 1.3em;">The new function TSYS::time2str() is added to convert time intervals into a string like &quot;1hour 23min 10sec&quot;. This function is used everywhere.</li><li style="font-family: Verdana; font-size: 13px; line-height: 1.3em;">The implementation of own XML-parser is added, instead of Expat. The own XML-parser solves the problem of supporting different character sets other than UTF, as well as the problem of safe handling the situation of the characters presence that are not valid for the current character encoding.</li></ul></li><li style="font-family: Verdana; font-size: 13px; line-height: 1.3em;"><em>SYS.TMess</em>: Common control interface messages are moved into one TMess::lab* function.</li><li style="font-family: Verdana; font-size: 13px; line-height: 1.3em;"><em>Transport, Transport.*</em>: The function TTransportS::traf2str() is added to convert the value of the traffic's counter to the string like &quot;12.5KiB&quot;.</li></ul><p class="bodytext"><span style="color: rgb(0, 51, 153); text-decoration: none;"><a name="h1053-8"></a></span></p>
<h2 style="margin: 20px 0px 5px; padding: 0px; font-family: Verdana; font-size: 20px; border-bottom: 3px dotted rgb(221, 221, 221);">Conclusion</h2>
<p id="p76556-16" style="font-family: Verdana; font-size: 13px; line-height: 1.3em; margin: 0px; padding: 0px;" class="indent10 auto align-justify">The OpenSCADA system gets the push for the implementation of real hardware multiplatform, whereby the project's code has been largely cleaned up and made multiplatform. These developments will enable the project to continue moving toward the hardware multiplatform, as well as the implementation of the program multiplatform that is scheduled after the next LTS release 0.8.0.</p>
<p id="p76556-17" style="font-family: Verdana; font-size: 13px; line-height: 1.3em; margin: 0px; padding: 0px;" class="indent10 auto align-justify">Work also is continued on improving the overall functionality, simplicity and ease of using with the general improvement of the quality of service based on the OpenSCADA system.</p>]]></content:encoded>
			<category>News</category>
			<category>Release</category>
			
			<author>rom_as@oscada.org</author>
			<pubDate>Wed, 13 Apr 2011 20:00:00 +0300</pubDate>
			
		</item>
		
		<item>
			<title>OpenSCADA accepted to QT Ambassador Program</title>
			<link>http://qt.nokia.com/qt-in-use/ambassadors/project?id=a0F20000006Jwf4EAC</link>
			<description>OpenSCADA project is accepted to participation in QT Ambassador programm.</description>
			<content:encoded><![CDATA[]]></content:encoded>
			<category>News</category>
			<category>Publication</category>
			
			<author>rom_as@oscada.org</author>
			<pubDate>Thu, 17 Feb 2011 13:38:00 +0200</pubDate>
			
		</item>
		
	</channel>
</rss>
