ITAN20090055A1 - SYSTEM FOR SIGNAL ACQUISITION AND AUTOMATIC REACTION IN SAFETY SYSTEMS - Google Patents

SYSTEM FOR SIGNAL ACQUISITION AND AUTOMATIC REACTION IN SAFETY SYSTEMS Download PDF

Info

Publication number
ITAN20090055A1
ITAN20090055A1 IT000055A ITAN20090055A ITAN20090055A1 IT AN20090055 A1 ITAN20090055 A1 IT AN20090055A1 IT 000055 A IT000055 A IT 000055A IT AN20090055 A ITAN20090055 A IT AN20090055A IT AN20090055 A1 ITAN20090055 A1 IT AN20090055A1
Authority
IT
Italy
Prior art keywords
kernel
subsystem
devices
driver
interface
Prior art date
Application number
IT000055A
Other languages
Italian (it)
Inventor
Nazzareno Graziosi
Franco Parisella
Giuliano Sigismondi
Original Assignee
Isi Holding S R L
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Isi Holding S R L filed Critical Isi Holding S R L
Priority to ITAN2009A000055A priority Critical patent/IT1395439B1/en
Publication of ITAN20090055A1 publication Critical patent/ITAN20090055A1/en
Application granted granted Critical
Publication of IT1395439B1 publication Critical patent/IT1395439B1/en

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/20Software design
    • G06F8/24Object-oriented

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Control Of Position, Course, Altitude, Or Attitude Of Moving Bodies (AREA)

Description

DESCRIZIONE DESCRIPTION

“Sistema per l’acquisizione di segnale e la reazione automatica in sistemi di sicurezza†, â € œSystem for signal acquisition and automatic reaction in security systemsâ €,

TESTO DELLA DESCRIZIONE TEXT OF THE DESCRIPTION

La presente invenzione riguarda i sistemi di sicurezza, ed in particolare riguarda un sistema per l’acquisizione di segnale da parte di dispositivi di sicurezza e la reazione automatica programmata su dispositivi di sicurezza. The present invention relates to safety systems, and in particular relates to a system for the acquisition of signals by safety devices and the automatic reaction programmed on safety devices.

Da molto tempo ormai i sistemi di sicurezza, soprattutto quelli dedicati al controllo di aree di media e grande estensione, sono normalmente gestiti mediante sistemi informatici, a partire da una semplice macchina più o meno dedicate per arrivare a strutture complesse di rete. Un notevole problema nel controllo e nella gestione di questo tipo di sistemi à ̈ a tutt’oggi costituito dal fatto che sovente molti dei dispositivi che vengono utilizzati nel sistema di sicurezza possono preesistere al programma di gestione, creando delle evidenti difficoltà dal punto di vista della compatibilità. Nella pratica, un sistema di sicurezza che preveda l’uso di dispositivi di rilevamento audio/video, di dispositivi di tracciamento, di dispositivi segnalazione di allarme o simili che siano già in dotazione all’ area su cui deve essere applicato il sistema, ha la necessità di acquisire nel modo più corretto possibile l’interfaccia di comunicazione con tali dispositivi. A livello informatico, tale interfaccia à ̈ garantita da software noti come driver. I driver di un dato dispositivo nascono con il dispositivo stesso, e hanno il problema di essere compatibili in modo diverso a diversi ambienti di programmazione. Questo naturalmente compromette in modo serio le possibilità di utilizzare dispositivi preesistenti per la realizzazioni di nuovi programmi di gestione di sistemi di sicurezza. For a long time now, security systems, especially those dedicated to the control of medium and large areas, have normally been managed by computer systems, starting from a simple more or less dedicated machine to get to complex network structures. A significant problem in the control and management of this type of systems is still today constituted by the fact that often many of the devices that are used in the safety system can pre-exist the management program, creating obvious difficulties from the point of view compatibility. In practice, a security system that provides for the use of audio / video detection devices, tracking devices, alarm signaling devices or the like that are already supplied to the area on which the system is to be applied, needs to acquire the communication interface with such devices as correctly as possible. At the computer level, this interface is guaranteed by software known as drivers. The drivers of a given device are born with the device itself, and have the problem of being compatible in different ways to different programming environments. This obviously seriously compromises the possibility of using pre-existing devices for the implementation of new security systems management programs.

Scopo della presente invenzione à ̈ quindi la realizzazione di un sistema che permetta l’ acquisizione di segnale tramite una pluralità di dispositivi sensori e la conseguente reazione automatica di dispositivi attuatori, in cui la comunicazione tra il sistema e i detti dispositivi sia completa ed efficace, e l interoperabilità sia garantita a prescindere dall’origine dei dispositivi stessi. The purpose of the present invention is therefore the realization of a system that allows the acquisition of a signal through a plurality of sensor devices and the consequent automatic reaction of actuator devices, in which the communication between the system and said devices is complete and effective, and interoperability is guaranteed regardless of the origin of the devices themselves.

