b_carlton

MrPLC Member
  • Content count

    1132
  • Joined

  • Last visited

Community Reputation

40 Excellent

About b_carlton

  • Rank
    User
  • Birthday 08/31/50

Contact Methods

  • Website URL http://www.theplcguy.com
  • ICQ 0

Profile Information

  • Gender Male
  • Location Yakima, Washington
  • Country United States

Recent Profile Visitors

5038 profile views
  1. TT pulse bit

    Search for the base timer name without the '.TT'
  2. SLC500 - resetting the time

    Disconnect the Panelview fromthe PLC. Reset the time to that currently in  the PC as described in the first post. Return the PLC to RUN. Wait a while See if the time in the PLC registers change. This should isolate if the Panelview is causing a problem or  is simply displaying the result of a change caused by something else.
  3. HSC VALUE MOVE AND RESET

    The file (#3) you have set in HSC:0.PFN is typically called when an interrupt condition (hitting High Preset, Low Preset for example) occurs. Try moving this code into ladder 2 and see if it executes as you wish.
  4. RSLOGIX 500 String

    Type the following including spaces Line 1\0aLine 2 After pressing ENTER you should see Line 1^JLine2 So the backslash is the lead in to the hex value of the character.
  5. The copy of multiple items only works if the items are adjacent to each other in both the source and destination. Check the card documentation as RSLogix 5000 table doesn't always follow the actual sequence from memory. You probably will have to transfer them separately.
  6. Generally any change to the Configuration at runtime requires: Write the new value to the Configuration area Suspend counting (.CTRxEN =0) Send a 'Module Reconfig' message to the module Wait for the message to complete Re-enable counting (.CTRxEN = 1) (I don't have the code available to me so I can't send it to you)
  7. Rslogix 5000 school project help

    Just a guess but naming a routine "Main Routine" doesn't necessarily make it the primary routine called. Check the settings for the section above (I believe 'task' - I don't have Rslogix 5000 available).  
  8. # and [ ] with COPY commands?

    If it is like the SLC then it is the actual index value used by the system during the execution of the 'file type' instruction. With a length of 10 I would expect it to be left at '9' (assuming no other instructions which have the '#' character were executed between this instruction and the end of the scan.)
  9. DL06 and ECOM100 Networking Using TCP/IP

    I thought I saw a question if the ECOM100 supported Modbus TCP but I can't find it. It does, both as server and client. The ECOM manual has data and examples in chapter 5.
  10. Alternating Output for DL06

    Assuming Output - Y0 Rung 1 - Input NO to PD C0 Rung 2 - top parallel branch - NO C0    NC Y0 - bottom parallel branch  NC C0   NO Y0 - rest of rung  OUT Y0 Let me know if you need a diagram  
  11. Add  '.x' to the end of your tag - for example N24[160].0 - to read the bit. Obviously 'x' could be 0 -31 since you are reading a DINT.  
  12. Trying to understand FIFO

    I just checked into the Ladder Logic implementation of FFL on a Logix 5000 unit. It follows the same method . To keep MyArray[0] as the last loaded information (and target for the next load) you will have to roll your own. You SHOULD have seen for sequential FFL - use different data for each to differentiate -  (with no FFU) the data going to MyArray[0] then MyArray[1] then MyArray[2] etc. This would continue until the array is full (.DN bit in the control turns ON). At that point you have to perform at least one FFU before being able to do another FFL.
  13. Trying to understand FIFO

    You did not mention which CPU you are using. Looking at the Reference Manual for the Micrologix 1100 FFL instruction I can see that the newest entered data is at one address less than the current 'position' (it points to the next available storage address.) From your description of the operation as you view it it doesn't sound like you are using this CPU as (in the ML1100) the newest value is being stored in incrementally higher addresses. Please state your CPU.
  14. Write TEXT in SLC 500 and display in HMI

    N15 would be a file which can hold many integers, not text. A typical reference would be N15:0. A String (ST) file could hold text. The COPy command can copy multiple predefined strings (ST) into a single location for viewing by the HMI. But, depending on the HMI (please state which type) it might be easier to just move a unique number into the selected N15 location. The HMI could read this unique number and use it to select text pre-defined in the HMI program.  
  15. Ascii

    ST14.1 (as well as ST15.1) are incorrect addresses specifications. Let's see if we can clear this up. ST14 is a file which can hold up to 255 strings. ST14:0 would be the first string in this file. ST14:1 would be the second string in this file. Each string has two sections. First is an integer (16 bits) which holds a count of the number of characters in the string. It has a name of LEN (length). For ST14:0 the length section is addressable as ST14:0.LEN Most external devices which read a string require that this count is correct. It is maintained by the ASCII instructions. It is also updated if characters are placed in the string from the Data File view. Following the length section is a space for up to 82 characters. It has a name of DATA. It is an array 41 long. It is addressed as ST:14.DATA[index] with the index being 0 to 40.These are 41 integers each holding 2 characters. This can sometimes get confusing as the 2 characters within a single 16 bit integer can sometimes be out of the order as expected by your remote device. if you double click on the string file the Data File view window will open. You can manually place characters in a string by clicking just after the LEN heading under the under the 'String Text' area. After entering the character(s) you wish press ENTER and the LEN will be updated. To view this better (since you can't change the radix of viewing in the Data File) create a rung with a MOV command of some value (it doesn't matter what, we won't be executing it) with a destination of ST14:0.DATA[0]. This will address the first integer (or 2 characters) of this string. On accepting the rung you should see shown under the ST14:0.DATA[0] the contents of this first integer. Using Data File window I placed an 'A' in the string. In the MOV command I see A\00 under the address. This indicates that the first integer has an 'A' and a null (\00) in it. It only has one character. If you use the Data File to place 'AB' in the string you see AB under the address. Now let's place 'ABCD' into the string - remember to press ENTER. The length changes to 4. But in the instruction you still only see AB as it is only showing the first integer. If you change the destination of the MOV command to ST14:0.DATA[1] and accept the rung you will see the contents change to CD. The MOV command - used by itself - can update the contents of the DATA area but DOES NOT automatically update the count (LEN). If a given string will be updated with various characters at runtime (using a MOV command) then you must maintain the count. If a given string will always have the same number of characters then don't worry. But it is not recommended to use the MOV command to update the characters. Investigate the COPY command to copy a complete string into another. Also check out the various ASCII commands.