Added ultrasonic sensor file, functions return values from individual sensor: ultrasonic_[ORIENTATION]
This commit is contained in:
53
src/ultrasonic.rs
Normal file
53
src/ultrasonic.rs
Normal file
@@ -0,0 +1,53 @@
|
|||||||
|
use hc_sr04::{HcSr04, Unit};
|
||||||
|
|
||||||
|
let mut ultrasonic_front = HcSr04::new(
|
||||||
|
7, // TRIGGER
|
||||||
|
1, // ECHO
|
||||||
|
Some(23_f32)
|
||||||
|
).unwrap();
|
||||||
|
|
||||||
|
let mut ultrasonic_left = HcSr04::new(
|
||||||
|
0,
|
||||||
|
4,
|
||||||
|
Some(23_f32)
|
||||||
|
).unwrap();
|
||||||
|
|
||||||
|
let mut ultrasonic_right = HcSr04::new(
|
||||||
|
2,
|
||||||
|
5,
|
||||||
|
Some(23_f32)
|
||||||
|
).unwrap();
|
||||||
|
|
||||||
|
let mut ultrasonic_rear = HcSr04::new(
|
||||||
|
3,
|
||||||
|
6,
|
||||||
|
Some(23_f32)
|
||||||
|
).unwrap();
|
||||||
|
|
||||||
|
fn get_front_dist() -> Option<i32> {
|
||||||
|
match ultrasonic_front.measure_distance(Unit::Meters).unwrap() {
|
||||||
|
Some(dist) => Some(dist),
|
||||||
|
None => None,
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
fn get_left_dist() -> Option<i32> {
|
||||||
|
match ultrasonic_left.measure_distance(Unit::Meters).unwrap() {
|
||||||
|
Some(dist) => Some(dist),
|
||||||
|
None => None,
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
fn get_right_dist() -> Option<i32> {
|
||||||
|
match ultrasonic_right.measure_distance(Unit::Meters).unwrap() {
|
||||||
|
Some(dist) => Some(dist),
|
||||||
|
None => None,
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
fn get_rear_dist() -> Option<i32> {
|
||||||
|
match ultrasonic_rear.measure_distance(Unit::Meters).unwrap() {
|
||||||
|
Some(dist) => Some(dist),
|
||||||
|
None => None,
|
||||||
|
}
|
||||||
|
}
|
||||||
Reference in New Issue
Block a user