Difference between revisions of "Railroad Train Guidance System (RTGS)"

From EG1004 Lab Manual
Jump to: navigation, search
(→‎Boolean Algebra: Table formatting)
Line 375: Line 375:
<ol start="3">
<ol start="3">
<li>Sample Boolean Equation is shown below, AND operators are not explicitly shown (AB is equivalent to A '''AND''' B),  OR operators are defined with a “+” symbol (A+B is equivalent to A '''OR''' B), and NOT operators are applied using a bar on top of the term to be '''NOT'''-ted or an apostrophe after the term to be '''NOT'''-ted (A' is equivalent to '''NOT''' A)</li>
<li>Sample Boolean Equation is shown below, AND operators are not explicitly shown (AB is equivalent to A '''AND''' B),  OR operators are defined with a “+” symbol (A+B is equivalent to A '''OR''' B), and NOT operators are applied using a bar on top of the term to be '''NOT'''-ted or an apostrophe after the term to be '''NOT'''-ted (A' is equivalent to '''NOT''' A)</li>
</ol>


== Truth Tables ==
== Truth Tables ==

Revision as of 22:23, 2 February 2010

RFP*: Railroad Train Guidance System (RTGS)

*RFP is an acronym for Request For Proposal. Internationally, RFPs are called ITTs, an acronym for Invitation To Tender. Companies and governmental agencies use RFPs to solicit new business.

Note to Students: We worked hard to ensure that this manual is complete and is free of any errors or inconsistencies. However, if you do find something unclear, hard to understand, or you believe it to be incorrect please send an e-mail to gecentral@poly.edu stating your concern as well as the excerpt in which you have found inconsistencies, errors, or troubles understanding the material.

INTRODUCTION AND OVERVIEW

The East side of Manhattan has grown steadily since the early 1940s, when the area began to change from an industrial district into a residential neighborhood. Since the two elevated train lines over Second (1942) and Third (1956) Avenues were taken down, the area has been served by the Lexington Avenue line alone.1 Passenger loads on the 4 and 5 Express trains exceed transportation guidelines. Plans have been proposed to alleviate this congestion since the early 1930s. A plan developed in the 1960s led to the construction of several tunnel segments, but was abandoned during the city's fiscal crisis in the 1970s. Many ideas have been proposed and abandoned, due to strong opposition by various groups. The current project has a high probability of being implemented. Once completed, the project will include a two-track line along Second Avenue from 125th Street to the Financial District in Lower Manhattan. It will also include a connection from Second Avenue through the 63rd Street tunnel to existing tracks for service to West Midtown and Brooklyn. The Second Avenue Line will be a boon to those who live and work on the East Side of Manhattan, finally having an alternative to the frenzied congestion of the Lexington Avenue Subway.

The Metropolitan Transportation Authority (MTA) New York City Transit is responsible for the safe and efficient transportation of hundreds of thousands of New Yorkers each day. The vast and complex subway system is home to dozens of train lines and hundreds of stations. Currently, many capital construction projects are underway, including the East Side Access MTA Long Island Railroad Grand Central Connection, which will connect the Long Island Railroad's Main and Port Washington Lines to a new Terminal under Grand Central Station in Manhattan. Although this will help East Side access for Long Island commuters, It will put even more pressure on the 4 and 5 lines, making completion of the Second Avanue Subway line even more important.

In addition to the two tracks, there will also be places where more tracks will be necessary for connections to other lines, bypass when track work is underway, future growth, connection to maintenance facilities, etc.

The Second Avenue Line is in the planning stages. MTA New York City Transit is requesting proposals for the design of the switches and signals for this project. You are competing for a contract to design and program the logic responsible for safely guiding the trains along the Second Avenue Line. A major part of the competition is to demonstrate your capabilities by using digital logic to efficiently control a section of track specified by MTA New York City Transit. For more information, see http://www.mta.nyc.ny.us/capconstr/.

Your plan must be innovative. The winning proposal will be the one that combines solid engineering with a deep understanding of the problem and its solution.

Prerequisite

If you have not already done the Digital Logic Lab, you will probably find the rest of this document confusing. If you have not already done this lab, stop now and read the following sections in this lab:

2 Overview
5 Sample Problem

It is strongly advised that you familiarize yourself with the following digital logic topics before attempting to tackle the problem that is set before you in this project. In addition to familiarizing yourself with these topics, please make sure that you are also able to answer the questions that are very closely related to the task at hand.

  1. Boolean Algebra
    1. What are the only 2 possible values of a variable in Boolean algebra?
    2. What are the 3 most commonly used logical Boolean operators and what do their corresponding truth tables look like?
    3. How do the aforementioned operators appear in a sample Boolean equation?
  2. Truth Tables
    1. How does the amount of input variables affect the size of a given truth table?
    2. What is the procedure for setting up 2, 3, 4, and 5 variable truth tables?
  3. Boolean Equations
    1. How to derive a Boolean equation from a 2, 3, 4, and 5 variable truth table?
    2. What are some of the techniques that you can use in order to simplify a Boolean equation?
  4. Karnaugh Maps
    1. What is the procedure for setting up 2, 3, and 4 variable Karnaugh maps?
    2. What is the relationship between the amount of cells in a Karnaugh map and the number of rows in a truth table?
    3. How to properly match up cells in a Karnaugh maps and their corresponding rows in a Truth Table?
    4. What is the procedure for simplifying Boolean Equations using Karnaugh Maps?

Many if not all of these questions can be answered by reading and performing Experiment 5: Digital Logic, so you are STRONGLY suggested to get solid background in Digital Logic before continuing with this semester long design project. The answers to these questions are located in Appendix D.


SPECIFICATIONS

As part of this project, you are required to use digital logic to design Boolean equations that will be used to control the track switches along the right of way. This includes creating truth tables, transforming these truth tables into simplified Boolean equations, and implementing your equations with digital logic, using LabVIEW to control the train track, allowing a locomotive to safely navigate the track from left to right, and back again.

The route the train can take is controlled by track switches arranged into 8 sectors, as shown in Figure 1. The sectors are outlined using the dark grey color in the figure underneath. Sectors 1, 2, 5, and 7 are called "X" sectors because the combination of the four track switches make a letter "X", and the train can either travel straight or cross over to another track. Sectors 3, 4, 6, and 8 are called "Y" sectors because the sector consists of a single track switch that looks like the letter "Y", and can choose one of two tracks to merge with one track.

Figure 1b: Track Layout Key
Figure 1a: Track Layout

Your logic design will throw the track switches to allow a train to travel from any station at Terminal Station L (Include L1, L2, and L3) to any station Terminal Station R (R1,R2,R3), reverse direction, and travel back from the Terminal Station R back to Terminal Station L. The train can leave from any ports of the Terminal Station L, and can arrive on any port of Terminal Station R. Similarly, on the return trip, the train can arrive on any port of Terminal Station L.

This trip can be made in the Normal Mode or the Reverse Running Mode. In Normal Mode, defined by MTA New York City Transit, only the Sectors 2, 3, 6 and 7 tracks are used for travel from left to right. Sectors 8, 5, 4, and 1 are used for travel from right to left. The unused sectors are fixed in the straight position. In summary, the train must "keep to the right", like cars on a highway. In Reverse Running Mode, defined by the Northeast Operating Rules Advisory Committee Rule 261, all the tracks can be used to travel in either direction. You are asked to take careful note and know the difference between Normal and Reverse mode as this knowledge will help you in the crucial process of designing your LabVIEW Virtual Instrument. It will also impact several of key decisions for this project down the line. (Following this, Virtual Instrument will referred to as VI in this document.)

Construction and repairs must be taken into account in your design. At this time, all of the sectors are functioning properly. With this being the case, you are asked to utilize all of the switching sectors when navigating the train around the track given Reverse Mode. For Normal Mode rules please refer to the paragraph directly above this one. For this project, please DISREGARD all of the routing stations present on the course (RS-A through RS-H)


Your train will not be the only train running on the tracks. As part of the specifications, there will be 12 possible locations for other trains to be on the tracks. These locations are indicated with RTGS3.png and are marked with a letter A – L on the following diagram. Your Boolean equations and LabVIEW programs must compensate for this, and allow your train to get through.

Figure 2: Possible Locations for Other Trains

Your task is to design a digital logic system that will allow the train to travel from one end of the track layout to the other, and to return to the starting point using the designated departure and arrival tracks. During testing, your TA will place railroad cars to some of the locations, A through L, shown in Figure 2, blocking paths. Your logic will then throw the train switches (as described below) to allow the locomotive to travel from Terminal Station L to Terminal Station R, where the locomotive will stop. The TA will change the railroad cars to other locations, and your logic will throw the switches for the return trip.

The EG staff has already done much of the work for you, providing Virtual Instruments (VIs) that will tell you which of the locations in Figure 2 are blocked, and accepting outputs from your VI as described below to actually throw the track switches. Design a LabVIEW VI which contains a digital logic circuit that accepts the following inputs:

  • The status of each of the 12 locations, i.e., whether they are occupied or not. This information will come from a VI provided by the EG staff.
  • A switch included in LabVIEW that indicates the direction of the train's travel, i.e., from left to right or right to left.
  • A switch included in LabVIEW that indicates whether the train's travel will be via Normal Mode or Reverse Running Mode.
  • A selection box included in LabVIEW that will indicate on which the train will begin its journey (Top, Middle, Bottom for L1/R1, L2/R2, and L3/R3 respectively. Please consult Appendix C for a description and a walkthrough on how to create, configure, and use a selection box that you will need for component testing.

Your digital logic must provide the following outputs:

  • If one or more paths is available, supply the digital logic outputs for the settings of the track switches for each of the eight sectors to the VI provided by the EG staff. This VI will throw the switches according to your specification, allowing the train to travel from one Terminal Station to the other.
  • A red light included in LabVIEW on the Front Panel that illuminates if there is no path available.

After your VI has set the switches, your TA will drive the train from the Terminal Station L to Terminal Station R, and move the blocking cars. After your VI sets the switches for the return trip, your TA will drive the locomotive back to the Terminal Station L. The TA will perform this procedure several times to ensure that you logic solution is indeed correct.

MICROSOFT PROJECT

Your team must create a time management plan using Microsoft Project (MS Project). You can learn Microsoft Project by doing the MS Project Skill Builder. This plan must include all tasks related to the project. Each task must be named, assigned a duration and assigned to a specific person (or people). You must begin your work by creating an MS Project plan. Follow your project plan throughout the semester. If the team falls behind schedule, explain the reasons for the delays when you present your progress reports, list the steps being taken to get the project back on track, and create a revised MS Project plan.

For help in planning your project, review the How to plan the schedule and calculate costs for a project page in the section called Material to help you with the project elsewhere in this manual.

There should be at least twenty tasks/subtasks and three Milestones. Milestones should be noted with the duration of "0day". Moreover, the copy picture function included in MS Project Software should be used instead of the print screen function of the computer.

COST ESTIMATE

You will need to create a cost estimate using quotes from a reputable vendor. Examples are Digikey, Newark Electronics/Newark In One, and On Semiconductor. You are not limited to these vendors. This cost estimate includes prices for TTL Logic Chips for the various logic gates you use in your LabVIEW VI. When doing your cost estimate, be sure to include specification sheets from the vendors for all of the chips that you may use.

Once your design is complete, a cost estimate must be generated that specifies the cost of all the materials and labor required for the construction of your design. Tabulate this cost information clearly in an Excel spreadsheet, using the materials cost list provided. You can get help in calculating the cost by reviewing the How to plan the schedule and calculate costs for a project page in the section called Material to help you with the project elsewhere in this manual.

Have all the materials and parts used categorized in different groups instead of including individual parts. Make sure to include the units of each part used in a group and total them up for that individual group. Moreover, the cost of labor should be included. You can get help on the labor cost by reading the How to plan the schedule and calculate costs for a project page in the section called Material to help you with the project elsewhere in this manual.

MILESTONES

As you work on your project, you will be required to present periodic reports on your progress. We call these Milestones. All the items assigned in each Milestone are called deliverables. These deliverables often consist of a combination of written submissions, presentations, and demonstrations.

Milestone 1

Introduction to Digital Logic

For this milestone, we will create a plan for the train to leave Terminal Station L. This includes having the logic necessary for train to be able to successfully navigate the first three (3) sectors. You will NOT be physically programming in LabVIEW for this Milestone. When the train leaves the left terminal from middle position, the Sector 1 switch is in place to allow the train to travel outbound via Sector 2 or Sector 3. When the train leaves the terminal from the top position, the Sector 1 switch is in place to allow the train to travel straight. When the train leaves from the terminal from the bottom position, the Sector 2 and Sector 3 switches are set to allow the train to continue towards light sensor C. You will be creating a Boolean Equation to determine which Sector to use, based on which of the tracks is blocked by railroad cars. For this Milestone, your train will operate in REVERSE MODE, meaning it can take any possible path in order to avoid a collision. In the following milestones as well as your semester long design project you will incorporate the logic you create for Milestone 1 into your project.

Figure 3: Sample Terminal with switch

Here are the Boolean Variables you will need to create the equation:

  1. Let T represent the track that the train is on at the terminal. T can take on one of three values (Top, Middle, Bottom), which means that 3 separate truth tables have to be generated, each for every starting position. Furthermore, since there are a total of 3 sectors for this Milestone, you will need to generate a truth table for each Sector as well. Finally, there is also NO PATH logic for each sector, this makes a total count of Truth Tables for this milestone equal to 12. (For example: Starting on top position and sector 1 logic, starting on middle position and sector 3 logic.)
  2. Let A, B, C, and D represent a train blocking the respective portion of the track.
  3. If A, B, C, or D = 0, the corresponding track is free of obstacles. If A, B, C, or D = 1, the corresponding track is blocked.
  4. Let S represent the status of the sector. For simplicity, there are only two values. When S=0, any train passing over the switch will stay on course and go straight. When S=1, any train passing over the switch will be diverted to the other track, in other words cross the track.
  5. Let C represent whether or not you can proceed through the switch to one track or the other. This condition is also known as the “NO PATH” condition. When C=1, the right of way is blocked, and the train cannot proceed by using any possible combination. When C=0, the track is clear, and the train can proceed through the switch.
Figure 4: Represents the three sectors that need to be completed for Milestone 1

Create a truth table for each starting position for each sector showing every possible outcome. (See example below) Once you create 12 truth tables, proceed to create a Boolean equations based upon your truth tables. Create Karnaugh-Maps (K-Maps) and use them to simplify the Boolean equations (if possible). See the Digital Logic Lab in this lab manual for further assistance. Remember, you are solving for S1, S2, S3 and C.

Figure 5b: Along with your table make sure to include a legend (key).
Figure 5a: Example truth table, this truth table incorporates 4 sets of logic, S1, S2, S3 and C. Your truth tables can take a similar format or can be split up into separate truth tables.

For the Milestone 1 presentation, prepare a brief description of the problem, what your goals are, and how you will accomplish these goals. In addition, write up a cost estimate of your implementation for leaving Terminal Station L, plus an estimate of the overall project by multiplying this cost by an appropriate factor based on the additional complexity of the overall train layout. The presentation should also include your MS Project chart as well as what you plan to do next.

Milestone 1 Deliverables: A presentation. Prepare a brief description of the problem, what your goals are, and how you will accomplish these goals. Be sure to include examples of the generated truth tables, un-simplified Boolean equations, Karnaugh-Maps and then the simplified Boolean equations. DO NOT INCLUDE all 12 truth tables in your presentation, pick out several as examples to show your understanding and comprehension of the problem. You may however, include all 12 simplified equations to show your progress. Calculate a cost estimate of your implementation for leaving Terminal Station L, plus an estimate of the overall project by multiplying this cost by an appropriate factor based on the additional complexity of the overall train layout, and an MS Project plan. Be sure to include any special features and benefits of your design.

Note: Whenever you revise your drawing(s), your cost estimate, or your MS Project plan, you must include the initial drawing, the initial cost estimate, or the initial MS Project plan, in addition to the revision.

Look Ahead: What tasks do you plan between now and Milestone 2?

Milestone 2

In Milestone 1, we created a plan for the train to leave Terminal Station L, pass through Sectors 1, 2, 3. For Milestone 2, we will be creating another plan. This time, you will need to create necessary Boolean logic relationships and equations for the train to travel through Sectors 4, 5, 6 making use of light sensors A, B, C, D, E, F, G, H and translate that information into a LabVIEW VI. Furthermore, you will need to accomplish this task for both modes of operation, Normal as well as Reverse. Remember, you only considered the Reverse mode for Milestone 1. While traveling from left to right under Normal mode of travel, the only sectors that are allowed to be switched are 2, 3, 6, and 7. Since sector 7 is not in the scope of this Milestone you do not need to worry about logic for sector 7. Your milestone MUST incorporate the logic you developed for Milestone 1. This means that the equations you have written for sectors 1, 2, 3 (Reverse Mode Only) may be incorporated in your logic for sectors 4, 5, and 6 if applicable. This will greatly simplify your problem as you won’t have to repeat the work you have already done. In short the following equations need to be written:

Direction of Travel: Left To Right
Travel Mode: Normal
Sectors: 2, 3, and 6
Travel Mode: Reverse
Sectors: 1, 2, 3, 4, 5, and 6

Here are the Boolean variables you will need to create the equation. Many of the conventions have stayed the same from Milestone 1 and will stay the same until completion of the project:

  1. Let T represent the track that the train is on at the terminal. As before T can take on 3 possible values, Top, Middle, and Bottom.
  2. Let C represent a train blocking input C.
  3. Let D represent a train blocking input D.
  4. Let E represent a train blocking input E.
  5. Let F represent a train blocking input F.
  6. Let G represent a train blocking input G.
  7. Let H represent a train blocking input H.
  8. If C, D, E, F, G, or H = 0, the corresponding track is free of obstacles. If C, D, E, F, G, or H = 1, the corresponding track is blocked.
  9. Let S1 represent the status of the switch at Sector 1. Let S2 represent the status of the switch at Sector 2. Let S3 represent the status of the switch at Sector 3. When S1, S2, or S3 = 0, the train goes straight through. When S1, S2, or S3 = 1, the train crosses over on to the other track. Since you have already written logic equations for Sector 1, 2 and 3, you are allowed to use S1, S2, or S3 as input variables in your Truth Tables, Boolean Equations, and Karnaugh Maps.
  10. Let N be the "No Path" condition and represent whether or not you can proceed through the switches to one track or another. When N=0, the path is clear, and the train can proceed. When N=1, all paths are blocked, and the train cannot proceed through the track by utilizing any combination of switched tracks.

Just like you did for Milestone 1, create a truth table showing every possible outcome, a Boolean equation based upon your truth tables, and a K-Map and use it to simplify the Boolean equation (if possible). For Milestone 2, you will need to create many more equations than for Milestone 1. Since each sector for each traveling mode for each starting location requires a separate equation, your count of equations for Milestone 2 may very well exceed 35. Note: Once you write the logic as you have for Sectors 1, 2, 3 you may use those sectors as input on your truth table instead of writing down light sensor names. In other words, you may use the logic you already wrote to help simplify your Boolean equations before you apply Karnaugh-Maps. Once you have simplified your equations, you can transfer your equations to a LabVIEW VI.

On the front panel, you will need:

  • 9 Boolean controls, one for each input (A, B, C, D, E, F, G and H), and one to control whether the train is operating in Normal or Reverse mode.
  • You will also need a selector switch that will facilitate the selection of the starting track of the train. (Top, Middle, or Bottom)
  • 7 Boolean indicators, one for each sector (S1, S2, S3, S4, S5, and S6), and one indicating No Path (N).

On the back panel, it is up to you how you will program the VI. You are strongly encouraged to use of case structures.

Please refer to Appendix B further down the page for information on how to interface your VI with the Component Testing VI before reading on. It is extremely important that this step be performed before you are ready to component test. Through the use of the 28-node pattern your solution VI will be able to communicate with our tester VI, so make sure to read the instructions on how to configure your VI correctly. You will continue to use the same 28-node pattern to commission your VI once you are ready, so once you have properly configured your 28-node pattern please do not change the ordering of the nodes or clear the node assignments.

Milestone 2 Deliverables: A copy of your presentation slides that includes a brief description of the problem, your truth tables, simplified Boolean equations, Karnaugh Maps, screenshots of your VI, what your goals are, and how you plan to accomplish these goals, a revised cost estimate of the overall project based on your solution, your revised MS Project plan, and your signed Component Testing Form.

Note: Please do not include all of your Truth Tables and Karnaugh maps in your presentations. Select a few to show your understanding and comprehension of the problem. Do however, include your original and revised cost estimates, MS Project Plans, as well as your sign Component Testing Form.

Note: Whenever you revise your drawing(s), your cost estimate, or your MS Project plan, you must include the initial drawing, the initial cost estimate, or the initial MS Project plan, in addition to the revision.

Look Ahead: What tasks do you plan between now and Milestone 3?

Milestone 3

Prepare a VI that will use your Boolean equations to show how the track switches will be set. This includes the entire track utilizing all of the eight sectors, both modes of operation (Normal and Reverse), and at least one direction of travel (Left to Right and Right to Left). This means that at this point your logic and your LabVIEW VI can successfully guide the train from Left-to-Right or Right-to-Left (Depending on the direction you have completed) in either modes of operation. Use Boolean switches in the LabVIEW front panel to indicate which track locations are occupied by cars. Use lights on the front panel to indicate which switches are set to divert trains traveling over them. Refer to the Train Electrical Specifications for more information. Refer to Appendix B for more information on how to interface your VI with the Commissioning VI.

Important: If you are having difficulties completing the requirements for Milestone 3, please go to Open Lab sessions and ask for help, or otherwise get in touch with your lab TAs, recitation TAs, or come to the TA office in RH515A.

Milestone 3 Deliverables: A copy of your presentation slides that includes a brief description of the problem, what your goals are, and how you plan to accomplish these goals, a revised cost estimate of the overall project based on your solution, and your revised MS Project plan. Also, include the screen shots of front and back panels of your LabVIEW program.

Look ahead: What tasks do you plan between now and the completion of the project?

COMPONENT TESTING

Component Testing is a benchmark that is used to let students assess their progress in their Semester Long Design Projects. This is commonly used as a time management tool.

For Component Testing, you will need to interface your VI created from Milestone 2 with the VI located at

C:\SLDP Railroad Train Guidance System\Component Testing.vi

on the PC connected to the train layout. Your TA will test your VI by running your program with various combinations of tracks being blocked.

COMMISSIONING

Load your VI into the PC connected to the train layout, and interface it with the Commissioning Test VI. The Commissioning Test VI can be located at

C:\SLDP Railroad Train Guidance System\Commissioning Test.vi

on the PC connected to the train layout. Your TA will then place train cars in various locations, and position the locomotive on a track at Terminal Station L. The TA will first test your program using Normal Mode. Set the Boolean switches on your LabVIEW front panel so your VI has this information. When the TA is finished, your VI should read the Boolean switches and locations of the train cars via the VI provided by the EG staff, calculate the proper track switch positions, and output the results to the Commissioning Test VI. This VI will set the track switches according to your specifications. The TA will verify that the path you have established will work. Once your VI establishes a successful path, the TA will drive the locomotive from left to right. After the locomotive arrives on the proper track at Terminal Station R, the TA will rearrange the cars blocking paths for the return to Terminal Station L. Set the Boolean switches on your LabVIEW front panel to indicate this information. Your logic should read the blockage information from the VI provided by the EG staff and set the track switches to the proper position. The TA will verify that you've established a good path, and will drive the locomotive back to the Terminal Station L, arriving on the proper track.

After you have tested your VI with normal running, the TA will then test your VI in Reverse Running Mode. The procedure will be the same as the Normal Mode, with the exception of Reverse Running.

Finally, your TA will test your VI such that it indicates no path correctly. If your VI completes all tests successfully, you will be commissioned.

COMPETITION

At the discretion of the EG staff, you may be competing against other groups in your section. The winner of the competition will be the team that creates the VI that has the locomotive traverse the shortest distance in its outbound and return trips combined, with all teams using the same arrangement of blocking cars. In the event of a tie, the team with the lowest cost will win.

FINAL PRESENTATION

Your final presentation will be a technical briefing, similar to the milestones, plus a sales presentation explaining why MTA New York City Transit should select your company instead of someone else's. Please include the following:

  • A description of the problem
  • An overview of your solution
  • A description of your company and why it is qualified to successfully do this job
  • A sample of the truth tables you created
  • The resulting logic equations derived and simplified via your K-Map
  • Your final LabVIEW programs
  • The cost estimate
  • Your MS Project from each milestone showing your progress
  • A video of the locomotive traversing the layout from left to right and returning
  • Why your company is the best choice in awarding this contract

After you deliver your final presentation, you will proceed to the model shop to have your work commissioned, if you are not commissioned already. A signed commissioning statement must be included with the TA copy of your submission.

Final Submission

Your project should be submitted as a folder containing the following deliverables:

  • Component testing statement
  • Commissioning statement
  • Hardcopy and CD containing:
    • Final presentation
    • Table of appendices
    • Appendices:
      • Truth tables
      • Simplified Boolean equations
      • LabVIEW VI
      • Video
      • Final MS Project Schedule
      • Final Cost estimate
      • Resume(s)

EARLY ACCEPTANCE

If you complete your project one week early, you are eligible for a bonus that will be added to your final semester-long project grade. You must submit all deliverables by 5PM one week before your section is scheduled to present (see syllabus for exact date). To commission early, all required information on the form titled Project Submission Form, found on the EG web site, must be approved, accepted, and signed by a TA. The deliverables received early are the ones you will use in your presentation. No adjustments to the deliverables commissioned will be accepted.

LIQUIDATED DAMAGES

If you do not complete all your deliverables and do not commission during the Final Presentation, you will incur liquidated damages as defined in the grading policy.

Appendix A: Train Electrical Specifications

Output control of the track

Figure 1: Layout of the eight sectors on the train track

Each part of the track is separated into different sectors. The sectors can be classified into two types, X and Y (refer to the diagram). Sectors 1, 2, 5, and 7 are X type and Sectors 3, 4, 6, and 8 are Y type.

There is a Sub-VI that will be provided that will cause the tracks to move depending upon which data issent to the VI. Only include this Sub-VI in your their logic VI. The Sub-VI has eight inputs which are Boolean named, Sector 1 through Sector 8.

For the X type sectors, a Boolean value of True will cause the tracks to be oriented for the train to cross. A Boolean Value of False will cause tracks to be oriented for the train to go straight.

For the Y type sectors, a Boolean value of True will cause the tracks to be oriented for the train to be diverted to the outside track. A Boolean Value of False will cause the tracks to be oriented for the train to be diverted to the inside track.

Input from the track

Figure 2: Layout of the twelve possible positions of train cars on the train track

There are twelve possible locations for train cars which can be located on positions A to L. A Sub-VI will be provided to you that will have twelve Booleans outputs named Input A through Input L. A True will represent a train car being present and a False will represent a car not being present on that position. These outputs will be used as the inputs to your digital logic circuit.

Appendix B: LabVIEW

Note: The following instructions are for your VI that will interface with the component testing as well as the commissioning VI.

On the Front Panel, there must be 12 Boolean switches to represent the 12 inputs of the train and 8 Boolean lights to represent each of the 8 sectors. For component testing part you will have less available Boolean switches and Boolean lights, so only fill in or set the ones that are present on your VI.

Figure 1: Twenty-eight node pattern
  • On the front panel of the LabVIEW program, right click on the connector icon on the top right hand corner icon. Choose Show Connector.
  • Right click on the connector icon and select Patterns. Choose the pattern with 28 nodes.


  • To assign the Boolean switches and displays to a node, click on the Boolean switch or light on the front panel then click on the node you wish to assign it to.
  • If you make an error in a connection, right click the incorrect terminal and select Disconnect This Terminal.
  • The 8 nodes on the left side will be for the Boolean switches representing inputs showing occupancy for locations A-H. The 4 nodes on the bottom half of the icon starting from the left will be the inputs for locations I-L.
  • Connect the 8 Boolean outputs that represent the orientation of the sector to the 8 nodes on the right side of the icon.
Figure 2: Node assignments of the student's digital logic circuit
Input A     No
Path
Direction
of
Travel
Top or
Bottom
Reverse
Running
Mode
Sector 1
Input B Sector 2
Input C Sector 3
Input D Sector 4
Input E Input I Input J Input K Input L     Sector 5
Input F Sector 6
Input G Sector 7
Input H Sector 8
  • Replace the faded icon in the program Commissioning Test.vi with your digital logic VI. Right click on the icon and choose replace. Then choose Select a VI and find your VI. Replace it as shown in Figure 3.
The program Commissioning Test.vi for students to insert their logic circuit
  • Before testing your digital logic circuit, turn on the power to the middle workbench where the two power supplies are connected.
  • Continuously run the Commissioning Test.vi and ensure that the lights on the front panel accurately represent the presence or absence of a train.
  • Flip the Reset switch up and down and the track will be preset to the specified orientation.
  • Once those parameters are checked, test the digital logic circuit by flipping the Test Track switch.

Appendix C: Drop Down Selection Box

In order to create and use a drop down selection box in your project, please closely read the following instructions that will aid you in creating and configuring the drop down box for use in your project:

  1. The very first step in the entire drop down box creation process is placing the to-be configured drop down control on the front panel of your VI. Go ahead and right-click anywhere on the front panel; select Text Ctrls, followed by Menu Ring. You should now see a drop-down menu appear on the front panel, which should look similar to the following:
    Train12.jpg
  2. Next, we will need to add some appropriate selections to the drop-down box you created in the last step. These selections will facilitate multiple modes of the drop-down box and therefore let you control many different cases of one control structure. Right-click on your drop-down menu on the front panel, and click Edit Items. You should see a dialog box appear on the screen. Click on the insert button, and enter the name you will assign the TOP track. Hit the return key and enter the name you will assign the MIDDLE track. Repeat this process again for the BOTTOM track. After entering the bottom track, check to make sure that there are exactly three items entered. Your screen should look like the following:
    Train13.jpg
    Hit OK and your drop-down menu will have the correct settings to implement your digital logic.
  3. Finally, we want to use the drop-down menu to control a case structure. Create a case structure on the back panel and wire the drop-down menu to it. You will notice that there are currently only two different cases available in the case structure. We do not want this, as there are three different positions that the train can be placed on. Right click on the case structure and select Add Case After. This will create a third case, which is necessary for completing the digital logic for the train. You will notice that the three different cases are labeled 0, 1, and 2. Case 0 refers to the top track, case 1 the middle track, and case 2 the bottom track. Do NOT change these labels to any text, your VI will not function if you do this. Your back panel will look similar to the following:
    Train14.png

Appendix D: Preparation Question Answers

Answers to the questions in the “Introduction and Overview” section of the specifications manual are as follows:

This section is still under construction.

Boolean Algebra

  1. The only 2 possible value of a variable in Boolean Algebra are True (which is often represented by the number 1), and False (which is represented by the number 0).
  2. AND – The output is True (1) whenever BOTH of the inputs are True (1), otherwise the output is False (0)
    OR – The output is True (1) whenever EITHER or BOTH of the inputs are True (1), otherwise the output is False (0)
    NOT – The output is the COMPLEMENT of the input value.
AND OR NOT
Input A Input B Output X
0 0 0
0 1 0
1 0 0
1 1 1
Input A Input B Output X
0 0 0
0 1 1
1 0 1
1 1 1
Input Output
0 1
1 0
  1. Sample Boolean Equation is shown below, AND operators are not explicitly shown (AB is equivalent to A AND B), OR operators are defined with a “+” symbol (A+B is equivalent to A OR B), and NOT operators are applied using a bar on top of the term to be NOT-ted or an apostrophe after the term to be NOT-ted (A' is equivalent to NOT A)

Truth Tables

  1. The amount of input variables affects the number of rows in a given truth table by the following relation. The number of rows in a truth table is equal to 2X rows in that truth table, where X is the number of variables. So for example a truth table with 2 inputs will have a total of 22 = 4 rows, a truth table with 3 inputs will have 23 = 8 rows, and a truth table with 4 inputs will have 24 = 16 rows. Each additional input will effectively double the size of the truth table.
  2. In order to set up a 2 variable truth table, take the following steps. First alternate 0’s and 1’s starting with a 0 from the right-most input variable at the top of your truth table, for a 2 variable truth table you will see only 2 0’s and 2 1’s. Then move 1 column to the left and begin alternating 2 0’s and 2 1’s consecutively, also starting from the top of the truth table with 2 0’s. Once the column is full your truth table should be complete. For a three variable truth table, move 1 more column to the left and begin alternating 4 0’s and 4 1’s consecutively, also starting from the top of the truth table with 4 0’s. For a four variable truth table, move yet another column to the left and begin alternating 8 0’s and 8 1’s. Each time you move a column to the left, double the amount of alternating 0’s and 1’s.

Boolean Equations

  1. In order to derive a Boolean equation from a completed truth table, first write out all of the terms that have an output of “1.” Each row in your truth table with an output of 1 will have its own term in a Boolean equation. For example, if the truth table for an OR operator is considered, there are 3 rows with an output of 1. Each row will result in a different term in a Boolean equation. In an “SOP” (Sum Of Products) truth table all of the terms are joined using OR operators and variables within each individual term are combined using the AND operator.


Input A Input B Output X 0 0 0 0 1 1 1 0 1 1 1 1

Once again taking the truth table for the OR operator, we write down all of the rows in the following manner. The resulting expression is as follows: A’B + AB’ + AB = X, and is read as “A NOT B or A B NOT or A B equals X.”

  1. Karnaugh maps and Boolean algebra identities are two ways unsimplified Boolean equations can be simplified to produce simplified Boolean equations.

Karnaugh maps

  1. 2, 3, and 4 variable Karnaugh Maps are set up as follows:

2 – Variable 3 – Variable 4 - Variable

B’ B A’ A


B’C’ B’C BC BC’ A’ A

C’D’ C’D CD CD’ A’B’ A’B AB AB’


  1. The number of cells in a particular Karnaugh maps equals the amount of rows in the corresponding truth table. For example, a 4 Variable Karnaugh Map will have 16 cells and a 4 variable truth table will have 16 rows.
  2. The corresponding row of a particular cell can be found by first figuring out the input combination of variables that belong to a particular cell. So for example, the right-most cell on the bottom of a 4 – Variable Karnaugh map has the AB’CD’ variable combination. Substitute the number one for each non-negated variable, and a 0 for each negated variable. By applying this to AB’CD’ we get 1010. We can then match this number to a particular row in the truth table.
  3. First fill in all 1’s from a truth table into the Karnaugh map by reversing the process described in 4C (Just above this sentence). Once all of the 1’s are filled in the Karnaugh map, circle largest blocks of 2,4, 8, or 16 cells that are adjacent to each other until all of the 1’s in the Karnaugh map are completely encapsulated in a circle. Overlaps are allowed, however largest cells are preferred over smaller ones. Each circle will become a term in the simplified Boolean equation, as before the terms will be connected by an OR operator. Once the circles are formed, look within each individual circle for variables that change, if a variable(s) changes drop that variable(s) from that term. Write down a term for one circle and move on until you have completed all circles.