Final Report Automated Storage & Retrieval System

2y ago
6 Views
2 Downloads
675.09 KB
52 Pages
Last View : 2m ago
Last Download : 3m ago
Upload by : Nadine Tse
Transcription

University of FloridaDepartment of Electrical and Computer EngineeringEEL 5666Intelligent Machines Design LaboratorySpring 2005Final ReportAutomated Storage & Retrieval SystemInstructors: Dr. A. A. Arroyo & Dr. E. M. SchwartzTAs: William Dubel and Steven PicklesStudent: Albert ChungDate: 04/19/2005

Table of ContentsI.Abstract . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3II.Executive Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4III. Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5IV.Integrated System . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6V.Mobile Platform . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7VI.Actuation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8i.Drive. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8ii.Forkift . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8VII. Sensors. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9i.Bump Sensors . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9ii.IR Photodetectors . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9iii. IR Proximity Detectors . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9iv. IR Remote Control Receiver. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10v.RF 2.4GHz Transceivers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10VIII. Behaviors . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11i.Navigation & Positioning . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1 1ii.Communicating . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11iii. Inventory Tracking & Queuing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12iv. Storing and Retrieving . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12IX. Experimental Layout and Results . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1 3X.Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1 4XI. Sources for Parts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1 5XII. References . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1 6XIII. Source Code . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1 7-2-

I.AbstractLimited floor space in warehouses can hinder the rate of manufacturer production. An economicalsolution is to utilize the vertical space with an efficient Automated Storage and Retrieval System(ASRS) that can regulate the flow of incoming and outgoing products. An ASRS intelligently picksup pallets from a transition dock and traverses a path to the storage shelf, where it places the palletsecurely onto a three tier shelving system. The process can also be reversed. Through RFcommunication and IR remote control input, tasks to retrieve pallets off the shelf for delivery can beaccepted and executed.-3-

II.Executive SummaryWhen it comes down to it, humans make mistakes that can prove to be costly (and even deadly) in awarehouse environment. These devastating errors are eliminated by replacing humans with anautonomous agent: the Automated Storage and Retrieval System, dubbed ASRS. The ASRS comesto life by navigating high contrast lines on the warehouse floor. It moves from dock to dock in theprocess of storing pallets. However, the robust size of the ASRS prevents it from overcoming thewarehousing process by itself. The AGV is a small, elite vehicle that is capable of flying through awarehouse at tremendous speeds and feeding the ASRS with pallets. The brain behind the operationis a high speed PIC microcontroller. It uses five senses to operate with a high level of intelligence:line follower , distance, bump, IR remote control, and RF data link. The feedback from individualsensors is compiled in a central processor, which controls the behavior of the robot through finemotor control.In the crusade to keep warehouse prices down, the ASRS stores an incoming pallet on the firstempty shelf it sees, and its memory modules allow it to remember the location and age of the pallet.The multifunctional robot is also capable of shipping pallets out of the warehouse. It delivers theoldest item to the bottom shelf, where the AGV can pick it up and dispose of it at the outgoingdock. In an attempt to install order, the ASRS processes jobs on a first-in, first-out basis. Advancedbehaviors allow the ASRS to multitask; it can process incoming requests, traverse the warehouse,and command the AGV all in the same time frame.-4-

III. IntroductionModern manufactures have shifted their focus from mass production to selective production insmall quantities. While this allows for greater control over company resources such as cash capitaland raw materials, it puts a large strain on the warehousing division. Companies can no longer relyon large quantities on the shelf to satisfy customer demands, and instead they must move productsquickly off of the factory floor and into the shipping department. There are inherent dangers withsuch a large rush on product movement.The first and most important risk a business takes is personal injury. Warehouse floors quickly turninto suburban battle grounds as the work day progresses. Although wide isles can accommodateforklifts operating side by side, there is little margin for error. Gone are the days of small, dirt floorwarehouses; modern multimillion dollar facilities measure their warehouse floor in acres. Wideraisles have an inverse affect on warehouse utilization. In addition, human error naturally results inproducts being misplaced, which can add a tremendous overhead to shipping times.All of these issues are solved with the introduction of an autonomous vehicle, the AutomatedStorage and Retrieval system. Because the ASRS can quickly and efficiently store pallets in verynarrow aisles, costs are kept down by reducing the square acreage of the warehouse. Standardhazards in the warehouse can be avoided with sensory perception. However, the greatest attributeof the ASRS is its lack of direct human contact. It is capable of handling all aspects of thewarehouse: including shipping, receiving, and remembering which jobs it has and has not completed.The ASRS will add an immense amount of value to any company’s warehousing operation.-5-

