Team Lifted: Critical Design Review Andrew Cober Dan Crowe Sujan Gautam Anthony Schubert Ryan Yeash
Overview / Revised Goals Dan Crowe
Overview Project Problems and Design Modifications Hardware/Schematics Electromagnet Construction Firmware/Software Logistics and Administration Questions
Project: Magnetic Control Use electromagnets to control the position of a magnetic object Control x and y position Control object through a user interface First approach: buttons Second approach: touchscreen
Problems Encountered Power limitations Prefabricated Electromagnets have undesired design Iron core laminates disappointing Buck converters unable to source sufficient current
Design Modifications Control object on 2D surface Construct electromagnets powerful enough to meet specifications Use ferrite cores for lower core loss Implement H-bridge to divert current Control position of a magnetic object Apparatus made of plexiglass
Revised Goals Effectively control the object with 1cm accuracy in 2-D plane Touchscreen sensing Touchscreen interface Object follows a user defined path
Revised Design Four electromagnets mounted on a platform Cyclone II FPGA used to control the current to the electromagnets through H- bridge Control based on position of the object Touchscreen
Hardware/Schematics Ryan Yeash
Hardware Block Diagram
ADC Conversion Circuit
RS232 Connection
JTAG Connection
Power Circuitry
Electromagnet Control
Electromagnet Specifics Sujan Gautam
Electromagnets I-Core solenoid 3.5”x1”x1” Ferrite core for low power loss and high magnetic flux density 18 AWG wire to handle sufficient current and lower resistivity turns depending on field output
Some Calculations Length 3.5” Number of turns 100 DC current 5 A Relative permeability 200 B 0.5 Tesla This does not take into account the core and wire loss
Firmware Specifics Anthony Schubert
Some Altera Details HAL Hardware Abstraction Layer An API (Application Programming Interface) for use with Altera’s Nios II modules Allows easy C programming Parallel I/O General purpose interface for peripherals Allows for many possible configurations
FPGA Configuration
Current Tasks Interrupt-driven user interface Have been using HAL API to write interrupt handlers for button inputs Will eventually use for user input SRAM Configured Cyclone II on development board to use off-chip SDRAM Would prefer to use off-chip SRAM Smaller but faster Need off chip memory to use HAL Start processing ADC input
Controller Firmware Proportional Controller Implemented through control of electromagnets with PWM Derivative Controller Implemented by calculating the rate at which the object is moving Hence PD control
Software Flow Diagram Power on Initialize Hardware Activate Magnets Object Detected? Center Object Yes No Object Shifted? Yes No Start User Input User shift? Yes No Shutdown Sequence
Logistics and Administration Andrew Cober
Cost
Division of Labor Andrew Cober Dan Crowe Anthony Schubert Ryan Yeash Sujan Gautam MechanicalRCIRR PCBCIR Power Control RCIR System Modeling RCIRR Control Algorithm RRRCI FirmwareRRR R – Responsible and CI – Consult and Inform Everyone is informed when a task is completed or needs further assistance
Timeline Estimate
Milestones Completed CDR: Obtained most parts, started development of software framework, FPGA PCB design completed
FPGA PCB Layout Rev. 1
Milestones Continued Still to come M1: Simple one dimensional control and movement of object M2: Control x and y coordinates of the object Expo: Path control and completion of project
Questions ?
Extra Slides
Risks Power limitations into the magnets may limit object size Control complexity may be too difficult to implement May have to rescale from FPGA to MSP
Contingency Plans Use photo diodes rather than touchscreen for object position control
Possible Extensions Addition of LCD to display object data Touchscreen for user control Trackball control Wireless communication between apparatus and user interface Implement multi-core processing on Cyclone II
NiosII Softcore
FPGA Configuration Cyclone II FPGA Nios II softcore processor LCD controlled using FSM Receives commands and data from NIOS II via parallel I/O May switch to built-in LCD module Parallel I/O for button inputs JTAG module for programming/debug SRAM/SDRAM controller