Real-time interrupt driven PC control system for a storage and retrieval machine
First Claim
1. A method of controlling a storage and retrieval machine in event driven fashion, the method comprising:
- (A) providing said storage and retrieval machine with a horizontally movable base, a vertically movable carriage, and a microprocessor-based control system that controls movement of said base and said carriage of storage and retrieval machine, said microprocessor-based control system including a motion controller, a machine control task, an input/output interface, an input/output task, and at least one microprocessor that executes said machine control task and said input/output task;
(B) issuing a plurality of interrupts to said machine control task in response to events which occur in an operating environment of said storage and retrieval machine, at least some of plurality of interrupts being issued by said motion controller, and at least some of plurality of interrupts being issued by said input/output task in response to input signals from sensors received at said input/output interface; and
(C) responding to said interrupts, said responding step including the steps of(1) receiving said plurality of interrupts at said machine control task, and(2) executing at least one subroutine in response to the reception of each interrupt, said execution of said subroutines controlling movement of said base and said carriage of said storage and retrieval machine, and said executing step including the step of providing information to said motion controller which enables said motion controller to cooperate with base and hoist servo motors of said storage and retrieval machine to deliver said carriage to a next rack location;
wherein movement of said base and said carriage of said storage and retrieval machine (1) is substantially entirely controlled by issuing and responding to said interrupts in steps (B) and (C) as different events occur in said operating environment that cause said interrupts to be issued and (2) is controlled in a manner which is substantially free of polling by said machine control task of said input/output interface and said motion controller for status information.
1 Assignment
0 Petitions
Accused Products
Abstract
An event-driven control system controls movement of a base and carriage of a storage and retrieval machine. The control system is microprocessor-based and includes a motion controller, a machine control task, an input/output interface, an input/output task, and a microprocessor that executes the machine control task and the input/output task. In operation, a plurality of interrupts is issued to the machine control task in response to events which occur in an operating environment of the storage and retrieval machine. To respond to the interrupts, at least one subroutine in response to the reception of each interrupt. The execution of the subroutines controls movement of the base and the carriage of the storage and retrieval machine. Movement of the base and the carriage of the storage and retrieval machine (1) is substantially entirely controlled by issuing and responding to the interrupts as different events occur in the operating environment that cause the interrupts to be issued. As a result, the storage and retrieval machine is controlled in a manner which is substantially free of polling by the machine control task of the input/output interface and the motion controller for status information. Since the control system does not have to constantly monitor the status of input/output information from the input/output interface and the status of motion control information from the motion controller, the efficiency of the control system is greatly improved.
-
Citations
22 Claims
-
1. A method of controlling a storage and retrieval machine in event driven fashion, the method comprising:
-
(A) providing said storage and retrieval machine with a horizontally movable base, a vertically movable carriage, and a microprocessor-based control system that controls movement of said base and said carriage of storage and retrieval machine, said microprocessor-based control system including a motion controller, a machine control task, an input/output interface, an input/output task, and at least one microprocessor that executes said machine control task and said input/output task; (B) issuing a plurality of interrupts to said machine control task in response to events which occur in an operating environment of said storage and retrieval machine, at least some of plurality of interrupts being issued by said motion controller, and at least some of plurality of interrupts being issued by said input/output task in response to input signals from sensors received at said input/output interface; and (C) responding to said interrupts, said responding step including the steps of (1) receiving said plurality of interrupts at said machine control task, and (2) executing at least one subroutine in response to the reception of each interrupt, said execution of said subroutines controlling movement of said base and said carriage of said storage and retrieval machine, and said executing step including the step of providing information to said motion controller which enables said motion controller to cooperate with base and hoist servo motors of said storage and retrieval machine to deliver said carriage to a next rack location; wherein movement of said base and said carriage of said storage and retrieval machine (1) is substantially entirely controlled by issuing and responding to said interrupts in steps (B) and (C) as different events occur in said operating environment that cause said interrupts to be issued and (2) is controlled in a manner which is substantially free of polling by said machine control task of said input/output interface and said motion controller for status information. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9)
-
-
10. A storage and retrieval machine comprising:
-
(A) a base, said base being movable in a horizontal direction; (B) a base servo drive, said base servo drive being coupled to a base motor and to said base; (C) a carriage, said carriage being movable in a vertical direction; (D) a hoist servo drive, said base hoist drive being coupled to a hoist motor and to said carriage; (E) a plurality of interrupt devices, including (1) an input/output interface, said input/output interface being coupled to a discrete sensor, and said input/output interface generating an input/output interrupt in response to a change in a state of said discrete sensor, (2) a motion controller, said motion controller being coupled to said base servo drive and said hoist servo drive, and said motion controller generating a motion control interrupt in response to an event relating to at least one of said base and hoist motors, and (3) a timer, said timer issuing a timer interrupt in response to an expiration of a predetermined time period, said expiration indicating that a storage and retrieval machine movement has not been completed within said predetermined time period; (F) a machine control task executed by at least one microprocessor, said machine control task controlling movement of said base in said horizontal direction and of said carriage in said vertical direction, said machine control task including (1) a plurality of interrupt inputs coupled to said plurality of interrupt devices means thereby permitting said machine control task to receive said input/output interrupt, said motion control interrupt, and said timer interrupt, (2) a plurality of interrupt service routines including (a) an input/output interrupt service routine which is executed in response to a reception of said input/output interrupt by said machine control task, (b) a motion control interrupt service routine which is executed in response to a reception of said motion control interrupt by said machine control task, (c) a timer interrupt service routine which is executed in response to a reception of said timer interrupt by said machine control task, and wherein said movement of said base in said horizontal direction and said movement of said carriage in said vertical direction (1) is substantially entirely controlled by the execution of said plurality of interrupt service routines and (2) is controlled in a manner which is substantially free of polling by said machine control task of said input/output interface and said motion controller for status information. - View Dependent Claims (11, 12, 13, 14, 15)
-
-
16. A method of controlling a storage and retrieval machine in event driven fashion, the method comprising:
-
(A) providing said storage and retrieval machine with a horizontally movable base, a vertically movable carriage, and a microprocessor-based control system, said microprocessor-based control system further including a motion controller, a machine control task, an input/output interface, an input/output task, a memory that is accessible by both said machine control task and said input/output task, and at least one microprocessor that executes said machine control task and said input/output task; (B) determining that an interrupt has been issued to said machine control task, said interrupt indicating that an event has occurred in the operating environment of said storage and retrieval machine; (C) determining an event-type of the event that occurred in the operating environment of said storage and retrieval machine; (D) responding to the event that occurred in the operating environment of said storage and retrieval machine, including updating output devices by transmitting output information to said output devices using said input/output interface and said input/output task, the updating step including the steps of (1) transmitting said output information from said machine control task to said memory that is accessible by both said machine control task and said input/output task, (2) issuing a machine control interrupt to said input/output task, the issuing step (D)(2) being performed by said machine control task; (3) receiving output information from said memory that is accessible by both said machine control task and said input/output task, the receiving step (D)(3) being performed by said input/output task, (4) transmitting said output information from said input/output task to said input/output interface, and (5) transmitting said output information from said input/output interface to an output device; (E) wherein said machine control task responds to input events and to motion control events; (F) wherein said input events each include the following steps, which are performed by said input/output interface and said input/output task, (1) receiving input information from a sensor at said input/output interface, (2) transmitting said input information from said input/output interface to said input/output task, (3) transmitting said input information from said input/output task to said memory that is accessible by both said machine control task and said input/output task, and (4) issuing an input interrupt to said machine control task, the issuing step (F)(4) being performed by said input/output task in response to determining that input information has changed; (G) wherein said motion control events each include the step of issuing a motion control interrupt to said machine control task, the issuing step (G) being performed by said motion controller at least when motion of said base is initiated, when motion of said carriage is initiated, when motion of said base is terminated, and when motion of said carriage is terminated. - View Dependent Claims (17, 18, 19, 20, 21, 22)
-
Specification