Browse Source

钟摆阀压力送出/接收值乘以/除以10

lixiang 2 years ago
parent
commit
e12f20870b

+ 17 - 2
Venus/Venus_MainPages/ViewModels/ButterflyValveViewModel.cs

@@ -34,7 +34,18 @@ namespace Venus_MainPages.ViewModels
         public int SetValue
         {
             get { return m_SetValue; }
-            set { SetProperty(ref m_SetValue, value); }
+            set 
+            {
+                if (value > 1000)
+                { 
+                value = 1000;
+                }
+                if (value < 0)
+                { 
+                value = 0;
+                }
+                SetProperty(ref m_SetValue, value); 
+            }
         }
         public int? FeedBackValue
         {
@@ -93,7 +104,11 @@ namespace Venus_MainPages.ViewModels
             if (IsPositionMode == true)
             {
                 FeedBackValue = (int)RtDataValues[$"{ModuleName}.PendulumValve.Position"];
-                SetValue = (SetValue > 1000||SetValue<0) ? 0 : SetValue;
+                ////SetValue = (SetValue > 1000||SetValue<0) ? 0 : SetValue;
+                //if (SetValue > 1000)
+                //{ 
+                //SetValue = 1000;
+                //}
             }
             else
             { 

+ 4 - 4
Venus/Venus_MainPages/Views/ButterflyValveView.xaml

@@ -36,7 +36,7 @@
         <TextBlock Grid.Row="3" Grid.Column="1" Text="Feedback:" VerticalAlignment="Center" Block.TextAlignment="Right" Margin="0,10,0,0"/>
         <TextBlock Grid.Row="4" Grid.Column="1" Text="Set Point:" VerticalAlignment="Center" Block.TextAlignment="Right" Margin="0,10,0,0"/>
 
-        <Label  Grid.Row="0" Grid.Column="2" Content="{Binding Path=DeviceName}" Width="150" Height="28" HorizontalAlignment="Left"  FontSize="13" FontFamily="Arial,SimSun"  BorderThickness="0,0,0,1" BorderBrush="Black"/>
+        <Label  Grid.Row="0" Grid.Column="2" Content="{Binding Path=DeviceName}" Width="150" Height="28" HorizontalAlignment="Left"  FontSize="13" FontFamily="Arial,SimSun"  BorderThickness="0,0,0,1" BorderBrush="Black" Padding="10,12,0,0"/>
         <!--<Label Grid.Row="1" Grid.Column="2" Grid.ColumnSpan="2" HorizontalAlignment="Left" Width="150" BorderThickness="0,0,0,1" BorderBrush="Black" FontSize="10" FontFamily="Arial,SimSun" Height="28" VerticalContentAlignment="Center" >
             
 
@@ -50,13 +50,13 @@
         <!--<Label Grid.Row="2" Grid.Column="2" VerticalContentAlignment="Bottom" Content="{Binding Path=MaxValuePressure}" Width="150"  FontSize="13" FontFamily="Arial,SimSun" Height="28" BorderThickness="0,0,0,1" BorderBrush="Black"/>-->
 
         <!--<TextBlock Grid.Row="3" Grid.Column="2" Text="{Binding Path=UnitPosition}" Width="150"       FontSize="13" FontFamily="Arial,SimSun" Height="28" />-->
-        <Label Grid.Row="2" Grid.Column="2" VerticalContentAlignment="Bottom"  Content="{Binding IsPositionMode,Converter={StaticResource BoolToUnitConverter}}" Width="150"       FontSize="13" FontFamily="Arial,SimSun" Height="28" BorderThickness="0,0,0,1" BorderBrush="Black"/>
+        <Label Grid.Row="2" Grid.Column="2" VerticalContentAlignment="Bottom"  Content="{Binding IsPositionMode,Converter={StaticResource BoolToUnitConverter}}" Width="150"       FontSize="13" FontFamily="Arial,SimSun" Height="28" BorderThickness="0,0,0,1" BorderBrush="Black" Padding="10,5,0,0"/>
 
         <!--<TextBlock Grid.Row="4" Grid.Column="2" Text="{Binding Path=FeedbackPosition}"  FontFamily="Arial,SimSun" Height="28"/>-->
-        <Label Grid.Row="3" Grid.Column="2" VerticalContentAlignment="Bottom" Content="{Binding FeedBackValue}"   Width="150"  FontSize="13" FontFamily="Arial,SimSun" Height="28" BorderThickness="0,0,0,1" BorderBrush="Black"/>
+        <Label Grid.Row="3" Grid.Column="2" VerticalContentAlignment="Bottom" Content="{Binding FeedBackValue}"   Width="150"  FontSize="13" FontFamily="Arial,SimSun" Height="28" BorderThickness="0,0,0,1" BorderBrush="Black" Padding="10,5,0,0"/>
 
         <!--<TextBox Grid.Row="5" Grid.Column="2" x:Name="inputBoxPosition" BorderBrush="Green" BorderThickness="0,0,0,1"  Width="150" HorizontalAlignment="Left" FontSize="13" FontFamily="Arial,SimSun" Height="30" VerticalContentAlignment="Center"/>-->
-        <TextBox Grid.Row="4" Grid.Column="2"   Text="{Binding SetValue,UpdateSourceTrigger=PropertyChanged}" Width="150" HorizontalAlignment="Left" FontSize="13" FontFamily="Arial,SimSun" Height="30" VerticalContentAlignment="Top"  BorderThickness="0,0,0,1" BorderBrush="Black"/>
+        <TextBox Grid.Row="4" Grid.Column="2"   Text="{Binding SetValue,UpdateSourceTrigger=PropertyChanged}" Width="150" HorizontalAlignment="Left" FontSize="13" FontFamily="Arial,SimSun" Height="30" VerticalContentAlignment="Bottom"  BorderThickness="0,0,0,1" BorderBrush="Black" Padding="10,0,0,0"/>
 
         <Button Grid.Row="5" Grid.Column="1"  Content="Set" x:Name="buttonSet" Width="80" Height="26" VerticalAlignment="Top"  Margin="5,3,0,0" Command="{Binding SetCommand}"/>
         <Button Grid.Row="5" Grid.Column="2" Content="Cancel"  Width="80" Height="26" VerticalAlignment="Top" Margin="44,3,0,0" />

+ 3 - 2
Venus/Venus_RT/Devices/PendulumValve.cs

@@ -157,6 +157,7 @@ namespace Venus_RT.Devices
         private readonly string EOF = "\r\n";
         private readonly int _readInterval = 1000;
         private readonly int _position_unit = 100;
+        private readonly int _pressure_unit = 10;
         private int _queryFlag = 0;
         private readonly AsyncSerialPort _serial;
         private Stopwatch _queryWatch = new Stopwatch();
@@ -228,7 +229,7 @@ namespace Venus_RT.Devices
                         {
                             int pressure;
                             if (int.TryParse(data[1], out pressure))
-                                Pressure = pressure;
+                                Pressure = pressure / _pressure_unit;
                         }
                         break;
                     case "A":
@@ -375,7 +376,7 @@ namespace Venus_RT.Devices
             if(_CheckStatus())
             {
                 IsOpen = true;
-                return SendCommand(Operation.SetPressure, pressure);
+                return SendCommand(Operation.SetPressure, pressure * _pressure_unit);
             }
 
             return false;