Ken Roach

MrPLC Member
  • Content count

    2686
  • Joined

  • Last visited

Everything posted by Ken Roach

  1. There is no difference between the 16K and 32K controllers in their ability to communicate via the serial port. So your problem could be in the configuration of the serial port, or with physical damage to the serial port, or with differences in the data table addresses that you are attempting to read and write.   But it's not a firmware problem.
  2. FT View Basic Error

    I don't like to directly address Inputs or Outputs;   FactoryTalk View has had some SNAFUs with the drivers, and in general I just don't like to risk the possibility that the HMI will write to something that the PLC is also trying to write to. Is your multi-state indicator configured for 2-state (which could address a Bit) or Integer state (which would have to address a whole word) ?
  3. Video Graphics Adapter (VGA) connectors are about the same size and shape but have different pins (15).    The MicroLogix 1400 has an ordinary 9-pin "DB9" RS-232 connector, which you can see is a Male (pin) connector.    The pinout is for a "Data Terminal Equipment" type port, on which Pin 2 is Receive (Rx) and Pin 3 is Transmite (Tx). This is the same pinout and style of port that you would find on a typical personal computer. The Delta HMI you posted a picture of appears to be a DOP-B07S411.    It has at least two communication ports on the back, which can be configured for RS-232 as well as for other interfaces like RS-485. The DOP Connection Guide manual I was able to find for the Delta HMI suggests that the DB9 Male plug is also a DTE style plug, where Pin 2 is Rx and Pin 3 is Tx. That means that your serial cable must be a "null modem" type that swaps Pin 2 and Pin 3.    Or, you can add a "null modem adapter" that internally swaps pins 2 and 3. There is no way to tell from a picture what type of wiring is inside an RS-232 cable.   You must either have its specification sheet or measure continuity with a meter from end-to-end.    
  4. In general, modern Ethernet systems should be allowed to use "Auto-Negotiate" to set speed and duplex.    If you have configured only the VFD to use 10 Mb/s, then the managed switch may still be set to "Auto-Negotiate". "Auto-Negotiate" is not "auto-detect".    There is a low level protocol for testing the link at 10 or 100 mb/s and at full or half duplex.    In general that's done each time the link is broken (unplugged) and re-connected. But some switches when they have an Auto-Negotiate failure (because the connected device is hard-set to 10 MB/s) will periodically attempt to re-negotiate so they can establish 100 Mb/Full Duplex. This causes drops of connections on that port, when the switch decides to do a new link negotiation cycle. So unless you have a very good reason to set the VFD to 10 Mb/s on the Ethernet port, I strongly suggest setting both the switch and the VFD to "Auto-Negotiate". A sophisticated switch like the Stratix should have some logs for you to examine, but I'm not enough of a Cisco IOS expert to tell you how.
  5. What sort of devices are the ASCII devices ?    Do they have any sort of handshaking (Xon/Xoff, or RTS/CTS) that could prevent them from transmitting at the same time ? In some applications a "code activated switch" would be appropriate.    B&B Electronics (now owned by Advantech) makes a neat device they call a "buffered smart switch" that allows you to add a prefix or even do some polling, so you could tell each port's data apart. http://www.bb-elec.com/Learning-Center/All-White-Papers/Serial/Automatic-Serial-Data-Collection.aspx  
  6. LED status on MLC1200

    Do you mean an Allen-Bradley MicroLogix 1200 controller ? In general, a flashing red Fault LED indicates a recoverable fault, often created by the user program with a math overflow or array pointer overflow, or by the diagnostic subsystem with an expansion I/O fault. Diagnostic and Troubleshooting information can be found in the MicroLogix 1200 User Manual: https://literature.rockwellautomation.com/idc/groups/literature/documents/um/1762-um001_-en-p.pdf
  7. The Net-ENI can handle up to six incoming TCP connections.    It's possible that if you are connecting to it with too many computers, you have overloaded it. I don't think the Web interface allows you to see the number of TCP connections;  I don't have a Net-ENI Series D to test on.    I do know that you can connect via Telnet to the device and send some commands to get some status data. Here's a Rockwell Knowlegebase article about how to do that (TechConnect required):  KB 27418. One common issue is that an RSLinx Classic station with an RSWho browse open will create and maintain a connection to a Net-ENI, so it's possible that in a large enterprise network that you have computers that are just running RSLinx in a background window that are taking up resources on the Net-ENI.
  8. If you're using a DF1/Ethernet interface like the 1761-NET-ENI, it's possible that there is a configuration problem with it (like the Subnet Mask or Default Gateway) or that you have exceeded its capacity to accept incoming connections. In general, both FactoryTalk Linx/RSLinx Enterprise (for FactoryTalk View) and the RSLinx Classic drivers (for RSView32) can simultaneously connect to any controller;  the memory size of the controller is not a factor. But the connection capacity or configuration of the network interface device might be an issue.
  9. ProSoft MVI46-ADMNET backup

    The MVI46-ADMNET is one of the most broadly programmable modules that ProSoft makes;  it's basically a DOS system-on-a-chip with a backplane access toolkit and an Ethernet network stack. https://www.prosoft-technology.com/Products/Rockwell-Automation-In-chassis/Platform/SLC/C-Programmable-Application-Development-Module-with-Ethernet-for-SLC The ADMNet Dev Guide includes instructions on how to interrupt the user program and get access to the filesystem via the console serial port.
  10. Comtrol looks like they've got a straightforward Web browser based configuration.    You tell it the name of tags you want it to transmit serial data into, and it does it based on the delimiter (like a CR/LF) or a timeout. DeviceMaster isn't a product I have direct personal experience with, unfortunately.
  11. MSG Error 16#0000_0311 and 16#0000_0204

    The "5370" family CompactLogix controllers support "raw socket" services, but the older CompactLogix family, including the 1769-L35E, do not. The MSG instruction on the 1769-L18ER controller points to the controller's Ethernet interface object (the 1,0 path) because that object is what handles socket creation and transmission.   If you had a ControlLogix with a 1756-EN2T or 1756-EWEB, the path would point to the 1756-EN2T module. You cannot make this connection with the 1769-L35E.    There may be another way to do it with a protocol gateway device (I would use a Red Lion DataStation) but not natively with the Ethernet port.
  12. message between L43-compactlogix and L71-Guardlogix

    That CIP Path looks OK for a message originating in a 1756-L71 ControlLogix or GuardLogix with a 1756-EN2T or other Ethernet module in Slot 1. "1,1" is "backplane, Slot 1" "2, 192.168.105.245"    is "Network port, IP address" "1,0" is the default hop to the backplane and then the CompactLogix L43 CPU If the originating controller's Ethernet module is not in Slot 1, the CIP path should be adjusted.
  13. DeviceNet devices are isolated from the PLCs, drives, and I/O block main power.     For this reason, you must provide a separate DeviceNet power supply to power the network. This can seem counter-intuitive when you are accustomed to networks like Profibus or AS-i, or when you're connecting only one Input block.   But many DeviceNet products like photoeyes or proximity sensors don't have  separate power supply, so they must receive their network power and signal from the bus cable.     And PLCs aren't always part of a DeviceNet, so we can't rely on them to be the power supplies or load up their internal power supplies (a big DeviceNet can consume several amperes).
  14. Concat Ascii to readable text

    The default STRING datatype in ControlLogix consists of a 32-bit DINT that represents the Length, and a SINT[82] array that represents the data, one character at a time. In your case it sounds like you have BCData.Data[0] that holds the Length (but it's only 8 bits), then BCData.Data[1],[2],[3],[4] that holds the letters "6 8 2 8".    The last character is shown as "$r" which is shorthand for 0x0D = 13 = Carriage Return. The easiest way to handle this would be to use a MOV instruction to move the BCData.Data[0] value to the StringTag.LEN tag.     Use the MOV because it automatically converts from SINT to DINT and it's easy to understand. Then perform a COP instruction, with the Source = BCData.Data[1] and the destination StringTag.Data[0].   Make the Length of the COPY the number of target elements (SINTs), so use StringTag.LEN as the Length.    If you don't want the carriage return on the end, subtract 1.    
  15. 1785-L40E

    Check the DIP switch settings on the backplane carefully;   they are different for PLC-5 processors vs. 1771-ASB or -ACN15 communication adapters. A solid red PROC LED generally indicates an unrecoverable hardware fault, but it can also be an empty RAM memory if there is no battery installed.    If these were not reconditioned by Rockwell, it's likely you just got damaged and untested processors.
  16. RS500 with Yaskawa V1000 Ethernet

    In general, the SLC-500 and MicroLogix controllers do not support I/O connections over EtherNet/IP.     Their Ethernet interfaces were never designed or intended to do so. I am a vocal opponent of attempting to work around this with MSG instructions.    The A-B drives allow you to do so by emulating SLC-500 data tables and having a timeout parameter after which the drive will stop if no MSG instructions reach it. And the V1000 may have something similar that lets you send CIP explicit messages to its Assembly objects with a timeout, rather than establishing an actual Class 1 Cyclic I/O connection like a ControlLogix would. But you'll have to find that info in the Yaskawa interface documents.    What exact interface module are you using on the V1000, or does that drive have an integrated EtherNet/IP port ?
  17. slc500 speed / velocity calculation

    I built "poor man's encoders" when I first got into controls as well. I stopped doing it after 1998, when an operator who had tried to repair one of those arrangements while the sprocket was still running shook my hand with his three remaining fingers and told me it wasn't my fault. If you're building solid equipment and writing programs that are reliable, accurate, and easy to understand, that's good.       
  18. Panelview and SNMP Protocol

    The PanelView 550 ran a proprietary OS, so ordinary Windows tools won't do the job. Ask the IT department to double-check to be sure they're looking at the right device.    I've never heard of SNMP being implemented on the  PanelView Standard terminals, and they don't show up in any of the Rockwell technotes or whitepapers about SNMP features or SNMP vulnerabilities.    I've read lots of third-party vulnerability search whitepapers on Rockwell products and PanelView Standard has never appeared in them. If they're sure that the PanelView is responding to SNMP inquiries, I think all you can tell them is that they can't be changed or turned off.
  19. Arduino to Compactlogix communications

    What kind of device are you using ? About 12 years ago (long before I arrived) my employer built a machine with sixteen Mitutoyo AT715 linear scales.    These use a simple serial protocol on RS-485, but it lacks a multi-drop address so we contracted with an encoder company to build a custom interface to bridge RS485 to RS485.   For reasons lost to the mists of time, we didn't use Modbus or any other industrial protocol, but rather a variation on the AT715 protocol, connected to Prosoft generic serial modules and an SLC-5/05 controller. A month ago there was a small disaster at the factory and half of these interfaces were destroyed.    We have the original designs and can get some of these boards built in six weeks for a thousand dollars each.    Or, we could pay an engineer to build the same sort of thing out of Arduino parts. Or we could do what I did:  order a box of Red Lion DSPLE protocol converters and write a program to go in them.       More expensive for hardware, yes, but far less risk and cost for engineering and troubleshooting.     The month of time I'm saving, and the reduction in risk that the devices won't work, is keeping a factor that employs a couple hundred people open and operating.   Arduinos are wonderful, but folks who do industrial embedded systems for a living usually don't start with them for their first look through the toolbox.
  20. Produced/Consumed Tag Communications Active

    In general, a tag that will be Produced/Consumed must be a Controller-scope tag.    Tags that are in a Program-scope database or are instantiated inside an AOI cannot be Produced or Consumed. I would be skeptical of the need to directly reference anything involved in an AOI instance in a Produced data assembly.    Set up a mapping or data handling routine and use tags that are dedicated to inter-system communication.
  21. slc500 speed / velocity calculation

    You mentioned two instructions that are specific to the MicroLogix 1100/1400 operating system;   Read High-Speed Clock (RHC) reads the fast free-running clock in the controller, and Compute Time Difference (TDF) that calculates the number of "clicks" between two timestamps captured by the RHC. Is there a reason you don't want to use one of the hardware High-Speed Counters in the controller ? I haven't actually ever used those instructions, but I can think of how to use them. Are you literally counting gear teeth with a proximity sensor ?   What kind of tooth count and RPM will you be trying to measure ?  What's the response speed of the sensor itself ?
  22. Produced/Consumed Tag Communications Active

    The UDT will contain all of the data that you are Producing/Consuming.    The first element of the UDT has to be a member with the type CONNECTION_STATUS.     I would also keep it simple and make the tag name also "Connection_Status".  
  23. Produced/Consumed Tag Communications Active

    There is an option when you create a Consumed Tag to add a status header that gives you the status of the Producing controller.   The option was added in RSLogix 5000 v17, so it's definitely present for a CompactLogix 5370 series controller. You have to make your P/C tags into UDTs with the first element being of data type Connection_Status. https://rockwellautomation.custhelp.com/app/answers/detail/a_id/60813  
  24. Need help concern panel view 550 keypad

    You need a 1761-NET-AIC interface device to convert from the RS-485 on the RJ45 jack on the 2711-K5A2 PanelView terminal, to the RS-232 type of signals on the Channel 0 serial port of the SLC-5/04. I replied with some cable part numbers to your post on another PLC forum.
  25. SLC5/05 in unmatched chassis

    That matches my recollection;  you can't change the Chassis Size or ignore the mismatch on a modular SLC-500 program. You're already doing the usual unlatch of S:5/0 to ignore math overflow errors, but your Major Fault is being caused by the condition noted in s:5/4, the M0/M1 Referenced in a Disabled Slot. Try doing an unlatch for S:5/4 as well, to see if that allows the controller to ignore the minor fault, thus preventing the major fault.