Project Futura.

Slides:



Advertisements
Similar presentations
BEST Robotic, Inc. easyC Team Training
Advertisements

ECE 480 Design Team 3 Technical Lecture
Lab7: Introduction to Arduino
Mini-SumoBot Construction and Programming
How to use Arduino By: Andrew Hoffmaster.
Embedded Sumo 1T4 – 1T5 UTRA.
An Introduction to C Adam Gleitman – IAP 2014.
Motor & Encoder Mounting Guide. Bill of Materials 1. 10:1 Micro Metal Gearmotor HP item # 999 X 2 2. Pololu Micro Metal Gearmotor Bracket Extended Pair.
Slides created by: Professor Ian G. Harris PIC Development Environment MPLAB IDE integrates all of the tools that we will use 1.Project Manager -Groups.
Re-programming the Simon Says with Arduino Linz Craig, Brian Huang.
Getting your Arduino to Work: Microsoft Windows 1.Install Arduino programming environment 2.Install Arduino Uno driver 3.Make sure you can download a program.
V EX C OACHES ' T RAINING October 12, Agenda for Today 9 – 10 AM : Tina Reeves and the Engineering Notebook 10 – Noon : Finish Building, Basic Robot.
Advanced Micromouse Hardware Design
IDE for ARM 7 board Tutorial 3 IDE of Keil4 V3.a 1.
Using PDG with e2studio: Example
1 Introduction to Coding. 2 Example Codes A lot of example codes are given with Arduino IDE A code can often be based on a previous example rather than.
Digital I/O Connecting to the Outside World
ASPPRATECH.
MUST HAVE SHOULD HAVE COULD HAVE Module # 010. Qi Hardware Objectives Recognize hardware Know how to interface to field equipment Know the 4 different.
Embedded Programming and Robotics Lesson 2 C Programming Refresher C Programming1.
Introduction to Arduino Prepared by R. Lamond.  “Arduino is an open-source electronics prototyping platform based on flexible, easy- to-use hardware.
Robotics Research Laboratory Louisiana State University.
Lecture 3: The Controller PID Control and Speed Profile.
ARDUINO PROGRAMMING Working with the Arduino microcontroller.
Part 1 Using the ARM board And start working with C Tutorial 5 and 6
Dean Brock, Rebecca Bruce and Susan Reiser, CCSC SE 2009 Using Arduino Material taken from Todbot blog Bionic Arduino Todbot blog Bionic ArduinoTodbot.
Silicon Labs ToolStick Development Platform
CSE430/830 Course Project Tutorial Instructor: Dr. Hong Jiang TA: Dongyuan Zhan Project Duration: 01/26/11 – 04/29/11.
Driver Station MVRT 2009 – 2010 Season. Add information Breadboard Classmate PC USB Hub Joysticks Stop Button.
1 iSee Player Tutorial Using the Forest Biomass Accumulation Model as an Example ( Tutorial Developed by: (
CONROLIB. Objective of presentation  CONRO Developer should be able to program a fully functional CONRO after this presentation.
Microcontroller Hands-on Workshop #3 Ahmad Manshad New Mexico State University Institute of Electrical and Electronics Engineers November 7, 2009.
Programming and Controls for FIRST – The Basics Tom Barch, Scott VanBrocklin and Kayla Peltier February 5 th, 2008.
Programming Concepts (Part B) ENGR 10 Introduction to Engineering 1 Hsu/Youssefi.
The New FTC Platform (Connecting your legacy hardware)
Arduino. What is it? A open-source software suite and single-board microcontroller. Allows easy and affordable prototyping of microcontroller applications.
BEST Robotic, Inc. easyC Breakout Session By: Guy Chetrit Programming With easyC September 15, Copyright © 2012 BEST Robotics, Inc. All rights reserved.
EasyC Programming Workshop January 30, 2008 Hauppauge High School SPBLI - FIRST Mark McLeod Advisor Hauppauge Team 358 Northrop Grumman Corp.
By: Khalid Hawari Muath Nijim Thaer shaikh Ibrahim Supervisor: Dr. Jamal Kharousheh Dr. Nasser Hamad 27 December 2010.
FIRST GADGETEER PROJECT. Where are you? Making a VS project Parts of a C# program Basics of C# syntax Debugging in VS Questions? 2.
Tweaking Your Simon Adding a photoresistor and changing code Instruction by Pete Lewis and Linz Craig.
Tweaking Your Simon Adding a photoresistor and changing code Instruction by Pete Lewis.
Lecture 6 Parts Design Choices(part2). Motor/Encoder.
Development of a microprocessor project with LPC2388 development board.
Programming the Geiger Counter Board 1. Arduino Files Go to and download the latest Arduino.
Getting Started With the Arduino Uno
ChibiOS/RT Demo A free embedded RTOS
HTC Android Projector User Guide v Agenda Setup and Demo Environment Launch Projector Installer Launch Projector Application Q&A.
Arduino Training New Mexico Mathematics, Engineering, and Science Achievement (NM MESA) Getting Started.
CSE466 - Fall What is an Embedded System  Its not a desktop system  Fixed or semi-fixed functionality (not user programmable)  Lacks some or.
Microcontrollers JULES CALELLA. Microcontrollers vs Microprocessors  Microprocessors – do not contain RAM, ROM, I/O  Microcontrollers – The whole package.
Mechanical Components and Programming Ken Youssefi Introduction to Engineering – E10 1.
1 Introduction to Haptics Introduction to the Hapkit board Allison M. Okamura Stanford University.
Programming in Arduino Materials:Arduino Board Casperelectronics Pre Pres. Notes Photos from workshop?
Bdps 2 Lecture 2. Circuits and Ohm's Law For resistive circuits.
Embedded C- Language Lets Learn fundamentals !!. An Embedded system is combination of computer hardware and software, and perhaps additional mechanical.
Wireless Bluetooth Controller For DC Motor. Introduction Wireless becoming more and more available and widely used Bluetooth is one of the major players.
Programming and Debugging with the Dragon and JTAG Many thanks to Dr. James Hawthorne for evaluating the Dragon system and providing the core content for.
Application Case Study Christmas Lights Controller
Programming Concepts (Part B) ENGR 10 Introduction to Engineering
Embedded Systems Intro to the Arduino
Manual for Arduino Kit v1.0
Programming Concepts (Part B) ENGR 10 Introduction to Engineering
Intro to Micro Controllers
The programming page of the Brick
Software Setup & Validation
UNIT 11: RC-SERVOMOTOR CONTROL
Introduction to Arduino
Programming Concepts (Part B) ENGR 10 Introduction to Engineering
Introduction to Programing the Cortex for BEST
Presentation transcript:

Project Futura

Introduction To help relatively experienced student to learn advanced knowledge of Micromouse Kit Mouse that capable to make advance movement, such as curve turn and acceleration were made as teach tools High resolution encoder is the key. You can apply the what you’ve learned to a working mouse without struggling with potential hardware problem. You need to design your own mouse for competition

Specs Width 75mm Length 100mm height 38mm weight 75g w/ battery wheel 3D printed wheel and mount + mini-z tires (MZT302-20) Processor STM32F405RGT6(168Mhz with internal RC) Motor/Encoder Pololu 1:10 gear motor HP/AS5304 Encoder Gear ratio 1:10 battery 120mah 25C 2s1p Motor Driver ZXMHC3F381N8+TC4427 (H-bridge + level shifter) Sensor TEFT4300+SFH4545 X 4 Gyro LY3200 User Interface 2 buttons + 11 LEDs + dot matrix display Specs

Demo http://www.youtube.com/watch?v=YJhf3xfEgZY

How it’s made?

Design PCB

Solder and prepare all parts/components/testing tools

Finish Assembling and do tests to Make sure everything is working

Pack them into containers Ready to use for future We spent lots of efforts to make these mouse, play it carefully since they will be used repeatly in the future

Lecture 1

Keil IDE We will be using the Keil IDE to write our code and program the mouse Step 1: Install the file mdk460.exe Step 2: Install the st-link_v2_usbdriver Step 3: Open the file FuturaProject/project/micromouse_test.uvproj with Keil uVision4

Adding a new file to Keil Step 1: Create the file in either user_Libraries/src (.c files) or user_Libraries/inc (.h files) Double click on the group user_Libraries_src or user_Libraries_inc in the “Project” pane and select your file

Downloading your code to the mouse Connect the three mouse pins, TMS, TCK, and GND, to the ST-link programmer pins, IO, CLK and GND respectively In Keil uVision, compile your code by pressing F7. Then click Flash->Download.

Sensors void readSensor() Reads each sensor and places the results in the global variables: LFSensor, RFSensor, DLSensor, and DRSensor. This should be called in your systick handler

Gyro void readGyro() Similar to readSensor() Sets the variables aSpeed (your mouse’s angular speed) and angle (the current angle of your mouse

Volt Meter void readVolMeter() Sets the variable voltage Always make sure your batteries are well charged, especially when using the small batteries

Encoders int32_t getLeftEncCount() & int32_t getRightEncCount() Returns the current encoder count 3520 encoder counts per revolution

User Interface Buzzer Matrix display LEDs void shortBeep(int duration, int freq) duration – milliseconds freq – Hz (example 8000) Matrix display void displayMatrix(const char* s) s – 4 character (max) string See others in matrixDisplay.h LEDs LED1_ON, LED2_ON … LED11_ON LED1_OFF, LED2_OFF … LED11_OFF

Delay void delay_ms(u32 nTime) nTime – milliseconds

Interrupts void systick() A 1 millisecond timed interrupt It is a function that runs every millisecond void button1_interrupt() & void button2_interrupt() These functions are run when a button is pressed

Motors void setLeftPwm(int32_t speed) & void setRightPwm(int32_t speed) speed – A value ranging from -999 through 999, representing the duty cycle of the pwm for the motor.

printf Used to print debugging information Example: printf(“Left front sensor: %d\r\n”, LFSensor); See more information here: http://www.cplusplus.com/reference/cstdio/printf/

PuTTY PuTTY is a desktop application that can be used to communicate with the mouse Download the windows version here: http://the.earth.li/~sgtatham/putty/latest/x86/putty.exe Set connection type to “Serial” Under “Serial line” type “COMX” where X is your COM port number You can find the COM port in Windows Device Manager In the “Serial” tab, set “Flow control” to “None” Default options should be fine for everything else

PuTTY Connect the FTDI board pins TX, RX, and GND to the RX, TX, and GND pins on the mouse TX connects with RX RX connects with TX You can now communicate with your mouse using printf and PuTTY