Oggetto della presente invenzione à ̈ pertanto un sistema per l’ acquisizione del segnale da dispositivi sensori e la reazione automatica mediante dispositivi attuatori, comprendente un modulo kernel interfacciato con una interfaccia di programmazione dell’applicazione (API) comprendente un oggetto base per la realizzazione di driver di sottosistema, ed una interfaccia per ciascuna categoria di dispositivi sensori e dispositivi attuatori, detta interfaccia di programmazione dell’ applicazione consentendo la creazione di una libreria a caricamento dinamico (DLL) che ingloba detti driver di sottosistema. The object of the present invention is therefore a system for the acquisition of the signal from sensor devices and the automatic reaction by means of actuator devices, comprising a kernel module interfaced with an application programming interface (API) comprising a basic object for the realization of subsystem drivers, and an interface for each category of sensor devices and actuator devices, called application programming interface allowing the creation of a dynamic loading library (DLL) that includes said subsystem drivers.

In una forma esecutiva preferita, detti driver di sottosistema consentono la comunicazione tra un dato sottosistema di dispositivi ed il kernel del sistema secondo la presente invenzione. In a preferred embodiment, said subsystem drivers allow communication between a given subsystem of devices and the kernel of the system according to the present invention.

Ulteriori vantaggi e caratteristiche della presente invenzione risulteranno evidenti dalla seguente descrizione dettagliata di una forma esecutiva della medesima resa, a scopo esemplificativo e non limitativo, con riferimento alle tavole di disegni allegate, in cui: Further advantages and characteristics of the present invention will become evident from the following detailed description of an embodiment of the same rendering, by way of non-limiting example, with reference to the attached drawings, in which:

la figura 1 Ã ̈ un diagramma schematico raffigurante la struttura del sistema secondo la presente invenzione; Figure 1 is a schematic diagram showing the structure of the system according to the present invention;

la figura 2 Ã ̈ un diagramma schematico raffigurante la comunicazione tra due elementi del sistema secondo la presente invenzione; figure 2 is a schematic diagram showing the communication between two elements of the system according to the present invention;

la figura 3 illustra un esempio di protocollo comunicazione tra due elementi del sistema dell’invenzione; e Figure 3 illustrates an example of a communication protocol between two elements of the system of the invention; And

la figura 4 Ã ̈ un esempio di comunicazione secondo il protocollo della figura 3. figure 4 is an example of communication according to the protocol of figure 3.

Un sistema che consente l’ acquisizione di dati e segnalazioni da diversi sottosistemi di gestione periferiche e ne consente la gestione (monitoraggio e controllo) secondo politiche configurabili di azione e reazione. A system that allows the acquisition of data and signals from various peripheral management subsystems and allows their management (monitoring and control) according to configurable action and reaction policies.

Come risulterà chiaro da quanto segue, astraendo il concetto di “categoria†(di sensori e attuatori) e definendo il concetto di SID (Subsystem Intelligent Driver), il sistema secondo l’invenzione permette la gestione di unità periferiche, omogenee dal punto di vista logico, ma interfacciate al sistema tramite adattatori hardware e software completamente diversi fra loro. As it will be clear from the following, abstracting the concept of â € œcategoryâ € (of sensors and actuators) and defining the concept of SID (Subsystem Intelligent Driver), the system according to the invention allows the management of peripheral units, homogeneous from the point logically, but interfaced to the system through completely different hardware and software adapters.

I diversi dispositivi vengono raggruppati in maniera omogenea secondo gruppi di funzionalità. Ogni categoria quindi rappresenta una ben precisa funzionalità eogni dispositivo (o un intero sotto sistema) può appartenere a una o ad un insieme finito di categorie diverse. The different devices are grouped homogeneously according to groups of functionality. Each category therefore represents a very specific functionality and each device (or an entire subsystem) can belong to one or a finite set of different categories.

II sistema à ̈ realizzato per lavorare preferibilmente in un ambiente di sicurezza, antintrusione e video sorveglianza in cui si possono individuare le seguenti categorie di dispositivi logici di input / output che verranno comunque descritte più dettagliatamente in seguito. The system is designed to work preferably in a security, anti-intrusion and video surveillance environment in which the following categories of logical input / output devices can be identified, which will in any case be described in more detail below.

Digital Input: Sistema di input a due stati finiti: On, Off (ad es. Tamper, Switch, etc.) Digital Input: Two finite state input system: On, Off (e.g. Tamper, Switch, etc.)

Digital Output: Sistema di output a 2 stati finiti, (ad es. Relay) Digital Output: 2 finite state output system, (eg Relay)

