Con lookout control a Motorola SDM3000 RTU
Can LOOKOUT talk to and program a Motorola SDM3000 RTU. IF so what is neede to do set, I.E what configuration setup in lookout
What kind of protocol does it support? Or if you give us a link to its manual, it will be helpful.
Ryan Shi
National Instruments
Similar Messages
-
como hago que con el control de aumentar y disminuir se camnie el valor de los numeros complejos, tanto a la parte real como a la imaginaria
Hola Pepppo,
Te mando 2 soluciones a tu problema. Yo me imaginaría que un control para un número complejo debería ser algo así como un punto que pudieras mover en un plano. Voy a pasar esa sugerencia para proximas versiones de LV.
Saludos y gracias por usar los foros de NI.
Arturo Vargas
National Instruments de México
Adjuntos:
EjemploComplex.vi 11 KB -
Lookout 6.0.2 modbus rtu problem?
One of our customers has Lookout 6.0.2 communicating with several CMI Scada Packs over wireless modems using Modbus RTU protocol. Suddenly last Friday night he got comm fail alarm pages on all but one site. The Modbus statistics window revealed that Lookout had stopped polling all sites except the one site that stayed in communications. The only activity was the one site.
He watched it poll this way for 2 hours, never returning to the normal polling cycle.
I had him exit and re-launch Lookout and polling returned to normal and has been that way since late Friday night.
This system has been in service for several years with very near 100% good communications sice we deployed it, up until now.
It was obviously a Lookout failure, since the only action taken was to exit and re-launch Lookout.
Isn't there a watchdog timer for this sort of error?
Is this a failure of the Modbus cbx object? (We are using the plain vanilla Modbus driver)
Roger Foote
Foote Control Systems
Solved!
Go to Solution.Hey Mr Domer
If it's the one I think it is, I designed and built the RTU system and repeater system after the "Packaged" system became obsolete.
That was back when 1200 baud was fast! I guess it was compared to the 300 baud limit on the old stuff. Probably been re-built a couple of times since.
Thanks for the sequencer suggestion. I will have to think on this since we are pushing the limits for polling... Some ScadaPacks in this syatem have to do up to 25 modbus transactions per site... We have serious I/O in this sytem lots of which is in floats. Haven't tried DNP yet but I am getting pressure from some distributors to go Clear SCADA and use DNP to thin out redundant polling. Thing is this system has worked flawlessly for years and now suddenly we have this issue, so I am not ready to throw in the towel yet and I doubt the board would go for the moneys to implement it. We are adding another 8 pump site this October after the canals are off line but before they are drained for winter. This is so we can test the system before the frost protection season for the almond crop.
If NI can't fix this I will probably just insist that my clients reboot every week. I am fortunate that these are not unmanned districts. Only problem is that each of them are at least a 2 hour drive from any one point so I need to keep callbacks to a minimum which would be zero callbacks if it weren't for software screwups.
Best regards
Roger -
Monitoreo con Lookout por Internet
Que tal, me gustaria saber si es posible monitorear un proceso desde internet teniendo el Software de Lookout y una tarjeta de adquisición de datos de un PLC Siemens serie 300 mediante la conexión pofibus (PCI1500 PFB)
Alex,
Ciertamente sí es posible monitorear un proceso de Lookout desde el web. Esta solución es posible mediante el uso del Lookout Web Client o Lookout Player. Primeramente sobre la interface con tu PLC puedes checar los drivers con los que ya cuenta Lookout en la lista de Lookout OPC Servers al final de ese documento verás la lista de servidores ya programados por NI. En caso de que tu PLC no esté listado tendrías que conseguir el OPC Server (de preferencia) con su fabricante o bien, algún DLL o control ActiveX que te permita controlarlo.
Para el caso de publicar en internet hay varios documentos en nuestro web que hablan al respecto:
Deploying a Lookout Application, tiene una sección de distribuir al web.
What Are the Components of a Lookout Web Client?
Lookout Web Client - Set Up and Download
Lookout Developer's Manual, en su capítulo 12 tiene mucha información sobre cómo configurar un web client.
Saludos,
Néstor.
Nestor
National Instruments -
Can lookout control C series modules?
Greetings,
I was wondering if Lookout had the ability to recognise dataAq modules( i.e. NI9205, Ni9265). I have a solenoid that opens or closes a valve using a 4-20 current loop.
i sense position with a 4-20 analog input module from Biel-Wiedmann. Both devices are controlled through a modbus gateway. I am looking for something more flexible
than this dedicated hardware I have to build up to convert Asi-Modbus address enables to 4-20 outputs and inputs. Is labview the better choice?
thank you,
JohnG.I think LabVIEW is better choice to control the NI DAQ card.
Ryan Shi
National Instruments -
Lookout works well with Scandata RTU
I have good experience with Lookout 4.0.1 and Scan Data RTU.s.
Glad to hear things are going well.
-
Como controlar velocidad con un PID con USB 6008 ?????
Buenas tardes.
Acabo de adquirir mi placa USB 6008 y estoy comenzando a trabajar para poder controlar la velocidad de un motor trifásico asincrónico estandar.
Para esto contruí con un microcontrolador y una etapa de potencia la parte del variador. Y logré con esto que mi variador reciba una entrada de 0 a 5 Vcc y con ello varía la Frecuenci-Tensión de salida. Es decir solo necesito entregarle 0 a 5 V para que este actúe sobre todo el rango de frecuencias de salida.
También contruí una placa de aislación galvánica que separa absolutamente la salida analógica de mi USB 6008 con la placa del variador que construí, como para separar las masas y la señal y evitar inconvenientes en mi Notebook y placa de adquisición.
El feedback de velociodad lo hago con un sensor óptico y un disco dentado acoplado al eje del motor que me puede dar según mi necesidad 1 , 2 , 4 , 6 , 8 ó 10 pulsos por vuelta de acuedo a como lo ubique ó a mi necesidad.
Entiendo que la placa USB 6008 no es la mejor alternativa para trabajar a tiempo real, y mi sistema operativo ( windows vista x64) tampoco. Pero mi sistema es bastante inercial desde el punto de vista mecánico, y también lo es por la placa del variador que no tiene una respuesta instantanea por cuestiones de constantes de tiempo que le di al firmware del micro. Es decir que no necesito velocidad en el sistema ni en el VI que necesito desarrollar.
Resumiendo, necesito entrar a mi placa USB 6008 con pulsos ( los que se necesiten por cada vuelta del motor) y luego salir por una salida analógica ( de 0 a 5 V) con la información de velocidad que va al variador.
Tengo a mi disposición Labview 8.5 con el Control design & simulation que tiene incluidos subVI con PID's listos para usar.
En medio de este sitema, necesito generar un VI con el que pueda dar una referencia de velocidad desde un potenciómetro virtual en mi panel frontal, y que el PID en el programa de Labview corrija errores de velocidad por alguna pequeña variación de la carga, etc.
La verdad que estuve probando hacer un VI con un PID bastante simple, pero a la hora de simularlo, fuí modificando los parámetros del PID y no vi que se haga "mas inercial"cuando aumento el tiempo integral. Tambien probé salir de mi placa con una tensión analógica, y dar una referencia con un potenciómetro como para probar si el PID se hace mas "rápido ó lento" al modificar las variables Integrales ó derivativas y no vi variaciones en la respuesta.
Por eso es que pido ayuda en este foro, ya que probablemente alguien ya hizo alguna prueba, o me puede indicar como arrancar con este tema.
Este proyecto es solo con fines académicos, para mi tesis de Ing. Electrónica. Por ello el motor no tiene carga, solo el disco dentado y el sensor óptico, solo lo puedo frenar un poco para ver la corrección.
He comprobado que saliendo de mi placa 6008 con una señal analógica, pasandola por una placa que simula un retardo en el tiempo de esta señal, y reingresandola a una entrada de mi placa 6008 para luego con un VI generar el PID y tratar de que esta señal de entrada a la placa 6008 sea igual a la de setpoint, solo logro oscilaciones con una media que está lejos del valor del setpoint.
Espero que alguien me pueda indicar como empezar, ó darme algún ejemplo que me pueda ayudar, ya que no soy experto el Labview, solo acabo de empezar a usarlo.
Reitero que no necesito velocidad ya que mi sistema es lento, y solo debo variar mi salida analógica con velocidades muy bajas. Es decir no necesito respuesta inmediata.
La idea es hacer una demostración del uso de un PID en un sistema real con Labview.
Saludos...!!!!Hola.
Sigue unos links para su consulta.
http://forums.ni.com/ni/board/message?board.id=240&message.id=8027&requireLogin=False
http://zone.ni.com/devzone/cda/tut/p/id/3782
http://zone.ni.com/devzone/cda/tut/p/id/6951
Saludos
Diogo.
Diogo Aparecido
Engenheiro de Aplicação
National Instruments Brasil -
Using a tv remote to control hd dvr
I have a Hitachi HD Plasma TV and I want to use that remote as the remote for everything. Can I program it to control my Motorola HD DVR? If so, how do I do so and what is the two digit code?
Thanks for the help.You would need to reference the manual that came with your TV and specifically the remote to see if it can be programmed to operate a DVR. Does your remote have buttons for controlling a DVR or Receiver?
Jim -
OSB - ALSB / WLST / Security / add entry with WLST in Access Control
Hello,
I try to reproduce with WLST script the input from the consol to declare user on Access Control proxy (security).
sbconsol->$Proxy Service->Security->General Confiruration->Access Control->Transport Access Control->Add Conditions
* First implementation without success with the com.bea.wli.sb.security.management.configuration.ServiceSecurityConfigurationMBean : accessControlSecurity1()
* Second try with the service definition of the proxy service but cannot parse with Xpath accessControl Security2()
any idee ???
test case :
prerequisit
create an ALSB domain 10.3 (admin one with username='weblogic' password='weblogic' url='t3://localhost:7001') and create a proxy service on the default project
conf/setEnv.cmd
@CLS
@echo ON
@set BEA_HOME=D:\PRODUCT\MIDDLEWARE\SOA\OSB_10.3
@set WL_HOME=%BEA_HOME%\wlserver_10.3
@set OSB_HOME=%BEA_HOME%\osb_10.3
@set SCRIPTING_HOME=E:\PROJETS\RECURANT\EDF\linky\WLST\WORKING\Security
@set OSB_LIB=%OSB_HOME%/lib/sb-kernel-api.jar;%BEA_HOME%/modules/com.bea.alsb.statistics_1.0.1.0.jar;%OSB_HOME%/lib/sb-kernel-resources.jar;%OSB_HOME%/lib/sb-kernel-common.jar;%OSB_HOME%/lib/sb-kernel-impl.jar;%OSB_HOME%\lib\sb-security.jar;%OSB_HOME%/modules/com.bea.common.configfwk_1.3.0.0.jar;%BEA_HOME%/modules/com.bea.common.configfwk_1.2.0.0.jar;%BEA_HOME%/modules/com.bea.common.configfwk_1.2.1.0.jar;%OSB_HOME%/lib/modules/com.bea.alsb.resources.archive.jar;
@set TOOL_LIB=%SCRIPTING_HOME%\lib\log4j-1.2.15.jar;%SCRIPTING_HOME%\lib\jsch-0.1.43.jar;%SCRIPTING_HOME%\lib\db2jcc.jar
@set CLASSPATH=%OSB_LIB%;%TOOL_LIB%;%CLASSPATH%
@set CLASSPATH=%SCRIPTING_HOME%\lib\db2jcc.jar;%TOOL_LIB%;%CLASSPATH%
@set MODULE_LIB=%SCRIPTING_HOME%\lib
@call %WL_HOME%\server\bin\setWLSEnv.cmd > nul 2<&1
launch.cmd
@CLS
@echo OFF
@SETLOCAL
@call "conf\setEnv.cmd" > nul 2<&1
set PWD=%~dp0
%JAVA_HOME%\bin\java -Dmodule.lib=%MODULE_LIB% weblogic.WLST -skipWLSModuleScanning lib/security.py
lib/security.py
from com.bea.wli.monitoring import StatisticType
from java.util import HashMap
from java.util import HashSet
from java.util import ArrayList
from java.util import Collections
from java.io import FileInputStream
from java.io import FileOutputStream
from java.lang import String
from java.lang import Boolean
from com.bea.wli.sb.util import EnvValueTypes
from com.bea.wli.config.env import EnvValueQuery;
from com.bea.wli.config import Ref
from com.bea.wli.config.customization import Customization
from com.bea.wli.config.customization import EnvValueCustomization
from com.bea.wli.config.customization import FindAndReplaceCustomization
from com.bea.wli.sb.management.configuration import SessionManagementMBean
from com.bea.wli.sb.management.configuration import ALSBConfigurationMBean
from com.bea.wli.sb.management.query import BusinessServiceQuery
from com.bea.wli.sb.management.query import ProxyServiceQuery
from com.bea.wli.sb.management.configuration import ServiceConfigurationMBean
import os
# before, create an ALSB domain 10.3 with a proxy service in the default project and add an Acces Control Policy in the consol
# sbconsol->Project Explorer->default->${proxy service}->Security->Access Control->Create Session->Add Conditions->User->USR_1->Add
# when we try to modify the Acces Control Policy of the proxy service with the ServiceSecurityConfigurationMBean
def accessControlSecurity1( domain_name ):
# connection
print "\n\n\n***********************************************************************************************"
connect( 'weblogic', 'weblogic', 't3://localhost:7001')
domainRuntime()
# create a session
sessionName = String("SessionScript"+Long(System.currentTimeMillis()).toString())
SessionMBean = findService( SessionManagementMBean.NAME ,SessionManagementMBean.TYPE)
SessionMBean.createSession(sessionName)
# get the ServiceSecurityConfigurationMBean
serviceSecurityConfigurationMBean = findService(String("ServiceSecurityConfiguration.").concat(sessionName), "com.bea.wli.sb.security.management.configuration.ServiceSecurityConfigurationMBean")
# get the XACMLAuthorizer
working_directory=pwd()
serverConfig()
xacmlAuthorizer = cd('/SecurityConfiguration/%s/Realms/myrealm/Authorizers/XACMLAuthorizer' % domain_name )
cd(working_directory)
domainRuntime()
# get service ref
ConfigurationMBean = findService(String("ALSBConfiguration.").concat(sessionName), "com.bea.wli.sb.management.configuration.ALSBConfigurationMBean")
bsQuery = ProxyServiceQuery()
bsQuery.setPath("default/*")
refs = ConfigurationMBean.getRefs(bsQuery)
for ref in refs:
print 'ref=%s'%ref
# use the security Mbean to add : USER_A,USER_B,USER_C to the policy
policyHolder = serviceSecurityConfigurationMBean.newAccessControlPolicyHolderInstance(xacmlAuthorizer)
policyHolder.setPolicyExpression("Usr(USER_A,USER_B,USER_C)")
policyScope = serviceSecurityConfigurationMBean.newDefaultMessagePolicyScope(ref)
serviceSecurityConfigurationMBean.setAccessControlPolicy(policyScope,policyHolder)
# print the service definition
servConfMBean = findService( "%s.%s" % (ServiceConfigurationMBean.NAME, sessionName), ServiceConfigurationMBean.TYPE)
serviceDefinition = servConfMBean.getServiceDefinition(ref)
print serviceDefinition
# we can see the security entry in the service definition has follow
# <xml-fragment xmlns:ser="http://www.bea.com/wli/sb/services" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:tran="http://www.bea.com/wli/sb/transports" xmlns:env="http://www.bea.com/wli/config/env">
# <ser:coreEntry isProxy="true" isEnabled="true" isAutoPublish="false">
# <ser:description/>
# <ser:security>
# <con:access-control-policies xmlns:con="http://www.bea.com/wli/sb/services/security/config">
# <con:message-level-policies>
# <con1:default-policy xsi:type="con:ProviderPolicyContainerType" xmlns:con="http://www.bea.com/wli/sb/security/accesscontrol/config" xmlns:con1="http://www.bea.com/wli/sb/services/security/config">
# <con:policy provider-id="XACMLAuthorizer">
# <con:policy-expression>Usr(USER_A,USER_B,USER_C)</con:policy-expression>
# </con:policy>
# </con1:default-policy>
# </con:message-level-policies>
# </con:access-control-policies>
# </ser:security>
# but when we commit
SessionMBean.activateSession(sessionName, "description for session activation")
# we got the following exception
# Unexpected error: com.bea.wli.config.session.SessionConflictException
# No stack trace available.
# Problem invoking WLST - Traceback (innermost last):
# File "E:\PROJETS\RECURANT\EDF\linky\WLST\WORKING\Security\lib\security.py", line 246, in ?
# File "E:\PROJETS\RECURANT\EDF\linky\WLST\WORKING\Security\lib\security.py", line 105, in accessControlSecurity1
# com.bea.wli.config.session.SessionConflictException: Conflicts for session SessionScript1363339726764
# [Non-Critical] Concurrent Modification Conflicts
# NONE
# [Critical] Resources with validation errors
# 1 - ProxyService test/PS_TEST_bis CannotCommit
# + CannotCommit [OSB Security:386836]Unnecessary proxy wide message access control policy found for service "test/PS_TEST_bis". Hint: The service is neither an active security
# intermediary nor has custom authentication enabled. ServiceDiagnosticLocation[SECURITY_TAB]:DiagnosticLocation:<con:message-level-policies xmlns:ser="http://www.bea.com/wli/sb/services" xml
# ns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:tran="http://www.bea.com/wli/sb/transports" xmlns:env="http://www.bea.com/wli/config/env" xmlns:con="http://www.bea.com/wli/sb/services/security/config">
# <con1:default-policy xsi:type="con:ProviderPolicyContainerType" xmlns:con="http://www.bea.com/wli/sb/security/accesscontrol/config" xmlns:con1="http://www.bea.com/wli/sb/services/security/
# config">
# <con:policy provider-id="XACMLAuthorizer">
# <con:policy-expression>Usr(USER_A,USER_B,USER_C)</con:policy-expression>
# </con:policy>
# </con1:default-policy>
# </con:message-level-policies>
# [Info] Informational messages
# NONE
# at com.bea.wli.config.session.SessionManager.commitSessionUnlocked(SessionManager.java:358)
# at com.bea.wli.config.session.SessionManager.commitSession(SessionManager.java:339)
# at com.bea.wli.config.session.SessionManager.commitSession(SessionManager.java:297)
# at com.bea.wli.config.session.SessionManager.commitSession(SessionManager.java:306)
disconnect()
# when we try to modify the Acces Control Policy of the proxy service whith the service XML definition
def accessControlSecurity2( domain_name ):
# connection
print "\n\n\n***********************************************************************************************"
connect( 'weblogic', 'weblogic', 't3://localhost:7001')
domainRuntime()
# create a session
sessionName = String("SessionScript"+Long(System.currentTimeMillis()).toString())
SessionMBean = findService( SessionManagementMBean.NAME ,SessionManagementMBean.TYPE)
SessionMBean.createSession(sessionName)
# get service ref
ConfigurationMBean = findService(String("ALSBConfiguration.").concat(sessionName), "com.bea.wli.sb.management.configuration.ALSBConfigurationMBean")
bsQuery = ProxyServiceQuery()
bsQuery.setPath("default/*")
refs = ConfigurationMBean.getRefs(bsQuery)
for ref in refs:
print 'ref=%s'%ref
servConfMBean = findService( "%s.%s" % (ServiceConfigurationMBean.NAME, sessionName), ServiceConfigurationMBean.TYPE)
serviceDefinition = servConfMBean.getServiceDefinition(ref)
# parsing the proxy definition
nsSer = "declare namespace ser='http://www.bea.com/wli/sb/services'"
nsXsi = "declare namespace xsi='http://www.w3.org/2001/XMLSchema-instance'"
nsTran = "declare namespace tran='http://www.bea.com/wli/sb/transports'"
nsEnv = "declare namespace env='http://www.bea.com/wli/config/env'"
nsCon = "declare namespace con='http://www.bea.com/wli/sb/services/security/config'"
nsCon1 = "declare namespace con1='http://www.bea.com/wli/sb/services/security/config'"
# when we try to parse the following Xpath Expression, it' working but not sufficent to access the <con:policy-expression> element
confPath = "ser:coreEntry/ser:security/con:access-control-policies/con1:transport-level-policy"
confElem = serviceDefinition.selectPath(nsSer + nsXsi + nsTran + nsEnv + nsCon + nsCon1 + confPath )
print "WORKING{%s}" % confElem
# get the result
# <xml-fragment xsi:type="con:ProviderPolicyContainerType" xmlns:con="http://www.bea.com/wli/sb/security/accesscontrol/config" xmlns:con1="http://www.bea.com/wli/sb/services/security/config" xmlns:ser="http://www.bea.com/wli/sb/services" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:tran="http://www.bea.com/wli/sb/transports" xmlns:env="http://www.bea.com/wli/config/env">
# <con:policy provider-id="XACMLAuthorizer">
# <con:policy-expression>Usr(USER_1,USER_2,USER_3)</con:policy-expression>
# </con:policy>
# </xml-fragment>
# and when we try to acces the <con:policy> element whith the following Xpath expression we got an empty result
confPath = "ser:coreEntry/ser:security/con:access-control-policies/con1:transport-level-policy/con:policy"
confElem = serviceDefinition.selectPath(nsSer + nsXsi + nsTran + nsEnv + nsCon + nsCon1 + confPath )
print "DON'T WORKING{%s}" % confElem
# get empty result
# array([], org.apache.xmlbeans.XmlObject)
# want to modify the value like this on the <con:policy-expression> but cannot reach it ...
#confValue="Usr(USER_A,USER_B,USER_C)"
#confElem.setStringValue(confValue)
# commit
SessionMBean.activateSession(sessionName, "description for session activation")
disconnect
# print the service definition
def printServiceDefinition( domain_name ):
# connection
connect( 'weblogic', 'weblogic', 't3://localhost:7001')
domainRuntime()
# create a session
sessionName = String("SessionScript"+Long(System.currentTimeMillis()).toString())
SessionMBean = findService( SessionManagementMBean.NAME ,SessionManagementMBean.TYPE)
SessionMBean.createSession(sessionName)
# get service ref
ConfigurationMBean = findService(String("ALSBConfiguration.").concat(sessionName), "com.bea.wli.sb.management.configuration.ALSBConfigurationMBean")
bsQuery = ProxyServiceQuery()
bsQuery.setPath("default/*")
refs = ConfigurationMBean.getRefs(bsQuery)
for ref in refs:
print 'ref=%s'%ref
servConfMBean = findService( "%s.%s" % (ServiceConfigurationMBean.NAME, sessionName), ServiceConfigurationMBean.TYPE)
serviceDefinition = servConfMBean.getServiceDefinition(ref)
servConfMBean = findService( "%s.%s" % (ServiceConfigurationMBean.NAME, sessionName), ServiceConfigurationMBean.TYPE)
serviceDefinition = servConfMBean.getServiceDefinition(ref)
print serviceDefinition
# commit
SessionMBean.activateSession(sessionName, "description for session activation")
disconnect
#accessControlSecurity1('cluster_domain')
accessControlSecurity2('cluster_domain')Hello,
I try to reproduce with WLST script the input from the consol to declare user on Access Control proxy (security).
sbconsol->$Proxy Service->Security->General Confiruration->Access Control->Transport Access Control->Add Conditions
* First implementation without success with the com.bea.wli.sb.security.management.configuration.ServiceSecurityConfigurationMBean : accessControlSecurity1()
* Second try with the service definition of the proxy service but cannot parse with Xpath accessControl Security2()
any idee ???
test case :
prerequisit
create an ALSB domain 10.3 (admin one with username='weblogic' password='weblogic' url='t3://localhost:7001') and create a proxy service on the default project
conf/setEnv.cmd
@CLS
@echo ON
@set BEA_HOME=D:\PRODUCT\MIDDLEWARE\SOA\OSB_10.3
@set WL_HOME=%BEA_HOME%\wlserver_10.3
@set OSB_HOME=%BEA_HOME%\osb_10.3
@set SCRIPTING_HOME=E:\PROJETS\RECURANT\EDF\linky\WLST\WORKING\Security
@set OSB_LIB=%OSB_HOME%/lib/sb-kernel-api.jar;%BEA_HOME%/modules/com.bea.alsb.statistics_1.0.1.0.jar;%OSB_HOME%/lib/sb-kernel-resources.jar;%OSB_HOME%/lib/sb-kernel-common.jar;%OSB_HOME%/lib/sb-kernel-impl.jar;%OSB_HOME%\lib\sb-security.jar;%OSB_HOME%/modules/com.bea.common.configfwk_1.3.0.0.jar;%BEA_HOME%/modules/com.bea.common.configfwk_1.2.0.0.jar;%BEA_HOME%/modules/com.bea.common.configfwk_1.2.1.0.jar;%OSB_HOME%/lib/modules/com.bea.alsb.resources.archive.jar;
@set TOOL_LIB=%SCRIPTING_HOME%\lib\log4j-1.2.15.jar;%SCRIPTING_HOME%\lib\jsch-0.1.43.jar;%SCRIPTING_HOME%\lib\db2jcc.jar
@set CLASSPATH=%OSB_LIB%;%TOOL_LIB%;%CLASSPATH%
@set CLASSPATH=%SCRIPTING_HOME%\lib\db2jcc.jar;%TOOL_LIB%;%CLASSPATH%
@set MODULE_LIB=%SCRIPTING_HOME%\lib
@call %WL_HOME%\server\bin\setWLSEnv.cmd > nul 2<&1
launch.cmd
@CLS
@echo OFF
@SETLOCAL
@call "conf\setEnv.cmd" > nul 2<&1
set PWD=%~dp0
%JAVA_HOME%\bin\java -Dmodule.lib=%MODULE_LIB% weblogic.WLST -skipWLSModuleScanning lib/security.py
lib/security.py
from com.bea.wli.monitoring import StatisticType
from java.util import HashMap
from java.util import HashSet
from java.util import ArrayList
from java.util import Collections
from java.io import FileInputStream
from java.io import FileOutputStream
from java.lang import String
from java.lang import Boolean
from com.bea.wli.sb.util import EnvValueTypes
from com.bea.wli.config.env import EnvValueQuery;
from com.bea.wli.config import Ref
from com.bea.wli.config.customization import Customization
from com.bea.wli.config.customization import EnvValueCustomization
from com.bea.wli.config.customization import FindAndReplaceCustomization
from com.bea.wli.sb.management.configuration import SessionManagementMBean
from com.bea.wli.sb.management.configuration import ALSBConfigurationMBean
from com.bea.wli.sb.management.query import BusinessServiceQuery
from com.bea.wli.sb.management.query import ProxyServiceQuery
from com.bea.wli.sb.management.configuration import ServiceConfigurationMBean
import os
# before, create an ALSB domain 10.3 with a proxy service in the default project and add an Acces Control Policy in the consol
# sbconsol->Project Explorer->default->${proxy service}->Security->Access Control->Create Session->Add Conditions->User->USR_1->Add
# when we try to modify the Acces Control Policy of the proxy service with the ServiceSecurityConfigurationMBean
def accessControlSecurity1( domain_name ):
# connection
print "\n\n\n***********************************************************************************************"
connect( 'weblogic', 'weblogic', 't3://localhost:7001')
domainRuntime()
# create a session
sessionName = String("SessionScript"+Long(System.currentTimeMillis()).toString())
SessionMBean = findService( SessionManagementMBean.NAME ,SessionManagementMBean.TYPE)
SessionMBean.createSession(sessionName)
# get the ServiceSecurityConfigurationMBean
serviceSecurityConfigurationMBean = findService(String("ServiceSecurityConfiguration.").concat(sessionName), "com.bea.wli.sb.security.management.configuration.ServiceSecurityConfigurationMBean")
# get the XACMLAuthorizer
working_directory=pwd()
serverConfig()
xacmlAuthorizer = cd('/SecurityConfiguration/%s/Realms/myrealm/Authorizers/XACMLAuthorizer' % domain_name )
cd(working_directory)
domainRuntime()
# get service ref
ConfigurationMBean = findService(String("ALSBConfiguration.").concat(sessionName), "com.bea.wli.sb.management.configuration.ALSBConfigurationMBean")
bsQuery = ProxyServiceQuery()
bsQuery.setPath("default/*")
refs = ConfigurationMBean.getRefs(bsQuery)
for ref in refs:
print 'ref=%s'%ref
# use the security Mbean to add : USER_A,USER_B,USER_C to the policy
policyHolder = serviceSecurityConfigurationMBean.newAccessControlPolicyHolderInstance(xacmlAuthorizer)
policyHolder.setPolicyExpression("Usr(USER_A,USER_B,USER_C)")
policyScope = serviceSecurityConfigurationMBean.newDefaultMessagePolicyScope(ref)
serviceSecurityConfigurationMBean.setAccessControlPolicy(policyScope,policyHolder)
# print the service definition
servConfMBean = findService( "%s.%s" % (ServiceConfigurationMBean.NAME, sessionName), ServiceConfigurationMBean.TYPE)
serviceDefinition = servConfMBean.getServiceDefinition(ref)
print serviceDefinition
# we can see the security entry in the service definition has follow
# <xml-fragment xmlns:ser="http://www.bea.com/wli/sb/services" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:tran="http://www.bea.com/wli/sb/transports" xmlns:env="http://www.bea.com/wli/config/env">
# <ser:coreEntry isProxy="true" isEnabled="true" isAutoPublish="false">
# <ser:description/>
# <ser:security>
# <con:access-control-policies xmlns:con="http://www.bea.com/wli/sb/services/security/config">
# <con:message-level-policies>
# <con1:default-policy xsi:type="con:ProviderPolicyContainerType" xmlns:con="http://www.bea.com/wli/sb/security/accesscontrol/config" xmlns:con1="http://www.bea.com/wli/sb/services/security/config">
# <con:policy provider-id="XACMLAuthorizer">
# <con:policy-expression>Usr(USER_A,USER_B,USER_C)</con:policy-expression>
# </con:policy>
# </con1:default-policy>
# </con:message-level-policies>
# </con:access-control-policies>
# </ser:security>
# but when we commit
SessionMBean.activateSession(sessionName, "description for session activation")
# we got the following exception
# Unexpected error: com.bea.wli.config.session.SessionConflictException
# No stack trace available.
# Problem invoking WLST - Traceback (innermost last):
# File "E:\PROJETS\RECURANT\EDF\linky\WLST\WORKING\Security\lib\security.py", line 246, in ?
# File "E:\PROJETS\RECURANT\EDF\linky\WLST\WORKING\Security\lib\security.py", line 105, in accessControlSecurity1
# com.bea.wli.config.session.SessionConflictException: Conflicts for session SessionScript1363339726764
# [Non-Critical] Concurrent Modification Conflicts
# NONE
# [Critical] Resources with validation errors
# 1 - ProxyService test/PS_TEST_bis CannotCommit
# + CannotCommit [OSB Security:386836]Unnecessary proxy wide message access control policy found for service "test/PS_TEST_bis". Hint: The service is neither an active security
# intermediary nor has custom authentication enabled. ServiceDiagnosticLocation[SECURITY_TAB]:DiagnosticLocation:<con:message-level-policies xmlns:ser="http://www.bea.com/wli/sb/services" xml
# ns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:tran="http://www.bea.com/wli/sb/transports" xmlns:env="http://www.bea.com/wli/config/env" xmlns:con="http://www.bea.com/wli/sb/services/security/config">
# <con1:default-policy xsi:type="con:ProviderPolicyContainerType" xmlns:con="http://www.bea.com/wli/sb/security/accesscontrol/config" xmlns:con1="http://www.bea.com/wli/sb/services/security/
# config">
# <con:policy provider-id="XACMLAuthorizer">
# <con:policy-expression>Usr(USER_A,USER_B,USER_C)</con:policy-expression>
# </con:policy>
# </con1:default-policy>
# </con:message-level-policies>
# [Info] Informational messages
# NONE
# at com.bea.wli.config.session.SessionManager.commitSessionUnlocked(SessionManager.java:358)
# at com.bea.wli.config.session.SessionManager.commitSession(SessionManager.java:339)
# at com.bea.wli.config.session.SessionManager.commitSession(SessionManager.java:297)
# at com.bea.wli.config.session.SessionManager.commitSession(SessionManager.java:306)
disconnect()
# when we try to modify the Acces Control Policy of the proxy service whith the service XML definition
def accessControlSecurity2( domain_name ):
# connection
print "\n\n\n***********************************************************************************************"
connect( 'weblogic', 'weblogic', 't3://localhost:7001')
domainRuntime()
# create a session
sessionName = String("SessionScript"+Long(System.currentTimeMillis()).toString())
SessionMBean = findService( SessionManagementMBean.NAME ,SessionManagementMBean.TYPE)
SessionMBean.createSession(sessionName)
# get service ref
ConfigurationMBean = findService(String("ALSBConfiguration.").concat(sessionName), "com.bea.wli.sb.management.configuration.ALSBConfigurationMBean")
bsQuery = ProxyServiceQuery()
bsQuery.setPath("default/*")
refs = ConfigurationMBean.getRefs(bsQuery)
for ref in refs:
print 'ref=%s'%ref
servConfMBean = findService( "%s.%s" % (ServiceConfigurationMBean.NAME, sessionName), ServiceConfigurationMBean.TYPE)
serviceDefinition = servConfMBean.getServiceDefinition(ref)
# parsing the proxy definition
nsSer = "declare namespace ser='http://www.bea.com/wli/sb/services'"
nsXsi = "declare namespace xsi='http://www.w3.org/2001/XMLSchema-instance'"
nsTran = "declare namespace tran='http://www.bea.com/wli/sb/transports'"
nsEnv = "declare namespace env='http://www.bea.com/wli/config/env'"
nsCon = "declare namespace con='http://www.bea.com/wli/sb/services/security/config'"
nsCon1 = "declare namespace con1='http://www.bea.com/wli/sb/services/security/config'"
# when we try to parse the following Xpath Expression, it' working but not sufficent to access the <con:policy-expression> element
confPath = "ser:coreEntry/ser:security/con:access-control-policies/con1:transport-level-policy"
confElem = serviceDefinition.selectPath(nsSer + nsXsi + nsTran + nsEnv + nsCon + nsCon1 + confPath )
print "WORKING{%s}" % confElem
# get the result
# <xml-fragment xsi:type="con:ProviderPolicyContainerType" xmlns:con="http://www.bea.com/wli/sb/security/accesscontrol/config" xmlns:con1="http://www.bea.com/wli/sb/services/security/config" xmlns:ser="http://www.bea.com/wli/sb/services" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:tran="http://www.bea.com/wli/sb/transports" xmlns:env="http://www.bea.com/wli/config/env">
# <con:policy provider-id="XACMLAuthorizer">
# <con:policy-expression>Usr(USER_1,USER_2,USER_3)</con:policy-expression>
# </con:policy>
# </xml-fragment>
# and when we try to acces the <con:policy> element whith the following Xpath expression we got an empty result
confPath = "ser:coreEntry/ser:security/con:access-control-policies/con1:transport-level-policy/con:policy"
confElem = serviceDefinition.selectPath(nsSer + nsXsi + nsTran + nsEnv + nsCon + nsCon1 + confPath )
print "DON'T WORKING{%s}" % confElem
# get empty result
# array([], org.apache.xmlbeans.XmlObject)
# want to modify the value like this on the <con:policy-expression> but cannot reach it ...
#confValue="Usr(USER_A,USER_B,USER_C)"
#confElem.setStringValue(confValue)
# commit
SessionMBean.activateSession(sessionName, "description for session activation")
disconnect
# print the service definition
def printServiceDefinition( domain_name ):
# connection
connect( 'weblogic', 'weblogic', 't3://localhost:7001')
domainRuntime()
# create a session
sessionName = String("SessionScript"+Long(System.currentTimeMillis()).toString())
SessionMBean = findService( SessionManagementMBean.NAME ,SessionManagementMBean.TYPE)
SessionMBean.createSession(sessionName)
# get service ref
ConfigurationMBean = findService(String("ALSBConfiguration.").concat(sessionName), "com.bea.wli.sb.management.configuration.ALSBConfigurationMBean")
bsQuery = ProxyServiceQuery()
bsQuery.setPath("default/*")
refs = ConfigurationMBean.getRefs(bsQuery)
for ref in refs:
print 'ref=%s'%ref
servConfMBean = findService( "%s.%s" % (ServiceConfigurationMBean.NAME, sessionName), ServiceConfigurationMBean.TYPE)
serviceDefinition = servConfMBean.getServiceDefinition(ref)
servConfMBean = findService( "%s.%s" % (ServiceConfigurationMBean.NAME, sessionName), ServiceConfigurationMBean.TYPE)
serviceDefinition = servConfMBean.getServiceDefinition(ref)
print serviceDefinition
# commit
SessionMBean.activateSession(sessionName, "description for session activation")
disconnect
#accessControlSecurity1('cluster_domain')
accessControlSecurity2('cluster_domain') -
How to modify the color of an image in .wmf format? I would like to change the color of a Custom representation of a Switch in Lookout 5.0.
Check out the Image Navigator. It not only provides tons of additional images, it also gives you the ability to customize the images also. To access all these wonderful images, click on the Image Navigator button in the Lookout Select Graphic dialog box (which appears any time you insert a custom graphic in a Lookout control, or when you choose Insert»Graphic from the Lookout menu). It is pretty intuitive to use, and you will be creating all kinds of custom colored graphics in short order.
-
Lookout communication with FieldPoints
I have taken over this location and I have very little to no documentation as to what does what on the Fieldpoint I/O's. I am up against the Software license limit of 100 I/O points. Currently my process is outdated and I have a need to add I/O's for additional functions. I tried to delete unused/un-needed Lookout control panel objects in order to reduce the I/O count but was not successful. Most objects could not be deleted "due to dependencies". In some cases, I was able to delete objects but the I/O count stayed at 100. The manual offered no help.
New plan: start a new process.
I copied the syntax for each of the Lookout control panel objects that I wanted to keep from the old process that I wanted to use in the new process. I did this for each control panel in my new process to get the functionality just the way I needed it.
When done, having eliminated all of the no-longer needed I/O's, I had expected to see the I/O count around 50 which would allow for new required functionality. This all sounded good on paper.
However, my new process will not communicate with any FieldPoint I/O's, (I/O count =0), unless I have the old process and the new process running simultaneously. Then the I/O count is 100 and my new process communicates just fine, but having the old process running defeats the purpose of creating the new process. That is to eliminate un-used I/O points to make room for new I/O functionality and stay under the 100 I/O limit. Although, I am able to save my new process, (which is less than 100 I/O), when it runs simultaneously with the old process, the 100 I/O limit is exceeded and Lookout defaults to Demo Mode, which is limited to 60 minutes of operation.
Obviously somewhere in the old process is some kind of enable instruction for the Field points, that I don't have in the new process, but I do not have a clue as to where to look or what to look for. Again the manual did not offer any help.
The FieldPoint units that we are using are: FP DI 301, 330, FP DO 401, and FP AI 110, along with the FP 1001 serial network modules
Desperate in Denver.
Need answers fast!
thanksKDVR,
To get the best support for lookout check out these places:
www.ni.com/ask
and submit a new email support request with Lookout selected for the Software Platform.
Lookout Discussion forums
Regards,
Peter Flores
Applications Engineer -
Hacer menú con 8 leds que en cada opción tenga una secuencia de encendido diferente
Buenos días,
Tengo la tarjeta NI myDAQ con labview 2010 quiero hacer un menú con 4 opciones.
Primera opción todos prendidos.
Segunda opción parpadeantes.
Tercera opción en secuencia
Cuarta opción apagados.
soy nueva en labview esperando su pronta ayuda y respuesta gracias.Hola dj UNI!
Para cambiar entre cuatro de los casos, se puede utilizar una "Case Structure".
Esta estructura le permitirá cambiar la forma en que sus leds se iluminan de acuerdo con un control. Cada opción de control se selecciona uno de los casos, así como un menú.
Puede encontrar un ejemplo en Help -> Find Examples -> tipo "Case"
Este enlace puede ayudarte a ti también: http://zone.ni.com/reference/en-XX/help/371361H-01/glang/case_structure/
La variable local tiene la misma representación que el control que se han vinculado, si este control es un booleano la variable será una variable booleana también.
Haga clic derecho sobre la variable local -> Seleccionar elemento
Lo que puede enlazar la variable con el control respectivo.
Espero haber ayudado!
Saludos!
Barbara Pracek
Engenharia de Aplicações
National Instruments Brasil -
hola, como estan, tengo un problema y espero que ustedes puedan ayudarme, veran yo quiero poder incrementar decrementar un control numerico con un par de botones (arriba y abajo) y con otro par de comand buttons seleccionar hacia donde se mueve el cursor (derecha o izquierda) el problema es que yo quiero visualizar el numero sobre el cual este el cursor, mi idea es que el digito empiece a parapadear (blinking) algo asi como el agilent function generator que trae el multisim...
el problema es que el blinking funciona para todo el control numerico y yo quiero que solo parapadee el digito sobre el cual este el cursor para asi poder incrementarlo o decrementarlo con los controles respectivos..Translation
I
have a problem and hope you can help me, I want to increase veran
decrement numeric control with a pair of buttons (up and down) and
another pair of comand buttons to select where you move the cursor
(right or
left) the problem is that I want to see the number on which this mouse,
my idea is that the start digit blinks (blinking) something like the
Agilent function generator that brings multisim ...
the
problem is that everything works for the blinking numeric control and I
want parapadee only the digit on which the cursor so you can increase
or decrease with respective controls ..
You can post in the spanish board for better response -
Estimados Amigos del foro:
DDEGet
('LOOKOUT','\\192.9.140.157\Adapta-K\dosificadora-hor-205-20-adaptacion-k.l4p','
\\cbba-f4a62c5f9f\Dosificadora7\Recipe1',1000)
Esta sentencia no me funciona,
en el manual indica pasar los parametros Service,Topic,Item y Largo de la
informacion a recuperar. Desearia saber que esta erroneo. Con una hoja Excel me
funciona satisfactoriamente, pero con Lookout no. Estoy programando en Magic.
El software de Control del PLC es:
Lookout version 4.5.1
El sistema Operativo en el que esta instalado es:
Windows XP
Gracias por su ayuda.Windows C and Basic have native DDE support, but must be incuded in the project. Java can do it with JNI coding or I believe the coroutine package from the makers of JPrint will give Java DDE support.
-
I have a CMM with dual ports, acting on RS-232, I am unable to complete the project as i cannot get the correct communications to go. I have setup one port as SNP, correct speeds and settings, in lookout as well, but when it comes to the PLC address do i use the CPUs SNP ID? or the port id?
Second reference, the next thing to try is the ModBus control, the GE uses RTU, how would i correctly connect to the ge with the modbus control from lookout?
Mike Crabtree - Lead Developer
Destek of Nevada, Inc. / Digital Telemetry Systems, Inc.
(866) 964-6948 / (760) 247-9512The lookout GE_Series90 object only supports SNPX (via serial), and is pretty specific about selecting either a 90-30 or 90-70 series. I'm not familiar with a CMM, but it may not communicate with the GE object in lookout. But if it does, the PLC address would be the SNP address configured for the port you are connected to on the PLC (each port can have a different address).
As for using Modbus RTU protocol, that should work great in place of the SNP protocol (works quite well for me). Here is a link that will help with the difference in register numbering.
http://www.gefanuc.com/support/plc/faq00005.htm
You will notice that not all registers are accessible using the RTU Protocol (%M is one example), but you do get the additional diagnostic tools to moni
tor communication with the Modbus object.
Maybe you are looking for
-
The search feature in Address Book no longer works
I have over 2,400 contacts. For no apparent reason the search feature in my Apple Address Book no longer works. The Address Book app has quit several times recently, again for no apparent reason. It is probably unrelated, but Preview has also been q
-
RFFOAVIS_FPAYM: Is this print program will support multiple PO line items
Hi, I am using the print program:<b>RFFOAVIS_FPAYM</b> and customized layout of: <b>F110_IN_AVIS</b>. I am able to get multiple Document numbers but I am not getting the multiple PO line items for each Document no. I had called the perform statement
-
I have created a slide show in PSE 9 with sharp JPEGs of @ 3MG each. When viewing the photos in full screen, they are badly pixelated. Any ideas? Thanks.
-
Dear All, In our company we have have purchase requisation which are still open, there is no Purchase Order made with reference to purhcase requistion, we want to close thiis purchase requisation. pelase suggest what need to be done Is
-
Hide Region When Click On Region Name Then Region is Display
Hi , I want to hide region click on REGION NAME like This Report [http://apex.oracle.com/pls/apex/f?p=267:4:1532929568077413|http://apex.oracle.com/pls/apex/f?p=267:4:1532929568077413] thanks