Warszawa dnia 15.02.2001r.

HE_DDE VER. 1.0

INSTRUKCJA

 


TIGER-SOFT

UL. Wiązana 28B

04-680 Warszawa

tel./fax (0-22) 615-89-84

e-mail: tiger-soft@tiger-soft.com.pl

www: www.tiger-soft.com.pl


 

Spis treści

1) Wstęp
2) Instalacja programu i wklejenie kontrolki
3) Konfiguracja HE_DDE
4) Odczyt danych z XBS
5) Obsługa błędów
6) Współpraca z Intellution iFix
 


    1) Wstęp                                                                                

        HE_DDE ver. 1.0 jest kontrolką ActiveX umożliwiającą współpracę systemu Honeywell XBS z dowolnym innym programem posiadającym możliwość używania technologii ActiveX. Podstawowe cechy programu to:

      1. Możliwość odczytu punktów analogowych i cyfrowych z programu Honeywell XBS.
      2. Użycie technologii ActiveX daje możliwość wykorzystanie kontrolki do odczytu danych w różnych programach np. Microsoft Excel, Microsoft Internet Explorer, Intellution iFix.
      3. Wykorzystanie mechanizmu DDE do komunikacji z systemem XBS.
      4. Łatwość obsługi programu.

 

    2) Instalacja programu i wklejenie kontrolki

        W celu zainstalowania programu należy uruchomić program HE_DDE_INSTALACJA.exe. Program instalacyjny instaluje w systemie kontrolkę He_dde.ocx. Aby mieć możliwość używania kontrolki należy wkleić obiekt OLE (ActiveX) tego typu do swojego programu mającego czytać informację z XBS.

     

    3) Konfiguracja HE_DDE

        W komunikacji z XBS używany jest protokół DDE. W celu skonfigurowania HE_DDE należy podaj czas jaki kontrolka czeka na odpowiedź z XBS. Parametr ten ma nazwę timeout i jest podawany w ms. Domyślna wartość tego parametru wynosi 10000 ms. W celu poprawnego funkcjonowania programu na komputerze musi być zainstalowane oprogramowanie Honeywell XBS z serwerem DDE firmy Honeywell tzn. programem XGCCUS.EXE.

     

    4) Odczyt danych z XBS

        Aby odczytać dane z programu XBS należy użyć funkcji HEReadPoint(point). Argument funkcji point jest ciągiem znaków określającym nazwę punktu zdefiniowaną w systemie XBS. Funkcja powinna być używana zarówno do odczytu danych analogowych jak i cyfrowych. Użycie powyższej funkcji ilustruje przykład stworzony w Visual Basicu

                        x = He_dde1.HEReadPoint("TEMP.PIECA")

    W odpowiedzi HEReadPoint(point) zwraca tablicę x zawierającą następujące dane:

    a) dla punktu analogowego

       x(0) - nazwa punkt
       x(1) - wartość punktu
       x(2) - nazwa jednostki inżynierskiej
       x(3) - stan pracy (automatic/manual)
       x(4) - dostępność punktu (yes/no)
       x(5) - stan alarmu (yes/no)
       x(6) -  alarm stłumiony (yes/no)
       x(7) - dolny poziom alarmowy
       x(8) - nazwa jednostki inżynierskiej dla dolnego poziomu alarmowego
       x(9) - dolny poziom ostrzegawczy
       x(10) - nazwa jednostki inżynierskiej dla dolnego poziomu ostrzegawczego
       x(11) - górny poziom ostrzegawczy
       x(12) - nazwa jednostki inżynierskiej dla górnego poziomu ostrzegawczego
       x(13) -górny poziom alarmowy
       x(14) - nazwa jednostki inżynierskiej dla górnego poziomu alarmowego
       x(15) - rodzaj punktu (0- analogowy 1-cyfrowy)

    b) dla punktu cyfrowego

       x(0) - nazwa punkt
       x(1) - tekst określający status punktu
       x(2) - stan pracy (automatic/manual)
       x(3) - dostępność punktu (yes/no)
       x(4) - stan alarmu (yes/no)
       x(5) -  alarm stłumiony (yes/no)
       x(6) - dostępny w runtime
       x(7) - długość przerwy serwisowej
       x(8) - ilość godzin od ostatniego przeglądu serwisowego
       x(9) - zakumulowany runtime
       x(10) - licznik cykli
       x(15) - rodzaj punktu (0- analogowy 1-cyfrowy)

     

    5) Obsługa błędów

        HE_DDE posiada właściwość zwaną Status. Jeśli wszystkie bity w statusie są równe zero, czyli Status = 0 to znaczy, że nie wystąpiły żadne błędy. Ustawiony bit:

                            1 - oznacza błąd inicjalizacji DDE
                            2 - błąd połączenia z serwerem DDE
                    3 - nieudaną transakcję DDE

    Przykład zastosowania statusu znajduje się w następnym punkcie.

     

    6) Współpraca z Intellution iFix

             Kontrolka HE_DDE może być używana do przekazywania danych z XBS do programu Intellution iFix. Poniższe przykłady prezentują sposób wpisania wartości odczytanych z XBS do punktów bazy danych w iFix.

            a) dla punktu analogowego a1

                    Private Sub CommandButton1_Click()

                            Dim x As Variant

                            x = He_dde1.HEReadPoint("TEMP.PIECA")

                    If (He_dde1.Status = 0) then
                               Fix32.Fix.a1.a_desc = x(0)
                                Fix32.Fix.a1.f_cv = x(1)
                                Fix32.Fix.a1.a_egudesc = x(2)
                                Fix32.Fix.a1.f_lolo = x(7)
                                Fix32.Fix.a1.f_lo = x(9)
                                Fix32.Fix.a1.f_hi = x(11)
                                Fix32.Fix.a1.f_hihi = x(13)
                   End If

                   End Sub

     

            b) dla punktu cyfrowego c1

                    Private Sub CommandButton2_Click()

                            Dim x As Variant

                            x = He_dde1.HEReadPoint("PIEC.WLACZ")

                    If (He_dde1.Status = 0) Then
                               Fix32.Fix.c1.a_desc = x(0)
                                If (x(1) = "NORMAL") Then
                                    Fix32.Fix.c1.f_cv = 1
                                Else
                                    Fix32.Fix.c1.f_cv = 0
                                End If
                    End If

                    End Sub