Commit 44ee4063 authored by Claes Sjofors's avatar Claes Sjofors

Merge branch 'master' of claes@pwrcvs:/data1/git/pwr

parents dc08c5e9 8d00b373
......@@ -149,31 +149,31 @@ This ends in a Signal list, that is a list of all input and output signals of th
At this point the question of which control system is to be used is raised, and one alternative
is of course Proview. You also have to decide which I/O-system to use and how to divide the
function in different process stations.
function among the different process stations.
<h1>IO-systems
The task of the I/O-system is to bring signals from the process to the control system, and to
put out signals to influence the process. The signals are usually digital or analog, but
there are also other types as integers and counters. You can choose between a rack and card
system connected to the process station, or a distributed I/O, e.g. profibus.
system connected to the process station, or distributed I/O, e.g. profibus.
<h1>Configure the system
When it's time to start to configure the system, you first create a new project in the
Administrator. The Administrator is a tool for creating orders among all the projects, as there
Administrator. The Administrator is a tool for creating order among all the projects, as there
can be plenty of them in time.
The configuration of a system is mainly done by creating objects in a database, the Workbench.
There is a large amount of objects to configure everything from IO-channels to PLC programs.
There are a large amount of objects to configure everything from IO-channels to PLC programs.
The Proview Object Reference Manual contains over 800 different types of objects. The objects
are placed in a tree structure, and you use a tool called the Configurator to create objects and
to navigate in the object tree.
The object tree is separated in two parts, the Plant hierarchy and the Node hierarchy.
The object tree is divided in two parts, the Plant hierarchy and the Node hierarchy.
The Plant hierarchy reflects the different functions in the plant and in the process, while
the Node hierarchy reflects the hardware of the control system, with computers, I/O-racks and
I/O-cards.
When the control system later is started in runtime, a copy of the object tree is created in
When the control system is started later in runtime, a copy of the object tree is created in
a realtime database, rtdb. The transfer from the Workbench to rtdb is done with so called
loadfiles, files that are generated from the Workbench and contain all its objects.
......@@ -356,7 +356,7 @@ have a material planning module in the system, an object is created for each mat
is processed in the plant. When the processing is completed, the object is removed.
<h2>SystemVolume
The system volume is a dynamic volume that reside in every node, and that keeps various
The system volume is a dynamic volume that resides in every node, and that keeps various
system objects.
<h2>DirectoryVolume
......@@ -364,9 +364,9 @@ The Directoy volume only exists in the development environment. Here the volumes
the system are configured.
<h1>Volyme Identity
Each volume has a unic identity, that is written with four numbers, separated with points,
Each volume has a unique identity, that is written with four numbers, separated by periods,
e.g. "_V0.3.4.23". The prefix _V states that it is a volume identity. To verify that the volume
identities are unique, there is a global volumelist that contains all volumes. Before creating
identities are unique, there is a global volume list that contains all volumes. Before creating
a project, the volumes of the project should be registered in the volume list.
</topic>
......@@ -443,12 +443,12 @@ name and the name of all the ancestors, e.g
<c>VolTrafficCross1:TrafficCross1-ControlSignals-Reset
If you want to be more specific and point out an attribute in an object, you add the attribute
name to the object name with a point between, e.g.
name to the object name with a period between, e.g.
<c>VolTrafficCross1:TrafficCross1-ControlSignals-Reset.ActualValue
Also an attribute can have several segments, since an attribute can consist of an object. The
attribute name segments are separated by points, e.g
attribute name segments are separated by periods, e.g
<c>VolTrafficCross1:Hydr-Valve.OpenSw.ActualValue
</topic>
......@@ -1047,7 +1047,7 @@ volumes are displayed. The next step is to configure a RootVolume.
Configure a Root Volume
A root volume is opened from the volume selection window. Select the volume and click on the
Ok button. This will start the configuration editor for the root volume. As for the
DirectoryVolume it is separated in two windows, but this time, the left window shows the
DirectoryVolume it is split in two windows, but this time, the left window shows the
plant configuration and the right the node configuration.
<h1>Plant Configuration
......@@ -1929,7 +1929,7 @@ A Step is used to describe a state in the process. The following applies to a st
<image> dg_fig50.gif
In each sequence you must have an initial step (InitStep) which differs from a usual step
at the following points:
in the following way:
- You should only have one initial step in a sequence.
- When the program starts its execution, the initial step is active.
......@@ -2067,7 +2067,7 @@ otherwise the expression may be misinterpreted at the execution.
The expression can contain advanced C code with arrays and pointers. When you write these, you
should be aware that indexing outside arrays, or erroneous pointers might cause the
execution of the plcprogram to terminate.
execution of the plc-program to terminate.
<h1>Alarm Supervision
In Proview it is possible to supervise analog and digital signals. Supervision of analog
......@@ -3386,7 +3386,7 @@ is fetched from the attribute ActualValue.
Application programs are often put into an infinite loop, supervising attributes in the
database and reacting to certain changes. In this case you preferably direct link to the
attribute, i.e. get a pointer. This is done by gdh_RefObjectInfo(). In the example below
the program is separated in an init() function direct linking to attributes, a scan()
the program is split in an init() function direct linking to attributes, a scan()
function containing the supervision and control functions, and a close() function removing
the direct links.
......@@ -3985,9 +3985,9 @@ by an application, also the rack and agent of the card have to be handled by the
As the Process attribute is a bitmask, a unit can be handled by several processes by
setting several bits in the mask. If you, for example, have several cards in a rack, and some
of the cards should be handled by the plc-process and some by an application, the rack unit
has to be handled by both the plc and the application. How and if it works to handle a
unit from several processes depends on how the I/O methods for the unit are written.
For example for Profibus, you can not separate the handling of slaves in different
has to be handled by both the plc and the application. Whether it works, to handle a
unit from several processes, depends on how the I/O methods for the unit are written.
For example for Profibus, you can not divide the handling of slaves into different
processes.
<c>#include rt_io_base.h
......@@ -4317,7 +4317,7 @@ In the Text attribute, the button text is stated.
<b>WebLink
A WebLink object configures a button in the menu to open an arbitrary URL. In WebTarget
is stated where the new page is put, in a separate frame, the right frame in the
is stated where the new page is put, in a separate frame, or the right frame in the
parent frame (both the menu and the right frame).
<b>Open a Ge graph as a java applet
......@@ -4812,10 +4812,10 @@ Always reset with 'pwr kill' before a new start attempt.
<topic>configurator_refman
The Configurator
The configurator is used to navigate in and configure the Workbench.
The configurator displays the object in one volume. The objects are usually separated in two
The configurator is used to navigate in, and configure the Workbench.
The configurator displays the objects in one volume. The objects are usually separated in two
windows, a left and a right, and how the separation is done depends on what type of volumes
that are handled.
are handled.
- For rootvolumes and subvolumes, the plant hierarchy is displayed in the left window, and
the node hierarchy in the right.
......@@ -5253,8 +5253,8 @@ the object editor is opened for the object. The object editor is opened in follo
- select the object and activate 'Functions/Open object' in the menu.
From the object editor you can change the values of various attributes. The attribute for a
plc object is separated in input attributes, internal attributes and output attributes.
From the object editor you can change the values of various attributes. The attributes for a
plc object are separated into input attributes, internal attributes and output attributes.
<b>Inputs
The value of an input attribute is fetched from another function block, via a connection.
......@@ -5328,11 +5328,11 @@ a thick, dashed line.
<b>Reference connections
If the editor has difficulties to find a path for the connection between the input and output
pin, because there are too many objects in the way, or because they reside in separate
pin, because there are too many objects in the way, or because they reside in different
documents, the connections are drawn as reference connections. Reference connections can also
be drawn by activating 'View/Reference connection' in the menu.
<b>Referens connection
<b>Reference connection
<image> dg_fig39.gif
<bookmark>feedback_connection
......@@ -5456,7 +5456,7 @@ c compiler is not activated, thus possible c code errors are not detected.
<h1>Cut and Paste
The plc editor contains a paste buffer. The paste buffer is common for all windows, which
makes it possible to copy between separate windows. With the functions 'Edit/Copy' and
makes it possible to copy between different windows. With the functions 'Edit/Copy' and
'Edit/Cut' in the menu, the selected objects are copied to the paste buffer (Cut also removes
them from the working area). The function 'Edit/Paste' copies the paste buffer to the working
area. The copied objects are now moved with the cursor, and you place them on the correct
......@@ -5730,7 +5730,7 @@ Link
<i>The <link> tag is a link to another help topic. The <link> tag should be placed at the
end of the line. When the line of the link is activated the topic of the link will be
displayed. The link tag should be followed by the topic, and can also be followed by a
bookmark and the helpfile where the topic resides, separated with comma. If a line contains
bookmark and the helpfile where the topic resides, separated by comma. If a line contains
a link, it will be marked with an arrow.
<i>'some text' <link> 'topic'[,'bookmark'][,'helpfile']
......@@ -5988,7 +5988,7 @@ Also the users that the parent has inherited from its parent are inherited. A sy
override an inherited user by defining the username in its own systemgroup.
A systemgroup is referred to by the 'path'-name in the hierarchy, where the names are separated
by points, e.g. 'ssab.hql.se1', where ssab is the root group, and se1 the lowest level in the
by periods, e.g. 'ssab.hql.se1', where ssab is the root group, and se1 the lowest level in the
hierarchy.
A Proview system is connected to a systemgroup by stating the systemgroup in the System
......@@ -6059,7 +6059,7 @@ Proview user database V1.0.0
<c>. . . . . . amanda Operator4 (512)
Look at the example above. This is a listing of a user database. To the left, you see the
system groups, and the number of points mark their level in the hierarchy. In the same row
system groups, and the number of periods mark their level in the hierarchy. In the same row
the attribute of the system group is written. Under each systemgroup, its users with
privileges are found. Thus the systemgroup ssab has the users sysansv, skiftel and 55.
......@@ -6697,7 +6697,7 @@ elements in Elements.
Attribute objects can also contain attributes that are attribute objects. The number of levels
are limited to 20, and the total attribute name is limited to 255 characters.
An attribute in an attribute object is referred to with point as delimiter, i.e. the
An attribute in an attribute object is referred to with periods as delimiter, i.e. the
attribute Description in the attribute object Pump in object o, is referred to with the name
'o.Pump.Description'. If Pump also is an array of pumpobjects, the name of the Description
attribute in the first pump object is 'o.Pump[0].Description'.
......@@ -7743,7 +7743,7 @@ group are defined. You can also build a hierarchy of system groups where child g
the users of their parent, and additional users can be defined for each child.
A system is connected to a system group by the SystemGroup attribute in the $System object.
The notation for a system group in a hierarchy is the names of the group separated by a point,
The notation for a system group in a hierarchy is the names of the group separated by a period,
for example 'Main.West.F1'.
In the example below Eric is responsible for all the systems in the plant, and is defined on
......@@ -7804,7 +7804,7 @@ The registration is done by the administrator:
- Logout with the command 'logout'.
<h2>Volume name
The name of the volume, a unic name with max 31 characters.
The name of the volume, a unique name with max 31 characters.
<h2>Volume Identity
The volume identity is a 32 bit word specified in the form v1.v2.v3.v4 where v1, v2, v3 and v4
......
......@@ -54,7 +54,7 @@ then
then
ar_name_pict=${pwrp_lib}/ra_rtt_${pgmname}_pict.a
cc=arm-linux-gnueabi-gcc-4.3
cc=$pwre_cc
cinc="-I$pwr_inc -I$pwrp_rttbld"
cflags="-DOS_LINUX -DOS=linux -DHW_ARM=1 -DPOSIX_SOURCE -DWall"
${cc} -c -o $pwrp_obj/${name}.o $pwrp_rttbld/${name}.c ${cinc} ${cflags}
......@@ -65,7 +65,7 @@ then
bld_dir=$pwre_broot/$pwre_os/$pwre_hw/bld/lib/dtt
# echo $ar_name $ar_name_pict
cc=arm-linux-gnueabi-gcc-4.3
cc=$pwre_cc
cinc="-I$pwr_inc -I${bld_dir}"
cflags="-DOS_LINUX -DOS=linux -DHW_ARM=1 -DPOSIX_SOURCE -DWall"
${cc} -c -o ${bld_dir}/${name}.o \
......
......@@ -28,7 +28,7 @@ pwra_set_func()
baseroot=${baseroot%/}
if [ ! -e "$baseroot" ]; then
echo "Base $baseroot doesn't exist"
else
elif [ "$3" != "cross" ]; then
if [ ! -e $baseroot/$os/$hw/exp/exe/pwrp_env.sh ]; then
echo "Not a base directory: $baseroot"
return
......
#!/bin/bash
# Get version
if [ -e $pwr_inc/pwr_version.h ]; then
ver=`eval cat $pwr_inc/pwr_version.h | grep "\bpwrv_cWbdbVersionShortStr\b" | awk '{print $3}'`
if [ -z $ver ]; then
echo "Unable to get pwr version"
ver="V00"
fi
ver=${ver:2:2}
fi
# Generate version help file
{
if [ ! -e $pwre_sroot/tools/pkg/deb_armel/pwrrt/control ]; then
echo "Controlfile not found"
exit 1
fi
datfile=$pwre_sroot/tools/pkg/deb_armel/pwrrt/control
echo "<topic> version"
d=`eval date +\"%F %X\"`
{
let printout=0
while read line; do
if [ "${line:0:9}" = "Package: " ]; then
package=${line#Package: }
fi
if [ "${line:0:9}" = "Standards-Version: " ]; then
version=${line#Version: }
fi
if [ "${line:0:14}" = "Architecture: " ]; then
arch=${line#Architecture: }
fi
if [ "${line:0:12}" = "Description:" ]; then
echo ""
echo "<image> pwr_logga.gif"
echo ""
echo ""
echo ""
echo "<b>Proview V${version:0:3}"
echo "Version V$version"
echo ""
echo "Copyright 2004-${d:0:4} SSAB Oxelsund AB"
echo ""
echo "This program is free software; you can redistribute it and/or"
echo "modify it under the terms of the GNU General Public License as"
echo "published by the Free Software Foundation, either version 2 of"
echo "the License, or (at your option) any later version."
echo ""
echo "This program is distributed in the hope that it will be useful"
echo "but WITHOUT ANY WARRANTY; without even the implied warranty of"
echo "MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE."
echo "For more details, see the"
echo "GNU General Public License. <weblink> http://www.proview.se/gpllicense.html"
echo ""
echo "E-mail postmaster@proview.se <weblink> mailto:postmaster@proview.se"
echo "Internet www.proview.se <weblink> http://www.proview.se"
echo ""
echo ""
echo "<b>Package"
echo "Package $package""_""$version""_""$arch"
echo "Build date $d"
echo "Package description:"
echo ""
printout=1
else
if [ $printout -eq 1 ]; then
echo $line
fi
fi
done
} < $datfile
echo "</topic>"
} > $pwr_eexe/xtt_version_help.dat
# Convert to html
$pwre_host_exe/co_convert -t -d $pwr_doc $pwr_eexe/xtt_version_help.dat
{
echo "<html><head>"
echo "<meta http-equiv=\"Refresh\" content=\"5;../xtt_version_help_version.html\">"
echo "</head></html>"
} > $pwr_doc/en_us/package_version.html
# Print rt version file
echo "Version: $version" > $pwr_eexe/rt_version.dat
if [ "$1" == "-v" ]; then
exit
fi
pkgroot=$pwre_broot/$pwre_target/bld/pkg/pwrrt
pkgsrc=$pwre_sroot/tools/pkg/deb_armel/pwrrt
# Create directories
echo "-- Create package tree"
mkdir -p $pkgroot/debian
mkdir -p $pkgroot/usr/share/doc/pwrrt
mkdir -p $pkgroot/etc/init.d
find $pkgroot -type d | xargs chmod 755
# control
cp $pkgsrc/control $pkgroot/debian
cp $pkgsrc/rules $pkgroot/debian
cp $pkgsrc/changelog $pkgroot/debian
cp $pkgsrc/postinst $pkgroot/debian
cp $pkgsrc/prerm $pkgroot/debian
# copyright
cp $pkgsrc/copyright $pkgroot/usr/share/doc/pwrrt
# changelog
cp $pkgsrc/changelog $pkgroot/usr/share/doc/pwrrt
gzip -fq --best $pkgroot/usr/share/doc/pwrrt/changelog
# changelog.Debian
cp $pkgsrc/changelog.Debian $pkgroot/usr/share/doc/pwrrt
gzip -fq --best $pkgroot/usr/share/doc/pwrrt/changelog.Debian
# Startup files
cp $pkgsrc/pwrp_profile $pkgroot/etc
chmod a+x $pkgroot/etc/pwrp_profile
cp $pkgsrc/pwr $pkgroot/etc/init.d
chmod a+x $pkgroot/etc/init.d/pwr
#cp $pkgsrc/gdhserver $pkgroot/etc/init.d
#chmod a+x $pkgroot/etc/init.d/gdhserver
# Man pages
mkdir -p $pkgroot/usr/share/man/man1
cp $pkgsrc/pwr.1 $pkgroot/usr/share/man/man1/pwr.1
gzip -fq --best $pkgroot/usr/share/man/man1/pwr.1
cp $pkgsrc/rt_ini.1 $pkgroot/usr/share/man/man1/rt_ini.1
gzip -fq --best $pkgroot/usr/share/man/man1/rt_ini.1
cp $pkgsrc/rt_xtt.1 $pkgroot/usr/share/man/man1/rt_xtt.1
gzip -fq --best $pkgroot/usr/share/man/man1/rt_xtt.1
cp $pkgsrc/rt_rtt.1 $pkgroot/usr/share/man/man1/rt_rtt.1
gzip -fq --best $pkgroot/usr/share/man/man1/rt_rtt.1
# Copy proview
mkdir $pkgroot/usr/pwrrt
currentdir="`eval pwd`"
tarfile=$pwre_broot/$pwre_target/bld/pkg/pwrtmp.tar
cd $pwre_broot/$pwre_target/exp
echo "-- Copy release to package tree"
tar -cf $tarfile *
cd $pkgroot/usr/pwrrt
tar -xf $tarfile
rm $tarfile
rm -r $pkgroot/usr/pwrrt/lib/*.a
rm -r $pkgroot/usr/pwrrt/exe/*.pwr_com
rm -r $pkgroot/usr/pwrrt/exe/*.gif
rm -r $pkgroot/usr/pwrrt/exe/*.wav
rm -r $pkgroot/usr/pwrrt/exe/upgrade*
rm -r $pkgroot/usr/pwrrt/exe/*.mk
rm -r $pkgroot/usr/pwrrt/exe/en_us
rm -r $pkgroot/usr/pwrrt/exe/sv_se
rm -r $pkgroot/usr/pwrrt/exe/fr_fr
rm -r $pkgroot/usr/pwrrt/exe/de_de
rm -r $pkgroot/usr/pwrrt/exe/zh_cn
rm -r $pkgroot/usr/pwrrt/db
rm -r $pkgroot/usr/pwrrt/doc
rm -r $pkgroot/usr/pwrrt/inc
rm -r $pkgroot/usr/pwrrt/lis
rm -r $pkgroot/usr/pwrrt/obj
rm -r $pkgroot/usr/pwrrt/src
#rm -r $pkgroot/usr/pwrrt/exe/wb*
#cp $pwr_eexe/wb_distr_keepboot.sh $pkgroot/usr/pwrrt/exe
cd $currentdir
# Copy configuration files to cnf
cp $pkgsrc/proview.cnf $pkgroot/usr/pwrrt/cnf
# Copy op to cnf
#mkdir $pkgroot/usr/pwrrt/cnf/op
#cp $pwre_sroot/tools/pkg/deb/op/.bashrc $pkgroot/usr/pwrrt/cnf/op
#cp $pwre_sroot/tools/pkg/deb/op/.bash_profile $pkgroot/usr/pwrrt/cnf/op
#cp $pwre_sroot/tools/pkg/deb/op/.rtt_start $pkgroot/usr/pwrrt/cnf/op
#cp $pwre_sroot/tools/pkg/deb/op/.xtt_start $pkgroot/usr/pwrrt/cnf/op
# Copy user to cnf
#mkdir $pkgroot/usr/pwrrt/cnf/user
#cp $pwre_sroot/tools/pkg/deb/user/.bashrc $pkgroot/usr/pwrrt/cnf/user
#cp $pwre_sroot/tools/pkg/deb/user/.bash_profile $pkgroot/usr/pwrrt/cnf/user
#cp $pwre_sroot/tools/pkg/deb/user/.rtt_start $pkgroot/usr/pwrrt/cnf/user
#cp $pwre_sroot/tools/pkg/deb/user/.xtt_start $pkgroot/usr/pwrrt/cnf/user
# Create package
echo "-- Building package"
cd $pkgroot
dpkg-buildpackage -aarmel -b
rm -r $pkgroot
pwrrt (4.8.2-1) stable; urgency=low
* Some change
-- Claes Sjfors <claes.sjofors@proview.se> Sat, 23 Jul 2011 10:00:00 +0100
\ No newline at end of file
Proview. See also normal changelog file.
\ No newline at end of file
Source: pwrrt
Section: unknown
Priority: extra
Build-Depends:
Standards-Version: 4.8.2-1
Maintainer: Claes Sjofors <claes.sjofors@proview.se>
Homepage: <proview.se>
Package: pwrrt
Section: base
Priority: optional
Architecture: armel
Replaces: pwr34,pwr39,pwr40,pwr41,pwr42,pwr43,pwr44,pwr45,pwr46,pwr47,pwr48
Description: Proview runtime environment
4.8.0-1 Base release
4.8.1-1
- I/O support for Arduino USB board.
- Remote support for Websphere Message Queue.
- Operator event logging and replay.
- Chinese translation in operator environment.
4.8.1-2
- Curve window, second mark and export dialog added.
- Xtt, problems with OpPlace and XttGraph objects in SharedVolume fixed.
- Flow alloc color problem fixed.
4.8.2-1
- Support for Hilscher cifX boards.
- Support for Hilscher cifX Profinet Controller.
- UDP communication configured with IO objects.
- Support for USB joystick.
Proview
Copyright: SSAB Oxelsund AB <ssabox.com>
2003-11-21
The home page of Proview is at:
http://www.proview.se
#!/bin/bash
#
# Startscript fr PWR av Ulf Ljungdahl
#
PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/usr/local/jdk1.3/bin/java
. /etc/pwrp_profile
gdh_start()
{
export LD_LIBRARY_PATH=$pwr_exe
export CLASSPATH=$pwr_lib/pwr_rt.jar:$pwr_lib/pwr_jop.jar
sleep 5
sudo -u pwrp $pwr_exe/rt_webmon.sh &
sleep 2
sudo -u pwrp $pwr_exe/rt_webmonmh.sh &
#su pwrp <java jpwr.rt.GdhServer &
#sudo -u pwrp java jpwr.rt.GdhServer &
}
gdh_stop()
{
kill -9 `ps ax | grep "java" | awk '{ print $1}'`
}
case "$1"
in
start)
echo "Startar GDH server..."
#if [ 'test -x ps aux | grep plc | grep -v grep' ]
# then
# echo "PWR kr, stoppar det frst.."
# pwr_stop
# fi
gdh_start
echo "Klar."
;;
stop)
echo "Stoppar GDH server..."
gdh_stop
echo "Klar"
;;
restart)
echo "Startar om GDH server."
echo "Stoppar det frst."
gdh_stop
sleep 1
echo "Startar igen."
gdh_start
echo "Klar."
;;
*)
echo "Usage:{start|stop|restart}" >&2
#echo "Ingen parameter angiven, startar PWR"
#$0 start
exit 1
;;
esac
exit 0
#!/bin/bash
set -e
if [ "$pwrrt_xtrace" != "" ]; then
set -o xtrace
fi
# Automatically added by dh_installdocs
if [ "$1" = "configure" ]; then
if [ -d /usr/doc -a ! -e /usr/doc/pwrtest -a -d /usr/share/doc/pwrtest ]; then
ln -sf ../share/doc/pwrtest /usr/doc/pwrtest
fi
fi
# End automatically added section
proot="/pwrp"
aroot="/usr/pwrp/adm"
chmod u+s /usr/pwrrt/exe/rt_ini
chmod u+s /usr/pwrrt/exe/rt_rtt
#chmod u+s /usr/pwrrt/exe/rt_xtt
chmod u+s /usr/pwrrt/exe/rt_bck
chmod u+s /usr/pwrrt/exe/rt_gdhget
chown root /usr/pwrrt/exe/rs_remote_alcm
chmod u+s /usr/pwrrt/exe/rs_remote_alcm
if getent group dialout > /dev/null; then
chgrp dialout /usr/pwrrt/exe/rs_remote_serial
chmod ug+s /usr/pwrrt/exe/rs_remote_serial
chgrp dialout /usr/pwrrt/exe/rs_remote_3964r
chmod ug+s /usr/pwrrt/exe/rs_remote_3964r
fi
chown root /usr/pwrrt/exe/rt_prio
chmod u+s /usr/pwrrt/exe/rt_prio
chown root /usr/pwrrt/exe/rt_mozilla
chmod u+s /usr/pwrrt/exe/rt_mozilla
# Copy configuration files
new_cnf=0
if [ ! -e /etc/proview.cnf ]; then
cp /usr/pwrrt/cnf/proview.cnf /etc
new_cnf=1
fi
# Add pwrp_profile to profile
if ! grep -q "/etc/pwrp_profile\b" /root/.bashrc; then
cat >> /root/.bashrc <<-EOF
if [ -e /etc/pwrp_profile ]; then
source /etc/pwrp_profile
fi
EOF
fi
# Create startup link
set +e
checklink=`eval ls /etc/rc2.d/S90pwr 2>/dev/null`
set -e
if [ "$checklink" != "" ]; then
rm /etc/rc2.d/S90pwr
fi
ln -s /etc/init.d/pwr /etc/rc2.d/S90pwr
set +e
checklink=`eval ls /etc/rc2.d/S91gdhserver 2>/dev/null`
set -e
if [ "$checklink" != "" ]; then
rm /etc/rc2.d/S91gdhserver
fi
# Create project
new_project=0
if [ ! -e $proot ]; then
new_project=1
mkdir $proot
mkdir $proot/common
mkdir $proot/common/inc
mkdir $proot/common/load
mkdir $proot/common/log
mkdir $proot/common/loghist
mkdir $proot/common/db
mkdir $proot/common/web
mkdir $proot/arm_linux
mkdir $proot/arm_linux/exe
mkdir $proot/arm_linux/lib
mkdir $proot/arm_linux/obj
mkdir $proot/arm_linux/lis
fi
if [ ! -e $aroot/db ]; then
mkdir -p $aroot/db
fi
# Copy jar-files to web directory
if [ -e /etc/proview.cnf ]; then
set +e
web_dir=`eval cat /etc/proview.cnf | grep "\\bwebDirectory\\b" | awk '{print $2}'`
set -e
if [ -e "$web_dir" ]; then
cp /usr/pwrrt/lib/pwr_rt_client.jar $web_dir
cp /usr/pwrrt/lib/pwr_jop.jar $web_dir
cp /usr/pwrrt/lib/pwr_jopc.jar $web_dir
fi
fi
changes=0
if [ $new_cnf -eq 1 ]; then
changes=1
elif [ $new_project -eq 1 ]; then
changes=1
fi
if [ $changes -ne 0 ]; then
echo ""
echo ""
echo "***********************************************************"
echo " Don't forget to do this :"
echo ""
fi
if [ $new_cnf -eq 1 ]; then
echo "-- Enter QcomBusId in /etc/proview.cnf"
fi
if [ $new_project -eq 1 ]; then
nodename=`eval uname -n`
echo "-- Distribute project to $nodename"
fi
if [ $changes -ne 0 ]; then
echo ""
echo "***********************************************************"
echo ""
fi
#!/bin/sh
set -e
# Automatically added by dh_installdocs
if [ \( "$1" = "upgrade" -o "$1" = "remove" \) -a -L /usr/doc/pwrtest ]; then
rm -f /usr/doc/pwrtest
fi
# End automatically added section
proot="/pwrp"
aroot="/usr/pwrp/adm"
echo ""
echo -n "Do you wan't to remove project (y/n) [n] "
read remove_all
if [ "$remove_all" = "y" ]; then
echo "-- Remove project $proot"
if [ -e $proot ]; then
rm -r $proot
fi
if [ -e $aroot ]; then
rm -r $aroot
fi
fi
# Remove startup
if [ -e /etc/rc2.d/S90pwr ]; then
rm /etc/rc2.d/S90pwr
fi
# Remove jar-files on web directory
if [ -e /etc/proview.cnf ]; then
web_dir=`eval cat /etc/proview.cnf | grep "\\bwebDirectory\\b" | awk '{print $2}'`
if [ -e $web_dir/pwr_rt_client.jar ]; then
rm $web_dir/pwr_rt_client.jar
fi
if [ -e $web_dir/pwr_jop.jar ]; then
rm $web_dir/pwr_jop.jar
fi
fi
#
# Configuration file for Proview
#
# Default QCOM Bus Id
#
qcomBusId 1
#
# Web directory
#
webDirectory /pwrp/common/web
#
# Default privileges for SevXtt: Read, Admin or None
#
sevXttDefaultPriv Read
#!/bin/bash
### BEGIN INIT INFO
# Provides: pwr
# Required-Start: $network
# Required-Stop: $network
# Default-Start: 2
# Default-Stop: 1
# Short-Description: Start Proview Runtime Environment.
### END INIT INFO
PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin
wrapper="/tmp/rt_ini_wrapper"
killer="/tmp/pwr_killer"
. /etc/pwrp_profile
umask 002
create_wrapper()
{
if [ ! -e $wrapper ] ; then
echo "#!/bin/bash" > $wrapper
echo "source /etc/pwrp_profile" >> $wrapper
echo "umask 002" >> $wrapper
echo "\$pwr_exe/rt_ini \$* &" >> $wrapper
chmod a+rx $wrapper
if [ ! -e $wrapper ] ;then
echo "$wrapper not writable, check permissions"
exit
fi
fi
}
create_killer()
{
echo "#!/bin/bash" > $killer
echo "source /etc/pwrp_profile" >> $killer
echo "umask 002" >> $killer
echo "`ps ax | grep "rt_" | awk '{ print "kill -9 "$1}'`" >> $killer
echo "`ps ax | grep "rs_" | awk '{ print "kill -9 "$1}'`" >> $killer
echo "`ps ax | grep "ra_" | awk '{ print "kill -9 "$1}'`" >> $killer
echo "`ps ax | grep "sev_" | awk '{ print "kill -9 "$1}'`" >> $killer
echo "`ps ax | grep "opc_" | awk '{ print "kill -9 "$1}'`" >> $killer
echo "eval `ipcs -s|grep ^0x|grep "[ \t]pwrp[ \t]"|awk '{printf "ipcrm sem %s;", $2}'`" >> $killer
echo "eval `ipcs -q|grep ^0x|grep "[ \t]pwrp[ \t]"|awk '{printf "ipcrm msg %s;", $2}'`" >> $killer
echo "eval `ipcs -m|grep ^0x|grep "[ \t]pwrp[ \t]"|awk '{printf "ipcrm shm %s;", $2}'`" >> $killer
echo "rm /tmp/pwr*\$PWR_BUS_ID" >> $killer
chmod a+rx $killer
if [ ! -e $killer ] ;then
echo "$killer not writable, check permissions"
exit
fi
}
pwr_start()
{
create_wrapper
if [ `whoami` == "root" ];then
$wrapper
else
sudo -u pwrp $wrapper
fi
}
pwr_stop()
{
create_wrapper
if [ `whoami` == "root" ];then
$wrapper -s
if [ -e $pwrp_exe/pwrp_stop.sh ]; then
source $pwrp_exe/pwrp_stop.sh
fi
else
sudo -u pwrp $wrapper -s
if [ -e $pwrp_exe/pwrp_stop.sh ]; then
sudo -u pwrp source $pwrp_exe/pwrp_stop.sh
fi
fi
while [ "`ps aux | grep -v grep | grep rt_`" != "" ] ; do sleep 1; done
}
pwr_reload()
{
if [ `whoami` == "root" ];then
$pwr_exe/rt_ini_wrapper -r
else
sudo -u pwrp $pwr_exe/rt_ini_wrapper -r
fi
}
pwr_kill()
{
create_killer
if [ `whoami` == "root" ];then
$killer
else
sudo -u pwrp $killer
fi
}
case "$1"
in
start)
echo "Start Proview Runtime Environment."
pwr_start
echo "Done."
;;
stop)
echo "Stop Proveiw Runtime Environment."
pwr_stop
echo "Done."
;;
restart)
echo "Restart Proview Runtime Environment."
echo "Closing down..."
pwr_stop
sleep 1
echo "Starting..."
pwr_start
echo "Done."
;;
reload)
echo "Reload Proview Runtime Environment"
pwr_reload
echo "Done."
;;
kill)
echo "Remove all processes and resources for Proview Storage Environment"
pwr_kill
echo "Done."
;;
reset)
echo "Remove all processes and resources for Proview Storage Environment"
pwr_kill
echo "Done."
;;
*)
echo " pwrsev Start and stop Proview Storage Environment" >&2
echo "" >&2
echo " Usage:" >&2
echo " pwr start|stop|restart|reload|reset" >&2
echo "" >&2
echo " start Start Runtime environment" >&2
echo " stop Stop Runtime environment" >&2
echo " restart First stop and then start Runtime environment" >&2
echo " reload Soft restart of Runtime environment" >&2
echo " reset Remove all processes and resources" >&2
echo "" >&2
exit 1
;;
esac
exit 0
.TH pwr "1" "April 2005" "Proview" "Proview Manual"
.SH NAME
pwr - start and stop Proview runtime environment
.SH SYNOPSIS
.B pwr
[start][stop][restart][reload][reset]
.SH DESCRIPTION
Start and stop command for Proview runtime environment.
.SH OPTIONS
.HP
\fBstart\fR
.IP
Start Proview runtime environment.
.HP
\fBstop\fR
.IP
Stop Proview runtime environment.
.HP
\fBrestart\fR
.IP
First stop and then start the Proview runtime environment.
.HP
\fBreload\fR
.IP
Soft restart of Proview runtime environment.
.HP
\fBreset\fR
.IP
Remove all processes and resources.
.SH FILES
/etc/pwrp_profile
The Proview system wide configuration file.
.SH ENVIRONMENT
.HP
PWR_BUS_ID
.IP
QCOM bus identity.
.SH AUTHOR
Written by UL.
.SH "SEE ALSO"
.BR rt_ini(1)
bus_id=""
if [ -e /etc/proview.cnf ]; then
bus_id=`eval cat /etc/proview.cnf | grep "\\bqcomBusId\\b" | awk '{print $2}'`
fi
if [ -e /etc/proview.cnf ]; then
web_dir=`eval cat /etc/proview.cnf | grep "\\bwebDirectory\\b" | awk '{print $2}'`
fi
export PWR_BUS_ID=$bus_id
export pwrb_root=/usr/pwrrt
export pwrp_root=/pwrp
export pwr_exe=$pwrb_root/exe
export pwr_lib=$pwrb_root/lib
export pwr_obj=$pwrb_root/obj
export pwr_inc=$pwrb_root/inc
export pwr_load=$pwrb_root/load
export pwr_lis=$pwrb_root/lis
export pwr_doc=$pwrb_root/doc
export pwrp_exe=$pwrp_root/arm_linux/exe
export pwrp_lib=$pwrp_root/arm_linux/lib
export pwrp_obj=$pwrp_root/arm_linux/obj
export pwrp_lis=$pwrp_root/arm_linux/lis
export pwrp_inc=$pwrp_root/common/inc
export pwrp_load=$pwrp_root/common/load
export pwrp_log=$pwrp_root/common/log
export pwrp_db=$pwrp_root/common/db
export pwrp_web=$web_dir
export pwra_db=/usr/pwrp/adm/db
jdk=`eval ls -t /usr/local | grep -m 1 ^jdk`
if [ "$jdk" == "" ]; then
jdk=`eval ls -t /usr/local | grep -m 1 ^jre`
fi
export jdk=/usr/local/$jdk
export jdk_home=$jdk/bin
PATH=$PATH:$pwr_exe:$pwrp_exe:$jdk_home
#Set display to remote computer
export DISPLAY=$REMOTEHOST:0.0
#symbols to define start/stop commands for PWR
alias pwr_stop='/etc/init.d/pwr stop'
alias pwr_stop.sh="/etc/init.d/pwr stop"
alias pwr_start="/etc/init.d/pwr start"
alias pwr="/etc/init.d/pwr"
alias boot="/usr/bin/sudo /sbin/reboot"
if [ -e $pwrp_exe/profile ]; then
source $pwrp_exe/profile
fi
.TH rt_ini "1" "April 2005" "Proview" "Proview Manual"
.SH NAME
rt_ini - start, restart or stop the Proview runtime environment
.SH SYNOPSIS
.B rt_ini
[\fIOPTION\fR]
.SH DESCRIPTION
Startup process for the Proview runtime environment.
.SH OPTIONS
.HP
\fB\-a\fR
.IP
Application file. The application file defines the application processes for
the node. The default name is $pwrp_load/ld_appl_'node'_'busid'.txt, where node is
the nodename and busid is the QCOM bus id, for example
$pwrp_load/ld_appl_vwxn1t_507.txt
.HP
\fB\-b\fR
.IP
Boot file. The default bootfile is $pwrp_load/ld_boot_'node'_'busid'.txt, where node
is the nodename and busid the QCOM bus id, for example
$pwrp_load/ld_appl_vwxn1t_0507.txt
.HP
\fB\-c\fR
.IP
Console file. The output of log messages to the console device can be redirected with
the -c option.
.HP
\fB\-d\fR
.IP
Load file directory. Default is $pwrp_load.
.HP
\fB\-e\fR
.IP
Ignore errors.
.HP
\fB\-f\fR
.IP
Ignore fatal errors.
.HP
\fB\-h\fR
.IP
Print help.
.HP
\fB\-i\fR
.IP
Interactive. Print error messages to terminal.
.HP
\fB\-n\fR
.IP
Node name.
.HP
\fB\-p\fR
.IP
Plc file. Default is $pwrp_exe/plc_'node'_'busid' where node id the node name and busid
the QCOM bus id.
.HP
\fB\-q\fR
.IP
QCOM bus id.
.HP
\fB\-r\fR
.IP
Soft restart.
.HP
\fB\-s\fR
.IP
Stop Proview.
.HP
\fB\-v\fR
.IP
Verbose.
.HP
\fB\-w\fR
.IP
Ignore warnings.
.HP
\fB\-A\fR
.IP
Alias file. Default is $pwrp_load/pwrp_alias.dat
.HP
\fB\-?\fR
.IP
Print help.
.SH FILES
/etc/pwrp_profile
The Proview system wide configuration file.
.SH "SEE ALSO"
.BR pwr(1)
.TH rt_rtt "1" "April 2005" "Proview" "Proview Manual"
.SH NAME
rt_rtt - Proview Runtime Terminal Tool
.SH SYNOPSIS
.B rt_rtt
[user] [script] [configuration]
.SH DESCRIPTION
Examine and navigate in the realtime database from a VT100 terminal.
.SH OPTIONS
.HP
\fBuser\fR
.IP
The user of the session. OP for operator, SYS for system manager.
.HP
\fBscript\fR
.IP
A rtt script file.
.HP
\fBconfiguration\fR
.IP
A RttConfig object that configures the session.
.SH AUTHOR
Written by cs.
.SH "SEE ALSO"
.BR rt_xtt(1)
.TH rt_xtt "1" "April 2005" "Proview" "Proview Manual"
.SH NAME
rt_xtt - Proview Operator Environment
.SH SYNOPSIS
.B rt_xtt
[\fIOPTION\fR] [opplace]
.SH DESCRIPTION
The Proview Operator Environment contains a set of utitlities to display information
about the process and the Proview system:
.RS
\- Operator window.
.RE
.RS
\- Process Graphics drawn in the Ge editor.
.RE
.RS
\- Trends and fastcurves.
.RE
.RS
\- Helptexts.
.RE
.RS
\- Navigator for the realtime database.
.RE
.RS
\- Alarms and events.
.RE
.SH OPTIONS
.HP
\fBopplace\fR
.IP
The name of the OpPlace object for the operator place.
.HP
\fB\-l\fR
.IP
Language.
.RS
en_us English
.RE
.RS
sv_se Swedish.
.RE
.RS
de_de German.
.RE
.RS
en_us is default.
.RE
.HP
\fB\-u\fR
.IP
Use opplace object with the same name as the current user.
.HP
\fB\-s\fR
.IP
Show a selection list of available OpPlace objects.
.HP
\fB\-a\fR
.IP
Connect to audio device.
.HP
\fB\-q\fR
.IP
Quiet. Hide license information.
.SH AUTHOR
Written by cs.
.SH "SEE ALSO"
.BR pwr(1),
.BR rt_ini(1)
#!/usr/bin/make -f
# -*- makefile -*-
# Sample debian/rules that uses debhelper.
# This file was originally written by Joey Hess and Craig Small.
# As a special exception, when this file is copied by dh-make into a
# dh-make output file, you may use that output file without restriction.
# This special exception was added by Craig Small in version 0.37 of dh-make.
# Uncomment this to turn on verbose mode.
#export DH_VERBOSE=1
%:
dh $@
override_dh_auto_install:
echo "Install pwrrt"
mv etc debian/tmp/
mv usr debian/tmp/
include $(pwre_dir_symbols)
ifndef variables_mk
-include $(pwre_sroot)/tools/bld/src/$(os_name)/$(hw_name)/variables.mk
endif
ifndef variables_mk
include $(pwre_sroot)/tools/bld/src/$(os_name)/variables.mk
endif
ifndef rules_mk
-include $(pwre_sroot)/tools/bld/src/$(os_name)/$(hw_name)/rules.mk
endif
ifndef rules_mk
include $(pwre_sroot)/tools/bld/src/$(os_name)/rules.mk
endif
.SUFFIXES:
.PHONY : all init copy lib exe clean realclean \
$(clean_ge)
all : init copy lib exe
init : dirs
copy :
lib :
exe : $(bld_dir)/control_pwrrt
clean :
realclean :
dirs : $(bld_dir)$(dir_ext)
$(bld_dir)$(dir_ext) :
@ $(mkdir) -p $(mkdirflags) $(basename $@)
$(bld_dir)/control_pwrrt : ../../../pwrrt/control
@ echo "build $(target)"
@ ../../../pwrrt/build.sh
@ cp $(source) $(target)
......@@ -28,7 +28,7 @@ pwra_set_func()
baseroot=${baseroot%/}
if [ ! -e "$baseroot" ]; then
echo "Base $baseroot doesn't exist"
else
elif [ "$3" != "cross" ]; then
if [ ! -e $baseroot/$os/$hw/exp/exe/pwrp_env.sh ]; then
echo "Not a base directory: $baseroot"
return
......@@ -116,14 +116,21 @@ EOF
pwra_parse ()
{
unamestr=`eval uname`
machine=`eval uname -m`
if [ "$machine" != "x86_64" ]; then
machine="x86"
if [ $unamestr == "Darwin" ]; then
os="os_macos"
hw="hw_x86_64"
elif [ $unamestr == "FreeBSD" ]; then
os="os_freebsd"
hw="hw_x86_64"
else
if [ $machine != "x86_64" ]; then
machine="x86"
fi
os="os_linux"
hw="hw_"$machine
fi
platform=$machine"_linux"
os="os_linux"
hw="hw_"$machine
#mysql_socket="--socket /var/lib/mysql/mysql.sock"
local cmd
......
......@@ -28,7 +28,7 @@ pwra_set_func()
baseroot=${baseroot%/}
if [ ! -e "$baseroot" ]; then
echo "Base $baseroot doesn't exist"
else
elif [ "$3" != "cross" ]; then
if [ ! -e $baseroot/$os/$hw/exp/exe/pwrp_env.sh ]; then
echo "Not a base directory: $baseroot"
return
......@@ -116,14 +116,21 @@ EOF
pwra_parse ()
{
unamestr=`eval uname`
machine=`eval uname -m`
if [ "$machine" != "x86_64" ]; then
machine="x86"
if [ $unamestr == "Darwin" ]; then
os="os_macos"
hw="hw_x86_64"
elif [ $unamestr == "FreeBSD" ]; then
os="os_freebsd"
hw="hw_x86_64"
else
if [ $machine != "x86_64" ]; then
machine="x86"
fi
os="os_linux"
hw="hw_"$machine
fi
platform=$machine"_linux"
os="os_linux"
hw="hw_"$machine
#mysql_socket="--socket /var/lib/mysql/mysql.sock"
local cmd
......
......@@ -28,7 +28,7 @@ pwra_set_func()
baseroot=${baseroot%/}
if [ ! -e "$baseroot" ]; then
echo "Base $baseroot doesn't exist"
else
elif [ "$3" != "cross" ]; then
if [ ! -e $baseroot/$os/$hw/exp/exe/pwrp_env.sh ]; then
echo "Not a base directory: $baseroot"
return
......
......@@ -28,7 +28,7 @@ pwra_set_func()
baseroot=${baseroot%/}
if [ ! -e "$baseroot" ]; then
echo "Base $baseroot doesn't exist"
else
elif [ "$3" != "cross" ]; then
if [ ! -e $baseroot/$os/$hw/exp/exe/pwrp_env.sh ]; then
echo "Not a base directory: $baseroot"
return
......@@ -116,14 +116,21 @@ EOF
pwra_parse ()
{
unamestr=`eval uname`
machine=`eval uname -m`
if [ "$machine" != "x86_64" ]; then
machine="x86"
if [ $unamestr == "Darwin" ]; then
os="os_macos"
hw="hw_x86_64"
elif [ $unamestr == "FreeBSD" ]; then
os="os_freebsd"
hw="hw_x86_64"
else
if [ $machine != "x86_64" ]; then
machine="x86"
fi
os="os_linux"
hw="hw_"$machine
fi
platform=$machine"_linux"
os="os_linux"
hw="hw_"$machine
#mysql_socket="--socket /var/lib/mysql/mysql.sock"
local cmd
......
......@@ -184,7 +184,7 @@ CompileRtNode()
ld_opt_tmp="`cat $pwrp_exe/$FileName.opt`"
ld_opt="`eval echo $ld_opt_tmp`"
else
ld_opt="`eval echo $pwrobj/rt_io_user.o -lpwr_rt -lpwr_usbio_dummy`"
ld_opt="`eval echo $pwrobj/rt_io_user.o -lpwr_rt -lpwr_usbio_dummy -lpwr_usb_dummy -lpwr_pnak_dummy -lpwr_cifx_dummy`"
fi
if $ldxx $link_debug -L/lib/thread -L$pwrp_lib -L$pwrp_cmn/arm_linux/lib -L$pwrlib \
......
......@@ -2607,7 +2607,7 @@ pwr_tStatus lfu_SaveDirectoryVolume(
fprintf( fp, "let OpSys_ARM_LINUX=256\n\n");
if ( strcmp( release, "") != 0)
fprintf( fp, "source $pwra_db/pwra_env.sh set base %s\n\n", release);
fprintf( fp, "source $pwra_db/pwra_env.sh set base %s cross\n\n", release);
if ( strcmp( cc, "") != 0) {
fprintf( fp, "export pwre_cc=%s\n", cc);
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment