-
Posts
3,276 -
Joined
-
Last visited
-
Days Won
239
Content Type
Profiles
Forums
Gallery
Events
Blogs
Downloads
Articles
Media Demo
Posts posted by Flex727
-
-
2 minutes ago, Cam said:
Also you'd only want the read bit to be pulsed not on constantly.
I don't believe there is any problem with reading a Data Table row on every PLC cycle.
-
In addition to what Joe said, I'll also note that a 20 character string will need to be placed into a vector of 10 MIs.
-
Personally, I'm not certain of the order of events when you get into that much detail. I think it takes several cycles to get an HMI screen fully displayed, so not sure when the "Is Displayed" bit turns on or off. However, a positive transition of the button press should only be on for one PLC cycle so it shouldn't matter. Maybe the button is bouncing a bit? Try putting a timer on the button press so that it can't activate again for a tenth of a sec or so.
-
3 minutes ago, JuanArg said:
One question, are the display jumps processed after the plc cycle is finished?
Yes. Here is the comment you were looking for (credit @cantcliff): http://forum.unitronics.com/topic/3579-some-noob-questions/?tab=comments#comment-12994
- Read physical inputs and map to memory
- Run the ladder logic. Scans left to right, top to bottom.
- Write physical outputs
- Updates HMI
- Communications
-
Agreed, @sgull. But, as in UniLogic, is there a built-in RESET on the next PLC cycle which would activate the transition contact again?
-
@Ausman, did you see this in the Version Changes notes for 9.8.64?
"VisiLogic and other software utilities are now set to "Run as Admin".
-
1 minute ago, sgull said:
check that you are using a positive transition contact of F1 and not just a normal contact
If he is using the Jump Condition Table on the HMI, there is no ladder logic associated with the screen jump.
-
I almost never use the Jump Condition Table for display navigation because in complex projects I will invariably end up adding a screen navigation button to a display and forget to add the corresponding jump condition. I have a subroutine where I handle every HMI screen jump in ladder so that I can repeat navigation button addresses without needing to add jump conditions.
With external keys it can be a bit more complicated. In that situation I will have an "Is Displayed" operand for each screen and use a direct contact of that bit along with a positive transition of the function key to navigate to the correct screen. Try that and see if it fixes your problem.
-
On 7/20/2017 at 10:39 AM, Joe Tauser said:
I did use 9.8.64. I'll inform the Creators about the reverse compatibility issue.
What was the response? I just tried to open another project created in 9.8.64 and it wouldn't open in 9.8.31 (notified me that it was created with database 153 vs database 152 for 9.8.31). I see that the VisiLogic version available online still says 9.8.64. I tried to open @Joe Tauser's Stopwatch program again with 9.8.31 and it opens fine. Are there now 2 versions of VisiLogic 9.8.64 floating around, one using database 152 and one using database 153?
-
It would help to see the rest of your code, but clearly as soon as MB 3 turns off, O 2 will turn on. You will need logic that is a bit more complex to handle your objective. I would set up something akin to a State Machine where you have bits that are Set and Reset according to which tank is the active tank with logic that switches them according to your needs.
Additional comments:
1) You should use a Positive Transition of MB 1 to Reset MB 10, MB 11, & MB 12 and place that in a separate rung from the rest of the O 2 coil logic.
2) Do NOT place separate logic threads in the same ladder rung. The thread with SB 1 - MB 16 - TD 2 should be in a separate rung (and you do not need SB 1 there).
3) You do not need the inverted contact of MB 1 after MB 10 - they are already mutually exclusive.
4) Need more details of how you switch between Automatic and Manual modes. As shown above, it is impossible for logic to switch out of automatic mode (see #1 above).
-
4 hours ago, PeterFukt said:
Does this application work with the Samba PLC as well?
Samba has certain memory operand address limitations. The program would not work as is, but if all the operand addresses were moved (take care with vectors!) to within the address space of the Samba, then the ladder logic and screens could be copied to a Samba program.
Better yet, endeavor to understand the operation of Joe's program and re-create it in your Samba program to meet your specific needs.
-
13 hours ago, Ausman said:
Joe is nearly always spot on. I don't know what the forum would be without him!
+1
-
There is a filter built-in to the Hardware Configuration for the sensor input. In addition, there are filter Function Block options available under the Function Block (FB) drop down menu when in ladder view.
-
Thermocouple inputs normally have an implied decimal point to give you a reading in tenths of a degree. Either display the value using the implied decimal, or divide by 10 to get an integer value.
There are filters available to help stabilize the temperature reading, if needed.
-
2 hours ago, ScottRyan said:
in my main routine I was calling sub 1, sub 2, ret. In Sub 1 I was calling sub 2, ret. In Sub 2 I was calling sub 1, ret. I removed the calls in sub 1 and sub 2 but left RET. It now works. I am guessing this put it into a continuous loop and then error..? Any insights would be great.
Why were you doing this?
-
Just have a 24 hour timer which increments a "Days" counter (or integer operand).
Or if your display must be in hours, then a 60 minute timer that increments an "Hours" counter (or integer operand).
-
I'm thinking the "Project Navigation Tree" is the left-hand pane with the HW Configuration, Ladder, HMI, Alarms, Trends, String Library, etc.
-
Your problem looks similar to this one:
http://forum.unitronics.com/topic/4803-samba-hmi-text-objects-invisible/ -
You can find the resolution of the PLCs on the Unitronics website, or just position your cursor in the lower right corner of the VisiLogic HMI programming screen to read it off directly. The problem you're encountering is because Samba has smaller memory operand space. You cannot have more than 512 MBs, 256 MIs, or 32 MLs, DWs, & Timers. If you have fewer than this number, try moving all the operands to addresses less than those numbers.
-
It's going to depend on the resolution of the two PLCs. If they're both the same, then it's very straightforward, but if the resolution of the Vision PLC is higher, then you're going to have to do some work. Unfortunately, it will require manually placing all the elements if the two PLCs have different resolutions.
-
I recommend posting your program here, but the only thing I can think of off the top of my head is that the subroutine is causing a Watchdog Timer error.
-
Interesting! Have you confirmed the STL is correctly encoded for this type of structure?
-
I have a customer that, due to an accident, has a V1210 with a shattered screen. Does anyone know if this can be repaired (economically)?
-
Is the V1040 Socket 2 set up as a TCP/IP Slave? Is there a ScanEX function block being executed on every PLC scan? Check the Ethernet-related System Bits SB 141-SB 158 and the System Integers SI 141-SI 148 while online with the PLC to see if there is anything out of order.
When you pinged, did you ping to Port 502?
How to use Data Table Read Row/ Column
in Vision & Samba PLC + HMI Controllers & VisiLogic Software
Posted
With just a quick glance, you are not allocating a vector of 10 MIs to your Recipe Name Read Row FB and overwriting your integer. (Recipe Addition subroutine, ladder rung 3)