Mixer

vikkaraja

Member
Join Date
May 2004
Posts
37
hello guys, could you please look at my another class project and offer me any opinion you might have. Just tell me if it actally will work in real world. Do I need to modify anything? To me it looks ok, but I think I would feel a little better knowing you guys looked at it.
 
vikkaraja said:
hello guys, could you please look at my another class project and offer me any opinion you might have. Just tell me if it actally will work in real world. Do I need to modify anything? To me it looks ok, but I think I would feel a little better knowing you guys looked at it.

Hi vikkaraja,

Nice to see you having a go before asking for guidance!

But...
Would you like to describe to us what you are expecting it to do, then we can check to see if you have 'hit your mark'

Rich.
 
I can't comment on your logic, because I do not know your goal. However, your programming documentation is less than adequate. You should have descriptions on the rungs explaining what that rung does. You do have instruction descriptions, but they are not up to speed.

For example you have one bit labeled " start stop", I hate it when people do that. Which one of those two are for the true state?
I would use: "Start Push Button has been depressed" or "Start PB is ON"
At the very least something like:

Start/Stop
1=Start
 
This PLC program is for automatic salsamaker. When the start button is pressed, output 1 and 2 turn on. Output 1 delivers 5 gallons of crushed tomato through input 1 flowmeter and output 2 delivers 1 gallon of chili blend through input 2 flowmeter. Both pumps turn off after the proper mixture is delivered to the tank. Then mixture pump output 3 is turn on for 8 seconds only if input 5 high limit switch is made. Mixture pump stops and turns output 4 solenoid on. Then cycle starts all over again unless start cycle is pressed for any reason. E-stop will stop immediately everything without resetting counter and timer accumulators.
 
Vikkaraja,

I see some errors.

For example, on your Rung 4 you have 3 contacts in parallel with the Cycle Stop pushbutton (tomato counter done, chili counter done, and mixer timer done). You do NOT want to stop the cycle when these events happen. You would only want to stop if the Stop button is pressed, or maybe if the end of cycle is reached. However your instructions say to repeat the cycle, so you do not need anything in the "stop" logic except the stop pushbutton. Even if you did, these contacts would have to be in SERIES with the Stop pushbutton, not in PARALLEL with it. Rung 4 should logically be moved to the FIRST Rung 0 in the program.

On your Rung 2, your tomato counter is set for "10" even though you said you only wanted to use 5 gallons. This will probably result in the mixer overflowing and creating a mess. On Rungs 0 and 1, you did not use the High Level Limit Switch to prevent this from happening. Your logic will keep adding tomatoes until 10 gallons is reached, even if the mixer should only hold 6 gallons!

On your Rungs 5 and 6, the 2 "Counter Done" bits are not needed. You already have those built-in with Counters C5:0 and C5:1. Use C5:0/DN and C5:1/DN and delete B3:0/1 and B3:0/2

On your Rung 9, the Dump Valve only dumps while the High Limit is ON. As soon as the level drops below High, the dump will stop. You want it to continue dumping until the Low Level switch is ON.

Also, all the rungs should be rearranged, so that the logic is easier to follow:

Start,
Do Step 1 (Add Tomatoes),
Do Step 2 (Add Chili Peppers),
Do Step 3 (Mix)
Do Step 4 (Dump),
Repeat Cycle, or Stop.

Here is the way I would do it.
 
Last edited:
Also I find if you place a rung at the start of the program with a dummy output (I use B3:0/0 and document it as a placeholder) then write a complete story of the whole process of what you are trying to achieve in the comment
ie
PROGRAM PURPOSE:
This machine is an automatic salsa machine that combines a preset qty of tomatoes with chilli peppers, mixes the product for a preset time then dumps the contents until the mix bowl is empty. The process is started by the operator from a pushbutton, and can be stopped at any time by an operator pushbutton.

Anyway you get the idea.
people who follow you will thank you.
Regards Alan Case
 
Nice Job Lancie...

Lancie1 said:
Vikkaraja,Also, all the rungs should be rearranged, so that the logic is easier to follow:
zactly

Lancie1 said:
Start,
Do Step 1 (Add Tomatoes),
Do Step 2 (Add Chili Peppers),
Do Step 3 (Mix)
Do Step 4 (Dump),
Repeat Cycle, or Stop.

Here is the way I would do it.