IV.Integrated SystemA Pic18F8720 microcontroller controls of the functions of the ASRS. The 8720 includes 128kB ofprogrammable memory, 3840B of SRAM, 1kB of EEPROM and has more than enough data portsthat will be required for this project. There are 16 10-bit ATD converter channels of which 6 areused for the four line follower sensors and two proximity detectors, 5 PWM channels to control themotor drivers, two UARTs for barcode data transmission and for the RF link, and also two 8-bittimers and 3 16-bit timers. Three of the four external interrupt pins are being used for the IRreceiver for remote control input, RF data ready flag, and high priority fork limit switch. EightNiMH batteries provide 9.6V to power the 5V and 3.3V regulators and the motors.All of the software was written in C in modular structure and compiled using the MPLab v7 IDEand MPASM. The functions for the motors, LCD, analog to digital converter, navigation, RF datalink, and behaviors were coded independently and tested before integration.LCDRF Tx/RxPIC 18F8720IR ProximityDetectorsIR RxPowerRegulatorMotor DriversFigure 1IR LineFollowerCircuitry Layout-6-

V.Mobile PlatformThe circuitry and motors are encased in a durable platform constructed of thin craft plywood. Theplatform was designed to address a top heavy mass when fully loaded with a pallet. To counter theweight I placed the two motors in the rear, two casters in the front, and the batteries and electronicsin the rear compartment. I began with rough sketches the design that I wanted and then drafted asimilar design in AutoCAD to be used for the T-Tech.Figure 2Mobile Platform-7-

VI. Actuationi. DriveThe ASRS achieves forward and reverse mobility by using two 200rpm 12V DC gear-headmotors to turn dual wheels fitted with 56mm diameter by 24mm wide Tamiya sport tires.The motors were controlled by sending pulse width modulated signals to a JRC Dual HBridge (NJM2670). The motor drivers worked fairly well using the implementation providedin their spec sheet. To reduce the number of PWM outputs required to drive three motors, Imultiplexed two signals from the first driver to the third and selected which drivers tocontrol by setting the enables.I implemented a staircase motor smoothing function to reduce the current spikes ofswitching the motors on and off. This counters the problem of the initial jerk that the ASRSexperienced when switching speeds.One of the problems that I encountered when running the ASRS on the warehouse floor(see plaza.ufl.edu/tskipp/agv asrs) is that the rough, uneven surface of the plywood causesthe ASRS to bounce fairly hard due to the front casters colliding with the edges of thegrooves in the wood. This will force the rear tires to carry all of the weight and stall themotors briefly. At times, it will derail the ASRS from the line causing it to lose its currentposition. This can easily be solved by ensuring that the surface that the robot operates on isas smooth as possible.ii. ForkliftThe forklift is raised and lowered by an additional 200rpm 12V DC gear-head motor turninga 1/2” screw with a pitch size of 13. The screw is 13.5” long and provides up to 12” ofvertical movement. The center of the screw was bored out ¼” in diameter and ¾” deep inorder to attach it to the motor with a set screw. Three quarters of n inch at the opposite endof the screw was milled down to ¼” diameter to allow it to freely rotate inside a sleeve.With the motor turning at full speed, it took less than a minute to travel 12” on a nongreased screw.-8-

