Implemented functionality to control outputs for BMS

This commit is contained in:
Yury Shuvakin
2022-11-26 09:28:53 +03:00
parent eb89c386a3
commit 92c3e42039
9 changed files with 483 additions and 136 deletions

View File

@@ -0,0 +1,42 @@
import QtQuick 2.12
import QtQuick.Controls 2.12
import Utils 1.0
RadioButton {
id: control
implicitHeight: 30
spacing: 15
leftPadding: 0
indicator: Rectangle {
implicitWidth: control.implicitHeight
implicitHeight: control.implicitHeight
x: control.leftPadding
y: parent.height / 2 - height / 2
radius: implicitWidth / 2
border.color: Palette.borderColor
Rectangle {
property int spacing: 10
width: parent.implicitWidth - spacing
height: parent.implicitHeight - spacing
x: spacing / 2
y: spacing / 2
radius: width / 2
color: Palette.alternativeBackgroundColor
visible: control.checked
}
}
contentItem: Text {
text: control.text
font.pixelSize: 18
font.weight: Font.Bold
color: Palette.textColor
maximumLineCount: 2
wrapMode: Text.WordWrap
verticalAlignment: Text.AlignVCenter
leftPadding: control.indicator.width + control.spacing
}
}

View File

@@ -26,3 +26,4 @@ ScrollIndicator 1.0 ScrollIndicator.qml
OutlineImageButton 1.0 OutlineImageButton.qml
ImageButton 1.0 ImageButton.qml
ProgressBar 1.0 ProgressBar.qml
RadioButton 1.0 RadioButton.qml

View File

@@ -393,7 +393,8 @@ RowLayout {
}
Controls.CheckBox {
text: qsTr("Use for storage management")
id: chargeBatteryOutputCheckBox
text: qsTr("Use to control charger")
Layout.fillWidth: true
Layout.preferredHeight: outputSettingsFrame.outputNumberSize
}
@@ -417,7 +418,8 @@ RowLayout {
}
Controls.CheckBox {
text: qsTr("Normally closed")
id: brushOrShuntOutputCheckBox
text: qsTr("Active")
Layout.fillWidth: true
Layout.preferredHeight: outputSettingsFrame.outputNumberSize
}
@@ -426,20 +428,48 @@ RowLayout {
Layout.columnSpan: 2
}
Controls.RadioButton {
id: brushControlRadioButton
text: qsTr("Brush control")
Layout.fillWidth: true
Layout.maximumWidth: (parent.width - parent.columnSpacing) / 2
}
Controls.RadioButton {
id: shuntChargingContactorRadioButton
text: qsTr("Shunt charging contactor")
Layout.fillWidth: true
Layout.maximumWidth: (parent.width - parent.columnSpacing) / 2
}
Controls.SubtitleLabel {
text: qsTr("Change in value during SOC")
text: qsTr("SOC threshold, %")
maximumLineCount: 2
wrapMode: Text.WordWrap
Layout.fillWidth: true
Layout.maximumWidth: (parent.width - parent.columnSpacing) / 2
}
Controls.SubtitleLabel {
text: qsTr("Delay, s")
maximumLineCount: 2
wrapMode: Text.WordWrap
Layout.fillWidth: true
Layout.maximumWidth: (parent.width - parent.columnSpacing) / 2
Layout.columnSpan: 2
}
Controls.TextField {
id: changeValueSocField
id: brushUsageSocThresholdField
validator: IntValidator { bottom: 0; top: 100 }
Layout.fillWidth: true
Layout.maximumWidth: (parent.width - parent.columnSpacing) / 2
}
Controls.TextField {
id: shuntChargingContactorDelayField
validator: IntValidator { bottom: 0; top: 65535 }
Layout.fillWidth: true
Layout.maximumWidth: (parent.width - parent.columnSpacing) / 2
Layout.columnSpan: 2
}
Controls.LineSeparator {
@@ -457,6 +487,8 @@ RowLayout {
}
Controls.CheckBox {
id: coolingOutputCheckBox
text: qsTr("Cooling activation")
Layout.fillWidth: true
Layout.preferredHeight: outputSettingsFrame.outputNumberSize
}
@@ -478,13 +510,15 @@ RowLayout {
}
Controls.TextField {
id: closesBelowTemperatureThirdField
id: coolingStartThresholdField
validator: IntValidator { bottom: -32768; top: 32768 }
Layout.fillWidth: true
Layout.maximumWidth: (parent.width - parent.columnSpacing) / 2
}
Controls.TextField {
id: opensGreaterTemperatureThirdField
id: coolingStopThresholdField
validator: IntValidator { bottom: -32768; top: 32768 }
Layout.fillWidth: true
Layout.maximumWidth: (parent.width - parent.columnSpacing) / 2
}
@@ -504,6 +538,8 @@ RowLayout {
}
Controls.CheckBox {
id: heatingOutputCheckBox
text: qsTr("Heating activation")
Layout.fillWidth: true
Layout.preferredHeight: outputSettingsFrame.outputNumberSize
}
@@ -525,13 +561,15 @@ RowLayout {
}
Controls.TextField {
id: closesBelowTemperatureFourthField
id: heatingStartThresholdField
validator: IntValidator { bottom: -32768; top: 32768 }
Layout.fillWidth: true
Layout.maximumWidth: (parent.width - parent.columnSpacing) / 2
}
Controls.TextField {
id: opensGreaterTemperatureFourthField
id: heatingStopThresholdField
validator: IntValidator { bottom: -32768; top: 32768 }
Layout.fillWidth: true
Layout.maximumWidth: (parent.width - parent.columnSpacing) / 2
}
@@ -756,6 +794,21 @@ RowLayout {
BmsInterface.bmsConfig().setParamValue("cellBalanceUpdateInterval", parseInt(balancingCellIntervalField.text))
BmsInterface.bmsConfig().setParamValue("shuntLCFactor", parseFloat(zeroSensorValueField.text))
BmsInterface.bmsConfig().setParamValue("chargeBatteryOutputChecked", chargeBatteryOutputCheckBox.checked)
BmsInterface.bmsConfig().setParamValue("brushOrShuntOutputChecked", brushOrShuntOutputCheckBox.checked)
BmsInterface.bmsConfig().setParamValue("brushOrShuntMode", shuntChargingContactorRadioButton.checked)
BmsInterface.bmsConfig().setParamValue("brushUsageSocThreshold", parseInt(brushUsageSocThresholdField.text))
BmsInterface.bmsConfig().setParamValue("shuntChargingContactorDelay", parseInt(shuntChargingContactorDelayField.text))
BmsInterface.bmsConfig().setParamValue("coolingOutputChecked", coolingOutputCheckBox.checked)
BmsInterface.bmsConfig().setParamValue("coolingStartThreshold", parseInt(coolingStartThresholdField.text))
BmsInterface.bmsConfig().setParamValue("coolingStopThreshold", parseInt(coolingStopThresholdField.text))
BmsInterface.bmsConfig().setParamValue("heatingOutputChecked", heatingOutputCheckBox.checked)
BmsInterface.bmsConfig().setParamValue("heatingStartThreshold", parseInt(heatingStartThresholdField.text))
BmsInterface.bmsConfig().setParamValue("heatingStopThreshold", parseInt(heatingStopThresholdField.text))
}
Connections {
@@ -783,6 +836,22 @@ RowLayout {
balancingCellIntervalField.text = BmsInterface.bmsConfig().getParamInt("cellBalanceUpdateInterval")
zeroSensorValueField.text = MathHelper.roundDouble(BmsInterface.bmsConfig().getParamDouble("shuntLCFactor"))
chargeBatteryOutputCheckBox.checked = BmsInterface.bmsConfig().getParamBool("chargeBatteryOutputChecked")
brushOrShuntOutputCheckBox.checked = BmsInterface.bmsConfig().getParamBool("brushOrShuntOutputChecked")
brushControlRadioButton.checked = !BmsInterface.bmsConfig().getParamBool("brushOrShuntMode")
shuntChargingContactorRadioButton.checked = BmsInterface.bmsConfig().getParamBool("brushOrShuntMode")
brushUsageSocThresholdField.text = BmsInterface.bmsConfig().getParamInt("brushUsageSocThreshold")
shuntChargingContactorDelayField.text = BmsInterface.bmsConfig().getParamInt("shuntChargingContactorDelay")
coolingOutputCheckBox.checked = BmsInterface.bmsConfig().getParamBool("coolingOutputChecked")
coolingStartThresholdField.text = BmsInterface.bmsConfig().getParamInt("coolingStartThreshold")
coolingStopThresholdField.text = BmsInterface.bmsConfig().getParamInt("coolingStopThreshold")
heatingOutputCheckBox.checked = BmsInterface.bmsConfig().getParamBool("heatingOutputChecked")
heatingStartThresholdField.text = BmsInterface.bmsConfig().getParamInt("heatingStartThreshold")
heatingStopThresholdField.text = BmsInterface.bmsConfig().getParamInt("heatingStopThreshold")
}
}
}

