QNX BASED SOFTWARE FOR PARTICLE ACCELERATOR CONTROL SYSTEM OF FLNR

16
QNX BASED SOFTWARE QNX BASED SOFTWARE FOR PARTICLE ACCELERATOR FOR PARTICLE ACCELERATOR CONTROL SYSTEM OF FLNR CONTROL SYSTEM OF FLNR Vitaly Aleynikov Vitaly Aleynikov Flerov’s Laboratory of Nuclear Flerov’s Laboratory of Nuclear Reactions, JINR Reactions, JINR

description

QNX BASED SOFTWARE FOR PARTICLE ACCELERATOR CONTROL SYSTEM OF FLNR. Vitaly Aleynikov Flerov’s Laboratory of Nuclear Reactions, JINR. - PowerPoint PPT Presentation

Transcript of QNX BASED SOFTWARE FOR PARTICLE ACCELERATOR CONTROL SYSTEM OF FLNR

Page 1: QNX BASED SOFTWARE FOR PARTICLE ACCELERATOR CONTROL SYSTEM OF FLNR

QNX BASED SOFTWAREQNX BASED SOFTWAREFOR PARTICLE ACCELERATOR FOR PARTICLE ACCELERATOR CONTROL SYSTEM OF FLNRCONTROL SYSTEM OF FLNR

Vitaly AleynikovVitaly Aleynikov

Flerov’s Laboratory of Nuclear Reactions, Flerov’s Laboratory of Nuclear Reactions, JINRJINR

Page 2: QNX BASED SOFTWARE FOR PARTICLE ACCELERATOR CONTROL SYSTEM OF FLNR

FLNR, JINRFLNR, JINR 22

Since 1999 we have been using Supervisory Control and Data Acquisition Since 1999 we have been using Supervisory Control and Data Acquisition (SCADA) software named FlexCtrl 4 (BitCtrl Systems Ltd., Germany). It runs under UNIX-(SCADA) software named FlexCtrl 4 (BitCtrl Systems Ltd., Germany). It runs under UNIX-style commercial real-time operating system QNX (QNX Software Systems Ltd., Canada). style commercial real-time operating system QNX (QNX Software Systems Ltd., Canada).

It was designed and put into operation control systems for 6 charged particles It was designed and put into operation control systems for 6 charged particles accelerators and radiating installations. Two more cyclotrons (DC-72 and DC-60) are at the accelerators and radiating installations. Two more cyclotrons (DC-72 and DC-60) are at the final stage: assembled, tested in FLNR and ready for shipping .final stage: assembled, tested in FLNR and ready for shipping .

YearYear ProjectProject DescriptionsDescriptions CountryCountry ProcessProcessvariablesvariables

20012001 EA-10/10EA-10/10 Electron acceleratorElectron accelerator GermanyGermany 18001800

20022002 DRIBsDRIBs Dubna Radioactive Ion BeamsDubna Radioactive Ion Beams RussiaRussia 35003500

20032003 ECR CyLabECR CyLab ECR ion sourceECR ion source SlovakiaSlovakia 28002800

20032003 U-400U-400 Isochronous CyclotronIsochronous Cyclotron RussiaRussia 46004600

20042004 U-U-400M400M Isochronous CyclotronIsochronous Cyclotron RussiaRussia 52005200

20052005 IC-100IC-100 Isochronous CyclotronIsochronous Cyclotron RussiaRussia 37003700

……20072007 DC-60DC-60 Isochronous CyclotronIsochronous Cyclotron KazakhstanKazakhstan 57005700

……20082008 DC-72DC-72 Isochronous CyclotronIsochronous Cyclotron SlovakiaSlovakia 76007600

RTOS QNX 4RTOS QNX 4 ++ SCADA FLEXCTRLSCADA FLEXCTRL

Page 3: QNX BASED SOFTWARE FOR PARTICLE ACCELERATOR CONTROL SYSTEM OF FLNR

FLNR, JINRFLNR, JINR 33

After 6 After 6 years of using this commercial software there were developed years of using this commercial software there were developed custom visualization library and acustom visualization library and a lot of device drivers, that successfully replace lot of device drivers, that successfully replace and expand the regular software. and expand the regular software.

We have designed and integrated in SCADA device drivers for the We have designed and integrated in SCADA device drivers for the following hardware:following hardware:

SMARTBOX data acquisition module (FLNR, Russia)SMARTBOX data acquisition module (FLNR, Russia) Rotating encoder input device (FLNR, Russia)Rotating encoder input device (FLNR, Russia) RADIS GM2524-100 RF generator (RADIS Ltd., Russia)RADIS GM2524-100 RF generator (RADIS Ltd., Russia) EVPU PS24-500, PS15-30, PS25-120 power supplies (EVPU, Slovakia)EVPU PS24-500, PS15-30, PS25-120 power supplies (EVPU, Slovakia) DANFYSIK power supplies models 883, 853T, 855 (DANFYSIK A/S, Denmark)DANFYSIK power supplies models 883, 853T, 855 (DANFYSIK A/S, Denmark) FESTO DGE positioning system (Festo AG, Germany)FESTO DGE positioning system (Festo AG, Germany) PFEIFFER TPG-256, 261 vacuum measurement and control units (Pfeiffer Vacuum PFEIFFER TPG-256, 261 vacuum measurement and control units (Pfeiffer Vacuum

GmbH, Germany)GmbH, Germany) KEITHLEY digital multimeter model 2000 (Keithley Instruments Inc., USA)KEITHLEY digital multimeter model 2000 (Keithley Instruments Inc., USA) AGILENT 33220A function/arbitrary waveform generator (Agilent Technologies, AGILENT 33220A function/arbitrary waveform generator (Agilent Technologies,

USA)USA) AMI Model 420 Power Supply Programmer (American Magnetics, Inc., USA)AMI Model 420 Power Supply Programmer (American Magnetics, Inc., USA)

Page 4: QNX BASED SOFTWARE FOR PARTICLE ACCELERATOR CONTROL SYSTEM OF FLNR

FLNR, JINRFLNR, JINR 44

Requirements to OSRequirements to OS

1)1) PC (x86) platform supportPC (x86) platform support because all control system because all control system nodes were x86 basednodes were x86 based

2)2) Multi-taskingMulti-tasking and suitable inter-process communication and suitable inter-process communication technique to run at the same time PLC's protocol driver, technique to run at the same time PLC's protocol driver, HMI, RTDB server and printer managerHMI, RTDB server and printer manager

3)3) Good Good network integrationnetwork integration to link remote nodes allocated to link remote nodes allocated over large areaover large area

4)4) OpennessOpenness and ease to write and integrate and ease to write and integrate device driver device driver for custom hardwarefor custom hardware

5)5) Provide an Provide an embedded windowing systemembedded windowing system with full-featured with full-featured GUI to afford convenient Human-Machine InterfaceGUI to afford convenient Human-Machine Interface

6)6) Have Have powerful development toolspowerful development tools to create application to create application softwaresoftware

7)7) Real-time and Real-time and fault tolerantfault tolerant8)8) Be Be commercial, well knowncommercial, well known and have good customer and have good customer

supportsupport9)9) Have choice of SCADAHave choice of SCADA software software

Page 5: QNX BASED SOFTWARE FOR PARTICLE ACCELERATOR CONTROL SYSTEM OF FLNR

FLNR, JINRFLNR, JINR 55

Operating systemOperating system

MS Windows NTMS Windows NT QNXQNX LinuxLinux UNIXUNIX OS-9OS-9 pSOSpSOS VxWorksVxWorks

Page 6: QNX BASED SOFTWARE FOR PARTICLE ACCELERATOR CONTROL SYSTEM OF FLNR

FLNR, JINRFLNR, JINR 66

Operating systemOperating system

MS Windows NTMS Windows NT QNXQNX LinuxLinux

Page 7: QNX BASED SOFTWARE FOR PARTICLE ACCELERATOR CONTROL SYSTEM OF FLNR

FLNR, JINRFLNR, JINR 77

Operating systemOperating system

Commercial, over 20 years of real-time OS Commercial, over 20 years of real-time OS experience on x86 platforms, outsells every experience on x86 platforms, outsells every other real-time OS for PCs supported in almost other real-time OS for PCs supported in almost 100 countries worldwide100 countries worldwide

Designed for real-time control and open for Designed for real-time control and open for custom software/hardwarecustom software/hardware

UNIX-style, scalable, multi-user, multi-tasking, UNIX-style, scalable, multi-user, multi-tasking, network and POSIX-compliantnetwork and POSIX-compliant

Supports Photon microGUI as Windows-like Supports Photon microGUI as Windows-like graphical user interfacegraphical user interface

Has Rapid Application Development tool Has Rapid Application Development tool Photon Application BuilderPhoton Application Builder