VII. Sensorsi. Bump SensorsRear bump sensors serve several primitive functions on the ASRS. Two switches wereplaced on the rear bumper that disables the motors and stops the vehicle when activated. Iwired the switches in parallel between ground and a pull up resistor to 3.3V in order to savean I/O pin on my microcontroller. This was suitable for my purposes since the directionthat the bump occurs is not important. The switched is polled in software whenever theASRS is traveling in reverse.ii. IR PhotodetectorsThe ASRS uses four OPB745 IR emitter/detector pairs to track a line below the below themobile platform. I found that the lowest price for these sensors were at Mouser Electronics(www.mouser.com) for 3.60 per unit. The OPB745 is composed of an IR LED and abipolar junction phototransistor whose output is controlled by incoming infrared lightentering the base terminal. The best orientation of the device is at around a 15º angle abovethe surface pivoted on the phototransistor. About an eighth of an inch clearance providesenough space between the lens and the surface to produce accurate results. I observed thatthat under indoor lighting, a solid white surface would produce a converted analog valuearound 70 to 130 and a black electrical tape surface would produce a value above 230. TheASRS is able to dynamically calibrate the threshold to determine a line at system startup toadjust for the different environmental conditions.iii. IR Proximity detectorsTwo short-range Sharp GPD2D120 IR distance sensors provide forward path vision. Thecheapest place to purchase the sensors is from the Mark III Robot Store (www.junun.org)for 8.25 each and a cable can be purchased for an extra 1.10.I chose the short range sensors rather the long range GPD2D12 sensors due to the tightspaces that the ASRS will be operating in. I didn’t want the robot to be constantly detectingobjects in the distance and mistaking the shelving as an obstruction. With the two sensors-9-

facing forward and crossing paths, I concluded that a value of 80 translated to around 4cm(minimum distance detection) and anything above 70 represents an obstacle fairly close tothe ASRS. When this threshold is reached, the motors are disabled and the ASRS waits untilthe path is cleared.iv. IR Remote Control ReceiverThe ASRS uses a Fairchild Semiconductor infrared detector and a Sony television remotecontrol to receive commands from the user. The sensor and implementation is discussed indetail by Trevor Skipp in his Special Sensor Report which can be found athttp://plaza.ufl.edu/tskipp/agv asrs/photo sensor.htm.v. RF 2.4 GHz TransceiverThe ASRS uses a Laipac TRF-2.4G RF wireless transceiver to communicate with the AGV.The transceiver uses a Nordic nRF2401 VLSI chip with a 16MHz crystal oscillator and abuilt in dipole antenna.The benefits of the Laipac transceiver over a standard RFreceiver/transmitter pair are the single chip/device operation for bidirectionalcommunication, dual channel operation, hardware Cyclic Redundancy Checksum (CRC)code generation and error checking, and high speed ShockBurst transmission. The latterthree are useful for microcontroller application since they free up processing power requiredto implement a lower level datalink protocol. I purchased two modules from Spark FunElectronics (www.sparkfun.com) for 19.95 each along with two breakout boards that were 0.95 a piece. The transceiver and implementation is discussed in detail in my Special SensorReport which can be found at http://plaza.ufl.edu/tskipp/agv asrs/RF.htm.- 10 -

VIII. Behaviorsi. Navigating & PositioningThe ASRS is capable of traveling from point to point in the warehouse floor and determineits position so long as it maintains on the path. It begins by following closely to the line untilit reaches an intersection at which point it will determine which direction to turn inaccordance to three variables: direction, current x coordinate, and destination lane.TheASRS portion of warehouse floor is constructed as a grid system, with one center line andfive orthogonal lane extensions that lead to the shelving.Figure 3Warehouse Floor & Transition Dockii. CommunicatingThe user can communicate objectives to the ASRS by pressing certain buttons on the remotecontrol. When the channel up button is pressed, it signifies that an incoming pallet hasarrived at the incoming dock. In this case the ASRS looks up an empty location on thetransition dock and notifies the AGV using the RF data link. The input bit and thetransition dock number is sent in the packet. To request a pallet, the channel down button ispressed. The ASRS picks up the next outgoing pallet from the shelf and places it onto thetransition dock. When completed, the ASRS will notify the AGV by sending the output bitand the dock number.- 11 -

iii. Inventory Tracking and QueuingThe ASRS maintains an internal database of the shelves using FIFO inventory. The shelflocations are marked with a 0 if it is empty or a value from 1 to 255 if it is full. Lower valuesare interpreted as being older pallets that need to exit the warehouse first. The database isscanned whenever an incoming or outgoing request has been made and is changedaccordingly whenever pallets enter and leave the shelves.Up to eight concurrent commands can be sent to the ASRS to be completed through theutilization of a queue stack. This allows the ASRS to finish completing its task beforeinitiating another. It also allows it to wait in idle mode when there are no objectives present.iv. Storing and RetrievingThe ASRS can store pallets onto different levels using the forklift mechanism discussedunder actuation. The different heights are determined by raising or lowering the fork andpolling a roller lever switch situated at the height of the shelf behind the fork. This producesvery accurate results with no calibration required. Using the switches allows the ASRS topick up a realistically scaled pallet which has a half inch fork clearance.- 12 -

IX. Experimental Layout and ResultsEach sensor was tested to determine the functionality and operating conditions of the device. TheOPB745 line following sensors gave repeatable values under low light conditions. The results for awhite and black surface differed enough to interpret the line accurately. Some measurements usingthe analog to digital converter are given in Table 1.Left IRMid Left IRMid Right IRRight 25224323423366687374207222217230Table 1OPB745 MeasurementsTo test the RF module, I wrote a small routine to increment a counter and send it to anothermicrocontroller without additional error checking protocols.The number of correctly andincorrectly received values were recorded for varying distances. The results are shown below inTable 2. Even at short range operation, the system integrity isn’t very high. Several packets werelost during transmission and some random values were also received. This is likely due to the noisein the communication channel caused by several other household devices (802.11, microwaves,cordless phones, etc) operating at the same frequency. The results confirm that a software protocolmust be implemented to retransmit lost packets.Distance (ft)357911Number of Missed Packets27274Table 2Number of Correctly Sent Packets254249254249252% Error0.781252.7343750.781252.7343751.5625RF Experiment Results- 13 -

IX. ConclusionThe ASRS performs extremely well under low light conditions since it utilizes several variousinfrared sensors. Under heavy sunlight the IR remote control receiver will pick up short pulses andcontinuously interrupt the microcontroller and cause it to lock up in the interrupt routine. This wasfrustrating since it took a lot of time to figure out why it stopped working in the middle of someroutines. This can be fixed by using another small microcontroller to handle the IR and send outthe received value to the main microcontroller.Another problem that I encountered was that the ASRS had to be assisted with placing the palletcorrectly on the fork. The forks do not extend far enough to support the rear of the pallet, causingthe pallet to become unbalanced and tip backward. This can be changed by simply using a longerfork.Problems also surfaced when I tried to integrate the Stop and Wait ARQ to the RF data link. Thesoftware worked independently but did not work in coherence with the other behaviors. I decidedto use parity checking with a header attached to the packet which eliminated most of the randompackets that were picked up from noise. The source code for the RF Stop and Wait ARQ isincluded in the CD accompanying this report.In the end, all the goals set forth by this project were met. The ASRS and AGV operate togetherbetter than I had imagined; although the ASRS is a bit slower than I anticipated. Along with theslow ASRS operation, the current warehouse causes the AGV to be underutilized. There are onlyfive transition dock locations that the AGV can manipulate and it fills up too quickly before theASRS can remove the pallets. The main problem to consider is the forklift mechanism. I think thata pulley system would reduce the travel time of the fork tremendously and speed up the operation.- 14 -

XI. Sources for PartsPIC18F8720 Development Board:www.digikey.comPrice: 37.00 eachLED Backlit 16x2 LCD Display:www.junun.orgPrice: 8.50 eachJRC Dual H-Bridge NJM2670www.mouser.comPrice: 2.61 each200RPM 12V Gear-head Motorwww.jameco.comPrice: 21.95 eachOmni-Directional Metal Casterswww.sparkfun.comPrice: 4.95/pairTamiya 2.2” Sport Tireswww.sparkfun.comPrice: 5.95/pairPush Button Switches:IMDL LabPrice: FreeRoller Lever Switches:Radio ShackPrice: 2.50 each (cheaper at Jameco 1.25)OPB745 IR Emitter/Detector Pairs:www.mouser.comPrice 3.60 eachSharp GPD2D12 Distance Measuring Sensors:www.junun.orgPrice: 8.25 each ( 1.10 for a cable)- 15 -

XII. ReferencesMicrochip PIC18F8720 viceDoc/39609b.pdfOptek OPB745 C Dual H-Bridge NJM2670 ordic Semiconductor nRF2401 F2401rev1 1.pdfSharp GPD2D120 GP2D120.pdfLaipac TRF-2.4G -24G datasheet.pdfSteven Pickles’ Final Reporthttp://www.mil.ufl.edu/imdl/papers/IMDL Report Spring 04/pickles steven/kirby.pdfWilliam Dubel’s Reliable Line Tracking - 16 -

XIII. Source *************** AUTOMATED STORAGE & RETRIEVAL SYSTEM**** EEL5666 Intelligent Machines Design Laboratory** University of Florida** Written for the PIC18F8720 @ 20 MHz** Copyright (2005) Albert Chung e#pragma#pragma#pragma#pragma p18f8720.h delays.h stdio.h av.h""asrs.h"configconfigconfigconfigOSC HSWDT OFFLVP ONMODE MC#define rear bump PORTBbits.RB4void main(void){unsigned char i;DDRD 0x00;DDRB 0xFF;DDRH 0x00;DDRC DDRC & 0b11111011;DDRG DDRG & 0b11100110;DDRE DDRE 0b01111100;PWM Init();Motors(0,0);LCD Init();sprintf(message, "UPDATE LCD;:::ASRS:::Press Rear Bump");Init Fork Limit IRQ();Init RF();Init IR IRQ();GLOBAL IRQ ON;for( i 0; i 15; i ){shelves[i] 0;}// Clear the shelveswhile( rear bump 1 ){ }Calibrate LF();sprintf(message, "Preparing Fork");UPDATE LCD;Initialize Fork();shelves[8] 1;shelves[7] 2;shelves[10] 3;// preload the pallets on the shelves- 17 -

shelves[14] 4;shelves[11] 5;sprintf(message, ".Waiting ForUPDATE LCD;Command.");while (1){if (first ! last){Move Pallet();}}return;}- 18 -

