Library Automation System Labview Solution Coursework

Exclusively available on Available only on IvyPanda®
Updated:
This academic paper example has been carefully picked, checked and refined by our editorial team.
You are free to use it for the following purposes:
  • To find inspiration for your paper and overcome writer’s block
  • As a source of information (ensure proper referencing)
  • As a template for you assignment

Problem Statement

The user interface to check the availability of a library asset in the general pool is to be built using LabVIEW software. The user interface must provide a Check-IN and Check-OUT interface for library assets in the library general pool. The solution provided here is for the library books.

General Pool

The library users are required to get permission from their respective departments to get a book from the library. Library has some books in access to the department requirement, these books can be made available to the students of other departments. Hence the students do not need to get permission from their department in order to get a book from the library general pool.

Library Management System

A library management system is built with a record for every book in the library. The book record structure is as follows:

Book NameBook NumberBook Counter
Title of the library book.Book sequence numberNumber of books available in the general pool.

The following functional interfaces are required in the user interface:

  1. Display the ‘Book Counter’ for a given ‘Book Number’.
  2. CHECK-OUT button, that will decrement the counter if book is issued.
  3. CHECK-IN button that will increment the counter if book is returned.

It is assumed in a RFID enabled library the user will not need ‘CHECK-OUT’ and ‘CHECK-IN’ interface, the RFID reader installed at the library gate/counter will automatically update the ‘Book Counter’. For this project the user is expected to perform the following functions:

  1. Enter the ‘Book Number’ of the book to be issued/returned.
  2. Click on either of ‘CHECK-OUT/CHECK-IN’ buttons.

LabVIEW Interface

Front Panel

The user interface of the Library Management System is the front panel built with the LabVIEW software. The front panel has the following controls and indicators:

  • Book Number – Numeric Control: To get user input.
  • Book Counter – Numeric Indicator: To display ‘Book Counter’ for the given ‘Book Number’.
  • CHECK-IN button – Boolean Control: To receive a ‘Check-IN’ trigger from the user.
  • CHECK-OUT button – Boolean Control: To receive a ‘Check-OUT’ trigger from the user.
  • STOP button – Boolean Control: To stop the LabVIEW program.

Front Panel

Block Diagram

The LibraryCounter.vi is the main program of the Library Management System implemented with LabVIEW software. The program takes ‘Book Number’ as user input and displays the ‘Book Counter’ for this book. User can perform three actions:

  1. Check-IN
  2. Check-OUT
  3. STOP
  4. The algorithm of the program is described as follows:

{ flat-sequence–1

{ frame-1

Initialize the ‘Library System’ by a call to libraryBooks.vi

} frame-1

{ frame-2

while (TRUE OR STOP)

} frame-1

{ frame-2

do{

Get ‘Book Record’ for given ‘Book Number’

Read ‘Book Counter’

}while (TRUE OR STOP)

} frame-2

{ frame-3

do{

if CHECK-OUT decrement the counter;

if CHECK-IN increment the counter;

}while(TRUE OR STOP)

} frame-3

} flat-sequence-2

} while (STOP)

} frame-2

} flat-sequence–1

The flat-sequence–1is used to perform ‘Library System’ initialization outside the main program loop. The ‘Library System’ is initialized only once. The do-while loop is used in flat-sequence–2, frame-2 to break from the loop when record is found. The loop continues until the complete ‘Library System’ has been checked.

LibraryCounter

Please refer the files for the complete block diagram.

Subroutine

The Library Management System uses two sub-VIs:

  1. LibrarySystemGVar.vi – This sub-VI creates a global array ‘Library System’.
  2. LibraryBooks.vi – This sub-VI initializes the global array ‘Library System’ with 5 records.

Subroutine

The algorithm of this sub-VI is described as follows:

{ flat-sequence-1

{ frame-1

Initialize the ‘Library System’ records. Constant value 5 is used for the length of array. Book Name is initialized to empty string (“”), Book Number and Book Counter are initialized to zero.

} frame-1

{ frame-2

for{

{ flat-sequence-2

{ frame-1

Insert the Book Records in Library System. String constant “Book” is assigned for book title, sequential numbers 1 to 5 are assigned to Book Numbers and random number generator is used for ‘Book Counter’.

} frame-1

}

}

} frame-2

} flat-sequence-1

The flat-sequence-1, frame-1 can be deleted from the block diagram and hence flat-sequence-1 can be removed. This frame has been added to allow dynamic initialization of ‘Library System’ at a later stage.

The flat-sequence-2, frame-2 can be deleted from the block diagram and hence flat-sequence-2 can be removed. This frame has been added to debug the block diagram. Thus the only required code is: flat-sequence-1, frame-2, flat-sequence-2, frame-1 inside the ‘for’ loop.

Test Plan

The LabVIEW code has not been unit tested. Some functionality has been tested with debugger.

The following test cases can be executed to confirm the functionality of the program.

Test Case NumberProgramTest CasePurpose/Method
1.Librarybooks.vilibrary Book Records initialization.Display the Book Records, to verify that global variable ‘Library System’ is initialized.
2.Librarybooks.viGlobal variable ‘ Library System ‘ accessibility.Read Book Records from’ Library System ‘. To verify that global variable will be accessible from other VI.
3.LibraryCounter.viBook Number validityRange check the ‘Book Number’. Check system behavior for invalid ‘Book Number’.
4.LibraryCounter.viUser Interface functionalityCheck behavior of system for all 3 buttons before and after ‘Book Number’ is entered. Check that updated ‘Book Counter’ value is displayed after Check-OUT or Check-IN.

References

Web.

Print
More related papers
Cite This paper
You're welcome to use this sample in your assignment. Be sure to cite it correctly

Reference

IvyPanda. (2022, May 27). Library Automation System Labview Solution. https://ivypanda.com/essays/library-automation-system-labview-solution/

Work Cited

"Library Automation System Labview Solution." IvyPanda, 27 May 2022, ivypanda.com/essays/library-automation-system-labview-solution/.

References

IvyPanda. (2022) 'Library Automation System Labview Solution'. 27 May.

References

IvyPanda. 2022. "Library Automation System Labview Solution." May 27, 2022. https://ivypanda.com/essays/library-automation-system-labview-solution/.

1. IvyPanda. "Library Automation System Labview Solution." May 27, 2022. https://ivypanda.com/essays/library-automation-system-labview-solution/.


Bibliography


IvyPanda. "Library Automation System Labview Solution." May 27, 2022. https://ivypanda.com/essays/library-automation-system-labview-solution/.

Powered by CiteTotal, referencing generator
If, for any reason, you believe that this content should not be published on our website, please request its removal.
Updated:
Cite
Print
1 / 1