681 lines
28 KiB
C#
681 lines
28 KiB
C#
using System;
|
|
using System.Linq;
|
|
using System.Collections.ObjectModel;
|
|
using System.Collections.Generic;
|
|
using System.ComponentModel;
|
|
using System.Data;
|
|
using System.Drawing;
|
|
using System.IO;
|
|
using System.Text;
|
|
using System.Threading;
|
|
using System.Windows.Forms;
|
|
|
|
using SmartX;
|
|
using INT99DC_ImageDll;
|
|
using INT99DC_7C.DialogForms;
|
|
|
|
namespace INT99DC_7C.Forms
|
|
{
|
|
public partial class FormMotorSetting : Form
|
|
{
|
|
#region Field
|
|
private FormMain m_ParentForm;
|
|
#endregion
|
|
|
|
#region Constructor
|
|
public FormMotorSetting(FormMain parent)
|
|
{
|
|
InitializeComponent();
|
|
|
|
this.ParentForm = parent;
|
|
}
|
|
#endregion
|
|
|
|
#region Property
|
|
public FormMain ParentForm
|
|
{
|
|
get { return this.m_ParentForm; }
|
|
private set { this.m_ParentForm = value; }
|
|
}
|
|
#endregion
|
|
|
|
#region Method
|
|
private void InitializeDesign()
|
|
{
|
|
ImageDll images = new ImageDll();
|
|
|
|
if (this.ParentForm.SystemConfig.Language == DataStore.LanguageID.Korean)
|
|
{
|
|
|
|
}
|
|
else if (this.ParentForm.SystemConfig.Language == DataStore.LanguageID.English)
|
|
{
|
|
this.labelTitle.Text = "Motor settings";
|
|
|
|
this.buttonBack.DisableImage = new Bitmap(images.GetImage(ImageDll.ButtonImages.engBackDisable));
|
|
this.buttonBack.DownImage = new Bitmap(images.GetImage(ImageDll.ButtonImages.engBackDown));
|
|
this.buttonBack.UpImage = new Bitmap(images.GetImage(ImageDll.ButtonImages.engBackUp));
|
|
|
|
this.labelTitleOriginOffsets.Text = "Origin offsets";
|
|
this.labelTitleOriginSpeed.Text = "Origin speed";
|
|
this.labelTitleSpeed1.Text = "Speed1";
|
|
this.labelTitlePosition0.Text = "Position0";
|
|
this.labelTitlePosition1.Text = "Position1";
|
|
this.labelTitlePosition2.Text = "Position2";
|
|
this.labelTitleMessage1.Text = "After setting up the servo driver,";
|
|
this.labelTitleMessage2.Text = "press EEPROM to save.";
|
|
this.buttonOrigin.Text = "Origin";
|
|
this.buttonAlarmReset.Text = "Alarm Reset";
|
|
this.buttonPosition0.Text = "Position 0";
|
|
this.buttonPosition1.Text = "Position 1";
|
|
this.buttonPosition2.Text = "Position 2";
|
|
}
|
|
else if (this.ParentForm.SystemConfig.Language == DataStore.LanguageID.Chinese)
|
|
{
|
|
this.labelTitle.Text = "设置电机";
|
|
|
|
this.buttonBack.DisableImage = new Bitmap(images.GetImage(ImageDll.ButtonImages.chnBackDisable));
|
|
this.buttonBack.DownImage = new Bitmap(images.GetImage(ImageDll.ButtonImages.chnBackDown));
|
|
this.buttonBack.UpImage = new Bitmap(images.GetImage(ImageDll.ButtonImages.chnBackUp));
|
|
|
|
this.buttonOpen.Text = "开";
|
|
this.buttonClose.Text = "关闭";
|
|
this.buttonParameterRead.Text = "全部读取";
|
|
this.buttonEEPROM.Text = "全部保存";
|
|
|
|
this.labelTitleID.Text = "身份证";
|
|
this.labelTitleOriginOffsets.Text = "原点复位";
|
|
this.labelTitleOriginSpeed.Text = "原点速度";
|
|
this.labelTitleSpeed1.Text = "速度1";
|
|
this.labelTitlePosition0.Text = "位置0";
|
|
this.labelTitlePosition1.Text = "位置1";
|
|
this.labelTitlePosition2.Text = "位置2";
|
|
this.labelTitleMessage1.Text = "设置后请务必点击[全部保存]";
|
|
this.labelTitleMessage2.Text = "";
|
|
this.buttonOrigin.Text = "原点";
|
|
this.buttonAlarmReset.Text = "警报复位";
|
|
this.buttonStep.Text = "步";
|
|
this.buttonPosition0.Text = "位置 0";
|
|
this.buttonPosition1.Text = "位置 1";
|
|
this.buttonPosition2.Text = "位置 2";
|
|
}
|
|
else if (this.ParentForm.SystemConfig.Language == DataStore.LanguageID.Czech)
|
|
{
|
|
this.labelTitle.Text = "Nastavení motoru";
|
|
|
|
this.labelTitleID.Text = "ID";
|
|
this.labelTitleOriginOffsets.Text = "Ofset(Původ)";
|
|
this.labelTitleOriginSpeed.Text = "Rychlost(Původ)";
|
|
this.labelTitleSpeed1.Text = "Rychlost 1";
|
|
this.labelTitlePosition0.Text = this.buttonPosition0.Text = "Pozice 0";
|
|
this.labelTitlePosition1.Text = this.buttonPosition1.Text = "Pozice 1";
|
|
this.labelTitlePosition2.Text = this.buttonPosition2.Text = "Pozice 2";
|
|
this.labelTitleMessage1.Text = "Po nastavení servozesilovače";
|
|
this.labelTitleMessage2.Text = "stiskněte EEPROM pro uložení.";
|
|
this.buttonOrigin.Text = "Původ";
|
|
this.buttonAlarmReset.Text = "Reset alarmu";
|
|
this.buttonStep.Text = "Krok";
|
|
this.buttonOpen.Text = "Otevřít";
|
|
this.buttonClose.Text = "Zavřít";
|
|
this.buttonParameterRead.Text = "Přečíst vše";
|
|
|
|
this.buttonBack.DisableImage = new Bitmap(images.GetImage(ImageDll.ButtonImages.czeBackDisable));
|
|
this.buttonBack.DownImage = new Bitmap(images.GetImage(ImageDll.ButtonImages.czeBackDown));
|
|
this.buttonBack.UpImage = new Bitmap(images.GetImage(ImageDll.ButtonImages.czeBackUp));
|
|
}
|
|
else if (this.ParentForm.SystemConfig.Language == DataStore.LanguageID.German)
|
|
{
|
|
this.labelTitle.Text = "Motoreinstellung";
|
|
|
|
this.labelTitleID.Text = "ID";
|
|
this.labelTitleOriginOffsets.Text = "Ursprungsoffset";
|
|
this.labelTitleOriginSpeed.Text = "Ursprungsgeschwindigkeit";
|
|
this.labelTitleSpeed1.Text = "Geschwindigkeit 1";
|
|
this.labelTitleMessage1.Text = "Stellen Sie nach dem Einstellen des Servoantriebs";
|
|
this.labelTitleMessage2.Text = "sicher, dass Sie es durch Drücken von [EEPROM]";
|
|
|
|
this.labelTitlePosition0.Text = this.buttonPosition0.Text = "Position 0";
|
|
this.labelTitlePosition1.Text = this.buttonPosition1.Text = "Position 1";
|
|
this.labelTitlePosition2.Text = this.buttonPosition2.Text = "Position 2";
|
|
|
|
this.buttonOrigin.Text = "Ursprung";
|
|
this.buttonParameterRead.Text = "Alles lesen";
|
|
|
|
this.buttonOpen.Text = "Öffnen";
|
|
this.buttonClose.Text = "Schließen";
|
|
this.buttonStep.Text = "Schritt";
|
|
|
|
this.buttonBack.DisableImage = new Bitmap(images.GetImage(ImageDll.ButtonImages.gerBackDisable));
|
|
this.buttonBack.DownImage = new Bitmap(images.GetImage(ImageDll.ButtonImages.gerBackDown));
|
|
this.buttonBack.UpImage = new Bitmap(images.GetImage(ImageDll.ButtonImages.gerBackUp));
|
|
}
|
|
else
|
|
{
|
|
|
|
}
|
|
}
|
|
private void InitializeControl()
|
|
{
|
|
}
|
|
private void DefaultSetting()
|
|
{
|
|
|
|
}
|
|
|
|
private void ModbusStatusDisplay(bool isOpen)
|
|
{
|
|
if (isOpen == true)
|
|
{
|
|
if (this.ParentForm.SystemConfig.Language == DataStore.LanguageID.Czech)
|
|
this.labelModusStatus.Text = "Otevřít";
|
|
else if (this.ParentForm.SystemConfig.Language == DataStore.LanguageID.German)
|
|
this.labelModusStatus.Text = "Öffnen";
|
|
else if (this.ParentForm.SystemConfig.Language == DataStore.LanguageID.Chinese)
|
|
this.labelModusStatus.Text = "开";
|
|
else
|
|
this.labelModusStatus.Text = "OPEN";
|
|
this.labelModusStatus.BackColor = Color.DarkGreen;
|
|
this.labelModusStatus.ForeColor = Color.White;
|
|
}
|
|
else
|
|
{
|
|
if (this.ParentForm.SystemConfig.Language == DataStore.LanguageID.Czech)
|
|
this.labelModusStatus.Text = "Zavřít";
|
|
else if (this.ParentForm.SystemConfig.Language == DataStore.LanguageID.German)
|
|
this.labelModusStatus.Text = "Schließen";
|
|
else if (this.ParentForm.SystemConfig.Language == DataStore.LanguageID.Chinese)
|
|
this.labelModusStatus.Text = "关闭";
|
|
else
|
|
this.labelModusStatus.Text = "CLOSE";
|
|
this.labelModusStatus.BackColor = Color.Crimson;
|
|
this.labelModusStatus.ForeColor = Color.White;
|
|
}
|
|
}
|
|
public void ModbusOpen()
|
|
{
|
|
if (this.ParentForm.smartModbus.IsOpen == true)
|
|
this.ParentForm.smartModbus.PortClose();
|
|
|
|
try
|
|
{
|
|
this.ParentForm.smartModbus.PortOpen();
|
|
Thread.Sleep(200);
|
|
this.ModbusStatusDisplay(this.ParentForm.smartModbus.IsOpen);
|
|
}
|
|
catch
|
|
{
|
|
}
|
|
|
|
}
|
|
public void ModbusClose()
|
|
{
|
|
this.ParentForm.smartModbus.PortClose();
|
|
this.ModbusStatusDisplay(this.ParentForm.smartModbus.IsOpen);
|
|
}
|
|
|
|
private string ServoMotorRead1(int slaveAddress, int parameterAddress)
|
|
{
|
|
int value = 0;
|
|
byte[] readData = new byte[2];
|
|
|
|
this.ParentForm.smartModbus.SlaveAddress = slaveAddress;
|
|
this.ParentForm.smartModbus.ReadHoldingRegister(parameterAddress, 1, ref readData);
|
|
|
|
Array.Reverse(readData);
|
|
value = BitConverter.ToInt16(readData, 0);
|
|
|
|
return string.Format("{0}", value);
|
|
}
|
|
private string ServoMotorRead2(int slaveAddress, int parameterAddress)
|
|
{
|
|
int value = 0;
|
|
byte[] readData = new byte[4];
|
|
|
|
this.ParentForm.smartModbus.SlaveAddress = slaveAddress;
|
|
this.ParentForm.smartModbus.ReadHoldingRegister(parameterAddress, 2, ref readData);
|
|
|
|
byte[] readData1 = new byte[4];
|
|
readData1[0] = readData[1];
|
|
readData1[1] = readData[0];
|
|
readData1[2] = readData[3];
|
|
readData1[3] = readData[2];
|
|
|
|
value = BitConverter.ToInt32(readData1, 0);
|
|
|
|
return string.Format("{0}", value);
|
|
}
|
|
private void ServoMotorWrite1(int slaveAddress, int parameterAddress, int value, SmartLabel label)
|
|
{
|
|
this.ParentForm.smartModbus.SlaveAddress = slaveAddress;
|
|
if (this.ParentForm.smartModbus.WriteSingleRegister(parameterAddress, value) == SmartX.SmartModbus.EXCEPTIONCODE.SUCCESS)
|
|
{
|
|
//MessageBox.Show("쓰기완료");
|
|
}
|
|
label.Text = this.ServoMotorRead1(slaveAddress, parameterAddress);
|
|
}
|
|
private void ServoMotorWrite2(int slaveAddress, int parameterAddress, int value, SmartLabel label)
|
|
{
|
|
byte[] data = BitConverter.GetBytes(value);
|
|
|
|
byte[] readData1 = new byte[4];
|
|
readData1[0] = data[1];
|
|
readData1[1] = data[0];
|
|
readData1[2] = data[3];
|
|
readData1[3] = data[2];
|
|
|
|
this.ParentForm.smartModbus.SlaveAddress = slaveAddress;
|
|
if (this.ParentForm.smartModbus.WriteMultipleRegister(parameterAddress, 2, readData1) == SmartX.SmartModbus.EXCEPTIONCODE.SUCCESS)
|
|
{
|
|
//MessageBox.Show("쓰기완료");
|
|
}
|
|
label.Text = this.ServoMotorRead2(slaveAddress, parameterAddress);
|
|
}
|
|
private void ServoMotorWrite(int slaveAddress, int parameterAddress, int value)
|
|
{
|
|
this.ParentForm.smartModbus.SlaveAddress = slaveAddress;
|
|
if (this.ParentForm.smartModbus.WriteSingleRegister(parameterAddress, value) == SmartX.SmartModbus.EXCEPTIONCODE.SUCCESS)
|
|
{
|
|
//MessageBox.Show("쓰기완료");
|
|
}
|
|
}
|
|
|
|
public void UpdateDisplayAlarmView(AlarmList alarm)
|
|
{
|
|
if (alarm.IsServoOff == true || alarm.IsServoAlarm == true || alarm.IsServoTorqueAlarmTorque == true)
|
|
{
|
|
this.pictureBoxAlarm.Visible = true;
|
|
this.listBoxAlarmMessage.Visible = true;
|
|
}
|
|
else
|
|
{
|
|
this.pictureBoxAlarm.Visible = false;
|
|
this.listBoxAlarmMessage.Visible = false;
|
|
}
|
|
|
|
this.listBoxAlarmMessage.Items.Clear();
|
|
|
|
if (alarm.IsServoOff == true)
|
|
this.listBoxAlarmMessage.Items.Add("Servo OFF");
|
|
if (alarm.IsServoAlarm == true)
|
|
this.listBoxAlarmMessage.Items.Add("Servo Alarm");
|
|
if (alarm.IsServoTorqueAlarmTorque == true)
|
|
this.listBoxAlarmMessage.Items.Add("Servo Torque Alarm");
|
|
}
|
|
|
|
public void DisplayRefresh()
|
|
{
|
|
this.labelServoLimit.Text = this.ParentForm.SystemConfig.ServoLimit.ToString();
|
|
|
|
if (this.ParentForm.SystemConfig.CurrentUser.Group == DataStore.UserGroup.Developer)
|
|
{
|
|
this.labelServoLimit.Visible = this.labelTitleServoLimit.Visible = true;
|
|
}
|
|
else
|
|
this.labelServoLimit.Visible = this.labelTitleServoLimit.Visible = false;
|
|
|
|
this.ModbusClose();
|
|
|
|
this.labelOrigin.Text = "0";
|
|
this.labelSpeed0.Text = "0";
|
|
this.labelSpeed1.Text = "0";
|
|
this.labelPosition0.Text = "0";
|
|
this.labelPosition1.Text = "0";
|
|
this.labelPosition2.Text = "0";
|
|
|
|
this.ParentForm.SystemConfig.CurrentForm = DataStore.FormStore.FormMotorSetting;
|
|
this.ParentForm.TransferData(CommunicationCommand.ModeNormal, CommunicationID.MainBoard);
|
|
}
|
|
#endregion
|
|
|
|
#region Override Member
|
|
protected override void OnLoad(EventArgs e)
|
|
{
|
|
base.OnLoad(e);
|
|
|
|
this.InitializeDesign();
|
|
this.InitializeControl();
|
|
this.DefaultSetting();
|
|
}
|
|
#endregion
|
|
|
|
#region Event Handler
|
|
private void buttonBack_Click(object sender, EventArgs e)
|
|
{
|
|
this.ParentForm.ChildFormMenu.DisplayRefresh();
|
|
((FormMain)(Owner)).smartForm.Show((int)DataStore.FormStore.FormMenu);
|
|
}
|
|
private void buttonOpen_Click(object sender, EventArgs e)
|
|
{
|
|
this.ModbusOpen();
|
|
}
|
|
private void buttonClose_Click(object sender, EventArgs e)
|
|
{
|
|
this.ModbusClose();
|
|
}
|
|
private void buttonParameterRead_Click(object sender, EventArgs e)
|
|
{
|
|
if (this.ParentForm.smartModbus.IsOpen == false)
|
|
{
|
|
// 통신 연결상태를 확인하세요
|
|
DialogFormMessage myMsg = new DialogFormMessage(23, this.ParentForm.SystemConfig.Language);
|
|
myMsg.ShowDialog();
|
|
return;
|
|
}
|
|
|
|
this.ParentForm.smartModbus.ReadTimeout = 500;
|
|
|
|
SmartSplash splash = new SmartSplash();
|
|
splash.CenterPosition = true;
|
|
splash.AnimationInterval = 200;
|
|
splash.LoadingImagePathname = "SmartLoading4";
|
|
splash.Start();
|
|
|
|
this.Enabled = false;
|
|
|
|
// ServoMotor 1
|
|
this.labelOrigin.Text = this.ServoMotorRead2(1, ServoMotorParameterAddress.CMD17);
|
|
this.labelSpeed0.Text = this.ServoMotorRead1(1, ServoMotorParameterAddress.Speed0);
|
|
this.labelSpeed1.Text = this.ServoMotorRead1(1, ServoMotorParameterAddress.Speed1);
|
|
this.labelPosition0.Text = this.ServoMotorRead2(1, ServoMotorParameterAddress.CMD0);
|
|
this.labelPosition1.Text = this.ServoMotorRead2(1, ServoMotorParameterAddress.CMD1);
|
|
this.labelPosition2.Text = this.ServoMotorRead2(1, ServoMotorParameterAddress.CMD2);
|
|
|
|
splash.Finish();
|
|
|
|
this.Enabled = true;
|
|
}
|
|
private void buttonOrigin_Click(object sender, EventArgs e)
|
|
{
|
|
this.ParentForm.TransferData(CommunicationCommand.MotorOrigin, CommunicationID.MainBoard);
|
|
|
|
// Part 11
|
|
if (this.ParentForm.SystemConfig.IsPart11 == true)
|
|
this.ParentForm.SetTrackingHistoryData(DataStore.TrackingOperation.MotorOrigin, "");
|
|
}
|
|
private void buttonPosition0_Click(object sender, EventArgs e)
|
|
{
|
|
this.ParentForm.TransferData(CommunicationCommand.MotorPosition0, CommunicationID.MainBoard);
|
|
|
|
// Part 11
|
|
if (this.ParentForm.SystemConfig.IsPart11 == true)
|
|
this.ParentForm.SetTrackingHistoryData(DataStore.TrackingOperation.MotorPosition0, "");
|
|
}
|
|
private void buttonPosition1_Click(object sender, EventArgs e)
|
|
{
|
|
this.ParentForm.TransferData(CommunicationCommand.MotorPosition1, CommunicationID.MainBoard);
|
|
|
|
// Part 11
|
|
if (this.ParentForm.SystemConfig.IsPart11 == true)
|
|
this.ParentForm.SetTrackingHistoryData(DataStore.TrackingOperation.MotorPosition1, "");
|
|
}
|
|
private void buttonPosition2_Click(object sender, EventArgs e)
|
|
{
|
|
this.ParentForm.TransferData(CommunicationCommand.MotorPosition2, CommunicationID.MainBoard);
|
|
|
|
// Part 11
|
|
if (this.ParentForm.SystemConfig.IsPart11 == true)
|
|
this.ParentForm.SetTrackingHistoryData(DataStore.TrackingOperation.MotorPosition2, "");
|
|
}
|
|
private void buttonStep_Click(object sender, EventArgs e)
|
|
{
|
|
this.ParentForm.TransferData(CommunicationCommand.MotorStep, CommunicationID.MainBoard);
|
|
|
|
// Part 11
|
|
if (this.ParentForm.SystemConfig.IsPart11 == true)
|
|
this.ParentForm.SetTrackingHistoryData(DataStore.TrackingOperation.MotorStep, "");
|
|
}
|
|
private void buttonAlarmReset_Click(object sender, EventArgs e)
|
|
{
|
|
this.ParentForm.TransferData(CommunicationCommand.MotorAlarmReset, CommunicationID.MainBoard);
|
|
|
|
// Part 11
|
|
if (this.ParentForm.SystemConfig.IsPart11 == true)
|
|
this.ParentForm.SetTrackingHistoryData(DataStore.TrackingOperation.MotorAlarmReset, "");
|
|
}
|
|
private void buttonEEPROM_Click(object sender, EventArgs e)
|
|
{
|
|
if (this.ParentForm.smartModbus.IsOpen == false)
|
|
{
|
|
// 통신 연결상태를 확인하세요
|
|
DialogFormMessage myMsg = new DialogFormMessage(23, this.ParentForm.SystemConfig.Language);
|
|
myMsg.ShowDialog();
|
|
return;
|
|
}
|
|
|
|
this.ServoMotorWrite(1, ServoMotorParameterAddress.SaveAllParameters, ServoMotorParameterAddress.EEPROM);
|
|
}
|
|
|
|
private void labelMotorParameterSetup_Click(object sender, EventArgs e)
|
|
{
|
|
string before = "", after = "";
|
|
SmartLabel label = sender as SmartLabel;
|
|
int positiveLimit = 0, negativeLimit = 0;
|
|
|
|
if (label == null)
|
|
return;
|
|
|
|
if (this.ParentForm.smartModbus.IsOpen == false || label.Text.Trim() == "0")
|
|
{
|
|
// 통신 연결상태를 확인하세요
|
|
DialogFormMessage myMsg = new DialogFormMessage(23, this.ParentForm.SystemConfig.Language);
|
|
myMsg.ShowDialog();
|
|
return;
|
|
}
|
|
|
|
positiveLimit = this.ParentForm.SystemConfig.ServoLimit;
|
|
negativeLimit = this.ParentForm.SystemConfig.ServoLimit * -1;
|
|
|
|
if (label == this.labelOrigin)
|
|
{
|
|
#region Origin
|
|
before = label.Text;
|
|
|
|
DialogFormNumKeyPad myKeyPad = new DialogFormNumKeyPad(this.labelOrigin.Text, 6, 0, false, this.ParentForm.SystemConfig.Language);
|
|
|
|
if (myKeyPad.ShowDialog() == DialogResult.OK)
|
|
{
|
|
if (myKeyPad.doubleValue < negativeLimit || myKeyPad.doubleValue > positiveLimit)
|
|
{
|
|
// 입력범위를 확인하세요
|
|
DialogFormMessage myMsg = new DialogFormMessage(1, this.ParentForm.SystemConfig.Language);
|
|
myMsg.ShowDialog();
|
|
}
|
|
else
|
|
{
|
|
this.ServoMotorWrite2(1, ServoMotorParameterAddress.CMD17, myKeyPad.IntValue, label);
|
|
|
|
after = label.Text;
|
|
|
|
// Part 11
|
|
if (this.ParentForm.SystemConfig.IsPart11 == true)
|
|
this.ParentForm.SetTrackingHistoryData(DataStore.TrackingParameter.MotorOriginOffset, "", before, after);
|
|
}
|
|
}
|
|
#endregion
|
|
}
|
|
else if (label == this.labelSpeed0)
|
|
{
|
|
#region Speed0 (원점 속도)
|
|
before = label.Text;
|
|
|
|
DialogFormNumKeyPad myKeyPad = new DialogFormNumKeyPad(this.labelSpeed0.Text, 5, 0, false, this.ParentForm.SystemConfig.Language);
|
|
|
|
if (myKeyPad.ShowDialog() == DialogResult.OK)
|
|
{
|
|
if (myKeyPad.doubleValue < 0|| myKeyPad.doubleValue > 20000)
|
|
{
|
|
// 입력범위를 확인하세요
|
|
DialogFormMessage myMsg = new DialogFormMessage(1, this.ParentForm.SystemConfig.Language);
|
|
myMsg.ShowDialog();
|
|
}
|
|
else
|
|
{
|
|
//this.labelSpeed0.Text = myKeyPad.StringValue;
|
|
|
|
this.ServoMotorWrite1(1, ServoMotorParameterAddress.Speed0, myKeyPad.IntValue, label);
|
|
|
|
after = label.Text;
|
|
|
|
// Part 11
|
|
if (this.ParentForm.SystemConfig.IsPart11 == true)
|
|
this.ParentForm.SetTrackingHistoryData(DataStore.TrackingParameter.MotorOriginSpeed, "", before, after);
|
|
}
|
|
}
|
|
#endregion
|
|
}
|
|
else if (label == this.labelSpeed1)
|
|
{
|
|
#region Speed 1
|
|
before = label.Text;
|
|
|
|
DialogFormNumKeyPad myKeyPad = new DialogFormNumKeyPad(this.labelSpeed1.Text, 5, 0, false, this.ParentForm.SystemConfig.Language);
|
|
|
|
if (myKeyPad.ShowDialog() == DialogResult.OK)
|
|
{
|
|
if (myKeyPad.doubleValue < 0 || myKeyPad.doubleValue > 20000)
|
|
{
|
|
// 입력범위를 확인하세요
|
|
DialogFormMessage myMsg = new DialogFormMessage(1, this.ParentForm.SystemConfig.Language);
|
|
myMsg.ShowDialog();
|
|
}
|
|
else
|
|
{
|
|
//this.labelSpeed1.Text = myKeyPad.StringValue;
|
|
|
|
this.ServoMotorWrite1(1, ServoMotorParameterAddress.Speed1, myKeyPad.IntValue, label);
|
|
|
|
after = label.Text;
|
|
|
|
// Part 11
|
|
if (this.ParentForm.SystemConfig.IsPart11 == true)
|
|
this.ParentForm.SetTrackingHistoryData(DataStore.TrackingParameter.MotorSpeed, "", before, after);
|
|
}
|
|
}
|
|
#endregion
|
|
}
|
|
else if (label == this.labelPosition0)
|
|
{
|
|
#region Position 0
|
|
before = label.Text;
|
|
|
|
DialogFormNumKeyPad myKeyPad = new DialogFormNumKeyPad(this.labelPosition0.Text, 6, 0, true, this.ParentForm.SystemConfig.Language);
|
|
|
|
if (myKeyPad.ShowDialog() == DialogResult.OK)
|
|
{
|
|
if (myKeyPad.doubleValue < negativeLimit || myKeyPad.doubleValue > positiveLimit)
|
|
{
|
|
// 입력범위를 확인하세요
|
|
DialogFormMessage myMsg = new DialogFormMessage(1, this.ParentForm.SystemConfig.Language);
|
|
myMsg.ShowDialog();
|
|
}
|
|
else
|
|
{
|
|
this.ServoMotorWrite2(1, ServoMotorParameterAddress.CMD0, myKeyPad.IntValue, label);
|
|
|
|
after = label.Text;
|
|
|
|
// Part 11
|
|
if (this.ParentForm.SystemConfig.IsPart11 == true)
|
|
this.ParentForm.SetTrackingHistoryData(DataStore.TrackingParameter.MotorPosition0, "", before, after);
|
|
}
|
|
}
|
|
#endregion
|
|
}
|
|
else if (label == this.labelPosition1)
|
|
{
|
|
#region Position 1
|
|
before = label.Text;
|
|
|
|
DialogFormNumKeyPad myKeyPad = new DialogFormNumKeyPad(this.labelPosition1.Text, 6, 0, true, this.ParentForm.SystemConfig.Language);
|
|
|
|
if (myKeyPad.ShowDialog() == DialogResult.OK)
|
|
{
|
|
if (myKeyPad.doubleValue < negativeLimit || myKeyPad.doubleValue > positiveLimit)
|
|
{
|
|
// 입력범위를 확인하세요
|
|
DialogFormMessage myMsg = new DialogFormMessage(1, this.ParentForm.SystemConfig.Language);
|
|
myMsg.ShowDialog();
|
|
}
|
|
else
|
|
{
|
|
this.ServoMotorWrite2(1, ServoMotorParameterAddress.CMD1, myKeyPad.IntValue, label);
|
|
|
|
after = label.Text;
|
|
|
|
// Part 11
|
|
if (this.ParentForm.SystemConfig.IsPart11 == true)
|
|
this.ParentForm.SetTrackingHistoryData(DataStore.TrackingParameter.MotorPosition1, "", before, after);
|
|
}
|
|
}
|
|
#endregion
|
|
}
|
|
else if (label == this.labelPosition2)
|
|
{
|
|
#region Position 2
|
|
before = label.Text;
|
|
|
|
DialogFormNumKeyPad myKeyPad = new DialogFormNumKeyPad(this.labelPosition2.Text, 6, 0, false, this.ParentForm.SystemConfig.Language);
|
|
|
|
if (myKeyPad.ShowDialog() == DialogResult.OK)
|
|
{
|
|
if (myKeyPad.doubleValue < negativeLimit || myKeyPad.doubleValue > positiveLimit)
|
|
{
|
|
// 입력범위를 확인하세요
|
|
DialogFormMessage myMsg = new DialogFormMessage(1, this.ParentForm.SystemConfig.Language);
|
|
myMsg.ShowDialog();
|
|
}
|
|
else
|
|
{
|
|
this.ServoMotorWrite2(1, ServoMotorParameterAddress.CMD2, myKeyPad.IntValue, label);
|
|
|
|
after = label.Text;
|
|
|
|
// Part 11
|
|
if (this.ParentForm.SystemConfig.IsPart11 == true)
|
|
this.ParentForm.SetTrackingHistoryData(DataStore.TrackingParameter.MotorPosition2, "", before, after);
|
|
}
|
|
}
|
|
#endregion
|
|
}
|
|
}
|
|
private void labelServoLimit_Click(object sender, EventArgs e)
|
|
{
|
|
string before = "", after = "";
|
|
|
|
before = this.labelServoLimit.Text;
|
|
|
|
DialogFormNumKeyPad myKeyPad = new DialogFormNumKeyPad(this.labelServoLimit.Text, 6, 0, false, this.ParentForm.SystemConfig.Language);
|
|
|
|
if (myKeyPad.ShowDialog() == DialogResult.OK)
|
|
{
|
|
if (myKeyPad.doubleValue == 0 || myKeyPad.doubleValue > 999999)
|
|
{
|
|
// 입력범위를 확인하세요
|
|
DialogFormMessage myMsg = new DialogFormMessage(1, this.ParentForm.SystemConfig.Language);
|
|
myMsg.ShowDialog();
|
|
}
|
|
else
|
|
{
|
|
this.labelServoLimit.Text = myKeyPad.StringValue;
|
|
after = this.labelServoLimit.Text;
|
|
|
|
this.ParentForm.SystemConfig.ServoLimit = myKeyPad.IntValue;
|
|
this.ParentForm.SaveSystemConfigurationFile(this.ParentForm.SystemConfig);
|
|
|
|
// Part 11
|
|
if (this.ParentForm.SystemConfig.IsPart11 == true)
|
|
this.ParentForm.SetTrackingHistoryData(DataStore.TrackingParameter.MotorSorvoLimit, "", before, after);
|
|
}
|
|
}
|
|
}
|
|
|
|
private void pictureBoxAlarm_Click(object sender, EventArgs e)
|
|
{
|
|
if (this.listBoxAlarmMessage.Visible == false)
|
|
this.listBoxAlarmMessage.Visible = true;
|
|
else
|
|
this.listBoxAlarmMessage.Visible = false;
|
|
}
|
|
#endregion
|
|
}
|
|
} |