Probleme LabVIEW - module DSC / OPC

Bonjour,
j'utilise LabVIEW 2010 avec son module DSC.
Et je souhaite accéder à des variables OPC en Lecture et Ecriture depuis une application labVIEW.
Le serveur OPC que j'utilise fonctionne correctement (j'ai également fait le test avec le serveur de NI, mais le resultat est identique). Je peux lire et ecrire des variables avec 'OPC Quick Client'
J'ai configuré la connexion DCOM avec une "identité" : 'Utilisateur interactif'
Cependant depuis le projet LabVIEW, la creation des variables partagees ne fonctionne pas (Create Bound Variables) (cf. piece jointe)
J'ai suivi la note : Connect to Any PLC using OPC (lien : http://zone.ni.com/devzone/cda/tut/p/id/7450)
? Est-ce que quelqu'un a deja rencontré ce probleme et surtout trouvé une solution ?!?!?!???
Dans l'attente et en vous remerciant d'avance pour votre aide
<Nicolas>
Attachments:
CreateBoundVariables.JPG ‏40 KB

Hello,
J’ai trouvé une solution mais est-ce la bonne ?!? en tout cas, elle fonctionne.
J’ai préalablement ‘configuré’ le gestionnaire de système distribué (accessible à partir du menu : Tools \ Distributed System Manager) :
- Je crée/J'ajoute un nouveau Processus à "Mes systèmes \ local Host \" , nommé OPC (avec les paramètres par défaut)
- J’ajoute à ce processus un serveur d’E/S
- Je configure ce serveur pour qu’il accède à mon serveur OPC avec les paramètres qui vont bien.
- Et j’accède aux Items …
( Ce processus apparaît également sur les éléments du réseau )
- J’enregistre tout ça... je ferme ... et je reviens au projet
Donc ensuite, depuis le projet, je suis la procédure Connect to Any PLC using OPC
(lien : http://zone.ni.com/devzone/cda/tut/p/id/7450
Il faut alors juste préciser dans la fenêtre de configuration "Create Bound Variables" :
          Browse source = Network Items
Et ensuite je peux sélectionner des variables partagées, (des items de mon serveur OPC) en naviguant dans son arborescence.
La note de Thomas B. décrite ci dessus fonctionne très bien, mais nécessite également (dans mon cas) la configuration du gestionnaire de système distribué.
<NBA>

Similar Messages

  • Response time between LabVIEW w/DSC module and RSLinx OPC server hosting FlexLogix PLC tags too long

    We are experiencing communication response time delays between LabVIEW with DSC module and RsLinx OPC Server hosting all FlexLogix PLC tags (around 500-600 tags).
    The nominal response time for the system watchdog is < 500ms, but we occasionally have spikes of up to 1.5 seconds once every few days even when the system is idling.
    Changing more than six PLC connected shared variables at the same time from LabVIEW also causes the watchdog response times to spike above 500ms.
    Our watchdog is programmed so that LabVIEW toggles the watchdog bit to 1 as soon the shared variable event detects that the PLC has toggled it to 0. The PLC, however, waits 300 ms until it toggles it.
    Our system:
    Windows XP SP3
    LabVIEW 9 F3
    RSLinx Opc Server v2.54
    Allen Bradley FlexLogix PLC

    What is your update rate set for in the RSLink OPC server?
    You aren't toggling the same flag from both ends are you?
    Ben
    Ben Rayner
    I am currently active on.. MainStream Preppers
    Rayner's Ridge is under construction

  • LabView DSC + OPC Servers + Windows 2003 server

    I just want to suggest this guide from Matrikon to the ones that are going to deal with DSC labview modules, OPC servers and windows 2003 server (Win 2003 is not officially supported by NI).
    Appling this configurations I solved some problems I was having with my application.
    gianpiero

    Here are the updated links:
    pdf MatrikonOPC: DCOM for Windows 2000 and NT
    pdf MatrikonOPC: DCOM for Windows XP SP1 and 2003 (base)
    pdf MatrikonOPC: DCOM for Windows XP SP2 and 2003 SP1
    Misha

  • LabView 2014 - DSC module with Ethernet Modbus: Error 56

    Sorry,
    I try to connect modbus by Labview 2014 DSC module like this figure, and it occurred error code 56 at "Read Input Registers",
    I have look for many soluctions, but still fail, can someone help me? thank you very much!

    Did you confirm the address and port of your slave device is correct? Also, is your device a modbus master device or slave device?
    I suggest you to read the help first, and then run the corresponding example
    You can run the two example to test if the modbus function is OK. Then you can come back to test your third party device.

  • How to use DSC & OPC with mitsubishi PLC FX2N

    Hi I have  PLC of Mitsubishi FX2N /FX3U
    Communication board is FX 232 BD.
    Data register in PLC  D8120  For serial communication.I want to use this type of PLC with DSC & OPC 8.5 version but, I am not able to communicate this PLC with DSC as I want to use this to control hydraulic test stands.Also guide how I can use DSC for data acquisitions.Support india is trying this from last 2-3 weeks still they are not able to slove the problem so kindly help asap.
    Regards
    Nitin Badgujar.

    Labview application to Mitsubishi PLC communications, No Mitsubishi PLC OPC Server to communications.all the labview vi write....
    We are finish it
    see at
    http://www.abb-furnace.com/scada-system/labview-mitsubishi-fx2n-plc.html
    [email protected]
    [email protected]
    ==============================================
    Labview Applications Engineering
    Labview SCADA/HMI Systems
    Labview AB Rockwell PLC, Omron PLC,Mitsubishi PLC,Siemens PLC,Fatek PLC,Delta PLC
    Labview Vision, Vision Builder
    Labview Profibus,EtherNet/IP,EtherCAT,DeviceNet,Canopen
    http://www.abb-furnace.com/scada-system/scada-system.html
    ==============================================

  • How to convert labview data into opc tag

    Hi all,
    Can any one please tell me how i can convert the labview data global into a OPC tag? I have some data globals reading and writing data to the globals. Now i wanted to use a PLC device to send its outputs to the field.
    The PLC device will supports the OPC tags so i wanted t create OPC recognised tags in my labview. Is it possible. I saw that labview also having OPC functinalities. Please any one guide me in doing this.
    I will be very thankful to them
    Ramme..

    As I said, I believe you can do this for globals as well by opening its front panel (double click the global) and using a DS connection for the control that represents that specific global.
    As for other alternatives:
    NI sells the DSC module which comes with an OPC server and with better tags.
    You can use a common protocol like Modbus to interact with the PLC.
    You can use the custom protocol used by the PLC.
    The last two would require that you would change your program structure, so you would only want to use them under certain conditions.
    I believe the practical limit for OPC tags with DS is a few hundred tags, but I never used it myself so I didn't run into it. You can try searching the forums to find out more.
    Try to take over the world!

  • Creating LabVIEW module adapter TestStand Steps using the API without loading module prototype???

    Is it possible to programatically create a TestStand step (using the API), that calls a LabVIEW module, without loading the prototype of the module to get a reference to the Module Parameters.
    I want to specify a VI Pathname, but I dont want to use that pathname to load the prototype.  I want to programatically specify the name, type, representation etc. of each of the controls and indicators.
    My reason for attempting this is that I only want the VIs called by the steps to exist on the target hardware not on the numerous development machines running my application.
    Any thoughts greatly appreciated.
    Steve  
    https://decibel.ni.com/content/blogs/DailyCLAD

    Hi Steve,
    Unfortunatly it is not possible to do what you want within Test Stand but I am not sure why it is necessary, I think I am understanding your application incorrectly.  The only time you will need to load the prototype is if you are creating the step but if you are creating the step you will need the VI that the step calls so that VI will need to be present on the system.  If you are not calling the step then you shouldn't need to load the VI prototype.  If this is how you program funtions it may be a problem with your architecture but if not please could you correct my misunderstanding so that I can go about finding a suitable solution.
    Regards,
    Tom
    Applications Engineer
    National Instruments UK & Ireland

  • Regular Labview's VIs unable to execute in lego mindstorm labview module

    Hi,
    I'm trying to create a block diagram that using vision aquisition in Labview module to detect my eyeball motion for robot direction control. It's success to run the block diagram.
    At the same time, i also using lego mindstorm labview module to create block diagram for the EV3 robot.
    But when i interface the two algorithms in the lego module, it can't run the block diagram due to the lego module can't run the other VIs? Because the error state that Mathscript, Vision Aquisition, IMAQ and others, all are not supported to execute.
    Any suggestion or other ways to solve this problem?

    Did you install Lego Mindstorms software and trying to use LabVIEW VIs in there? Or do you have a regular LabVIEW license with the Lego Mindstorms add on library installed?
    Lego Mindstorms is a special version of LabVIEW with restrictions like not being a general development environment. It can only run VIs that are specifically compiled to run for Lego Mindstorms and I suppose only NI has the necessary tools to do that.
    Rolf Kalbermatter
    CIT Engineering Netherlands
    a division of Test & Measurement Solutions

  • Problem with modules and ModuleLoader

    Hi everybody,
    i'm facing a real funny problem with modules and
    moduleLoader, i hope
    it's not (only) my fault anyway...
    If i create a normal flex project with fBuilder, i'm able to
    use
    modules in a lot of different ways (as mxml, as as in a
    function etc..)...
    but if i try to use them in my fds application (created with
    fds
    eclipse plugin or as a dataServices project) i can't use
    modules. The compile-time error message is
    always the same:
    Could not resolve <mx:ModuleLoader> to a component
    implementation
    I tried a lot of solutions, paying attention to import all
    the classes, to declaration, naming, positioning
    etc...but nothing changes, this thing is drivining me
    crazy!!!.
    I will appreciate anykind of help.
    TIA
    Fabio

    Any idea?

  • Problem with module lazy loading in flex 3

    Hi every body!
    I have some problems with Module lazy loading. I am using flex 3.5, Module-flex3-0.14, parsley 3.2.
    I can't get the LazyModuleLoadPolicy working correctly.
    In my main application (the one that loads the modules), my parsley context is the following:
            <cairngorm:LazyModuleLoadPolicy objectId="lazyLoadPolicy" type="{ OpenViewMessage }" />
         <cairngorm:ModuleMessageInterceptor type="{ OpenViewMessage }"/>
         <cairngorm:ParsleyModuleDescriptor objectId="test"
              url="TestModule.swf"
              applicationDomain="{ClassInfo.currentDomain}"
         />
    And to load my module:
    [Inject(id="test")]
    [Bindable] public var test:IModuleManager;
    <core:LazyModulePod
         id="moduleLoader"
         moduleManager="{test}"
         moduleId="testModule"
    />
    with  LazyModulePod.mxml:
    <mx:Canvas
        xmlns:mx="http://www.adobe.com/2006/mxml"
        xmlns:module="com.adobe.cairngorm.module.*"
        xmlns:parsley="http://www.spicefactory.org/parsley">
        <mx:Script>
            <![CDATA[
                import com.adobe.cairngorm.module.ILoadPolicy;
                import com.adobe.cairngorm.module.IModuleManager;
                [Bindable]
                public var moduleId:String;
                [Bindable]
                public var moduleManager:IModuleManager;
                [Bindable]
                [Inject(id="lazyLoadPolicy")]
                public var lazyLoadPolicy:ILoadPolicy;
            ]]>
        </mx:Script>
        <parsley:Configure/>
        <module:ViewLoader id="moduleLoader"
            moduleId="{ moduleId }"
            moduleManager="{ moduleManager }"
            loadPolicy="{lazyLoadPolicy}">
             <!--<module:loadPolicy>
                  <module:BasicLoadPolicy/>
             </module:loadPolicy>-->
        </module:ViewLoader>
    </mx:Canvas>
    OpenViewMessage.as in a swc:
    public class OpenViewMessage
            private var _moduleId:String;
            private var _viewId:String;
            public function OpenViewMessage(moduleId:String, viewId:String)
                this._moduleId = moduleId;
                this._viewId = viewId;
            public function get viewId():String{
                return _viewId;
            [ModuleId]
            public function get moduleId():String
                return _moduleId;
    In another flex project, my module context is:
    <mx:Object
         xmlns:mx="http://www.adobe.com/2006/mxml"
         xmlns:controler="com.cegedim.myit.controler.*">
         <controler:WindowControler/>
    </mx:Object>
    The module implements IParsleyModule
    <mx:Module xmlns:mx="http://www.adobe.com/2006/mxml" layout="vertical"
         implements="com.adobe.cairngorm.module.IParsleyModule"
         xmlns:spicefactory="http://www.spicefactory.org/parsley">
         <mx:Script>
              <![CDATA[
                   import org.spicefactory.parsley.flex.FlexContextBuilder;
                   import com.adobe.cairngorm.module.IParsleyModule;
                   public function get contextBuilder():ContextBuilderTag
                    return contextBuilderTag;
              ]]>
         </mx:Script>
         <spicefactory:ContextBuilder  id="contextBuilderTag" config="{ MyITTestModuleContext }"/>
         <spicefactory:Configure/>
    </mx:Module>
    and the WindowControler:
    public class WindowControler
         public function WindowControler(){}
         [Init]
            public function initialize():void
                Alert.show("Module Initialized");
            [MessageHandler(scope="local")]
            public function openViewMessageHandler(message:OpenViewMessage):void
                Alert.show("Opening view " + message.viewId + " in the module " + message.moduleId);
    If i uncomment the basicLoadPolicy in LazyModulePod.mxml and remove the lazyModuleLoadPolicy, everything works fine. The module is loaded when it's added to stage and it receives correctly messages dispatched to it. But with the lazy policy the module never loads.
    I may have missed something or there is somthing i don't understand because i tried the ModuleTest provided in example in cairngorm sources. It works fine (i mean loading the moduleA2 when receiving a message), but if i replace the change the lazyModulePolicy to listen to broadcasted messages instead of a pingMessage, the module never loads too.
        <cairngorm:LazyModuleLoadPolicy objectId="lazyLoadPolicy" type="{ BroadcastMessage }" />
        <cairngorm:ModuleMessageInterceptor
            type="{ BroadcastMessage }" moduleRef="moduleA" />
    public class BroadcastMessage
        public function BroadcastMessage()
    If someone has any clue, i'll be happy to test it =)
    Thanks.

    Hello, back on my issue, i tested a little bit more the message dispaching.
    I read the lazyLoadPolicy class and noticed that it always has to have a ModuleId property in the message to work, that's why the broadcast message didn't work to awake the module with the lazy loading policy.
    So i added copy of my module:
         <cairngorm:ParsleyModuleDescriptor objectId="test"
              url="TestModule.swf"
              applicationDomain="{ClassInfo.currentDomain}"
         />
         <cairngorm:ParsleyModuleDescriptor objectId="testbis"
              url="TestModuleBis.swf"
              applicationDomain="{ClassInfo.currentDomain}"
         />     
    Set them both with a basicLoadPolicy, and tries to dispatch a message to only one of them using the ModuleId metatag. I then noticed that both modules received the message and not only the one i expected.
    I then changed the ModuleMessageInterceptor configuration to dispatch to only one kind of module:
    <cairngorm:ModuleMessageInterceptor type="{ OpenViewMessage }" moduleRef="test"/>
    and this worked as expected. Only the first module catched the message. I am obiously messing with the ModuleId metatag but i cannot see what's wrong...
    I compiled with
    -keep-as3-metadata+=ModuleId
    but this hasn't changed anything...

  • Problem in Module Pool Program

    Hi All,
    I got one problem in Module pool program.Im using table control.when selected multiple coloms by table control option left top.
    when I want to de-select one by one,unable to de-select. Please suggest me.
    thank you,
    Anu.

    Thank You All.
    Solved my self.
    The coding as below.
    PROCESS BEFORE OUTPUT.
      CALL SUBSCREEN SUB INCLUDING SY-REPID '110'.
      LOOP AT GT_ITAB INTO WA WITH CONTROL VCONTROL.
        MODULE SET.
        MODULE STATUS_0100.
      ENDLOOP.
    PROCESS AFTER INPUT.
       CALL SUBSCREEN SUB.
      LOOP AT GT_ITAB .
        CHAIN.
          FIELD WA-EBELN.
          FIELD WA-EMATN.
          FIELD WA-EBELP.
          FIELD WA-MATNR.
          FIELD WA-MARK.
          MODULE MODIFY ON CHAIN-REQUEST.
        ENDCHAIN.
      ENDLOOP.
        MODULE USER_COMMAND_0100.
    MODULE USER_COMMAND_0100 INPUT.
    CASE SY-UCOMM.
        WHEN 'SAVE'.
          PERFORM SAVE_VARIANT.
          PERFORM VARIANT_EXISTS.
        WHEN 'SEL'.
          LOOP AT GT_ITAB INTO WA.
            WA-MARK = 'X'.
            MODIFY GT_ITAB FROM WA .
          ENDLOOP.
    endmodule.
    MODULE STATUS_0100 OUTPUT.
      SET PF-STATUS 'ZTESTING'.
      SET TITLEBAR 'ZTEST'.
      SET PF-STATUS  'ZTESTING' EXCLUDING IT_EXTAB.
      MOVE:WA-EBELN TO EKKO-EBELN,
           WA-EBELP TO EKPO-EBELP,
           WA-MATNR TO WA-MATNR.
      MOVE:WA-EMATN TO WA-EMATN.
    MODIFY GT_ITAB FROM WA INDEX VCONTROL-CURRENT_LINE.
      VCONTROL-LINES = SY-DBCNT.
    ENDMODULE.                 " STATUS_0100  OUTPUT
    MODULE SET OUTPUT.
      SET CURSOR FIELD CURSORFIELD OFFSET POS.
    ENDMODULE.                 " SET  OUTPUT
    Thank You,
    Anu.

  • How can I change the ordering of the parameters listed under the Labview module?

    Is there anyway to change the ordering of the parameters listed in the parameters table under the Labview module tab in TestStand?  Each of these parameters printout in my report, but I need to change the ordering of the parameters in the report.  Thanks.

    Hi,
    There is not a way to manually change the order of the parameter values in the Code Module Parameters Table, but there are a few options for configuring the report ordering of these parameter values.
    Option 1: Use the Additional Results in the Properties tab to add a Custom Result. You can then save the parameter values to these custom results and order them they way you desire. This ordering will be reflected in the report.
    Option 2: You could use a Post Action in the Properties tab to swap the parameter values that are saved to Locals.ResultList[0].AdditionalResults at run-time. This would require the use of a local variable to serve as a temporary placeholder for one of the values in order to successfully swap the values.
    -Adri
    Adri Kruger
    National Instruments
    LabVIEW Product Marketing

  • Time Synchronization two PCs having LabVIEW's DSC

    I have two PCs which have LabVIEW's DSC Run-Time System installed on them. They are connected on the LAN. The approximate distance between the two PCs is about 6 KM, i.e., it passes through many repeaters and network switches. Both fiber optic and normal network cable is used. The LAN speed is 10Mbps.
    LVDSC Runtime System has an option of time synchronizing two or more PCs which are registered.
    What is the accuracy of time synchronization ?
    Does the accuracy fall if the distance between the PCs on the LAN increases, i.e., the LAN speed could be slow at times due to net congestion ?
    Does the time synchronization take place to the accuracy of "seconds" or "milli seconds" ?
    Thanks

    Hi,
    The time synchronization service that ships with LabVIEW DSC is accurate to +-10 milliseconds in ideal conditions (two PCs on a LAN located on the same floor of the same building). The time synchronization service will attempt to compensate for any latency between the servers, but some accuracy will be lost. Accuracy should never be worse than +-1 second, and should be much better than that except in very high-latency situations.
    Sincerely,
    J.D. Robertson
    Software Engineer
    National Instruments

  • LabVIEW module use DLL

    In a teststand sequence file, it uses LabVIEW modules that call .NET DLL.  The DLL cannot be linked to the program.  If I were using LabVIEW only, I know that I can insert the DLL into a LabVIEW project and the VI in the project will know where the DLL are.  However, I am not sure about teststand.  Can someone help?  Thanks!
    Kudos and Accepted as Solution are welcome!

    Are you asking because you want to deploy the system? If yes, you should create a workspace and add the .NET DLL to your project as additional file. You can use the Deployment Utility to include the DLL in a MSI (Microsoft Installer).
    If you are NOT asking in the context of a deployment, please elaborate your question....
    Norbert
    CEO: What exactly is stopping us from doing this?
    Expert: Geometry
    Marketing Manager: Just ignore it.

  • Deployment Utility and Labview Modules

    Hi,
    I am fairly new to TestStand. I have created a TestStand Sequence that calls a number of Labivew modules. Everything works fine on my development machine.
    I am trying to deploy this to another machine running a base development license. I ran the development utility and created a setup.exe which I have just installed on the 2nd machine.
    When I go to run my test sequence on the 2nd machine it cannot locate the labview modules called in the test sequence.
    So my questions are:
    Can TestStand deploy these files for me, or should I do it manually?
    If it can, is there a specific folder I should store all labview moduels on my development machine so the deployment utility picks them up?
    Is there any option in the Deployment Utility that I need to set for TestSTand to pick up these modules?
    Is there any special option I should set in the sequence file? Search area???
    Thanks & Regards,
    Don1.
    Solved!
    Go to Solution.

    Hi,
    You should be able to see the LabVIEW VI's in your deployment tool. If you can't then that is why you can't see them on the target system.
    Are you using a TestStand WorkSpace/Project files?
    Regards
    Ray Farmer
    Message Edited by Ray Farmer on 02-11-2009 06:30 AM
    Regards
    Ray Farmer
    Attachments:
    deployment.JPG ‏70 KB

Maybe you are looking for

  • How can I print all events in iCal?

    Hello, I need to print all the events I have in 2013 on one page (using iCal). When I select a list, it prints all days, whether they have events or not. I only need to have a list of events in 2013. Is that possible to view or print in iCal ?

  • Exporting a web report to Excel

    Hi, When I export a web report to Excel, it works fine. when I resave the same file as .xls file, the excel file size is reduced drastically (less than 1/10). Why is this happening? Any way to reduce the file size in the first stage, that is down loa

  • MacBook Pro 2010 refuses to shutdown

    After upgrading to 10.6.7, it seems that my Mac won't shutdown. The blue screen shows up with the spiral spinning, but the it just sits there. I'm forced to do a hard shutdown since I was waiting for well over an hour. For some reason, this only happ

  • Ghost Order? Tried again, same result... Frustrated

    I attempted to purchase 2 items for in-store pickup.  I paid with PayPal.  I hit the button to submit my order and it gave me an error saying that PayPal couldn't authorize the order or something.  I intended to try again but, in the interim, I recei

  • Add leading zero in timefield

    Hi All, I have a table with 2 columns, let say ID as Int and TimeField as Varchar(8) ID  TimeField  1    1:15  2    8:45  3    12:30  4    10:00  5    8:30 I want leading 0 to be added before  the timefield for the Id's=1,2 and 5 My output should loo