Lookout OPC reads A-B PLC Output word bit 15 as negative.

I am using LabVIEW and Lookout OPC driver to read an output word from an Allen-Bradley PLC and display the bit values as booleans. When bit 15 goes to a logic one, the value the opc driver reads goes negative. this causes the Labview Number to boolean array converter to 'mis-read' the bit values. How can I prevent this mis-read?

I dealt with this problem a couple of years ago.
I had to write a VI that decode the bits and fixed it.
THe VI just checked the MSB and acted accordingly.
Ben
Ben Rayner
I am currently active on.. MainStream Preppers
Rayner's Ridge is under construction

Similar Messages

  • Reading text file and output (to stdout) a list of the unique words in the

    Hi,
    I have a main method as
    main.java
    package se.tmp;
    public class Main
    public static void main( String[] args )
    WordAnalyzer.parse( args[0] );
    and text file as
    words.txt
    the quick brown fox jumps over the lazy dog
    the quick brown fox jumps over the lazy dog
    the quick brown fox jumps over the lazy dog
    the quick brown fox jumps over the lazy dog
    the quick brown fox jumps over the lazy dog
    the quick brown fox jumps over the lazy dog
    the quick brown fox jumps over the lazy dog
    the quick brown fox jumps over the lazy dog
    the quick brown fox jumps over the lazy dog
    the quick brown fox jumps over the lazy dog
    the quick brown fox jumps over the lazy dog
    the requirement is like
    I need create this WordAnalyzer class, implement the parse method, and then commit the file. This method takes a single parameter, the filename of the file to parse. The method should read this file and output (to stdout) a list of the unique words in the file along with the number of times each appears in the file.
    Can anyone please help me on this?
    Thanks.

    Where are you having problems?

  • Lookout OPC Client – Asynchronous I/O and Update Rate serious problems (Sequence of data)

    I am using the Lookout OPCClient driver to connect to AB PLCs (EtherNet/IP protocol) and power measurement equipment (Modbus TCP protocol). The OPC server is the NI OPC Servers. The data that are read out from PLCs and PMs are energy meter readings, energy counters, power, voltage, current, frequency, power factor and el. energy quality measurements (THD). That energy meter readings are being stored in SQL database.
    I am experiencing a serious problem regarding the accuracy of the meter readings. Several times per day, randomly, meter readings are losing the time sequence. For example, sequence is: 167, after few seconds 165, 166.  In other words, present value followed by two previous old values. That generates a serious problem in our application that is expecting a naturally rising sequence of counter values.
    Analyzing further, I isolated the problem to the connection between Lookout OPCClient and OPC Server. I made a simple application in Lookout 6.7 (opcproc.lkp, attached) with OPCClient parameters: NIOPCServers, OPC2, Asynchronus I/O, Update rate: 10000, Deadband: 0.0, that is reading just one tag from NI OPC Servers demo application (simdemo.opf).
    By using OPC diagnostic tool from NI OPC Servers I record the sequence of OPC requests and responses.  I found out that OPCClient sends every 2.5 sec “IOPCAsyncIO2::Refresh2()” call that is request for refreshing of all items in one OPC group. Few milliseconds later OPC Sever responds with callback function “IOPCDataCallback:: OnDataChange()(Device Refresh)” that actually refresh the data.
    This periodic sequence is intrinsic to the OPCClient and cannot be disabled or changed (by my knowledge).  This sequence is periodically interrupted by “IOPCDataCallback:: OnDataChange()” caused by update rate parameter of OPCClient (client is subscribed to server for periodic update of changed items).
    In the case of demo application on every 4 refresh callbacks caused by refresh requests (2.5 sec) there is one update subscription callback determined by Update rate (10 sec).
    QUESTION 1:
    What is the purpose of update sequence and update rate when we have every 2.5 sec fresh values?
    PROBLEM
    The problem arises when we have a large number of items in OPC group. In that case the OPC Server starts to queue refresh requests because they cannot be fulfilled in 2.5 sec time because of large number of I/O points that must be scanned. At the same time update subscription callbacks are running at the period determined by Update rate. I observed in my production system that regular update callbacks has higher priority than refresh callbacks from the queue. That causes the loosing of timed sequence of data. After the update callback with fresh data, sometimes follow one or two refresh callbacks from queue with old (invalid) data. By adjusting Update rate parameter (1 hour, 2hours …) I can postpone the collision of data refreshes but I cannot eliminate it. Furthermore, the 2.5 sec automatic refresh are large burden for systems with many I/O points.
    QUESTION 2:
    Is there a way to disable automatic refresh request every 2.5 sec and just use update requests determined by Update rate?
    QUESTION 3:
    Is there a way (or parameter) to change the period of automatic refresh (2.5 sec)?
    This problem is discovered for Lookout 6.5, 6.6 and 6.7 so I could say it is intrinsic to OPCClient. If I use synchronous I/O requests there is not an automatic refresh, but that is not an option for large systems.
    Thanks!
    Alan Vrana
    System engineer
    SCADA Projekt d.o.o.
    Picmanova 2
    10000 ZAGREB
    CROATIA
    T +385 1 6622230
    F +385 1 6683463
    e-mail [email protected]
    Alan Vrana
    SCADA Projekt d.o.o.
    ZAGREB, Croatia
    Attachments:
    opcproc.zip ‏4 KB

    The physical connection from LV to the switch is (I believe) copper crossover to fiber converter into a switch.  Then, fiber from the switch to the end device (relay).  The relay has all of the typical modbus registries and has been verified by inducing signals in to the system and measured/polled in LabVIEW and observed Variable Monitor.  I am working with LV 8.2 and 8.5. 
    An OPC server would only add an additional translation of addressing within the configuration.  The only real draw back would be the network overhead required to do this processing and not being representative of the end design configuration.
    I will reiterated my question in another way:
    I must answer the question to management that relates to data collection, test results and analysis; how often are you polling the client in relation to the outcomes measured?  At this time I can not point at any configuration in the set up and execution that directs the data framing rate.  I only measure the traffic and work with results.  This needs to be clearly identified based on the relay modbus/tcp design capability of supporting an fixed number of client requests per second. 
    For testing purposes, I would like to be able to stress the system to failure and have prove capabilities with measured data.  The present problem is that I have no basis to establish varying polling rates that effect the measured data transmission. 
    This raises another question.  What handles the Variable Monitor data requests and how is this rate determined?
    Thanks for your interest in my efforts.
    Steve

  • Lookout opc problems

    I am using Lookout 6.0.2 on a new Win XP desktop.  The Lookout OPC client object is used for communications via Rockwell Software RSLinx's (Professional Rev 2.43.01.23) OPC server to ControlLogix PLC's over ethernet.  In other words, the Lookout communicates with RSLinx by OPC, and the RSLinx communicates with PLC's by ControlNet.
    We have 3 Lookout processes, one which is the "server" process, and contains the OPC Client object. The other 2 process files are "client" processes, and reference the OPC Client object  by symbolic link.
    We have many Lookout switches in the "client" processes, that are remoted to a tag in the ControlLogix PLC using symbolic link. A typical link for a remoted switch is:
    ..\..\[Link_to_Drivers]\OPCclient1.PLC_12.Online.SWITCH_TAGNAME
    OR   IF USING ABSOLUTE REFERENCE:   \\ComputerName\ProcessName\[Link_to_Drivers]\OPCclient1.PLC_12.Online.SWITCH_TAGNAME
    In this  way, the Lookout switch object has a read/write link. 
    The problem is this:  Periodically the write link will stop working.  When this happens, all the Lookout switches and even the Lookout pots will lose ability to write to PLC, but the read links are still working. We can read the data and the switch positions, but the changing setpoints with the pots and operating equipment with the switches is then impossible.  This "lock up" can be fixed by closing down all the Lookout processes (but not Lookout), and then restarting the Lookout processes. 
    This problem is intermittant and not repeatable.  Does anyone have idea how to troubleshoot this problem, or have an way to isolate and fix this problem?

    doug:
    You may want to repost in the Lookout board:
    http://forums.ni.com/ni/board?board.id=190
    ~~~~~~~~~~~~~~~~~~~~~~~~~~
    "It’s the questions that drive us.”
    ~~~~~~~~~~~~~~~~~~~~~~~~~~

  • Lookout opc or link problems

    I am using Lookout 6.0.2 on a new Win XP desktop.  The Lookout OPC client object is used for communications via Rockwell Software RSLinx's (Professional Rev 2.43.01.23) OPC server to ControlLogix PLC's over ethernet.  In other words, the Lookout communicates with RSLinx by OPC, and the RSLinx communicates with PLC's by ControlNet.
    We have 3 Lookout processes, one which is the "server" process, and contains the OPC Client object. The other 2 process files are "client" processes, and reference the OPC Client object  by symbolic link.
    We have many Lookout switches in the "client" processes, that are remoted to a tag in the ControlLogix PLC using symbolic link. A typical link for a remoted switch is:
    ..\..\[Link_to_Drivers]\OPCclient1.PLC_12.Online.SWITCH_TAGNAME
    OR   IF USING ABSOLUTE REFERENCE:   \\ComputerName\ProcessName\[Link_to_Drivers]\OPCclient1.PLC_12.Online.SWITCH_TAGNAME
    In this  way, the Lookout switch object has a read/write link.
    The problem is this:  Periodically the write link will stop working.  When this happens, all the Lookout switches and even the Lookout pots will lose ability to write to PLC, but the read links are still working. We can read the data and the switch positions, but the changing setpoints with the pots and operating equipment with the switches is then impossible.  This "lock up" can be fixed by closing down all the Lookout processes (but not Lookout), and then restarting the Lookout processes.
    This problem is intermittant and not repeatable.  Does anyone have idea how to troubleshoot this problem, or have an way to isolate and fix this problem? Thanks!

    This problem is fixed by lookout 6.0.2 updates. It can be downloaded from http://joule.ni.com/nidu/cds/view/p/id/506/lang/en
    You need first to login MyNI, and then download lo602_updates.zip. Unzip it and copy all files to lookout folder.
    This update is applied to Lookout 6.0.2 server system. You don't need to copy these files to client system.
    Ryan Shi
    National Instruments

  • How can I edit the database in Lookout OPC Modbus driver OPC sever with the address that has a write attribute?

    When I use Lookout Modbus driver OPC to communicate with my instrumnets, I edited the database number such as 41202 that has a Write attribute in my instrumnet manual, the OPC explorer got bad data, and the OPC server gave the illegal address alarm, when I input the address such as 41203 that has R/W attribute, it worked very well. Is there a way to fix this problem. When I used other OPC server, there was no this kind of problem. Thanks!

    Thanks for your suggestion. I checked the Modbus manual of my instrument, the register is 16 bit. I tried to edit the data according to the Modbus data member in lookout modbus drivere server for several different member, but the OPC still gave me the illegal address. I think the problem may be produced by their attribute, for the address 1201 and 1202, they have the write attribute, for other addresses, they have W/R attribute, and they can be read or write through Lookout OPC server perfectly. when I used the demo OPC server from other company, it can work well, but it is not convinient for me to use Labview when I use that software. I prefer NI Lookout OPc server. I am using the Lookout 4.5. I am wondering whether the Lookout has some shortcoming when I
    use the Modbus driver. Please give me any suggestion, is there any newest version of Lookout OPC sever? Thanks!

  • How to setup and configure NI OPC Server to OMRON PLC (CJ2H model) using FINS Ethernet communication protocol?

    Hi,
    Could someone help me in the setup and configuration of NI OPC server to OMRON PLC (CJ2H model) using FINS Ethernet communication protocol? I already read some materials available in the web but it uses a different PLC and communication protocol. The OPC server is installed in my laptop and I'm using Windows 8 as my OS. I used a cross over RJ45 LAN cable and connected to the ETN21 module of the PLC. I was able to confirmed the communication of my laptop and PLC by pinging the ip address of the ETN21. I also tried to configure the OPC server based on the documents I just read online. I created a channel, device and tag to the OPC server. By the way, I just need to read the data from the tag I created. Can someone also tell me how to monitor the data on the tag? I hope that you could help me. Thank you in advance. 

    Good day,
    Try following the instructions on the driver’s help, take a look at the attach picture. It should be a good starting point. After the PLC is configured you can use this tutorial (Connect LabVIEW to Any PLC Using OPC » http://www.ni.com/white-paper/7450/en/) for a guide on how to monitor the tags.
    I hope this helps
    Alejandro | Academic Program Engineer | National Instruments
    Attachments:
    OPC Server Help.JPG ‏237 KB

  • Can I write a data to intrument through Lookout OPC driver sever?

    I can read data from intruments through Lookout OPC driver sever, how can I write data to instruments? Can I still use the dataSocket to find the address and send the data through Lookout OPC driver sever? Thanks!

    The write should work just like the read. The OPC server will let you write as well as read.

  • Print driver that outputs Word *.doc file

    Does anyone know of a product that installs a print driver on Windows 7 (x64) that outputs a Word2003 *.doc file.
    I know that products exist for Pdf's called PdfLite (freeware) but I am specifically interested in outputing Word 20003 *.doc files.
    Thanks.

    Hello,
    The TechNet Wiki Forum is a place for the TechNet Wiki Community to engage, question, organize, debate, help, influence and foster the TechNet Wiki content, platform and Community.
    Please note that this forum exists to discuss TechNet Wiki as a technology/application. If you have a question about another technology (such as Windows), you can ask in another forum. If you're unsure which forum, a
    Bing search often works the fastest or ask here:
    http://social.microsoft.com/Forums/en-US/whatforum/threads
    However, I'd ask in the
    Windows 7 forum on Microsoft Community.
    Karl
    When you see answers and helpful posts, please click Vote As Helpful, Propose As Answer, and/or Mark As Answer.
    My Blog: Unlock PowerShell
    My Book: Windows PowerShell 2.0 Bible
    My E-mail: -join ('6F6C646B61726C40686F746D61696C2E636F6D'-split'(?<=\G.{2})'|%{if($_){[char][int]"0x$_"}})

  • Lookout OPC Communication Problems

    I am running a Lookout process with an OPC server to connect to a
    ControlLogix PLC. My Lookout process will not always reflect the
    current state of hardware, i.e. simple Boolean objects do not update
    on the display control panel. I can, in some cases cause the display
    to change by changing the state of my hardware manually (actuating a
    limit switch for example) thus Lookout sees an event and updates the
    display. But this does not work in all cases so I have no way of
    knowing if the display is accurate.
    Similary, changing the position of Lookout switches and pushbuttons
    on the control panel will be reflected in the plc ladder logic but not
    write back to Lookout to report the change. This is true for both
    local and remote position source
    s. I should add that switching from
    OPC1 to OPC2 or OPC2 to OPC1 can cause some signals to reflect what
    hardware is doing but there is no definite consistency that one can
    point to that will identify the problem.
    Finally, communication between the OPC Server and the PLC is fully
    functional and verifiable. So there seems to be a fundamental flaw in
    my design any advice on this issue would be greatly appreciated.
    Leo

    Hello Leo,
    Have you tried turning On the Force refresh after write setting?
    Also, try polling the device periodically to force the updates.
    Regards,
    Khalid

  • How to read the content of ms-word file use pure java???

    how to read the content of ms-word file use pure java???

    hi,
    check this: http://jakarta.apache.org/poi/

  • Can we Read/Display the content of Word/PDF file  in Flex 3/4 ?

    Hello All,
    Can we  read/display the content of Word/PDF file in Flex 3 or Flex 4?.  I have one word file containing  Arabic  and English content with some settings like  Bold, Color, Align etc. I want to display the content of this word file as it is in the flex web application.
    Awaiting for prompt reply.
    Thanks and Regards

    thank you for your immediate reply, but,
    sorry, this does not work.
    With this code:
    <cfpdf action = "read" source = "dok_1.pdf" name =
    "mypdf">
    <cfdump var="#mypdf#"/>
    I get this result:
    Everything, but no text of the document.
    PDFDocument
    Application name of application
    Author bimbam Verlag GmbH
    CenterWindowOnScreen [empty string]
    ChangingDocument Allowed
    Commenting Allowed
    ContentExtraction Allowed
    CopyContent Allowed
    Created D:20080710
    DocumentAssembly Allowed
    Encryption No Security
    FilePath [empty string]
    FillingForm Allowed
    FitToWindow [empty string]
    HideMenubar [empty string]
    HideToolbar [empty string]
    HideWindowUI [empty string]
    Keywords [empty string]
    Language [empty string]
    Modified [empty string]
    PageLayout SinglePage
    Printing Allowed
    Producer [empty string]
    Properties [empty string]
    Secure Allowed
    ShowDocumentsOption [empty string]
    ShowWindowsOption [empty string]
    Signing Allowed
    Subject [empty string]
    Title Rheinische Angler-Zeitschrift
    TotalPages 1
    Trapped [empty string]
    Version 1.3
    Maybe i do not understand the cfpdf tag the right way.
    What i want is a kind of pdf-to-text conversion.
    Do I have to use the processddx action? I do not think so.
    But there is a property DocumentText .. ?

  • How to read a table from a word file, using HWPF

    How can I read a table from a Word file using HWPF?
    I looked in API and Table class doesn't seem to have a constructor... very very strange for me. pls help

    the constructor is HWPFDocument = new HWPFDocument(/*file*/)
    Here is the API for that
    http://poi.apache.org/apidocs/org/apache/poi/hwpf/HWPFDocument.html
    Also here is another link to something that might help you more with tables
    http://www.aspose.com/Community/forums/thread/79182.aspx

  • Could not read boot block (input/output errror) powerbook g4

    Hello
    My friend gave me a powerbook g4 and a copy of osx lion, I would like to install it but the internal hardive is not available within the "select Destination" area of the  installation process. I tried to repair the disk which is labelled Disk0s1, but shortly after it is underway i recieve this message.
    **/dev/disk0s1 could not read boot block (input/output error) Error: The underlying task reported failure on exit. 1 non HFS volume checked, 1 volume could not be repaired because of an error.
    Within disk utilities the Disk01s is grey, I can try to repair it but the above error occurs. Do you know what the problem is and how I can fix it?

    Since you are going to install system fresh, it sounds like, you should erase the drive.  Boot from the installer disc, then select the language but do not start the installer.  From the menu bar, you should have either an Applications or an Installer menu. From one of the menus, you can then start Disk Utility.
    From the drives and volumes pane, select the internal drive hardware listing. 
    This will now allow you to partition or erase the disc.  Now click the Erase tab and select Mac OS Extended (Journaled) as the format and then click the "Erase" button.  You can name the volume that will actually be created, like for instance "MacintoshHD" or whatever you want.)
    Once the erase has completed, you need to check the information for the hard drive at the bottom of the window.  Be sure that the partition scheme is Apple Partition Map.  If for some reason it is something else, like GUID, you won't be able to install MacOS on it.  You will need to click the Partition tab, click the "Options..." button and select Apple Partition Map, then click the "Partition" button.
    Once this is done, then you can quit Disk Utility and you should be able to install Tiger on that HD.

  • [solved] NFS: "ls: reading directory .: Input/output error" after time

    Hello,
    I got the following configuration:
    NFS-server: Always on, connected via LAN.
    NFS-clients: 2 computers, connected via LAN and WLAN. On standby: auto umount NFS-share via system-sleep-hook with systemd.
    This works flawlessly some hours or even days. But after some time, the following happens:
    1. mount nfs-share: no error message
    2a. trying to access that folder via filemanager, e.g. thunar: folder seems to be empty (it isn't on server!), but the correct freesize of the NFS-share on server is displayed in the statusbar.
    2b. trying to access that folder via commandline:
    $ ls
    ls: reading directory .: Input/output error
    The very same worked just a few hours before, I haven't changed anything meanwhile. Apart from standby (--> auto umount NFS-share) and resume (manual mount NFS-share) on the clients which worked before, too.
    Any idea what's going wrong?
    additional info:
    server:
    /etc/exports
    /srv/nfs/myshare 192.168.2.0/24(rw,all_squash,anonuid=33,anongid=33,no_subtree_check)
    (yes, the mapping is needed and right.)
    clients:
    /etc/fstab
    servername:/srv/nfs/myshare /home/carl/nfs nfs4 noauto,soft,user,_netdev,timeo=14,rsize=8192,wsize=8192 0 0
    /usr/lib/systemd/system-sleep/umount-nfs
    #!/bin/sh
    case $1 in
    pre)
    umount -f /home/carl/nfs
    esac
    Last edited by Carl Karl (2014-09-21 17:07:47)

    Indeed, there could be something interesting in dmesg on the server:
    [ 4.190117] NFSD: Using /var/lib/nfs/v4recovery as the NFSv4 state recovery directory
    [ 4.190596] NFSD: starting 90-second grace period (net ffffffff818a9540)
    [ 5.445237] [drm] Enabling RC6 states: RC6 on, RC6p on, RC6pp off
    [ 5.895519] r8169 0000:04:00.0 enp4s0: link up
    [ 5.895529] IPv6: ADDRCONF(NETDEV_CHANGE): enp4s0: link becomes ready
    [72346.265850] usb 3-1: USB disconnect, device number 2
    [72346.670926] usb 3-1: new SuperSpeed USB device number 3 using xhci_hcd
    [72346.684585] usb-storage 3-1:1.0: USB Mass Storage device detected
    [72346.684716] scsi5 : usb-storage 3-1:1.0
    [72347.686518] scsi 5:0:0:0: Direct-Access WD Elements 1048 1022 PQ: 0 ANSI: 6
    [72347.687606] sd 5:0:0:0: [sdc] 976769024 512-byte logical blocks: (500 GB/465 GiB)
    [72347.690295] sd 5:0:0:0: [sdc] Write Protect is off
    [72347.690301] sd 5:0:0:0: [sdc] Mode Sense: 47 00 10 08
    [72347.692981] sd 5:0:0:0: [sdc] No Caching mode page found
    [72347.693025] sd 5:0:0:0: [sdc] Assuming drive cache: write through
    [72348.135398] sdc: sdc1
    [72348.141458] sd 5:0:0:0: [sdc] Attached SCSI disk
    [72348.455737] EXT4-fs (sdc1): recovery complete
    [72348.455919] EXT4-fs (sdc1): mounted filesystem with ordered data mode. Opts: (null)
    [74276.020331] EXT4-fs error (device sda1): ext4_find_entry:1310: inode #14024711: comm nfsd: reading directory lblock 0
    [74276.021107] EXT4-fs error (device sda1): ext4_find_entry:1310: inode #14024711: comm nfsd: reading directory lblock 0
    (last one repeats several times...)
    Indeed, the NFS-share resists on a external WD harddrive connected via USB, /dev/sdc1.
    As suggested in the NFS wiki article, the NFS-share is a bind-mount:
    /etc/fstab on server:
    # fake-root for NFS
    /magnet/owncloud/data/carl/files /srv/nfs/myshare none bind,noauto,x-systemd.automount
    while /srv is on /dev/sda1.
    The external harddrive has an auto-standby (NOT hdparm...) which isn't causing troubles with other services.
    So it seems to be a problem connected to this bind-mount to external USB setup....
    I'll try to find out whether there is  a way to avoid that.
    Thanks so far!
    Last edited by Carl Karl (2014-09-16 14:30:02)