Has choice of Has choice of Supervisory Control and Data Supervisory Control and Data Acquisition (Acquisition (SCADA) softwareSCADA) software

QSSLQSSLQNX Software Systems QNX Software Systems

Ltd. CanadaLtd. Canada

Page 8: QNX BASED SOFTWARE FOR PARTICLE ACCELERATOR CONTROL SYSTEM OF FLNR

FLNR, JINRFLNR, JINR 88

SCADA software for SCADA software for QNXQNX SitexSitex RealflexRealflex FlexCtrlFlexCtrl PCP VirgoPCP Virgo Fiord microSCADAFiord microSCADA

Page 9: QNX BASED SOFTWARE FOR PARTICLE ACCELERATOR CONTROL SYSTEM OF FLNR

FLNR, JINRFLNR, JINR 99

SCADA software for SCADA software for QNXQNX

FlexCtrlFlexCtrl is a process control system for the automation is a process control system for the automation of technological processesof technological processes

FlexCtrlFlexCtrl is modular and extremely scalable is modular and extremely scalable FlexCtrlFlexCtrl is a pure software system, no specific or is a pure software system, no specific or

special hardware is needed for process control. The special hardware is needed for process control. The interface to the system is open and the user has the interface to the system is open and the user has the possibilitypossibility adding custom device driver adding custom device driver to the system to the system

All parts of the All parts of the FlexCtrlFlexCtrl application can be application can be managed with the project engineering system, managed with the project engineering system, which configures process model (process which configures process model (process variables with all characteristics)variables with all characteristics)

FlexCtrlFlexCtrl includes Process Model Editor, Graphics includes Process Model Editor, Graphics Editor, Network Configurator, User Editor, Network Configurator, User Administrator, Driver, Visualization and Run-time Administrator, Driver, Visualization and Run-time CompilersCompilers

BitCtrl Systems Ltd., BitCtrl Systems Ltd., GermanyGermany

Page 10: QNX BASED SOFTWARE FOR PARTICLE ACCELERATOR CONTROL SYSTEM OF FLNR

FLNR, JINRFLNR, JINR 1010

Project development Project development softwaresoftware

RTOS QNX 4

SCADAFlexCtrl

ApplicationBuilder

ProjectEngeneering

Watcom CDeviceDriver

Run-timeSystem

HMI

DevelopmentRun-time

PhotonmicroGUI

For creating Human to Machine Interface For creating Human to Machine Interface (HMI) we use Photon Application Builder (HMI) we use Photon Application Builder instead of the FlexCtrl Graphics Editor. instead of the FlexCtrl Graphics Editor. Application Builder compiles GUI and Application Builder compiles GUI and custom function and image libraries into custom function and image libraries into the HMI application.the HMI application.

All parts of the FlexCtrl application can be All parts of the FlexCtrl application can be managed with the project engineering managed with the project engineering system, which configures process model system, which configures process model (process variables with all characteristics). (process variables with all characteristics). The system includes Process Model Editor, The system includes Process Model Editor, Graphics Editor, Network Configurator, Graphics Editor, Network Configurator, User Administrator, Driver, Visualization User Administrator, Driver, Visualization and Run-time Compilers.and Run-time Compilers.

The QNX package includes the Watcom The QNX package includes the Watcom С/С++ С/С++ highly optimizing compiler and highly optimizing compiler and debugger. We use it for creating custom debugger. We use it for creating custom hardware drivers.hardware drivers.

Page 11: QNX BASED SOFTWARE FOR PARTICLE ACCELERATOR CONTROL SYSTEM OF FLNR

FLNR, JINRFLNR, JINR 1111

Application softwareApplication software

FlexCtrl project engineering systemFlexCtrl project engineering system

All parts of the FlexCtrl application All parts of the FlexCtrl application can be managed with the project can be managed with the project engineering system, which engineering system, which configures process model (process configures process model (process variables with all characteristics). variables with all characteristics). The system includes Process Model The system includes Process Model Editor, Graphics Editor, Network Editor, Graphics Editor, Network Configurator, User Administrator, Configurator, User Administrator, Driver, Visualization and Run-time Driver, Visualization and Run-time Compilers.Compilers.

Page 12: QNX BASED SOFTWARE FOR PARTICLE ACCELERATOR CONTROL SYSTEM OF FLNR

FLNR, JINRFLNR, JINR 1212

Application softwareApplication software

HMI development. Photon Application BuilderHMI development. Photon Application Builder