Trackers: Dispositivo di tracciamento (posizione in coordinate polari o cartesiane). Trackers: Tracking device (position in polar or Cartesian coordinates).

Serial Dispositivi di comunicazione seriale Serial Serial communication devices

OCR Dispo sitivi che provvedono letture alfanumeriche estratte tramite OCR OCR Devices that provide alphanumeric readings extracted through OCR

PTZ dispositivi di puntamento PTZ relativi a brandeggi (ad ex. Quelli utilizzati per le telecamere). PTZ PTZ pointing devices related to pan / tilt (ex. Those used for cameras).

DVR Digital Video Recorders (gestori di canali di registrazione video digitale). DVR Digital Video Recorders (digital video recording channel managers).

Alarm Managers Gestori di allarmi. Alarm Managers Alarm managers.

In figura 1 viene presentato uno schema semplificato dell’ architettura che mette in luce quali sono gli strati software interessati. Il sistema, di seguito denominato SARA (Signal Acquisition and Reaction Automation) implementa un modulo Kernel indicato con 1 che si preoccupa di gestire tutti gli altri moduli secondo le direttive e le regole memorizzate nella configurazione del sistema che risiederà su database XML. Figure 1 presents a simplified scheme of the architecture which highlights the software layers involved. The system, hereinafter referred to as SARA (Signal Acquisition and Reaction Automation) implements a Kernel module indicated with 1 which takes care of managing all the other modules according to the directives and rules stored in the configuration of the system that will reside on the XML database.

Attraverso l’interfacciamento diretto con i Category Manager 101 ed il sistema di memorizzazione 201 il Kernel à ̈ in grado di mettere in atto tutte le sue funzionalità. Il kernel del sistema SARA viene sviluppato utilizzando lo strato software SARA API indicato con 2. Through direct interfacing with the Category Manager 101 and the storage system 201, the Kernel is able to implement all its functions. The SARA system kernel is developed using the SARA API software layer indicated with 2.

Tutti i driver di sotto sistema (SID) che vengono realizzati utilizzando le API saranno quindi compatibili con il Kernel. All subsystem drivers (SIDs) that are built using the API will therefore be compatible with the Kernel.

Le API del sistema SARA mettono a disposizione un oggetto base 102 che può essere “derivato†(nell’ accezione del linguaggio C del termine) per ampliarne le funzionalità e che una volta avviato (dal Kernel) diventa una unità di esecuzione indipendente (thread) che risiede nello stesso spazio di memoria dell’ SRK. The API of the SARA system provide a base object 102 which can be `` derived '' (in the C language meaning of the term) to expand its functionality and which once started (from the Kernel) becomes an independent execution unit ( thread) which resides in the same memory space as the SRK.

Oltre all’oggetto base 102 le API mettono a disposizione dello sviluppatore una interfaccia 112 (C ) per ogni categoria di sensori / attuatori che vengono individuate nel paragrafo successivo. Tali interfacce permettono l’invio di eventi al Kernel e la ricezione dei comandi di attuazione. In addition to the basic object 102, the APIs provide the developer with an interface 112 (C) for each category of sensors / actuators that are identified in the next paragraph. These interfaces allow the sending of events to the Kernel and the reception of the implementation commands.

Le API del sistema SARA consentono la creazione della DLL (libreria a caricamento dinamico) 103 che contiene il SID 3 secondo il formato compatibile ( naming , convenzione degli entrypoint) con il Kernel. The API of the SARA system allows the creation of the DLL (dynamic loading library) 103 which contains the SID 3 according to the format compatible (naming, entrypoint convention) with the Kernel.

Di seguito vengono descritte le categorie di unità logiche (sottosistemi) gestibili dal sistema SARA. Come sarà più chiaro nel seguito ogni categoria di dispositivi viene gestita attraverso un modulo unico in modo tale che il Kernel del sistema debba vedere una lista di dispositivi omogenei dal punto di vista delle funzionalità senza doversi preoccupare di sapere esattamente come colloquiare ed interconnettersi verso i diversi sottosistemi. The categories of logical units (subsystems) that can be managed by the SARA system are described below. As will be clearer in the following, each category of devices is managed through a single module so that the system Kernel must see a list of homogeneous devices from the point of view of functionality without having to worry about knowing exactly how to communicate and interconnect to the different ones. subsystems.

Digital Input Digital Input

Un “digitai input†à ̈ un dispositivo logico che permette la lettura di 2 stati: On, Off. Tale dispositivo può risiedere a livello fisico su differenti sotto sistemi. Ad esempio un digitai input può trovarsi sia interconnesso ad una centrale (Micro 5, Aritech, _ ) oppure su un video server (ad es. VideoBridge Indigo o VideoServer ACTI). A â € œdigitai inputâ € is a logical device that allows the reading of 2 states: On, Off. This device can reside physically on different subsystems. For example, a digital input can be either interconnected to a control panel (Micro 5, Aritech, _) or to a video server (eg VideoBridge Indigo or VideoServer ACTI).

