Dear Mohamed,
I won't answer your
questions point by point, but here is my simplistic description; I hope that
you will find
it helpful. Mind you, this is my simplistic
description; the real EPICS guru's
may
correct my misunderstandings.
EPICS is a framework from which
you can create a control
system; please refer to the attached
cartoon.
Any control system will have a number of
hardware devices; e.g.
cyro pump, power
supply, high voltage supply. Each of
these hardware devices have a
number of parameters;
e.g. current,
temperature, voltage, On/Off, which are used to monitor
and/or control the hardware.
In order to be a part of a
control system, each hardware
device must communicate with one,
or more,
computers over
some
interface; e.g.
RS232/RS485, TCP/IP,
SNMP, Modbus, etc.
using
some drivers. The drivers are
usually provided
by the manufacturer.
EPICS allows
you
to write an
IOC (Input/Output
Controller) which
uses these drivers for
communication
with
your
hardware
device.
Within
the IOC, you
create
PVs (process
variables) and
these are
representations
of the
hardware's
parameters
(current,
temperature, etc). Each PV is created
from
a "record";
e.g. analog
input, binary
output, calculation, long integer,
sequence,
subroutines,
etc.,
which
are
provided by the EPICS framework.
Each
PV also has a
variety
of "fields";
e.g. scan
rate,
alarm
limits, upper/lower operating
limits,
engineering
units, etc., which further describe the PV.
Not
all PVs represent hardware parameters. PVs
can interact
with each
other
and be used to
control
each other.
Once
your IOC is
running, EPICS
provides
interfaces and
tools to use the PVs. The IOCs live on
an
local area
network (LAN) and with proper permissions, other processes on
the same LAN
can
access them.
Some
of these tools are GUIs, archivers, alarm
handlers, or
gateways
to access
other
networks.
These
clients
usually access
the PVs via
"channel
access". When
a process
searches
for a PV, it
sends out a
broadcast
message via UDP. When the IOC which owns
the PV
recognizes
this request,
a TCP
connection is
made between
the client and
IOC. Note
that
IOCs
can
act
as clients to
other IOCs.
So, EPICS is the framework
plus tools.
It handles
interrupts,
timeouts, connections, etc.
EPICS
is open source
software, so
it's free. It
does
not require
any hardware;
your
computer
can
be a linux
box, windows
box, raspberry
pie, VME
crate, android phone. There are no
proprietary
components.
I
hope that this is helpful. Good luck to you. By the way, from which institution do you come?
Pierrick
On 10/13/2017 03:32 AM, Mohamed
Chaouechi wrote:
Dear EPICS Tech-Talk,
We currently doing a research about EPICS, how to
communicate with EPICS, EPICS topologies, and EPICS
implementation in PLC IOC based systems.
As we are a group of students, and we are basically
Electrical and Automation Engineers, the EPICS field is new
for us, we have little knowledge about it.
We've tried to read through the website, still have few
difficulties to go deeper in the content.
Our questions here are :
-How does 'EPICS' create a control system (the definition
says so , "EPICS provides a number of tools for creating a
control system"), meanwhile, another important part of another
definition says "PS: When installing EPICS, does not create a
control system"!
-Do we , as Automation Engineering students , need to learn
the algorithm and the programming procedure if we will be
maybe implementing EPICS with automated systems ?
-EPICS is about collaboration between People, Labs, sites,
is it mandatory or it can be used for educational individual
use, if yes, what is the hardware needed for that.
-What are the software needed basically to use EPICS, as we
will be using software like S7PLC or EtherCAT ?
We appreciate having an answer soon as we are unfortunately
under a time DDL.
Best Regards
--
Mohamed Chaouechi
Skype : elcaponeh
Phone : +86 185 9140 8748
Wechat ID : Mohamedchaouechi
--
"Whether you think you can or think you can't, you're right" -- Henry Ford
_______________________________________________________________
Pierrick Hanlet
+44-79-48-86-01-97 (UK mobile)
+44-12-35-77-07-91 (UK home)
+1-630-888-0185 (US mobile)
|