Public Beta 4.0 Beta 2 Issues

Things to come.
User avatar
oakbarn
Posts: 846
Joined: Thu Jan 05, 2012 2:28 pm
Bot?: No
Location: Texas
Contact:

Public Beta 4.0 Beta 2 Issues

Post by oakbarn »

I found that when I put a closed Process in the last box of the Ladder Logic, the Process Starts immediately.
process in last box.png
process in last box.png (13.45 KiB) Viewed 6746 times

I did not have any of the other boxes filled.
User avatar
oakbarn
Posts: 846
Joined: Thu Jan 05, 2012 2:28 pm
Bot?: No
Location: Texas
Contact:

Re: Public Beta 4.0 Beta 2 Issues

Post by oakbarn »

Not sure if this is an issue or desired behavior. Just seemed like a "gotcha" as there is no warning of what I did to resume on the "Iodine Test". Could easily mess up Timers and cuase you to end up where you do not want to be.

1. "Pause" a Process,
2 Click any of the none red states
3. Resume the Process

It will jump to the State that was last clicked.

In this pix, I click the buttons in order and ended up at the state "Iodine Test" when I resumed.
Pause 2.png
Pause 2.png (127.1 KiB) Viewed 6741 times
Also found the same logic if you closed a "paused" Process then opened it again. It jumped to the "Iodine State" as well.
brahn
Posts: 543
Joined: Thu Dec 13, 2012 11:01 am
Bot?: No

Re: Public Beta 4.0 Beta 2 Issues

Post by brahn »

oakbarn wrote:I found that when I put a closed Process in the last box of the Ladder Logic, the Process Starts immediately.
This makes sense. You're saying you want the process running unless some ladder logic condition turns it off. It looks like the demo unit is down, but I believe that's how 3.x works as well.
brahn
Posts: 543
Joined: Thu Dec 13, 2012 11:01 am
Bot?: No

Re: Public Beta 4.0 Beta 2 Issues

Post by brahn »

oakbarn wrote:Not sure if this is an issue or desired behavior. Just seemed like a "gotcha" as there is no warning of what I did to resume on the "Iodine Test". Could easily mess up Timers and cuase you to end up where you do not want to be.

1. "Pause" a Process,
2 Click any of the none red states
3. Resume the Process

It will jump to the State that was last clicked.

In this pix, I click the buttons in order and ended up at the state "Iodine Test" when I resumed.

Also found the same logic if you closed a "paused" Process then opened it again. It jumped to the "Iodine State" as well.
This is more of a gray area. I think it makes sense to be able to change states on a paused process, but I'm not sure that this behavior is exactly what we would want. Maybe it should resume? Or disable the state change on paused processes? I'm not sure what you mean by closing a process.
JonW
Site Admin
Posts: 1726
Joined: Sun Jul 18, 2010 7:51 am
Bot?: No
Location: Huntington Beach, CA
Contact:

Re: Public Beta 4.0 Beta 2 Issues

Post by JonW »

My question is, Oakbarn, why are you pushing other buttons when it is paused? I see nothing wrong with the behavior. You selected a different state and as soon as you resumed, it jumped to that state. What's the problem there? As for the ladder logic, you didn't include any conditions in front of the process. What did you expect to happen?

I understand you're trying to test all possible issues here, but I find obscure issues like this to be nothing more than operator error. The BCS isn't a device sold in Walmart to a million users per year. It is a specialized device for a specialized task and as such the operator is expected to have a certain level of understanding before using the device. Sure, there are a lot of things that we could bother Brent with coding into the UI so that it disables xyz when doing abc, but normally people aren't trying to do those things! An embedded processor type device has a very limited amount of flash memory (code space) and RAM to execute the code. Putting every conceivable check into the system is a waste of resources in my opinion. /RANT
User avatar
oakbarn
Posts: 846
Joined: Thu Jan 05, 2012 2:28 pm
Bot?: No
Location: Texas
Contact:

Re: Public Beta 4.0 Beta 2 Issues

Post by oakbarn »