For creating Human to Machine For creating Human to Machine Interface (HMI) we use Photon Interface (HMI) we use Photon Application Builder instead of the Application Builder instead of the FlexCtrl Graphics Editor. Application FlexCtrl Graphics Editor. Application Builder compiles GUI and custom Builder compiles GUI and custom function and image libraries into the function and image libraries into the HMI application.HMI application.

Page 13: QNX BASED SOFTWARE FOR PARTICLE ACCELERATOR CONTROL SYSTEM OF FLNR

FLNR, JINRFLNR, JINR 1313

IPC and data flowIPC and data flow

QNX depends on the exchange of discrete packets of QNX depends on the exchange of discrete packets of information – information – messagesmessages – to handle virtually all inter-process – to handle virtually all inter-process communication. Message passing lies at the heart of the communication. Message passing lies at the heart of the operating system’s microkernel architecture, giving the OS its operating system’s microkernel architecture, giving the OS its modularity. This paradigm applies to all levels of modularity. This paradigm applies to all levels of programming, from device drivers to file system and LAN.programming, from device drivers to file system and LAN.

FlexCtrl strongly uses this message passing technique as for FlexCtrl strongly uses this message passing technique as for internal run-time communication as for interfacing to device internal run-time communication as for interfacing to device drivers. Every job of some significance in FC is handled drivers. Every job of some significance in FC is handled through a single computational process (server). FlexControl through a single computational process (server). FlexControl comprises a long list of these tasks:comprises a long list of these tasks:

Process administration and process supervisionProcess administration and process supervisionReal-time database (RTDB)Real-time database (RTDB)Calculation server (Soft SPC tasks)Calculation server (Soft SPC tasks)Visualization server and HMIVisualization server and HMIAlarm serverAlarm serverMessage serverMessage serverProtocol driversProtocol drivers

Fieldbus protocoldriver

Serial portdriver

RAW values (DAC, ADC, DIN, DOUT)

RTDB

Algorythms, Automaticcontrol, Calculation,

Data conversion

Calculationserver

Hardware specificdriver

OPERATIONAL values (V, A, Torr, etc.)

RTDB

Visualizationserver

Message Queueserver

Eventmessage

queue

ProcessMonitoring

HMI

Trends, Errors, Logs, etc.

Historical DB

Historyserver

Error messages,Log messages,

Trends, etc.

ProcessControl

SCADA FlexCtrl

Eventmessage

queue

ProcessMonitoring

HMI

ProcessControl

- INPUT Data

- Commercial software

- Process Variables

- Custom software

- OUTPUT Data

Page 14: QNX BASED SOFTWARE FOR PARTICLE ACCELERATOR CONTROL SYSTEM OF FLNR

FLNR, JINRFLNR, JINR 1414

Application softwareApplication software

DC-72 cyclotron control system HMI (channel B6 beam line )DC-72 cyclotron control system HMI (channel B6 beam line )

Page 15: QNX BASED SOFTWARE FOR PARTICLE ACCELERATOR CONTROL SYSTEM OF FLNR

FLNR, JINRFLNR, JINR 1515

Application softwareApplication software

DC-72 cyclotron control system HMI (cyclotron vacuum system )DC-72 cyclotron control system HMI (cyclotron vacuum system )

Page 16: QNX BASED SOFTWARE FOR PARTICLE ACCELERATOR CONTROL SYSTEM OF FLNR

FLNR, JINRFLNR, JINR 1616

ConclusionConclusion

At present time we do not have serious problems with the selected At present time we do not have serious problems with the selected solution (QNX and FC) and we will continue using it for the further projects. solution (QNX and FC) and we will continue using it for the further projects.

+ The benefits are:The benefits are:

Stability since the core of Stability since the core of the OS and SCADA system the OS and SCADA system is well optimized and testedis well optimized and tested

Development tools decrease Development tools decrease total project engineering total project engineering time and allows time and allows concentrating more on concentrating more on visualization and visualization and automation algorithmsautomation algorithms

Flexibility. Openness and Flexibility. Openness and good interaction possibility good interaction possibility allows easily add new allows easily add new hardwarehardware

% The disadvantages are:The disadvantages are:

Lack of QNX 4 device Lack of QNX 4 device drivers for the most recent drivers for the most recent hardware (video, network)hardware (video, network)

In a few years QSSL and In a few years QSSL and BitCtrl will not provide BitCtrl will not provide support for outdated support for outdated software versions (QNX 6 software versions (QNX 6 and FC 6 are available now)and FC 6 are available now)

Poor support of office Poor support of office application softwareapplication software