Digital Output Digital Output

Un “digitai output†à ̈ un dispositivo logico che consente la attuazione di una transizione di stato su 2 stati possibili: On,Off. Tale dispositivo può risiedere a livello fisico su differenti sistemi. Ad esempio VideoBridge, Micro 5. A â € œdigitai outputâ € is a logic device that allows the implementation of a state transition on 2 possible states: On, Off. This device can reside physically on different systems. For example VideoBridge, Micro 5.

Tracker Tracker

Un Tracker (TRK) à ̈ un dispositivo logico che produce un insieme di coordinate relative ad uno od un insieme di oggetti da esso individuati (radar, sonar). Un sistema di questo tipo di solito invia le coordinate dell’oggetto secondo un riferimento cartesiano o polare. A Tracker (TRK) is a logical device that produces a set of coordinates relating to one or a set of objects identified by it (radar, sonar). A system of this type usually sends the coordinates of the object according to a Cartesian or polar reference.

Serial Serial

Un dispositivo Serial à ̈ un gestore di porte seriali che possono risiedere su un videobridge, su un terminal server o direttamente sulla macchina. A Serial device is a manager of serial ports that can reside on a videobridge, on a terminal server or directly on the machine.

OCR OCR

Un sistema a lettura OCR può essere un dispositivo più o meno complesso che consente l’ estrazione di una o più stringhe a partire da immagini digitali. Il sistema SARA, in relazione a questo modulo, si occupa semplicemente di acquisire i dati relativi alla lettura OCR effettuata dal sottosistema. Tale lettura potrà consistere in una o in un insieme di stringhe in base alla tipologia di varco: ad esempio un sottosistema di lettura OCR può effettuare la lettura della sola targa frontale di veicoli, oppure effettuare letture più complesse come la scansione di codici ISO di containers. An OCR reading system can be a more or less complex device that allows the extraction of one or more strings from digital images. The SARA system, in relation to this module, simply takes care of acquiring the data relating to the OCR reading carried out by the subsystem. This reading may consist of one or a set of strings based on the type of gate: for example, an OCR reading subsystem can only read the front plate of vehicles, or perform more complex readings such as scanning the ISO codes of containers. .

PTZ PTZ

Un dispositivo logico di tipo PTZ à ̈ un attuatore che consiste in un giunto mobile che imposta il proprio posizionamento secondo una terna di coordinate PTZ: Pan, tilt, Zoom o anche tramite una sola delle tre: Il dispositivo à ̈ tipico dei sistemi di brandeggio di antenne e telecamere. L’interconnessione fisica di un dispositivo di questo tipo verso il sistema SARA A logic device of the PTZ type is an actuator that consists of a movable joint that sets its own positioning according to a triad of PTZ coordinates: Pan, tilt, Zoom or even through only one of the three: The device is typical of pan and tilt systems of antennas and cameras. The physical interconnection of a device of this type to the SARA system

verrà mascherata attraverso l’apposito driver. it will be masked through the appropriate driver.

DVR I Digital Video Recorder sono unità che consentono la registrazione di flussi video in formato digitale DVR The Digital Video Recorders are units that allow the recording of video streams in digital format

Alarm Manager Alarm Manager

A questa categoria appartengono quei sottosistemi che permettono la gestione di allarmi, ovvero realizzano le seguenti funzionalità: To this category belong those subsystems that allow the management of alarms, that is, they realize the following functions:

- Organizzazione degli allarmi per zone di allerta - Organization of alarms by alert areas

- Abilitazione delle zone di allerta - Enabling of alert areas

- Disabilitazione delle zone di allerta - Disabling the warning zones

- Memorizzazione allarmi su database - Alarms storage on database

Gestione dello stato logico deH’ allarme: Attivo, Riconosciuto, etc. Management of the logical state of the alarm: Active, Acknowledged, etc.

- Assegnazione degli allarmi ad uno o ad un gruppo di operatori che ne possono effettuare la transizione di stato - Visualizzazione degli allarmi su un quadro sinottico integrato - Assignment of alarms to one or a group of operators who can make the transition of state - Display of alarms on an integrated synoptic panel

- Gestione degli utenti del sistema - System user management

Un sistema di questo genere à ̈ ad esempio Secure Perfect. Se tale sottosistema à ̈ interconnesso in maniera diretta verso alte sorgenti di segnalazione gli allarmi generati da queste ultime possono essere intercettate ed inoltrate al sistema SARA che ne farà l’uso che più ritiene opportuno in base aH’insieme di regole che sono state definite in sede di configurazione del sistema. A system of this kind is for example Secure Perfect. If this subsystem is interconnected directly to other signaling sources, the alarms generated by the latter can be intercepted and forwarded to the SARA system, which will make the use it deems most appropriate based on the set of rules that have been defined when configuring the system.

