Simulation Core
您最多选择25个主题 主题必须以字母或数字开头,可以包含连字符 (-),并且长度不得超过35个字符
 
 
 
 
 
 

96 行
2.9 KiB

  1. subroutine Pumps_Outputs
  2. use CDataDisplayConsole
  3. use SimulationVariables
  4. ! Use CSimulationVariables
  5. use SimulationVariables
  6. Use MudSystemModule
  7. use SimulationVariables !@
  8. Use CSounds
  9. IMPLICIT NONE
  10. !>>>>>>>>>>>>>>>>>>>>>>> PUMP 1 <<<<<<<<<<<<<<<<<<<<<<<<<<<
  11. If (data%State%Pump(1)%Open_Close==1) then
  12. Call OpenPump1()
  13. Else if (data%State%Pump(1)%Open_Close==0) then
  14. Call ClosePump1()
  15. End if
  16. data%EquipmentControl%DrillingConsole%MP1BLWR = data%State%Pump(1)%BLWR
  17. Call SetSoundBlowerMP1( data%State%Pump(1)%SoundBlower ) !.true. or .false.
  18. Call SetSoundMP1( data%State%Pump(1)%SoundSPM ) ![spm] , integer
  19. if ((data%State%Pump(1)%Switch==-1) .or. (data%State%Pump(1)%Switch==0)) then
  20. Call Set_MP1SPMGauge( sngl(1-data%State%Pump(1)%SPMGaugeMalf)*real((data%State%Pump(1)%Speed/data%State%Pump(1)%Trans_Ratio),8) ) ![spm] , real
  21. data%EquipmentControl%DrillingWatch%SPM1 = data%EquipmentControl%DataDisplayConsole%MP1SPMGauge
  22. end if
  23. !data%State%Pump(1)%Flow_Rate !to other modules , [gpm]
  24. !>>>>>>>>>>>>>>>>>>>>>>> PUMP 2 <<<<<<<<<<<<<<<<<<<<<<<<<<<
  25. If (data%State%Pump(2)%Open_Close==1) then
  26. Call OpenPump2()
  27. Else if (data%State%Pump(2)%Open_Close==0) then
  28. Call ClosePump2()
  29. End if
  30. data%EquipmentControl%DrillingConsole%MP2BLWR = data%State%Pump(2)%BLWR
  31. Call SetSoundBlowerMP2( data%State%Pump(2)%SoundBlower )
  32. Call SetSoundMP2( data%State%Pump(2)%SoundSPM )
  33. Call Set_MP2SPMGauge( sngl(1-data%State%Pump(2)%SPMGaugeMalf)*real((data%State%Pump(2)%Speed/data%State%Pump(2)%Trans_Ratio),8) )
  34. data%EquipmentControl%DrillingWatch%SPM2 = data%EquipmentControl%DataDisplayConsole%MP2SPMGauge
  35. !data%State%Pump(2)%Flow_Rate !to other modules
  36. !!>>>>>>>>>>>>>>>>>>>>>>> PUMP 3 <<<<<<<<<<<<<<<<<<<<<<<<<<<
  37. If (data%State%Pump(3)%Open_Close==1) then
  38. Call OpenCementPump()
  39. Else if (data%State%Pump(3)%Open_Close==0) then
  40. Call CloseCementPump()
  41. End if
  42. Call SetSoundMP3( data%State%Pump(3)%SoundSPM )
  43. if (data%State%Pump(3)%Switch==1) then
  44. Call Set_MP1SPMGauge( real((data%State%Pump(3)%Speed/data%State%Pump(3)%Trans_Ratio),8) )
  45. data%EquipmentControl%DrillingWatch%SPM1 = data%EquipmentControl%DataDisplayConsole%MP1SPMGauge
  46. end if
  47. !data%State%Pump(3)%Flow_Rate !to other modules
  48. !>>>>>>>>>>>>>>>>>>>>>>> Total Pumps <<<<<<<<<<<<<<<<<<<<<<<<<<<
  49. !data%State%MPumps%Total_Pump_Gpm = 100.d0 !???????????
  50. !data%State%MPumps%Total_Pump_SPM = 1000.d0 !?????????????
  51. !SCR1LED=1
  52. !SCR2LED=1
  53. !SCR3LED=1
  54. !SCR4LED=1
  55. end subroutine Pumps_Outputs