 Ahmed Khawaja: Microcontroller  Jonathan Limpalair: Construction  Bryan Mason: Microcontroller  Jesse Mccall: Editor, UI  David Pesa: Construction.

Slides:



Advertisements
Similar presentations
Slide 1CPU Emulator Tutorial This program is part of the software suite that accompanies the book The Digital Core, by Noam Nisan and Shimon Schocken 2003,
Advertisements

LabView Basics.
ABSTRACT The goal of this project was to create a more realistic and interactive appliance interface for a Usability Science class here at Union. Usability.
© Janice Regan Problem-Solving Process 1. State the Problem (Problem Specification) 2. Analyze the problem: outline solution requirements and design.
1 CS 106, Winter 2009 Class 4, Section 4 Slides by: Dr. Cynthia A. Brown, Instructor section 4: Dr. Herbert G. Mayer,
Presenter : Shih-Tung Huang Tsung-Cheng Lin Kuan-Fu Kuo 2015/6/15 EICE team Model-Level Debugging of Embedded Real-Time Systems Wolfgang Haberl, Markus.
1 Electrical and Computer Engineering Guitar Virtuos Justin D’Alessandro (EE) Jacob Dionne (CSE) Adam Montalbano (CSE) Jeffrey Newton (EE) Team Kelly Final.
Chapter 8: I/O Streams and Data Files. In this chapter, you will learn about: – I/O file stream objects and functions – Reading and writing character-based.
Guide To UNIX Using Linux Third Edition
About the Presentations The presentations cover the objectives found in the opening of each chapter. All chapter objectives are listed in the beginning.
10/22/01Cemal Yilmaz1 User Interface Design for a Vehicle Navigation System Aaron Marcus Aaron Marcus and Associates, Inc. (AM+A) Presented by Cemal Yilmaz.
Cambodia-India Entrepreneurship Development Centre - : :.... :-:-
Operating Systems.
How Does a Light Sensor Work?. 1. How do humans sense light? 2. Provide an example “stimulus-sensor- coordinator-effector-response” framework using the.
The NXT is the brain of a MINDSTORMS® robot. It’s an intelligent, computer-controlled LEGO® brick that lets a MINDSTORMS robot come alive and perform.
Graphical User Interfaces A Quick Outlook. Interface Many methods to create and “interface” with the user 2 most common interface methods: – Console –
 At the end of this class, students are able to  Describe definition of input devices clearly  List out the examples of input devices  Describe.