**** AUTOMATED STORAGE & RETRIEVAL SYSTEM**** Behavioral Routines: Storing, Inventory, Queuing **** EEL5666 Intelligent Machines Design Laboratory** University of Florida** Written for the PIC18F8720 @ 20 MHz** Copyright (2005) Albert Chung ude#include#include p18f8720.h delays.h "motors.h""nav.h""asrs.h""bios.h" stdio.h #define tier 1 PORTEbits.RE3#define tier 2 PORTEbits.RE4#define tier 3 PORTEbits.RE5// nedunsigned4: upperLocation Variableschar shelves[15] {0};char shelf num;char last age 2;char first age 1;char tier height;char IO;char last fork height;switch limit// Active High// Active Low// Active Low// 0: lower switch limit, 1: tier 1, 2: tier 2, 3: tier 3,// Queue variablesunsigned char Queue[QUEUE LENGTH];signed char first 0;signed char last ******** Move Pallet: Runs through the steps necessary** move a pallet across the warehouse floor. Acts** as an arbitrator for the motors and ***********/*void Move Pallet(void){unsigned char packet, IO, temp;packet Queue Pull();if( (packet & 0b00001000) 0b00001000 ){IO 1;shelf num packet & 0b00000111;sprintf(message, "Picking UpUPDATE LCD;}else{// Pallet entering the systemIncoming Pallet");// Pallet leaving the systemIO 0;// Get the location of the first pallet to goshelf num Get Out Location();sprintf(message, "Picking UpUPDATE LCD;Outgoing Pallet");}Delay10KTCYx(0);Get Destination(shelf num);// Set the x coordinate and tier heightif( (x dest ! x cur) && (direction 3) ){Turn Around();// Not already at location and facing the shelvesNavigate();// Follow center line until destination lane is reached}else if ( (direction 0) (direction 2) ){Navigate();// Follow center line until destination lane is reached- 19 -

}sprintf(message, "Positioning ForkTo Tier %d", tier height);UPDATE LCD;Center Fork To Pallet();of the pallet// Once arrived at destination, raise or lower fork to the centerMotors(MF FORWARD, MF FORWARD);Delay10KTCYx(175);// Get off the lineNavigate();// Drive insprintf(message, "Picking PalletUPDATE LCD;Up ");Raise Fork();// Lift pallet above shelfshelves[shelf num] 0;Back Up();// Drive outsprintf(message, "Positioning ForkTo Tier %d", tier height);UPDATE LCD;Center Fork To Pallet();// Lower the fork// go to second set of (x,y) coordinatesif( IO 1 ){shelf num Get In Location();}else{shelf num Get Dock Location();}// Pallet entering the system// Go to the shelves second// Find an empty location on shelf to place palletGet Destination(shelf num);// Set the x coordinate and tier heightif( (x dest ! x cur) ){Turn Around();Navigate();}// Already at location// Pallet leaving the system// Go to dock second// Find an empty location on dock to place pallet// Follow center line until destination lane is reachedsprintf(message, "Positioning ForkTo Tier %d", tier height);UPDATE LCD;Center Fork To Pallet();// once arrived, raise or lower fork to the tierRaise Fork();// Lift pallet above shelfMotors(MF FORWARD, MF FORWARD);Delay10KTCYx(175);// Get off the lineNavigate();// Drive inCenter Fork To Pallet();// Lower pallet onto shelf// if outgoing, tell agv to pick up the palletif (IO 0)// Pallet leaving the system{sprintf(message, "Requesting AGV Pickup");UPDATE LCD;Transmit(shelf num);// send shelf number where the output resides to the AGV}Back Up();sprintf(message, "Mission Complete");UPDATE LCD;Delay10KTCYx(0);sprintf(message, ".Waiting ForUPDATE LCD;Command.");return;}- 20 -

