User Interface

Initial Design

Our original plan was for the user to control the trains via realterm connected to a Bluetooth transmitter module. However, we were already using both UART peripherals on all of our boards, one for the Bluetooth and one to connect to the trains. Additionally, we decided that using realterm commands was a little clunky, and not very user friendly, so we decided to build a user control board.

The User Interface Board

user-interfece-annotated

Operation

The screen depicts the selected left and right stations (north, center, south, or pillar) and the chosen direction. The user can change which station is selected using the two potentiometers, and change the direction using the switch. When the user has decided on a route, they can press the button on the right to send the command to the track controllers. After 30 seconds, the board with automatically send the all clear command, turning off all tracks. The timeout is reset each time the user sends a command. If the user wishes to turn of the tracks sooner, there is a button on the top that will send the all clear command.

Status Lights

There is an LED for each PIC indicating it’s current status

Color Meaning
Red Device is powering up/still connecting to Bluetooth slaves
Blue Decive is ready to send commands
Green Command is currently running on the track
Green/Blue Device is sending a command

Schematic

ui_schematic