A new release of the javaIOC is ready. It is available at:
http://epics-doc.desy.de/ioc/javaIOC/index.html
I have attached a short file describing the major new features since
the last release.
Marty Kraimer
Title: No title
Status javaIOC
2008.09.23
A new release of the javaIOC is now available.See JavaIOC
The following sections briefly describe the major new features since the
last release.
With the addition of the _expression_ support the javaIOC is usable as a
soft IOC. Note that the previous release included both client and server code
for communication with EPICS.
Simplified Database
The database and the XML parsers have been changed as follows:
- record instance
- When a record instance is being created, new fields can be appended
to a structure.
- recordType
- Record types no longer exist. The ability to append new fields to a
structure removes the need for record types.
- DBDDefinition
- Previously there were two XML parsers. One for Database Definitions
and another for record instances. There is now only one which accepts
definitions for structure, create, support, and record.
- structure generic
- This is a structure with no fields and generic support. It can be
used to create record instances equivalent to records created from all
of the previously defined record types.
A simple example of a record instance is:
<record name = "simple">
<value type = "double" />
</record>
This is a record instance that has a single field named value of type
double.
As a more complicated example consider the following:
<record name = "notQuiteAsSimple">
<value type = "double" />
<alarm structureName = "alarm" />
<timeStamp structureName = "timeStamp" />
<display structureName = "display" />
<input structureName = "inputSupport">
<pvname>somePV</pvname>
</input>
<scan structureName = "scan">
<type><choice>periodic</choice></type>
<rate>1.0</rate>
</scan>
</record>
This example has the following fields:
- value
- A scalar field of type double
- alarm
- A structure field with support for alarms.
- timeStamp
- A structure that holds a timeStamp.
- input
- A structure with support that reads data from another record named
somePV.
- scan
- A structure with support that will ask this record to process once a
second.
calc support
Support is implemented for calculating scalar expressions. The syntax is
the same as a java _expression_. The result is assigned to the value field. The
java types boolean, byte, short, int, long, float, and double are supported.
All java Math functions are supported. The ?: operator is supported. Java
constants are supported including Math.PI and Math.E. The following are legal
expressions:
- value + 1
- A counter that adds 1 to the value field
- (value+1<=10)?(value+1):0
- A counter that counts from 0 to 10
- (value+inc<=max)?(value+inc):min
- A counter that increments by inc between min and max
- (register|mask)&0xfff0
- example bitwise operations.
- Math.sin(2.0*Math.PI*x)
- The sin of a number where 0 to 1 means 0 to 360 degrees.
- a + b*(c + d/5.0) + x*(y + 1e4)
- Just some rather complex _expression_
VXI11 portDriver
A portDriver for VXI11 has been implemented but not tested that implements
the VXI11 network protocal. One of the next goals is to support STREAM
protocal files and simple network devices like the MOXA terminal servers.
When this is done the javaIOC can be used as a soft IOC as well as for
communication with serial and gpib and other message based devices.
- Navigate by Date:
- Prev:
Re: ASYN R4.10 Release Eric Norum
- Next:
Re: EPICS perl tools in 3.14.10-pre1 Andrew Johnson
- Index:
1994
1995
1996
1997
1998
1999
2000
2001
2002
2003
2004
2005
2006
2007
<2008>
2009
2010
2011
2012
2013
2014
2015
2016
2017
2018
2019
2020
2021
2022
2023
2024
- Navigate by Thread:
- Prev:
javaIOC Marty Kraimer
- Next:
Control System Engineer Position at SNS White, Karen S.
- Index:
1994
1995
1996
1997
1998
1999
2000
2001
2002
2003
2004
2005
2006
2007
<2008>
2009
2010
2011
2012
2013
2014
2015
2016
2017
2018
2019
2020
2021
2022
2023
2024
|