test_excel.py 1.3 KB

1234567891011121314151617181920212223242526272829303132333435
  1. from django.core.management.base import BaseCommand
  2. from health_monitoring.services.mset_service import MSETService
  3. class Command(BaseCommand):
  4. help = '测试Excel数据加载和MSET计算(原代码逻辑验证)'
  5. def handle(self, *args, **options):
  6. # 1. 初始化服务
  7. service = MSETService()
  8. # 2. 测试发电机组数据
  9. self.stdout.write("=== 测试发电机组数据 ===")
  10. service.train_from_excel('generator')
  11. test_data_gen = {
  12. 'U_temp': 65,
  13. 'V_temp': 67,
  14. 'W_temp': 63,
  15. 'bearing_temp': 45
  16. }
  17. score_gen, weights_gen = service.evaluate_health(test_data_gen)
  18. self.stdout.write(f"发电机组健康度: {score_gen}")
  19. self.stdout.write(f"权重分布: {weights_gen}")
  20. # 3. 测试机舱系统数据(可选)
  21. self.stdout.write("\n=== 测试机舱系统数据 ===")
  22. service.train_from_excel('nacelle')
  23. test_data_nac = {
  24. 'vibration_x': 2.3,
  25. 'vibration_y': 1.8,
  26. 'position': 102,
  27. 'temp': 28
  28. }
  29. score_nac, weights_nac = service.evaluate_health(test_data_nac)
  30. self.stdout.write(f"机舱系统健康度: {score_nac}")
  31. self.stdout.write(f"权重分布: {weights_nac}")