General questions about S7-1200 programming

Eriond

Member
Join Date
May 2009
Location
South Carolina
Posts
24
Greetings,
I am an Allen-Bradley programmer who has an opportunity to work with some Siemens equipment (S7-1200). The discreet stuff is pretty straight forward but I am struggling with creating timers. Could anyone pass along some tips for setting up a TON? Thank you, in advance.
 
Greetings,
I am an Allen-Bradley programmer who has an opportunity to work with some Siemens equipment (S7-1200). The discreet stuff is pretty straight forward but I am struggling with creating timers. Could anyone pass along some tips for setting up a TON? Thank you, in advance.

What problems are you having? In general, the F1 key is your friend. The help files are pretty detailed, although very dry.

Basically, when IN goes true, the Q output goes true after PT amount of time. Q is essentially the same as saying the timer is done. They don't have a Timer Timing bit, but I think TT is the same as

IN Q TT
-||---|/|--()


Overall procedure I use for creating timers:

1) Drag TON onto the network
2) Accept the "Call options" prompt. Basically, this is asking you where to store the internal data of the timer. It is typically recommended to use a meaningful name instead of the default style of IEC_TIMER_1. You need a different instance created for each timer you use.
3) Fill in the PT (Preset Time). Use the format 5m or 15s or 2000ms or even 5m15s. After you type it in, it will add a T# in front if you entered a valid time. If you didn't, it will put it in quotes, thinking you typed in a tag name. If you want your timer to have a variable length, you could use a tag here instead of a constant.
4) If you want it, you can assign a tag to the ET (Elapsed Time). I don't usually need this, but it is available.
5) Add your logic to the IN and Q bits.
6) You can access the Q bit elsewhere in your code by referring to the name of the instance you gave it: IEC_TIMER_1.Q
 
I prefer to add a coil off the Q output of the TON block and use that in the logic.

Otherwise using "db_name".Q in the logic will not cross reference back as a write.
 
Many thanks to those that took the time to respond. I was able to solve my problem using the information provided. I am constantly amazed at how simple the solution turns out to be when the problem looks so daunting pre-enlightenment. Thanks again!
 

Similar Topics

Embarking on my first GE iFix project have a few general questions. Per spec we must iFix 5.8 with historian for data logging. Two 17" Touch...
Replies
4
Views
2,810
Ok so I am warming up to Siemens (I didn't say anything about liking it :rolleyes: ) After figuring out a way to do timing... for the most part...
Replies
0
Views
2,254
Hello all, I am currently working on a project involving SLC 5/05's. There is two treating vessels, #1 and #2. #2 was recently (2008) upgraded...
Replies
4
Views
5,097
Downloaded some manuals but not finding anything. My work as recieved an 840D training rack. I went to start it up and it has a few errors. 1)...
Replies
19
Views
11,091
1)If a programmable controller controls the operation of a motor,what connects motor control to the PC? A) Line voltage...
Replies
30
Views
12,185
Back
Top Bottom