Files
hh/ultrasonic2relay/main.go

30 lines
426 B
Go
Raw Normal View History

2022-09-24 16:29:26 -07:00
package main
import "context"
import "fmt"
2022-09-24 16:35:03 -07:00
import "github.com/firestuff/hh/hhio"
2022-09-24 16:29:26 -07:00
func main() {
2022-09-24 16:35:03 -07:00
err := hhio.Open()
2022-09-24 16:29:26 -07:00
if err != nil {
panic(err)
}
2022-09-24 16:35:03 -07:00
defer hhio.Close()
2022-09-24 16:29:26 -07:00
2022-09-24 16:35:03 -07:00
us := hhio.NewUltrasonic(context.Background(), 6, 5)
2022-09-24 16:39:06 -07:00
mf := hhio.NewMedianFilter(us.C, 47)
r := hhio.NewRelay(21)
2022-09-24 16:29:26 -07:00
for dist := range mf {
fmt.Printf("%f\n", dist)
2022-09-24 16:39:06 -07:00
if dist < 50 {
r.On()
} else if dist > 70 {
r.Off()
}
2022-09-24 16:29:26 -07:00
}
}