Dr. Wenbin Luo Engineering Department St. Mary’s University San Antonio, TX June 9, 2012.
TEAM PCG MARCH PROGRAM REVIEW Garrett Gustafson (Spring Team Lead) Benjamin Co (Fall Team Lead) Wendelin Mueller Julia Weimar-East Project LightBox Primary.
Lesson 4 Computer Software
Chapter Seven Advanced Shell Programming. 2 Lesson A Developing a Fully Featured Program.
CS 161 INTRO TO PROGRAMMING I Dr. Blaise W. Liffick Fall
1 Integrated Development Environment Building Your First Project (A Step-By-Step Approach)
Advanced Shell Programming. 2 Objectives Use techniques to ensure a script is employing the correct shell Set the default shell Configure Bash login and.
Computer Organization
Music by Touch. 1. Provide an example “stimulus-sensor- coordinator-effector-response” framework for both your (human) sense of touch and the robotic.
LEGO Mindstorms NXT Introduction. Component NXT Brick Touch Sensor Light Sensor Ultrasonic Sensor Interactive Servo Motors MMN Lab.
Adapted for STLP Camp ‘10 STLP Robotics Camp June 3 & 4.
ECE 191: Group 2 NXT Robots & Their Applications in Machine Learning Mentor: Anjum Gupta Group: Roanne Manzano Eric Tsai Jacob Robison Sponsored by: SPAWAR.
[Low-level] Programming of NXT Robots Pavel Petrovič Department of Applied Informatics, Faculty of Mathematics, Physics and Informatics
Adapted for STLP Camp ‘09 Mobile Robots Why do robots need to move?
Accessible Manufacturing Equipment Phase 2 Team 2 Nicholas Neumann Ralph Prewett Jonathan Brouker Felix Adisaputra Li Tian December 10 th, 2010 ECE 480.
Ruslan Masinjila Aida Militaru.  Nature of the Problem  Our Solution: The Roaming Security Robot  Functionalities  General System View  System Design.
11.10 Human Computer Interface www. ICT-Teacher.com.
Robotics Simulation (Skynet) Andrew Townsend Advisor: Professor Grant Braught.
Introduction to Robo Pro
Grob Systems, Inc., the customer, requires an industrial computer system that will have a function of acquiring raw data, processing the data, presenting.
Chapter Three The UNIX Editors. 2 Lesson A The vi Editor.
Automated Industrial Wind Tunnel Controller By Daniel Monahan and Nick DeTrempe Advised by Dr. Aleksander Malinowski.
Use bluetooth for communication 1. enable bluetooth in NXT and also enable visibility 2. configure setting in brickCC –Wait about 30 seconds for searching.
Overview of Programming and Problem Solving Textbook Chapter 1 1.
Overview: The goal of this lesson is to transition from discussing robots in general to the specifics of NXT robot. Objectives: Students will be able.
How to control LEGO® Mindstorms devices Thomas Mueller thomas _ tmspecial.com.
Our project main purpose is to develop a tool for a combinatorial game researcher. Given a version of combinatorial puzzle game and few more parameters,
David Streader Computer Science Victoria University of Wellington Copyright: David Streader, Victoria University of Wellington Debugging COMP T1.
Controlling a Robot with a Neural Network n CS/PY 231 Lab Presentation # 9 n March 30, 2005 n Mount Union College.
Reconfigurable Communication Interface Between FASTER and RTSim Dec0907.
Installing Java on a Home machine For Windows Users: Download/Install: Go to downloads html.
Chapter – 8 Software Tools.
Introduction to Computer Programming using Fortran 77.
Von Neumann Machines. 3 The Von Neumann Architecture Model for designing and building computers, based on the following three characteristics: 1)The.
An operating system (OS) is a collection of system programs that together control the operation of a computer system.
Basic Navigation in Oracle R12 BY: Muhammad Irfan.
BLDC Motor Speed Control with RPM Display. Introduction BLDC Motor Speed Control with RPM Display  The main objective of this.
MEH108 - Intro. To Engineering Applications KOU Electronics and Communications Engineering.
Application architectures Advisor : Dr. Moneer Al_Mekhlafi By : Ahmed AbdAllah Al_Homaidi.
CPIT Program Execution. Today, general-purpose computers use a set of instructions called a program to process data. A computer executes the.
Introduction to Computer Programming Concepts M. Uyguroğlu R. Uyguroğlu.
Some of the utilities associated with the development of programs. These program development tools allow users to write and construct programs that the.
Introduction to the FPGA and Labs
NXT Mindstorms Kit Programming
Topic 2: Hardware and Software
Installing Java on a Home machine
Today’s Agenda Exam 2 Part 2 (11:15am-12:30pm)
11.10 Human Computer Interface
NXT Robots and their Applications in Machine Learning Group 2: Roanne Manzano, Eric Tsai, Jacob Robison Mentor: Anjum Gupta Faculty Advisors: Professor.
Installing Java on a Home machine
What is a Robot?.
Warm Up- What is a robot? Describe in one sentence what you understand by the term ‘robot’ 2. What are the main parts of a robot? What do people do to.
 Is a machine that is able to take information (input), do some work on (process), and to make new information (output) COMPUTER.
Presentation transcript:

 Ahmed Khawaja: Microcontroller  Jonathan Limpalair: Construction  Bryan Mason: Microcontroller  Jesse Mccall: Editor, UI  David Pesa: Construction  Eric Stockton: Team Captain, UI

 Our goal was to make a reprogrammable Turing machine.  The physical machine is made entirely of Lego parts.  The Lego microcontroller is programmed in C like language.  The GUI is programmed in Java.

 The machine interfaces with the tape based on a program specified by an end-user.  The machine has an instruction set including jump, move, and write.  The machine uses a 32 bit reel of tape.  The user interface displays output that explains the binary on the tape.