Un Alarm Manager à ̈ anche un sottosistema che gestisce dispositivi che consentono l’individuazione e l’inoltro verso altre unità di allarmi. Un dispositivo del genere à ̈ capace di inviare a sistemi esterni una struttura dati del tipo AlarmCode : Codice allarme An Alarm Manager is also a subsystem that manages devices that allow detection and forwarding to other alarm units. Such a device is capable of sending a data structure of the type AlarmCode: Alarm code to external systems

Timestamp : Istante temporale di generazione deH’ allarme Description : Descrizione testuale allarme generato. Timestamp: Time instant of alarm generation Description: Textual description of the alarm generated.

Come detto precedentemente le API di SARA mettono a disposizione dello sviluppatore dei SID anche l' infrastruttura necessaria per la creazione della DLL che incapsula il SID. As previously mentioned, the SARA API also makes available to the SID developer the necessary infrastructure for the creation of the DLL that encapsulates the SID.

Secondo lo schema di figura 2 ci sarà un entrypoint 203 per ogni interfaccia 112 che viene estesa dallo sviluppatore del SID ed un entrypoint 303 per l’interfaccia base 102. According to the diagram in figure 2 there will be an entrypoint 203 for each interface 112 which is extended by the SID developer and an entrypoint 303 for the base interface 102.

il componente SID 3 realizzato, inglobato nella libreria a caricamento dinamico (DLL) 103, esporrà verso L esterno una serie di punti di accesso (entrypoints) 203, 303 che il Kernel 1 del sistema SARA sarà in grado di collegare in maniera dinamica ai moduli che necessitano di ascoltare gli eventi tramite callbacks e di inviare comandi tramite metodi asincroni, tramite dei puntatori di interfaccia 301. the realized SID 3 component, incorporated in the dynamic loading library (DLL) 103, will expose to the outside a series of access points (entrypoints) 203, 303 that the Kernel 1 of the SARA system will be able to dynamically connect to the modules which need to listen for events via callbacks and to send commands via asynchronous methods, via interface pointers 301.

Più precisamente, ogni SID gestisce un sotto sistema (più o meno complesso) al quale sono interconnessi differenti tipologie di sensori attuatori. More precisely, each SID manages a (more or less complex) sub-system to which different types of actuator sensors are interconnected.

Ogni “sotto sistema†espone verso il Kernel una lista di dispositivi che può controllare: al minimo 1. Un sotto sistema gestisce diversi sensori / attuatori afferenti a diverse delle categorie sopra elencate. Each â € œsub-systemâ € exposes to the Kernel a list of devices that it can control: at least 1. A subsystem manages different sensors / actuators belonging to different of the categories listed above.

Come sarà evidente nel seguito le API di sviluppo mettono a disposizione del programmatore un insieme di interfacce (classi C ) da derivare per poterpermettere l’ aggancio degli eventi e dei comandi tra il SID ed il Kernel di SARA. As will be evident in the following, the development APIs provide the programmer with a set of interfaces (C classes) to be derived in order to allow the latching of events and commands between the SID and the SARA Kernel.

Realizzare un SID per il sistema SARA vuol dire: Creating a SID for the SARA system means:

1. Creare una libreria Win32 di tipo DLL. 1. Create a Win32 DLL type library.

2. Estendere un oggetto del tipo CSID e le interfacce relative alle categorie di sensori attuatori che si intende gestire con il driver. 2. Extend an object of the CSID type and the interfaces relating to the categories of actuator sensors that you intend to manage with the driver.

3. Configurare opportunamente nel sistema SARA il nuovo componente. 3. Configure the new component appropriately in the SARA system.

Il sistema SARA mette a disposizione alcune API di sviluppo che consentono la realizzazione dei SID. Tali API consistono nei seguenti file: The SARA system provides some development APIs that allow the creation of SIDs. These APIs consist of the following files:

1. SIDDllEntry.h 1. SIDDllEntry.h

2. SaraAPI.h 2. SaraAPI.h

3. SaraAPI.dll 3. SaraAPI.dll

Il Kernel carica la dii Win32 in maniera dinamica: a run time solo se configurata dal database di SARA. Una volta verificato che il contenuto della libreria a caricamento dinamico à ̈ compatibile con l’ architettura di SARA (verifica degli entry points), allora viene caricata in memoria e l’oggetto in essa definito viene istanziato tante volte quanti sono i sottosistemi che si possono gestire con esso. The Kernel loads the Win32 dii dynamically: at run time only if configured from the SARA database. Once verified that the content of the dynamically loaded library is compatible with the architecture of SARA (verification of entry points), then it is loaded into memory and the object defined in it is instantiated as many times as there are subsystems that you can manage with it.

Importante à ̈ sottolineare che gli oggetti definiti nelle DLL caricate dal sistema SARA possono essere istanziati più volte. Ciò significa, ad esempio, che se viene realizzato il plug-in per il monitoraggio ed il controllo di una centrale di input digitale ad esempio Aritech, il sistema SARA può istanziare N volte tale oggetto, impostando N configurazioni differenti, per il controllo di N centrali Aritech fra di esse compatibili. It is important to note that the objects defined in the DLLs loaded by the SARA system can be instantiated multiple times. This means, for example, that if the plug-in for the monitoring and control of a digital input central such as Aritech is created, the SARA system can instantiate this object N times, setting N different configurations, for the control of N Aritech control panels compatible with each other.

La comunicazione con il Kernel avviene tramite i seguenti mezzi: Communication with the Kernel occurs through the following means:

1. DATA CALLBACKs per l’invio di dati o segnalazioni spontanee dal SID verso Kernel. 1. DATA CALLBACKs for sending data or spontaneous reports from the SID to the Kernel.

2. SYNC METHODs per richieste sincrone, impostazioni e inizializzazione da parte del Kernel sul SID. 2. SYNC METHODs for synchronous requests, settings and initialization by the Kernel on the SID.

3. COMMAND EVENTs (richieste asincrone) da gestire tramite override di opportuni metodi ( COMMAND HANDLERs ) messi già a disposizione dall’ architettura. 3. COMMAND EVENTs (asynchronous requests) to be managed by overriding appropriate methods (COMMAND HANDLERs) already made available by the architecture.

4. RESP CALLBACKs per risposta alle richieste asincrone. 4. RESP CALLBACKs for response to asynchronous requests.

5. LOG CALLBACK per invio messaggi di log. 5. LOG CALLBACK for sending log messages.

6. ERROR CALLBACK per la segnalazione di errori di sistema. 6. ERROR CALLBACK for reporting system errors.

Nella figura 3 viene presentato il caso in cui un SID 3 implementa due tipologie di interfaccia: DI e TRK, che si presentano sdoppiate ciascuna in interfaccia eventi 122 ed interfaccia interrogazioni 132. Ciò significa che il sottosistema gestito da tale SID controlla N dispositivi di output digitale e M dispositivi di tracciamento (ad ex. Telecamere CEDAR o SONAR o GPS ... ). Il Kernel 1 tramite i metodi sincroni dell’ interfaccia base CSID inizializza, istanzia l’oggetto e lo avvia. Di fatto estendere l’interfaccia CSID vuole dire aver creato un thread indipendente. A seconda della dalla propria logica di esecuzione il SID 3 utilizza la DATA CALLBACK, indicata con 401 , per inviare dati al Kernel in modo spontaneo. Figure 3 shows the case in which a SID 3 implements two types of interfaces: DI and TRK, which are each split into an event interface 122 and a query interface 132. This means that the subsystem managed by this SID controls N output devices digital and M tracking devices (ex. CEDAR or SONAR or GPS cameras ...). Kernel 1 through the synchronous methods of the basic CSID interface initializes, instantiates the object and starts it. In fact, extending the CSID interface means having created an independent thread. Depending on its execution logic, SID 3 uses the DATA CALLBACK, indicated with 401, to send data to the Kernel spontaneously.

Per realizzare il meccanismo di “Richiesta - Risposta†asincrono tra Kernel e SID, il Kernel avvia in maniera trasparente allo sviluppatore del SID un metodo (command handler) per cui à ̈ necessario realizzare l’override. Se non viene effettuato l’override il comando viene comunque gestito dall’ architettura di sistema ma, chiaramente, non viene attuato nulla sulle periferiche di interesse. To implement the asynchronous â € œRequest - Responseâ € mechanism between Kernel and SID, the Kernel transparently starts a method (command handler) to the SID developer for which it is necessary to perform the override. If the override is not carried out, the command is still managed by the system architecture but, clearly, nothing is implemented on the peripherals of interest.

Esempio: Per l’Output digitale deve essere fatto l’override dei seguenti command handler legato all’interfaccia SID DO Interface Example: For the digital output, the following command handler linked to the SID DO Interface must be overridden

void OnOpenDO( . ) void OnOpenDO (.)

void OnCloseDO( . ) void OnCloseDO (.)

Terminata la scrittura del codice relativo i precedenti due command handler si può richiamare la callback DOResponseCallback( ) per comunicare l’ esito dell’ esecuzione del comando. Once the code related to the previous two command handlers have been written, the callback DOResponseCallback () can be called to communicate the outcome of the command execution.