Maybe you are looking for

  • Bonjour services disappear - can't see speakers in iTunes

    Hi, I guess this might not be the correct forum but I can't seem to find anywhere else it may sit. I am having issues with certain bonjour services not running on my iMac, this is mainly affecting speakers being shown in iTunes. I don't have a proble

  • Nokia X3-00 white screen of death !!!

    Hello guys. I own a Nokia X3-00. When i first purchased it, after 2 days, it failed to switch on. Instead a white screen appeared and after the nokai logo appears, the screen flashes 3-4 times and than it goes off. I got a new set in place of it sinc

  • PROGRESS BAR while loading report

    Hi Fiends, I have a classic report w/ a link and this link open a other page and this page is a report with a report model ( CSV ).. and this load is too slow and i wanna include a progress bar like this site [link]http://apex.oracle.com/pls/otn/f?p=

  • External email

    Hi Experts, I want to send mail via SAP Office using the external e-mail address as sender In an input field I selected an email id (sksinghagmail.com) Now I want this id to be used as sender of the mail. Please suggest how this can be achieved. Poin

  • Proble with execute

    Hi everybody!!! I've installed de Oracle 8i lite version 4.0.0.2.0 I use it for java jdbc access. When i tried to ejecute the execute method of a statement with an insert SQL query y receive a empty ResultSet in the getResultSet method when in api sa