T1Control.cs 3.4 KB
using Asa;
using CodeLibrary;
using DeviceLibrary;
using OnlineStore.Common;
using OnlineStore.LoadCSVLibrary;
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Drawing.Imaging;
using System.Linq;
using System.Runtime.InteropServices;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
using static Asa.eyemLib;
using static AutoCountMachine.eyemlib;

namespace AutoCountMachine
{
    public partial class T1Control : UserControl
    {
        readonly Timer t1 = new Timer();
        DeviceConfig _Config;
        public DeviceConfig Config
        {
            get { return _Config; }
            set
            {
                _Config = value;
                ioControl1.Config = value;
                configControl1.Config = value;
                axisMoveControl1.LoadData(value);
            }
        }
        public T1Control()
        {
            InitializeComponent();
            RobotManage.LoadFinishEvent += RobotManage_LoadFinishEvent;
        }

        private void RobotManage_LoadFinishEvent(bool state, string msg)
        {
            if (state)
                RobotManage.t1Machine.TrayStringLocation += T1Machine_TrayStringLocation;
        }

        private void T1Machine_TrayStringLocation(object sender, Bitmap e)
        {
            Invoke((EventHandler<Bitmap>)delegate{
                pictureBox1.Image = e;
            }, sender, e);
        }

        private void XrayControl_Load(object sender, EventArgs e)
        {

        }

        private void btn_clamp_Click(object sender, EventArgs e)
        {
            RobotManage.electricGripper.Clamp();
        }

        private void btn_release_Click(object sender, EventArgs e)
        {
            RobotManage.electricGripper.Release();
        }

        private void btn_Reset_Click(object sender, EventArgs e)
        {
            if (RobotManage.t1Machine.runStatus != RunStatus.HomeReset)
            {
                RobotManage.t1Machine.BeginHomeReset();
            }
        }

        private void button1_Click(object sender, EventArgs e)
        {
            var (bitmap, distance, debugtxt) = RobotManage.t1Machine.GetStringCenterA();

            label_eyemMulFuncTool.Text = debugtxt + $"\ndistance:{distance}\nLocation:{(distance< RobotManage.t1Machine.Config.String_Offset_Range_Px?"OK":"NG")}";

            pictureBox1.Image = bitmap;
        }

        private void btn_Empty_Linerun_Click(object sender, EventArgs e)
        {
            RobotManage.t1Machine.ShelfInLine.LineRun();
        }

        private void btn_Empty_Linestop_Click(object sender, EventArgs e)
        {
            RobotManage.t1Machine.ShelfInLine.LineStop("n");
        }

        private void btn_Full_Linerun_Click(object sender, EventArgs e)
        {
            RobotManage.t1Machine.ShelfOutLine.LineRun();
        }

        private void btn_Full_Linestop_Click(object sender, EventArgs e)
        {
            RobotManage.t1Machine.ShelfOutLine.LineStop("n");
        }

        private void button1_Click_1(object sender, EventArgs e)
        {
            var (bitmap, distance, debugtxt) = RobotManage.t1Machine.GetStringCenterB();

            label_eyemMulFuncTool.Text = debugtxt + $"\ndistance:{distance}\nLocation:{(distance < RobotManage.t1Machine.Config.String_Offset_Range_Px ? "OK" : "NG")}";

            pictureBox1.Image = bitmap;
        }
    }
}