power.BASE.sa 958 B

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748
  1. import PowerWindowModel
  2. module Power_SA
  3. semantic adaptation power_sa
  4. for fmu power
  5. param init_armature_current = 0;
  6. param init_displacement = 0;
  7. param init_speed = 0;
  8. var stored_armature_current := init_armature_current;
  9. var stored_displacement := init_displacement;
  10. var stored_speed := init_speed;
  11. out rules {
  12. true -> {
  13. stored_armature_current := armature_current;
  14. } --> {
  15. armature_current := stored_armature_current;
  16. };
  17. true -> {
  18. stored_displacement := displacement;
  19. } --> {
  20. displacement := stored_displacement;
  21. };
  22. true -> {
  23. stored_speed := speed;
  24. } --> {
  25. speed := stored_speed; && adaptedFMU.getValues()
  26. };
  27. }
  28. /*
  29. Below is an alternative to the above out rules
  30. out rules {
  31. true -> {
  32. stored_armature_current := armature_current;
  33. stored_displacement := displacement;
  34. stored_speed := speed;
  35. } --> {
  36. speed := stored_speed;
  37. displacement := stored_displacement;
  38. armature_current := stored_armature_current;
  39. };
  40. }
  41. */