View File

@@ -46,5 +46,6 @@
<file>Controls/ProgressBar.qml</file>
<file>Screens/NetworkSettingsScreen.qml</file>
<file>Screens/TimeSettingsScreen.qml</file>
<file>Controls/RadioButton.qml</file>
</qresource>
</RCC>

View File

@@ -2486,6 +2486,142 @@ p, li { white-space: pre-wrap; }
<suffix>ms</suffix>
<vTx>5</vTx>
</AUX1TurnOffDelay>
<chargeBatteryOutputChecked>
<longName>Charge Battery Output Checked</longName>
<type>5</type>
<transmittable>1</transmittable>
<description>Charge Battery Output Checked Description</description>
<cDefine>CHARGE_BATTERY_OUTPUT_CHECKED</cDefine>
<valInt>0</valInt>
</chargeBatteryOutputChecked>
<brushOrShuntOutputChecked>
<longName>Brush Or Shunt Output Checked</longName>
<type>5</type>
<transmittable>1</transmittable>
<description>Brush Or Shunt Output Checked Description</description>
<cDefine>BRUSH_OR_SHUNT_OUTPUT_CHECKED</cDefine>
<valInt>0</valInt>
</brushOrShuntOutputChecked>
<brushOrShuntMode>
<longName>Brush Or Shunt Mode</longName>
<type>5</type>
<transmittable>1</transmittable>
<description>Brush Or Shunt Mode Description</description>
<cDefine>BRUSH_OR_SHUNT_MODE</cDefine>
<valInt>1</valInt>
</brushOrShuntMode>
<brushUsageSocThreshold>
<longName>Brush Usage Soc Threshold</longName>
<type>2</type>
<transmittable>1</transmittable>
<description>Brush Usage Soc Threshold Description</description>
<cDefine>BRUSH_USAGE_SOC_THRESHOLD</cDefine>
<editorScale>1</editorScale>
<editAsPercentage>0</editAsPercentage>
<maxInt>100</maxInt>
<minInt>0</minInt>
<showDisplay>0</showDisplay>
<stepInt>1</stepInt>
<valInt>10</valInt>
<suffix>°C</suffix>
<vTx>3</vTx>
</brushUsageSocThreshold>
<shuntChargingContactorDelay>
<longName>Shunt Charging Contactor Delay</longName>
<type>2</type>
<transmittable>1</transmittable>
<description>Shunt Charging Contactor Delay Description</description>
<cDefine>SHUNT_CHARGING_CONTRACTOR_DELAY</cDefine>
<editorScale>1</editorScale>
<editAsPercentage>0</editAsPercentage>
<maxInt>65535</maxInt>
<minInt>0</minInt>
<showDisplay>0</showDisplay>
<stepInt>1</stepInt>
<valInt>10</valInt>
<suffix>Sec</suffix>
<vTx>3</vTx>
</shuntChargingContactorDelay>
<coolingOutputChecked>
<longName>Cooling Output Checked</longName>
<type>5</type>
<transmittable>1</transmittable>
<description>Cooling Output Checked Description</description>
<cDefine>COOLING_OUTPUT_CHECKED</cDefine>
<valInt>0</valInt>
</coolingOutputChecked>
<coolingStartThreshold>
<longName>Cooling Start Threshold</longName>
<type>2</type>
<transmittable>1</transmittable>
<description>Cooling Start Threshold Description</description>
<cDefine>COOLING_START_THRESHOLD</cDefine>
<editorScale>1</editorScale>
<editAsPercentage>0</editAsPercentage>
<maxInt>32767</maxInt>
<minInt>-32768</minInt>
<showDisplay>0</showDisplay>
<stepInt>1</stepInt>
<valInt>50</valInt>
<suffix>°C</suffix>
<vTx>4</vTx>
</coolingStartThreshold>
<coolingStopThreshold>
<longName>Cooling Stop Threshold</longName>
<type>2</type>
<transmittable>1</transmittable>
<description>Cooling Stop Threshold Description</description>
<cDefine>COOLING_STOP_THRESHOLD</cDefine>
<editorScale>1</editorScale>
<editAsPercentage>0</editAsPercentage>
<maxInt>32767</maxInt>
<minInt>-32768</minInt>
<showDisplay>0</showDisplay>
<stepInt>1</stepInt>
<valInt>40</valInt>
<suffix>°C</suffix>
<vTx>4</vTx>
</coolingStopThreshold>
<heatingOutputChecked>
<longName>Heating Output Checked</longName>
<type>5</type>
<transmittable>1</transmittable>
<description>Heating Output Checked Description</description>
<cDefine>HEATING_OUTPUT_CHECKED</cDefine>
<valInt>0</valInt>
</heatingOutputChecked>
<heatingStartThreshold>
<longName>Heating Start Threshold</longName>
<type>2</type>
<transmittable>1</transmittable>
<description>Heating Start Threshold Description</description>
<cDefine>HEATING_START_THRESHOLD</cDefine>
<editorScale>1</editorScale>
<editAsPercentage>0</editAsPercentage>
<maxInt>32767</maxInt>
<minInt>-32768</minInt>
<showDisplay>0</showDisplay>
<stepInt>1</stepInt>
<valInt>0</valInt>
<suffix>°C</suffix>
<vTx>4</vTx>
</heatingStartThreshold>
<heatingStopThreshold>
<longName>Heating Stop Threshold</longName>
<type>2</type>
<transmittable>1</transmittable>
<description>Heating Stop Threshold Description</description>
<cDefine>HEATING_STOP_THRESHOLD</cDefine>
<editorScale>1</editorScale>
<editAsPercentage>0</editAsPercentage>
<maxInt>32767</maxInt>
<minInt>-32768</minInt>
<showDisplay>0</showDisplay>
<stepInt>1</stepInt>
<valInt>20</valInt>
<suffix>°C</suffix>
<vTx>4</vTx>
</heatingStopThreshold>
</Params>
<SerOrder>
<ser>noOfCellsSeries</ser>
@@ -2582,5 +2718,16 @@ p, li { white-space: pre-wrap; }
<ser>chargeEnableState</ser>
<ser>powerDownDelay</ser>
<ser>humidityICType</ser>
<ser>chargeBatteryOutputChecked</ser>
<ser>brushOrShuntOutputChecked</ser>
<ser>brushOrShuntMode</ser>
<ser>brushUsageSocThreshold</ser>
<ser>shuntChargingContactorDelay</ser>
<ser>coolingOutputChecked</ser>
<ser>coolingStartThreshold</ser>
<ser>coolingStopThreshold</ser>
<ser>heatingOutputChecked</ser>
<ser>heatingStartThreshold</ser>
<ser>heatingStopThreshold</ser>
</SerOrder>
</ConfigParams>

View File

@@ -233,13 +233,13 @@
<name>BmsSettingsScreen</name>
<message>
<location filename="../qml/Screens/BmsSettingsScreen.qml" line="44"/>
<location filename="../qml/Screens/BmsSettingsScreen.qml" line="645"/>
<location filename="../qml/Screens/BmsSettingsScreen.qml" line="683"/>
<source>Serial number</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../qml/Screens/BmsSettingsScreen.qml" line="71"/>
<location filename="../qml/Screens/BmsSettingsScreen.qml" line="650"/>
<location filename="../qml/Screens/BmsSettingsScreen.qml" line="688"/>
<source>Configuration</source>
<translation type="unfinished"></translation>
</message>
@@ -255,7 +255,7 @@
</message>
<message>
<location filename="../qml/Screens/BmsSettingsScreen.qml" line="117"/>
<location filename="../qml/Screens/BmsSettingsScreen.qml" line="655"/>
<location filename="../qml/Screens/BmsSettingsScreen.qml" line="693"/>
<source>SOC</source>
<translation type="unfinished"></translation>
</message>
@@ -271,7 +271,7 @@
</message>
<message>
<location filename="../qml/Screens/BmsSettingsScreen.qml" line="165"/>
<location filename="../qml/Screens/BmsSettingsScreen.qml" line="660"/>
<location filename="../qml/Screens/BmsSettingsScreen.qml" line="698"/>
<source>Limits</source>
<translation type="unfinished"></translation>
</message>
@@ -292,7 +292,7 @@
</message>
<message>
<location filename="../qml/Screens/BmsSettingsScreen.qml" line="232"/>
<location filename="../qml/Screens/BmsSettingsScreen.qml" line="665"/>
<location filename="../qml/Screens/BmsSettingsScreen.qml" line="703"/>
<source>Cell configuration</source>
<translation type="unfinished"></translation>
</message>
@@ -318,7 +318,7 @@
</message>
<message>
<location filename="../qml/Screens/BmsSettingsScreen.qml" line="312"/>
<location filename="../qml/Screens/BmsSettingsScreen.qml" line="670"/>
<location filename="../qml/Screens/BmsSettingsScreen.qml" line="708"/>
<source>Balancing configuration</source>
<translation type="unfinished"></translation>
</message>
@@ -339,7 +339,7 @@
</message>
<message>
<location filename="../qml/Screens/BmsSettingsScreen.qml" line="381"/>
<location filename="../qml/Screens/BmsSettingsScreen.qml" line="675"/>
<location filename="../qml/Screens/BmsSettingsScreen.qml" line="713"/>
<source>Output settings</source>
<translation type="unfinished"></translation>
</message>
@@ -349,114 +349,139 @@
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../qml/Screens/BmsSettingsScreen.qml" line="396"/>
<source>Use for storage management</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../qml/Screens/BmsSettingsScreen.qml" line="414"/>
<location filename="../qml/Screens/BmsSettingsScreen.qml" line="415"/>
<source># 2</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../qml/Screens/BmsSettingsScreen.qml" line="422"/>
<source>Active</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../qml/Screens/BmsSettingsScreen.qml" line="433"/>
<source>Brush control</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../qml/Screens/BmsSettingsScreen.qml" line="440"/>
<source>Shunt charging contactor</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../qml/Screens/BmsSettingsScreen.qml" line="446"/>
<source>SOC threshold, %</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../qml/Screens/BmsSettingsScreen.qml" line="454"/>
<source>Delay, s</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../qml/Screens/BmsSettingsScreen.qml" line="484"/>
<source># 3</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../qml/Screens/BmsSettingsScreen.qml" line="501"/>
<location filename="../qml/Screens/BmsSettingsScreen.qml" line="491"/>
<source>Cooling activation</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../qml/Screens/BmsSettingsScreen.qml" line="535"/>
<source># 4</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../qml/Screens/BmsSettingsScreen.qml" line="623"/>
<location filename="../qml/Screens/BmsSettingsScreen.qml" line="542"/>
<source>Heating activation</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../qml/Screens/BmsSettingsScreen.qml" line="661"/>
<source>BMS configuration saved to file</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../qml/Screens/BmsSettingsScreen.qml" line="695"/>
<location filename="../qml/Screens/BmsSettingsScreen.qml" line="733"/>
<source>Read default settings</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../qml/Screens/BmsSettingsScreen.qml" line="723"/>
<location filename="../qml/Screens/BmsSettingsScreen.qml" line="761"/>
<source>The settings are written to non-volatile memory.
Wait, please.</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../qml/Screens/BmsSettingsScreen.qml" line="420"/>
<source>Normally closed</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../qml/Screens/BmsSettingsScreen.qml" line="430"/>
<source>Change in value during SOC</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../qml/Screens/BmsSettingsScreen.qml" line="469"/>
<location filename="../qml/Screens/BmsSettingsScreen.qml" line="516"/>
<location filename="../qml/Screens/BmsSettingsScreen.qml" line="501"/>
<location filename="../qml/Screens/BmsSettingsScreen.qml" line="552"/>
<source>Closes at t&lt;, °C</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../qml/Screens/BmsSettingsScreen.qml" line="475"/>
<location filename="../qml/Screens/BmsSettingsScreen.qml" line="522"/>
<location filename="../qml/Screens/BmsSettingsScreen.qml" line="397"/>
<source>Use to control charger</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../qml/Screens/BmsSettingsScreen.qml" line="507"/>
<location filename="../qml/Screens/BmsSettingsScreen.qml" line="558"/>
<source>Opens at t&gt;, °C</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../qml/Screens/BmsSettingsScreen.qml" line="559"/>
<location filename="../qml/Screens/BmsSettingsScreen.qml" line="680"/>
<location filename="../qml/Screens/BmsSettingsScreen.qml" line="597"/>
<location filename="../qml/Screens/BmsSettingsScreen.qml" line="718"/>
<source>Current sensor value &quot;0&quot;</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../qml/Screens/BmsSettingsScreen.qml" line="574"/>
<location filename="../qml/Screens/BmsSettingsScreen.qml" line="612"/>
<source>Calibrate &quot;0&quot;</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../qml/Screens/BmsSettingsScreen.qml" line="584"/>
<location filename="../qml/Screens/BmsSettingsScreen.qml" line="622"/>
<source>Load settings from file</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../qml/Screens/BmsSettingsScreen.qml" line="590"/>
<location filename="../qml/Screens/BmsSettingsScreen.qml" line="614"/>
<location filename="../qml/Screens/BmsSettingsScreen.qml" line="628"/>
<location filename="../qml/Screens/BmsSettingsScreen.qml" line="652"/>
<source>Select configuration file</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../qml/Screens/BmsSettingsScreen.qml" line="592"/>
<location filename="../qml/Screens/BmsSettingsScreen.qml" line="617"/>
<location filename="../qml/Screens/BmsSettingsScreen.qml" line="630"/>
<location filename="../qml/Screens/BmsSettingsScreen.qml" line="655"/>
<source>Configuration files (*.xml)</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../qml/Screens/BmsSettingsScreen.qml" line="592"/>
<location filename="../qml/Screens/BmsSettingsScreen.qml" line="617"/>
<location filename="../qml/Screens/BmsSettingsScreen.qml" line="630"/>
<location filename="../qml/Screens/BmsSettingsScreen.qml" line="655"/>
<source>All files (*)</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../qml/Screens/BmsSettingsScreen.qml" line="608"/>
<location filename="../qml/Screens/BmsSettingsScreen.qml" line="646"/>
<source>Save settings to file</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../qml/Screens/BmsSettingsScreen.qml" line="703"/>
<location filename="../qml/Screens/BmsSettingsScreen.qml" line="741"/>
<source>Read current settings from BMS</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../qml/Screens/BmsSettingsScreen.qml" line="720"/>
<location filename="../qml/Screens/BmsSettingsScreen.qml" line="758"/>
<source>Write to non-volatile memory of BMS</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../qml/Screens/BmsSettingsScreen.qml" line="711"/>
<location filename="../qml/Screens/BmsSettingsScreen.qml" line="749"/>
<source>Write current values to BMS</source>
<translation type="unfinished"></translation>
</message>

