diff --git a/AuxillaryTestHarness/Dashboard.Designer.vb b/AuxillaryTestHarness/Dashboard.Designer.vb index 2224b0a5e891d992c2fec47acc95c2bfc979a6b4..b55d73a0fd01e4e564631b2ca399e08d13cfa818 100644 --- a/AuxillaryTestHarness/Dashboard.Designer.vb +++ b/AuxillaryTestHarness/Dashboard.Designer.vb @@ -42,15 +42,16 @@ Partial Class Dashboard Me.Label2 = New System.Windows.Forms.Label() Me.txtVehicleWeightKG = New System.Windows.Forms.TextBox() Me.tabElectricalConfig = New System.Windows.Forms.TabPage() - Me.DataGridView3 = New System.Windows.Forms.DataGridView() - Me.DataGridView2 = New System.Windows.Forms.DataGridView() - Me.DataGridView1 = New System.Windows.Forms.DataGridView() + Me.gvResultsCardOverrun = New System.Windows.Forms.DataGridView() + Me.gvResultsCardTraction = New System.Windows.Forms.DataGridView() + Me.gvResultsCardIdle = New System.Windows.Forms.DataGridView() Me.Label9 = New System.Windows.Forms.Label() Me.Label8 = New System.Windows.Forms.Label() Me.Label7 = New System.Windows.Forms.Label() Me.chkSmartElectricals = New System.Windows.Forms.CheckBox() Me.Label6 = New System.Windows.Forms.Label() Me.gvElectricalConsumables = New System.Windows.Forms.DataGridView() + Me.brcElecConsumers = New System.Windows.Forms.BindingSource(Me.components) Me.txtDoorActuationTimeSeconds = New System.Windows.Forms.TextBox() Me.labelDoorActuationTimeSeconds = New System.Windows.Forms.Label() Me.Label5 = New System.Windows.Forms.Label() @@ -68,16 +69,15 @@ Partial Class Dashboard Me.btnForward = New System.Windows.Forms.Button() Me.btnBack = New System.Windows.Forms.Button() Me.btnStart = New System.Windows.Forms.Button() - Me.brcElecConsumers = New System.Windows.Forms.BindingSource(Me.components) Me.tabMain.SuspendLayout Me.tabGeneralConfig.SuspendLayout Me.tabElectricalConfig.SuspendLayout - CType(Me.DataGridView3,System.ComponentModel.ISupportInitialize).BeginInit - CType(Me.DataGridView2,System.ComponentModel.ISupportInitialize).BeginInit - CType(Me.DataGridView1,System.ComponentModel.ISupportInitialize).BeginInit + CType(Me.gvResultsCardOverrun,System.ComponentModel.ISupportInitialize).BeginInit + CType(Me.gvResultsCardTraction,System.ComponentModel.ISupportInitialize).BeginInit + CType(Me.gvResultsCardIdle,System.ComponentModel.ISupportInitialize).BeginInit CType(Me.gvElectricalConsumables,System.ComponentModel.ISupportInitialize).BeginInit - Me.Panel1.SuspendLayout CType(Me.brcElecConsumers,System.ComponentModel.ISupportInitialize).BeginInit + Me.Panel1.SuspendLayout Me.SuspendLayout ' 'tabMain @@ -91,7 +91,7 @@ Partial Class Dashboard Me.tabMain.Location = New System.Drawing.Point(13, 14) Me.tabMain.Name = "tabMain" Me.tabMain.SelectedIndex = 0 - Me.tabMain.Size = New System.Drawing.Size(894, 477) + Me.tabMain.Size = New System.Drawing.Size(894, 636) Me.tabMain.TabIndex = 0 Me.tabMain.Tag = "" ' @@ -104,7 +104,7 @@ Partial Class Dashboard Me.tabGeneralConfig.Location = New System.Drawing.Point(4, 22) Me.tabGeneralConfig.Name = "tabGeneralConfig" Me.tabGeneralConfig.Padding = New System.Windows.Forms.Padding(3) - Me.tabGeneralConfig.Size = New System.Drawing.Size(886, 451) + Me.tabGeneralConfig.Size = New System.Drawing.Size(886, 571) Me.tabGeneralConfig.TabIndex = 0 Me.tabGeneralConfig.Text = "GeneralConfig" Me.tabGeneralConfig.UseVisualStyleBackColor = true @@ -145,9 +145,9 @@ Partial Class Dashboard ' 'tabElectricalConfig ' - Me.tabElectricalConfig.Controls.Add(Me.DataGridView3) - Me.tabElectricalConfig.Controls.Add(Me.DataGridView2) - Me.tabElectricalConfig.Controls.Add(Me.DataGridView1) + Me.tabElectricalConfig.Controls.Add(Me.gvResultsCardOverrun) + Me.tabElectricalConfig.Controls.Add(Me.gvResultsCardTraction) + Me.tabElectricalConfig.Controls.Add(Me.gvResultsCardIdle) Me.tabElectricalConfig.Controls.Add(Me.Label9) Me.tabElectricalConfig.Controls.Add(Me.Label8) Me.tabElectricalConfig.Controls.Add(Me.Label7) @@ -165,12 +165,12 @@ Partial Class Dashboard Me.tabElectricalConfig.Location = New System.Drawing.Point(4, 22) Me.tabElectricalConfig.Name = "tabElectricalConfig" Me.tabElectricalConfig.Padding = New System.Windows.Forms.Padding(3) - Me.tabElectricalConfig.Size = New System.Drawing.Size(886, 451) + Me.tabElectricalConfig.Size = New System.Drawing.Size(886, 610) Me.tabElectricalConfig.TabIndex = 1 Me.tabElectricalConfig.Text = "ElectricalConfig" Me.tabElectricalConfig.UseVisualStyleBackColor = true ' - 'DataGridView3 + 'gvResultsCardOverrun ' DataGridViewCellStyle1.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft DataGridViewCellStyle1.BackColor = System.Drawing.SystemColors.Control @@ -179,8 +179,8 @@ Partial Class Dashboard DataGridViewCellStyle1.SelectionBackColor = System.Drawing.SystemColors.Highlight DataGridViewCellStyle1.SelectionForeColor = System.Drawing.SystemColors.HighlightText DataGridViewCellStyle1.WrapMode = System.Windows.Forms.DataGridViewTriState.[True] - Me.DataGridView3.ColumnHeadersDefaultCellStyle = DataGridViewCellStyle1 - Me.DataGridView3.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.AutoSize + Me.gvResultsCardOverrun.ColumnHeadersDefaultCellStyle = DataGridViewCellStyle1 + Me.gvResultsCardOverrun.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.AutoSize DataGridViewCellStyle2.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft DataGridViewCellStyle2.BackColor = System.Drawing.SystemColors.Window DataGridViewCellStyle2.Font = New System.Drawing.Font("Microsoft Sans Serif", 8.25!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0,Byte)) @@ -188,9 +188,9 @@ Partial Class Dashboard DataGridViewCellStyle2.SelectionBackColor = System.Drawing.SystemColors.Highlight DataGridViewCellStyle2.SelectionForeColor = System.Drawing.SystemColors.HighlightText DataGridViewCellStyle2.WrapMode = System.Windows.Forms.DataGridViewTriState.[False] - Me.DataGridView3.DefaultCellStyle = DataGridViewCellStyle2 - Me.DataGridView3.Location = New System.Drawing.Point(613, 353) - Me.DataGridView3.Name = "DataGridView3" + Me.gvResultsCardOverrun.DefaultCellStyle = DataGridViewCellStyle2 + Me.gvResultsCardOverrun.Location = New System.Drawing.Point(590, 451) + Me.gvResultsCardOverrun.Name = "gvResultsCardOverrun" DataGridViewCellStyle3.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft DataGridViewCellStyle3.BackColor = System.Drawing.SystemColors.Control DataGridViewCellStyle3.Font = New System.Drawing.Font("Microsoft Sans Serif", 8.25!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0,Byte)) @@ -198,11 +198,11 @@ Partial Class Dashboard DataGridViewCellStyle3.SelectionBackColor = System.Drawing.SystemColors.Highlight DataGridViewCellStyle3.SelectionForeColor = System.Drawing.SystemColors.HighlightText DataGridViewCellStyle3.WrapMode = System.Windows.Forms.DataGridViewTriState.[True] - Me.DataGridView3.RowHeadersDefaultCellStyle = DataGridViewCellStyle3 - Me.DataGridView3.Size = New System.Drawing.Size(218, 81) - Me.DataGridView3.TabIndex = 18 + Me.gvResultsCardOverrun.RowHeadersDefaultCellStyle = DataGridViewCellStyle3 + Me.gvResultsCardOverrun.Size = New System.Drawing.Size(246, 125) + Me.gvResultsCardOverrun.TabIndex = 18 ' - 'DataGridView2 + 'gvResultsCardTraction ' DataGridViewCellStyle4.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft DataGridViewCellStyle4.BackColor = System.Drawing.SystemColors.Control @@ -211,8 +211,8 @@ Partial Class Dashboard DataGridViewCellStyle4.SelectionBackColor = System.Drawing.SystemColors.Highlight DataGridViewCellStyle4.SelectionForeColor = System.Drawing.SystemColors.HighlightText DataGridViewCellStyle4.WrapMode = System.Windows.Forms.DataGridViewTriState.[True] - Me.DataGridView2.ColumnHeadersDefaultCellStyle = DataGridViewCellStyle4 - Me.DataGridView2.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.AutoSize + Me.gvResultsCardTraction.ColumnHeadersDefaultCellStyle = DataGridViewCellStyle4 + Me.gvResultsCardTraction.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.AutoSize DataGridViewCellStyle5.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft DataGridViewCellStyle5.BackColor = System.Drawing.SystemColors.Window DataGridViewCellStyle5.Font = New System.Drawing.Font("Microsoft Sans Serif", 8.25!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0,Byte)) @@ -220,9 +220,9 @@ Partial Class Dashboard DataGridViewCellStyle5.SelectionBackColor = System.Drawing.SystemColors.Highlight DataGridViewCellStyle5.SelectionForeColor = System.Drawing.SystemColors.HighlightText DataGridViewCellStyle5.WrapMode = System.Windows.Forms.DataGridViewTriState.[False] - Me.DataGridView2.DefaultCellStyle = DataGridViewCellStyle5 - Me.DataGridView2.Location = New System.Drawing.Point(324, 353) - Me.DataGridView2.Name = "DataGridView2" + Me.gvResultsCardTraction.DefaultCellStyle = DataGridViewCellStyle5 + Me.gvResultsCardTraction.Location = New System.Drawing.Point(311, 451) + Me.gvResultsCardTraction.Name = "gvResultsCardTraction" DataGridViewCellStyle6.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft DataGridViewCellStyle6.BackColor = System.Drawing.SystemColors.Control DataGridViewCellStyle6.Font = New System.Drawing.Font("Microsoft Sans Serif", 8.25!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0,Byte)) @@ -230,11 +230,11 @@ Partial Class Dashboard DataGridViewCellStyle6.SelectionBackColor = System.Drawing.SystemColors.Highlight DataGridViewCellStyle6.SelectionForeColor = System.Drawing.SystemColors.HighlightText DataGridViewCellStyle6.WrapMode = System.Windows.Forms.DataGridViewTriState.[True] - Me.DataGridView2.RowHeadersDefaultCellStyle = DataGridViewCellStyle6 - Me.DataGridView2.Size = New System.Drawing.Size(218, 81) - Me.DataGridView2.TabIndex = 17 + Me.gvResultsCardTraction.RowHeadersDefaultCellStyle = DataGridViewCellStyle6 + Me.gvResultsCardTraction.Size = New System.Drawing.Size(258, 125) + Me.gvResultsCardTraction.TabIndex = 17 ' - 'DataGridView1 + 'gvResultsCardIdle ' DataGridViewCellStyle7.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft DataGridViewCellStyle7.BackColor = System.Drawing.SystemColors.Control @@ -243,8 +243,8 @@ Partial Class Dashboard DataGridViewCellStyle7.SelectionBackColor = System.Drawing.SystemColors.Highlight DataGridViewCellStyle7.SelectionForeColor = System.Drawing.SystemColors.HighlightText DataGridViewCellStyle7.WrapMode = System.Windows.Forms.DataGridViewTriState.[True] - Me.DataGridView1.ColumnHeadersDefaultCellStyle = DataGridViewCellStyle7 - Me.DataGridView1.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.AutoSize + Me.gvResultsCardIdle.ColumnHeadersDefaultCellStyle = DataGridViewCellStyle7 + Me.gvResultsCardIdle.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.AutoSize DataGridViewCellStyle8.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft DataGridViewCellStyle8.BackColor = System.Drawing.SystemColors.Window DataGridViewCellStyle8.Font = New System.Drawing.Font("Microsoft Sans Serif", 8.25!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0,Byte)) @@ -252,9 +252,9 @@ Partial Class Dashboard DataGridViewCellStyle8.SelectionBackColor = System.Drawing.SystemColors.Highlight DataGridViewCellStyle8.SelectionForeColor = System.Drawing.SystemColors.HighlightText DataGridViewCellStyle8.WrapMode = System.Windows.Forms.DataGridViewTriState.[False] - Me.DataGridView1.DefaultCellStyle = DataGridViewCellStyle8 - Me.DataGridView1.Location = New System.Drawing.Point(35, 353) - Me.DataGridView1.Name = "DataGridView1" + Me.gvResultsCardIdle.DefaultCellStyle = DataGridViewCellStyle8 + Me.gvResultsCardIdle.Location = New System.Drawing.Point(35, 451) + Me.gvResultsCardIdle.Name = "gvResultsCardIdle" DataGridViewCellStyle9.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft DataGridViewCellStyle9.BackColor = System.Drawing.SystemColors.Control DataGridViewCellStyle9.Font = New System.Drawing.Font("Microsoft Sans Serif", 8.25!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0,Byte)) @@ -262,14 +262,14 @@ Partial Class Dashboard DataGridViewCellStyle9.SelectionBackColor = System.Drawing.SystemColors.Highlight DataGridViewCellStyle9.SelectionForeColor = System.Drawing.SystemColors.HighlightText DataGridViewCellStyle9.WrapMode = System.Windows.Forms.DataGridViewTriState.[True] - Me.DataGridView1.RowHeadersDefaultCellStyle = DataGridViewCellStyle9 - Me.DataGridView1.Size = New System.Drawing.Size(218, 81) - Me.DataGridView1.TabIndex = 16 + Me.gvResultsCardIdle.RowHeadersDefaultCellStyle = DataGridViewCellStyle9 + Me.gvResultsCardIdle.Size = New System.Drawing.Size(256, 125) + Me.gvResultsCardIdle.TabIndex = 16 ' 'Label9 ' Me.Label9.AutoSize = true - Me.Label9.Location = New System.Drawing.Point(616, 333) + Me.Label9.Location = New System.Drawing.Point(587, 435) Me.Label9.Name = "Label9" Me.Label9.Size = New System.Drawing.Size(83, 13) Me.Label9.TabIndex = 15 @@ -278,7 +278,7 @@ Partial Class Dashboard 'Label8 ' Me.Label8.AutoSize = true - Me.Label8.Location = New System.Drawing.Point(326, 332) + Me.Label8.Location = New System.Drawing.Point(308, 435) Me.Label8.Name = "Label8" Me.Label8.Size = New System.Drawing.Size(84, 13) Me.Label8.TabIndex = 14 @@ -287,7 +287,7 @@ Partial Class Dashboard 'Label7 ' Me.Label7.AutoSize = true - Me.Label7.Location = New System.Drawing.Point(39, 333) + Me.Label7.Location = New System.Drawing.Point(38, 435) Me.Label7.Name = "Label7" Me.Label7.Size = New System.Drawing.Size(62, 13) Me.Label7.TabIndex = 13 @@ -306,7 +306,7 @@ Partial Class Dashboard 'Label6 ' Me.Label6.AutoSize = true - Me.Label6.Location = New System.Drawing.Point(35, 154) + Me.Label6.Location = New System.Drawing.Point(34, 154) Me.Label6.Name = "Label6" Me.Label6.Size = New System.Drawing.Size(116, 13) Me.Label6.TabIndex = 11 @@ -344,7 +344,7 @@ Partial Class Dashboard DataGridViewCellStyle12.SelectionForeColor = System.Drawing.SystemColors.HighlightText DataGridViewCellStyle12.WrapMode = System.Windows.Forms.DataGridViewTriState.[True] Me.gvElectricalConsumables.RowHeadersDefaultCellStyle = DataGridViewCellStyle12 - Me.gvElectricalConsumables.Size = New System.Drawing.Size(803, 149) + Me.gvElectricalConsumables.Size = New System.Drawing.Size(803, 250) Me.gvElectricalConsumables.TabIndex = 10 ' 'txtDoorActuationTimeSeconds @@ -415,7 +415,7 @@ Partial Class Dashboard ' Me.tabPneumaticConfig.Location = New System.Drawing.Point(4, 22) Me.tabPneumaticConfig.Name = "tabPneumaticConfig" - Me.tabPneumaticConfig.Size = New System.Drawing.Size(743, 441) + Me.tabPneumaticConfig.Size = New System.Drawing.Size(886, 571) Me.tabPneumaticConfig.TabIndex = 2 Me.tabPneumaticConfig.Text = "PneumaticConfig" Me.tabPneumaticConfig.UseVisualStyleBackColor = true @@ -424,7 +424,7 @@ Partial Class Dashboard ' Me.tabHVACConfig.Location = New System.Drawing.Point(4, 22) Me.tabHVACConfig.Name = "tabHVACConfig" - Me.tabHVACConfig.Size = New System.Drawing.Size(743, 441) + Me.tabHVACConfig.Size = New System.Drawing.Size(886, 571) Me.tabHVACConfig.TabIndex = 3 Me.tabHVACConfig.Text = "HVACConfig" Me.tabHVACConfig.UseVisualStyleBackColor = true @@ -433,7 +433,7 @@ Partial Class Dashboard ' Me.tabPlayground.Location = New System.Drawing.Point(4, 22) Me.tabPlayground.Name = "tabPlayground" - Me.tabPlayground.Size = New System.Drawing.Size(743, 441) + Me.tabPlayground.Size = New System.Drawing.Size(886, 571) Me.tabPlayground.TabIndex = 4 Me.tabPlayground.Text = "Playground" Me.tabPlayground.UseVisualStyleBackColor = true @@ -449,12 +449,12 @@ Partial Class Dashboard Me.Panel1.Dock = System.Windows.Forms.DockStyle.Fill Me.Panel1.Location = New System.Drawing.Point(0, 0) Me.Panel1.Name = "Panel1" - Me.Panel1.Size = New System.Drawing.Size(937, 566) + Me.Panel1.Size = New System.Drawing.Size(937, 732) Me.Panel1.TabIndex = 1 ' 'btnCancel ' - Me.btnCancel.Location = New System.Drawing.Point(727, 510) + Me.btnCancel.Location = New System.Drawing.Point(827, 670) Me.btnCancel.Name = "btnCancel" Me.btnCancel.Size = New System.Drawing.Size(75, 23) Me.btnCancel.TabIndex = 5 @@ -463,7 +463,7 @@ Partial Class Dashboard ' 'btnFinish ' - Me.btnFinish.Location = New System.Drawing.Point(645, 511) + Me.btnFinish.Location = New System.Drawing.Point(745, 671) Me.btnFinish.Name = "btnFinish" Me.btnFinish.Size = New System.Drawing.Size(75, 23) Me.btnFinish.TabIndex = 4 @@ -472,7 +472,7 @@ Partial Class Dashboard ' 'btnForward ' - Me.btnForward.Location = New System.Drawing.Point(521, 511) + Me.btnForward.Location = New System.Drawing.Point(621, 671) Me.btnForward.Name = "btnForward" Me.btnForward.Size = New System.Drawing.Size(75, 23) Me.btnForward.TabIndex = 3 @@ -481,7 +481,7 @@ Partial Class Dashboard ' 'btnBack ' - Me.btnBack.Location = New System.Drawing.Point(437, 511) + Me.btnBack.Location = New System.Drawing.Point(537, 671) Me.btnBack.Name = "btnBack" Me.btnBack.Size = New System.Drawing.Size(75, 23) Me.btnBack.TabIndex = 2 @@ -490,7 +490,7 @@ Partial Class Dashboard ' 'btnStart ' - Me.btnStart.Location = New System.Drawing.Point(320, 511) + Me.btnStart.Location = New System.Drawing.Point(420, 671) Me.btnStart.Name = "btnStart" Me.btnStart.Size = New System.Drawing.Size(75, 23) Me.btnStart.TabIndex = 1 @@ -501,7 +501,7 @@ Partial Class Dashboard ' Me.AutoScaleDimensions = New System.Drawing.SizeF(6!, 13!) Me.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font - Me.ClientSize = New System.Drawing.Size(937, 566) + Me.ClientSize = New System.Drawing.Size(937, 732) Me.Controls.Add(Me.Panel1) Me.Name = "Dashboard" Me.Text = "Dashboard" @@ -510,12 +510,12 @@ Partial Class Dashboard Me.tabGeneralConfig.PerformLayout Me.tabElectricalConfig.ResumeLayout(false) Me.tabElectricalConfig.PerformLayout - CType(Me.DataGridView3,System.ComponentModel.ISupportInitialize).EndInit - CType(Me.DataGridView2,System.ComponentModel.ISupportInitialize).EndInit - CType(Me.DataGridView1,System.ComponentModel.ISupportInitialize).EndInit + CType(Me.gvResultsCardOverrun,System.ComponentModel.ISupportInitialize).EndInit + CType(Me.gvResultsCardTraction,System.ComponentModel.ISupportInitialize).EndInit + CType(Me.gvResultsCardIdle,System.ComponentModel.ISupportInitialize).EndInit CType(Me.gvElectricalConsumables,System.ComponentModel.ISupportInitialize).EndInit - Me.Panel1.ResumeLayout(false) CType(Me.brcElecConsumers,System.ComponentModel.ISupportInitialize).EndInit + Me.Panel1.ResumeLayout(false) Me.ResumeLayout(false) End Sub @@ -537,9 +537,8 @@ End Sub Friend WithEvents txtAlternatorMapPath As System.Windows.Forms.TextBox Friend WithEvents Label1 As System.Windows.Forms.Label Friend WithEvents txtPowernetVoltage As System.Windows.Forms.TextBox - Friend WithEvents DataGridView3 As System.Windows.Forms.DataGridView - Friend WithEvents DataGridView2 As System.Windows.Forms.DataGridView - Friend WithEvents DataGridView1 As System.Windows.Forms.DataGridView + Friend WithEvents gvResultsCardOverrun As System.Windows.Forms.DataGridView + Friend WithEvents gvResultsCardTraction As System.Windows.Forms.DataGridView Friend WithEvents Label9 As System.Windows.Forms.Label Friend WithEvents Label8 As System.Windows.Forms.Label Friend WithEvents Label7 As System.Windows.Forms.Label @@ -553,4 +552,5 @@ End Sub Friend WithEvents btnBack As System.Windows.Forms.Button Friend WithEvents btnStart As System.Windows.Forms.Button Friend WithEvents brcElecConsumers As System.Windows.Forms.BindingSource + Public WithEvents gvResultsCardIdle As System.Windows.Forms.DataGridView End Class diff --git a/AuxillaryTestHarness/Dashboard.vb b/AuxillaryTestHarness/Dashboard.vb index 29a7cda19b54efc32bb17bb1bb567386b5129058..35c24938b410c2f8820070ff1a8636754ff1e999 100644 --- a/AuxillaryTestHarness/Dashboard.vb +++ b/AuxillaryTestHarness/Dashboard.vb @@ -1,13 +1,14 @@ Imports VectoAuxiliaries Imports VectoAuxiliaries.Electrics +Imports System.ComponentModel Public Class Dashboard -public auxEnvironment As New AuxillaryEnvironment("") +Public auxEnvironment As New AuxillaryEnvironment("") -Private Sub Dashboard_Load( sender As Object, e As EventArgs) Handles MyBase.Load +Private Sub Dashboard_Load(sender As Object, e As EventArgs) Handles MyBase.Load -cboCycle.SelectedIndex=0 +cboCycle.SelectedIndex = 0 SetupControls() @@ -16,140 +17,196 @@ cboCycle.SelectedIndex=0 End Sub -Private Sub cboCycle_SelectedIndexChanged( sender As Object, e As EventArgs) Handles cboCycle.SelectedIndexChanged +Private Sub cboCycle_SelectedIndexChanged(sender As Object, e As EventArgs) Handles cboCycle.SelectedIndexChanged End Sub -Private sub SetupControls() +Private Sub SetupControls() - Dim cIndex As Integer=0 + Dim cIndex As Integer = 0 'ElectricalConsumerGrid 'Columns - cIndex=gvElectricalConsumables.Columns.Add("Category","Category") - gvElectricalConsumables.Columns(cIndex).DataPropertyName="Category" - gvElectricalConsumables.Columns(cIndex).MinimumWidth=150 - gvElectricalConsumables.Columns(cIndex).ReadOnly=True - - cIndex=gvElectricalConsumables.Columns.Add("ConsumerName","Name") - gvElectricalConsumables.Columns(cIndex).DataPropertyName="ConsumerName" - gvElectricalConsumables.Columns(cIndex).MinimumWidth=300 - gvElectricalConsumables.Columns(cIndex).ReadOnly=True - - Dim baseVehicle As New DataGridViewCheckBoxColumn(false) - baseVehicle.HeaderText="BaseVehicle" - cIndex=gvElectricalConsumables.Columns.Add(baseVehicle) - gvElectricalConsumables.Columns(cIndex).DataPropertyName="BaseVehicle" - gvElectricalConsumables.Columns(cIndex).Width=60 - - cIndex=gvElectricalConsumables.Columns.Add("NominalConsumptionAmps","Nominal Amps") - gvElectricalConsumables.Columns(cIndex).DataPropertyName="NominalConsumptionAmps" - gvElectricalConsumables.Columns(cIndex).Width=50 - - cIndex=gvElectricalConsumables.Columns.Add("PhaseIdle_TractionOn","PhaseIdle\n/TractionOn") - gvElectricalConsumables.Columns(cIndex).DataPropertyName="PhaseIdle_TractionOn" - gvElectricalConsumables.Columns(cIndex).Width=50 - - - cIndex=gvElectricalConsumables.Columns.Add("NumberInActualVehicle","Num in Vehicle") - gvElectricalConsumables.Columns(cIndex).DataPropertyName="NumberInActualVehicle" - gvElectricalConsumables.Columns(cIndex).Width=50 + cIndex = gvElectricalConsumables.Columns.Add("Category", "Category") + gvElectricalConsumables.Columns(cIndex).DataPropertyName = "Category" + gvElectricalConsumables.Columns(cIndex).MinimumWidth = 150 + gvElectricalConsumables.Columns(cIndex).ReadOnly = True + + cIndex = gvElectricalConsumables.Columns.Add("ConsumerName", "Name") + + gvElectricalConsumables.Columns(cIndex).DataPropertyName = "ConsumerName" + gvElectricalConsumables.Columns(cIndex).MinimumWidth = 300 + gvElectricalConsumables.Columns(cIndex).ReadOnly = True + + Dim baseVehicle As New DataGridViewCheckBoxColumn(False) + baseVehicle.HeaderText = "BaseVehicle" + cIndex = gvElectricalConsumables.Columns.Add(baseVehicle) + gvElectricalConsumables.Columns(cIndex).DataPropertyName = "BaseVehicle" + gvElectricalConsumables.Columns(cIndex).Width = 75 + + cIndex = gvElectricalConsumables.Columns.Add("NominalConsumptionAmps", "Nominal Amps") + gvElectricalConsumables.Columns(cIndex).DataPropertyName = "NominalConsumptionAmps" + gvElectricalConsumables.Columns(cIndex).Width = 50 + + cIndex = gvElectricalConsumables.Columns.Add("PhaseIdle_TractionOn", "PhaseIdle\n/TractionOn") + gvElectricalConsumables.Columns(cIndex).DataPropertyName = "PhaseIdle_TractionOn" + gvElectricalConsumables.Columns(cIndex).Width = 50 + + + cIndex = gvElectricalConsumables.Columns.Add("NumberInActualVehicle", "Num in Vehicle") + gvElectricalConsumables.Columns(cIndex).DataPropertyName = "NumberInActualVehicle" + gvElectricalConsumables.Columns(cIndex).Width = 50 + + 'ResultCard Grids + 'IDLE + cIndex = gvResultsCardIdle.Columns.Add("Amps", "Amps") + gvResultsCardIdle.Columns(cIndex).DataPropertyName = "Amps" + gvResultsCardIdle.Columns(cIndex).Width = 65 + + cIndex = gvResultsCardIdle.Columns.Add("SmartAmps", "SmartAmps") + gvResultsCardIdle.Columns(cIndex).DataPropertyName = "SmartAmps" + gvResultsCardIdle.Columns(cIndex).Width = 65 + + 'TRACTION + cIndex = gvResultsCardTraction.Columns.Add("Amps", "Amps") + gvResultsCardTraction.Columns(cIndex).DataPropertyName = "Amps" + gvResultsCardTraction.Columns(cIndex).Width = 65 + + cIndex = gvResultsCardTraction.Columns.Add("SmartAmps", "SmartAmps") + gvResultsCardTraction.Columns(cIndex).DataPropertyName = "SmartAmps" + gvResultsCardTraction.Columns(cIndex).Width = 65 + + 'OVERRUN + cIndex = gvResultsCardOverrun.Columns.Add("Amps", "Amps") + gvResultsCardOverrun.Columns(cIndex).DataPropertyName = "Amps" + gvResultsCardOverrun.Columns(cIndex).Width = 65 + + cIndex = gvResultsCardOverrun.Columns.Add("SmartAmps", "SmartAmps") + gvResultsCardOverrun.Columns(cIndex).DataPropertyName = "SmartAmps" + gvResultsCardOverrun.Columns(cIndex).Width = 65 + + End Sub -Private Sub CreateBindings +Private Sub CreateBindings() 'AuxEnvironment.Vecto Bindings txtPowernetVoltage.DataBindings.Add("Text", auxEnvironment.VectoInputs, "PowerNetVoltage") - txtVehicleWeightKG.DataBindings.Add("Text",auxEnvironment.VectoInputs,"VehicleWeightKG") - cboCycle.DataBindings.Add("Text",auxEnvironment.VectoInputs,"Cycle") + txtVehicleWeightKG.DataBindings.Add("Text", auxEnvironment.VectoInputs, "VehicleWeightKG") + cboCycle.DataBindings.Add("Text", auxEnvironment.VectoInputs, "Cycle") 'Electricals General - txtAlternatorMapPath.DataBindings.Add("Text",auxEnvironment.ElectricalUserInputsConfig,"AlternatorMap") - txtAlternatorGearEfficiency.DataBindings.Add("Text", auxEnvironment.ElectricalUserInputsConfig,"AlternatorGearEfficiency") - txtDoorActuationTimeSeconds.DataBindings.Add("Text",auxEnvironment.ElectricalUserInputsConfig,"DoorActuationTimeSecond") - chkSmartElectricals.DataBindings.Add("Checked",auxEnvironment.ElectricalUserInputsConfig,"SmartElectrical") + txtAlternatorMapPath.DataBindings.Add("Text", auxEnvironment.ElectricalUserInputsConfig, "AlternatorMap") + txtAlternatorGearEfficiency.DataBindings.Add("Text", auxEnvironment.ElectricalUserInputsConfig, "AlternatorGearEfficiency") + txtDoorActuationTimeSeconds.DataBindings.Add("Text", auxEnvironment.ElectricalUserInputsConfig, "DoorActuationTimeSecond") + chkSmartElectricals.DataBindings.Add("Checked", auxEnvironment.ElectricalUserInputsConfig, "SmartElectrical") 'ConsumablesGrid - gvElectricalConsumables.DataSource = auxEnvironment.ElectricalUserInputsConfig.ElectricalConsumers.Items + Dim electricalConsumerBinding As New BindingList(Of IElectricalConsumer)(auxEnvironment.ElectricalUserInputsConfig.ElectricalConsumers.Items ) + gvElectricalConsumables.DataSource = electricalConsumerBinding 'ResultCards + 'IDLE + Dim idleBinding = new BindingList(Of SmartResult) + idleBinding = New BindingList(Of SmartResult)(auxEnvironment.ElectricalUserInputsConfig.ResultCardIdle) + idleBinding.AllowNew=true + gvResultsCardIdle.DataSource=idleBinding + + 'TRACTION + Dim tractionBinding As BindingList(Of SmartResult) + tractionBinding = New BindingList(Of SmartResult)(auxEnvironment.ElectricalUserInputsConfig.ResultCardTraction) + tractionBinding.AllowNew=true + gvResultsCardTraction.DataSource = tractionBinding + + 'OVERRUN + Dim overrunBinding As BindingList(Of SmartResult) + overrunBinding = New BindingList(Of SmartResult)(auxEnvironment.ElectricalUserInputsConfig.ResultCardOverrun) + overrunBinding.AllowNew=true + gvResultsCardOverrun.DataSource=overrunBinding + End Sub -Private Sub gvElectricalConsumables_CellEndEdit( sender As Object, e As DataGridViewCellEventArgs) Handles gvElectricalConsumables.CellEndEdit + + + +Private Sub gvElectricalConsumables_CellEndEdit(sender As Object, e As DataGridViewCellEventArgs) Handles gvElectricalConsumables.CellEndEdit End Sub -Private Sub gvElectricalConsumables_CellValidating( sender As Object, e As DataGridViewCellValidatingEventArgs) Handles gvElectricalConsumables.CellValidating +Private Sub gvElectricalConsumables_CellValidating(sender As Object, e As DataGridViewCellValidatingEventArgs) Handles gvElectricalConsumables.CellValidating Dim column As DataGridViewColumn = gvElectricalConsumables.Columns(e.ColumnIndex) Dim message As String = String.Empty - - If Not column.ReadOnly then + + If Not column.ReadOnly Then e.Cancel = Not IsValidElectricalConsumableEdit(column, e.FormattedValue, message) End If - + End Sub -Private Function IsValidElectricalConsumableEdit( column As DataGridViewColumn, val As String , byref message As string) As Boolean +Private Function IsValidElectricalConsumableEdit(column As DataGridViewColumn, val As String, ByRef message As String) As Boolean - dim s As Single + Dim s As Single - Dim tip = column.CellType + Dim tip = column.CellType Select Case column.Name - case "NominalConsumptionAmps" - Return true + Case "NominalConsumptionAmps" + Return True - case "NumberInActualVehicle" - If not IsNumeric(val) + Case "NumberInActualVehicle" + If Not IsNumeric(val) Then MessageBox.Show("This value must be numeric") - Return false - Else + Return False + Else s = Single.Parse(val) End If - If s MOD 1 > 0 orelse s<0 then + If s Mod 1 > 0 OrElse s < 0 Then MessageBox.Show("This value must be a positive whole number ( Integer ) ") - Return false + Return False End If - case "PhaseIdle_TractionOn" - If not IsNumeric(val) + Case "PhaseIdle_TractionOn" + If Not IsNumeric(val) Then MessageBox.Show("This value must be numeric") - Return false - Else + Return False + Else s = Single.Parse(val) End If - If s < 0 orelse s>1 then + If s < 0 OrElse s > 1 Then MessageBox.Show("This must be a value between 0 and 1 ") - Return false + Return False End If - + End Select - Return true + Return True End Function +Private Sub Panel1_Paint( sender As Object, e As PaintEventArgs) Handles Panel1.Paint + +End Sub End Class \ No newline at end of file diff --git a/VECTOAux/VectoAuxiliaries/AuxillaryEnvironment.vb b/VECTOAux/VectoAuxiliaries/AuxillaryEnvironment.vb index 3aec62734921e8c2125ba13e9653adefd694ce3b..fe84ac2a1b76cb2a41652d07edd7dbf1df1fe61f 100644 --- a/VECTOAux/VectoAuxiliaries/AuxillaryEnvironment.vb +++ b/VECTOAux/VectoAuxiliaries/AuxillaryEnvironment.vb @@ -15,8 +15,8 @@ Public Class AuxillaryEnvironment 'Pneumatics - Private Property PneumaticUserInputsConfig As IPneumaticUserInputsConfig - Private Property PneumaticAuxillariesConfig As IPneumaticsAuxilliariesConfig +public Property PneumaticUserInputsConfig As IPneumaticUserInputsConfig +public Property PneumaticAuxillariesConfig As IPneumaticsAuxilliariesConfig 'Hvac Public Property HvacUserInputsConfig As IHVACUserInputsConfig @@ -49,9 +49,9 @@ Private Sub setDefaults() ElectricalUserInputsConfig = New ElectricsUserInputsConfig() With {.DoorActuationTimeSecond=4, .ElectricalConsumers= New ElectricalConsumerList(VectoInputs.PowerNetVoltage,0.1,true), .PowerNetVoltage= VectoInputs.PowerNetVoltage, - .ResultCardIdleAmps= New Dictionary(Of Single, Single), - .ResultCardOverrunAmps= New Dictionary(Of Single, Single), - .ResultCardTractionAmps=New Dictionary(Of Single, Single), + .ResultCardIdle= New List(Of SmartResult), + .ResultCardOverrun= New List(Of SmartResult), + .ResultCardTraction=New List(Of SmartResult), .SmartElectrical=True} HvacUserInputsConfig = New HVACUserInputsConfig(1,1,New HVACInputs(),"HVACMAPPATHGOESHERE.CSV") diff --git a/VECTOAux/VectoAuxiliaries/Electrics/ElectricalConsumer.vb b/VECTOAux/VectoAuxiliaries/Electrics/ElectricalConsumer.vb index a614383cff86812dd3732bd69775e7f532e48ffc..9c2b5d02a755c862f5a9fea07cb21080fc039da1 100644 --- a/VECTOAux/VectoAuxiliaries/Electrics/ElectricalConsumer.vb +++ b/VECTOAux/VectoAuxiliaries/Electrics/ElectricalConsumer.vb @@ -7,11 +7,6 @@ Public Class ElectricalConsumer Implements IElectricalConsumer - - - - - 'Calculated Private Property AvgConsumptionAmps As Single Implements IElectricalConsumer.AvgConsumptionAmps diff --git a/VECTOAux/VectoAuxiliaries/Electrics/ElectricsUserInputsConfig.vb b/VECTOAux/VectoAuxiliaries/Electrics/ElectricsUserInputsConfig.vb index cd8cf9390c2831acf1c0458bb8eb83afae5fca5c..ffb24cbfbc7cf79b2b2b16d7c29e85b247023ac2 100644 --- a/VECTOAux/VectoAuxiliaries/Electrics/ElectricsUserInputsConfig.vb +++ b/VECTOAux/VectoAuxiliaries/Electrics/ElectricsUserInputsConfig.vb @@ -12,9 +12,9 @@ Public Property ElectricalConsumers As IElectricalConsumerList Implements IElect Public Property DoorActuationTimeSecond As Integer Implements IElectricsUserInputsConfig.DoorActuationTimeSecond -Public Property ResultCardIdleAmps As Dictionary(Of Single, Single) Implements IElectricsUserInputsConfig.ResultCardIdleAmps -Public Property ResultCardTractionAmps As Dictionary(Of Single, Single) Implements IElectricsUserInputsConfig.ResultCardTractionAmps -Public Property ResultCardOverrunAmps As Dictionary(Of Single, Single) Implements IElectricsUserInputsConfig.ResultCardOverrunAmps +Public Property ResultCardIdle As List(Of SmartResult) Implements IElectricsUserInputsConfig.ResultCardIdle +Public Property ResultCardTraction As List(Of SmartResult) Implements IElectricsUserInputsConfig.ResultCardTraction +Public Property ResultCardOverrun As List(Of SmartResult) Implements IElectricsUserInputsConfig.ResultCardOverrun Public Property SmartElectrical As Boolean Implements IElectricsUserInputsConfig.SmartElectrical diff --git a/VECTOAux/VectoAuxiliaries/Electrics/IElectricsUserInputsConfig.vb b/VECTOAux/VectoAuxiliaries/Electrics/IElectricsUserInputsConfig.vb index b028e5270e2c6af7954d426b548d1162f1ad67a3..a638b2cb8c9cd4e7d2cc33b8f8abbb2e7f13f69a 100644 --- a/VECTOAux/VectoAuxiliaries/Electrics/IElectricsUserInputsConfig.vb +++ b/VECTOAux/VectoAuxiliaries/Electrics/IElectricsUserInputsConfig.vb @@ -10,9 +10,9 @@ Property AlternatorGearEfficiency As Single Property ElectricalConsumers As IElectricalConsumerList Property DoorActuationTimeSecond As Integer -Property ResultCardIdleAmps As Dictionary(Of Single, Single) -Property ResultCardTractionAmps As Dictionary(Of Single, Single) -Property ResultCardOverrunAmps As Dictionary(Of Single, Single) +Property ResultCardIdle As List(Of SmartResult) +Property ResultCardTraction As List(Of SmartResult) +Property ResultCardOverrun As List(Of SmartResult) Property SmartElectrical As Boolean End Interface diff --git a/VECTOAux/VectoAuxiliaries/Electrics/IResultCard.vb b/VECTOAux/VectoAuxiliaries/Electrics/IResultCard.vb index 60bcf230cf178473b34683a5c567415d970664f5..7dd89cb27af70bb25b13f0f974ecf7f97d1f28e0 100644 --- a/VECTOAux/VectoAuxiliaries/Electrics/IResultCard.vb +++ b/VECTOAux/VectoAuxiliaries/Electrics/IResultCard.vb @@ -2,7 +2,7 @@ Public Interface IResultCard -Function GetSmartCurrentResult(key As Single) As Single +Function GetSmartCurrentResult(Amps As Single) As Single End Interface diff --git a/VECTOAux/VectoAuxiliaries/Electrics/ResultCard.vb b/VECTOAux/VectoAuxiliaries/Electrics/ResultCard.vb index 5f15e1d1423e719fef391e30b8d1abe16fd96083..ae323a398cf3bb83d8198403b6fde4d27fba268d 100644 --- a/VECTOAux/VectoAuxiliaries/Electrics/ResultCard.vb +++ b/VECTOAux/VectoAuxiliaries/Electrics/ResultCard.vb @@ -7,12 +7,12 @@ Public Class ResultCard Implements IResultCard -Private _results As Dictionary(Of Single, Single) +Private _results As List(Of SmartResult) -Public Sub New(results As Dictionary(Of Single, Single)) +Public Sub New(results As List( of SmartResult)) - If results Is Nothing Then Throw New ArgumentException("A dictionary of smart results must be supplied.") + If results Is Nothing Then Throw New ArgumentException("A list of smart results must be supplied.") _results = results @@ -21,18 +21,18 @@ End Sub -Public Function GetSmartCurrentResult(key As Single) As Single Implements IResultCard.GetSmartCurrentResult +Public Function GetSmartCurrentResult(amps As Single) As Single Implements IResultCard.GetSmartCurrentResult If _results.Count<2 then Return 0.1 - Return GetOrInterpolate(key) + Return GetOrInterpolate(amps) End Function -Private Function GetOrInterpolate(key As Single) As Single +Private Function GetOrInterpolate(amps As Single) As Single Dim pre As Single Dim post As Single @@ -43,51 +43,52 @@ Dim smartAmps As Single Dim maxKey As Single Dim minKey As Single - maxKey = (From k In _results Select k).Last.Key - minKey = (From k In _results Select k).First.Key + maxKey = _results.Max.Amps + minKey = _results.Min.Amps + Dim compareKey As SmartResult = New SmartResult( amps,0) 'Is on boundary check - If _results.ContainsKey(key) Then Return _results(key) + If _results.Contains(compareKey) Then Return _results.OrderBy( Function(x) x.Amps).First( Function( x ) x.Amps=compareKey.Amps ).SmartAmps 'Is over map - Extrapolate - If key > maxKey Then + If amps > maxKey Then 'get the entries before and after the supplied key - pre = (From m In _results Order By m.Key Where m.Key < maxKey Select m).Last().Key + pre = (From a In _results Order By a.amps Where a.amps < maxKey Select a ).Last().Amps post = maxKey 'get the delta values dAmps = post - pre - dSmartAmps = _results(post) - _results(pre) + dSmartAmps = ( From da In _results Order By da.Amps Where da.Amps=post ).First().SmartAmps - ( From da In _results Order By da.Amps Where da.Amps=pre ).First().SmartAmps 'calculate the slopes smartAmpsSlope = dSmartAmps / dAmps 'calculate the new values - smartAmps = ((key - post) * smartAmpsSlope) + _results(post) + smartAmps = ((amps - post) * smartAmpsSlope) + ( From da In _results Order By da.Amps Where da.Amps=post ).First().SmartAmps Return smartAmps End If 'Is under map - Extrapolate - If key < minKey Then + If amps < minKey Then 'get the entries before and after the supplied key 'Post is the first entry and pre is the penultimate to first entry post = minKey - pre = (From k In _results Order By k.Key Where k.Key > minKey Select k).First.Key + pre = (From k In _results Order By k.amps Where k.amps > minKey Select k).First().Amps 'get the delta values dAmps = post - pre - dSmartAmps = _results(post) - _results(pre) + dSmartAmps = ( From da In _results Order By da.Amps Where da.Amps=post ).First().SmartAmps - ( From da In _results Order By da.Amps Where da.Amps=pre ).First().SmartAmps 'calculate the slopes smartAmpsSlope = dSmartAmps / dAmps 'calculate the new values - smartAmps = ((key - post) * smartAmpsSlope) + _results(post) + smartAmps = ((amps - post) * smartAmpsSlope) + ( From da In _results Order By da.Amps Where da.Amps=post ).First().SmartAmps Return smartAmps End If @@ -95,18 +96,18 @@ Dim minKey As Single 'Is Inside map - Interpolate 'get the entries before and after the supplied rpm - pre = (From m In _results Where m.Key < key Select m).Last().Key - post = (From m In _results Where m.Key > key Select m).First().Key + pre = (From m In _results Order By m.amps Where m.amps < amps Select m).Last().Amps + post = (From m In _results Where m.amps > amps Select m).First().Amps 'get the delta values for rpm and the map values dAmps = post - pre - dSmartAmps = _results(post) - _results(pre) + dSmartAmps = ( From da In _results Order By da.Amps Where da.Amps=post ).First().SmartAmps - ( From da In _results Order By da.Amps Where da.Amps=pre ).First().SmartAmps 'calculate the slopes smartAmpsSlope = dSmartAmps / dAmps 'calculate the new values - smartAmps = ((key - pre) * smartAmpsSlope) + _results(pre) + smartAmps = ((amps - post) * smartAmpsSlope) + ( From da In _results Order By da.Amps Where da.Amps=post ).First().SmartAmps Return smartAmps diff --git a/VECTOAux/VectoAuxiliaries/Electrics/SmartResult.vb b/VECTOAux/VectoAuxiliaries/Electrics/SmartResult.vb new file mode 100644 index 0000000000000000000000000000000000000000..26e8620eb29a79b92cb0a8107107a08ac51edfd2 --- /dev/null +++ b/VECTOAux/VectoAuxiliaries/Electrics/SmartResult.vb @@ -0,0 +1,58 @@ +Namespace Electrics + +Public Class SmartResult +Implements IComparable(Of SmartResult) + + +Public Property Amps As Single + +Public Property SmartAmps As Single + +Public Sub new () + + +End Sub + +Public Sub new( amps As Single , smartAmps As single) + + Me.Amps = amps + Me.SmartAmps = smartAmps + +End Sub + + + + Public Function CompareTo(other As SmartResult) As Integer Implements IComparable(Of SmartResult).CompareTo + + + If other.Amps> Me.Amps then return -1 + If other.Amps=Me.Amps then Return 0 + + Return 1 + + + End Function + + + Public Overrides Function Equals(obj As Object) As Boolean + + Dim other as SmartResult = Ctype( Obj, SmartResult ) + + Return Me.Amps=other.Amps + + End Function + + Public Overrides Function GetHashCode() As Integer + Return 0 + End Function + + + +End Class + + + +End Namespace + + + diff --git a/VECTOAux/VectoAuxiliaries/VectoAuxiliaries.vbproj b/VECTOAux/VectoAuxiliaries/VectoAuxiliaries.vbproj index b3c951f8494fb857164de629a390d48c880fdc98..b860c5c423177f6bdb2865d2cf584e93c8667d63 100644 --- a/VECTOAux/VectoAuxiliaries/VectoAuxiliaries.vbproj +++ b/VECTOAux/VectoAuxiliaries/VectoAuxiliaries.vbproj @@ -85,6 +85,7 @@ <Compile Include="Electrics\IM0_NonSmart_AlternatorsSetEfficiency.vb" /> <Compile Include="Electrics\M5__SmartAlternatorSetGeneration.vb" /> <Compile Include="Electrics\ResultCard.vb" /> + <Compile Include="Electrics\SmartResult.vb" /> <Compile Include="Hvac\HVACConstants.vb" /> <Compile Include="Hvac\HVACInputs.vb" /> <Compile Include="Electrics\IElectricalConsumerList.vb" /> diff --git a/VECTOAux/VectoAuxiliariesTests/UnitTests/M0_5_SmartAlternatorSetEfficiencyTests.vb b/VECTOAux/VectoAuxiliariesTests/UnitTests/M0_5_SmartAlternatorSetEfficiencyTests.vb index 066b1019861aecd85a841f21df844a3a649cec2a..e079c085c8e54c7502baef9b58ac4e7af027c1a2 100644 --- a/VECTOAux/VectoAuxiliariesTests/UnitTests/M0_5_SmartAlternatorSetEfficiencyTests.vb +++ b/VECTOAux/VectoAuxiliariesTests/UnitTests/M0_5_SmartAlternatorSetEfficiencyTests.vb @@ -32,9 +32,9 @@ signals.EngineSpeed=2000 Dim m0 As New M0_NonSmart_AlternatorsSetEfficiency(elecConsumers,hvacInputs,hvacMap,alternatoMap,26.3,signals) 'Results Cards -Dim readings = new Dictionary(Of single, single) -readings.Add(10,8) -readings.Add(70,63) +Dim readings = new List(of SmartResult) +readings.Add(new SmartResult(10,8)) +readings.Add(New SmartResult(70,63)) Dim idleResult As New ResultCard(readings) Dim tractionResult As New ResultCard(readings) diff --git a/VECTOAux/VectoAuxiliariesTests/UnitTests/M5_SmartAlternatorSetGenerationTests.vb b/VECTOAux/VectoAuxiliariesTests/UnitTests/M5_SmartAlternatorSetGenerationTests.vb index 9d57a70bed6fbb62cd5feb1b3cec20be54d02322..c7c491f5ef23f511b9681ee70212a5ad15d4794b 100644 --- a/VECTOAux/VectoAuxiliariesTests/UnitTests/M5_SmartAlternatorSetGenerationTests.vb +++ b/VECTOAux/VectoAuxiliariesTests/UnitTests/M5_SmartAlternatorSetGenerationTests.vb @@ -35,9 +35,9 @@ alternatoMap.Initialise() Dim m0 As New M0_NonSmart_AlternatorsSetEfficiency(elecConsumers,hvacInputs,hvacMap,alternatoMap,_powerNetVoltage,_signals) 'Results Cards -Dim readings = new Dictionary(Of single, single) -readings.Add(10,8) -readings.Add(70,63) +Dim readings = new List(Of SmartResult) +readings.Add( New SmartResult(10,8)) +readings.Add( New SmartResult(70,63)) Dim idleResult As New ResultCard(readings) Dim tractionResult As New ResultCard(readings) @@ -64,10 +64,10 @@ Public Sub PowerAtCrankIdleWatts() Initialise() _target = New M5__SmartAlternatorSetGeneration(_m05,_powerNetVoltage,_altGearPullyEfficiency) - Dim expected As Single =1681.42822 + Dim expected As Single =1681.428f Dim actual As Single = _target.AlternatorsGenerationPowerAtCrankIdleWatts(_rpm) - Assert.AreEqual( expected, actual) + Assert.AreEqual( expected, CType(Math.Round( actual,3), Single)) End Sub @@ -76,10 +76,10 @@ Public Sub PowerAtCrankTractionWatts() Initialise() _target = New M5__SmartAlternatorSetGeneration(_m05,_powerNetVoltage,_altGearPullyEfficiency) - Dim expected As Single =1681.42822 + Dim expected As Single =1681.428 Dim actual As Single = _target.AlternatorsGenerationPowerAtCrankTractionOnWatts(_rpm) - Assert.AreEqual( expected, actual) + Assert.AreEqual( expected, CType(Math.Round(actual,3),Single)) End Sub @@ -88,10 +88,11 @@ Public Sub PowerAtCrankOverrunWatts() Initialise() _target = New M5__SmartAlternatorSetGeneration(_m05,_powerNetVoltage,_altGearPullyEfficiency) - Dim expected As Single =1681.42822 + Dim expected As Single =1681.428 + Dim actual As Single = _target.AlternatorsGenerationPowerAtCrankOverrunWatts(_rpm) - Assert.AreEqual( expected, actual) + Assert.AreEqual( expected,CType( Math.Round(actual,3),Single)) End Sub diff --git a/VECTOAux/VectoAuxiliariesTests/UnitTests/ResultCardTests.vb b/VECTOAux/VectoAuxiliariesTests/UnitTests/ResultCardTests.vb index 4ca94fbd5d1a9f013e4b3d1303961ecd3fc9cc61..bb2e0d1333eee0a6c8180ddf1884c1bc15eef9d2 100644 --- a/VECTOAux/VectoAuxiliariesTests/UnitTests/ResultCardTests.vb +++ b/VECTOAux/VectoAuxiliariesTests/UnitTests/ResultCardTests.vb @@ -4,19 +4,33 @@ Imports VectoAuxiliaries.Electrics <TestFixture()> Public Class ResultCardTests -Private results As New Dictionary(Of Single, Single) +Private results As New List(Of SmartResult) +Private unorderedResults As New List(of SmartResult) + Private resultCard As ResultCard +Private unorderedResultCard As ResultCard + Public Sub New() -results.Add(20, 18) -results.Add(30, 27) -results.Add(40, 36) -results.Add(50, 45) +results.Add(new SmartResult(20, 18)) +results.Add(new SmartResult(30, 27)) +results.Add(new SmartResult(40, 36)) +results.Add(new SmartResult(50, 45)) + +unorderedResults.Add(new SmartResult(40, 36)) +unorderedResults.Add(new SmartResult(30, 27)) +unorderedResults.Add(new SmartResult(50, 45)) +unorderedResults.Add(new SmartResult(20, 18)) + 'results.Add(60, 54) resultCard = New ResultCard(results) +unorderedResultCard = New ResultCard( unorderedResults) + + + End Sub @@ -52,6 +66,18 @@ Assert.AreEqual(expected, actual) End Sub + +<Test()> +Public Sub UnorderedGetBotomBoundryValueTest() + +Dim expected As Single = 18 +Dim actual As Single = unorderedResultCard.GetSmartCurrentResult(20) + +Assert.AreEqual(expected, actual) + +End Sub + + <Test()> Public Sub GetCentreBoundayValueTest() @@ -64,6 +90,18 @@ Assert.AreEqual(expected, actual) End Sub +<Test()> +Public Sub UnorderedGetCentreBoundayValueTest() + +Dim expected As Single = 36 +Dim actual As Single = unorderedResultCard.GetSmartCurrentResult(40) + +Assert.AreEqual(expected, actual) + + +End Sub + + <Test()> Public Sub GetTopBoundaryValueTest() @@ -74,6 +112,17 @@ Assert.AreEqual(expected, actual) End Sub +<Test()> +Public Sub UnorderedGetTopBoundaryValueTest() + +Dim expected As Single = 45 +Dim actual As Single = unorderedResultCard.GetSmartCurrentResult(50) + +Assert.AreEqual(expected, actual) + +End Sub + + <Test()> Public Sub GetInterpolatedValue35AmpsTest() @@ -84,6 +133,17 @@ Assert.AreEqual(expected, actual) End Sub + +<Test()> +Public Sub UnorderedGetInterpolatedValue35AmpsTest() + +Dim expected As Single = 31.5 +Dim actual As Single = unorderedResultCard.GetSmartCurrentResult(35) + +Assert.AreEqual(expected, actual) + +End Sub + <Test()> Public Sub GetExtrapolatedValue60AmpsTest() @@ -94,6 +154,16 @@ Assert.AreEqual(expected, actual) End Sub +<Test()> +Public Sub UnorderedGetExtrapolatedValue60AmpsTest() + +Dim expected As Single = 54 +Dim actual As Single = unorderedResultCard.GetSmartCurrentResult(60) + +Assert.AreEqual(expected, actual) + +End Sub + <Test()> Public Sub GetExtrapolatedValue10AmpsTest() @@ -104,10 +174,21 @@ Assert.AreEqual(expected, actual) End Sub +<Test()> +Public Sub UnorderedGetExtrapolatedValue10AmpsTest() + +Dim expected As Single = 9 +Dim actual As Single = unorderedResultCard.GetSmartCurrentResult(10) + +Assert.AreEqual(expected, actual) + +End Sub + + <Test()> Public Sub EmptyOrInsufficientResultsTest() -Dim resultSet As New Dictionary(of single , Single ) +Dim resultSet As new List(Of SmartResult) Dim expected As Single = 0.1 Dim actual As Single = (New ResultCard(resultSet)).GetSmartCurrentResult(10)