JesperMP

MrPLC Member
  • Content count

    784
  • Joined

  • Last visited

Everything posted by JesperMP

  1. Prodave and Delphi

    Maybe this: http://support.automation.siemens.com/WW/view/de/21971420 or this: http://www.plctalk.net/qanda/showpost.php?...mp;postcount=13 or this: http://www.experts-exchange.com/Programmin...Q_23117009.html or this: http://www.runmode.com/usefulstuff_files/0...rodave_unit.zip Found with google. I have no experience with Delphi or Prodave. PS: Notice how I refrained from 'sauce' jokes !
  2. Convert ASCII to REAL

    That is why controls should be written for computers and not for humans. The format that we easily understand, contains many interpretation rules that are not so easy for computers to understand. There is the STRNG_R function in the standard library. But you cannot use it, because it demands the string is formatted as ±v.nnnnnnnE±xx where ± = Sign v = 1 digit before the decimal point n = 7 digits after the decimal point x = 2 exponential digits If no one else has an idea, then I think there are two possible ways: Here is one way: There is the function FIND FC11 in the standard library. You can use that to search for the "." Use it to split into two strings for integer part and fractional part. To get the number of zeroes after the decimal point maybe you have to use FIND again. For the fractional part you need to know how many digits there are including the zeroes after the decimal point. Then it is a question of using STR_I on the integer part and the fractional part, and then generate a REAL like this: realVal := INT_TO_REAL(integerPart) + INT_TO_REAL(FractionalPart)/(10^Number_of_digits) Here is another way: Use FIND again to split into an integer and fractional part. Then figure out how big the integer part is. Then reformat the string to adhere to STRNG_R, moving the decimal point and calculate the exponent. Use STRNG_R to convert into a REAL
  3. If I understand correctly then it is like this. Can change structures on a running program ? ControlLogix + RSLogix : No. S7 + STEP7 : Yes - but actual values are lost (*) TwinCat (and maybe Codesys) : Yes - actual values are retained (**) *: It also requires that there is enough free memory in the PLC to fit in all the changed code and data before switching over to the new. **: I dont know but take a guess, that there are also memory constraints. However, since TwinCat runs on embedded PCs, memory is probably abundant. I am possitive that TwinCat uses a compiler, how they manage to retain the actual values I do not know. Hmmm... both Siemens and Rockwell have products for proces control, PCS7 and ProcesLogix. I wonder how they manage this topic with PCS7 and ProcesLogix. All this is of course just one detail in the big picture. I am aware that there are other areas where ControlLogix have advantages over S7, TwinCat and Codesys.
  4. I could not accept this way. Obviously you have to make incremental changes to your code and data declarations when you have a big project that is being commisioned in small steps. With STEP7 I can change FB data declarations and UDTs, and I can download the modified code and data, even on a running system. Trouble is that I lose the actual values. TwinCat and Codesys seems to handle this much better.
  5. Those are very valuable comments Paul. Does any modern 'regular' programming language have anything like the online programming of the PLCs ? I dont think so. And that is the reason memory isnt dynamically allocated in PLCs. This makes it impossible to compare the two scenarios with each other. I have seen on other forums that Twincat (and thus maybe also CoDeSys) has the best implementation of 'online change' when data structures are modified. If a UDT or the declaration of an FB is modified, then when downloading the modified program, all the non-modified data will keep the actual values, whereas the modified or added data will get the initial values. With Siemens, you can kiss the actual values goodbye. How is it with RSLogix5000 ? This is a small detail with huge ramifications. It is in the top-5 on my wish-list.
  6. Question about click PLC

    It is a VERY inductive load. The integral electronics has a PSU (=transformer coils and capacitors), and then it also has a filter (=even more coils and capacitors). The PSU takes care of storing the energy for release in the strobe, so it is not the high current, it is the induction. Use a contactor, and ALSO use a surge suppressor (varistor or RC) over the supply terminals to the strobe.
  7. Question about click PLC

    It is not just the current, but the "inductiveness" of the load. What do you mean by "strobe" ? Is it some kind of flashing alarm beacon ? If that is so, there is probably a small electronics unit with power supply, large capacitors and coils. And that makes an inductive load. Use a contactor and/or combine with a surge suppressor.
  8. Since you ask: The S7-1200 and STEP v10 are the first in a new generation of S7 and STEP7. As far as I understand, STEP7 for all the PLCs will be completely rewritten. So it will be relevant for S7-300/400 also. But not until 1 or 2 years at least. But lets not hijack this thread.
  9. Promotion for Open Source HMI / SCADA system

    Thanks for the feedback "pvbrowser". This is all very interesting.
  10. Very strange problem with S7 function monitoring

    I have found it to be a bit finicky with that it requires you donwload the latest version of the FC, and maybe also the calling block. Even if there is appearantly no change in the program, try to download the blocks anyway, and see if the menu option appears. As you can see in the screenshot I posted, it should be possible.
  11. As for Siemens, then there is the new S7-1200, and there are the 'older' S7-300/400. The new S7-1200 should allow indirect addressing directly in ladder. And they are also very low cost. Similar to AB ML1100/ML1400 in capability, but less than half the price as far as I can tell. The older S7-300/400 do not have as easy indirect addressing. I use the programming add-on SCL for this and other reasons. It is more like programming in pascal than in traditional PLC languages. I cant live without it now. However, this is of course a much more expensive solution. Performance of an S7-300 is like CompactLogix and up. Price is approx 20-40% less.
  12. Promotion for Open Source HMI / SCADA system

    You get my vote for that it is not spam. I am interested in how it goes. It looks slightly intimidating to my opinion. Is the server programming entirely in C or C++ ? Is there no graphical IDE ? Maybe it is not so difficult for a beginner if there are simple templates to start with. Apart from Qt, what software tools do you use yourself ? How does web clients update ? As far as I have seen with other Web-server solutions, they use a special Java component to achieve fast updates of the Browser HMI.
  13. New to Siemens

    Hi matt. What 'kind' of PLC do you plan and want to use ? A 'brick' similar to a MicroLogix ? Then you might consider the new S7-1200 which is really low cost (150 Euro for the smallest model). STEP7 10 Basic for the S7-1200 is also quite cheap and includes programming for the socalled "basic panels" that match the S7-1200. However, it is so new that there are not much feedback on how good PLC or programming software is. I'll guess that it is OK though. STEP7 10 should be the new software architecture, later also for the S7-300/S7-400, so it could be a good idea to be an early adopter. Or do you aim for a more modular and performant PLC ? Then I recommend the IM151-8. This because it is relatively low cost (600 Euro), yet has reasonably much memory and onboard ethernet (which also means you dont have to purchase a separate programming adapter). You need the full STEP7 for pramming this one though. If you contact a Siemens distributor, you can get a free Trial CD with STEP7. It is good for 14 or 30 days as far as I remember.
  14. If he can connect his PC for programming, then he can also connect an HMI. If he can program a PLC, then he can also program an HMI.
  15. Only if we are talking about very few thumbwheels (2-3 ?), will they be less expensive let alone "smaller". How do you display alarms ? A lamp for each alarm ? Tying up a port on the PLC ? While we are at it, grow up and ditch that PLC if it does not have ethernet. It has happened, serial is over, ethernet is here even for the smallest PLC. Making non-basic machine these days without a panel is an anacronism. I'll bet that making a machine without a panel means that you accept some limitations only because of that.
  16. My thoughts as well. Thumbwheels in 2009 !? Hmmm. how about using a 4 digit 7-segment display, and a thumbwheel to display parameters one by one ? And with two buttons for plus and minus you can even change the parameters. I think I can find some code from 1985 or thereabouts. Tip: These thumbwheels better be very well maintained and regularly checked, or you will get some funny machine behaviour.
  17. Losing of program after swich off-on

    Hi again. That CPU is the old style with battery backup and MC flash card. An MC card is a flash card in the style of a short PCMCIA card. If there is an MC card in the PLC, then try to use the function "Store user program on memory card". If there is no MC card, then you need a backup battery. In a real-world application, you would install both an MC card and a backup battery. edit: Scratch that. The 312 IFM is an odd beast in the Siemens inventory. It has neither an MC card slot or a battery slot. It only has internal Flash memory. So I think you must use the function in STEP7, "store user program on memory card" or the function "Copy RAM to ROM". The 312 IFM is obsolete, so maybe you should replace it with something else.
  18. Losing of program after swich off-on

    Hi pr2501. What is the EXACT type # of the CPU ?
  19. Very strange problem with S7 function monitoring

    I just made a test, and Monitor with call-up path works as intended. One FC10 called twice. In one FC10 call the inputs change, in the other it does not. Monitoring the one with the non-changing inputs displays them non-changing. And vice-versa. The way you have described how you use Monitor with call-up path does not sound right. Simply activate Test operation. Maybe you have to save the block again (*). Right-click on the block in the calling block, and then select Called Block .. Monitor with Call-up path. It is not calld just "Monitor". The block will be displayed with the online status of just that call. *: Sometimes I have to, to have the option Monitor with call-up path displayed.
  20. Very strange problem with S7 function monitoring

    Hi Pandiani. Monitor with Call-up path works the same way with FBs and FCs. Simply activate Test mode, and then select Monitor with call-up path when you select an FC block.
  21. S5 Program Decompile

    Yes. You can upload from PLC to the PC. If you dont have the original source code, then there will be no comments or symbols of course.
  22. S5 Program Decompile

    You need Siemens STEP5, or IBH S5 for Windows. Go online, upload from S5 PLC to PC. Open the desired programs block in order to view them. Switch to FBD view for display as block diagrams, which may or not be possible depending on if the code fits into FBD code.
  23. SLC5/3 to 1771 I/O

    Ahem, I think you got it mixed up Paul. In a nutshell: 1 "rack" is always 8 input words + 8 output words. 1 input word + 1 output word is also called 1 "group". ½-slot addressing --> 2+2 words per slot --> 4 slots per "rack" --> one 16-slot chassis uses up 4 "racks". 8-channel, 16-channel and 32-channel modules can be used. 1-slot addressing --> 1+1 words per slot --> 8 slots per "rack" --> one 16-slot chassis uses up 2 "racks". 8-channel, 16-channel and 32-channel modules can be used. If 32-channel modules are used, then slots must alternate with one input and 1 output module per 2 slots. 2-slot addressing --> 1+1 words per 2 slots --> 16 slots per "rack" --> one 16-slot chassis uses up 1 "rack". 8-channel and 16-channel modules can be used. If 16-channel modules are used, then slots must alternate with one input and 1 output module per 2 slots. Confusing indeed, and let us just forget "complementary i/o" for the moment. (edited to make it 100% correct.)
  24. OP1S Problem

    It says on Siemens Mall site that Drive ES Basic works over Profibus, including routing. And I think that Starter is a pared down version of Drive ES, so everything indicates that Profibus should be OK. What kind of Drives are it exactly ?
  25. SLC5/3 to 1771 I/O

    Hi Mike. Do you understand AB RIO addressing ? Tip: 1 "rack" = 8 input words + 8 output words. 1 "rack" is not a physical rack. You dont have to use block transfers. As long as you dont exceed the number of words that are assigned per slot, then you dont need block transfers. If you use 1-slot addressing, then you have 1 word input and 1 word output per slot. That fits with 16 channel discrete i/o. For 32-channel discrete i/o use ½-slot addressing which gives 2/2 words per slot. Have you set the dip switches on the ASB adapter ? Must match your 'strategy' for ½-1-2 slot addressing and how many 'racks' are needed. Have you setup the RIO configuration in RSLogix500. You can find this under I/O Configuration, select the 1747-SN RIO Scanner and then the Adv Config button. In the dialog that appears, select the Edit G Data button. Again, match the ½-1-2 slot adressing and racks. Is the RIO cable wired correctly ? One snafu is that the blue and clear wire must be opposite in the connectors to the scanner and adapters. I guess this is to differentiate with DH+.