jacekd
MrPLC Member-
Content count
89 -
Joined
-
Last visited
Content Type
Profiles
Forums
Downloads
Calendar
Everything posted by jacekd
-
Hi Shamus, If your FB works fine with only one motor, then all you need is separate DB for every additional motor. There is also other, a little bit more sofisticated way to achieve your goal. You can create STAT variables of type FB100 in other FB block. In code you simply call this variable like normal FB but without instance DB. It saves DB address space. Copy this code to STL source and compile it to see how it works. FUNCTION_BLOCK FB 100 TITLE = VERSION : 0.1 VAR_INPUT in1 : BOOL; in2 : BOOL; END_VAR VAR_OUTPUT out1 : BOOL; out2 : BOOL; END_VAR BEGIN NETWORK TITLE = END_FUNCTION_BLOCK FUNCTION_BLOCK FB 1 TITLE = VERSION : 0.1 VAR motor1 : FB 100; motor2 : FB 100; motor3 : FB 100; END_VAR BEGIN NETWORK TITLE = CALL #motor1 ( in1 := I 0.0, in2 := I 0.1, out1 := Q 0.0, out2 := Q 0.1); CALL #motor2 ( in1 := I 0.2, in2 := I 0.3, out1 := Q 0.2, out2 := Q 0.3); END_FUNCTION_BLOCK
-
If you're talking about Step7 then the answer is: yes. Open the project. In the navigation pane unfold the project tree so you can see the Blocks folder. Right click it and choose Object properties.... Go to Address priority tab and select "For all accesses. After changes do not forget to compile whole project.
-
Next time try to compress memory first. See Step7 online help.
-
What do you mean by an expansion rack ? Is it a S7-400 ER or UR rack ? If so you need to use a pair of IM460/IM461 modules. I've never heard of kind a "DP slave" module for S7-400 (something similar to ET200M). It's also posible to use a CR/UR rack with a S7 CPU configured as a DP slave. However this option might be "over engineered" in your case... If you have to use Profibus DP then maybe ET200 or other remote IO system is the way to go for you ?
-
Check S7 LAD/STL/FBD editor Options->Customise...->View->View for Block Types->Logic Blocks: if it's not set permanently to STL. To change viewing mode: menu View and choose between LAD/STL/FBD.
-
Well, people usually don't remember/know that the code below works well only when real_number is in range <0.0 .. 32767.0>. (OK, with RND it works well in fact for numbers in range <-0.5 .. 32767.5) but it does not change much) L real_number RND T int_number
-
It can be either MPI or Profibus. But you need at least a MPI adapter to connect to your PLC.
-
Well, yes and no. If you have proper communication hardware and software like ProtoolPro or WinCC flexible, then yes. If you do not have them - then no.
-
You could also try a soft PLC like TwinCAT from Beckhoff. It has built-in simple HMI, so you can simulate real IO with it. And you can evaluate it for free as long as you wish (30 days after each installation).
-
Solution with OB35 has +/- 200us jitter. I'd say it's a lot. But in the end everything depends what is to be achieved. Dear iic_hyd, you should elaborate a little bit more on your requirements.
-
TwinCAT does not support DDE - or I've never heard it does. To access its variables out of other OLE soft use OPC. There's a trial version of their OPC server.
-
Well, you can always cascade 2 or more counters.Other solutions are: 1 - use IEC counters instead of S7 counters (if 2^15-1 counts are enough for you) 2 - build your own counter with dint data type as counter base (2^31-1 increments, or much more if you cascade them) And answer to not asked question - why the hell there're S7 counters ? Because they are backward compatible with S5 counters and they are hardware - it means very small load on the cpu - nothing to compare with load caused by the IEC timers.
-
What you can do: 1. Transfer of license key to/from a network drive (I've never tried but it should be possible) 2. Borrow a license disk from someone else 3. Connect HDD from the old laptop to the new one and transfer licence 4. Call Siemens support
-
You can use test pin. It can be found in the manuals.
-
Generally something gets burned out. The part treated this way generally needs to be replaced. Unless you know someone with fine skills in electronics.
-
S7-400 to S7-300 program transfer - i/o auto remap.
jacekd replied to gruntstripe's topic in Siemens
Hi, there's a feature called "rewireing" in Step7 Manager. Use online help for explanation how to use it. When you use symbolic addressing (and you set priority to symbol) then it's enough to edit Symbol List and compile program once again. -
What JasperMP says is: if you have many pieces of same equipement. And each of them you want to control with same piece of code (with different addresses of course). Then in the S7 world you create or a FC - piece of code with symbolic inputs and outputs which can have assigned real addresses, or a FB - same as FC but can also have static variables inside. (static means preserved between calls). To JasperMP: I had some experience with AB SLC500 and Micrologix. There is nothing like FCs and FBs. So you can't create blocks of code with interface. To reuse code you have to do funny things. So if this Logix the guy is experienced with is similar...
-
Simple solution - use a PC with faster CPU. Less simple: - check program scan rate and find out if it must be so high, maybe it can be decreased - optimise program execution - normally many parts of a program doesn't have to be executed each scan (like analogue IO access/scaling, calculations involving data shown on HMI)
-
I have no idea if together with Step7 Lite comes also TI-S7 converter and its library, but if it does then install it. Then you can find FC93 "SEG" in libraries. If not then you can always DIY.
-
What do you mean by above statement ? Did you check in Control Panel>Set PG/PC interface>Diagnostic if the AW can be seen on the Profibus ? (you must be conected with your PC/PG to the fieldbus).