Dear Aditya,
I have implemented EPICS at our Cryogenics Plant system using Modbus TCP protocol communicating with two PLCs. I have written a document for people who do not know EPICS and Linux.
This is given as following.
Please feel free to ask if you need any information further.
U. Panda
Creating Live USB from Windows -------------------------------
Download the following into a folder.
1. LinuxMint-8.iso file from "http://ftp.riken.jp/pub/Linux/linuxmint/stable/8/" or any other linux mint repository.
2. USB-Installer-for-Mint8-v0.2.exe from "http://www.pendrivelinux.com/install-linux-mint-8-to-a-flash-drive-in-windows/"
3. Take a 2GB pendrive and format it into FAT32 partition.
4. Plug in a pendrive (minimum 2GB) and Run the USB-Installer-for-Mint8-v0.2.exe file from windows by double clicking it.
5. Follow the simple on screen instructions to make usb drive bootable with linux mint 8
6. Now the USB-disk has become bootable Linux Mint 8 OS. We have to change the bios setting of the PC/Laptop to boot from USB or USB pendrive as first hard disk drive.
EPICS at Cryogenic Plant of VECC- U. Panda
------------------------------------
The procedure described here is as done by me and for reference as guidelines only. However there can be many ways of doing these.
---------------- 1st.: Load Linux
----------------
Boot your PC/ Laptop with linux by:
1. LiveUSB linux mint 8
or
2. locally installed linux Mint8 / Ubuntu 9.10 / Debian 5.0 to hard disk drive.
Load extra packages from synaptic package manager (including development version, higher versions may be choosen)
libreadline6-dev libncurses5-dev libstdc++6-4.4-dev g++ libx11-dev liblapack-dev libmotif-dev libfontconfig1-dev libjpeg62-dev libpng12-dev libtiff4-dev libxaw7-dev libxp-dev
libgif-dev sun-java6-jdk curl libcurl4-gnutls-dev libxmlrpc-c3-dev libxerces-c-dev libwww0
------------------ 2nd.: Install base ------------------ Write the following lines in a new text file and save it as .bashrc in home directory.
#EPICS SetUp export EPICS_HOST_ARCH=linux-x86
Untar the base-3.14.10 into a folder named "epics" inside you home directory. Open the terminal and issue the following commands
cd ~/epics/base-3.14.10 [Please note that ~ represents your home directory]
make
Ensure that there is no error in the make. If any error is there, it is due not availability of some packages for configuration. The problem can be solved by installing the required packages.
---------------------------------------------------
3rd.: Install extenstion config and configure tools --------------------------------------------------- This is required for extension tools like medm, edm, channel archiver, probe etc. Untar the "extensionsConfig_20040406" and "extensionsConfigure_20040406" tools into ~/epics directory. It will create the extension directory under epics dirctory.
Open the RELEASE text files from ~/epics/extensions/config and ~/epics/extensions/configure both locations. Set the path of the base properly e.g. here EPICS_BASE=~/epics/base-3.14.10 Be sure to remove the # in the begining if any. The lines begining with # are not processed while make command is issued.
In the terminal issue the following command.
cd ~/epics/extensions make
------------------ 4th: Install probe ------------------ untar probe1_1_5_1 into ~/epics/extentions/src directory
In the terminal issue the following command.
cd ~/epics/extensions/src/probe1_1_5_1 make
----------------- 5th: Install medm ----------------- The procedure is similar to probe installation. But in medm3_1_4 version this is to be untarred into ~/epics/extensions/src directory and issue follwoing commands from terminal
cd ~/epics/extensions/src/medm3_1_4 make
add the font definations in the fonts.alias file in the folder /usr/share/fonts/X11/misc
widgetDM_4 -misc-fixed-medium-r-normal--8-60-100-100-c-50-iso8859-1
widgetDM_6 -misc-fixed-medium-r-normal--8-60-100-100-c-50-iso8859-1 widgetDM_8 -misc-fixed-medium-r-normal--9-80-100-100-c-60-iso8859-1 widgetDM_10 -misc-fixed-medium-r-normal--10-100-75-75-c-60-iso8859-1 widgetDM_12 -misc-fixed-medium-r-normal--13-100-100-100-c-70-iso8859-1
widgetDM_14 -misc-fixed-medium-r-normal--14-110-100-100-c-70-iso8859-1 widgetDM_16 -misc-fixed-medium-r-normal--15-120-100-100-c-90-iso8859-1 widgetDM_18 -sony-fixed-medium-r-normal--16-120-100-100-c-80-iso8859-1
widgetDM_20 -misc-fixed-medium-r-normal--20-140-100-100-c-100-iso8859-1 widgetDM_22 -sony-fixed-medium-r-normal--24-170-100-100-c-120-iso8859-1 widgetDM_24 -sony-fixed-medium-r-normal--24-170-100-100-c-120-iso8859-1
widgetDM_30 -adobe-times-medium-r-normal--25-180-100-100-p-125-iso8859-1 widgetDM_36 -adobe-helvetica-medium-r-normal--34-240-100-100-p-176-iso8859-1 widgetDM_40 -adobe-helvetica-bold-r-normal--34-240-100-100-p-182-iso8859-1
widgetDM_48 -adobe-helvetica-bold-r-normal--34-240-100-100-p-182-iso8859-1 widgetDM_60 -adobe-helvetica-bold-r-normal--34-240-100-100-p-182-iso8859-1
Then run “xset fp rehash” to install them. On Linux you may need to run “/etc/init.d/xfs restart” to restart the X font server. You can see if the fonts are there with “xlsfonts” or “xlsfonts | grep widgetDM”. You can get more information from any of the general-purpose books on X Windows.
---------------- 6th: Install edm ---------------- The procedure is similar to probe installation. But in edm-1-11-0y version this is to be untarred into ~/epics/extensions/src directory and make from ~/epics/extensions/src/edm directory.
open the ./profile file and insert the following lines
#EPICS SetUp
export EPICS_HOST_ARCH=linux-x86 export EPICS_BASE=/home/umashankar/epics/base-3.14.9 export EDMOBJECTS=/home/umashankar/epics/gui/edm/prefs
export EDMDATAFILES=/home/umashankar/epics/gui/edm export EDMFILES=/home/umashankar/epics/gui/edm/prefs export EDMPVOBJECTS=/home/umashankar/epics/gui/edm/prefs export EDMHELPFILES=/home/umashankar/epics/extensions/src/edm/helpFiles
PATH=$PATH:/home/umashankar/epics/base-3.14.10/bin/linux-x86 PATH=$PATH:/home/umashankar/epics/extensions/bin/linux-x86 PATH=$PATH:/home/umashankar/epics/modules/asyn-4.10/bin/linux-x86 #alias vdct=’java -jar /home/umashankar/epics/extensions/bin/linux-x86/VisualDCT.jar’
set the edmpvObjects file in /etc/edm directory
-------------------------------------- 7th: Install alh1_2_23 (Alarm Handler) -------------------------------------- The procedure is similar to probe installation. But in alh1_2_23 version this is to be untarred into ~/epics/extensions/src directory and make from ~/epics/extensions/src/alh1_2_23 directory.
------------------------------------------------- 8th: Install JDK and JRE of java for java support -------------------------------------------------
open the file ~/epics/extensions/config/CONFIG_SITE.Host.linux and set the path of java installation as follows:
JAVA_DIR=/usr
This is required to use jca / jdct / jprobe etc.
------------------------------ 9th: Install Channel Archiever ------------------------------
Channel Archiver ----------------
untar the archiver file into ~/epics/exetensions/src directory
In some files like ChannelArchiever/LibIO/BinValue.cpp, ChannelArchiever/Tools/ArgParser.cpp and ChannelArchiever/Tools/GenericException we have to inlude the following standard libraries
#include<stdio.h> #include <stdlib.h> #include <climits> // only for BinValue.cpp
open the make.cfg file ChannelArchiver directory under the above directory and define the XMLRPC base directory as XMLRPCBASE=/usr/bin
"DataHeaderIterator ..." in line 130 inside file DataFile.h in ChannelArchiever/LibIo dierctory to be renamed as "class DataHeaderIterator ..."
issue following commands from terminal.
cd ~/epics/extensions/src/ChannelArchiver make
-------------------- 10th: asyn4-8 Module -------------------- Make directory ~/epics/modules if does not exist. Untar the asyn4-8 tar file there.
Open the file ~/epics/moudles/asyn4-8/RELEASE
Define the path of EPICS base as : EPICS_BASE=~/epics/base-3.14.10
Undefine the IPAC and ASYN line by placing # at the start of the line if you donot have these modules
cd ~/epics/modules/asyn4-8 make
----------------------- 11th: ModbusR1-1 Module ----------------------- Make directory ~/epics/modules if does not exist. Untar the ModbusR1-2 tar file there.
Open the file ~/epics/moudles/ModbusR1-2/RELEASE
Define the path of EPICS base as : EPICS_BASE=~/epics/base-3.14.10 Define the path of the asyn module as : ASYN=~/epics/modules/asyn4-8 [modbus module depends on the ASYN module]
cd ~/epics/modules/modbusR1-2
make
copy and rename the iocBoot directory inside the modbusR1-2 directory as _iocBoot for future reference of examples. Edit the iocBoot directory as per your communication requirements. Modify the st.cmd files inside the iocCryogenics (or so..) as per your need if required. Also prepare the *.substitution files to make the records.
To run the ioc type the following commands from shell in our case.
cd ~/epics/modules/modbusR1-2/iocBoot/iocCryogenics
and then
../../bin/linux-x86/modbusApp st.cmd
your ioc will start running showing the command prompt as
epics>
Take action according to the error message if any.
--------------------------- 12th: Run our developed GUI --------------------------- Our Graphical user interfaces are developed in medm. There is a MAIN.adl file inside the directory which is to be run with medm.
Just copy and paste the developed *.adl files. To run these in execute mode type the following command from shell.
~/epics/extensions/bin/linux-x86/medm -x ~/epics/GUI/cryogenics/MAIN.adl
--------------------------------------------------
13th: Archiver Data Engine Config, Start and Stop -------------------------------------------------- To start the archieve data engine: ---------------------------------------- ~/epics/extensions/bin/linux-x86/ArchiveEngine ~/epics/data/engineconfig.xml ~/epics/data/index
N.B. : The engineconfig.xml and engineconfig.dtd sample is available in the ~/epics/extenstions/src/ChannelArchiver/engine directory. You have to search the file and modify these according to your archive need. Index files are created automatically. I have put the datas and the config files inside the ~/epics/data directory.
You can mount your storage disk to ~/epics/data path also
To view the configured channels: -------------------------------- From Web Browser: http://localhost:4812
To stop the archive data engine: --------------------------------- From Web Browser: http://localhost:4812/stop
-------------------------------- 14th: To Start the data server:
-------------------------------- ~/epics/extensions/bin/linux-x86/ArchiveDataServerStandalone ~/epics/data/abyss.conf ~/epics/data/index
---------------------------------- 15th: To Start the archive viewer:
----------------------------------- ~/epics/archive_viewer/archiveviewer.jar -u http://localhost:8080/RPC2
You need to install java and should have the archieveviewer.jar file for this.
On Wed, Dec 23, 2009 at 7:45 AM, Aditya Mandal <[email protected]> wrote:
I am a novice in linux and epics, can you guide me to install and run EPICS from my 2 Gb Pendrive. I like to communicate with a RS232 device using EPICS. with regards,
aditya mandal kolkata/India
-- Umashankar Panda
Office: Scientific Officer - D, Cryogenics Variable Energy Cyclotron Centre Dept. Of Atomic Energy, Govt. Of India 1/AF Bidhannagar, Kolkata - 700064
Residence: E-301, Fortune City, Ganganagar 155, Old Jessore Road Kolkata-132
Mobile: 09330615600
- References:
- Epics in Pen drive Aditya Mandal
- Navigate by Date:
- Prev:
EPICS Codeathon at Diamond, 24-28 May Andrew Johnson
- Next:
ArchiveViewer doen't connect Blaz Lampreht
- 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:
Re: Epics in Pen drive Ralph Lange
- Next:
Next collaboration meeting - Aix-en-Provence, 2-4 June 2010. Di Maio Franck
- 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
|