MrPLC Member
  • Content count

  • Joined

  • Last visited

Community Reputation

5 Neutral

About photovoltaic

  • Rank

Profile Information

  • Gender Male
  • Location Some Igloo
  • Country Canada

Recent Profile Visitors

318 profile views
  1. Omron camera unit macro code executing

    What exactly are you trying to do? Just test code? Dim B& I have written a few macros on the FH
  2. Technician

    Just out of curiosity - where did you find this? This product line was discontinued a while ago
  3. CP1E-E10 with HMI?

    My mistake - Google showed me an E20 when I searched the E10. E10 has no option slot.
  4. Hold the value of High Speed Counter in CP1L-EM

    This is how I would do it too
  5. CP1E-E10 with HMI?

    Not out of the box no. There are option modules available for the expansion slot on the front that you would need in order to communicate with an HMI. CP1W-CIF01 for RS232 is probably the most common way and all NBs support this.
  6. Omron FQ2 Ethernet/IP comunication with Allen Bradley PLC

    I have used the FH over EIP quite a bit and I think it may be similar on the FQ - did you cycle power on the FQ after changing the EIP settings?
  7. CJ1W-EIP21 to ControlLogix

    Try on the output tag rockwell side, decrease the size by 2 bytes. Rockwell includes extra data in their output datalinks
  8. CJ1W-EIP21 to ControlLogix

    Try this route: create symbols and addresses in CX-Programmer and assign instance IDs with Network Configurator.   In the Logix add a generic ethernet device and give it the IP of the CJ and the instance IDs you created (match datatypes and size).
  9. CJ1W-EIP21 to ControlLogix

    How are you trying to communicate? AB polling CJ? Implicit or explicit?
  10. sequences programming in ladder

    Another way some people do state engines is setting and resetting bits instead of a single numeric variable. The bits can have the name of the state as their tag name and this would get you a lot closer. This a controversial method as it is possible to be in multiple states at once if not programmed correctly. Troubleshooting a situation where this happens can be a headache since they can jump around faster than you can see. I'm all out of ideas, hopefully that helps.
  11. sequences programming in ladder

    The only 2 ways I can think of doing this would be an Enum like you said or a String array. Neither are complete solutions.. With Enum you need to extract a numerical value from the Enum datatype and use conventional comparisons but changing the Enum value would fit what you are trying to achieve. This a sort of a halfway there option. With a dynamically addressed string array you can use string compare instructions and have the states clearly displayed in your logic but this causes a lot of processing overhead compared to a simple numeric comparison. States would still be changed numerically though. I guess you could even use a single String variable and change the string to progress through the stages. Lots of overhead processing again. In my experience a numeric variable is always used and the states are just commented. A multi-dimensional string array is a good way to have the state description readily available for your HMI/SCADA/DCS but I've never seen it used as a core for a state engine.    
  12. sequences programming in ladder

    There are a number of ways to do this and many people have differing opinions. In my experience I find a state engine to be best. This essentially uses a variable to keep track of the state (sequence number) you are currently on. When the state is finished you change the state variable to the next state. Outputs are controlled by the state value. I use this in C and ladder and structured text often. It works well in any language. The state variable can be used to communicate the state to other parts of the program and control the PLCs actions. Since you're familiar with C type languages it would look something like this: State 0 waits for retracted press, State 1 extends press and waits for confirmation, state 2 waits for 5 seconds to pass   // Global variables UINT State = 0; BOOLEAN OUT1; // Press Activate Output BOOLEAN IN1; // Press Extended Sensor Input void LOOP{ if(State==0 & IN1==FALSE){State = 1;} //Press is retracted, move to state 1 if(State==1 & IN1==TRUE){State = 2;}//Press is extended, move to state 2 if(State==2 & Elapsed_Time==5){State=0;}// Press has been down for 5 seconds, move to state 0   //Output Section if(State==0){OUT1 = FALSE;} if(State==1){OUT1 = TRUE;} if(State==2){OUT1 = TRUE;} //Add additional states here } //End void Loop   Will you be using Ladder or ST ?
  13. You may be better off with socket services:
  14. OMRON NS5-SQ10B-V2

    The outer CF slot is the one used for this. Partition the CF card to a 64mb partition, FAT16. I used a cheap Chinese one with no issues.
  15. How to loop a datalog on NA5

    I'm not aware of any, but I'm far from a VB whiz.