MotCurrRegVltgLimr_MDD

Module Design Document

For

‘MotCurrRegVltgLimr’

VERSION: 3.0

DATE: 7-Nov-2016

Prepared By:

Matthew Leser,

Nexteer Automotive,

Saginaw, MI, USA


Location:
The official version of this document is stored in the Nexteer Configuration Management System.

Revision History

Sl. No.DescriptionAuthorVersionDate
1Initial VersionSelva Sengottaiyan1.026-May-2015
2Updated graphical representation and added local function informationNick Saxton2.013-Apr-2016
3Updated for FDD v2.1.0Matthew Leser3.07-Nov-2016


Table of Contents

1 Abbrevations And Acronyms 5

2 References 6

3 High-Level Description 7

4 Design details of software module 8

4.1 Graphical representation 8

4.2 Data Flow Diagram 8

4.2.1 Module level DFD 8

4.2.2 Sub-Module level DFD 8

4.3 COMPONENT FLOW DIAGRAM 8

5 Variable Data Dictionary 9

5.1 User defined typedef definition/declaration 9

5.2 Variable definition for enumerated types 9

6 Constant Data Dictionary 10

6.1 Program(fixed) Constants 10

6.1.1 Embedded Constants 10

6.1.1.1 Local 10

6.1.1.2 Global 10

6.1.2 Module specific Lookup Tables Constants 10

7 Software Module Implementation 11

7.1 Sub-Module Functions 11

7.1.1 Initialization Functions 11

7.1.1.1 INIT: MotCurrRegVltgLimrInit1 11

7.1.1.1.1 Design Rationale 11

7.1.1.1.2 Module Outputs 11

7.1.1.1.3 Module Internal 11

7.1.2 PERIODIC FUNCTIONS 11

7.1.2.1 INIT: MotCurrRegVltgLimrPER1 11

7.1.2.1.1 Design Rationale 11

7.1.2.1.2 Module Outputs 11

7.1.3 Interrupt Functions 11

7.1.4 Server runnables 12

7.1.4.1.1 Store Local copy of outputs into Module Outputs 12

7.1.5 Local Function/Macro Definitions 12

7.1.5.1.1 Local function #1 12

7.1.5.1.2 Local function #2 12

7.1.5.1.3 Local function #3 12

7.1.6 GLObAL Function/Macro Definitions 12

7.1.7 Tranisition FUNCTIONS 13

8 Known Limitations With Design 14

9 UNIT TEST CONSIDERATION 15

10 Appendix 16

Abbrevations And Acronyms

AbbreviationDescription
DFDDesign functional diagram
MDDModule design Document
FDDFunctional Design Document

References

This section lists the title & version of all the documents that are referred for development of this document

Sr. No.TitleVersion
1MDD GuidelinesProcess 4.02.01
2Software Naming ConventionsProcess 4.02.01
3Software Design and Coding standardsProcess 4.02.01
4FDD – SF105A_MotCurrRegVltgLimr_DesignSee Synergy sub project version

High-Level Description

None

Design details of software module

Graphical representation

Data Flow Diagram

Refer FDD

Module level DFD

Refer FDD

Sub-Module level DFD

Refer FDD

COMPONENT FLOW DIAGRAM

Refer FDD

Variable Data Dictionary

User defined typedef definition/declaration

<This section documents any user types uniquely used for the module.>

Typedef NameElement NameUser Defined Type

Legal Range

(min)

Legal Range

(max)

None

Variable definition for enumerated types

Enum NameElement NameValue
None

Constant Data Dictionary

Program(fixed) Constants

Embedded Constants

Local

Constant NameResolutionUnitsValue
MODIDXHILIM_VOLT_F32Single precision floatVolt1
MODIDXLOLIM_VOLT_F32Single precision floatVolt0

Global

Constant Name

Module specific Lookup Tables Constants

None

Software Module Implementation

Sub-Module Functions

Initialization Functions

MotCurrRegVltgLimrInit1

INIT: MotCurrRegVltgLimrInit1

Design Rationale

Design follows implemenetation in FDD.

Module Outputs

Refer ‘MotCurrRegVltgLimrInit’ block in FDD

Module Internal

None

