public static void TriggerScan(double m_start_scan_x, double m_end_scan_x, short m_scan_speed, double m_step_length, double m_scan_angle, string m_file_name ) { resetScanParams(); // update params start_scan_x = m_start_scan_x; end_scan_x = m_end_scan_x; scan_speed = m_scan_speed; step_length = m_step_length; plane_angle = m_scan_angle; file_name = m_file_name; // set move plan MovementController.AddMove(start_scan_x); MovementController.AddMove(end_scan_x, scan_speed); // trigger scan is_scan_task_trigger = true; is_at_start_pos_flag = false; }
private void ok_btn_Click(object sender, RoutedEventArgs e) { if (tb_x_pos.Text == "" || tb_speed.Text == "") { MessageBox.Show("Please check the input", "Error", MessageBoxButton.OK, MessageBoxImage.Error); return; } if (!PlcManager.GetInstance.IsConnect) { MessageBox.Show("Please check the PLC connection", "Error", MessageBoxButton.OK, MessageBoxImage.Error); return; } string[] destination_arr = tb_x_pos.Text.Trim().Split(','); string[] speed_arr = tb_speed.Text.Trim().Split(','); if (destination_arr.Length != speed_arr.Length) { MessageBox.Show("Please check the input", "Error", MessageBoxButton.OK, MessageBoxImage.Error); return; } for (int i = 0; i < destination_arr.Length; i++) { if (double.Parse(destination_arr[i].Trim()) < ConfigParameters.MIN_X_RANGE || double.Parse(destination_arr[i].Trim()) > ConfigParameters.MAX_X_RANGE) { MessageBox.Show("Destination is out of range", "Error", MessageBoxButton.OK, MessageBoxImage.Error); return; } Logger.Log("Add to itinerary: Destination: " + destination_arr[i].Trim() + " Speed: " + speed_arr[i].Trim()); MovementController.AddMove(double.Parse(destination_arr[i].Trim()), (short)double.Parse(speed_arr[i].Trim())); } this.Close(); }