LightControlModel.cs 1.9 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647
  1. using PropertyGridLib.Attributes;
  2. using PropertyGridLib.Controls;
  3. using System.ComponentModel;
  4. using TeamAAS.Communication.LightSources;
  5. using TeamAAS.FlowEngine.FormulaData;
  6. using Plugins.Standard.Core;
  7. namespace Plugins.Standard.Models
  8. {
  9. [System.Serializable]
  10. public class LightControlModel : TeamAAS.FlowEditor.Plugins.BasePluginModel
  11. {
  12. [DisplayName("光源型号")]
  13. [Description("选择光源控制器型号,决定通讯协议 (KCS/TSD)")]
  14. [Category("I.光源配置")]
  15. [TypeConverter(typeof(LightModelConverter))]
  16. public LightModel LightModel { get; set; } = LightModel.KCS_KDC_12V60W_4T;
  17. [DisplayName("串口设备")]
  18. [Description("选择光源控制器连接的串口设备 (需在通讯管理中预先配置并连接, 结束符设为 None)")]
  19. [Category("I.光源配置")]
  20. [TypeConverter(typeof(SerialDeviceConverter))]
  21. public string SerialDeviceName { get; set; } = "";
  22. [DisplayName("控制模式")]
  23. [Description("设置单通道亮度 / 全开 / 全关")]
  24. [Category("II.控制参数")]
  25. public LightControlMode Mode { get; set; } = LightControlMode.SetBrightness;
  26. [DisplayName("CH口")]
  27. [Description("通道号,1-8 (根据光源型号决定有效范围)")]
  28. [Category("II.控制参数")]
  29. [FormulaEditor(typeof(PluginDataProvider))]
  30. public FormulaBound<int> Channel { get; set; } = new FormulaBound<int>(1);
  31. [DisplayName("亮度")]
  32. [Description("亮度值,0-999")]
  33. [Category("II.控制参数")]
  34. [FormulaEditor(typeof(PluginDataProvider))]
  35. public FormulaBound<int> Brightness { get; set; } = new FormulaBound<int>(120);
  36. [DisplayName("超时(ms)")]
  37. [Description("等待设备响应的超时时间")]
  38. [Category("III.高级")]
  39. public int TimeoutMs { get; set; } = 1000;
  40. }
  41. }