View File

@@ -233,13 +233,13 @@
<name>BmsSettingsScreen</name>
<message>
<location filename="../qml/Screens/BmsSettingsScreen.qml" line="44"/>
<location filename="../qml/Screens/BmsSettingsScreen.qml" line="645"/>
<location filename="../qml/Screens/BmsSettingsScreen.qml" line="683"/>
<source>Serial number</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../qml/Screens/BmsSettingsScreen.qml" line="71"/>
<location filename="../qml/Screens/BmsSettingsScreen.qml" line="650"/>
<location filename="../qml/Screens/BmsSettingsScreen.qml" line="688"/>
<source>Configuration</source>
<translation type="unfinished"></translation>
</message>
@@ -255,7 +255,7 @@
</message>
<message>
<location filename="../qml/Screens/BmsSettingsScreen.qml" line="117"/>
<location filename="../qml/Screens/BmsSettingsScreen.qml" line="655"/>
<location filename="../qml/Screens/BmsSettingsScreen.qml" line="693"/>
<source>SOC</source>
<translation type="unfinished"></translation>
</message>
@@ -271,7 +271,7 @@
</message>
<message>
<location filename="../qml/Screens/BmsSettingsScreen.qml" line="165"/>
<location filename="../qml/Screens/BmsSettingsScreen.qml" line="660"/>
<location filename="../qml/Screens/BmsSettingsScreen.qml" line="698"/>
<source>Limits</source>
<translation type="unfinished"></translation>
</message>
@@ -292,7 +292,7 @@
</message>
<message>
<location filename="../qml/Screens/BmsSettingsScreen.qml" line="232"/>
<location filename="../qml/Screens/BmsSettingsScreen.qml" line="665"/>
<location filename="../qml/Screens/BmsSettingsScreen.qml" line="703"/>
<source>Cell configuration</source>
<translation type="unfinished"></translation>
</message>
@@ -318,7 +318,7 @@
</message>
<message>
<location filename="../qml/Screens/BmsSettingsScreen.qml" line="312"/>
<location filename="../qml/Screens/BmsSettingsScreen.qml" line="670"/>
<location filename="../qml/Screens/BmsSettingsScreen.qml" line="708"/>
<source>Balancing configuration</source>
<translation type="unfinished"></translation>
</message>
@@ -339,7 +339,7 @@
</message>
<message>
<location filename="../qml/Screens/BmsSettingsScreen.qml" line="381"/>
<location filename="../qml/Screens/BmsSettingsScreen.qml" line="675"/>
<location filename="../qml/Screens/BmsSettingsScreen.qml" line="713"/>
<source>Output settings</source>
<translation type="unfinished"></translation>
</message>
@@ -349,114 +349,139 @@
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../qml/Screens/BmsSettingsScreen.qml" line="396"/>
<source>Use for storage management</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../qml/Screens/BmsSettingsScreen.qml" line="414"/>
<location filename="../qml/Screens/BmsSettingsScreen.qml" line="415"/>
<source># 2</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../qml/Screens/BmsSettingsScreen.qml" line="422"/>
<source>Active</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../qml/Screens/BmsSettingsScreen.qml" line="433"/>
<source>Brush control</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../qml/Screens/BmsSettingsScreen.qml" line="440"/>
<source>Shunt charging contactor</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../qml/Screens/BmsSettingsScreen.qml" line="446"/>
<source>SOC threshold, %</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../qml/Screens/BmsSettingsScreen.qml" line="454"/>
<source>Delay, s</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../qml/Screens/BmsSettingsScreen.qml" line="484"/>
<source># 3</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../qml/Screens/BmsSettingsScreen.qml" line="501"/>
<location filename="../qml/Screens/BmsSettingsScreen.qml" line="491"/>
<source>Cooling activation</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../qml/Screens/BmsSettingsScreen.qml" line="535"/>
<source># 4</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../qml/Screens/BmsSettingsScreen.qml" line="623"/>
<location filename="../qml/Screens/BmsSettingsScreen.qml" line="542"/>
<source>Heating activation</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../qml/Screens/BmsSettingsScreen.qml" line="661"/>
<source>BMS configuration saved to file</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../qml/Screens/BmsSettingsScreen.qml" line="695"/>
<location filename="../qml/Screens/BmsSettingsScreen.qml" line="733"/>
<source>Read default settings</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../qml/Screens/BmsSettingsScreen.qml" line="723"/>
<location filename="../qml/Screens/BmsSettingsScreen.qml" line="761"/>
<source>The settings are written to non-volatile memory.
Wait, please.</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../qml/Screens/BmsSettingsScreen.qml" line="420"/>
<source>Normally closed</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../qml/Screens/BmsSettingsScreen.qml" line="430"/>
<source>Change in value during SOC</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../qml/Screens/BmsSettingsScreen.qml" line="469"/>
<location filename="../qml/Screens/BmsSettingsScreen.qml" line="516"/>
<location filename="../qml/Screens/BmsSettingsScreen.qml" line="501"/>
<location filename="../qml/Screens/BmsSettingsScreen.qml" line="552"/>
<source>Closes at t&lt;, °C</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../qml/Screens/BmsSettingsScreen.qml" line="475"/>
<location filename="../qml/Screens/BmsSettingsScreen.qml" line="522"/>
<location filename="../qml/Screens/BmsSettingsScreen.qml" line="397"/>
<source>Use to control charger</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../qml/Screens/BmsSettingsScreen.qml" line="507"/>
<location filename="../qml/Screens/BmsSettingsScreen.qml" line="558"/>
<source>Opens at t&gt;, °C</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../qml/Screens/BmsSettingsScreen.qml" line="559"/>
<location filename="../qml/Screens/BmsSettingsScreen.qml" line="680"/>
<location filename="../qml/Screens/BmsSettingsScreen.qml" line="597"/>
<location filename="../qml/Screens/BmsSettingsScreen.qml" line="718"/>
<source>Current sensor value &quot;0&quot;</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../qml/Screens/BmsSettingsScreen.qml" line="574"/>
<location filename="../qml/Screens/BmsSettingsScreen.qml" line="612"/>
<source>Calibrate &quot;0&quot;</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../qml/Screens/BmsSettingsScreen.qml" line="584"/>
<location filename="../qml/Screens/BmsSettingsScreen.qml" line="622"/>
<source>Load settings from file</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../qml/Screens/BmsSettingsScreen.qml" line="590"/>
<location filename="../qml/Screens/BmsSettingsScreen.qml" line="614"/>
<location filename="../qml/Screens/BmsSettingsScreen.qml" line="628"/>
<location filename="../qml/Screens/BmsSettingsScreen.qml" line="652"/>
<source>Select configuration file</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../qml/Screens/BmsSettingsScreen.qml" line="592"/>
<location filename="../qml/Screens/BmsSettingsScreen.qml" line="617"/>
<location filename="../qml/Screens/BmsSettingsScreen.qml" line="630"/>
<location filename="../qml/Screens/BmsSettingsScreen.qml" line="655"/>
<source>Configuration files (*.xml)</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../qml/Screens/BmsSettingsScreen.qml" line="592"/>
<location filename="../qml/Screens/BmsSettingsScreen.qml" line="617"/>
<location filename="../qml/Screens/BmsSettingsScreen.qml" line="630"/>
<location filename="../qml/Screens/BmsSettingsScreen.qml" line="655"/>
<source>All files (*)</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../qml/Screens/BmsSettingsScreen.qml" line="608"/>
<location filename="../qml/Screens/BmsSettingsScreen.qml" line="646"/>
<source>Save settings to file</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../qml/Screens/BmsSettingsScreen.qml" line="703"/>
<location filename="../qml/Screens/BmsSettingsScreen.qml" line="741"/>
<source>Read current settings from BMS</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../qml/Screens/BmsSettingsScreen.qml" line="720"/>
<location filename="../qml/Screens/BmsSettingsScreen.qml" line="758"/>
<source>Write to non-volatile memory of BMS</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../qml/Screens/BmsSettingsScreen.qml" line="711"/>
<location filename="../qml/Screens/BmsSettingsScreen.qml" line="749"/>
<source>Write current values to BMS</source>
<translation type="unfinished"></translation>
</message>

