Tuesday, December 01, 2020

A Bigger, Better Turing Machine You Can Make

I posted a while back about my cousin, Mike Gardi, who built a demonstration Turing Machine. After receiving some feedback on the original product, he's now created a bigger, better, and more collaborative Turing Machine, described here on the Hackaday site.  

This collegial dynamic is very much on display with TMD-2, [Michael Gardi]’s latest iteration of his Turing machine demonstrator. We covered the original TMD-1 back in late summer, the idea of which was to serve as a physical embodiment of the Turing machine concept. Briefly, the TMD-1 represented the key “tape and head” concepts of the Turing machine with a console of servo-controlled flip tiles, the state of which was controlled by a three-state, three-symbol finite state machine.

TMD-1 was capable of simple programs that really demonstrated the principles of Turing machines, and it really seemed to catch on with readers. Based on the comments of one reader, [Newspaperman5], [Mike] started thinking bigger and better for TMD-2. He expanded the finite state machine to six states and six symbols, which meant coming up with something more scalable than the Hall-effect sensors and magnetic tiles of TMD-1.

[Mike] opted for optical character recognition using a Raspberry Pi cam along with Open CV and the Tesseract OCR engine. The original servo-driven tape didn’t scale well either, so that was replaced by a virtual tape displayed on a 7″ LCD display. The best part of the original, the tile-based FSM, was expanded but kept that tactile programming experience.


If you want to find out more about the TMD-2, check out Mike's post on the Hackaday blog. For instructions on how to make the TMD-2, see his article on the Instructable site. Mike has included a quick start guide and an app that you can use to learn the principles of Turning machines. 

With the application running I highly recommend that you work through the TMD-2 Quick Start Guide that is attached to this Instructable. The first part will tell you how the TMD-2 application works, followed by an exercise that will teach you how a Turing machine works. At the end are some additional challenges for those that want to learn more.

No comments: