370 likes | 523 Views
EPOCalypse Mind Controlled Car. Group 21 Kathryn Morales Mike Strobridge Chris Perez Lee Sully. Basic Overview. Objectives. To be able to control an RC car around various obstacles using only the mind
E N D
EPOCalypse Mind Controlled Car Group 21 Kathryn Morales Mike Strobridge Chris Perez Lee Sully
Objectives • To be able to control an RC car around various obstacles using only the mind • When certain brain waves or facial expressions are detected, the software will register and interpret them as separate vehicle commands • Depending on what signal is detected the vehicle will go forward, left, right, or stop
Requirements/Specifications • Headset: sampling rate of > 100 Hz, Resolution of 16 bits, Dynamic range > 200 mVpp • Emotiv Software: 2.4GHz processor, 1GB RAM, 50 MB disk space • RC car: have an operating range of 30 ft and have a full range of motion
Emotiv EPOC Headset • 14 channels with 7 paired sensors • Sampling rate of 128 Hz • 16 bit resolution • 0.2 – 45 Hz bandwidth • Dynamic Range 256 mVpp • Transmits data wirelessly to Bluetooth dongle at 2.4 GHz band
Emotiv Suites • Emotiv’s 3 suites • Cognitiv- registers and interprets users conscious thoughts • Expressiv- uses the signals measured to interpret users facial expressions • Affectiv- monitors user’s emotional states (not being used) • All suites reflect real time measurements • Controlling forward motion of the car through the Cognitiv suite by training the mind to manipulate a 3D cube. Location of sensors on scalp
Emotiv Headset Training/Testing Expressiv Suite Testing; Detects range of facial expressions We will be using the left wink and right wink detection for left and right turning. • Cognitiv Suite Training; • Methods tried • Thinking in a different language • Reaction to modest pain (oceans 11 tec.) • Focusing on/past an object • Immediate local temperature change
Intel DH61AG Mini Motherboard • Decided on DH61AG • Because of price meets minimum requirements • Using Intel Core i3 sandy bridge processor running at 2.5 Ghz • System Memory of 1 GB. Looking to expand to 2 GB • Integrated Intel HD graphics as a bonus • 160 GB laptop hard drive added Mini- ITX (17 X 17 cm)
EPOC Software • We decided to write the EPOC software using C++ • There are many examples of code already written in C++ • No prior experience in C++, so wanted a challenge.
Software Layout • Programed in C++ • Translation Programming Scheme • Software translates a stream of signals into an 8 bit binary signal • The EmoState contains information and data • evoked by the signals and commands are handled by its corresponding EMOTIV API functions and methods
Class Diagram • Translation Programming Scheme
Basic Car Layout Transmitter on motherboard Receiver on pcb Atmega328p-pu DC Servo Motor DC Drive Motor
New Bright Ford F-150 • 3 lbs • $26.00 • Atmega 328p-pu microcontroller with 28 pins and a 5V operating voltage 9.8 inches 9.3 inches 17.7 inches 1.36in .28in
LM 7805 Voltage Regulator • Various diodes, LEDs, capacitors, resistors, and pin heads • .1uF, 22uF, 22pF, 2.2kohm, 47kohm, 1N4004
L298N H-Bridge • Able to control two motors at the same time with a 5V operating voltage • When Enable A is activated it turns on the drive motor • When Enable B is activated it turns on the turn motor H-Bridge L298N .069 in .344in .157in
Transmitting and Receiving Data • 2 Xbee modules communicate between the motherboard and the vehicle • 1 Xbee connected to an Xbee Explorer dongle, then connected to the motherboard • 1 Xbee connected to an Xbee Explorer Regulated, then connected to the pcb • Range of 100 ft indoors/300 ft outdoor. • Operating frequency at 2.4 GHz
Power • Car: 6 volts, via four AA batteries, to power everything on the vehicle • Motherboard: 90W 19V Laptop power source. • Headset: Lithium polymer rechargeable battery with 12 hr life.
Difficulties • Analysis and encoding of raw EEG data • Maintaining left and right directional signals from left and right blinking • Problems training more than 3 cognitiv commands for forwards/backwards movement • Transmitting and receiving data from DH61AG motherboard to the onboard PCB