Nella figura 4 viene esplicitato il meccanismo di “Richiesta - Risposta†realizzato nell’ architettura del sistema SARA: una volta avviato un SID 3 esegue il proprio thread che si mette in ascolto di messaggi di sistema. Per ogni comando del Kernel 1 à ̈ definito un apposito tipo di messaggio. Quando arriva un messaggio di richiesta esecuzione comando il thread avvia il command manager 403 deputato all’ esecuzione di tale attuazione. Figure 4 explains the â € œRequest - Responseâ € mechanism implemented in the SARA system architecture: once a SID 3 has been started, it executes its own thread that listens for system messages. A specific type of message is defined for each Kernel 1 command. When a command execution request message arrives, the thread starts the command manager 403 responsible for executing this execution.

Il Kernel 1 continua la sua esecuzione in modalità asincrona ma si aspetta di ricevere una risposta 20 (affermativa o negativa) con l’esito del comando entro un certo intervallo temporale. Il SID 3 si preoccupa di confermare quindi l’ esecuzione di un comando attraverso l’ apposita RESP CALLBACK. Ogni comando viene numerato in modo tale che il Kernel possa trovare corrispondenza tra la richiesta e la risposta. Kernel 1 continues its execution in asynchronous mode but expects to receive an answer 20 (affirmative or negative) with the result of the command within a certain time interval. SID 3 then takes care of confirming the execution of a command through the appropriate RESP CALLBACK. Each command is numbered so that the Kernel can match the request to the response.

Il sistema in questo modo concepito consente di realizzare l’ acquisizione di segnale e la reazione automatica mediante dispositivi sensori e dispositivi attuatori indipendentemente dalla loro origine e dal fatto che le loro rispettive specifiche siano originariamente compatibili al sistema destinato a gestirli. Conceived in this way, the system allows for signal acquisition and automatic reaction by means of sensor devices and actuator devices regardless of their origin and whether their respective specifications are originally compatible with the system intended to manage them.

Claims (5)

RIVENDICAZIONI 1. Sistema per l’ acquisizione del segnale da dispositivi sensori e la reazione automatica mediante dispositivi attuatori, comprendente un modulo kernel interfacciato con una interfaccia di programmazione dell’ applicazione (API) comprendente un oggetto base per la realizzazione di driver di sottosistema, ciascun sottosistema comprendendo una data categoria di dispositivi sensori o attuatori, ed una interfaccia per ciascuna categoria di dispositivi sensori e dispositivi attuatori, detta interfaccia di programmazione dell’ applicazione consentendo la creazione di una libreria a caricamento dinamico (DLL) che ingloba detti driver di sottosistema. CLAIMS 1. System for the acquisition of the signal from sensor devices and the automatic reaction by means of actuator devices, comprising a kernel module interfaced with an application programming interface (API) comprising a basic object for the realization of subsystem drivers, each subsystem comprising a given category of sensor or actuator devices, and an interface for each category of sensor devices and actuator devices, said application programming interface allowing the creation of a dynamic loading library (DLL) which includes said subsystem. 2. Sistema secondo la rivendicazione 1 , in cui detti driver di sottosistema consentono la comunicazione tra un dato sottosistema di dispositivi ed il kernel del sistema secondo la presente invenzione. System according to claim 1, wherein said subsystem drivers allow communication between a given subsystem of devices and the kernel of the system according to the present invention. 3. Sistema secondo la rivendicazione 1 o la rivendicazione 2, in cui detta libreria a caricamento dinamico che ingloba detto driver di sottosistema comunica con detto kernel tramite una pluralità di punti di accesso che sono interfacciati con una pluralità di puntatori di interfaccia presenti in detto kernel. System according to claim 1 or claim 2, wherein said dynamically loaded library which incorporates said subsystem driver communicates with said kernel through a plurality of access points which are interfaced with a plurality of interface pointers present in said kernel . 4. Sistema secondo la rivendicazione 3, in la comunicazione tra detto kernel e detto driver di sottosistema segue una procedura di richiesta e risposta comprendente l’invio di una data richiesta da parte del kernel e l’attuazione da parte della componente attiva del driver di sottosistema di un dato messaggio di risposta. 4. System according to claim 3, in the communication between said kernel and said subsystem driver follows a request and response procedure comprising the sending of a given request by the kernel and the implementation by the active component of the subsystem driver of a given response message. 5. Sistema secondo la rivendicazione 3 o la rivendicazione 4, in cui la comunicazione tra Kernel e driver avviene tramite i seguenti mezzi: DATA CALLBACKs per l’invio di dati o segnalazioni spontanee dal driver di sottosistema verso il Kernel; SYNC METHODs per richieste sincrone, impostazioni e inizializzazione da parte del Kernel sul driver di sottosistema; COMMAND EVENTs (richieste asincrone) da gestire tramite override di opportuni metodi (COMMAND HANDLERs) messi già a disposizione dall’ architettura; RESP CALLBACKs per risposta alle richieste asincrone; LOG CALLBACK per invio messaggi di log; ERROR CALLBACK per la segnalazione di errori di sistema.System according to claim 3 or claim 4, wherein the communication between Kernel and driver takes place by the following means: DATA CALLBACKs for sending spontaneous data or signals from the subsystem driver to the Kernel; SYNC METHODs for synchronous requests, settings and initialization by the Kernel on the subsystem driver; COMMAND EVENTs (asynchronous requests) to be managed by overriding appropriate methods (COMMAND HANDLERs) already made available by the architecture; RESP CALLBACKs for response to asynchronous requests; LOG CALLBACK for sending log messages; ERROR CALLBACK for reporting system errors.
ITAN2009A000055A 2009-09-08 2009-09-08 SYSTEM FOR SIGNAL ACQUISITION AND AUTOMATIC REACTION IN SAFETY SYSTEMS IT1395439B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
ITAN2009A000055A IT1395439B1 (en) 2009-09-08 2009-09-08 SYSTEM FOR SIGNAL ACQUISITION AND AUTOMATIC REACTION IN SAFETY SYSTEMS

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
ITAN2009A000055A IT1395439B1 (en) 2009-09-08 2009-09-08 SYSTEM FOR SIGNAL ACQUISITION AND AUTOMATIC REACTION IN SAFETY SYSTEMS

