C
/
C
+
+
This is a summary of my c/c++ experience. I've been programming in c/c++ for real time embedded system for over 15 years. Real time codding for safety critical software, for simulation, for motion control, and for graphical user application.


Date Project Details Company
1996 to 1998

            Programming of Gas Turbine Engine Electronic Control Laws to meet DO-178B. All control algorithms are excecuted in real time on target processor. Engine electronic controls for helicopter application.
  • N1, N2, governing control
  • Fuel Flow Logic Selection
  • Input/Output conversion and accomodation logic
  • Fuel Flow Predicted
  • Training Logic
  • Primary autorotation detection logic
  • Secondary autorotation detection logic (loss of NR)
  • Torque/MGT matching logic
  • etc.
            Min fuel flow logic loop implemented with a dynamic compensation to prevent flameout problem. Simulation and NRC validation.

            Data Dictionary Split. Creation of an utility written in c to split the common database between HSD and PWC; into two distinct databases. The utility searched all the HSD and PWC software modules and subsequently split the common database into a HSD database and a PWC database.

            Creation of a fuel flow predicted algorithm. The algorithm estimated the fuel flow based on ambient condition and engine operating condition. Implementation and test of the algorithm.

Modeling, Simulation and Analysis :
  • Simulation using LSV GEN
  • Simulation using Matrix X
  • NRT modelisation
  • Extension of rotor load map
  • Overspeed test
  • Module Testing
  • Development of NRT model of Rotor System
  • Formulation of A, B, C, D matrices
  • Release of model
  • Determination of peak resonance frequencies
  • Transient performance and dynamic stability analysis
  • Analysis of governing and limiting loops
  • Modification of starter torque map with temperature
  • Transformation of aero-thermal model into continuous model
  • Stability margins and transient performance obtained across the operating envelop of operation
  • Investigation of instability during limiting
  • Analysis performed according to “Best Practices”
  • etc
Pratt & Whitney Canada
1999

            Programming in C/C++ and ADA for real time application software. Full authority Digital Engine Control for large turbo-fan applications.

  • Bleed valve logic implementation
  • Thrust reverser logic design
  • Implementation of CR into software modules
  • Determination of appropriate update rate for software modules
  • Determination of proper execution sequence of modules
  • Placement of modules in correct sequence into the task scheduler
  • Participation in software IPT team
  • Review of test cases
  • IPT lead for the I/O logic software
  • 5 wires LVDT, TC, RTD, Discrete Inputs,Filter Implementation, Flow Meter, torque motor output, conversion logic implementation
  • Mux design review, BIT test
  • etc
Pratt & Whitney USA
2000

            Programming in C/C++ for real time motion control application. Control laws executed in real time on in house design motion control board.

            Motion control code precisely control the motion of 2 servo motors to execute exact profile in 2 dimension. Implementation of PID discrete algorithm, low pass, and notch filter discrete filters. Tuning and optimisation of system. Modeling and simulation of system using Simulink.
Midas Vision System
2001 to 2005

            Programming of the Common Control for the RB211 engine. The real time code executed on RTOS 32. Simulation of the system in Simulink on desktop computer. Real Time Simulation of the real control with a real time model. Integration of the real controller with the real time engine model.

            Programming of the Trent engine controller. Simulation of the Trent engine using simulink. Integration of the Trent engine real controller with the real time simulation.

Rolls-Royce
2005 to 2011

            Senior Embedded Controls Engineer for programming Gas Turbine Engine Electronic Control Laws to meet DO-178B. Elicopter and small Turbo-Fan engine controls system development.
  • Layout of Application Software structure.
  • Put in place software requirement document and software architecture.
  • Build a computer simulation of the engine and helicopter using Matlab/Simulink for rapid prototyping.
  • Develop and design the controller dynamic loop structure and gains compensation for all the engine control loop:
    1) Gas Generator Control Loop
    2) Torque Limiter Loop
    3) N1 Goverving Loop
    4) ITT Limit Loop
    5) Etc

  • Established test procedures for testing the engine
  • Developed new methods for engine characterization
  • Technical lead for the project
  • Planning of software activities according to DO-178B
  • Based on CSCR’s requirements; creation and implementation of logic into AS:
    1) N1 Exceedance
    2) N2 Exceedance
    3) ITT Exceedance
    4) Engine Anti-Ice Discrete
    5) N2 Idle speed selection
    6) ECTM flag
    7) TT0 Heater Bias

  • N1 outer loop gain tuning on engine
  • Review and analysis of test data
  • Determination of overshoot and peak-to-peak ripple for : N1, N2, and ITT
Pratt & Whitney Canada
2005 to 2011

            Programming in C/C++ of a state of the art real time motion controller for 3 axis motion. Control up to 3 servo motors or 3 stepper motors simultaneously.

  • Controller with fast Interrupt up to 42 micro-sec
  • Automatic Dynamic Tuning feature to calculate gains of system automatically (with on-board model)
  • Runs under RTOS-32 Real Time Operating System
  • Interrupt speed is selectable to reduce the CPU loading
  • Features configurable velocity and acceleration profile
  • Diagnostic mode
RoutBot "TM"
2005 to 2011

            Programming in C/C++ of a complete GUI for precisely designing 2D geometry.

  • Easily combine lines, spline, and arcs to create any shapes
  • unit conversion : imperial, metric
  • Editing Options : Copy, Paste, Break, Mirror , Rotate
  • Zoom and Grid feature
  • Advanced Snapping Option
  • Multiple Language Support
RoutCad "TM"