peter bowlin daniel clement trevor fine josh kline tommy sterling trevor

Post on 30-Dec-2015

226 Views

Category:

Documents

0 Downloads

Preview:

Click to see full reader

TRANSCRIPT

Peter BowlinDaniel Clement

Trevor FineJosh Kline

Tommy Sterling

Trevor

Mix-A-Lot OverviewCreate a device that can combine multiple

liquids in an automated fashionUses:

making drinksmixing liquid paintsmixing chemicals (not all at the same time)

Gravity-fed systemFour 2-liter bottles, with a pinch valve and flow

sensor for eachGoal: Simultaneously dispense a precise amount

of each fluid into a single cup or other container

Trevor

Levels of ObjectiveLow Level:

Easily cleanable componentsInterchangeable liquidsDispense from one bottle at a timeLEDs to indicate system state and fluid

dispensation from each bottle.Pre-made mixes selectable with buttons on the

Altera board (no touch-screen GUI)

Trevor

Levels of Objective (continued)Mid Level:

Fill precision of 1 mLSimultaneous dispensingBasic touch-screen GUICup detection (basic functionality)

High Level:More fully featured GUI

Create mixes View amount of remaining fluids.

iPhone interface via bluetoothInternet connectivity via embedded web server

Trevor

Milestone 1Structure built- DoneFirst revision PCB orderedSoftware architecture for MSP430 and Altera

FPGA completedDemonstrate valve control and flow-sensor

inputDraw button on touch-screen and receive

touch event

Peter

Milestone 2Final PCB orderedHardware systems integration completeMCU receives and executes commands from

FPGAGUI and data structures fully implemented.

Final debugging of these in process.

Peter

ExpoFunctional system

Combines appropriate liquids on commandCup detection implementedLED indicatorsTouch-screen user interface with GUIAbility to create mixes

Peter

Functional Decomposition – Level 0

Josh

Level 1

Josh

Level 2 - MCU

Josh

Level 2 - FPGA

Peter

Cyclone III FPGA

NIOS II Softcore Processor

LCD Controller

LCD Panel

Touch Panel

Flash Memory

Audio Out

Communication with I/O CPU (RS-232)

DDR SDRAM

Parallel Data

SCL

SCL

SDA

SDA

DDR SDRAM

Controller

Flash Memory

Controller

Hardware - StructureSecurely holds 4 2-liter bottlesControl column houses the 4

valves and flow metersPredrilled holes for the RGB

LEDs at each bottleNice and stable

Danny

Hardware - Silicon TubingFDA and NSF

approved food grade tubing

Low fluid friction 1.7 Liters per minute

in our structure10mm outside

diameter8mm inside diameter

Danny

Hardware - Flow Meters

Danny

•Swiss Flow meter SF800•5 volt•12-36ma•Flow rate 0.5-20 liter/min•Outputs a pulse train

Hardware - ValvesAccepts 10mm diameter

tubingSolenoid pinch valve

Operates 12VDC at 1.7A30-50 ms response time. Valve normally closedManufactured by TAKASAGO

ELECTRIC,INCPK-0802-NC-3

Danny

Hardware - Power Supply12V computer power supply powers the

valvesCurrently we have tested the computer power

supply that we have (200 Watt) with all 4 valves and it can handle them… like a champ

5V wall wart power supply will power everything elseThe rest of the circuit will require less than 1A

3.3V will be regulated from the 5V power supply

Danny

TLC 594016 PWM channelsGoing to be using

two chips daisy chained

10 RGBs total5 GPI/O to

communicateFlexible SPI

communication

Tommy

Hardware – MSP430F169I/O Controller MCUUtilized Features:

USART0 – RS232 FPGA

USART1 – SPI LED driver

30 GPIO pinsInternal DCO

Interrupt driven arch.

Tommy

Valve Control Schematic

Danny

Q9MOSFET-N

33KR35

1uFC14

Ceramic 805

213R36

GND

GND

GND

MSP Valve IO #1

Anode1

Cathode2

Anode3

Cathode4

Anode5

Cathode6

Anode7

Cathode8

Emitter9

Collector10

Emitter11

Collector12

Emitter13

Collector14

Emitter15

Collector16

Valve Optocouple2

PS2501L-4

1.17K

R37805 1/4W

PWR_GNDD8

10mA 1.8Vf

1020

R38805 1/4W

PWR_GND

PWR_GND

Q11D44H8

3.3V

12V

Q10MOSFET-N

L1Valve

100uF

C?Cap Pol1

PWR_GND

Flow Meter Circuit

Danny

2.2K

R40805

123

P18

FM #1

GNDMSP FM #1

5.1K

R41805

250

R39

5V

10K

R42805

GND

Costs

Josh

