diff --git a/CMS_CORE_Application/Form1.cs b/CMS_CORE_Application/Form1.cs index ba3a688..d85790f 100644 --- a/CMS_CORE_Application/Form1.cs +++ b/CMS_CORE_Application/Form1.cs @@ -106,12 +106,16 @@ namespace CMS_CORE_Application ////////////////////////////////////////// TEST Stopwatch st = new Stopwatch(); sw.Restart(); + ActiveProgramDataModel active = new ActiveProgramDataModel(); + + // N.FILES_WDeactivateProgram(1); + cmsError = N.FILES_WSetActiveProgram(1, "C:\\PartPrg\\nuovo.mpf", ref active); - cmsError = N.AXES_RInterpPosition(1, ref Axes); Console.WriteLine("TIME " + sw.ElapsedMilliseconds); sw.Stop(); + /////////////////////////////////////////// END TEST if (!this.IsDisposed && this.InvokeRequired) { this.Invoke((ThreadStart)delegate () @@ -186,8 +190,8 @@ namespace CMS_CORE_Application { TXTip.Enabled = true; TXTport.Enabled = true; - // TXTip.Text = "192.168.139.1"; - TXTip.Text = "10.69.36.33"; + TXTip.Text = "192.168.139.1"; + //TXTip.Text = "10.69.36.33"; TXTport.Text = "8193"; } else if (NcCombo.SelectedItem.ToString().Equals("Osai")) diff --git a/CMS_CORE_Library/CMS_CORE_Library.csproj b/CMS_CORE_Library/CMS_CORE_Library.csproj index 05f5970..7e8ee08 100644 --- a/CMS_CORE_Library/CMS_CORE_Library.csproj +++ b/CMS_CORE_Library/CMS_CORE_Library.csproj @@ -915,8 +915,5 @@ Always - - - \ No newline at end of file diff --git a/CMS_CORE_Library/Fanuc/Nc_Fanuc.cs b/CMS_CORE_Library/Fanuc/Nc_Fanuc.cs index 701e630..86bcc4f 100644 --- a/CMS_CORE_Library/Fanuc/Nc_Fanuc.cs +++ b/CMS_CORE_Library/Fanuc/Nc_Fanuc.cs @@ -38,14 +38,21 @@ namespace CMS_CORE_Library.Fanuc private static int MAX_OFFSET_NUM = 0; // Paths - private const string NC_PROGRAM_UPLOAD_PATH = "//CNC_MEM/USER/PATH1"; + private const string NC_SUPPORT_FILE_PATH = "//CNC_MEM/USER/PATH1/"; private const string PLC_MESSAGE_PATH = @"C:\CMS\FANUC\"; - private const string BLANK_PART_PROGRAM_PATH = "//CNC_MEM/MTB1/BLANK"; + private const string BLANK_PART_PROGRAM_PATH = "//CNC_MEM/PATH1/BLANK"; // Const private const int TOOL_OFFSET = 300; + private const string M198_FILE_CONTENT = "%\n" + + "\n" + + "M198<{1}>"+ + "\n"+ + "%"; + private const string M198_FILE_NAME = "ACTIVE_LOADER_{0}"; + /////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// @@ -818,7 +825,7 @@ namespace CMS_CORE_Library.Fanuc public override CmsError PLC_ROperatorInputIsNeeded(ref List value) { byte val = 0; - CmsError cmsError = MEM_RWByte(R, 0, OPERATOR_INPUT_NEEDED.MemType, OPERATOR_INPUT_NEEDED.Address, 0, ref val); + CmsError cmsError = MEM_RWByte(R, 0, M155_INPUT_NEEDED.MemType, M155_INPUT_NEEDED.Address, 0, ref val); if (cmsError.IsError()) return cmsError; @@ -2260,10 +2267,29 @@ namespace CMS_CORE_Library.Fanuc try { - // Select main data - short nReturn = Focas1.cnc_pdf_slctmain(nLibHandle[processId - 1], filePath); - if (nReturn != 0) - return GetNcError(nReturn); + if (filePath.StartsWith("//CNC_MEM")) + { + // Select main data + short nReturn = Focas1.cnc_pdf_slctmain(nLibHandle[processId - 1], filePath); + if (nReturn != 0) + return GetNcError(nReturn); + } + else + { + // Populate string template with parameters + string fileContent = string.Format(M198_FILE_CONTENT, processId, Path.GetFileName(filePath)); + string tmpM198FilePath = string.Format(NC_SUPPORT_FILE_PATH + M198_FILE_NAME, processId); + + // Create new file + cmsError = WritePartProgramContent(NC_SUPPORT_FILE_PATH, fileContent); + if (cmsError.IsError()) + return cmsError; + + // Select main data + short nReturn = Focas1.cnc_pdf_slctmain(nLibHandle[processId - 1], tmpM198FilePath); + if (nReturn != 0) + return GetNcError(nReturn); + } } catch (Exception ex) { @@ -2290,12 +2316,13 @@ namespace CMS_CORE_Library.Fanuc // Clean the read path string path = new string(filePath).TrimEnd('\0'); - // If program is CMS blank program, simulates that there are no progs + + // If program is CMS blank then simulates that there aren't programs if (path == BLANK_PART_PROGRAM_PATH) return NO_ERROR; ushort length = 200; - char[] text = new char[201]; + char[] text = new char[201]; // TODO TEST nReturn = Focas1.cnc_rdexecprog(nLibHandle[processId - 1], ref length, out short block, text); string lines = new string(text.Take(length).ToArray()); @@ -2332,11 +2359,11 @@ namespace CMS_CORE_Library.Fanuc Focas1.ODBERR errorDetails = new Focas1.ODBERR(); nReturn = Focas1.cnc_getdtailerr(nLibHandle[0], errorDetails); - // If file not exist then create it + // If file not exist error is equal to 2 if (errorDetails.err_no == 2) { - // Create File - cmsError = WritePartProgramContent("//CNC_MEM/MTB1/", "%\n\n%"); + // Create standard file + cmsError = WritePartProgramContent(NC_SUPPORT_FILE_PATH, "%\n\n%"); if (cmsError.IsError()) return cmsError; // Deactivate again @@ -2356,16 +2383,9 @@ namespace CMS_CORE_Library.Fanuc public override CmsError FILES_UploadPartProgram(string localPath, string name, ref string newFilePath) { - // Open file - FileStream fileStream = new FileStream(localPath + "\\" + name, FileMode.Open); - newFilePath = NC_PROGRAM_UPLOAD_PATH + name; + File.Copy(localPath + name, PART_PRG_PATH + name, true); - // Transfer file on NC - CmsError cmsError = FILES_WProgramFromFile(newFilePath, fileStream); - if (cmsError.IsError()) - return cmsError; - - fileStream.Close(); + newFilePath = PART_PRG_PATH + name; return NO_ERROR; } @@ -2498,11 +2518,13 @@ namespace CMS_CORE_Library.Fanuc return NO_ERROR; } + // QUEUE public override CmsError FILES_WLoadNextPartProgram(string localPath, string ncFileName) { return NO_ERROR; } + // JOB public override CmsError FILES_WUploadJobFilesAndActivate(int processId, string jobExtractedPath, string fileToActivate) { return NO_ERROR; @@ -3843,7 +3865,11 @@ namespace CMS_CORE_Library.Fanuc nReturn = Focas1.cnc_dwnend4(nLibHandle[0]); if (nReturn != 0) + { + Focas1.ODBERR errorDetails = new Focas1.ODBERR(); + nReturn = Focas1.cnc_getdtailerr(nLibHandle[0], errorDetails); return GetNcError(nReturn); + } return NO_ERROR; } @@ -3976,86 +4002,86 @@ namespace CMS_CORE_Library.Fanuc internal static class MEMORY_ADDRESS { - internal const int STARTING_ADDRESS = 50000; + internal const int STARTING_ADDRESS = 20000; internal static MEMORY_CELL NC_WATCHDOG = new MEMORY_CELL(MEMORY_TYPE.Fanuc_R, STARTING_ADDRESS, 1); internal static MEMORY_CELL ACTIVE_WATCHDOG = new MEMORY_CELL(MEMORY_TYPE.Fanuc_R, STARTING_ADDRESS + 2, 1); - internal static MEMORY_CELL FUNCTION_ACCESS = new MEMORY_CELL(MEMORY_TYPE.Fanuc_R, 50005, 8); + internal static MEMORY_CELL FUNCTION_ACCESS = new MEMORY_CELL(MEMORY_TYPE.Fanuc_R, STARTING_ADDRESS + 5, 8); - internal static MEMORY_CELL PRE_POST_POWER_ON = new MEMORY_CELL(MEMORY_TYPE.Fanuc_R, 52573, 2); - internal static MEMORY_CELL PRE_POST_POWER_ON_CLICKABLE = new MEMORY_CELL(MEMORY_TYPE.Fanuc_R, 52575, 2); - internal static MEMORY_CELL PRE_POST_POWER_ON_ACK = new MEMORY_CELL(MEMORY_TYPE.Fanuc_R, 52577, 2); - internal static MEMORY_CELL PRE_POST_POWER_ON_CLICKED = new MEMORY_CELL(MEMORY_TYPE.Fanuc_R, 52579, 2); + // Alarms + internal static MEMORY_CELL ALARMS_STATUS = new MEMORY_CELL(MEMORY_TYPE.Fanuc_R, STARTING_ADDRESS + 13, 128); + internal static MEMORY_CELL ALARMS_DATA = new MEMORY_CELL(MEMORY_TYPE.Fanuc_R, STARTING_ADDRESS + 141, 1024); + internal static MEMORY_CELL ALARM_ACK = new MEMORY_CELL(MEMORY_TYPE.Fanuc_R, STARTING_ADDRESS + 2189, 128); + internal static MEMORY_CELL ALARM_RESTORATION_STROBE = new MEMORY_CELL(MEMORY_TYPE.Fanuc_R, STARTING_ADDRESS + 2317, 128); + internal static MEMORY_CELL ALARM_REFRESH_STROBE = new MEMORY_CELL(MEMORY_TYPE.Fanuc_R, STARTING_ADDRESS + 2445, 128); - internal static MEMORY_CELL AXIS_RESET_PROCEDURE = new MEMORY_CELL(MEMORY_TYPE.Fanuc_R, 52607, 7, 1); + // Power on + internal static MEMORY_CELL PRE_POST_POWER_ON = new MEMORY_CELL(MEMORY_TYPE.Fanuc_R, STARTING_ADDRESS + 2573, 2); + internal static MEMORY_CELL PRE_POST_POWER_ON_CLICKABLE = new MEMORY_CELL(MEMORY_TYPE.Fanuc_R, STARTING_ADDRESS + 2575, 2); + internal static MEMORY_CELL PRE_POST_POWER_ON_ACK = new MEMORY_CELL(MEMORY_TYPE.Fanuc_R, STARTING_ADDRESS + 2577, 2); + internal static MEMORY_CELL PRE_POST_POWER_ON_CLICKED = new MEMORY_CELL(MEMORY_TYPE.Fanuc_R, STARTING_ADDRESS + 2579, 2); - internal static MEMORY_CELL PROCESS_STATUS = new MEMORY_CELL(MEMORY_TYPE.Fanuc_R, 52581, 0, 24); - internal static MEMORY_CELL SELECTED_PROCESS = new MEMORY_CELL(MEMORY_TYPE.Fanuc_R, 52581, 2, 24); - internal static MEMORY_CELL SELECT_PROCESS = new MEMORY_CELL(MEMORY_TYPE.Fanuc_R, 52605, 1); + internal static MEMORY_CELL PROCESS_STATUS = new MEMORY_CELL(MEMORY_TYPE.Fanuc_R, STARTING_ADDRESS + 2581, 0, 24); + internal static MEMORY_CELL SELECTED_PROCESS = new MEMORY_CELL(MEMORY_TYPE.Fanuc_R, STARTING_ADDRESS + 2581, 2, 24); + internal static MEMORY_CELL SELECT_PROCESS = new MEMORY_CELL(MEMORY_TYPE.Fanuc_R, STARTING_ADDRESS + 2605, 1); + + internal static MEMORY_CELL AXIS_RESET_PROCEDURE = new MEMORY_CELL(MEMORY_TYPE.Fanuc_R, STARTING_ADDRESS + 2607, 7, 1); + + internal static MEMORY_CELL NC_SOFTKEYS_VALUE = new MEMORY_CELL(MEMORY_TYPE.Fanuc_R, STARTING_ADDRESS + 2608, 0, 4); + internal static MEMORY_CELL NC_SOFTKEYS_CLICKABLE = new MEMORY_CELL(MEMORY_TYPE.Fanuc_R, STARTING_ADDRESS + 2612, 0, 4); + internal static MEMORY_CELL NC_SOFT_KEYS_ACK = new MEMORY_CELL(MEMORY_TYPE.Fanuc_R, STARTING_ADDRESS + 2616, 4); + internal static MEMORY_CELL NC_SOFT_KEYS_CLICKED = new MEMORY_CELL(MEMORY_TYPE.Fanuc_R, STARTING_ADDRESS + 2620, 4); - internal static MEMORY_CELL COUNTERS = new MEMORY_CELL(MEMORY_TYPE.Fanuc_R, 43, 0, 40); + internal static MEMORY_CELL SELECTED_AXIS = new MEMORY_CELL(MEMORY_TYPE.Fanuc_R, STARTING_ADDRESS + 2624, 0, 1); + internal static MEMORY_CELL SELECT_AXIS = new MEMORY_CELL(MEMORY_TYPE.Fanuc_R, STARTING_ADDRESS + 2625, 1, 1); - internal static MEMORY_CELL SELECTED_AXIS = new MEMORY_CELL(MEMORY_TYPE.Fanuc_R, 52624, 0, 1); - internal static MEMORY_CELL SELECT_AXIS = new MEMORY_CELL(MEMORY_TYPE.Fanuc_R, 52625, 1, 1); + internal static MEMORY_CELL USER_SOFTKEYS_VALUE = new MEMORY_CELL(MEMORY_TYPE.Fanuc_R, STARTING_ADDRESS + 2626, 0, 16); + internal static MEMORY_CELL USER_SOFTKEYS_CLICKABLE = new MEMORY_CELL(MEMORY_TYPE.Fanuc_R, STARTING_ADDRESS + 2642, 0, 16); + internal static MEMORY_CELL USER_SOFT_KEYS_ACK = new MEMORY_CELL(MEMORY_TYPE.Fanuc_R, STARTING_ADDRESS + 2658, 16); + internal static MEMORY_CELL USER_SOFT_KEYS_CLICKED = new MEMORY_CELL(MEMORY_TYPE.Fanuc_R, STARTING_ADDRESS + 2674, 16); - internal static MEMORY_CELL NC_SOFTKEYS_VALUE = new MEMORY_CELL(MEMORY_TYPE.Fanuc_R, 52608, 0, 4); - internal static MEMORY_CELL NC_SOFTKEYS_CLICKABLE = new MEMORY_CELL(MEMORY_TYPE.Fanuc_R, 52612, 0, 4); - internal static MEMORY_CELL NC_SOFT_KEYS_ACK = new MEMORY_CELL(MEMORY_TYPE.Fanuc_R, 52616, 4); - internal static MEMORY_CELL NC_SOFT_KEYS_CLICKED = new MEMORY_CELL(MEMORY_TYPE.Fanuc_R, 52620, 4); + internal static MEMORY_CELL HEADS_DATA = new MEMORY_CELL(MEMORY_TYPE.Fanuc_R, STARTING_ADDRESS + 2690, 240); + internal static MEMORY_CELL HEADS_ACK = new MEMORY_CELL(MEMORY_TYPE.Fanuc_R, STARTING_ADDRESS + 2921, 4); + internal static MEMORY_CELL HEADS_STROBE_INCREMENT = new MEMORY_CELL(MEMORY_TYPE.Fanuc_R, STARTING_ADDRESS + 2924, 4); + internal static MEMORY_CELL HEADS_STROBE_DECREMENT = new MEMORY_CELL(MEMORY_TYPE.Fanuc_R, STARTING_ADDRESS + 2927, 4); - internal static MEMORY_CELL USER_SOFTKEYS_VALUE = new MEMORY_CELL(MEMORY_TYPE.Fanuc_R, 52626, 0, 16); - internal static MEMORY_CELL USER_SOFTKEYS_CLICKABLE = new MEMORY_CELL(MEMORY_TYPE.Fanuc_R, 52642, 0, 16); - internal static MEMORY_CELL USER_SOFT_KEYS_ACK = new MEMORY_CELL(MEMORY_TYPE.Fanuc_R, 52658, 16); - internal static MEMORY_CELL USER_SOFT_KEYS_CLICKED = new MEMORY_CELL(MEMORY_TYPE.Fanuc_R, 52674, 16); + internal static MEMORY_CELL COUNTERS = new MEMORY_CELL(MEMORY_TYPE.Fanuc_R, STARTING_ADDRESS + 2930, 0, 44); + internal static MEMORY_CELL COUNTER_IS_RESETTABLE = new MEMORY_CELL(MEMORY_TYPE.Fanuc_R, STARTING_ADDRESS + 2998, 0, 2); + internal static MEMORY_CELL COUNTER_IS_RESETTABLE_ACK = new MEMORY_CELL(MEMORY_TYPE.Fanuc_R, STARTING_ADDRESS + 3000, 0, 2); + internal static MEMORY_CELL COUNTER_IS_RESETTABLE_STROBE = new MEMORY_CELL(MEMORY_TYPE.Fanuc_R, STARTING_ADDRESS + 3002, 0, 2); - internal static MEMORY_CELL ALARMS_STATUS = new MEMORY_CELL(MEMORY_TYPE.Fanuc_R, 50013, 128); - internal static MEMORY_CELL ALARMS_DATA = new MEMORY_CELL(MEMORY_TYPE.Fanuc_R, 50141, 1024); + internal static MEMORY_CELL M155_INPUT_NEEDED = new MEMORY_CELL(MEMORY_TYPE.Fanuc_R, STARTING_ADDRESS + 3004, 1); + internal static MEMORY_CELL MTCONNECT_DATA_NEEDED = new MEMORY_CELL(MEMORY_TYPE.Fanuc_R, STARTING_ADDRESS + 3031, 1); - internal static MEMORY_CELL ALARM_ACK = new MEMORY_CELL(MEMORY_TYPE.Fanuc_R, 52189, 128); - internal static MEMORY_CELL ALARM_RESTORATION_STROBE = new MEMORY_CELL(MEMORY_TYPE.Fanuc_R, 52317, 128); - internal static MEMORY_CELL ALARM_REFRESH_STROBE = new MEMORY_CELL(MEMORY_TYPE.Fanuc_R, 52445, 128); - - internal static MEMORY_CELL HEADS_DATA = new MEMORY_CELL(MEMORY_TYPE.Fanuc_R, 52690, 240); - - internal static MEMORY_CELL HEADS_ACK = new MEMORY_CELL(MEMORY_TYPE.Fanuc_R, 52921, 4); - internal static MEMORY_CELL HEADS_STROBE_INCREMENT = new MEMORY_CELL(MEMORY_TYPE.Fanuc_R, 52924, 4); - internal static MEMORY_CELL HEADS_STROBE_DECREMENT = new MEMORY_CELL(MEMORY_TYPE.Fanuc_R, 52927, 4); // Tool manager areas + + internal static MEMORY_CELL MAGAZINE_ACTION = new MEMORY_CELL(MEMORY_TYPE.Fanuc_R, STARTING_ADDRESS + 4000, 16); + + internal static MEMORY_CELL TOOL_MANAGER_COMMAND = new MEMORY_CELL(MEMORY_TYPE.Fanuc_R, STARTING_ADDRESS + 4013, 2); + + internal static MEMORY_CELL TOOL_MANAGER_STATUS = new MEMORY_CELL(MEMORY_TYPE.Fanuc_R, STARTING_ADDRESS + 4015, 2); + + internal static MEMORY_CELL TOOL_MANAGER_OPTIONS = new MEMORY_CELL(MEMORY_TYPE.Fanuc_R, STARTING_ADDRESS + 4017, 2); - internal static MEMORY_CELL MAGAZINE_ACTION = new MEMORY_CELL(MEMORY_TYPE.Fanuc_R, 54000, 16); + internal static MEMORY_CELL TOOL_STATUS_UPDATED_CMD = new MEMORY_CELL(MEMORY_TYPE.Fanuc_R, STARTING_ADDRESS + 4037, 4); + internal static MEMORY_CELL TOOL_LIFE_UPDATED_CMD = new MEMORY_CELL(MEMORY_TYPE.Fanuc_R, STARTING_ADDRESS + 4041, 4); + internal static MEMORY_CELL TOOL_STATUS_UPDATED_ACK = new MEMORY_CELL(MEMORY_TYPE.Fanuc_R, STARTING_ADDRESS + 4045, 4); + internal static MEMORY_CELL TOOL_LIFE_UPDATED_ACK = new MEMORY_CELL(MEMORY_TYPE.Fanuc_R, STARTING_ADDRESS + 4049, 4); - internal static MEMORY_CELL TOOL_MANAGER_COMMAND = new MEMORY_CELL(MEMORY_TYPE.Fanuc_R, 54013, 2); + internal static MEMORY_CELL TOOL_STATUS_UPDATED_DATA = new MEMORY_CELL(MEMORY_TYPE.Fanuc_R, STARTING_ADDRESS + 4053, 10); + internal static MEMORY_CELL TOOL_LIFE_UPDATED_DATA = new MEMORY_CELL(MEMORY_TYPE.Fanuc_R, STARTING_ADDRESS + 4073, 80); - internal static MEMORY_CELL TOOL_MANAGER_STATUS = new MEMORY_CELL(MEMORY_TYPE.Fanuc_R, 45015, 2); - - internal static MEMORY_CELL TOOL_MANAGER_OPTIONS = new MEMORY_CELL(MEMORY_TYPE.Fanuc_R, 54017, 2); - - internal static MEMORY_CELL MAGAZINE_TYPES = new MEMORY_CELL(MEMORY_TYPE.Fanuc_R, 54058, 0); - internal static MEMORY_CELL MAGAZINE_POSITIONS_NUMBER = new MEMORY_CELL(MEMORY_TYPE.Fanuc_R, 54078, 0); - - internal static MEMORY_CELL MAGAZINES_ENABLED_CMD = new MEMORY_CELL(MEMORY_TYPE.Fanuc_R, 54118, 2); - internal static MEMORY_CELL MAGAZINES_TOOLING_CMD = new MEMORY_CELL(MEMORY_TYPE.Fanuc_R, 54122, 2); - - internal static MEMORY_CELL TOOL_STATUS_UPDATED_CMD = new MEMORY_CELL(MEMORY_TYPE.Fanuc_R, 54037, 4); - internal static MEMORY_CELL TOOL_LIFE_UPDATED_CMD = new MEMORY_CELL(MEMORY_TYPE.Fanuc_R, 54041, 4); - internal static MEMORY_CELL TOOL_STATUS_UPDATED_ACK = new MEMORY_CELL(MEMORY_TYPE.Fanuc_R, 54045, 4); - internal static MEMORY_CELL TOOL_LIFE_UPDATED_ACK = new MEMORY_CELL(MEMORY_TYPE.Fanuc_R, 54049, 4); - - internal static MEMORY_CELL TOOL_STATUS_UPDATED_DATA = new MEMORY_CELL(MEMORY_TYPE.Fanuc_R, 0, 10); - internal static MEMORY_CELL TOOL_LIFE_UPDATED_DATA = new MEMORY_CELL(MEMORY_TYPE.Fanuc_R, 0, 40); + internal static MEMORY_CELL MAGAZINE_TYPES = new MEMORY_CELL(MEMORY_TYPE.Fanuc_R, STARTING_ADDRESS + 4153, 0); + internal static MEMORY_CELL MAGAZINE_POSITIONS_NUMBER = new MEMORY_CELL(MEMORY_TYPE.Fanuc_R, STARTING_ADDRESS + 1573, 0); + internal static MEMORY_CELL MAGAZINES_ENABLED_CMD = new MEMORY_CELL(MEMORY_TYPE.Fanuc_R, STARTING_ADDRESS + 4213, 4); + internal static MEMORY_CELL MAGAZINES_TOOLING_CMD = new MEMORY_CELL(MEMORY_TYPE.Fanuc_R, STARTING_ADDRESS + 4217, 4); + // Tool table indexes - internal static MEMORY_CELL TOOL_TABLE_INDEX = new MEMORY_CELL(MEMORY_TYPE.Fanuc_D, 35000, 6900); - internal static MEMORY_CELL FAMILY_TABLE_INDEX = new MEMORY_CELL(MEMORY_TYPE.Fanuc_D, 42000, 7500); - internal static MEMORY_CELL SHANK_TABLE_INDEX = new MEMORY_CELL(MEMORY_TYPE.Fanuc_D, 49600, 2100); - internal static MEMORY_CELL MAG_POS_TABLE_INDEX = new MEMORY_CELL(MEMORY_TYPE.Fanuc_D, 53000, 1200); - - internal static MEMORY_CELL COUNTERS_DATA = new MEMORY_CELL(MEMORY_TYPE.Fanuc_R, 0, 64); - internal static MEMORY_CELL COUNTERS_ACK = new MEMORY_CELL(MEMORY_TYPE.Fanuc_R, 0, 2); - internal static MEMORY_CELL COUNTERS_STROBE = new MEMORY_CELL(MEMORY_TYPE.Fanuc_R, 0, 2); - - internal static MEMORY_CELL OPERATOR_INPUT_NEEDED = new MEMORY_CELL(MEMORY_TYPE.Fanuc_R, 0, 1); - internal static MEMORY_CELL MTCONNECT_DATA_NEEDED = new MEMORY_CELL(MEMORY_TYPE.Fanuc_R, 0, 1); + internal static MEMORY_CELL TOOL_TABLE_INDEX = new MEMORY_CELL(MEMORY_TYPE.Fanuc_D, 10000, 6900); + internal static MEMORY_CELL FAMILY_TABLE_INDEX = new MEMORY_CELL(MEMORY_TYPE.Fanuc_D, 17000, 7500); + internal static MEMORY_CELL SHANK_TABLE_INDEX = new MEMORY_CELL(MEMORY_TYPE.Fanuc_D, 24600, 3300); + internal static MEMORY_CELL MAG_POS_TABLE_INDEX = new MEMORY_CELL(MEMORY_TYPE.Fanuc_D, 28000, 900); } } \ No newline at end of file diff --git a/CMS_CORE_Library/Models/DataStructures.cs b/CMS_CORE_Library/Models/DataStructures.cs index 68052a9..7471258 100644 --- a/CMS_CORE_Library/Models/DataStructures.cs +++ b/CMS_CORE_Library/Models/DataStructures.cs @@ -15,6 +15,7 @@ namespace CMS_CORE_Library.Models public static readonly string[] VALID_IMAGE_FORMATS = { ".jpg", ".jpeg", ".png" }; public const string IMAGES_PATH = @"C:\CMS\STEP\pp_img\"; + public const string PART_PRG_PATH = "C:\\PartPrg\\"; public const string MILLIMETERS = "mm"; public const string INCHES = "inches"; @@ -192,7 +193,7 @@ namespace CMS_CORE_Library.Models { public readonly MEMORY_TYPE MemType; public readonly int Address; - public readonly int SubAddress; //Only for Siemens + public readonly int SubAddress; // Only for Siemens public readonly int Size; public MEMORY_CELL(MEMORY_TYPE MType, int Addr, int SubAddr, int Sz) diff --git a/CMS_CORE_Library/Models/NcToolModel.cs b/CMS_CORE_Library/Models/NcToolModel.cs index f936995..ca90614 100644 --- a/CMS_CORE_Library/Models/NcToolModel.cs +++ b/CMS_CORE_Library/Models/NcToolModel.cs @@ -177,7 +177,7 @@ namespace CMS_CORE_Library.Models public byte Type { get; set; } } - // If u need to order properties, use the code below + // If u need to order properties, u could use the code below // properties = properties.OrderBy(x => ((FanucOrderAttribute)x.GetCustomAttribute(typeof(FanucOrderAttribute))).Val).ToArray(); public class OsaiOrderAttribute : Attribute diff --git a/CMS_CORE_Library/Siemens/Nc_Siemens.cs b/CMS_CORE_Library/Siemens/Nc_Siemens.cs index 54d1663..03e256b 100644 --- a/CMS_CORE_Library/Siemens/Nc_Siemens.cs +++ b/CMS_CORE_Library/Siemens/Nc_Siemens.cs @@ -121,7 +121,6 @@ namespace CMS_CORE_Library.Siemens public const string BASE_FILE_PATH = "//NC/"; public const string NC_FILE_PATH = "MPF.DIR"; - public const string PART_PRG_PATH = "C:\\PartPrg\\"; // Test private static DataSvc AxesSvc = new DataSvc(); @@ -2384,16 +2383,6 @@ namespace CMS_CORE_Library.Siemens public override CmsError FILES_UploadPartProgram(string localPath, string name, ref string newFilePath) { - // Open file - // FileStream fileStream = new FileStream(localPath + "\\" + name, FileMode.Open); - // newFilePath = NC_FILE_PATH + "/" + name; - // Transfer file on NC - //CmsError cmsError = FILES_WProgramFromFile(BASE_FILE_PATH + newFilePath, fileStream); - //if (cmsError.IsError()) - // return cmsError; - - //fileStream.Close(); - File.Copy(localPath + name, PART_PRG_PATH + name, true); newFilePath = PART_PRG_PATH + name;