ChrisKozanecki

MrPLC Member
  • Content count

    156
  • Joined

  • Last visited

Everything posted by ChrisKozanecki

  1. NS Designer Macro

    Unfortunately if you need to AND more than two bits, you will have to either use the macro that jay has provided, or you will need to AND them in the PLC. I have not found a way to have it automatically AND more than 2 bits.
  2. Omron adware?

    I have CX-One among other titles and I do have that file. Its in the same location too. ServerIFServiceRes.dll does not come up as adware or a virus for me when scanning with Symantec Antivirus or Microsoft AntiSpyware. ServerIFServiceRes.dll seems to be created from ServerIFService.dll acording to its history and an advanced file scan. I opened ServerIFServiceRes.dll with visual studio and it seems to have something to do with the underlying server program that Omron software uses to communicate with different packages along with outbound to the PLC. Perhaps your file has become corrupt, been infected, or norton is being dumb. I wouldn't worry too much about it, my home page never changed.
  3. Data logging

    What kind of data are you trying to log: --Pass/fail counts? --Reading at X condition? --etc..? What are your specifics about how you want to show the data: --What type of PT? --Raw data/Graph/etc..? Right now I could show you some ways of data collection and showing it, but I dont know if it would be what you are looking for. More details is always a plus!
  4. NS Designer Macro

    That is type-3 pushbutton
  5. NS Designer Macro

    Why not use a Type 3 pushbutton? Type-3 turns on from of its write address along with combinations of its display addresses. Simply disable inputs from the control flag tab and its a multi-stage lamp. This method also works well for making a visual comparator circuit.
  6. Variable ASCII string receive problem

    I believe you would just change the "Constant ASCII" field to Variable.?
  7. Using indirect addressing and xfer

    I agree Nibroc. THat is what type of thing I would like to steer wadlinx79 towards. Unfortunately if you look at the way he has his plan for data flow, that method wont work. I surely hope that Wad isn't looking for something as complex as he asked for.
  8. Using indirect addressing and xfer

    After I studied your problem more, I am very much confused about what you are trying to do. For simplicity sake, I will call the 89 data areas by number, and not worry about their addresses, but when I refer to them you can imagine them as: D1 = DM11000~DM11099 D2 = DM11100~DM11199 D3 = DM11200~DM11299 D4 = DM11300~DM11399 . . . D89 = DM19900~DM19999 Now, if I understand you right, you want it to work like this: Step1:     D2 loaded with data from P1. Step2:     D3 loaded with data from P2;     D1 loaded with data from D2. Step3:     D4 loaded with data from P3;     D2 loaded with data from D1;     D1 loaded with data from D3. Step4:     D5 loaded with data from P4;     D3 loaded with data from D2;     D2 loaded with data from D1;     D1 loaded with data from D4 Step5:     D6 loaded with data from P5;     D4 loaded with data from D3;     D3 loaded with data from D2;     D2 loaded with data from D1;     D1 loaded with data from D5. Step6:     D7 loaded with data from P6;     D5 loaded with data from D4;     D4 loaded with data from D3;     D3 loaded with data from D2;     D2 loaded with data from D1;     D1 loaded with data from D6. etc... If my assumption is correct I think you are making things MUCH too complicated for yourself. You are moving data around too much, and a simple mistake can corrupt all of your data. If you are just looking to have a data storage method, why not try incrementing the pointers and setting it so that if the increment moves the pointer beyond the stack it will be set to your starting address again (basicly a rolling pointer. Only good if the pointer isn't changed by other methods) Another option (if you have a v3.0 CPU) is to make a funtionblock that is a block shift register. Please help clarify what you want to do so I can better dig into this. Right now this ladder looks scary because its loaded in one place, then moved to a previous location where it will eventually shift through its original location again (wasted time and energy!) also this method will cause errors once you reach paper 89 and move to paper 90. One word of caution from what I saw of your ladder, when you are moving data from one location to another, then moving other data into the previous location (like a shift register) you need to move the current data out first, then the new data in second!
  9. CX-Programmer 6.0

    cheers!
  10. Using indirect addressing and xfer

    I have an idea what you are saying, after this weekend when I get back from my trip and return to my normal computer I will poke at it if your question hasn't been solved. At the moment I do not have CX-P on the computers I have access to.
  11. Using indirect addressing and xfer

    Yes, a block diagram would help us to understand what you want to do. It may actually help you to see what commands also.
  12. FINS Gateway

    I thought XP would still recognise an ISA card, especially if you have driver disks?
  13. FINS Gateway

    X-Files?
  14. Structured Text Help

  15. Structured Text Help

    But does a ST FB work like normal programming code or like PLC ladder? Normal programs complete everything from line one before moving to line two. PLC Ladder reads Line one, then reads line two, then executes the combined changes simultaneously.
  16. Structured Text Help

    I am looking at your code pklok, and I am concerned about this: if i = 10 then i := 0; END_IF; Does your output 10 turn on?
  17. Operand data type

    I am disapointed that you feel the way you do Winall. Since you feel that my statements are BS, I suppose my efforts are wasted but I will try to be more clear in this post. Please help me see what it is that I am not understanding fully as I don't know what you think I am missing.
  18. Structured Text Help

    I agree with sleepy. To write a Structured Text Function Block for your task you would be writing a lot of code, and possibly would still require ladder code to make it work. I will assume you have no VB / C / C++ / etc.. experience, so I think you will be spending a lot of extra time trying to get this to work that would be wasted. To get you started though, try something like this: Variables: input, bool (input) reset, bool (input) i, int, retained (internal) output1, bool, retained (output) output2, bool, retained (output) output3, bool, retained (output) output4, bool, retained (output) output5, bool, retained (output) output6, bool, retained (output) output7, bool, retained (output) output8, bool, retained (output) output9, bool, retained (output) output10, bool, retained (output) _________________________________ if reset = true then     i = 0; if input = true then     i = i+1; case i of 1: output1=true; 2: output2=true; 3: output3=true; 4: output4=true; 5: output5=true; 6: output6=true; 7: output7=true; 8: output8=true; 9: output9=true; 10: output10=true; (this code has not been tested)
  19. Operand data type

    Winall: I think you are falsely trying to apply CJ/CS understanding to a C series. It seems that you are ignoring what we are trying to tell you and only seeking to prove your belief as truth. Being a right-fighter is a bad way to enter a discussion because it will blind you to the advice many experts have tried to give you. The C series will only compare an unsigned value with its CMP function. And its looking at the hexadecimal value. This means that if you enter &10 compared to &16 the function will compare #A to #F. You could also compare &15 to #E and it would say they are equal. If you need to do complex math with your PLC, then you need to invest in a CJ or CS. The reason why the CPM2A (your original reason for starting this thread) doesn't state a data type for the CMP function is because when the CMP2A was first made the only data types that were ever compared were Channels and Bits. Times have changed, but these PLC's still have their place due to their small size and price compared to a rack mount. Unfortunately since CX-Programmer has to support the CJ/CS and these older PLC's there is a lot of functionality in CXP which can cause confusion while programming older PLC's. I think you should re-read this thread with an open mind because there is a lot of good information in here.
  20. Operand data type

    I come here because some of the people on this forum actually are the Omron experts.
  21. Input interrupt problem on CPM2A

    Without seeing any more of your program than that I can only guess that something else is affecting HR16. Do you do any math functions on HR15 that requires a double word or has a carry?
  22. Ethernet socket programming - CJ1M

    It is in the downloads section of the MrPLC.com website. Along with many other tutorials and utilities. FINS UDP for Ethernet
  23. First Time Omron Programmer

    Quoted for truth.
  24. Operand data type

    Why cant you do: -[ ON ]--------[pulse]---------@ADB (binary add)           |                   DM0           |                   #1           |                   DM0           |           |-------------------CMP             |                   DM0           |                   #64  (Hex Equivalent of 100)           |           |           |--[ EQ / GT / LT]---[ output ] As far as I know, CMP doesn't use a data type.
  25. He is advertizing that he is selling Manuals for the PLC's. I have only worked with Omron PLC's but I believe that they would have an issue with that.