GB2272314A - Control sequencer in an Iconic Programming System - Google Patents

Control sequencer in an Iconic Programming System Download PDF

Info

Publication number
GB2272314A
GB2272314A GB9322768A GB9322768A GB2272314A GB 2272314 A GB2272314 A GB 2272314A GB 9322768 A GB9322768 A GB 9322768A GB 9322768 A GB9322768 A GB 9322768A GB 2272314 A GB2272314 A GB 2272314A
Authority
GB
United Kingdom
Prior art keywords
transaction
list
iconic
assigning
expression
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
GB9322768A
Other versions
GB2272314B (en
GB9322768D0 (en
Inventor
Randy L Bailey
Douglas C Beethe
James P Armentrout
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
HP Inc
Original Assignee
Hewlett Packard Co
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Hewlett Packard Co filed Critical Hewlett Packard Co
Publication of GB9322768D0 publication Critical patent/GB9322768D0/en
Publication of GB2272314A publication Critical patent/GB2272314A/en
Application granted granted Critical
Publication of GB2272314B publication Critical patent/GB2272314B/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/30Creation or generation of source code
    • G06F8/34Graphical or visual programming
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S715/00Data processing: presentation processing of document, operator interface processing, and screen saver display processing
    • Y10S715/961Operator interface with visual structure or function dictated by intended use
    • Y10S715/965Operator interface with visual structure or function dictated by intended use for process control and configuration
    • Y10S715/97Instrumentation and component modelling, e.g. interactive control panel

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Debugging And Monitoring (AREA)

Abstract

An iconic programming system (100, Fig. 1 not shown) provides a sequencer icon 304 to allow a series of operations to be performed, along with the conditions under which the operations are performed. Each operation performed, called a transaction, 310, can be enabled or disabled, 324, or can be enabled by a function within the process. The results of each transaction can be compared to tolerance limits, 318, and alternate subsequent transactions, 320, 322, are processed, based upon whether or not the transaction results fell within the tolerance limits. The output of each transaction can be logged, 330, into a buffer to keep the results for later analysis. The system may be used in programming a series of tests, 312, in a research or manufacturing environment. <IMAGE>

Description

Control Sequence in an Iconic Programming System This invention relates to computer systems and more particularly to Iconic Programming Systems. Even more particularly, the invention relates to transferring programming control within an iconic programming environment to an icon for sequentially processing a series of transactions.
An iconic programming system is a "programming-less" environment where programming is done by connecting graphical images of tools (icons), together with connecting lines, to create an iconic network which represents a software program. The iconic programming system may be used in research and development test environments, or manufacturing environments, where several different electronic instruments are connected to test a system or device, or even a plurality of devices. Programming such a system requires instructions to cause the various instruments to perform desired functions in order to operate as a system.
When an iconic programming system is used, each instrument is represented by a graphical icon, also called a graphical object, and the connections between the instruments are represented by lines between the graphical images. In addition to graphical icons representing instruments in such a system, graphical icons are provided for programming functions, for example looping, IF-THEN statements, etc. By combining instrument and programming icons, a user can create an iconic network involving the programmed operation of several instruments.
Iconic systems are designed to relieve the user of having to program in a traditional programming language to accomplish an operation. Because these systems are designed for a user who is not a professional programmer, they provide only very simple programming functions, such as loops, and do not provide a way for programming a complex operation. Also, because the user of the system is unaware of the specific data types and formats of data being exchanged between the instruments, or other graphical objects within the system, traditional sequential programming is very difficult in prior art iconic systems.
A user of an iconic programming system may have a need to include a more complex program within an iconic network, such as controlling the sequential execution of processes or program segments, for example in the sequencing of tests made to test a product on a production line. Such a program may require programming facilities that are very difficult or cumbersome for an iconic programming environment. When this type of problem arises, as shown below with respect to Fig. 2, it is difficult to create the necessary data flow in prior art iconic systems.
Prior art conventional programming systems using textual languages have been customized to perform control sequencing.
Hewlett Packard's Functional Test Manager (FTM) is an example of a system that provides a spread sheet-like test form for specifying the procedure, limits, and next actions to be taken by tests written in a conventional textual language. Systems of this type, however, do not allow the programmer to make use of the flexibility of graphical programming to specify the individual tests or control over sequencing actions, such as is available in an Iconic Programming Environment.
There is a need in the art then for a system that combines conventional test sequence control in an iconic programming environment. The present invention meets this and other needs.
It is an aspect of the present invention to provide a system that provides a means for including a sequencer within an iconic programming system.
It is another aspect to provide such a means in the form of an iconic device.
The above and other aspects of the invention are accomplished in an iconic programming system that provides a sequencer icon to allow a series of operations to be defined and performed. Each operation performed, called a transaction, can be enabled or disabled, or can be enabled or disabled by a function within the process, for example it might be enabled by a random function to cause it to perform a certain percentage of the time. The results of each transaction can be compared to tolerance limits and different subsequent transactions processed based upon whether the transaction results fell within the tolerance limits. The output of each transaction can be logged into a buffer to keep the results for later analysis.
Each transaction is typically a test of a device, such as in a manufacturing environment. Each transaction, or test, to be performed is described on a single line within the sequencer icon, along with the test's limits, enabling condition, logging control, test cleanup control and logic to determine which test should be performed next.
The above and other aspects, features, and advantages of the invention will be better understood by reading the following more particular description of the invention, presented in conjunction with the following drawings, wherein: Fig. 1 shows a block diagram of a computer system containing the iconic programming process of the present invention; Fig. 2 shows a prior art method of sequencing tests; Fig. 3 shows the sequencer icon of the present invention being used to sequence a series of tests; Fig. 4 shows a flowchart of the process of the sequencer icon within the iconic programming environment; Fig. 5 shows the sequencer icon and illustrates the enabling capability for each test being sequenced; Fig. 6 shows the sequencer icon and illustrates the always execute capability for each test being sequenced; Fig. 7 shows the sequencer icon with logging being used; and Fig. 8 shows a diagram of the results of logging several tests.
The following description is of the best presently contemplated mode of carrying out the present invention. This description is not to be taken in a limiting sense but is made merely for the purpose of describing the general principles of the invention. The scope of the invention should be determined by referencing the appended claims.
Fig. 1 shows a block diagram of a computer system incorporating the present invention. Referring now to Fig. 1, a computer system 100 contains a processing element 102 which connects to the other components of the system through a system bus 104. A keyboard 106 allows a user to input textual data to the system, and a mouse 110 allows a user to input graphical data to the system. A graphics display 108 allows the system to output text and graphical information to the user. A disk 112 is used by the system to store the software of the iconic programming system environment, as well as the user-defined iconic network including the transactions defined within each sequencer icon. A communications interface 114 is used to create a communications network which allows the computer and iconic programming environment to communicate with other computers and other environments. Memory 116 is used to contain the software and user data of the iconic programming environment. A multi-tasking operating system 118 can have a plurality of tasks, also called processes, and the iconic programming process 120, of the presenting invention, executes in one of the tasks of the multi tasking operating system 118.
Fig. 2 shows a prior art method of sequencing tests within an iconic program environment, such as the HP-VEE system manufactured by Hewlett Packard Company, Palo Alto, California. Referring now to Fig. 2, an iconic program, created by a user of the system, is displayed on a video display screen 202, such as the graphics display 108 of Fig. 1. A Note Pad 204 within the display 202 provides a comment for the program and gives an illustration of what the program is designed to accomplish, however, the text within the note pad 204 does not control the program in any way.
When the program starts execution, a test "A", represented by icon 206, performs a testing function within the iconic programming system. The exact test performed by test "A" 206 is not important for illustration of the invention, however, any type of test on an electronic instrument might be performed, or the test could involve only data within the memory of the iconic system. when test "A" 206 completes, its output 208 is connected to the input of an If/Then/Else icon 210. The If/Then/Else icon 210 performs the testing indicated by lines 2-7 of the comment within the Note Pad 204. That is, the If/Then/Else icon 210 tests the output 208 of the test "A" 206 to determine whether the output is greater than 0.1 and also less than 0.2.If the results of test "A" 206 are within this range, a signal is sent to the Log Results icon 212 which causes the results 208 of the test "A" 206 to be logged in into a data area within the system. If the results 208 of test "A" are not within the range specified, a signal is sent to the Cleanup icon 214 which performs a cleanup function, such as placing the device being tested into a known state after the failure of test "A". After Cleanup icon 214 performs its function, a signal is sent through the bottom pin of the Cleanup icon 214 along line 216 through a junction icon 218 to the input of test "D" 220 to cause test "D" to be performed, as illustrated in line 6 of the comment within the Note Pad 204.
If test "A" is successful and its output is within the specified range, the Log Results icon 212 is performed as described above, and then a signal is sent along signal 222 to test "B" icon 224 to cause test "B" to perform, as described in line 8 of the comment within the Note Pad 204. After test "B" completes, its output 226 is sent to a second If/Then/Else icon 228 which tests the results 226 from the test "B" 224, as described in lines 8-13 of the comment within Note Pad 204. If the result 226 from test "B" is greater than zero and less than 1, If/Then/Else icon 228 sends a signal to Log Results icon 230 which stores the result 226 from the test "B" 224.If test "B's" output is not within the specified range, a signal is sent from If/Then/Else icon 228 to Cleanup icon 234 which performs a cleanup function, such as placing the tested device into a known state after the failure of test "B", and then icon 236 displays an error message on the screen to the person running the test.
If test "B" was successful and Log Results icon 230 was called, after performing the logging, icon 230 will send a signal to test "C" icon 238 to perform another test. After test "C" 238 is complete, it will send a signal through Junction icon 218 to test "D" 220. Test "D" 220 is then performed and the results logged with Log Results icon 240.
Fig. 3 shows the sequencer icon of the present invention being used to sequence a series of tests, the same series illustrated above with respect to Fig. 2. Referring now to Fig. 3, the screen output 202 is shown having the Note Pad 204 identical to the Note Pad 204 of Fig. 2. As in Fig. 2, this Note Pad is only a comment and does not direct the functioning of the iconic system. Within the screen 302, a sequencer icon 304, of the present invention, contains a window 306 which lists each of the tests that are to be performed. Each of these tests and other routines that run as a result of the test are shown in the dashed area 312, however, the test shown within dashed area 312 are for illustrative purposes only, and are not normally shown on the screen when the tests are being performed.
Sequencer icon 304 replaces icons 210, 218, 228 and 236 of Fig. 2 as well as all the connecting lines between the icons of Fig. 2, except for the connecting lines leading from icons 205 and 207.
Within the window 306, test "A" 308 is highlighted and the parameters for running this test are shown expanded in window 310.
During processing of the sequencer within the iconic system, window 310 is not visible. Window 310 is used for examining or editing the parameters of any sequencer transaction before processing.
Within the window 310, a function button 314 shows that the actual name for the test is "Test A". A Logging Enabled button 316 shows that logging will be performed in the same manner as the Log Results icon 212 (Fig. 2). Dotted line 318 illustrates the range that will be allowed for the output of test "A", which is the same range as illustrated in Fig. 2 within the If/Then/Else icon 210.
Dotted line 320 illustrates that if the test passes, sequencing will continue to the next line within the window 306, which will run test "B". Dotted line 322 shows that if the test fails "Cleanupl" routine will be called and then sequencing will go to test "D", in the same manner sequencing occurred within Fig. 2.
Fig. 4 shows a flowchart of the program code necessary to perform the functions of the sequencer icon 304. The process for performing the sequencer will be called from the iconic programming process 120 in the manner described above Referring now to Fig. 4, after the process of Fig. 4 is called to process a sequencer icon, control enters at block 402 which gets the first or next transaction within the sequencer, such as, for example, transaction 308 illustrated above with respect to Fig. 3.
Block 404 then determines whether the transaction is enabled, as shown in Fig. 3 with respect to Enabled button 324. If the transaction is not enabled, block 404 transfers to block 410 which determines whether there are additional transactions within the sequencer icon and if there are, block 410 transfers back to block 402 to get the next transaction. After all transactions have been processed, block 410 returns to its caller.
If the transaction is enabled, block 404 transfers to block 406 which evaluates the test expression, by either transferring to an icon to perform the function defined, such as the name of a function illustrated in Fig. 3 with function field 314. Other, conventional, programming functions may also be performed within the iconic programming environment through the test expression.
After performing the function, block 406 transfers to block 408 which determines whether the transaction type, defined by button 326 in Fig. 3, is a test or execute transaction. If the transaction is an execute transaction (illustrated below with respect to Fig. 6), block 408 transfers to block 410 since no testing is required for an execute transaction. If the transaction type is a test type transaction, however, block 408 transfers to block 412 which compares the results of performing the test expression to the range or limit tolerance, such as illustrated above in Fig. 3 with respect to the ranges shown in dotted line 318. Block 414 then determines whether the results are within the range or limit tolerance, which passes the test, and if the test passes, block 414 transfers to block 420 which evaluates the pass expression, such as the expression illustrated by dotted line 320 in Fig. 3. Block 422 then gets the next transaction name from the "If Pass" block, which is the right most block within the dotted line 320 of Fig. 3. Control then goes to block 426.
If the test did not pass the range or limit tolerance, block 414 transfers to block 416 which evaluates the fail expression, such as the expression second from the left within dotted line 322 of Fig. 3. Block 418 then gets the next transaction name from the "If Fail" block, which are the right most two blocks within dotted line 322 of Fig. 3. Control then transfers to block 426. Block 426 determines whether logging has been enabled, for example, the Logging Enabled block 316 of Fig. 3. If logging is not enabled, block 426 transfers back to block 410 to process the next transaction. If logging is enabled, block 426 transfers to block 428 which adds logging information for the test expression to the log output pin of the sequencer block, such as output pin 330 in Fig. 3.Block 430 then determines whether the "log each transaction" box is enabled (this box is not illustrated above in Fig. 3), and if so, transfers to block 432 which evaluates the "log each transaction" expression for the transaction. In either case, control then returns to block 410 to process the next transaction.
Fig. 5 shows a sequencer icon and illustrates the enabling capability for each test being sequenced. Referring now to Fig. 5, an output screen 502 is shown having a sequencer icon 504. Within the sequencer icon 504, several sequence transactions are shown within a window 506. One of these transactions, transaction 508, is highlighted and illustrated within the sequence transaction window 510.
Within the sequence transaction window 510, dotted line 512 illustrates another way the transaction can be enabled. That is, the transaction can be enabled based on the results returned from a function. For example, within the dotted line 512, a random number function is called and if the result of the random number function is less than 0.25, the test will be enabled. This might be used, for example, to run the test 25% of the time, since the result of the random number function will be a value evenly spread between zero and one, thus, less than 0.25 would cause the test to be enabled approximately 25% of the time. Also, the function results need not be compared to a value if the functions returns a value of either true or false. In this case, the sequence transaction will be enabled if the function returns true, and disabled if the function returns false.
In addition to being enabled by the results returned by a function, the sequence transaction can be disabled by the results returned by a function. The "ENABLED IF" button within dotted line 512 can be changed to a "DISABLED IF" which causes the sequence transaction to be disabled if the function returns a value of true.
Another capability for sequence transactions, is shown by the dotted line 514, which illustrates that if the test fails, it can be repeated a number of times.
Fig. 6 shows a sequencer icon and illustrates the always execute only capability for a test being sequenced. This capability would be used for tests "C" and "D" of Figs. 2 and 3.
Referring now to Fig. 6, an output screen 602 shows a sequencer icon 604 having a number of sequence transactions illustrated within the window 605. One of the sequence transactions, transaction 607, is highlighted and better shown within the sequence transaction window 608. This transaction has a transaction type of execute, shown by transaction type button 610.
This transaction type does not perform range or limit tolerance testing, and never produces a logging record.
Fig. 6 also illustrates that a sequencer icon can be performed in the same manner as any other icon within the iconic programming environment. For example, count icon 606 will cause the sequencer icon 604 to be performed ten times, thus the entire set of sequence transactions defined within the sequencer icon 604 will be performed a total of ten times.
Fig. 7 shows the sequencer icon with logging being used.
Referring now to Fig. 7, a screen 702- contains a sequencer icon 704. A window 706 shows the sequencer logging configuration and indicates which type of information will be sent to the collector icon 708 from the logging information collected by the sequencer 704. The window 706 indicates that the name field, pass field, result field, low limit, nominal, high limit, time stamp, and description can be logged. Only the name field, pass field, result field, low limit, nominal and time stamp fields have been selected.
Dotted line 710 surrounds two buttons which indicate that logging will be logged to the specified expression, which is shown as a call to function logtest with this test's result value as a parameter.
Fig. 8 shows a diagram of the results of logging several tests. This diagram shows that data from multiple passes through a sequencer can cause logging information to be stored as a three dimensional structure, which is made available on an output pin of the sequencer (e.g. available to the collector 708 of Fig. 7).
Referring now to Fig. 8, the horizontal (X) dimension of the structure identifies which test was being performed, such as, for example, T1, T2, through T6. The vertical (Y) dimension of the structure indicates the device under test (DUT), such as, for example, DUT1, DUT2, DUT3, etc., where data for each DUT is generated by one execution of the sequencer. The Z dimension of the structure indicates which of the fields is stored for each test within each device under test, such as was indicated in Fig. 7 by window 706. In Fig. 8, the name, pass/fail indicator, result, and time information is stored for each test run for each device under test. By storing information in this manner, the iconic programming process allows a user to perform statistical measurements over several devices and several tests to determine trends.
Having thus described a presently preferred embodiment of the present invention, it will now be appreciated that the aspects of the invention have been fully achieved, and it will be understood by those skilled in the art that many changes in construction and circuitry and widely differing embodiments and applications of the invention will suggest themselves without departing from the spirit and scope of the present invention. The disclosures and the description herein are intended to be illustrative and are not in any sense limiting of the invention, more preferably defined in scope by the following claims.

Claims (20)

1. In an iconic programming system process executing in a computer system, a computer executed method for performing a list of transactions within one icon of said iconic programming system process, said computer executed method comprising the steps of: (a) displaying a sequencer icon having said list of transactions wherein each transaction in said list identifies a tolerance limit, a test expression, 2 pass transaction identifier of a transaction contained within said list, and a fail transaction identifier of a transaction contained within said list, wherein said test expression is either a call to an iconic procedure, a call to a conventional programming process, a mathematical equation, or a variable containing data logged by a previously performed transaction; (b) assigning a top transaction of said list as a current transaction;; (c) performing a test expression of said current transaction; (d) comparing a result of said test expression of said current transaction to said tolerance limit identified in said current transaction; (e) when said result is within said tolerance limit, assigning a transaction identified by said pass transaction identifier to said current transaction; and (f) when said result is outside said tolerance limit, assigning a transaction identified by said fail transaction identifier to said current transaction; and (g) repeating steps (c) through (f) until said list is exhausted.
2. The process of claim I wherein each transaction in said list further comprises a logging flag, and wherein step (c) further comprises the steps of: (cl) when said logging flag defines that logging is requested, after performing said test expression, storing said result in a logging data area.
3. The process of claim 2 wherein said storing comprises the step of calling a function within said iconic programming system to perform said storing.
4. The process of claim 1 wherein each transaction in said list further comprises an enable condition, and wherein step (c) further comprises the step of: (c2) when said enable condition is not met, assigning a next transaction following said current transaction in said list as said current transaction before performing said test expression.
5. The process of claim 4 wherein step (c2) further comprises the step of: (c2a) evaluating an expression within said iconic programming system, and defining said enable condition as met when said expression evaluation results in a value of true, wherein said expression is either a call to an iconic procedure, a call to a conventional programming process, a mathematical equation, or a variable containing data logged by a previously performed transaction.
6. The process of claim 1 wherein each transaction in said list further comprises a disable condition, and wherein step (c) further comprises the step of: (c2) when said disable condition is met, assigning a next transaction following said current transaction in said list as said current transaction before performing said test expression.
7. The process of claim 6 wherein step (c2) further comprises the step of: (c2a) evaluating an expression within said iconic programming system, and defining said disable condition as met when said expression evaluation results in a value of true, wherein said expression is either a call to an iconic procedure, a call to a conventional programming process, a mathematical equation, or a variable containing data logged by a previously performed transaction.
8. The process of claim 1 wherein each transaction in said list further comprises a repeat count for said fail transaction, and wherein step (f) further comprises the step of: (f2) when said result is outside said tolerance limit, incrementing a fail count; (f3) when said fail count is less than or equal to said repeat count, repeating steps (c) through (f); and (f 3) when said fail count is greater than said repeat count, assigning a transaction identified by said fail transaction identifier to said current transaction.
9. The process of claim 1 wherein step (e) further comprises the step of: (el) when said pass transaction contains no transaction identifier, assigning a next transaction following said current transaction in said list as said current transaction.
10. The process of claim 1 wherein step (f) further comprises the step of: (fl) when said fail transaction contains no transaction identifier, assigning a next transaction following said current transaction in said list as said current transaction.
11. In an iconic programming system process executing in a computer system, a computer executed method for performing a list of transactions within one icon of said iconic programming system process, said computer executed method comprising the steps of: (a) displaying a sequencer icon having said list of transactions wherein each transaction in said list comprises an enable condition, a test expression, a tolerance limit, a pass transaction identifier that identifies a transaction contained within said list, and a fail transaction identifier that identifies a transaction contained within said list, wherein said test expression is either a call to an iconic procedure, a call to a conventional programming process, a mathematical equation, or a variable containing data logged by a previously performed transaction;; (b) assigning a top transaction of said list as a current transaction; (c) when said enable condition is not met, assigning a next transaction following said current transaction in said list as said current transaction and repeating step (c).
(d) performing a test expression of said current transaction; (e) comparing a result of said test expression to said tolerance limit identified for said current transaction; (f) when said result is within said tolerance limit, assigning a transaction identified by said pass transaction identifier to ~said current transaction, and (g) when said result is outside said tolerance limit, assigning a transaction identified by said fail transaction identifier to said current transaction; and (h) repeating steps (c) through (g) until said list is exhausted.
12. The process of claim 11 wherein each transaction in said list further comprises a logging flag, and wherein step (d) further comprises the steps of: (dl) when said logging flag defines that logging is requested, after performing said test expression, storing said result in a logging data area.
13. The process of claim 12 wherein said storing comprises the step of calling a function within said iconic programming system to perform said storing.
14. The process of claim 11 wherein step (c) further comprises the step of: (cl) evaluating an expression within said iconic programming system, and defining said enable condition as met when said expression evaluation results in a value of true, wherein said expression is either a call to an iconic procedure, a call to a conventional programming process, a mathematical equation, or a variable containing data logged by a previously performed transaction.
15. The process of claim 11 wherein each transaction in said list further comprises a repeat count for said fail transaction, and wherein step (g) further comprises the step of: (g2) when said result is outside said tolerance limit, incrementing a fail count; (g3) when said fail count is less than or equal to said repeat count, repeating steps (c) through (f); and (g3) when said fail count is greater than said repeat count, assigning a transaction identified by said file transaction identifier to said current transaction.
16. The process of claim 11 wherein step (f) further comprises the step of: (fl) when said pass transaction contains no transaction identifier, assigning a next transaction following said current transaction in said list as said current transaction.
17. The process of claim 11 wherein step (g) further comprises the step of: (gl) when said fail transaction contains no transaction identifier, assigning a next transaction following said current transaction in said list as said current transaction.
18. An iconic programming system process substantially as herein described with reference to Fig. 1 and Figs. 3 to 8 of the accompanying drawings.
19. An iconic programming system employing a process according to any preceding claim.
20. An iconic programming system substantially as herein described with reference to Fig. 1 and Figs. 3 to 8 of the accompanying drawings.
GB9322768A 1992-11-10 1993-11-04 Control sequencer in an iconic programming system Expired - Fee Related GB2272314B (en)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US07/974,860 US5437007A (en) 1992-11-10 1992-11-10 Control sequencer in an iconic programming system

Publications (3)

Publication Number Publication Date
GB9322768D0 GB9322768D0 (en) 1993-12-22
GB2272314A true GB2272314A (en) 1994-05-11
GB2272314B GB2272314B (en) 1997-05-21

Family

ID=25522475

Family Applications (1)

Application Number Title Priority Date Filing Date
GB9322768A Expired - Fee Related GB2272314B (en) 1992-11-10 1993-11-04 Control sequencer in an iconic programming system

Country Status (2)

Country Link
US (1) US5437007A (en)
GB (1) GB2272314B (en)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO1998054587A1 (en) * 1997-05-30 1998-12-03 Sextant Avionique Method and device for testing electronic equipment
WO2007002779A3 (en) * 2005-06-28 2007-10-04 Mathworks Inc Systems and methods for modeling execution behavior
US7725874B2 (en) * 2004-08-13 2010-05-25 National Instruments Corporation Combination structure nodes for a graphical program
US8458655B1 (en) 2004-01-15 2013-06-04 The Mathworks, Inc. Implicit reset

Families Citing this family (39)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5619694A (en) * 1993-08-26 1997-04-08 Nec Corporation Case database storage/retrieval system
US5812133A (en) * 1995-11-01 1998-09-22 Allen Bradley Company, Llc Industrial controller with display of rung execution
US5925108A (en) * 1995-11-03 1999-07-20 Novell, Inc. Event notification in a computer system
US5815154A (en) * 1995-12-20 1998-09-29 Solidworks Corporation Graphical browser system for displaying and manipulating a computer model
US5754426A (en) * 1995-12-29 1998-05-19 Hewlett-Packard Co. Instrument descriptor (ID) monitor system
US6016143A (en) * 1995-12-29 2000-01-18 Hewlett Packard Company Multi-device direct I/O object that generates transactions capable of controlling multiple instruments and transaction dialog boxes having device and address fields
US6094600A (en) * 1996-02-06 2000-07-25 Fisher-Rosemount Systems, Inc. System and method for managing a transaction database of records of changes to field device configurations
US6868538B1 (en) 1996-04-12 2005-03-15 Fisher-Rosemount Systems, Inc. Object-oriented programmable controller
US5940294A (en) * 1996-04-12 1999-08-17 Fisher-Rosemont Systems, Inc. System for assisting configuring a process control environment
US5838563A (en) * 1996-04-12 1998-11-17 Fisher-Rosemont Systems, Inc. System for configuring a process control environment
JP3488019B2 (en) * 1996-06-17 2004-01-19 株式会社山武 How to reuse parts of configuration tool for control design
EP0825506B1 (en) 1996-08-20 2013-03-06 Invensys Systems, Inc. Methods and apparatus for remote process control
US6037944A (en) * 1996-11-07 2000-03-14 Natrificial Llc Method and apparatus for displaying a thought network from a thought's perspective
US6331864B1 (en) * 1997-09-23 2001-12-18 Onadime, Inc. Real-time multimedia visual programming system
US7092837B1 (en) 1998-10-30 2006-08-15 Ltx Corporation Single platform electronic tester
US6449741B1 (en) * 1998-10-30 2002-09-10 Ltx Corporation Single platform electronic tester
US6754885B1 (en) 1999-05-17 2004-06-22 Invensys Systems, Inc. Methods and apparatus for controlling object appearance in a process control configuration system
US7089530B1 (en) 1999-05-17 2006-08-08 Invensys Systems, Inc. Process control configuration system with connection validation and configuration
WO2000070531A2 (en) 1999-05-17 2000-11-23 The Foxboro Company Methods and apparatus for control configuration
US6788980B1 (en) 1999-06-11 2004-09-07 Invensys Systems, Inc. Methods and apparatus for control using control devices that provide a virtual machine environment and that communicate via an IP network
US6618630B1 (en) 1999-07-08 2003-09-09 Fisher-Rosemount Systems, Inc. User interface that integrates a process control configuration system and a field device management system
AU6615600A (en) 1999-07-29 2001-02-19 Foxboro Company, The Methods and apparatus for object-based process control
FI20001340A (en) * 2000-06-05 2002-01-28 Metso Automation Networks Oy A method process control system and a process control system
US7110936B2 (en) * 2001-02-23 2006-09-19 Complementsoft Llc System and method for generating and maintaining software code
US7506256B2 (en) * 2001-03-02 2009-03-17 Semantic Compaction Systems Device and method for previewing themes and categories of sequenced symbols
US7076738B2 (en) * 2001-03-02 2006-07-11 Semantic Compaction Systems Computer device, method and article of manufacture for utilizing sequenced symbols to enable programmed application and commands
US7984423B2 (en) * 2001-08-14 2011-07-19 National Instruments Corporation Configuration diagram which displays a configuration of a system
WO2003089995A2 (en) 2002-04-15 2003-10-30 Invensys Systems, Inc. Methods and apparatus for process, factory-floor, environmental, computer aided manufacturing-based or other control system with real-time data distribution
US7543281B2 (en) * 2002-07-22 2009-06-02 National Instruments Corporation Disabling and conditionally compiling graphical code in a graphical program
US7761923B2 (en) 2004-03-01 2010-07-20 Invensys Systems, Inc. Process control methods and apparatus for intrusion detection, protection and network hardening
US20060161856A1 (en) * 2005-01-20 2006-07-20 International Business Machines Corporation Data collection tool for a computer
RU2008102937A (en) * 2005-06-28 2009-08-10 Эксонмобил Апстрим Рисерч Компани (Us) GRAPHIC LANGUAGE OF HIGH-LEVEL PROGRAMMING AND TOOLS FOR WELL MANAGEMENT PROGRAMMING
US7860857B2 (en) * 2006-03-30 2010-12-28 Invensys Systems, Inc. Digital data processing apparatus and methods for improving plant performance
US20080104525A1 (en) * 2006-10-31 2008-05-01 Agilent Technologies, Inc. Modeless Watch Window in an Iconic Programming System
US20080155354A1 (en) * 2006-12-20 2008-06-26 Kolman Robert S Method and apparatus for collection and comparison of test data of multiple test runs
US7949422B1 (en) * 2007-06-22 2011-05-24 Vermont Machine Tool Corporation Machine tool control system
EP2304536A4 (en) 2008-06-20 2012-08-15 Invensys Sys Inc Systems and methods for immersive interaction with actual and/or simulated facilities for process, environmental and industrial control
US8463964B2 (en) 2009-05-29 2013-06-11 Invensys Systems, Inc. Methods and apparatus for control configuration with enhanced change-tracking
US8127060B2 (en) 2009-05-29 2012-02-28 Invensys Systems, Inc Methods and apparatus for control configuration with control objects that are fieldbus protocol-aware

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO1991006050A1 (en) * 1989-10-17 1991-05-02 Applied Biosystems, Inc. Robotic interface
EP0508632A2 (en) * 1991-04-12 1992-10-14 Hewlett-Packard Company Wait for service request in an iconic programming system

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4914568A (en) * 1986-10-24 1990-04-03 National Instruments, Inc. Graphical system for modelling a process and associated method
US5291587A (en) * 1986-04-14 1994-03-01 National Instruments, Inc. Graphical system for executing a process and for programming a computer to execute a process, including graphical variable inputs and variable outputs
US4901221A (en) * 1986-04-14 1990-02-13 National Instruments, Inc. Graphical system for modelling a process and associated method
JPH03202903A (en) * 1989-12-28 1991-09-04 Sumitomo Chem Co Ltd Sequence generation method for industry process
US5253158A (en) * 1990-04-23 1993-10-12 Matsushita Electric Industrial Co., Ltd. Apparatus for supporting the development of sequence software to be used in automated equipments, and method thereof
US5313574A (en) * 1990-06-13 1994-05-17 Hewlett-Packard Company Method for starting processing of an iconic programming system
US5313575A (en) * 1990-06-13 1994-05-17 Hewlett-Packard Company Processing method for an iconic programming system
US5301301A (en) * 1991-01-30 1994-04-05 National Instruments Corporation Polymorphic dataflow block diagram system and method for programming a computer
US5377318A (en) * 1991-02-28 1994-12-27 Hewlett-Packard Company Line probe diagnostic display in an iconic programming system
US5293476A (en) * 1991-03-12 1994-03-08 Hewlett-Packard Co. System for entering and modifying variable names for terminals of icons in an iconic programming system
US5261043A (en) * 1991-03-12 1993-11-09 Hewlett-Packard Company Input and output data constraints on iconic devices in an iconic programming system
US5251159A (en) * 1991-03-20 1993-10-05 Vlsi Technology, Inc. Circuit simulation interface methods

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO1991006050A1 (en) * 1989-10-17 1991-05-02 Applied Biosystems, Inc. Robotic interface
EP0508632A2 (en) * 1991-04-12 1992-10-14 Hewlett-Packard Company Wait for service request in an iconic programming system

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO1998054587A1 (en) * 1997-05-30 1998-12-03 Sextant Avionique Method and device for testing electronic equipment
FR2764072A1 (en) * 1997-05-30 1998-12-04 Sextant Avionique TEST METHOD AND DEVICE FOR ELECTRONIC EQUIPMENT
US8458655B1 (en) 2004-01-15 2013-06-04 The Mathworks, Inc. Implicit reset
US7725874B2 (en) * 2004-08-13 2010-05-25 National Instruments Corporation Combination structure nodes for a graphical program
WO2007002779A3 (en) * 2005-06-28 2007-10-04 Mathworks Inc Systems and methods for modeling execution behavior
US8683426B2 (en) 2005-06-28 2014-03-25 The Mathworks, Inc. Systems and methods for modeling execution behavior
US8924925B2 (en) 2005-06-28 2014-12-30 The Mathworks, Inc. Systems and methods for modeling execution behavior

Also Published As

Publication number Publication date
GB2272314B (en) 1997-05-21
US5437007A (en) 1995-07-25
GB9322768D0 (en) 1993-12-22

Similar Documents

Publication Publication Date Title
US5437007A (en) Control sequencer in an iconic programming system
US5325481A (en) Method for creating dynamic user panels in an iconic programming system
US6425121B1 (en) Method and apparatus for resolving divergent paths in graphical programming environments
US6684385B1 (en) Program object for use in generating application programs
US7340721B1 (en) Program-development environment for use in generating application programs
US6425120B1 (en) Repeating program object for use with a graphical program-development system
US6275954B1 (en) Method and apparatus for analyzing data
US4972328A (en) Interactive knowledge base end user interface driven maintenance and acquisition system
US5261043A (en) Input and output data constraints on iconic devices in an iconic programming system
US6064816A (en) System and method for performing class propagation and type checking in a graphical automation client
US5784275A (en) System and method for performing interface independent virtual instrumentation functions in a graphical data flow program
US5377318A (en) Line probe diagnostic display in an iconic programming system
US5748878A (en) Method and apparatus for analyzing software executed in embedded systems
US6868508B2 (en) System and method enabling hierarchical execution of a test executive subsequence
JP4188684B2 (en) Processing web for data processing on digital oscilloscopes or similar equipment
US5852564A (en) Method and apparatus for interactively displaying signal information during computer simulation of an electrical circuit
US20040031019A1 (en) Debugger for a graphical programming environment
US20080109785A1 (en) Graphical Program Having Graphical and/or Textual Specification of Event Handler Procedures for Program Objects
EP0529844A2 (en) Method and apparatus for deriving object type and obtaining object type attribute values
US5905649A (en) System and method for performing type checking and class propagation of attributes in a graphical data flow program
US20120192158A1 (en) Model Based Verification Using Forward and Reverse Traversal of Variable Time Line
US5293476A (en) System for entering and modifying variable names for terminals of icons in an iconic programming system
EP0463732A2 (en) Method and system for animating the execution of a computer program
US7069521B2 (en) Method and apparatus for exploring a multi-element design through user directed selective rendering
US7082599B1 (en) Method and apparatus for detecting and resolving circularflow paths in graphical programming systems

Legal Events

Date Code Title Description
732E Amendments to the register in respect of changes of name or changes affecting rights (sect. 32/1977)
PCNP Patent ceased through non-payment of renewal fee

Effective date: 20081104