260 likes | 391 Vues
Equipment Design Integrated Component Selection tool (EDICS). Jim Benfante Ray Seeger December 9, 2003. Problem: Design of complex piece electronic equipment. Proposal design – Base-Of-Estimate (BOE) Actual design – Bill-Of-Material (BOM) Cost estimating – Rough-Order-of-Magnitude (ROM)
E N D
Equipment Design Integrated Component Selection tool(EDICS) Jim Benfante Ray Seeger December 9, 2003
Problem: Design of complex piece electronic equipment • Proposal design – Base-Of-Estimate (BOE) • Actual design – Bill-Of-Material (BOM) • Cost estimating – Rough-Order-of-Magnitude (ROM) • Conceptual design • Short time frame • Number of components • Electronic module descriptions
Solution: Provide automated design tool using AI applications and methodologies • Provides quick matching of user requirements to available components to satisfy the design requirements. • Outputs an electronic file capable of being inserted in existing report formats.
Design Criteria: Component descriptions • Module • Monitor • Cabling • Fixture • Chassis • Cabinet • Power • Computer-PC
Agent Architecture: Administrator Inference Engine Data Base User Interface Preliminary Clarification & Determination Output Selection
Knowledge Base Development • Sources of knowledge • Designer • Expert • Current designs
Data Base Development • Sources of data • Vender information • Data sheet • Catalogs • Lead time • Cost • Information standards • Approved Vendor List (AVL)
Rules (Input Description Rules) • (rule (value {if {linesInDigital > 0} • {then {set Ports1 += linesInDigital / 8}}} • {if {linesOutDigital > 0} • {then {set Ports1 += linesOutDigital / 8}}} • {if {linesBusDigitalIO > 0} • {then {set Ports1 += linesBusDigitalIO / 8}}} • {if {linesIsolatedDigital > 0} • {then {set isolatedIO1 = linesIsolatedDigital}}})) * * * * )
Rules (Digital Module Rules – Comparing User input to Inventory) • (rule (value {if { {usersInput_1 parameter handshaking} = {this parameter handshaking} • {and {this parameter possibility} not{"false"} } } • {then {set {this parameter possibility} "true"}} • {else {set {this parameter possibility} "false"}} } } • {if { {usersInput_1 parameter messaging} = {this parameter messaging} • {and {this parameter possibility} not{"false"} } } • {then {set {this parameter possibility} "true"}} • {else {set {this parameter possibility} "false"}} } } • * • * • * • * ) • )
Final Rule (Making Module Selection) • A) Using MATHRULE1 • compare (req for Ports) to (inv avail ports) • using PORTS1 - ISO1 • (where PORTS1 = DigitalIN + DigitalOUT + DigitalIO) • (where ISO1 = users linesIsolatedDigital) • users req PORTS1, compared to the inventory parameter - portsIO. • users req ISO1, compared to the inventory parameter - linesIsolatedDigital. • *************************************************************************************** • From NARL send the above parameters to a JAVA proc • PORTS1 / portsIO = p1 #.### • Possable answer a1: • a1 = p1(round up to nearest integer) • a1 is the number of boards of this type needed for solution. • (The inv board with the Min a1 would be the selection.) • (p1 exp. 9/4 = 2.25, 9/8 = 1.125, 9/16 = 0.5625) • (a1 exp. 9/4 = 3, 9/8 = 2, 9/16 = 1 <-) • #3? #2? #1 choice? • (The selection will be made by COST or LEADTIME)
Final Rule (Making Module Selection) • Possable answer a2: • PORTS1 / portsIO = p1 #.### • a2 = p1(do NOT round up to nearest integer. Use Modulus function) • a1 is the number of boards of this type needed for solution, plus • (The inv board with the Min a1 would be the selection.) • (p1 exp. 20/4 = 5, 20/8 = 2.5, 20/16 = 1.25) • (a2 exp. 20/4 = 5, 20/8 = 2, 20/16 = 1 <--) • (From the remainer, nL2 exp. 20/4 = 0, 20/8 = 4, 20/16 = 4) • | • (with a remainder of 0 no added boards are needed))
Final Rule (Making Module Selection) • Calculate to satisfy the remainder: • a2r exp. 4/4 = 1 <--, 4/8 = 0.5, 4/16 = 0.25) • Solutions: 1) Q1 from (a2 = 20/16) and Q1 from (a2r = 4/4) <-- #2? choice • 2) Q1 from (a2 = 20/16) and Q1 from (a2r = 4/8) <--- #3? choice • (4/8 will have unused Ports) • The COST and LEADTIME decision may make this choice) • Execute MATHRULE2 • Execute MATHRULE3 • Execute MATHRULE3 • Execute Select Best Comparison (User Input to Inventory)
Modules (~175 Rules) Digital Module 25 Analog Module 25 Clock Module 25 DAQ Module 25 Com Module 25 Switch Module 25 Source Module 25 Cabling (~100 Rules) Computer (~150 Rules) Chassis (~75 Rules) Cabinet H/W (~250 Rules) Test Fixture (~75 Rules) Monitor (~75 Rules) Power (~125 Rules) Total Rule Estimate ~1025 Rule Estimate Rules for System
Issues • Use a database or individual text files • Focus will be on Digital Module Selection • JAVA/NARL Interaction • Data parsing routines
Status • Conceptual design completed • Adding to the existing rule base • Selected JAVA and NARL • Data file format