ShakerConfigModel.cs 2.6 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091
  1. using IModel;
  2. using Microsoft.VisualBasic;
  3. using Shaker.Model;
  4. using System;
  5. using System.Collections.Generic;
  6. using System.Linq;
  7. using System.Text;
  8. using System.Threading.Tasks;
  9. namespace Shaker.Models
  10. {
  11. public sealed class ShakerConfigModel:BaseModel
  12. {
  13. /// <summary>
  14. /// 水平缸数
  15. /// </summary>
  16. public byte HorizontalCount = 4;
  17. /// <summary>
  18. /// 垂直缸数
  19. /// </summary>
  20. public byte VerticalCount = 4;
  21. /// <summary>
  22. /// 平衡缸数
  23. /// </summary>
  24. public byte BalancingCount = 4;
  25. /// <summary>
  26. /// 压差通道数
  27. /// </summary>
  28. public byte DifferentialPressureCount = 8;
  29. /// <summary>
  30. /// 压力通道数
  31. /// </summary>
  32. public byte PressureCount = 4;
  33. /// <summary>
  34. /// 外部输入通道数
  35. /// </summary>
  36. public byte OutSignalCount = 3;
  37. /// <summary>
  38. /// 重力加速度(m/s^2)
  39. /// </summary>
  40. public double G = 9.80665;
  41. /// <summary>
  42. /// 位移通道数
  43. /// </summary>
  44. public byte DisplacementCount = 8;
  45. /// <summary>
  46. /// 加速度通道数
  47. /// </summary>
  48. public byte AccelerationCount = 3;
  49. /// <summary>
  50. /// 最大模拟输入通道数
  51. /// </summary>
  52. public byte MaxAICount = 32;
  53. /// <summary>
  54. /// 最大模拟输出通道数
  55. /// </summary>
  56. public byte MaxAOCount = 16;
  57. /// <summary>
  58. /// 水平缸通道数
  59. /// </summary>
  60. public byte MaxHorizontalCount = 4;
  61. /// <summary>
  62. /// 垂直缸通道数
  63. /// </summary>
  64. public byte MaxVerticalCount = 4;
  65. /// <summary>
  66. /// 平衡缸通道数
  67. /// </summary>
  68. public byte MaxBalancingCount = 4;
  69. /// <summary>
  70. /// 采样率
  71. /// </summary>
  72. public ushort SampleRate = 2000;
  73. /// <summary>
  74. /// Fpga主时钟
  75. /// </summary>
  76. public uint FpgaClock = 40_000_000;
  77. public uint MaxRiseCount = 6000;
  78. public uint MaxDropCount = 6000;
  79. public uint MaxZeroChangedCount = 6000;
  80. public uint MaxSignalStopCount = 6000;
  81. public AIChannel MinAIChannel => AIChannel.Channel0;
  82. public AIChannel MaxAIChannel => MinAIChannel + MaxAICount;
  83. public AOChannel MinAOChannel => AOChannel.Channel0;
  84. public AOChannel MaxAOChannel => MinAOChannel + MaxAOCount;
  85. public override object Clone()
  86. {
  87. return this.CloneBase();
  88. }
  89. }
  90. }