290 likes | 369 Views
HW/SW codesign of a multiple-injections driver for engine control systems. Alessandra Nardi Fan Mo Mentor : Alberto Ferrari. OUTLINE. Problem definition Driver specifications Behavioral model Functional simulation results. PROBLEM DEFINITION - I. HW/SW Driver for fuel injection
E N D
HW/SW codesign of a multiple-injections driver for engine control systems Alessandra Nardi Fan Mo Mentor : Alberto Ferrari
OUTLINE • Problem definition • Driver specifications • Behavioral model • Functional simulation results
PROBLEM DEFINITION - I • HW/SW Driver for fuel injection • Direct injection engine • 2 to 4 cylinders • One injector for every cylinder • independent • max 5 strokes for engine cycle • Tight time constraints
INTAKE COMPRESSION EXPANSION EXHAUSTED 570° 320° CRANKSHAFT ANGLE 120° 440° PROBLEM DEFINITION - I Massimo Baleani, Alberto Ferrari
PROBLEM DEFINITION - II 180 540 Engine phase Engine angle Compression Intake Exhaust Explosion 0 360
PROBLEM DEFINITION - III • Fuel sub-system • sensor for fuel temperature (FT) • sensor for fuel pressure (FP) • Engine angle • fly-wheel (FW) - every 6 • phase-wheel (PW)
DRIVER INPUT/OUTPUT INPUTS • FW, PW, FT, FP • Stroke fuel quantities (Q1,…,Q5) • Stroke opening angles (T1,…,T5) • every TDC Exhaust PARAMETERS: Stroke angle ranges : (_o_k, _c_k) Minimum closure time : Tcmin
DRIVER INPUT/OUTPUT OUTPUTS • Engine angle position (ALPHA90) - every 90 • Engine speed (SRPM90) - every 90 • DC events • Injector signal J • Fuel injected in the last cycle: F1, F2, F3, F4, F5
DRIVER SPECIFICATIONS - I • Max 5 strokes for each cycle of each cylinder • k-th Injection Stroke (ISk) only in (_o_k, _c_k) • Guarantee : IS1 < IS2 < IS3 < IS4 < IS5 • Overlapped strokes: • injector closed for a minimum amount of time Tcmin
DRIVER SPECIFICATIONS - II Tk (_o_k, _c_k) ? • IF Tk < _o_k THEN _o_k = _o_k • IF Tk > _o_k THEN ISk not scheduled • IF Tk (_o_k, _c_k) THEN _o_k = Tk
DRIVER SPECIFICATIONS - III • In case of overlapped strokes: IS1 IS2 IS2 IS1 Minimum Closure Time
IMPLEMENTATION CONSTRAINTS • Injection open angle resolution : +/- 0.2 • Injected fuel quantity precision : 0.1mg • if not cut • All computation must be integer • Only basic mathematical instructions (no sqrt) • Use IC/OC to implement timed functionality
IMPLEMENTATION CONSTRAINTS Injection open angle resolution : +/- 0.2 • Constant speed model = ·t • Constant acceleration model = 0 ·t + 1/2 · a ·t2 • Error : = 1/2 · a ·( / 0 )2 • Example: = 6 0 = 1,000 rpm a = 10,000 rpm/s = 0.03
IMPLEMENTATION CONSTRAINTS • Injected fuel quantity resolution : +/- 0.1mg V = Q / D = 0.1mg/(0.76mg/mm3) = 0.131mm3 t = 13.1 s Example: = 0.03 t = / 0 0 = 1,000 rpm t = 5s • Counter Precision 0 = 8,000 rpm t = 125 s Tclock = 0.5s 0 = 500 rpm t = 2 ms # ticks = 4000 # bits = 12
FUNCTIONAL/ARCHITECTURE CODESIGN • Behavioral Model • Behavioral Decomposition #1 • resources • Behavioral Decomposition #2 • resources optimization
ENGINE DETECTION Description of the modules: - FRC - DETECTOR - SAMPLE90
CYL_DRIVER/OPEN_INJECTION_ANGLES Tk (_o_k, _c_k) ? • IF Tk < _o_k THEN _o_k = _o_k • IF Tk > _o_k THEN Isk not scheduled • IF Tk (_o_k, _c_k) THEN _o_k = Tk
DESIGN FLOW ESTEREL COMPILER ESTEREL Description C COMPILER C SIMULATION Platform DESIGN MODULE PART Executable File TESTBENCH PART TESTBENCH Description OUTPUT DATA Record COMPARE
SIMULATION RESULTS: RPM Speed [rpm] Time [s]
SIMULATION RESULTS: INJECT PULSE Injector signal Time [s]
SIMULATION RESULTS: INJECT PULSE Injector signal Angle [°]
PERFORMANCE - RPM: error < 0.3rov/min - STROKE: no functional error, angle error < 0.08 degree - CLOCK FREQUENCY: 1MHz (with reference to Testbench provided by Alberto Ferrari)