Binary file not shown.

View File

@@ -245,13 +245,13 @@
<name>BmsSettingsScreen</name>
<message>
<location filename="../qml/Screens/BmsSettingsScreen.qml" line="44"/>
<location filename="../qml/Screens/BmsSettingsScreen.qml" line="645"/>
<location filename="../qml/Screens/BmsSettingsScreen.qml" line="683"/>
<source>Serial number</source>
<translation>Серийный номер</translation>
</message>
<message>
<location filename="../qml/Screens/BmsSettingsScreen.qml" line="71"/>
<location filename="../qml/Screens/BmsSettingsScreen.qml" line="650"/>
<location filename="../qml/Screens/BmsSettingsScreen.qml" line="688"/>
<source>Configuration</source>
<translation>Конфигурация</translation>
</message>
@@ -267,7 +267,7 @@
</message>
<message>
<location filename="../qml/Screens/BmsSettingsScreen.qml" line="117"/>
<location filename="../qml/Screens/BmsSettingsScreen.qml" line="655"/>
<location filename="../qml/Screens/BmsSettingsScreen.qml" line="693"/>
<source>SOC</source>
<translation>SOC</translation>
</message>
@@ -283,7 +283,7 @@
</message>
<message>
<location filename="../qml/Screens/BmsSettingsScreen.qml" line="165"/>
<location filename="../qml/Screens/BmsSettingsScreen.qml" line="660"/>
<location filename="../qml/Screens/BmsSettingsScreen.qml" line="698"/>
<source>Limits</source>
<translation>Ограничения</translation>
</message>
@@ -304,7 +304,7 @@
</message>
<message>
<location filename="../qml/Screens/BmsSettingsScreen.qml" line="232"/>
<location filename="../qml/Screens/BmsSettingsScreen.qml" line="665"/>
<location filename="../qml/Screens/BmsSettingsScreen.qml" line="703"/>
<source>Cell configuration</source>
<translation>Конфигурация ячеек</translation>
</message>
@@ -330,7 +330,7 @@
</message>
<message>
<location filename="../qml/Screens/BmsSettingsScreen.qml" line="312"/>
<location filename="../qml/Screens/BmsSettingsScreen.qml" line="670"/>
<location filename="../qml/Screens/BmsSettingsScreen.qml" line="708"/>
<source>Balancing configuration</source>
<translation>Конфигурация балансировки</translation>
</message>
@@ -351,7 +351,7 @@
</message>
<message>
<location filename="../qml/Screens/BmsSettingsScreen.qml" line="381"/>
<location filename="../qml/Screens/BmsSettingsScreen.qml" line="675"/>
<location filename="../qml/Screens/BmsSettingsScreen.qml" line="713"/>
<source>Output settings</source>
<translation>Настройка выходов</translation>
</message>
@@ -361,100 +361,137 @@
<translation> 1</translation>
</message>
<message>
<location filename="../qml/Screens/BmsSettingsScreen.qml" line="396"/>
<source>Use for storage management</source>
<location filename="../qml/Screens/BmsSettingsScreen.qml" line="397"/>
<source>Use to control charger</source>
<translation>Использовать для управления ЗУ</translation>
</message>
<message>
<location filename="../qml/Screens/BmsSettingsScreen.qml" line="414"/>
<source>Use for storage management</source>
<translation type="vanished">Использовать для управления ЗУ</translation>
</message>
<message>
<location filename="../qml/Screens/BmsSettingsScreen.qml" line="415"/>
<source># 2</source>
<translation> 2</translation>
</message>
<message>
<location filename="../qml/Screens/BmsSettingsScreen.qml" line="422"/>
<source>Active</source>
<translation>Активный</translation>
</message>
<message>
<location filename="../qml/Screens/BmsSettingsScreen.qml" line="433"/>
<source>Brush control</source>
<translation>Управление щетками</translation>
</message>
<message>
<location filename="../qml/Screens/BmsSettingsScreen.qml" line="440"/>
<source>Shunt charging contactor</source>
<translation>Шунтирование зарядного контактора</translation>
</message>
<message>
<location filename="../qml/Screens/BmsSettingsScreen.qml" line="446"/>
<source>SOC threshold, %</source>
<translation>Уровень SOC, %</translation>
</message>
<message>
<location filename="../qml/Screens/BmsSettingsScreen.qml" line="454"/>
<source>Delay, s</source>
<translation>Задержка, с</translation>
</message>
<message>
<location filename="../qml/Screens/BmsSettingsScreen.qml" line="484"/>
<source># 3</source>
<translation> 3</translation>
</message>
<message>
<location filename="../qml/Screens/BmsSettingsScreen.qml" line="501"/>
<location filename="../qml/Screens/BmsSettingsScreen.qml" line="491"/>
<source>Cooling activation</source>
<translation>Активация охлаждения</translation>
</message>
<message>
<location filename="../qml/Screens/BmsSettingsScreen.qml" line="535"/>
<source># 4</source>
<translation> 4</translation>
</message>
<message>
<location filename="../qml/Screens/BmsSettingsScreen.qml" line="623"/>
<location filename="../qml/Screens/BmsSettingsScreen.qml" line="542"/>
<source>Heating activation</source>
<translation>Активация обогрева</translation>
</message>
<message>
<location filename="../qml/Screens/BmsSettingsScreen.qml" line="661"/>
<source>BMS configuration saved to file</source>
<translation>БМС конфигурация сохранена в файл</translation>
</message>
<message>
<location filename="../qml/Screens/BmsSettingsScreen.qml" line="695"/>
<location filename="../qml/Screens/BmsSettingsScreen.qml" line="733"/>
<source>Read default settings</source>
<translation>Загрузить настройки по-умолчанию</translation>
</message>
<message>
<location filename="../qml/Screens/BmsSettingsScreen.qml" line="723"/>
<location filename="../qml/Screens/BmsSettingsScreen.qml" line="761"/>
<source>The settings are written to non-volatile memory.
Wait, please.</source>
<translation>Выполняется запись настроек в энергонезависимую память.
Пожалуйста подождите.</translation>
</message>
<message>
<location filename="../qml/Screens/BmsSettingsScreen.qml" line="420"/>
<source>Normally closed</source>
<translation>Нормально замкнут</translation>
<translation type="vanished">Нормально замкнут</translation>
</message>
<message>
<location filename="../qml/Screens/BmsSettingsScreen.qml" line="430"/>
<source>Change in value during SOC</source>
<translation>Изменение значения при SOC</translation>
<translation type="vanished">Изменение значения при SOC</translation>
</message>
<message>
<location filename="../qml/Screens/BmsSettingsScreen.qml" line="469"/>
<location filename="../qml/Screens/BmsSettingsScreen.qml" line="516"/>
<location filename="../qml/Screens/BmsSettingsScreen.qml" line="501"/>
<location filename="../qml/Screens/BmsSettingsScreen.qml" line="552"/>
<source>Closes at t&lt;, °C</source>
<translation>Замыкается при t&lt;, °C</translation>
</message>
<message>
<location filename="../qml/Screens/BmsSettingsScreen.qml" line="475"/>
<location filename="../qml/Screens/BmsSettingsScreen.qml" line="522"/>
<location filename="../qml/Screens/BmsSettingsScreen.qml" line="507"/>
<location filename="../qml/Screens/BmsSettingsScreen.qml" line="558"/>
<source>Opens at t&gt;, °C</source>
<translation>Размыкается при t&gt;, °C</translation>
</message>
<message>
<location filename="../qml/Screens/BmsSettingsScreen.qml" line="559"/>
<location filename="../qml/Screens/BmsSettingsScreen.qml" line="680"/>
<location filename="../qml/Screens/BmsSettingsScreen.qml" line="597"/>
<location filename="../qml/Screens/BmsSettingsScreen.qml" line="718"/>
<source>Current sensor value &quot;0&quot;</source>
<translation>Значение датчика тока «0»</translation>
</message>
<message>
<location filename="../qml/Screens/BmsSettingsScreen.qml" line="574"/>
<location filename="../qml/Screens/BmsSettingsScreen.qml" line="612"/>
<source>Calibrate &quot;0&quot;</source>
<translation>Калибровать «0»</translation>
</message>
<message>
<location filename="../qml/Screens/BmsSettingsScreen.qml" line="584"/>
<location filename="../qml/Screens/BmsSettingsScreen.qml" line="622"/>
<source>Load settings from file</source>
<translation>Загрузить настройки из файла</translation>
</message>
<message>
<location filename="../qml/Screens/BmsSettingsScreen.qml" line="590"/>
<location filename="../qml/Screens/BmsSettingsScreen.qml" line="614"/>
<location filename="../qml/Screens/BmsSettingsScreen.qml" line="628"/>
<location filename="../qml/Screens/BmsSettingsScreen.qml" line="652"/>
<source>Select configuration file</source>
<translation>Выберите файл конфигурации</translation>
</message>
<message>
<location filename="../qml/Screens/BmsSettingsScreen.qml" line="592"/>
<location filename="../qml/Screens/BmsSettingsScreen.qml" line="617"/>
<location filename="../qml/Screens/BmsSettingsScreen.qml" line="630"/>
<location filename="../qml/Screens/BmsSettingsScreen.qml" line="655"/>
<source>Configuration files (*.xml)</source>
<translation>Файлы конфигурации (*.xml)</translation>
</message>
<message>
<location filename="../qml/Screens/BmsSettingsScreen.qml" line="592"/>
<location filename="../qml/Screens/BmsSettingsScreen.qml" line="617"/>
<location filename="../qml/Screens/BmsSettingsScreen.qml" line="630"/>
<location filename="../qml/Screens/BmsSettingsScreen.qml" line="655"/>
<source>All files (*)</source>
<translation>Все файлы (*)</translation>
</message>
<message>
<location filename="../qml/Screens/BmsSettingsScreen.qml" line="608"/>
<location filename="../qml/Screens/BmsSettingsScreen.qml" line="646"/>
<source>Save settings to file</source>
<translation>Сохранить настройки в файл</translation>
</message>
@@ -463,17 +500,17 @@ Wait, please.</source>
<translation type="vanished">Загрузить настройки из файла</translation>
</message>
<message>
<location filename="../qml/Screens/BmsSettingsScreen.qml" line="703"/>
<location filename="../qml/Screens/BmsSettingsScreen.qml" line="741"/>
<source>Read current settings from BMS</source>
<translation>Загрузить текущие настройки из BMS</translation>
</message>
<message>
<location filename="../qml/Screens/BmsSettingsScreen.qml" line="720"/>
<location filename="../qml/Screens/BmsSettingsScreen.qml" line="758"/>
<source>Write to non-volatile memory of BMS</source>
<translation>Записать в энергонезависимую память BMS</translation>
</message>
<message>
<location filename="../qml/Screens/BmsSettingsScreen.qml" line="711"/>
<location filename="../qml/Screens/BmsSettingsScreen.qml" line="749"/>
<source>Write current values to BMS</source>
<translation>Записать текущие значения в BMS</translation>
</message>