using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.IO; using System.Linq; using System.Text; using System.Threading.Tasks; using System.Windows.Forms; namespace Welling_Motor_Debug_Tool { public partial class TorqueParams : Form { LocalInfo localInfo = new LocalInfo(); public class TorqueTh { public ushort T; public ushort Min; public ushort Max; } public TorqueTh Zero = new TorqueTh(); public TorqueTh K1 = new TorqueTh(); public TorqueTh K2 = new TorqueTh(); public TorqueTh K3 = new TorqueTh(); public TorqueTh K4 = new TorqueTh(); public TorqueParams() { InitializeComponent(); //读取配置文件 try { //检查配置文件 if (!Directory.Exists(localInfo.LocalPath)) Directory.CreateDirectory(localInfo.LocalPath); if (!File.Exists(localInfo.LocalPath + localInfo.TorqueSensorFileName)) { FileStream fs = File.Create(localInfo.LocalPath + localInfo.TorqueSensorFileName); fs.Close(); StreamWriter file = new StreamWriter(localInfo.LocalPath + localInfo.TorqueSensorFileName); Zero.T = 0; Zero.Min = 500; Zero.Max = 700; K1.T = 200; K1.Min = 1200; K1.Max = 1400; K2.T = 400; K2.Min = 1900; K2.Max = 2100; K3.T = 600; K3.Min = 2600; K3.Max = 2800; K4.T = 800; K4.Min = 3300; K4.Max = 3500; file.WriteLine(Zero.T.ToString() + "," + Zero.Min.ToString() + "," + Zero.Max.ToString()); file.WriteLine(K1.T.ToString() + "," + K1.Min.ToString() + "," + K1.Max.ToString()); file.WriteLine(K2.T.ToString() + "," + K2.Min.ToString() + "," + K2.Max.ToString()); file.WriteLine(K3.T.ToString() + "," + K3.Min.ToString() + "," + K3.Max.ToString()); file.WriteLine(K4.T.ToString() + "," + K4.Min.ToString() + "," + K4.Max.ToString()); file.Close(); } //读取配置文件 StreamReader objReader = new StreamReader(localInfo.LocalPath + localInfo.TorqueSensorFileName); string sLine = ""; List userInfo = new List(); while (sLine != null) { sLine = objReader.ReadLine(); userInfo.Add(sLine); } objReader.Close(); Zero.T = Convert.ToUInt16(userInfo[0].Split(',')[0]); Zero.Min = Convert.ToUInt16(userInfo[0].Split(',')[1]); Zero.Max = Convert.ToUInt16(userInfo[0].Split(',')[2]); K1.T = Convert.ToUInt16(userInfo[1].Split(',')[0]); K1.Min = Convert.ToUInt16(userInfo[1].Split(',')[1]); K1.Max = Convert.ToUInt16(userInfo[1].Split(',')[2]); K2.T = Convert.ToUInt16(userInfo[2].Split(',')[0]); K2.Min = Convert.ToUInt16(userInfo[2].Split(',')[1]); K2.Max = Convert.ToUInt16(userInfo[2].Split(',')[2]); K3.T = Convert.ToUInt16(userInfo[3].Split(',')[0]); K3.Min = Convert.ToUInt16(userInfo[3].Split(',')[1]); K3.Max = Convert.ToUInt16(userInfo[3].Split(',')[2]); K4.T = Convert.ToUInt16(userInfo[4].Split(',')[0]); K4.Min = Convert.ToUInt16(userInfo[4].Split(',')[1]); K4.Max = Convert.ToUInt16(userInfo[4].Split(',')[2]); } catch (System.Exception) { MessageBox.Show("文件读取失败", "提示", MessageBoxButtons.OK, MessageBoxIcon.Warning); } } private void TorqueParams_Load(object sender, EventArgs e) { textBox_Torque_Zero.Text = Zero.T.ToString(); textBox_Torque_Zero_Min.Text = Zero.Min.ToString(); textBox_Torque_Zero_Max.Text = Zero.Max.ToString(); textBox_Torque_1.Text = K1.T.ToString(); textBox_Torque_1_Min.Text = K1.Min.ToString(); textBox_Torque_1_Max.Text = K1.Max.ToString(); textBox_Torque_2.Text = K2.T.ToString(); textBox_Torque_2_Min.Text = K2.Min.ToString(); textBox_Torque_2_Max.Text = K2.Max.ToString(); textBox_Torque_3.Text = K3.T.ToString(); textBox_Torque_3_Min.Text = K3.Min.ToString(); textBox_Torque_3_Max.Text = K3.Max.ToString(); textBox_Torque_4.Text = K4.T.ToString(); textBox_Torque_4_Min.Text = K4.Min.ToString(); textBox_Torque_4_Max.Text = K4.Max.ToString(); } private void button_Change_Click(object sender, EventArgs e) { Zero.T = Convert.ToUInt16(textBox_Torque_Zero.Text); Zero.Min = Convert.ToUInt16(textBox_Torque_Zero_Min.Text); Zero.Max = Convert.ToUInt16(textBox_Torque_Zero_Max.Text); K1.T = Convert.ToUInt16(textBox_Torque_1.Text); K1.Min = Convert.ToUInt16(textBox_Torque_1_Min.Text); K1.Max = Convert.ToUInt16(textBox_Torque_1_Max.Text); K2.T = Convert.ToUInt16(textBox_Torque_2.Text); K2.Min = Convert.ToUInt16(textBox_Torque_2_Min.Text); K2.Max = Convert.ToUInt16(textBox_Torque_2_Max.Text); K3.T = Convert.ToUInt16(textBox_Torque_3.Text); K3.Min = Convert.ToUInt16(textBox_Torque_3_Min.Text); K3.Max = Convert.ToUInt16(textBox_Torque_3_Max.Text); K4.T = Convert.ToUInt16(textBox_Torque_4.Text); K4.Min = Convert.ToUInt16(textBox_Torque_4_Min.Text); K4.Max = Convert.ToUInt16(textBox_Torque_4_Max.Text); if (File.Exists(localInfo.LocalPath + localInfo.TorqueSensorFileName)) File.Delete(localInfo.LocalPath + localInfo.TorqueSensorFileName); FileStream fs = File.Create(localInfo.LocalPath + localInfo.TorqueSensorFileName); fs.Close(); StreamWriter file = new StreamWriter(localInfo.LocalPath + localInfo.TorqueSensorFileName); file.WriteLine(Zero.T.ToString() + "," + Zero.Min.ToString() + "," + Zero.Max.ToString()); file.WriteLine(K1.T.ToString() + "," + K1.Min.ToString() + "," + K1.Max.ToString()); file.WriteLine(K2.T.ToString() + "," + K2.Min.ToString() + "," + K2.Max.ToString()); file.WriteLine(K3.T.ToString() + "," + K3.Min.ToString() + "," + K3.Max.ToString()); file.WriteLine(K4.T.ToString() + "," + K4.Min.ToString() + "," + K4.Max.ToString()); file.Close(); MessageBox.Show("修改完成", "提示", MessageBoxButtons.OK); } } }