Modbus RTU over TCP (Simex Transmitte​r and Advantech Server)

Hey Guys,
somehow i am not able to get a connection over TCP IP using RTU Mode (reading values) from a  transmitter which is hooked up to an advantech EKI 1542 Server. The Port is configured as an RS 485.
i am using the modbus library and i tried to adjust the MB serial read holding registers vi to accept a TCP IP Socket input instead of an INSTR. Do you have any suggestions?
Thanks a lot for the forum support!

Hi Christo and welcome to NI Forums!
Is this the ModBus library you are using? If so, I'd recomend to check out the newer, object based library available here. It has a more straightforward setup, especially for using TCP connections. You'll find an example VI for using a master, as well as a slave device, and these you'll be able to use right away without much modification. The code'll look like:
Please test your device communication using this library.
Kind regards:
Andrew Valko
NI Hungary
Andrew Valko
National Instruments Hungary

Similar Messages

  • Need help with Modbus RTU over TCP communication

    Hello!
    I'm working with a project that involves communication between a LabView PC, a cRIO-9073 and a few Crouzet PLC's with XN05 modbus extentions. The issue I'm having is to get a stable and reliable connection between the units. The cRIO is communicating with the PLC's by Modbus RTU over TCP and I've created code that read and write to them in a sequential order to avoid possible ModBus conflicts. The LabView PC is sending a "ping" (boolean true) every second to the cRIO over UDP and the cRIO is then sending the "ping" to the PLC over Modbus/TCP. The PLC has a timer that waits for pings, if no ping has been recieved in 7 seconds the emergency brakes are applied and the system shuts down.
    The main problems right now is:
    * After a while I lose the connection between the LabView PC and the cRIO. "Connection with RealTime target cRIO-9073 has been lost".
     - I also get either error code 56 or 66 on the TCP link.
    * The second problem is that if I quickly pull a TP-cable from, let's say, a PLC and then directly plug it back in I want the TCP connection to quickly reestablish. However what happens is that the "pings" from the cRIO stops coming to the PLC for like 5-6 seconds (time to reestablish link?), which means the 7 second timer is almost full. One option would be to raise that timer value, but the drawback is that the system will take longer time to respond to an true error which could be bad.. My question is simply, does it really take 5-6 seconds to establish a TCP connection between a cRIO and a PLC? What affects the time? 
    I would greatly appreciate help or respons on this one. I attach a simplified version of the code I use (all variables and such has been replaced with constants). 
    Is this a good way to do a ModBus communication over TCP with 3 PLC's?  Is there a better, safer, more reliable way? All suggestions on improvment is appreciated
    Thanks!
    /J
    Attachments:
    MB_TCP.vi ‏29 KB
    MB_PLC.vi ‏28 KB

    Dear J,
    Check the state machine Architecture here.
    1. In your acquisition if you got error in any system you close all TCP connections that is not right your other systems are working fine.
    2. You go with parallel loop connection. For each PLC you run separate code with error handlers.
    3. Check the attached VI for TCP Read. Same VI you can modify and use for your ModBUS operations.
    4. In you Sub VI you are passing a constant cluster. I am not able to understand what is the use of case structure inside the subVI, In you code you are passing the constant so its always same.
    As you done previously made 3 loops or VIs to read the data in a main VI. First try to made one VI with one PLC, remove your all bugs and errors and copy it 3-time with different-different configurations.
    Thanks and Regards
    Himanshu Goyal | LabVIEW Engineer- Power System Automation
    Values that steer us ahead: Passion | Innovation | Ambition | Diligence | Teamwork
    It Only gets BETTER!!!
    Attachments:
    Tcp Host.vi ‏28 KB

  • Safety of MS Sharing on LAN over TCP/IP via NetBIOS and/or Direct SMB

    Shalini Sampath Kumar at http://answers.microsoft.com/en-us/windows/forum/windows_7-security/ suggested I post this question over
    here:
    What is the safest recommended way to set up MS File and Printer Sharing on a LAN with both Windows 7 Pro and XP Pro machines?  Does "Direct hosting of SMB over TCP/IP," help?  What about setting a "Scope ID" (or did that go out
    with Windows NT)?
    Background:  I've been trained to be paranoid about NetBIOS over TCP/IP.  Right now I have only XP Pro machines on my peer-to-peer workgroup LAN (behind a NAT router and with Simple File Sharing turned off), on which File and Printer Sharing has been
    unbound from TCP/IP and bound to NetBEUI instead, so I feel fairly safe.  Port scanning by ShieldsUp doesn't see any ports through the router, open or closed -- in other words, it appears to be "stealthed," for what that's worth.  With
    NetBIOS disabled on all computers inside the LAN, however, can I perform a valid test of what will happen when File and Printer Sharing is re-bound to TCP/IP?
    My New Problem:  I'm planning to add Window 7 Pro machines, for which NetBEUI isn't an option, and then to transition entirely to Win7 before XP goes off extended support in April.  I will still use a peer-to-peer architecture with password-protected
    sharing turned on (no HomeGroup).  It appears that I can still get rid of NetBIOS (and WINS) in favor of "Direct hosting of SMB over TCP/IP," which sounds safer.  Apparently then only port 445 will be vulnerable instead of ports 137-139. 
    In any case I want to do everything I can to protect my file-sharing port(s) from the Internet (e.g., from anyone who might break into my LAN either by making a wireless connection or by hacking the router itself).  Can anybody give a clear set of steps
    to change sharing from NetBIOS (which I would like to disable entirely) to direct hosting of SMB and to verify that I'm protected as well as possible?
    I will have to completely revamp the network-file-sharing configuration of my XP machines as soon as the first Win7 machine goes on line (and possibly tweak the configuration of Win7 as well), perhaps as early as this week. I want to do this in the way that
    maximizes security to the extent possible.  Thanks in advance more details and guidance on this topic! -- JCW2
    P.S. -- These computers are all laptops and will be used away from my home LAN -- another reason for paranoia about File and Printer Sharing.  I realize that Windows 7 provides an easy way to disable F&PS by selecting any new network location as
    "public," but XP does not (as far as I know).  Fixing that will take more effort and be harder to remember... -- JCW2

    Removing the NetBIOS transport has several advantages compared to NetBIOS over TCP, you can find detailed infromation in the following KB
    Direct hosting of SMB over TCP/IP
    http://support.microsoft.com/kb/204279/en-us
    Yolanda
    TechNet Community Support
    Hi again -- I think I'm slowly catching up with you.  Following from my previous message...
    Somebody on another forum mentioned creating "Hosts" files on each computer to substitute for the DNS server that I don't have on my workgroup.  This is intriguing if I can figure out how to set it up.  (I've heard it said that taking control of
    your "Hosts" file is a good safety precaution anyhow, since it is a frequent target of hackers trying to divert legitimate Web requests to their own malicious sites.)  Does anybody have tips and/or references that would help me accomplish the name resolution
    there?
    Finally, what functionality do I really lose by going the Direct-Hosting-of-SMB-with-Hosts-file (or drive mapping) route as opposed to using NetBIOS over TCP/IP?  Granted, any new machine added to the network would also have to be added to all the "Hosts"
    files (or mapped to a new drive letter) on each machine; but given that I already have to add it to the MAC filter and assign it a DHCP reservation in my router, this isn't a heavy burden for something that doesn't happen often.  Would everything then
    work the same as if NetBIOS were providing the name resolution?
    One missing piece that I see so far -- it's not obvious how this same trick would apply to printer sharing (although I'm not using that feature right now anyhow).  Could this be handled seamlessly through the "Hosts" file as well?
    Thanks and Best Regards to All -- JCW2

  • SSL Connection over TCP using SSLSocketFactory to remote C++ Server

    Hi.
    Despite my traversing through the archives, I could not find a
    solution to my problem. So hopefully, that would mean i have a simple
    isolated, and FIXABLE problem :-)
    My web application running under Weblogic 7.01 as a servlet needs to
    connect to a remote server using SSL over tcp.
    The server is a C++ app using openssl libraries to serve up a
    self-signed certificate.
    The code fragments to do so look like this:
         SSLSocketFactory sf =
    (SSLSocketFactory)SSLSocketFactory.getDefault();
         connection = sf.createSocket(host, port);
         output.write(...)
         output.flush();
    Upon the flush, I get the following error:
    java.io.IOException: Write Channel Closed, possible SSL handshaking or
    trust failure
         at com.certicom.tls.record.WriteHandler.write(Unknown Source)
         at com.certicom.tls.interfaceimpl.TLSConnectionImpl.fireAlertSent(Unknown
    Source)
         at com.certicom.tls.record.handshake.HandshakeHandler.fireAlert(Unknown
    Source)
         at com.certicom.tls.record.handshake.HandshakeHandler.fireAlert(Unknown
    Source)
         at com.certicom.tls.record.handshake.HandshakeHandler.handleHandshakeMessage(Unknown
    Source)
         at com.certicom.tls.record.handshake.HandshakeHandler.handleHandshakeMessages(Unknown
    Source)
         at com.certicom.tls.record.ReadHandler.interpretContent(Unknown
    Source)
         at com.certicom.tls.record.ReadHandler.readRecord(Unknown Source)
         at com.certicom.tls.record.ReadHandler.readUntilHandshakeComplete(Unknown
    Source)
         at com.certicom.tls.interfaceimpl.TLSConnectionImpl.completeHandshake(Unknown
    Source)
         at com.certicom.tls.record.WriteHandler.write(Unknown Source)
         at java.io.BufferedOutputStream.flushBuffer(BufferedOutputStream.java:67)
         at java.io.BufferedOutputStream.flush(BufferedOutputStream.java:125)
         at java.io.DataOutputStream.flush(DataOutputStream.java:99)
    My guess is that its complaining about not trusting the certificate
    being sent back by the server.
    I typically use JSSE for this application when running within other
    appservers, and
    this application has no problems. But because i've run into issues
    with using JSSE in WL7.01 (another topic
    for another day), I'm using the default WL ssl library.
    I have set weblogic.security.SSL.trustedCAKeyStore=d:\bea\weblogic700\server\lib\cacerts,
    and imported my
    certificate into that cacerts file. This doesn't seem to fix my
    problem. Is there another truststore
    that my webapp may rely on? Where within the admin console can I
    figure this out?
    Or am I on the wrong track here?
    Also, if its any clue, elsewhere within the same application, I make
    https requests to another
    web app running under the same weblogic server - and that is fine - I
    use the URLConnection class in those cases.
    Any help is much appreciated!
    Thanks
    Ed

    Hi,
    Can you show us the stacktrace?
    /Kaj

  • Share files over the internet between PC and MAC server

    The set up:
    A MAC OS X 10.3.9 server running on a local network in the office sharing files with 15 windows XP and MAC.
    The problem:
    Can't connect a windows XP away (from home over the internet) to see files being share by the MAC server. I can do this with an other MAC from my home when I go to "Connect to server" and then I type the IP adress of my MAC server at the office, login with the user ID and then can see files on the server. When I am at the office, there is no problem with the windows XP machine to connect to the MAC server. When I am at home, I can connect with my windows XP machine to the MAC server at the office for FileMaker server (reside on MAC server at office), but I can not see the files shared on the MAC server over the internet when I connect via windows explorer serveradress
    (no firewall on the MAC server).
    Thank you

    I would like to know this, too. I'm trying to set up something with my bother on a PC. How does he make a connection on windows? I don't know what to tell him to do.
    Gabriel, do you have Wndows Sharing activated under Services in your Sharing Prefs?
    Tracy

  • Failure of LabVIEW DSC 8.0.1 to yield values of Modbus RTU holding registers

    So, I know what I'm doing--or used to. Have done this before in LV 6 and 7. Previously used Lookout OPC drivers and the "Tag Engine".
    Recently with 8.0.1, I first set up the Industrial Automation OPC servers (AKA Lookout) to communicate with the holding registers (40,001-49,999) of my modbus rtu Watlow 96 and MLS316 temperature controllers. Subsequently, with the Server Explorer all of my 133 parameters on our 2 rs485 serial ports are communicating bidirectionally.
    So now Duh, why can I not bind a shared variable to register, say 40,334, and eliminate the OPC? The data is always reported as bad. Neither can I link shared variables to these addresses through the OPC I/O server.
    Am I missing something? Are there any examples of code available where individual modbus holding registers are communicated with bidirectionally?

    Well, this may seem rather silly but I viewed the video demo that NI has on binding modbus registers to shared variables before I even made my attempt.
    Now, differing from the demo video, I am using modbus RTU on a serial port.  Also differing from the video, when I create my shared variables, they are not placed in the same lvlib as the modbus server just created--LabVIEW prompts for a new library to be created.
    Could the NI product service staff please test with a serial modbus RTU device (a real living creature and not just a simulation please) the bidirectional communications and prove functionality with the Shared Variable Monitor of your product?  I suggest that you attempt communicating with holding registers 40,001 through 49,837.
    By the way, my com is set up correctly for I can view and or change all of the desired modbus RTU registers using the OPC Lookout Protocol Drivers through the Server Explorer.
    Please do not send me any more links to videos that test with simulations.  A real solution is required.
    Lloyd Ploense

  • How to send joystick data over TCP connection

    Hi all,
    I am a long time Labview discussion forum user for learning, but this is my first time posting a question, I hope somebody can help me!
    In the attached VI I am trying to send data from a joystick over a TCP connection. I can send data fine using the TCP examples (in fact the majority of my VI is just a copy of the example). However I am to the point where I do not know how to send all the data necessary (3 axis data, 12 buttons, and the POV data) over TCP. Strings, clusters, and arrays were never my strong suite and converting between them is a nightmare for me.
    Basically I am trying to send each axis data (X,Y, and Z), button data (12 buttons), and POV data (the POV data will be calculated to adjust the position of a camera, so the immediate data is not important, I will add functions to add the change in the button movements to write a standing position for two servos [pan and tilt], for which that I will need to send over the TCP connection) over the TCP connection to control various cameras and motors. I don't know if it is posible to send that much data over a TCP connection in one write VI through a string, and also how to separate the string on the other side in order to control the client VI.
    Again, the actual TCP communication I get, and can operate fine, just formatting all the data into a string (or whatever is required) so that I can unpack on the other side is the issue here.
    Another question I have (not impotant to get the program running just might make it easier on me) is can a TCP server (which sends the data to the client) also recieve data back from the client on the same port ( for example sensor data and digital positions [on,off])? Or do I need to set up two TCP communication loops with the first client acting as the server on a different port than the first, which then sends the data to the original server, which also has a client TCP configuration in another loop? I hope this makes sense...
    One final question.....I already have a solution to this but using labview for the entirety of this project would be nice. I use skype to stream 1080p video from a webcam to my computer so I can view live feed. Can labview do this? This would be awesome if so, I am just not sure if the communication protocols in use could support real time (or as close as possible to streaming) for 1080p video.
    Thanks all in advance for your help,
    Physicsnole
    Attachments:
    cameraserver.vi ‏24 KB
    cameraclient.vi ‏18 KB

    Physicsnole wrote:
    In the attached VI I am trying to send data from a joystick over a TCP connection. I can send data fine using the TCP examples (in fact the majority of my VI is just a copy of the example). However I am to the point where I do not know how to send all the data necessary (3 axis data, 12 buttons, and the POV data) over TCP. Strings, clusters, and arrays were never my strong suite and converting between them is a nightmare for me.
    Well, you cast the axis info cluster to a string, but then you cast it back to an array of DBL. Thatr's not compatible. You should probably cast it back to an "axis info" cluster of exactly the same type. Go the the other VI and right-click the cluster wire to create a constant. Now move that diagram cluster constant to the other VI and use it as type.
    Your default ports don't seem to match. You seem to have client and server roles confused. In the sever you create a listener, but then you start sending packets, even though no connection is established. The connection needs to be initiated by the client.
    Your client stops the loop the first time a timeout is encountered. Shouldn't that be more permanent? Also, please retain code clarity and avoid unecessary complexities. For example, replace the "not or" with a plain "or" and change the loop to "stop if true"
    Physicsnole wrote:
    Basically I am trying to send each axis data (X,Y, and Z), button data (12 buttons), and POV data (the POV data will be calculated to adjust the position of a camera, so the immediate data is not important, I will add functions to add the change in the button movements to write a standing position for two servos [pan and tilt], for which that I will need to send over the TCP connection) over the TCP connection to control various cameras and motors. I don't know if it is posible to send that much data over a TCP connection in one write VI through a string, and also how to separate the string on the other side in order to control the client VI.
    You can send as much as you want. The casting to/from string is the same as described above.
    Physicsnole wrote:
    Another question I have (not impotant to get the program running just might make it easier on me) is can a TCP server (which sends the data to the client) also recieve data back from the client on the same port ( for example sensor data and digital positions [on,off])? Or do I need to set up two TCP communication loops with the first client acting as the server on a different port than the first, which then sends the data to the original server, which also has a client TCP configuration in another loop? I hope this makes sense..
    The primary function of a "server" is to wait for a connection and then communicate with the client once a conenction is established. An established TCP/IP connection is fully two-way and both sides can send and receive.
    LabVIEW Champion . Do more with less code and in less time .

  • Connecting to labview over TCP/IP port

    I have got an undocumented project to maintain, it has a Java UI code, which connects with some component of LABVIEW over
    TCP/IP Port = 1234
    and over this port it sends commands for clear, get, set
    I need links for understanding the component from LABVIEW which is been accessed over port 1234
    I have installed LABVIEW Run time 2013, and do not know which PROCESS the Java code is trying to connect over TCP/IP, and I do not see any of the RT processes binding to port 1234.
    Any pointers/links would certainly help me!
    Thanks,
    -Vikrant

    Can you define what you mean by "component of LabVIEW"?
    The LabVIEW runtime engine is just a required component to run any custom build LabVIEW executable or dll. So, what is it?
    You also mention RT processes. Does this run on an RT system? What is running where? If you are connecting to a remove LabVIEW RT system that runs a service on port 1234, you don't need LabVIEW or a run time engine at all on the local side.
    At this time we don't have any useful information from you. Please be significantly more detailed! Thanks.
    LabVIEW Champion . Do more with less code and in less time .

  • Can I render a Flash frame as a bitmap and send it over TCP/IP?

    I want to draw some combination of bitmaps, flash shapes, vectors, text etc and draw them programmatically into my movie using ActionScript, and then get every "rendered" pixel of my movie (at 100% view) into an array that I send to another program over TCP/IP. Can anyone help me here?
    The first part of the question is if its possible to render a frame that is a collection of Flash elements as a bitmap? I know that I can iterate through a bitmap and get every pixel using the getPixel method but I'm trying to access the final rendered frame displayed on my screen, including, as I said Flash shapes and text.
    The second question is what would be the best way to send this "video frame" over TCP/IP? Would I use an XML socket connection? That is the only way I know how to send data out of Flash over TCP/IP but I don't know if it is the only way - the help page says the data needs to be formatted as XML, which seems unwieldly for this application.
    I'm doing this now by using Max/MSP/Jitter to do a screen capture the size and location of my Flash movie and then send out the resulting matrix using a "jit.net.send" object (which lets you send frames of video over TCP/IP), but this is too clumsy for the installation I am building.
    Any help would be greatly appreciated!
    -bob

    Thanks! That was exactly what I was looking for in the first half of the question. And I guess the draw() method works in AS2 as well as AS3. I will test it but from what I understand, I can use a Bitmap as kind of my bottom-level container, then create (in ActionScript) a movie clip that can contain other movie clips or drawing API commands or whatever, animate these various elements then finally draw() them into the bitmap. I see that in AS3 I can even use getPixels or getVector to capture the full "video frame" in one line of code.
    Thanks rothrock, for the helpful links. My application is kind of unusual, in that I'm sending "video" data to a proprietary LED controller box for display on a low resolution LED display. I connect to the box over TCP/IP and send it "frames of video" 20 times a second. I got this to work with this other content and software (Max/MSP/Jitter) and I want to see how I could capture all the rendered pixel data in successive frames of Flash animation, format it properly, then send it over TCP/IP to this controller box. Don't really now enough about the various flavors of TCP/IP connections to figure out how to do this in Flash, and I know there are security limitations built in to Flash that have to be worked around. But my movies are small (say 96 pixels by 72 pixels) and I need to send uncompressed data directly to my controller box, so these interesting links showing how to use server-side scripts to create jpgs or pngs are probably not going to help me. I will hopefully find a higher-level programmer than myself to work this out, and I think some of the techniques here will hopefull prove to be helpful.
    Thanks again for your help!

  • Access to Cisco Switch Modbus Register Map? via Modbus TCP or Modbus RTU

    Hello Folks, I have been trying to find out how to access the Modbus Register Map(s) of Cisco switches, of particular interest is that of an IE 3000 as it is din rail mountable (but for models 2960s, 3560s are also of interest).  A google search for: Cisco Switch Modbus TCP results in (if I may) how to configure a Cisco 2520 to do what I am trying to do.  I would be very grateful for any hints anybody might have.  Thanks

    Though I am not familiar with the specific drives in question, I have used Modbus/TCP in LabVIEW a few times recently.
    As the previous posters pointed out, there are a couple of VI libraries available.  LabVIEW 2014 added Modbus VI's with the DSC and LabVIEW Real-Time.  The others you would have to get and add in yourself.
    Another option is to use LabVIEW I/O Servers; as long as you have DSC or Real-Time, you can create Modbus I/O Servers as library items and deploy to a target.  You don't get as much direct control in this way (and may run into difficulties if you need them to be field-configurable and do not have DSC) and use bound network shared variables, but they are very fast and easy to setup and I have yet to have any issues with using them in my applications.
    A tutorial on setting up a Modbus I/O Server: http://www.ni.com/tutorial/13911/en/
    A tidbit on deciding between Modbus VI's and a Modbus I/O Server: http://zone.ni.com/reference/en-XX/help/370622M-01/lvmve/choose_modbus_ioserver_vi/
    As for using an Ethernet switch to connect multiple devices, I have used this approach many times to simultaneously connect and control numerous PC's, real-time controllers, and drives without issue.  I would not expect there to be any problems unless you have extenuating circumstances.  In fact, if you only have one network interface on your device at the moment, I would recommend against adding a second, as this would mean that you / your controller would have to be extra aware of which interface everything is assigned to go through.

  • Netbios over tcp/ip and over wlc-4402

    dear gentlemen,
    i have one wlc-4402 controller and some clients. how to configure the netbios over tcp/ip in the controller, so that the clients can assiciate the network.
    thank?s in advance
    michael

    Nothing, you dont have to configure anything regarding Netbios. Regards

  • Noughts and crosses over TCP

    Hi,
    I am doing project for uni of noughts and crosses game over TCP. This is my second project in Labview, I am autodidact. I know that in my program are a lot of this to make them better or to replace with more optimal sulutions (even notifiers), but I am on finish of the game, the next one will be better!
    So the problem is in file client.vi, probably it is not complicated. Function Search and Replace String does not replace me anything. If You have some time (I suppose that not much than 10 min) check it please. Code is commented.
    The file client.vi shoud only indicate the situation on the board.
    Great thanks! I wish I could do something to repay You.
    Best regards
    P.S. Three remaining files (subvi's) are in post below
    Attachments:
    client.vi ‏32 KB
    main.vi ‏106 KB

    Missing files
    (Porównywator means comparator )
    Attachments:
    arraytostring.vi ‏31 KB
    stringtoarray.vi ‏37 KB
    Porównywator.vi ‏24 KB

  • Curious NetBios over TCP/IP issues and Windows SMB shares

    Hi all.
    I've got two Win 2003 R2 SP2 member servers on our AD domain. Each has shared network folders on them which are accessed by both Windows and Mac users.
    Both servers - lets call them ALPHA and BETA - are identically setup: same hardware, configuration etc. but exist on different subnets.
    Alpha has never had a problem with Mac clients connecting to any of its shares.
    Beta has, up until recently, only ever had Windows clients, but now has a couple of Snow Leopard Mac clients. When a Mac client attempts to connect via SMB or CIFS to any share on Beta - they get the prompt to authenticate and then "Connection Failed. There was an error connecting to the server Beta. Check the server name or IP address and then try again". Of course the same thing happens when I try to connect by IP.
    Curiously, the only way I can get Mac clients to connect to shares on Beta is to go into the network adapter settings on Beta, advanced, WINS and then disable NetBios over TCP/IP. Unfortunatley this breaks some unrelated stuff and I eventually have to go back in and set NetBios back to Default (enabled) and the whole thing screws up again in a few hours time again for my beloved Mac users.
    The other server Alpha never gives me any problem with Mac clients, and as I say, they are setup identically. I have been testing this with 10.6.3 clients, not sure if my 10.5 or 10.4 clients are affected.
    Can anyone offer some suggestions as to why my shares aren't accessible to my Mac clients on both servers?

    Generally it is the browser service that populates network neighborhood. This technology is no longer used with newer OS like server 2008, windows 7/8.
    Description of the Microsoft Computer Browser Service
    Regards, Dave Patrick ....
    Microsoft Certified Professional
    Microsoft MVP [Windows]
    Disclaimer: This posting is provided "AS IS" with no warranties or guarantees , and confers no rights.

  • Using Modbus RTU in Labview 8.5 for Terminator Field I/O

    We have on site Terminator: T1H-EBC100 Field I/O's and are trying to use Labview to control it.  We currently use Labview with our NI Fieldpoint modules and RIO's.  We have been trying to find a way to use LabView to control the Terminator Field I/O and it uses ModBus RTU for its protocol.  Does Labview 8.5 support this and any suggestions on getting the process started in using it.

    Our modbus solutions don't work with max. 
    Instead you send a message over TCP/IP or serial with a message for a particular node address. Only the node at that address will respond or act on the message. 
    Modbus is much different that FP in this respect. The modbus specification doesn't require pre-discovery of every node. 
    Additionally, because of this you should be able to send a message to the terminator even though it isn't discovered. You just will be need to configure the address correctly. 
    Jesse Dennis
    Design Engineer
    Erdos Miller

  • 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 

Maybe you are looking for

  • Can not get my Sungale Tablet to connect to wifi.

    Can not get my Sungale Tablet to connect to wifi.

  • "Indicator: GR-Based Invoice Verification" direct input Upld PO LSMW

    Hi, Im using lsmw direct input method. I am uploading the PO. But the GR Based invoice verification field was not checked ON. Im trying this using USER_EXIT in enhancement MM06E005, with EXIT_SAPMM06E_017. Any body can tell me how i can check ON the

  • Problem creating process order with ref of sale order

    Dear all, Kindly give solution for this scenerio.............................. I am creating Process Order with ref of sale order manually in cor1. In the COR1 screen copy from field i gave my ref sale order, so that particualr order and batch is ass

  • Printing checks with CheckMagic

    I use Quickbooks and a program called CheckMagic to print my own checks on blank check stock.  I have been doing it for years with any number of operating systems and HP laserject printers.   Now I have a Vista operating system and a new HP P1006 pri

  • Error in implementing Slowly Chnaging Dimention 2

    The error I am getting while implementing SCD2 everytime at the Step : Insert flow into I$ table (MINUS) is:- 1790 : 42000 : java.sql.SQLException: ORA-01790: expression must have same datatype as corresponding expression java.sql.SQLException: ORA-0