Let us show you…

 BricxCC used to program the controller for the LEGO motors ◦ No need for Arduino, we have a powerful tool at our disposal already ◦ Simpler and well-documented examples  nXc – Not eXactly C ◦ More control over the machine  Access of encoders, byte-flag options for sensors ◦ Tasks  “Threaded” programs ◦ Functions  Normal C-like functions

 Initially test components individually ◦ Hardware  Move tape, flip bits, read bits  Testing while building allows a quick modification of hardware configuration to achieve desired results ◦ GUI  Accept user input, modify existing input, export input  Easier to determine which component contributes to failure  After both hit acceptable levels, start testing combination of GUI and Hardware  What our machine is designed to do

 We used the Mindstorms NXT 2.0 set (#8547).  We also ordered spare parts from both the Mindstorms NXT 2.0 set and crane set.  The Intelligent Brick, motors, and sensors from the Mindstorms NXT 2.0 set are all that operate the motor functions of the machine.

 The physical machine consists of a base and the strip of tape.  The bit flipping arm, the motor that moves the tape, and the sensor are on the base.  The Tape is a 32 bit long connected piece that floats along the base and is driven by the motors.

 Color sensor used to read in the value of a bit (Zero or One position)  One of the more complex parts of the project  Values read in by the sensor are affected by the ambient light in the room  We use a calibration and voting algorithm to get accurate readings from the sensor.

 The predicate: (buttonClicked || (ctrlKey && shiftKey && qKey));  This predicate acts as a contingency plan for the Turing machine. If preferred, the user can use keyboard commands to exit the program.

Path # buttonCli cked ctrlKeyshiftKeyqKeyTrue 1T---Yes 2FF--No 3FTTTYes 4FTF-No 5FTTF 6FTTTYes

ParameterValue WorkstationMac Dell Vostro Personal Build Dell Laptop Screen Size15"18"22" GUI Size (In Dimension/Java) 30x 50 50x5060x40 Bit Flip Speed (Motor %) 30%60%100% Tape Movement Speed (Motor %) 30%60%100%

Run No WorkStation Screen Size GUIBFSTMS Pass/ Fail 1Mac15"30x5030% 2Mac18"50x5060% F 3Mac22"60x40100% F 4Mac15"30x5030% 5Dell Vostro15"50x50100%30%F 6Dell Vostro18"30x5030%100% 7Dell Vostro22"30x5030%60% 8Dell Vostro15"60x4060%30%F 9Personal Build15"60x4030%60%F 10Personal Build18"30x50100%30% 11Personal Build22"30x5060%30% 12Personal Build15"50x5030%100%F 13Dell Laptop15"30x5060%100% 14Dell Laptop18"60x4030% F 15Dell Laptop22"50x5030% F 16Dell Laptop15"30x50100%60%

 Tested: ◦ 10 Entry Maximum ◦ 20 Entry Maximum ◦ 50 Entry Maximum  Process: ◦ Changed array size accordingly.  Result: ◦ All results gave the desired output.  Input was given up to the maximum limit and no more was allowed.

 Tested: ◦ Actual sending of the instructions to a file.  Process: ◦ Entered Commands and verified their transmission to the file.  Result: ◦ After a few problems with the controller and IO, we were able to achieve successful transmission.

 Tested: ◦ The cursor’s accuracy on the Scrolling Screen.  Process: ◦ Entered commands and verified their transmission. ◦ Checked the current command being changed with the cursor’s position on the Scrolling Screen.  Results: ◦ After making changes to the Scrolling screen’s interaction with the controller, we achieved the desired result.

 2 Parts Tested: ◦ Clearing on the screen ◦ Clearing in the document.  Process: ◦ Entered commands and verified their transmission. ◦ Issued the “Clear” command.  Results: ◦ After reconfiguring the controller interface and the IO interface we achieved the desired results.

 Student (Samuel Jackson – age 13): Samuel represents the common student  Professor (Dr. Hawking – age 45): Dr. Hawking is demonstrating the Turing machine  Breaker (Attila Dada – age 14): Attila loves to break things and will to cause glitches  Tinkerer (Albert Newton - age 12): Albert will tinker and play around with the machine

 Actor: Student, Samuel Jackson  Preconditions: The specific bit is a 0  Steps: The user enters the read bit command on the GUI.  The user sends the command to the microcontroller on the Turing Machine.  The microcontroller signals the sensor to read the bit.  Postconditions: The bit is read as a 0.  Alternative Scenarios: ◦ Scenario One: The bit is incorrectly read as a 1.

ES

 As of now we have successfully built the entire machine and have functionality on it.  We have completed the GUI and are finalizing the coding for the actual machine to work behind the scenes.  In the next few weeks all we will be doing is testing all of our test cases and making the tweaks we need to get a final product done by the end of the semester.