440 likes | 542 Views
This report outlines the development of a Microgoniophotometer, detailing the functional decomposition, initialization, calibration, and measurement processes. Emphasizing customer needs and specifications, the system integrates a sample holder, RGB light, camera with adjustable zoom, f-stop, focus settings, and a polarizing lens. Key experiments are documented, including torque requirements and stress analysis. The report also discusses algorithm integration using state, strategy, and builder design patterns to enhance modularity and extendibility. Risks and a Gantt chart for timeline visualization are included to guide future development.
E N D
Microgoniophotometer By:Team 11541 SadafMackertich Jeffrey Herbert Peter Bowlin LemuelLebron
System Components Sample Holder RGB Light Holder Camera Zoom, F-Stop and Focus Polarizing Lens Polarizing Lens Holder
Feasibility From Experiment: F2=0.55 lbf From Motor: T1=2.604 in-lbf From Existing Camera: R2=0.946 in R3=2.25 in R1=.75 in Torque required: Solving for T1=0.173 in-lbf
Feasibility S=rΘ S=2(Δc)tanΦ Δc=difference between pitch circles Δc = rΘ/2tanΦ Δc(1 degree) = 0.0759 in Max Stress: 6*10^5 Pa FOS:450
Feasibility θc=Critical Angle θA=Acceptance Applying: nclad=1.46 ncore=1.48 nair=1.00 Outputs: θc=9.43o θA=14.03o Chose θA=10.00o
Arney’s Algorithm Previously in Java MathCAD Results Does not match Java Results
State Pattern • Increases extendibility of the program by encapsulating different behaviors that a single class will exhibit into external “state” classes • Reduces large clumps of “if…else” blocks and case statements, thus making the code easier to read and understand
Phidget Controller and Listeners • The Phidgets controller already comes with a library of functions to plug into the program • The program will make use of these various Listener interfaces to implement complete User control of the motors, needed in adjusting zoom, focus, and f-stop
Strategy Pattern • The Strategy pattern will again improve the program’s modularity and extendibility by encapsulating the gloss measurement algorithm as a separate. • Future revisions to the program will allow more than one algorithm to be used and selected amongst others
Builder Pattern • The Builder pattern separates data representation from manipulation so as to de-couple as many class dependencies as possible. • It will be used in the program to efficiently implement a means of providing multiple forms of output using the same resulting data