Publications (2)

Publication Number Publication Date
ITAN20090055A1 true ITAN20090055A1 (en) 2011-03-09
IT1395439B1 IT1395439B1 (en) 2012-09-21

Family

ID=41786186

Family Applications (1)

Application Number Title Priority Date Filing Date
ITAN2009A000055A IT1395439B1 (en) 2009-09-08 2009-09-08 SYSTEM FOR SIGNAL ACQUISITION AND AUTOMATIC REACTION IN SAFETY SYSTEMS

Country Status (1)

Country Link
IT (1) IT1395439B1 (en)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0336552A2 (en) * 1988-04-08 1989-10-11 International Business Machines Corporation Identifying program units in an operating environment in a computer
US5847955A (en) * 1994-05-04 1998-12-08 National Instruments Corporation System and method for controlling an instrumentation system
US6301557B1 (en) * 1998-08-11 2001-10-09 Compaq Computers Incorporated Method and apparatus for sharing objects and object state between processes

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0336552A2 (en) * 1988-04-08 1989-10-11 International Business Machines Corporation Identifying program units in an operating environment in a computer
US5847955A (en) * 1994-05-04 1998-12-08 National Instruments Corporation System and method for controlling an instrumentation system
US6301557B1 (en) * 1998-08-11 2001-10-09 Compaq Computers Incorporated Method and apparatus for sharing objects and object state between processes

Also Published As

Publication number Publication date
IT1395439B1 (en) 2012-09-21

Similar Documents

Publication Publication Date Title
US5488723A (en) Software system having replicated objects and using dynamic messaging, in particular for a monitoring/control installation of redundant architecture
EP2067098B1 (en) System and method for event management
CN1327347C (en) Executing processes in a multiprocessing environment
US10255043B2 (en) Field programmable block system delivering context-aware services in resource-challenged environments
US7178049B2 (en) Method for multi-tasking multiple Java virtual machines in a secure environment
US20190034250A1 (en) System, method and computer program product for sharing information in a distributed framework
KR100837787B1 (en) Security method making deterministic real time execution of multitask applications of control and command type with error confinement
JP5936180B2 (en) Process control system
US6266726B1 (en) Process control system using standard protocol control-of standard devices and non-standard devices
US8078357B1 (en) Application-independent and component-isolated system and system of systems framework
CN101589357B (en) Check condition system used for human-computer interface
CN108667869B (en) Vehicle information interaction system
JP2012084162A5 (en)
US20020184348A1 (en) Object oriented framework architecture for sensing and/or control environments
Perumal et al. ECA-based interoperability framework for intelligent building
Niedrist Deterministic architecture and middleware for domain control units and simplified integration process applied to ADAS
ITAN20090055A1 (en) SYSTEM FOR SIGNAL ACQUISITION AND AUTOMATIC REACTION IN SAFETY SYSTEMS
CN115617558A (en) Vehicle diagnostic system, method, storage medium, and vehicle
FR2792429A1 (en) Graphic element displaying method for display device in railway control rooms, involves writing element into memory, reading memory and comparing with known element for coding, with control using data to decide on diagnostic procedure
CN111506360B (en) External equipment access system and method of real-time data processing system
Eloranta et al. A pattern language for distributed machine control systems
AU2005305975B2 (en) Diagnostic interface for a service gateway applications
KR102116174B1 (en) System for Integrating PLC and HMI Based on Multi Core Processor
JPH09330243A (en) Computer system
EP3805923A1 (en) Information processing system, information processing device, and method for controlling information processing system