Never mind: :D
Unfortunately, this is the only forum that I have to give suggestions and get understanding. It is unfortunate that it is so public.
Last edited by oakbarn on Wed Jan 28, 2015 4:09 pm, edited 1 time in total.
User avatar
oakbarn
Posts: 846
Joined: Thu Jan 05, 2012 2:28 pm
Bot?: No
Location: Texas
Contact:

Re: Public Beta 4.0 Beta 2 Issues

Post by oakbarn »

brahn wrote:
This is more of a gray area. I think it makes sense to be able to change states on a paused process, but I'm not sure that this behavior is exactly what we would want. Maybe it should resume? Or disable the state change on paused processes? I'm not sure what you mean by closing a process.
Basically, I used the Button on the Process Sidebar to kill the Process. When I started the Process the next time, it jumped to the "Iodine Test" and did not start at State 0:Strike Water. I had been doing some other things and was starting my test run again and was surprised that it jumped to the "Iodine Test".

I was doing a practice logic run and had "Paused" the Process. I was trying to "jump" and have the Process resume at the "Iodine Test". It basically did what I wanted when I hit "Resume" after clicking the Oblong "Iodine Test". I would prefer it resume on the "Iodine Test" click. This is "Yes, I do want to be able to change states in a paused process and it should resume."

Not sure which would be better coding wise, but having it disabled would also work, but click and resume would fit your GUI better and be better for me.


The issue with closing the Process in a "Paused" state after clicking a different State would be illiminated if the Process resumed on the Clicked State.
User avatar
oakbarn
Posts: 846
Joined: Thu Jan 05, 2012 2:28 pm
Bot?: No
Location: Texas
Contact:

Re: Public Beta 4.0 Beta 2 Issues

Post by oakbarn »

JonW wrote: As for the ladder logic, you didn't include any conditions in front of the process. What did you expect to happen? /RANT
I expected nothing to happen. Trying to Actively KIll a "Process" or "Out" with the Ladder Logic as the Last Coil (NC) is not something one would generally want to do because of the way the Ladder Logic works from what I see.

A much better soultion is to set a condition to Assert as "Process" or "Out" and then kill by the condition not being TRUE.

I was trying to kill a "Process". As soon as you put an NC "Process" or NC "Out" is the last Coil position, unless all the Conditions to the left are TRUE, the Coil is Asserted.

The Wiki says:
"Processes. When Processes are in the Coil location, they can either be spawned (NO) or killed (NC)." THis is what I was trying to do. (Kill NC)

Any NC Coil asserts unless all of the wires and contacts are filled in and are TRUE.

As I said, if I had been hooked up to my brewery, a pump would started as soon as I put the NC Process in the last coil. Basically I was going to Kill the Process with a DIN. I have figured out a way to do it, but having the NC Process in the coil is not the way to do it.

I am not sure that there is any use for an NC Coil.
ll2.png
ll2.png (22.01 KiB) Viewed 6710 times
As you can see, Proc 2 and 3 are asserted as well as Out 0. Rung 0 to 2 are all filled in. Rung 3 is missing a wire.
brahn
Posts: 543
Joined: Thu Dec 13, 2012 11:01 am
Bot?: No

Re: Public Beta 4.0 Beta 2 Issues

Post by brahn »

The documentation is correct, putting an NC process in the coil slot allows you to use ladder logic to stop the process. That also means that the process will be running if your condition is not met. That's how the ladder logic works. I can think of cases where this might be useful. For example, if your BCS controls fermentation you can be sure that your process is always running but still have a way to stop the process via DIN if you wanted.
JonW
Site Admin
Posts: 1726
Joined: Sun Jul 18, 2010 7:51 am
Bot?: No
Location: Huntington Beach, CA
Contact:

Re: Public Beta 4.0 Beta 2 Issues

Post by JonW »

To add to what Brent said above, that is how ladder logic works.... Think about what is meant by the term "coil". What is a coil? It's a relay.... Think of your ladder logic rungs as wiring and relays. If you have a N/C relay with something wired up to it, it will be turned on by default since the relay has normally closed contacts. You must then energize the relay to break the circuit to turn it off. The ladder logic is the same way. With an N/C coil in the last slot, it is on because nothing is wired up to it to turn it off.
Post Reply