using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; /// /// /// namespace LogicalBlock { /// /// /// public class LogicalBlockBasic { /// /// 模型代码 或 工艺代码 /// public string ResourcesCode { get; set; } = ""; /// /// /// public Type_Resources ResourcesType { get; set; } = Type_Resources.Model; /// /// /// public string LogicalBlockCode { get; set; } = Guid.NewGuid().ToString().ToUpper(); /// /// /// public string LogicalBlockName { get; set; } = "空逻辑块"; /// /// /// public List List_LogicalBlock_Input { get; set; } = new List(); /// /// /// public List List_LogicalBlock_Output { get; set; } = new List(); /// /// /// public List List_LogicalBlock_Param { get; set; } = new List(); /// /// /// public List List_LogicalBlock_Const { get; set; } = new List(); /// /// /// public List List_LogicalBlock_Operation { get; set; } = new List(); /// /// /// public void GetConnectedSignalStr_Input() { foreach (LogicalBlock_Input logicalBlock_Input in List_LogicalBlock_Input) { var ConnectedSignal = logicalBlock_Input.ConnectedSignal; logicalBlock_Input.ConnectedSignalStr = string.Join(", ", ConnectedSignal.Select(k => k.SignalName).ToArray()); } } /// /// /// public void GetConnectedSignalStr_Output() { foreach (LogicalBlock_Output logicalBlock_Output in List_LogicalBlock_Output) { var ConnectedSignal = logicalBlock_Output.ConnectedSignal; logicalBlock_Output.ConnectedSignalStr = string.Join(", ", ConnectedSignal.Select(k => k.SignalName).ToArray()); } } } /// /// /// public class LogicalBlock_Output : LogicalBlock_Input { /// /// /// public string ScriptText { get; set; } } /// /// /// public class LogicalBlock_Input { /// /// /// public string VarName { get; set; } /// /// /// public Type_Signal VarType { get; set; } /// /// /// public string ConnectedSignalStr { get; set; } /// /// /// public List ConnectedSignal { get; set; } /// /// /// public string Explain { get; set; } } /// /// /// public class LogicalBlock_Param { /// /// /// public string VarName { get; set; } /// /// /// public Type_Sensor SensorType { get; set; } /// /// /// public string Explain { get; set; } /// /// /// public string ScriptText { get; set; } /// /// 姿态代码,或者是位置数据代码等,即参数的代码。 /// public string ParamCode { get; set; } } /// /// /// public class LogicalBlock_Const { /// /// /// public string VarName { get; set; } /// /// /// public Type_Signal VarType { get; set; } /// /// /// public string VarValue { get; set; } /// /// /// public string Explain { get; set; } } /// /// /// public class LogicalBlock_Operation { /// /// /// public string OperationName { get; set; } /// /// /// public Type_Operation ApplyType { get; set; } /// /// /// public string ApplyToCode { get; set; } /// /// /// public string ApplyToName { get; set; } /// /// /// public string Explain { get; set; } /// /// /// public string ScriptText { get; set; } /// /// /// public string ScriptText_Speed { get; set; } } /// /// /// public class LB_Device_Signal { /// /// /// public string SignalCode { get; set; } /// /// /// public string SignalName { get; set; } /// /// /// public string SignalRegion { get; set; } } /// /// 资源类型 /// public enum Type_Resources { /// /// 模型资源 /// Model = 1, /// /// 工艺资源 /// Craft = 2 } /// /// /// public class JsSymbolTable { /// /// /// public string SymbolName { get; set; } /// /// /// public string SymbolValue { get; set; } } /// /// /// public class ResourcesArithmeticUnit { /// /// /// public Dictionary DC_SignalCode_JsSymbolTable { get; set; } /// /// /// public Dictionary DC_ParamCode_LogicalBlockParam { get; set; } /// /// /// public Dictionary DC_ParamName_ParamValue { get; set; } } /// /// /// public enum Type_Signal { /// /// /// BOOL = 1, /// /// /// BYTE = 2, /// /// /// WORD = 3, /// /// /// DWORD = 4, /// /// /// INT = 5, /// /// /// DINT = 6, /// /// /// REAL = 7, /// /// /// LREAL = 8 } /// /// /// public enum Type_Sensor { /// /// /// BOOL = 1, /// /// /// BYTE = 2, /// /// /// WORD = 3, /// /// /// DWORD = 4, /// /// /// INT = 5, /// /// /// DINT = 6, /// /// /// REAL = 7, /// /// /// LREAL = 8, /// /// 关节值传感器(BOOL) /// 姿态传感器 /// 2021.11.26.LLX /// JointValueSensor = 9, /// /// 关节距离传感器(REAL) /// 2021.11.26.LLX /// JointDistanceSensor = 10, /// /// 关节运行中传感器(BOOL) /// 2021.12.07.LLX /// JointRuningSensor = 11, /// /// 位置传感器 /// 2021.11.26.LLX /// PositionSensor = 12 } /// /// /// public enum Type_Operation { /// /// BOOL /// MoveToAttitude = 1, /// /// BOOL /// JumpToAttitude = 2, /// /// REAL /// MoveToJoint = 3, /// /// BOOL /// CraftInvoke = 4, /// /// BOOL /// Visible = 5, /// /// BOOL /// Rotation = 6, /// /// BOOL /// Attach = 7 } /// /// /// public struct SensorParamChangedParam { /// /// 资源代码 /// public string ResourcesCode { get; set; } /// /// 姿态代码,或轴数据等代码 /// 传感器代码 /// public string ParamCode { get; set; } /// /// 传感器值发生变化 /// public string ChangedValue { get; set; } } }