forked from fafo/microscope-control
Make a XYStage trait, and have OpenFlexureStage implement it.
This way, we can have multiple implementations of a stage that moves in XY direction. Signed-off-by: Henner Zeller <h.zeller@acm.org>
This commit is contained in:
parent
cc8152a75d
commit
4f620ad899
3 changed files with 50 additions and 64 deletions
|
|
@ -1,10 +1,13 @@
|
|||
use clap::Parser;
|
||||
use std::{thread::sleep, time::Duration};
|
||||
|
||||
mod stage;
|
||||
mod openflexure_stage;
|
||||
|
||||
mod stage_io;
|
||||
use crate::stage_io::StageIO;
|
||||
use crate::xy_stage::XYStage;
|
||||
|
||||
mod xy_stage;
|
||||
|
||||
#[derive(clap::Parser, Debug)]
|
||||
#[command(version, about, long_about = None)]
|
||||
|
|
@ -22,28 +25,14 @@ fn main() {
|
|||
let args = CliArgs::parse();
|
||||
env_logger::init();
|
||||
let stage_io = StageIO::new(&args.stage_device, args.tty_speed).unwrap();
|
||||
let mut s = stage::Stage::new(stage_io, 1.12).unwrap();
|
||||
let origin = nalgebra::vector![3000.0, 0.0, -6000.0];
|
||||
//println!("{}", s.version().unwrap());
|
||||
|
||||
//let a = nalgebra::vector![-10000.0, 0.0, -1250.0];
|
||||
//let b = nalgebra::vector![18000.0, -15000.0, -1600.0];
|
||||
//let c = nalgebra::vector![0.0, -15000.0, -250.0];
|
||||
|
||||
let mut s = openflexure_stage::OpenFlexureStage::new(stage_io, 1.12).unwrap();
|
||||
let origin = nalgebra::vector![0.0, 0.0, 0.0];
|
||||
s.move_absolute_cartesian(origin).unwrap();
|
||||
sleep(Duration::from_secs(1));
|
||||
let mut max_xy = s.get_range();
|
||||
max_xy[2] = 0.0;
|
||||
s.move_absolute_cartesian(max_xy).unwrap();
|
||||
sleep(Duration::from_secs(5));
|
||||
//s.move_absolute_cartesian(origin + a).unwrap();
|
||||
////sleep(Duration::from_secs(5));
|
||||
////s.move_absolute_cartesian(origin).unwrap();
|
||||
////s.move_absolute_cartesian(origin + c).unwrap();
|
||||
////sleep(Duration::from_secs(5));
|
||||
////s.move_absolute_cartesian(origin + nalgebra::vector![0.0, -16000.0, -500.0]).unwrap();
|
||||
////println!("D");
|
||||
////sleep(Duration::from_secs(5));
|
||||
////s.move_absolute_cartesian(origin + nalgebra::vector![0.0, 0.0, 0.0]).unwrap();
|
||||
//println!("{:?}", s.get_position_cartesian());
|
||||
|
||||
//Ok(())
|
||||
}
|
||||
|
||||
struct App {}
|
||||
|
|
@ -61,25 +50,3 @@ impl eframe::App for App {
|
|||
});
|
||||
}
|
||||
}
|
||||
|
||||
//
|
||||
// let mut s = stage::Stage::new("/dev/ttyACM0", 1.12).unwrap();
|
||||
// let origin = nalgebra::vector![3000.0, 0.0, -6000.0];
|
||||
// println!("{}", s.version().unwrap());
|
||||
//
|
||||
// let a = nalgebra::vector![18000.0, 0.0, -1250.0];
|
||||
// let b = nalgebra::vector![18000.0, -15000.0, -1600.0];
|
||||
// let c = nalgebra::vector![0.0, -15000.0, -250.0];
|
||||
//
|
||||
// s.move_absolute_cartesian(origin).unwrap();
|
||||
// //sleep(Duration::from_secs(5));
|
||||
// //s.move_absolute_cartesian(origin + a).unwrap();
|
||||
// //sleep(Duration::from_secs(5));
|
||||
// //s.move_absolute_cartesian(origin + c).unwrap();
|
||||
// //sleep(Duration::from_secs(5));
|
||||
// //s.move_absolute_cartesian(origin + nalgebra::vector![0.0, -16000.0, -500.0]).unwrap();
|
||||
// //println!("D");
|
||||
// //sleep(Duration::from_secs(5));
|
||||
// //s.move_absolute_cartesian(origin + nalgebra::vector![0.0, 0.0, 0.0]).unwrap();
|
||||
// println!("{:?}", s.get_position_cartesian());
|
||||
//}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue