/docs/MyDocs

To get this branch, use:
bzr branch http://darksoft.org/webbzr/docs/MyDocs

« back to all changes in this revision

Viewing changes to Administration/DAQ/Zeus/zeus.txt

  • Committer: Suren A. Chilingaryan
  • Date: 2009-04-09 03:21:08 UTC
  • Revision ID: csa@dside.dyndns.org-20090409032108-w4edamdh4adrgdu3
import

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
Zeus
 
2
====
 
3
1. Normally it works, but configuration process have number of issues.
 
4
    a) Overall
 
5
        + No adequate error reporting. Just a codes from Windows....
 
6
        + In the case of access problems may hugely slow down whole system.
 
7
        Additionaly at that moments it is practically impossible to terminate
 
8
        Zeus application.
 
9
        + Several times during configuration & operation the DB was damaged.
 
10
        And only recreating helped (caused by VMWare? Not properly closed?).
 
11
    d) Database
 
12
        Quite strange system of database configuration. First of all it should
 
13
        be configured on the ODBC sources. Additionaly the appropriate ODBC
 
14
        source should be specified at db.lib/db.udl. However, admin interface
 
15
        and Zeus itself handles a database in a different way.
 
16
        Admin interface) Ignores the database specified at ODBC sources and
 
17
        utilizes the name of the used source. 
 
18
        Zeus) Uses database specified in ODBC source...
 
19
    c) Configurator
 
20
        + Changing of ItemName leads to change of QueryName
 
21
        + If block not added after addition of query - the last is lost
 
22
        + Sometimes using 127.0.0.1 address for data socket ends up with
 
23
        Invalid Address (54) error.
 
24
        + On some systems (My Virual Win 2000) the configurator timed out
 
25
        trying to connect data socket server. It is impossible to set up
 
26
        appropriate timeout from LabVIEW sources, since the configuration
 
27
        option is not available.
 
28
        + All elements ids should be sequential, without gaps, otherwise
 
29
        ZEUS will crash!
 
30
        
 
31
2. Localisation issue. The architecture of LabVIEW system don't allow to make
 
32
run-time localisation. Only export current interface in text - translate it -
 
33
and import back.
 
34
 
 
35
3. Error codes
 
36
    54 - Invalid address
 
37
    56 - Timeout
 
38
 
 
39
 
 
40
Database
 
41
========
 
42
 1. There is a bug in interaction of the "NI Database Connectibity", MyODBC
 
43
 and MySQL client library. After several reconnections to the database
 
44
 the LabVIEW application is crashing.
 
45
    a) Checked all available versions of MySQL client library and MyODBC (both
 
46
    3 and 5 (alfa) branches).
 
47
 2. MSSQL server is performing well. However, there are also some funny stuff
 
48
 available.
 
49
    a) It is not possible to delete current database. If you really want to do
 
50
    it from ZEUS, you need to rename database and then delete.
 
51
    b) The renaming can lead to strange results. 
 
52
     1. Then asked to create database, MSSQL creates a file (with requested 
 
53
     name) and associates this file with the provided name in the system table.
 
54
     2. Then asked to rename table, MSSQL is only changing associated name in
 
55
     the system table, but leaves the name of file the same.
 
56
     3. If we now want to recreate table, the 'CREATE DATABASE' command will
 
57
     fail complaining about being not able to create all necessary elements.
 
58
     This is because it tries to create the file, but file is already exists
 
59
     and belongs to renamed database, and this clever many-thousand-dollar 
 
60
     application can't select different name automatically. 
 
61
     4. So create the database with a different name (appending the date to 
 
62
     the database name for example) and then rename to appropriate name.
 
63
     
 
64
Connections handling
 
65
====================
 
66
 1. Multi-URL is only supported by OPC. 
 
67
  a) In this case the data block will be combined as a sequence of values 
 
68
  returned by each of configured URL.
 
69
  b) All URLS withing single OPC source should lead to the same serer (it will
 
70
  be not very dificult to eleminate thise limitation)
 
71
 
 
72
 2. For cFP connections (single URL within OPC source is allowed): If we have 
 
73
 several OPC sources referencing the same server (server and port, actually) 
 
74
 they woulld be optimized to use a single connection.
 
75
    a) Only cFP, this not work with OPC (and other data socket based) 
 
76
    connections.
 
77
  
 
78
 3. "Data Socket" connection tracking.
 
79
    a) For OPC sources the "Data Socket" don't see broken connections. It uses
 
80
    simple subscription mechanism, and if connection becomes broken it just 
 
81
    stops receiving update callbacks and think that there is no value changes.
 
82
     1. The last obtained value is returned by 'Read' call.
 
83
     2. The connection is nether restored
 
84
    b) To handle such situtations 'must_update' filed of 'opc' table is 
 
85
    introduced. It specifies how often (in milliseconds) the item should 
 
86
    change value. If value is not changed in the specified interval, the 
 
87
    connection assumed broken. The 0 (default) specifies what we don't care.
 
88
 
 
89
 4. "Data Socket" update time.
 
90
     a) Specifies a last time when the value was actually changed. If the same
 
91
     value was written in the OPC item, it will not be noticed as a OPC item
 
92
     update.
 
93
     
 
94
 
 
95
 
 
96
 
 
97
Notes
 
98
=====
 
99
 1. The DataSocket server contains all current values of OPC connections.
 
100