Turing Machine Demonstrator (TMD-1) 

 
TMD-1 with rack of tiles ready to be dropped into the state table.

TMD-1 with rack of tiles ready to be dropped into the state table.

Manufactured By: Michael Gardi

Designed By: Michael Gardi

Release Date: 2020

You can find numerous Turing machine implementations on the internet that are absolutely stunning. The makers of these devices often set lofty goals for themselves, like "mechanical only solutions", which they met and exceeded with aplomb. In my humble opinion though, the complexity of these excellent and imaginative solutions often detracted from the understanding of what a Turing machine actually does.

So my approach with this project from the onset was to demonstrate the idea of a Turing machine with as much clarity as possible. I tried to build a machine that is simple to program and easy to understand. I guess that was my lofty goal for this project.

TMD-1 has the following characteristics:

  • One tape with 10 cells and a single head.

  • The alphabet used will have three symbols: {0, 1, b}. 0 will be the blank symbol and b is an endmarker symbol that can be read from the tape but not written.

  • There will be three states: {A, B, C}. A will be the start state plus there is a special HALT state H.

TMD-1 used 3D printed tiles to populate the state table for the Turing machine. Below the state table area is an array of hall effect sensors. The tiles have small embedded magnets positioned in such a way that TMD-1 can determine the value of each tile. As the state table is being processed, the triangular lamps indicate what state the Turing Machine is in (A, B, C) and what step is being performed (READ, WRITE, MOVE, GOTO).

With TMD-1 you can perform the following tasks among others:

  • Treating the input area as a binary number find the one's compliment.

  • Find the two's compliment of the "binary" number in the input area.

  • Count in binary (ascending and descending).

  • Sorting. Move all the 1's in the input area to the right or left.

  • Shift the input area one cell to the right or left.

  • Cylon eye with head lamps ;-)

If you are interested in more details about Turing machines in general the Wikipedia entry is very good. I have also written a small booklet, TMD-1 Quick Start Guide, that describes the operation of TMD-1 and helps the user run their first "program".

 
Build Instructions

Build Instructions

Project Logs

Project Logs

hackaday.io

hackaday.io

Arduino Blog

Arduino Blog

Previous
Previous

Digi-Comp I Redux (Fall 2019)

Next
Next

TMD-2 (Fall 2020)