ece 191: group 2 nxt robots & their applications in machine learning mentor: anjum gupta group:...
TRANSCRIPT
ECE 191: Group 2 ECE 191: Group 2 NXT Robots & Their Applications NXT Robots & Their Applications
in Machine Learningin Machine Learning
Mentor: Anjum GuptaMentor: Anjum GuptaGroup: Roanne ManzanoGroup: Roanne Manzano
Eric TsaiEric TsaiJacob Robison Jacob Robison
Sponsored by: SPAWARSponsored by: SPAWAR
Agenda Agenda
Gantt ChartGantt Chart Project OverviewProject Overview ApproachesApproaches Technical DetailsTechnical Details
BluetoothBluetooth ProgrammingProgramming Lego NXT MindstormLego NXT Mindstorm
StatusStatus SummarySummary
Gantt ChartGantt ChartWeek Week 11
Week Week 22
Week Week 33
Week Week 44
Week Week 55
Week Week 66
Week Week 77
Week Week 88
Week Week 99
Week Week 1010
Familiarize with Familiarize with hardwarehardware
Research programming Research programming environments environments
Learn to interface with Learn to interface with the robotsthe robots
ConstructionConstruction
Program robotsProgram robots
Program swarm Program swarm autonomous robots autonomous robots networknetwork
Testing and Testing and TroubleshootingTroubleshooting
Prepare for Final Prepare for Final PresentationPresentation
DocumentationDocumentation
Goals Accomplishments Delayed
Project OverviewProject Overview•Original project goal: To Program a swarm of autonomous Lego NXT robots to perform a specific task without human interaction. •To learn more about both the accuracy and functionality of sensors and motors packaged with the Lego NXT Robots•To learn to program in one or all of three Lego oriented programming languages (Lejos, NXC, and Robot C)•To apply what we know about machine learning to “teach” robots or rather to allow them to learn and behave based upon their environment and each other.
Approach: Research Approach: Research Acquire hardware Acquire hardware
4 Lego NXT kits4 Lego NXT kits 4 Bluetooth adapters4 Bluetooth adapters 1.5V Batteries1.5V Batteries
Familiarize with hardwareFamiliarize with hardware MotorsMotors SensorsSensors BrickBrick
Learn various programming languagesLearn various programming languages Developed specifically for Lego NXTDeveloped specifically for Lego NXT
RobotCRobotC leJOSleJOS NXCNXC
Bluetooth compatible?Bluetooth compatible?
Approach: ProgrammingApproach: Programming
RobotCRobotC Line TrackingLine Tracking
NXCNXC Bitbot ProgramBitbot Program
Stores values in arraysStores values in arrays Communicates through BluetoothCommunicates through Bluetooth
Master -> SlaveMaster -> Slave
Light FollowingLight Following Random MovementRandom Movement
PythonPython Establish Bluetooth communicationEstablish Bluetooth communication
Technical DetailsTechnical DetailsBluetooth Bluetooth
Frequency of 2.402GHz to 2.480 GHzFrequency of 2.402GHz to 2.480 GHzSpread Spectrum Frequency HoppingSpread Spectrum Frequency Hopping
NXT Bluetooth capabilitiesNXT Bluetooth capabilitiesHardwareHardware
CSR BlueCore 4 v2.0+EDR SystemCSR BlueCore 4 v2.0+EDR System Supporting the Serial Port ProfileSupporting the Serial Port Profile
Master to Slave communication onlyMaster to Slave communication onlyBluetooth AdapterBluetooth Adapter
Kensington Bluetooth USB Adapter 2.0Kensington Bluetooth USB Adapter 2.0 Lego NXT, Windows XP compatibleLego NXT, Windows XP compatible
Allows communication between PC and NXTAllows communication between PC and NXT Serial ConnectionSerial Connection
Technical DetailsTechnical Details
ProgrammingProgrammingNXCNXC
Similar to CSimilar to CEasy to use IDEEasy to use IDELimited Bluetooth capabilitiesLimited Bluetooth capabilitiesLimited processing powerLimited processing power
PythonPythonScripted LanguageScripted LanguageUsed in many other applicationsUsed in many other applicationsCommunication is between PC and NXTCommunication is between PC and NXTWill use PC processing powerWill use PC processing power
Technical DetailsTechnical Details Lego NXT MindstormLego NXT Mindstorm
Ports similar to RJ12 connectors for sensors & motorsPorts similar to RJ12 connectors for sensors & motors InputInput
LightLight SoundSound UltrasoundUltrasound TouchTouch
OutputOutput MotorsMotors
BrickBrick Supports Bluetooth and 1 USB 2.0 portSupports Bluetooth and 1 USB 2.0 port 32-bit ARM7 microcontroller @ 48MHz32-bit ARM7 microcontroller @ 48MHz
256 KB of Flash Memory256 KB of Flash Memory 64 KB of RAM64 KB of RAM
8-bit Atmel AVR microcontroller @ 4MHz8-bit Atmel AVR microcontroller @ 4MHz 4 KB of Flash Memory4 KB of Flash Memory 512 Bytes of RAM512 Bytes of RAM
Status Status Currently working on learning Python in Currently working on learning Python in
order to add processing power not present order to add processing power not present in the bot by itselfin the bot by itself
Attempting to asses what possible goals Attempting to asses what possible goals are feasible within the remainder of our are feasible within the remainder of our time frame.time frame.
Determining what final task we hope to Determining what final task we hope to perform with these robots that will satisfy perform with these robots that will satisfy the amended requirements of our client. the amended requirements of our client.