Here is something you may wnat to think about adding to rung zero to better match your comments:
batch_by_lancie_comment.JPG

Paul
 
Thanks for your comments, Alan and Okie.

Another possibility is that the instructor is being tricky. When you add 1 gallon of chopped chili peppers to 5 gallons of chunky salsa tomatoes (Roma or other chunky type with meaty pulp), you probably will NOT end up with 6 gallons of salsa, when the mixer starts. It is like mixing a gallon of sand with a gallon of marbles: you do not end up with 2 gallons of mixture (because of the large spaces between the marbles).

Your instructions say to be sure and use the High Level Limit to start the mixer (which normally would not be necessary). It could be that once the mixer starts, the level will drop below 6 gallons, and the high level switch will go off. IF this happens, then unless you add seal-in logic for the mixer, it will stop running and will not mix for 8 seconds.

To be safe, I would go ahead and add the seal-in logic. Use the High Limit to START the mixer, but use the mixer to seal itself on until the timer reaches 8 seconds.
 
Last edited:
Thanks for your feedback. The reason I have contacts in parallal is if during the normal process mode anytime a cycle stop is pressed work in process will finish all the way through dumping the finished product,and closing the dump valve,but a new cycle will not start.
 
The reason I have contacts in parallal is if during the normal process mode anytime a cycle stop is pressed work in process will finish all the way through dumping the finished product,and closing the dump valve,but a new cycle will not start.
That is a good idea, but your old logic will only work if the Cycle Stop is a selector switch or maintained-contact pushbutton. A standard momentary-contact N.C. stop pushbutton would have caused the cycle to repeat (even with all those extra parallel contacts). By the way, you would not need all three of those - only the Tomato Counter DN bit would be sufficient.

It still would be best to put in a "Cycle Stop" relay that gets latched when the Cycle Stop pushbutton is pressed. Then at the end of cycle, this relay is used to un-seal the Run Mode relay. That way if a standard stop pushbutton is used, it still works and the cycle will finish before stopping.
 
Last edited:
Lancie1 said:
On your Rungs 5 and 6, the 2 "Counter Done" bits are not needed. You already have those built-in with Counters C5:0 and C5:1. Use C5:0/DN and C5:1/DN and delete B3:0/1 and B3:0/2

Maybe I've been doing it 'wrong' all these years, but unless it is on the same rung, I never use Timer or Counter Done bits elsewhere in the program. I always parallel branch the Timer/Counter with the Dn bit and then OTE a B3 bit (in AB speak) that's used everywhere else in the program. The reason I've developed this habit is three-fold:

In the case of HMI comms most DDE/OPC or other I/O servers are written to make efficient use of packets and transmitting/receiving common blocks of data. So, the server handles 16 bits (1 word) much more efficiently than 16 Counter/Dn bits.

I often have developed code that is re-usable across PLC platforms. AB may make use of .DN bits, but many PLCs have separate bits as outputs of their timer blocks so it makes my development more consistent.

If for some reason I screw up and use the wrong timer or counter, I only have to change it in one rung, vs all instances of the DN bit everywhere.

These are probably all minor issues but together it makes sense to translate the DN bit to a re-usable internal bit for elsewhere usage.
 
Robertmee,

If your project has an HMI, SCADA, or is networked with other PLCs, then I am sure you are correct for your situation. However, for a simple stand-alone classroom project, I believe it would be overkill to add those redundant instructions.

There is always a question of whether to use more instructions to gain flexibility, or fewer instructions to prevent the program from looking like spaghetti. I think it depends on the particular situation. Different feet take different shoes.
 

Similar Topics

Hello all, I am working on a batch computer for a concrete mixer, and the computer that was running the plant before has stopped functioning. It...
Replies
10
Views
3,052
Hi All I'd be interested to hear approaches hear on what options you might consider for setting up of the loop control. I'll describe the setup...
Replies
5
Views
2,217
Hi All, I have an application where I need to constantly measure the moisture level of abrasive material in a pan mixer. The sensor needs to be...
Replies
0
Views
1,500
Hello. I am having troubles with Batch Mixer Exercise 3. I need help with which PLC controls I need for the following steps. In Silo Lab Exercise...
Replies
10
Views
2,450
Heya, For one of my projet i building a control panel for 4 industrial mixer i got 2 mixer that run on the same speed so its no big deal, simple...
Replies
9
Views
2,869
Back
Top Bottom