PERIODIC FUNCTIONS

INIT: MotCurrRegVltgLimrPER1

Design Rationale

Design follows implemenetation in FDD.

Module Outputs

Design follows implemenetation in FDD.

Interrupt Functions

None


Server runnables

None

Store Local copy of outputs into Module Outputs

None

Local Function/Macro Definitions

Local function #1

Function NameKpKiCtrlTypeMinMax
Arguments PassedMotPropGain_Ohm_T_f32Float3202.25
MotIntglGain_Ohm_T_f32Float3203.6
SysSt_Cnt_T_enumEnumSYSST_DISYSST_WRMININ
CmdErr_Ampr_T_f32Float32-200400
*MotVltgIntglCmdPrev_Volt_T_f32Float32-10001000
*MotCurrRegVltgLimrMotVltgPropCmd_Volt_T_f32Float32-26.526.5
*MotCurrRegVltgLimrMotVltgIntglPreLim_Volt_T_f32Float32-26.526.5
MotVltgIntglLoLim_Volt_T_f32Float32-310
MotVltgIntglHiLim_Volt_T_f32Float32031
*MotVltgPropCmd_Volt_T_f32Float32-26.526.5
*MotVltgIntglCmd_Volt_T_f32Float32626.5

* MotVltgPropCmd_Volt_T_f32 and * MotVltgIntglCmd_Volt_T_f32 are outputs of this function.

Local function #2

Function NameErrorCalcQaxTypeMinMax
Arguments PassedQaxCurrCmd_Ampr_T_f32Float32-200200
QaxRplCmd_Ampr_T_f32Float32-2929
QaxCoggCmd_Ampr_T_f32Float32-66
QaxCurrModif_Ampr_T_f32Float32-200200
* QaxCmdFinal_Ampr_T_f32Float32-200200
ReturnsCmdErrQax_Ampr_T_f32Float32-200400

*QaxCmdFinal_Ampr_T_f32 is also an output of this function.

Local function #3

Function NameLoaScaFacTypeMinMax
Arguments PassedCurrLoaMtgtnEn_Cnt_T_loglBooleanFALSETRUE
IvtrLoaMtgtnEn_Cnt_T_loglBooleanFALSETRUE
MotCtrlDualEcuMotCtrlMtgtnEna_Cnt_T_loglBooleanFALSETRUE
*CurrLoaScaFac_Uls_T_f32Float3201
*IvtrLoaScaFac_Uls_T_f32Float3201
*DualEcuScaFac_Uls_T_f32Float3201

*CurrLoaScaFac_Uls_T_f32, *IvtrLoaScaFac_Uls_T_f32, and *DualEcuScaFac_Uls_T_f32 are outputs of this function.

Local function #4

Function NameMotCurr_PredTypeMinMax
Arguments PassedMotInduQaxEstimdIvs_IvsHenry_T_f32Float32224033334
MotREstimd_Ohm_T_f32Float320.0050.12565
CurrQax_Ampr_T_f32Float32-200200
MotVltgQaxPrev_Volt_T_f32Float32-26.526.5
CurrDax_Ampr_T_f32Float32-200200
MotVltgDaxPrev_Volt_T_f32Float32-26.526.5
MotBackEmfVltg_Volt_T_f32Float32-101.25101.25
ReacncQax_Ohm_T_f32Float32-0.50.5
ReacncDax_Ohm_T_f32Float32-0.50.5
MotInduDaxEstimdIvs_IvsHenry_T_f32Float32224033334
MotCurrRegVltgLimrMotCurrPredEna_Cnt_T_f32BooleanFALSETRUE
MotCtrlCurrPredTi_NanoSec_T_f32Float320125000
*MotCurrQaxPred_Ampr_T_f32Float32-200200
*MotCurrDaxPred_Ampr_T_f32Float32-200200

*MotCurrQaxPred_Ampr_T_f32 and *MotCurrDaxPred_Ampr_T_f32 are outputs of this function.

GLObAL Function/Macro Definitions

None

Tranisition FUNCTIONS

None

Known Limitations With Design

None

UNIT TEST CONSIDERATION

None

Appendix

None

Last modified October 12, 2025: Initial commit (1fadfc4)