/************************************************ Queue Pull: Pull a request off of the queue. unsigned char Queue Pull(void){unsigned char temp;temp Queue[first];first ;if( first QUEUE LENGTH ){first 0;}return ****** Queue Push: Push a request onto the *****/*void Queue Push(unsigned char packet){Queue[last] packet;last ;if( last QUEUE LENGTH ){last *************** Get Destination: Extracts the x destinations** and the tier height from the data **********/void Get Destination(unsigned char shelf num){// set destination x coordinate and tier heightif( shelf num 5 ){tier height 1;x dest shelf num;}else if( shelf num 10 ){tier height 2;x dest shelf num - 5;// Offset of 5}else// shelf num 15{tier height 3;x dest shelf num - **************** Get Dock Location: Finds and returns an empty** location on the transition *********/unsigned char Get Dock Location(void){unsigned char i;for( i 0; i 5; i ){if( shelves[i] 0 ){shelves[i] 1;return i;// Mark as full- 21 -

************** Get In Location: Finds and returns an empty** location on the ************/unsigned char Get In Location(void){unsigned char i;for (i 5; i 15; i ){if (shelves[i] 0){shelves[i] last age;last age ;return i;}}// Location is ***************** Get Out Location: Finds and returns the** location of the oldest product on the ************/unsigned char Get Out Location(void){unsigned char i;for (i 5; i 15; i ){if (shelves[i] first age){shelves[i] 0;first age ;return i;}}// Oldest product first to go// Empty the the ******************** Initialize Fork: Initializes the fork to a** known *****************/void Initialize Fork(void){unsigned char temp, temp2 0;Fork(UP);// Raise forkfor( temp 0; temp 25; temp )// Delay half a second{if( tier 1 1 tier 2 0 tier 3 0 ){Fork(STOP);}Delay1KTCYx(0);}Fork(DOWN);// Lower forkwhile( temp2 0 ){if( tier 1 1 )// Wait for fork to press a switch// Active High- 22 -

{Delay1KTCYx(100);while( tier 1 1 ){ }// Delay 20msec to debounce switch// Wait for fork to get off the switch (active high)Fork(STOP);// Stop forklast fork height 1;temp2 1;}else if( tier 2 0 ){Delay1KTCYx(100);// Active Low// Delay 20msec to debounce switchwhile( tier 2 0 ){ }// Wait for fork to get off the switch (active high)Fork(STOP);// Stop forklast fork height 2;temp2 1;}else if( tier 3 0 ){Delay1KTCYx(100);while( tier 3 0 ){ }Fork(STOP);// Active Low// Delay 20msec to debounce switch// Wait for fork to get off the switch (active high)// Stop forklast fork height 3;temp2 1;}}sprintf(message, "Fork initializedto tier %d", l

Apr 19, 2005 · In the crusade to keep warehouse prices down, the ASRS stores an incoming pallet on the first . dock. In an attempt to install order, the ASRS processes jobs on a first-in, first-out basis. Advanced behaviors allow the ASRS to multitask; it can process incoming requests, traverse the warehouse, . enough space between the lens and the .

Related Documents:

items to be handled, storage and retrieval methods and interaction of a stacker crane and a human worker. The following are the principal types (Groover 2001; Automated Storage Retrieval Systems Production Section of the Material Han-dling Industry of America 2009): 1. Unit-load AS/RS. The unit-load AS/RS is typically a large automated system

[B]. RETRIEVAL PHASE The retrieval phase is the reverse process of the storage phase. In this phase another automatic monorail will arrive at the retrieval reference point without any load (package) on it. The proximity sensor will sense it, the sensor will change to on state which sends the signal to PLC alerting it about the request of retrieval.

Cost Transparency Storage Storage Average Cost The cost per storage Cost Transparency Storage Storage Average Cost per GB The cost per GB of storage Cost Transparency Storage Storage Devices Count The quantity of storage devices Cost Transparency Storage Storage Tier Designates the level of the storage, such as for a level of service. Apptio .

The 7 Basic Principles of Retrieval Practice Following are the seven basic principles of retrieval practice. 1. Keep It Short and Simple Retrieval practice should only take a few of minutes of class time and should be easy to explain, set up, and conclude. A perfect example is Agarwal and Bain’s (2019) retrieval

Manipulations of Initial Retrieval Practice Conditions 7 Retrieval Practice Compared to Restudy and Elaborative Study 7 Comparisons of Recall, Recognition, and Initial Retrieval Cueing Conditions 8 Retrieval Practice With Initial Short-Answer and Multiple-Choice Tests 9 Positive and Negative Effects of Initial Multiple-Choice Questions 11

Encoding, Storage and Retrieval Memory is the mental processes that enable us to retain and use information over time that involve three fundamental processes: encoding, storage and retrieval Encoding: The processing of transforming information into a form that can be

Project Proposal: Data Storage / Retrieval with Access Control, Security and Pre-Fetching 4 Project Proposal: Data Storage / Retrieval with Access Control, Security and Pre-Fetching Page 4 1.Introduction 1.1. Objective A cloud computing system is a set of huge networks and computing

A. Abstract of home-use automated container storage and retrieval system At first, Fig.3 shows an abstract of developed home-use ACSRS, and Fig.4 expresses a system block diagram. The s/r system is mainly composed of a book shelf with some devices, a vertical transporter and a horizontal trans-porter which also executes picking and placing .