TcValue.cs 1.5 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859
  1. namespace AmrControl.ADS
  2. {
  3. /// <summary>
  4. /// 和EtherCAT的数据交互格式
  5. /// </summary>
  6. public class TcValue //<T> where T : struct
  7. {
  8. /// <summary>
  9. /// 变量名称,是TC程序内定义的名称
  10. /// </summary>
  11. public string name { get; set; }
  12. /// <summary>
  13. /// 数据类型
  14. /// </summary>
  15. public TcValueType valueType { get; set; }
  16. // public T Data { get; set; }
  17. public string Data { get; set; }
  18. /// <summary>
  19. /// 数据长度,一版用于String类型,其他类型都是固定的
  20. /// </summary>
  21. public int length { get; set; }
  22. }
  23. public enum TcValueType
  24. {
  25. /// <summary>
  26. /// Length = 1
  27. /// </summary>
  28. Byte,
  29. /// <summary>
  30. /// Length = 2
  31. /// </summary>
  32. Short,
  33. /// <summary>
  34. /// Length = 4
  35. /// </summary>
  36. Int,
  37. /// <summary>
  38. /// Length = 1
  39. /// </summary>
  40. Bool,
  41. /// <summary>
  42. /// Length = 4
  43. /// </summary>
  44. Float,
  45. /// <summary>
  46. /// Length = 8
  47. /// </summary>
  48. Double,
  49. /// <summary>
  50. /// 字节数组,长度要根据TC程序预留的空间来确定
  51. /// </summary>
  52. Array,
  53. /// <summary>
  54. /// ASCII字符串,长度要根据TC程序预留的空间来确定
  55. /// </summary>
  56. String
  57. }
  58. }