|
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336 |
- using BPASmartClient.Business;
- using BPASmartClient.Device;
- using BPA.Helper;
- using BPASmartClient.MorkF.Model;
- using BPA.Helper;
-
- using System;
- using System.Collections.Generic;
- using System.Collections.ObjectModel;
- using System.Linq;
- using System.Text;
- using System.Threading.Tasks;
-
- namespace BPASmartClient.MorkF.ViewModel
- {
- internal class DebugViewModel : NotifyBase
- {
- public bool SimOrderEnable { get { return General_Config.SimOrderAllow; } set { General_Config.SimOrderAllow = value; OnPropertyChanged(); } }
- /// <summary>
- /// 设备数据
- /// </summary>
- public ObservableCollection<VariableMonitor> variableMonitors { get; set; }
-
- /// <summary>
- /// 设备ID
- /// </summary>
- public int DeviceId { get; set; }
-
- #region 设备控制
- public int FoodMenuID { get { return _foodMenuID; } set { _foodMenuID = value; OnPropertyChanged(); } }
- private int _foodMenuID;
- public BPARelayCommand PlcInite { get; set; }
- public BPARelayCommand FoodPlcInite { get; set; }
- public BPARelayCommand Plc1Reset { get; set; }
- public BPARelayCommand StartOrder { get; set; }
-
- public BPARelayCommand StopLocalOrder { get; set; }
- public BPARelayCommand ModeChange { get; set; }
-
-
- #endregion
-
- #region 菜品控制
- public string RealX { get { return _realX; } set { _realX = value; OnPropertyChanged(); } }
- private string _realX;
- public string RealY { get { return _realY; } set { _realY = value; OnPropertyChanged(); } }
- private string _realY;
-
- public int SettingX { get { return _settingX; } set { _settingX = value; OnPropertyChanged(); } }
- private int _settingX = 0;
- public int SettingY { get { return _settingY; } set { _settingY = value; OnPropertyChanged(); } }
- private int _settingY = 0;
-
- public int SettingNowX { get { return _settingNowX; } set { _settingNowX = value; OnPropertyChanged(); } }
- private int _settingNowX = 0;
- public int SettingNowY { get { return _settingNowY; } set { _settingNowY = value; OnPropertyChanged(); } }
- private int _settingNowY = 0;
-
- public int MoveSpeed { get { return _moveSpeed; } set { _moveSpeed = value; OnPropertyChanged(); } }
- private int _moveSpeed;
- public string SensingDistance_1 { get { return _sensingDistance_1; } set { _sensingDistance_1 = value; OnPropertyChanged(); } }
- private string _sensingDistance_1;
- public string SensingDistance_2 { get { return _sensingDistance_2; } set { _sensingDistance_2 = value; OnPropertyChanged(); } }
- private string _sensingDistance_2;
- public string SensingDistance_3 { get { return _sensingDistance_3; } set { _sensingDistance_3 = value; OnPropertyChanged(); } }
- private string _sensingDistance_3;
- public bool PawPositon1 { get { return _pawPositon1; } set { _pawPositon1 = value; OnPropertyChanged(); } }
- private bool _pawPositon1;
- public bool PawPositon2 { get { return _pawPositon2; } set { _pawPositon2 = value; OnPropertyChanged(); } }
- private bool _pawPositon2;
- public bool PawPositon3 { get { return _pawPositon3; } set { _pawPositon3 = value; OnPropertyChanged(); } }
- private bool _pawPositon3;
-
- public bool ArmRunUp { get { return _armRunUp; } set { _armRunUp = value; OnPropertyChanged(); } }
- private bool _armRunUp;
- public bool ArmRunDown { get { return _armRunDown; } set { _armRunDown = value; OnPropertyChanged(); } }
- private bool _armRunDown;
- public bool ArmRunLeft { get { return _armRunLeft; } set { _armRunLeft = value; OnPropertyChanged(); } }
- private bool _armRunLeft;
- public bool ArmRunRight { get { return _armRunRight; } set { _armRunRight = value; OnPropertyChanged(); } }
- private bool _armRunRight;
- public bool ArmRunEnable { get { return _ArmRunEnable; } set { _ArmRunEnable = value; OnPropertyChanged(); } }
- private bool _ArmRunEnable = true;
-
- public string ArmButtonName { get { return _ArmButtonName; } set { _ArmButtonName = value; OnPropertyChanged(); } }
- private string _ArmButtonName = "启动";
- public string ModeButten { get { return _ModeButten; } set { _ModeButten = value; OnPropertyChanged(); } }
- private string _ModeButten = "联网模式";
-
- public BPARelayCommand SetNowPosition { get; set; }//设置机械臂当前坐标
- public BPARelayCommand FoodLibInit { get; set; }//初始化
- public BPARelayCommand SurplusCheck { get; set; }//初始化
- public BPARelayCommand StartElectromagnetism { get; set; }//电磁阀启动
- public BPARelayCommand StopElectromagnetism { get; set; }
- public BPARelayCommand SetSpeed { get; set; }//速度设定
- public BPARelayCommand GetDistance_1 { get; set; }//感应测距1
- public BPARelayCommand GetDistance_2 { get; set; }//感应测距2
- public BPARelayCommand GetDistance_3 { get; set; }//感应测距3
- public BPARelayCommand PawTurnFront { get; set; }//夹爪正转
- public BPARelayCommand PawTurnBack { get; set; }//夹爪反转
- public BPARelayCommand SetArmPosition { get; set; }//机器臂位置设定
- public BPARelayCommand ArmRun { get; set; }//机械臂运动
- public BPARelayCommand PawToPoint1 { get; set; }//感应测距1
- public BPARelayCommand PawToPoint2 { get; set; }//感应测距2
- public BPARelayCommand PawToPoint3 { get; set; }//感应测距3
-
- #endregion
-
-
- #region 配料仓控制
- public List<string> PassageWays { get; set; } = new List<string>()
- {
- "通道1",
- "通道2",
- "通道3",
- "通道4",
- "通道5",
- "通道6",
- "通道7",
- "通道8",
- "通道9",
- "通道10",
- "通道11",
- "通道12",
- "通道13",
- "通道14",
- };
- public int PassagePosition { get { return _passagePosition; } set { _passagePosition = value; OnPropertyChanged(); } }
- private int _passagePosition;
- public int Weight { get { return _weight; } set { _weight = value; OnPropertyChanged(); } }
- private int _weight;
- public BPARelayCommand OutMaterials { get; set; }
- #endregion
-
- #region 炒锅1
- public BPARelayCommand Pot1SimOrder { get; set; }
- public BPARelayCommand AddOil { get; set; }
- public BPARelayCommand StartFire { get; set; }
- public BPARelayCommand StopFire { get; set; }
- public BPARelayCommand StartStir { get; set; }
- public BPARelayCommand StopStir { get; set; }
- public BPARelayCommand MagnetOn { get; set; }
- public BPARelayCommand MagnetOff { get; set; }
- public BPARelayCommand OutFood { get; set; }
- public BPARelayCommand StirArmGoOrigin { get; set; }
- public BPARelayCommand StirArmGoWork { get; set; }
- public BPARelayCommand HBOTGoWork { get; set; }
- public BPARelayCommand OutMeal { get; set; }
- public BPARelayCommand SetFire { get; set; }
- public BPARelayCommand SetFry { get; set; }
- public BPARelayCommand SetStir { get; set; }
- public List<int> lstFire { get; set; } = new List<int>() { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 };
- public List<int> lstFry { get; set; } = new List<int>() { 1, 2 };
- public List<int> lstStir { get; set; } = new List<int>() { 1, 2, 3 };
- public int FireGear { get { return _fireGear; } set { _fireGear = value; OnPropertyChanged(); } }
- private int _fireGear;
- public int FryGear { get { return _fryeGear; } set { _fryeGear = value; OnPropertyChanged(); } }
- private int _fryeGear;
- public int StirGear { get { return _stirGear; } set { _stirGear = value; OnPropertyChanged(); } }
- private int _stirGear;
- #region 模拟
- public int OilTime { get { return _oilTime; } set { _oilTime = value; OnPropertyChanged(); } }
- private int _oilTime = 10;
- public int OilFirGear { get { return _oilFirGear; } set { _oilFirGear = value; OnPropertyChanged(); } }
- private int _oilFirGear = 3;
- public int OilStrGear { get { return _oilStrGear; } set { _oilStrGear = value; OnPropertyChanged(); } }
- private int _oilStrGear = 1;
-
- public int Food1Time { get { return _food1Time; } set { _food1Time = value; OnPropertyChanged(); } }
- private int _food1Time = 30;
- public int Food1FirGear { get { return _food1FirGear; } set { _food1FirGear = value; OnPropertyChanged(); } }
- private int _food1FirGear = 6;
- public int Food1StrGear { get { return _food1StrGear; } set { _food1StrGear = value; OnPropertyChanged(); } }
- private int _food1StrGear = 2;
-
- public int Food2Time { get { return _food2Time; } set { _food2Time = value; OnPropertyChanged(); } }
- private int _food2Time = 30;
- public int Food2FirGear { get { return _food2FirGear; } set { _food2FirGear = value; OnPropertyChanged(); } }
- private int _food2FirGear = 6;
- public int Food2StrGear { get { return _food2StrGear; } set { _food2StrGear = value; OnPropertyChanged(); } }
- private int _food2StrGear = 2;
- #endregion
- #endregion
-
-
- #region 炒锅2
- public BPARelayCommand SecAddOil { get; set; }
- public BPARelayCommand SecTempTurnOff { get; set; }
- public BPARelayCommand SecOneBlock { get; set; }
- public BPARelayCommand SecTwoBlock { get; set; }
- public BPARelayCommand SecThreeBlock { get; set; }
- public BPARelayCommand SecOverTurnOff { get; set; }
- public BPARelayCommand SecOverOneBlock { get; set; }
- public BPARelayCommand SecOverTwoBlock { get; set; }
- public BPARelayCommand SecOverThreeBlock { get; set; }
- public BPARelayCommand SecOverGoOn { get; set; }
- public BPARelayCommand SecOverGoDown { get; set; }
- public BPARelayCommand SecAutoModel { get; set; }
- public BPARelayCommand SecManualModel { get; set; }
- #endregion
-
- public DebugViewModel()
- {
- #region 设备控制
- PlcInite = new BPARelayCommand(() => { ActionManage.GetInstance.Send("InitCommand"); });
- Plc1Reset = new BPARelayCommand(() => { ActionManage.GetInstance.Send("Plc1Reset"); });
- StartOrder = new BPARelayCommand(() => { ActionManage.GetInstance.Send(FoodMenuID, "StartOrder"); });
- StopLocalOrder = new BPARelayCommand(() => { ActionManage.GetInstance.Send("StopLocalOrder"); });
- ModeChange = new BPARelayCommand(() =>
- {
- ActionManage.GetInstance.Send("ModeChange");
- if (ModeButten == "联网模式")
- {
- ModeButten = "本地模式";
- }
- else
- {
- ModeButten = "联网模式";
- }
- });
- #endregion
-
- #region 菜品控制
-
- FoodLibInit = new BPARelayCommand(() => { ActionManage.GetInstance.Send("FoodLibInit"); });//菜品库初始化
- SurplusCheck = new BPARelayCommand(() => { ActionManage.GetInstance.Send("SurplusCheck"); });//菜品库初始化
- StartElectromagnetism = new BPARelayCommand(() => { ActionManage.GetInstance.Send(new List<bool> { false }, "Electromagnetism"); });//电磁阀启动
- StopElectromagnetism = new BPARelayCommand(() => { ActionManage.GetInstance.Send(new List<bool> { true }, "Electromagnetism"); });//电磁阀关闭
- SetSpeed = new BPARelayCommand(() =>
- {
- ActionManage.GetInstance.Send(new List<int> { MoveSpeed }, "SetSpeed");
- });//设定速度
- PawToPoint1 = new BPARelayCommand(() => { ActionManage.GetInstance.Send("PawToPoint1"); });//爪子去1号位
- PawToPoint2 = new BPARelayCommand(() => { ActionManage.GetInstance.Send("PawToPoint2"); });//爪子去2号位
- PawToPoint3 = new BPARelayCommand(() => { ActionManage.GetInstance.Send("PawToPoint3"); });//爪子去3号位
- GetDistance_1 = new BPARelayCommand(() => { ActionManage.GetInstance.Send("GetDistance_1"); });//感应距离1
- GetDistance_2 = new BPARelayCommand(() => { ActionManage.GetInstance.Send("GetDistance_2"); });//感应距离2
- GetDistance_3 = new BPARelayCommand(() => { ActionManage.GetInstance.Send("GetDistance_3"); });//感应距离3
- PawTurnFront = new BPARelayCommand(() => { ActionManage.GetInstance.Send("PawTurnFront"); });//夹爪正转
- PawTurnBack = new BPARelayCommand(() => { ActionManage.GetInstance.Send("PawTurnBack"); });//夹爪反转
- SetArmPosition = new BPARelayCommand(() => { ActionManage.GetInstance.Send(new List<int> { SettingX, SettingY }, "SetArmPosition"); });//设定机械臂位置
- SetNowPosition = new BPARelayCommand(() => { ActionManage.GetInstance.Send(new List<int> { SettingX, SettingY }, "SetNowPosition"); });//设定机械臂当前位置
- ArmRun = new BPARelayCommand(() =>
- {
- //判断是否都未点击
- if (!ArmRunDown && !ArmRunUp && !ArmRunLeft && !ArmRunRight)
- {
- return;
- }
- ArmRunEnable = !ArmRunEnable;
- if (ArmRunEnable)
- {
- ArmButtonName = "启动";
- }
- else
- {
- ArmButtonName = "停止";
- }
- if (ArmRunUp)
- {
- ActionManage.GetInstance.Send(!ArmRunEnable, "ArmRunUp");
- }
- else if (ArmRunDown)
- {
- ActionManage.GetInstance.Send(!ArmRunEnable, "ArmRunDown");
- }
- else if (ArmRunLeft)
- {
- ActionManage.GetInstance.Send(!ArmRunEnable, "ArmRunLeft");
- }
- else if (ArmRunRight)
- {
- ActionManage.GetInstance.Send(!ArmRunEnable, "ArmRunRight");
- }
- });//设定机械臂位置
- #endregion
-
- #region 配料仓控制
- OutMaterials = new BPARelayCommand(() => { ActionManage.GetInstance.Send(new List<int> { PassagePosition + 1, Weight }, "OutMaterials"); });
- #endregion
-
- #region 炒锅1
- Pot1SimOrder = new BPARelayCommand(() => { ActionManage.GetInstance.Send(new List<int> { OilTime, OilFirGear, OilStrGear, Food1Time, Food1FirGear, Food1StrGear, Food2Time, Food2FirGear, Food2StrGear }, "模拟小炒锅1订单"); });//模拟订单
- AddOil = new BPARelayCommand(() => { ActionManage.GetInstance.Send(1, "AddOil"); });//加油
- StartFire = new BPARelayCommand(() => { ActionManage.GetInstance.Send("StartFire"); });//加热启动
- StopFire = new BPARelayCommand(() => { ActionManage.GetInstance.Send("StopFire"); });//加热停止
- StartStir = new BPARelayCommand(() => { ActionManage.GetInstance.Send("StartStir"); });//搅拌启动
- StopStir = new BPARelayCommand(() => { ActionManage.GetInstance.Send("StopStir"); });//搅拌停止
- MagnetOn = new BPARelayCommand(() => { ActionManage.GetInstance.Send("MagnetOn"); });//磁吸开启
- MagnetOff = new BPARelayCommand(() => { ActionManage.GetInstance.Send("MagnetOff"); });//磁吸开启
- OutFood = new BPARelayCommand(() => { ActionManage.GetInstance.Send("OutFood"); });//倒菜启动
- StirArmGoOrigin = new BPARelayCommand(() => { ActionManage.GetInstance.Send("StirArmGoOrigin"); });//搅拌臂去原点位
- StirArmGoWork = new BPARelayCommand(() => { ActionManage.GetInstance.Send("StirArmGoWork"); });//搅拌臂去炒制位
- HBOTGoWork = new BPARelayCommand(() => { ActionManage.GetInstance.Send("HBOTGoWork"); });//放盒子到位
- OutMeal = new BPARelayCommand(() => { ActionManage.GetInstance.Send("OutMeal"); });//出餐启动
- SetFire = new BPARelayCommand(() => { ActionManage.GetInstance.Send(new List<int> { FireGear }, "SetFire"); });//加热挡位设定
- SetStir = new BPARelayCommand(() => { ActionManage.GetInstance.Send(new List<int> { StirGear }, "SetStir"); });//搅拌挡位设定
- SetFry = new BPARelayCommand(() => { ActionManage.GetInstance.Send(new List<int> { FryGear }, "SetFry"); });//炒锅选择
- #endregion
-
- #region 炒锅2
- SecAddOil = new BPARelayCommand(() => { ActionManage.GetInstance.Send(2, "AddOil"); });
- SecTempTurnOff = new BPARelayCommand(() => { ActionManage.GetInstance.Send(2, "TakeOff"); });
- SecOneBlock = new BPARelayCommand(() => { ActionManage.GetInstance.Send(2, "OneBlock"); });
- SecTwoBlock = new BPARelayCommand(() => { ActionManage.GetInstance.Send(2, "TwoBlock"); });
- SecThreeBlock = new BPARelayCommand(() => { ActionManage.GetInstance.Send(2, "ThreeBlock"); });
- SecOverTurnOff = new BPARelayCommand(() => { ActionManage.GetInstance.Send(2, "OverTurnOff"); });
- SecOverOneBlock = new BPARelayCommand(() => { ActionManage.GetInstance.Send(2, "OverOneBlock"); });
- SecOverTwoBlock = new BPARelayCommand(() => { ActionManage.GetInstance.Send(2, "OverTwoBlock"); });
- SecOverThreeBlock = new BPARelayCommand(() => { ActionManage.GetInstance.Send(2, "OverThreeBlock"); });
- SecOverGoOn = new BPARelayCommand(() => { ActionManage.GetInstance.Send(2, "OverGoOn"); });
- SecOverGoDown = new BPARelayCommand(() => { ActionManage.GetInstance.Send(2, "OverGoDown"); });
- SecAutoModel = new BPARelayCommand(() => { ActionManage.GetInstance.Send(2, "AutoModel"); });
- SecManualModel = new BPARelayCommand(() => { ActionManage.GetInstance.Send(2, "ManualModel"); });
- #endregion
-
- Plugin.GetInstance?.GetPlugin<DeviceMgr>()?.GetDevices().ForEach(device =>
- {
- if (device.Name == "MorkT") DeviceId = device.DeviceId
- ;
- });
-
- TaskManage.GetInstance.StartLong(new Action(() =>
- {
- //variableMonitors = Plugin.GetInstance?.GetPlugin<DeviceMgr>()?.GetDevices()?.FirstOrDefault(p => p.DeviceId == DeviceId)?.variableMonitors;
-
- if (variableMonitors != null)
- {
- RealX = variableMonitors.FirstOrDefault(p => p.Notes == "机械手臂X").CurrentValue;
- RealY = variableMonitors.FirstOrDefault(p => p.Notes == "机械手臂Y").CurrentValue;
- }
- }), "获取小炒数据");
- }
-
- }
- }
|