Computerized Labyrinth Solver RIT Computer Engineering Senior Design Project Gregory Schallert & Chad Craw February 12, 2004 The board-game ‘Labyrinth’ traditionally uses two manual controls to navigate a marble through a maze. This project proposes to use two motors and video feedback to solve and traverse a reconfigurable maze. The maze walls will be detected using metal contacts on the playing connecting to custom digital circuitry. This structure allows the computer to scan the maze surface for wall segments. Once the maze has been scanned and built, a Computer will solve it using the Lee Moore Algorithm. After a solution is found, the PC will communicate the path traversal plan to an HC12 that is connected to the two controlling motors. The HC12 will then navigate through the maze using the PC video feedback to close the controller loop. To help with size constraints underneath the maze surface, and alleviate weight, the connection points for the dynamic walls were created by custom etching a board to fit the maze (above). The opposite side of this board was cleaned off and used as the maze surface itself, while these trace routes provided connections for the digital circuitry. The Maze solving system shown above uses a number of systems in conjunction to perform it’s task. The main components of the system are the CCD tracking camera, the HC12 motor control and maze scanning system, the In a similar fashion to the maze surface, another board was digital circuitry attached to the wall detection points, and etched to accommodate the digital multiplexer array used to scan the video tracking software running on an attached PC. the maze surface for walls (below). This circuit was then The system uses the Serial Connection Interface with the connected to the maze surface using two 40-pin IDE cables, and HC12 board to communicate data in the feedback process. additionally connected to the HC12 controller with two 16-pin The maze uses a dynamic array of wall segments to create parallel socket cables. Notches for the wall segments The Camera used for our changing maze patterns. Walls are placed at arbitrary points … system is a Lego Mindstorms around the maze surface to create a path from source to Visions camera, which is Wall Segment destination. The maze is then scanned by the HC12 board and actually a standard Logitech … the data transmitted to the PC tracking software for analysis. The Quickcam in a Lego Package. The camera connects to a PC . . . PC solves the maze preemptively and designs a path for the ball via USB, and is operated using . . . to travel. The user starts the HC12 control system, and the PC . . . the custom tracking software … starts transmitting feedback to the Microcontroller. designed for this project. Notches for Start and End tabs Once all connections have been made and the system powered up, the sequence of events are as follows: The user defines the walls location using the wall segments. The connection is made between the PC and the Using some basic laws of motion and applying them to M g cos Fs M b a Fn HC12. The HC12 sends the current wall locations to the angular motion of the maze surface, a number of the PC. equations were derived to help explain the ball’s r Fs anticipated motion in relation to the applied angle. The Computer solves the maze using a modified Lee a These equations were then used to help calibrate a Fg Moore Algorithm and waypoints are determined. g cos Fuzzy PID controller for the system. The user selects the object they would like to track on a the PC. The PC then starts tracking the object. 1 Left of Target At Target Right of Target 1 2 The user presses start on the HC12 and the maze mr starts moving. When the ball reaches a waypoint a new goal is found. R Materials for Construction: Displacements are then calculated to the new goal. L R d L 2 2 2 cos( ) Part Quantity Cost Z 0 r Logitech Quickcam 1 $30.00 z Input Disturbances l 2 Rd Motorolla 68HC12 Board (Provided by RIT) 1 ~$100.00 Membership Function for the Error in the ball’s position from surface Servo Motors 2 $15.00 PC for Video Tracking 1 N/A (Provided by User) Lumber for construction N/A $25.00 da g r 2 The same control system was applied to the Copperplated Circuit Board 1 $5.00 Target Servo Final Ball axle separate axes of the maze in a symmetrical Etching Solution and materials N/A $20.00 d + R 1 mr12 Rd Reference motor position Position control L R fashion. One motor controlled the X axis, and the 74LS151 8:1 Line Multiplexer 16 $10.00 plant Z d d l ball other the Y axis. Each motor operates 74LS153 2:1 Line Multiplexer 2 $2.00 z independently of each other, but use the same Various Connection pieces N/A $30.00 (Headers, Jumpers, Cables) algorithms. Total: $237.00 Video recognition and feedback The whole system ties together to create a closed loop control system. The Video tracking determines the path for the ball to travel, while the HC12 concerns itself with controlling the motors based on input derived from the tracking software.