public int closeInstrument() { MagnetDriveDriver.CloseChannel(channelHandle); MagnetDriveDriver.Power(0); SerializeData.SerializeObject <MagnetDriveSettings>(magSettings, settingsFile); return(0); }
public static short initDrive(string comPort, uint baudRate, string setupFile, byte axisID) { short retOpen = MagnetDriveDriver.OpenChannel(comPort, 0, 0, baudRate); //succesful opening of the channel if (retOpen > 0) { short setup = MagnetDriveDriver.LoadSetup(setupFile); if (MagnetDriveDriver.SetupAxis(1, setup) != 0) { if (MagnetDriveDriver.SelectAxis(1) != 0) { if (MagnetDriveDriver.DriveInitialisation() == 0) { retOpen = -1; } } else { retOpen = -1; } } else { retOpen = -1; } } return(retOpen); }
private void updateStatus() { if (driveStatus == 0) { lblDriveStatus.Text = "Drive status: off"; } else { lblDriveStatus.Text = "Drive status: on"; nudCurrentPos.Value = (decimal)(MagnetDriveDriver.getMotorPosition(setup) * 180 / Math.PI); } }
private void cmdInitDrive_Click(object sender, EventArgs e) { string comPort = txtComPort.Text; uint baudRate = (uint)(nudBaudRate.Value); string setupFile = txtSetupFile.Text; byte axisID = (byte)(nudAxisID.Value); string pwd = Directory.GetCurrentDirectory(); channelHandle = MagnetDriveDriver.initDrive(comPort, baudRate, setupFile, axisID); if (channelHandle > 0) { driveStatus = MagnetDriveDriver.Power(1); } updateStatus(); }
private void moveMagnet() { //find the speed of the magnet drive (converted from T/s to rad/s) double speed_T_s = (double)nudRampRate.Value; double maxPos = calibration[calibration.GetLength(0) - 1, 1]; double minPos = calibration[0, 1]; double maxField = calibration[calibration.GetLength(0) - 1, 0]; double minField = calibration[0, 0]; double speed_deg_s = Math.Abs(speed_T_s * (maxPos - minPos) / (maxField - minField)); int retval = MagnetDriveDriver.moveMagnet((double)nudSetPos.Value * Math.PI / 180, speed_deg_s * Math.PI / 180, 2, setup); updateStatus(); }
private void cmdReset_Click(object sender, EventArgs e) { MagnetDriveDriver.Reset(); //MagnetDriveDriver.ResetFault(); }