Simulation Core
Вы не можете выбрать более 25 тем Темы должны начинаться с буквы или цифры, могут содержать дефисы(-) и должны содержать не более 35 символов.
 
 
 
 
 
 

47 строки
2.1 KiB

  1. # 1 "/home/admin/SimulationCore2/Equipments/TopDrive/TopDrive_Inputs.f90"
  2. subroutine TopDrive_Inputs
  3. ! Use CSimulationVariables
  4. use CTopDrivePanelVariables
  5. use SimulationVariables
  6. use UnitySignalsModule
  7. use SimulationVariables
  8. Use TD_DrillStemComponents
  9. IMPLICIT NONE
  10. integer :: i
  11. data%State%TDS%String_Torque = data%State%TD_String%StringTorque*12.d0 ![lb.ft]*12 ---> [lb.in] ?????????
  12. !data%State%TDS%String_Torque = 20000.
  13. data%State%TDS%String_Torque = 0.112984829d0*data%State%TDS%String_Torque ![N.m]
  14. data%State%TDS%PowerState = data%Equipments%TopDrivePanel%TopDriveTdsPowerState
  15. data%State%TDS%RpmKnob = data%Equipments%TopDrivePanel%RpmKnob
  16. !data%State%TDS%MotorFaileMalf ! jayi meghdardehi nashode ??????????????????
  17. data%State%TDS%RateChange = 193.d0 ![RPM/s] motaghayere voroudi ???
  18. data%State%TDS%DrillTorqueState = data%Equipments%TopDrivePanel%TopDriveDrillTorqueState
  19. data%State%TDS%TorqueLimitKnob = data%Equipments%TopDrivePanel%TopDriveTorqueLimitKnob ! bayad hazf shavad??????????????/
  20. !===> data%State%TDS%String_JCoef Calculation
  21. if ( (data%State%TDS%DrillTorqueState==-1) .and. ((Get_TdsConnectionModes()==TDS_CONNECTION_STRING).or.(Get_TdsConnectionModes()==TDS_CONNECTION_SPINE)) ) then !if TopDrive connected to string
  22. data%State%TDS%String_JCoef = 0.d0
  23. Do i = 1,data%State%TD_String%StringConfigurationCount
  24. data%State%TDS%String_JCoef = data%State%TDS%String_JCoef+( (data%State%TD_DrillStem(i)%TotalWeight*((data%State%TD_DrillStem(i)%Id**2.d0)+(data%State%TD_DrillStem(i)%Od**2.d0)))/8.d0 ) ![lb.ft^2] , Jz=(1/2)*m*(r1^2+r2^2)
  25. End Do
  26. data%State%TDS%String_JCoef = data%State%TDS%String_JCoef*0.0421401d0 ![kg.m^2]
  27. else
  28. data%State%TDS%String_JCoef = 0.d0
  29. data%State%TDS%String_Torque = 0.d0
  30. end if
  31. data%State%TDS%String_JCoef = data%State%TDS%String_JCoef/10.d0 !???????? /10: bi dalil, check it
  32. end subroutine