Ken Roach

MrPLC Member
  • Content count

  • Joined

  • Last visited

Community Reputation

176 Excellent

About Ken Roach

  • Rank
    Propeller Head

Recent Profile Visitors

16399 profile views
  1. Micrologix 1400 Modbus RTU in Channel 0

    The most common Modbus RTU command is Read Holding Registers (Command 0x03), not Read Input Registers (Command 0x04), so check to be certain that your meter supports Input Registers.    If you are trying to read a Holding Register instead, you need to select Command 0x03, not Command 0x04. Also, the most common serial framing settings are "19200, 8/N/1", meaning 19200 bits per second, 8 data bits, no Parity bit, and one Stop bit.   8/N/1 uses a 10-bit frame (1 Start, 8 Data, 0 Parity, 1 Stop), while 8/N/2 uses an 11-bit frame that is less common. And of course check your wiring.    It's uncommon for any two vendors to label their RS-485 conductors the same, so you often have to try flipping them.      RS-232 is more commonly labeled correctly, but of course you have to make sure that the devices are a DTE/DCE pair, or if they're both DTE, there's a "null modem" connection crossing Tx and Rx. If you can post a screenshot of the settings and describe what works correctly in ModScan, that will help.  
  2. Upgrading PanelView Standard to PanelView Plus 7

    What exact make and model of Prosoft gateway are you using, and how is it configured ?     I presume it's the "AN-X2-AB-DHRIO" model. What firmware revision do you have in the PanelView Plus terminals ? Years ago, this couldn't work properly because RSLinx Enterprise couldn't "drill down" through a ControlLogix backplane the way that RSLinx Classic could. But the Knowledgebase says it has worked with PV+ 6 and PV+7 and the AN-X2-AB-DHRIO since version 8.10 firmware. To troubleshoot the network bridge and driver configuration, make a test application with just one numeric display and point it at the DH+ station, just to be sure the basic networking stuff works.  
  3. How long could be integer or DINT

    Welcome to the MrPLC forum community ! The Logix operating system supports array tags of up to 2 megabytes, which would be an INT[1048576] array.   The software will warn you if you try to create a tag bigger than 1.5 MB, but it will be valid up to 2 MB. Remember that arrays start with element zero.   If you have an INT[32] type array and the element index number is [32] or bigger the controller will throw a minor recoverable fault. I'm in the habit of testing the index value before I execute an instruction with a variable array index, like LEQ(IndexValue,31) in the ladder rung.   Some programmers are more thorough and use the SIZE instruction to determine the array size before putting in such a limit, so their limiting logic will still work even if the array size is changed later.
  4. Compact Logix L33ER

    It's the "5380" series CompactLogix with part numbers that start with 5069 have the option of a single IP address and physical ring connection, or independent IP addresses with individual physical connections. The "5370" series CompactLogix with part numbers that start with 1769 have the built-in 2-port switch and a single IP address and single NIC. They don't look entirely dissimilar so be sure you're looking at the part numbers.
  5. Analog Card 1769-OF2/B Revision Upgrade

    Please take care with the forum threads you are posting to;  I'm posting to the first thread to keep it as clear as possible. In general, 1769 series modules are not field upgradeable, with ControlFlash or any other tool. So because your program has been modified to use a different firmware revision, you need to modify the program to use the correct module, or disable the firmware revision checking. In Studio 5000, this can be done in offline in the Module Definition section of the module configuration applet in the I/O tree.    You can change the Major Revision and Minor Revision to match the actual module, or set the Electronic Keying to "disabled" instead of "Exact Match" or "Compatible Module".
  6. I don't know of any way to use SSV to change those settings;   the Serial Port object isn't available for SSV. I think that this is possible if you get a full description of all the objects in the Serial Port object as implemented in the 5069-SERIAL module.   My old definitions I pried out of the 1756-L1 won't help, they're too different. What you're looking for is the structure and values that would let you programmatically send a message to set everything in the Channel 0 menu and maybe also the Receive and Transmit tabs. If I were trying to reverse-engineer it I would be running Wireshark and clicking the "Apply" button while online with the controller on the Channel 0 setup menu.   RA Commercial Engineering might be able to help you, but I would not expect this to be in the domain of Technical Support.  
  7. That is... a great question. Many other A-B I/O modules like the 1756 series have a Configuration Assembly as well as the Input and Output assemblies.   Those configuration assemblies are written to the module every time it re-establishes a connection, and you can programmatically use a MSG instruction to Reconfigure a module and send them on demand. But not this module.   It appears to get its configuration objects from the Add On Profile, which makes a lot of sense because there are so many operating modes with very different configuration data. I don't know if the module includes a standard Serial Port object similar to the one on an old 1756-L1/L55/L6x controller. So... gosh...this is going to take some more research.
  8. Communication

    Will the CompactLogix still be controlling the PowerFlex drive, or will you be changing all of the control to the CompactLogix ? Is it using EtherNet/IP, or analog + digital signals, or a Drive Serial Interface (DSI) connection ? You're probably aware that the MicroLogix cannot perform the same kind of cyclic I/O control over EtherNet/IP that a CompactLogix can.
  9. MicroLogix 1100 Frequency Determination

    Unfortunately that post was when I still worked at Rockwell (I left in 2011) so I no longer have access to those computers or files.   MrPLC has also been through a few upgrades and crashes and restorations so if the files aren't here (and I don't see them in the Downloads section either) then I don't have them anymore. And, I don't have a MicroLogix to test with either. If you can describe your application and post your program and describe your specific questions, folks (including me) might be able to offer some help.
  10. Hi Ken, How are you?

    I need support from you if that is posible.

    I´m trying to do a backup of the PanelView 1200 application that I have in the factory, after that the idea it's migrate this application.

    When I try to install the software PanelBuilder 1200 in a virtual machine with Windows 95, this give an error because he ask me (the software) for a path but I don´t know this path.



    Inst_2 (1).jpg

  11. 1756-L61 ControlLogix 5561 losing program

    A quibble:  the 1756-L6x Series B modified the main board layout and some components, but not the way RAM was backed up.   The CompactFlash card moved to the front instead of the bottom, and the serial port moved slightly up.    The power consumption changed enough that the battery is different (higher capacity) and was given a blue shrink-wrap jacket and a different connector than Series A.   But Series B is so similar to Series A that there's no user programmable or firmware way to tell them apart. The 1756-L7x controllers *did* change to an onboard no-removable flash device that stores the user program at power-down, so a dead battery will only affect the real-time clock. Paul's situation is normal and ordinary;  the battery was dead, so when power went out the RAM was cleared.    He can store the program to the CF card or replace the battery. Remember that the CF card on a 1756-L6x does not save the user program or tag values at power-down: it is functionally like an EEPROM and will re-load whatever firmware, program, and tags were stored in it when the memory image was loaded.
  12. DF1 Polling and PLC Fault

    Adding SVC instructions is seldom actually necessary unless you have a very large program and a long scan time.   Some folks put them in as a matter of practice, but I consider it a superstition (knock on wood !). The un-latch of the math overflow is a common programming practice, but one I do not endorse because that can leave undiagnosed malfunctions because you're masking the undesired results of an overflow in the controller OS.   I only do it when I also add a visible fault to an HMI to let me know there are software problems that need to be diagnosed. Neither of those will cause a "hard fault" with a solid red LED. It's easy to point the finger at an untested custom DF1 protocol driver, of course, but when the hardware is a single unit of unknown origin and history, it could be a hardware failure too. 1002 0100 0F00 0084 A2B4 1E89 0000 1003 6127 1002   DLE STX  Start of DF1 Frame 0100   DST SRC  Destination Station 1, Source Station 0 0F00  CMD STS  Command 0x0F, Status 0x00 0084  TNS   Transaction Sequence word = 0x0084  A2    FNC  Function = Protected Typed Logical Read with Three Address Fields. B4    Byte Size = 180 bytes 1E    Data File Number (Address Field 1) = 30 89     File Type 0x89 = Integer 00     Data File Element (Address Field 2) =Zero 00     Data File Subelement (Address Field 3) = Zero 1003   DLE ETX   End of DF1 Frame 6127   CRC Checksum   That's a pretty ordinary Data File Read, especially if the goal of the driver is to read N30:0 through N30:89.    The fact that the TNS was only 0x0084 = 132 (decimal) is unusual.  How often is the driver polling the MicroLogix ?   The Transaction Sequence Number should increment every time a new request is sent by the driver software;   the goal is so that the PLC can answer the requests out of order if necessary, or in true full-duplex mode, and the driver can still match requests to replies.  
  13. DF1 Polling and PLC Fault

    A *solid* red Fault LED is an unrecoverable fault.   The controller's OS isn't running at that point, so any communications attempts are futile. If cycling power brings up a flashed red LED, then maybe the fault code in S:6 is relevant.   But it probably just indicates that the controller has a hangover and doesn't remember anything from yesterday. Most CPUs don't just redlight for no reason, but it's not impossible that the LabView driver inadvertently wrote to a physical memory location.   That's really hard to do in a MicroLogix (relatively easier in a ControlLogix, at least it was 10 years ago) but not impossible. So it's more likely that a voltage spike or an internal failure hard-faulted the MicroLogix.   Un-suppressed inductive loads or lightning strikes are the classic culprits.  
  14. Dint to Real

    The MOV instruction in Allen-Bradley controllers automatically converts between data types.   MOV Source: MBTCP.DATA.ReadData[1] Dest: My_Resistance_Real The DIV instruction also automatically converts between DINT and REAL.   I think in this case the divisor can be either 10 (DINT) or 10.0 (REAL). Neither of these changes how single-precision floating-point values are stored and represented, or rounds to a specific number of decimal places.   For that, yes, a String method is sometimes required.