Пример #1
0
        public void WriteBuffer(AcsBuffers bufferNumber)
        {
            var buffer = ReadBuffer(bufferNumber);

            var index = (ProgramBuffer)bufferNumber;

            if (!CompareBuffer(index, buffer))
            {
                return;
            }

            StopBufferIfRunning(index);
            try {
                Api.LoadBuffer(index, buffer);
                Api.CompileBuffer(index);
                changesMadeToBuffer = true;
            }
            catch (Exception e) {
                throw new AcsException($"Failed to load and compile buffer {bufferNumber}. Exception: " + e.Message);
            }
        }
Пример #2
0
 private string ReadBuffer(AcsBuffers bufferNumber)
 {
     return(ReadBuffer(GetBufferFilename(bufferNumber)));
 }
Пример #3
0
        private string GetBufferFilename(AcsBuffers bufferNumber)
        {
            switch (bufferNumber)
            {
            case AcsBuffers.GantryHomeX:
                return("Gantry_X_Homing");

            case AcsBuffers.GantryHomeY:
                return("Gantry_Y_Homing");

            case AcsBuffers.GantryHomeZ:
                return("Gantry_Z_Homing");

            case AcsBuffers.HomeX:
                return("");

            case AcsBuffers.HomeY:
                return("");

            case AcsBuffers.HomeZ:
                return("");

            case AcsBuffers.Scanning:
                return("ScanningBuffer");

            case AcsBuffers.BypassMode:
                return("BypassModeBuffer");

            case AcsBuffers.ChangeWidth:
                return("ChangeWidthBuffer");

            case AcsBuffers.EmergencyStop:
                return("EmergencyStopBuffer");

            case AcsBuffers.FreePanel:
                return("FreePanelBuffer");

            case AcsBuffers.InternalMachineLoad:
                return("InternalMachineLoadBuffer");

            case AcsBuffers.LoadPanel:
                return("LoadPanelBuffer");

            case AcsBuffers.PowerOnRecoverFromEmergencyStop:
                return("PowerOnRecoverFromEmergencyStopBuffer");

            case AcsBuffers.PreReleasePanel:
                return("PreReleasePanelBuffer");

            case AcsBuffers.ReleasePanel:
                return("ReleasePanelBuffer");

            case AcsBuffers.ReloadPanel:
                return("ReloadPanelBuffer");

            case AcsBuffers.SecurePanel:
                return("SecurePanelBuffer");

            case AcsBuffers.InternalErrorExit:
                return("InternalErrorExitBuffer");

            case AcsBuffers.ConveyorHoming:
                return("ConveyorHomingBuffer");

            case AcsBuffers.WidthHoming:
                return("WidthHoming");

            case AcsBuffers.LifterHoming:
                return("LifterHoming");

            case AcsBuffers.ConveyorReset:
                return("WidthLifterConveyorReset");

            case AcsBuffers.InitIo:
                return("IO_InitializationBuffer");

            default:
                throw new ArgumentOutOfRangeException(nameof(bufferNumber), bufferNumber, null);
            }
        }
Пример #4
0
 public bool StartConveyorBuffer(AcsBuffers buffer)
 {
     return(true);
 }