Item Quantity Price Cost PurchasedStructureMDF 1 $ 25.00 $ 25.00 Y2-Liter Bottles 4 $ 1.25 $ 5.00 YSilicon Tubing 1 $ 20.00 $ 20.00 Y

Pinch Valve - PK-4805-NC 4 $ 100.00 $ 400.00 YPaint 1 $ 10.00 $ 10.00 NElectricalIR Emitter 1 $ 2.00 $ 2.00 YIR Receiver 1 $ 2.00 $ 2.00 YFlow Meter - SF800 4 $ 25.00 $ - YLED Controller - TLC5940 1 $ 3.50 $ 3.50 YRGB LEDs 10 $ 0.20 $ 2.00 YMCU - MSP430F169 1 $ 11.00 $ - YTouch Screen CPU - Nios II Evaluation Kit 1 $ 449.00 $ - Y

PCB Layout 2 $ 60.00 $ 120.00 N

Passive / Misc. Components 1 $ 100.00 $ 100.00 N

Other Parts (Wires, Connectors, etc.) 1 $ 100.00 $ 100.00 NMiscellaneousMicriµm µC/GUI Software 1 $ 9,995.00 $ - YPresentation / Documentation (Poster, Binding) 1 $ 80.00 $ 80.00 N

Total Cost $ 869.50

Remaining Cost $ 410.00

MSP430 Firmware

Josh

Wait for Mixture

Command

Error handler

Is there

liquid?

Is there a

container

Open Valves

No

No

Yes

Yes

Pour Complet

e?

No

Mix Acknowledge

MSP430 Interrupt Handler

Tommy

Interrupt received

Which Port

Add to counter X

Check if

desired amount

Return

Close Solenoid

Port X (1-4)

Yes

No

Update Amount

Left in Bottle

Touch-Screen Control (Nios II)Provide a user interface for the system:

Use µC/GUIGUI will have three screensWill update the screens based on the status of

the machineNo longer planning to use embedded Linux

Peter

Nios II Software Functional Decomposition

Trevor

Module Draw_Screen()Inputs which screen to drawOutputs images to LCD

FunctionalityWill draw the buttons depending on which of the three screens has been specified. Will also check the status of the liquids available and decide which buttons (mixes) are available. Will check to see if screens need to be updated after every signal to the MSP430 is sent.

Module Send_Mix()Inputs liquids amountsOutputs RS-232 signal to MSP430

FunctionalityQuery MSP430 to see if there is a cup present. Check to see if MSP430 is already mixing something. If it is mixing something, push the mixture onto a queue. If it can send the mix, it sends it, it updates the amounts of liquids available accordingly, and if the mix is a drink and is volatile it will delete it. Once it sends the signal, it sets a flag that the MSP430 is busy.

Nios II Software Functional Decomposition

Trevor

Module Receive_Signal()Inputs RS-232 from MSP430Outputs none

FunctionalityThis is an interrupt. Will set the flag for the MSP430 to available. Will also check to see if there's anything on the queue. If so, will call Send_Mix()

Module Store_Mix()Inputs amounts of liquidsOutputs

FunctionalitySaves the mix and pushes it onto the linked list where the saved mixes are stored. This makes it such that the mix will be drawn when we draw screen one.

Nios II Software Functional Decomposition

Trevor

Module Mix()Inputs Index of mixtures (for linked list) OR amount for volatile liquidOutputs Calls Send_Mix()Functionality Will either find the specified mixture in the linked list, or just

sends the mixture.

Module Mix (Struct)Inputs noneOutputs noneFunctionality Has single pointer to next mix, contains integer amounts for all

liquids in the mix, name of the mixture in a string, int that says whether it's volatile or not.

Module AmountsOfLiquidRemaining (Struct)Inputs noneOutputs noneFunctionality Integer amounts of each of the liquids remaining.

Risks SolutionsSystem Noise/device

failureTime

Constraints/pipelining issuesErrors in the PCBErrors in software

architectureLack of experience with

critical components(MSP430, NIOS II

eval. Kit, µC/GUI)Tommy

Optocouple isolation

Plan for extra time on certain areas

Testing!

RisksShipping delay/wrong parts

Plan for shipping timeOrder earlyParallel planning

Fluid Leakage

Tommy

Contingency PlanningAlready canned Linux ideaNew plan: implement GUI with Micriµm Alternatives:

Bitmap images to create the GUIUse push buttons instead of touch events.

If we can’t get flow meters to work, use a scale instead with serial communication link to MSP430.

Tommy

Division of Labor

Josh

Danny Tommy Trevor Peter Josh

Structure X

Power Circuitry, Valve Control X X

PCB Layout X X

MSP430 code X X

Altera - Verilog X X

Altera - C code - User Interface X X

Gantt Chart

Josh

top related