Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Development of vector-based control for Ackerman steering #9

Open
wants to merge 40 commits into
base: main
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
40 commits
Select commit Hold shift + click to select a range
e01d0f3
Added version number
ann-im Sep 5, 2023
2cb6811
Omni version number
ann-im Sep 5, 2023
1c7826b
disabled comms timeout
ann-im Sep 5, 2023
cf259d5
Added gear shift logic to SetPower()
ann-im Sep 5, 2023
962ef2d
Added light command to Stop()
ann-im Sep 5, 2023
2880720
Added auto-set of speed limit with SetPower()
ann-im Sep 5, 2023
5c0f9bf
Nevermind that won't work because stop doesn't know steer angle
ann-im Sep 5, 2023
bbfdbb2
fixed speed limit data type
ann-im Sep 5, 2023
cedd831
reduced speed limit to a safe WASD speed
ann-im Sep 5, 2023
41806d3
made WASD steering usable
ann-im Sep 5, 2023
6e3b66f
hack to get steer sign correct
ann-im Sep 5, 2023
f19dd51
updated binary
ann-im Sep 5, 2023
2d32338
Merge branch 'main' into dev_ackermanVectors
ann-im Dec 19, 2023
9250443
Removed old binary ignore
ann-im Dec 19, 2023
68062c5
Attempt at SetPower using vectors
ann-im Dec 19, 2023
da4ba87
Genericized calculateSteerAngle
ann-im Dec 19, 2023
755bcff
Removed magic number
ann-im Dec 19, 2023
43d6d58
Fixed capitalization
ann-im Dec 19, 2023
619d0b0
updated modules (doesn't compile yet)
ann-im Dec 19, 2023
182442b
module tidy
ann-im Dec 19, 2023
58fe8eb
Fixed compilation with new RDK version
ann-im Dec 19, 2023
48d0bd1
added binary
ann-im Dec 19, 2023
40977f4
updated model info
ann-im Dec 19, 2023
8e734cf
Fixed 0 angular velocity case
ann-im Dec 19, 2023
a804eb1
didn't check compiling
ann-im Dec 19, 2023
26911ad
Fixes to angle
ann-im Dec 19, 2023
14109bb
Dumbed down steer angle calc
ann-im Dec 19, 2023
dff3f55
updated binary
ann-im Dec 19, 2023
d381009
Increased steering range
ann-im Dec 20, 2023
399487e
Adjusted CAN ID naming
ann-im Dec 20, 2023
3cd0618
Fixed steer mode naming
ann-im Dec 20, 2023
c4fc011
Added drive mode
ann-im Dec 20, 2023
0859be7
Switched SetPower to axle speed commands
ann-im Dec 20, 2023
77cdbae
Fixed steering being fixed at zero
ann-im Dec 20, 2023
93aa0f8
Commented out some debug messages
ann-im Dec 22, 2023
3b6b821
Made axle commands periodic
ann-im Dec 22, 2023
2cdb6fb
Added a steering offset
ann-im Dec 23, 2023
3b0fef4
Merge branch 'dev_ackermanVectors' of https://github.com/Intermode/vi…
ann-im Dec 23, 2023
aa8730a
Limited steering
ann-im Dec 24, 2023
27be83a
Fixed steering offset not getting used everywhere
ann-im Dec 24, 2023
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 0 additions & 1 deletion .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -129,6 +129,5 @@ dmypy.json
.pyre/

# Binaries and executables
modal_base_process/modal

module.tar.gz
Binary file renamed modalBase/modal → modalBase/bin/modal
100644 → 100755
Binary file not shown.
190 changes: 87 additions & 103 deletions modalBase/go.mod
Original file line number Diff line number Diff line change
Expand Up @@ -3,160 +3,144 @@ module modal
go 1.18

require (
github.com/edaniels/golog v0.0.0-20230215213219-28954395e8d0
github.com/go-daq/canbus v0.2.0
github.com/golang/geo v0.0.0-20230421003525-6adc56603217
github.com/pkg/errors v0.9.1
go.viam.com/rdk v0.2.35
go.viam.com/utils v0.1.19
go.viam.com/rdk v0.16.0
go.viam.com/utils v0.1.55
golang.org/x/sys v0.15.0
)

require (
cloud.google.com/go v0.110.0 // indirect
cloud.google.com/go/compute v1.19.1 // indirect
cloud.google.com/go v0.111.0 // indirect
cloud.google.com/go/compute v1.23.3 // indirect
cloud.google.com/go/compute/metadata v0.2.3 // indirect
cloud.google.com/go/iam v1.0.0 // indirect
cloud.google.com/go/storage v1.30.1 // indirect
git.sr.ht/~sbinet/gg v0.3.1 // indirect
github.com/Masterminds/goutils v1.1.1 // indirect
github.com/Masterminds/semver v1.5.0 // indirect
github.com/Masterminds/sprig v2.22.0+incompatible // indirect
github.com/NYTimes/gziphandler v1.1.1 // indirect
cloud.google.com/go/iam v1.1.5 // indirect
cloud.google.com/go/storage v1.36.0 // indirect
git.sr.ht/~sbinet/gg v0.5.0 // indirect
github.com/a8m/envsubst v1.4.2 // indirect
github.com/ajstarks/svgo v0.0.0-20211024235047-1546f124cd8b // indirect
github.com/aybabtme/uniplot v0.0.0-20151203143629-039c559e5e7e // indirect
github.com/benbjohnson/clock v1.3.1 // indirect
github.com/benbjohnson/clock v1.3.5 // indirect
github.com/bep/debounce v1.2.1 // indirect
github.com/blackjack/webcam v0.0.0-20230411204030-32744c21431f // indirect
github.com/bufbuild/protocompile v0.5.1 // indirect
github.com/bufbuild/protocompile v0.7.1 // indirect
github.com/campoy/embedmd v1.0.0 // indirect
github.com/cenkalti/backoff v2.2.1+incompatible // indirect
github.com/cenkalti/backoff/v4 v4.2.1 // indirect
github.com/davecgh/go-spew v1.1.1 // indirect
github.com/decred/dcrd/dcrec/secp256k1/v4 v4.2.0 // indirect
github.com/desertbit/timer v0.0.0-20180107155436-c41aec40b27f // indirect
github.com/disintegration/imaging v1.6.2 // indirect
github.com/docker/go-units v0.5.0 // indirect
github.com/edaniels/gostream v0.0.0-20230321201259-9c06d1aeaae5 // indirect
github.com/edaniels/golog v0.0.0-20230215213219-28954395e8d0 // indirect
github.com/edaniels/lidario v0.0.0-20220607182921-5879aa7b96dd // indirect
github.com/edaniels/zeroconf v1.0.5 // indirect
github.com/edaniels/zeroconf v1.0.10 // indirect
github.com/erikstmartin/go-testdb v0.0.0-20160219214506-8d10e4a1bae5 // indirect
github.com/fogleman/gg v1.3.0 // indirect
github.com/fsnotify/fsnotify v1.6.0 // indirect
github.com/fullstorydev/grpcurl v1.8.7 // indirect
github.com/gen2brain/malgo v0.11.10 // indirect
github.com/go-audio/audio v1.0.0 // indirect
github.com/go-audio/riff v1.0.0 // indirect
github.com/go-audio/transforms v0.0.0-20180121090939-51830ccc35a5 // indirect
github.com/go-audio/wav v1.1.0 // indirect
github.com/go-fonts/liberation v0.3.0 // indirect
github.com/go-gl/mathgl v1.0.0 // indirect
github.com/go-latex/latex v0.0.0-20230307184459-12ec69307ad9 // indirect
github.com/go-pdf/fpdf v0.8.0 // indirect
github.com/felixge/httpsnoop v1.0.4 // indirect
github.com/fsnotify/fsnotify v1.7.0 // indirect
github.com/fullstorydev/grpcurl v1.8.9 // indirect
github.com/go-fonts/liberation v0.3.2 // indirect
github.com/go-gl/mathgl v1.1.0 // indirect
github.com/go-latex/latex v0.0.0-20231108140139-5c1ce85aa4ea // indirect
github.com/go-logr/logr v1.3.0 // indirect
github.com/go-logr/stdr v1.2.2 // indirect
github.com/go-pdf/fpdf v0.9.0 // indirect
github.com/goccy/go-json v0.10.2 // indirect
github.com/golang-jwt/jwt/v4 v4.5.0 // indirect
github.com/golang/freetype v0.0.0-20170609003504-e2365dfdc4a0 // indirect
github.com/golang/groupcache v0.0.0-20210331224755-41bb18bfe9da // indirect
github.com/golang/protobuf v1.5.3 // indirect
github.com/golang/snappy v0.0.4 // indirect
github.com/gonuts/binary v0.2.0 // indirect
github.com/google/go-cmp v0.5.9 // indirect
github.com/google/s2a-go v0.1.2 // indirect
github.com/google/uuid v1.3.0 // indirect
github.com/googleapis/enterprise-certificate-proxy v0.2.3 // indirect
github.com/googleapis/gax-go/v2 v2.8.0 // indirect
github.com/googleapis/go-type-adapters v1.0.0 // indirect
github.com/gorilla/securecookie v1.1.1 // indirect
github.com/google/go-cmp v0.6.0 // indirect
github.com/google/s2a-go v0.1.7 // indirect
github.com/google/uuid v1.5.0 // indirect
github.com/googleapis/enterprise-certificate-proxy v0.3.2 // indirect
github.com/googleapis/gax-go/v2 v2.12.0 // indirect
github.com/gorilla/securecookie v1.1.2 // indirect
github.com/grpc-ecosystem/go-grpc-middleware v1.4.0 // indirect
github.com/grpc-ecosystem/grpc-gateway/v2 v2.15.2 // indirect
github.com/huandu/xstrings v1.3.2 // indirect
github.com/imdario/mergo v0.3.12 // indirect
github.com/grpc-ecosystem/grpc-gateway/v2 v2.18.1 // indirect
github.com/improbable-eng/grpc-web v0.15.0 // indirect
github.com/jedib0t/go-pretty/v6 v6.4.6 // indirect
github.com/jhump/protoreflect v1.15.1 // indirect
github.com/jedib0t/go-pretty/v6 v6.4.9 // indirect
github.com/jhump/protoreflect v1.15.4 // indirect
github.com/kellydunn/golang-geo v0.7.0 // indirect
github.com/klauspost/compress v1.16.5 // indirect
github.com/klauspost/compress v1.17.4 // indirect
github.com/kylelemons/go-gypsy v1.0.0 // indirect
github.com/lestrrat-go/backoff/v2 v2.0.8 // indirect
github.com/lestrrat-go/blackmagic v1.0.1 // indirect
github.com/lestrrat-go/blackmagic v1.0.2 // indirect
github.com/lestrrat-go/httpcc v1.0.1 // indirect
github.com/lestrrat-go/iter v1.0.2 // indirect
github.com/lestrrat-go/jwx v1.2.25 // indirect
github.com/lestrrat-go/jwx v1.2.27 // indirect
github.com/lestrrat-go/option v1.0.1 // indirect
github.com/lib/pq v1.10.8 // indirect
github.com/lmittmann/ppm v1.0.2 // indirect
github.com/lib/pq v1.10.9 // indirect
github.com/lucasb-eyer/go-colorful v1.2.0 // indirect
github.com/mattn/go-runewidth v0.0.14 // indirect
github.com/matttproud/golang_protobuf_extensions v1.0.4 // indirect
github.com/miekg/dns v1.1.53 // indirect
github.com/mitchellh/copystructure v1.2.0 // indirect
github.com/mattn/go-runewidth v0.0.15 // indirect
github.com/miekg/dns v1.1.57 // indirect
github.com/mitchellh/mapstructure v1.5.0 // indirect
github.com/mitchellh/reflectwalk v1.0.2 // indirect
github.com/montanaflynn/stats v0.7.0 // indirect
github.com/muesli/clusters v0.0.0-20200529215643-2700303c1762 // indirect
github.com/muesli/kmeans v0.3.1 // indirect
github.com/montanaflynn/stats v0.7.1 // indirect
github.com/pion/datachannel v1.5.5 // indirect
github.com/pion/dtls/v2 v2.2.6 // indirect
github.com/pion/ice/v2 v2.3.2 // indirect
github.com/pion/interceptor v0.1.12 // indirect
github.com/pion/dtls/v2 v2.2.8 // indirect
github.com/pion/ice/v2 v2.3.11 // indirect
github.com/pion/interceptor v0.1.25 // indirect
github.com/pion/logging v0.2.2 // indirect
github.com/pion/mdns v0.0.7 // indirect
github.com/pion/mediadevices v0.4.1-0.20230412180714-14bfaa5dbdd3 // indirect
github.com/pion/mdns v0.0.9 // indirect
github.com/pion/randutil v0.1.0 // indirect
github.com/pion/rtcp v1.2.10 // indirect
github.com/pion/rtp v1.7.13 // indirect
github.com/pion/sctp v1.8.6 // indirect
github.com/pion/rtcp v1.2.13 // indirect
github.com/pion/rtp v1.8.3 // indirect
github.com/pion/sctp v1.8.9 // indirect
github.com/pion/sdp/v3 v3.0.6 // indirect
github.com/pion/srtp/v2 v2.0.12 // indirect
github.com/pion/stun v0.4.0 // indirect
github.com/pion/transport v0.14.1 // indirect
github.com/pion/transport/v2 v2.2.0 // indirect
github.com/pion/turn/v2 v2.1.0 // indirect
github.com/pion/udp v0.1.4 // indirect
github.com/pion/udp/v2 v2.0.1 // indirect
github.com/pion/webrtc/v3 v3.1.60 // indirect
github.com/pion/srtp/v2 v2.0.18 // indirect
github.com/pion/stun v0.6.1 // indirect
github.com/pion/transport/v2 v2.2.4 // indirect
github.com/pion/turn/v2 v2.1.4 // indirect
github.com/pion/webrtc/v3 v3.2.24 // indirect
github.com/pmezard/go-difflib v1.0.0 // indirect
github.com/rivo/uniseg v0.4.4 // indirect
github.com/rs/cors v1.9.0 // indirect
github.com/rogpeppe/go-internal v1.9.0 // indirect
github.com/rs/cors v1.10.1 // indirect
github.com/sergi/go-diff v1.3.1 // indirect
github.com/smartystreets/assertions v1.13.1 // indirect
github.com/smartystreets/assertions v1.13.0 // indirect
github.com/srikrsna/protoc-gen-gotag v0.6.2 // indirect
github.com/stretchr/testify v1.8.4 // indirect
github.com/xdg-go/pbkdf2 v1.0.0 // indirect
github.com/xdg-go/scram v1.1.2 // indirect
github.com/xdg-go/stringprep v1.0.4 // indirect
github.com/xfmoulet/qoi v0.2.0 // indirect
github.com/youmark/pkcs8 v0.0.0-20201027041543-1326539a0a0a // indirect
github.com/zitadel/oidc v1.13.4 // indirect
github.com/zitadel/oidc v1.13.5 // indirect
github.com/ziutek/mymysql v1.5.4 // indirect
go-hep.org/x/hep v0.32.1 // indirect
go.mongodb.org/mongo-driver v1.12.0-prerelease.0.20221109213319-d3466eeae7a7 // indirect
go-hep.org/x/hep v0.34.1 // indirect
go.mongodb.org/mongo-driver v1.13.1 // indirect
go.opencensus.io v0.24.0 // indirect
go.uber.org/atomic v1.10.0 // indirect
go.uber.org/goleak v1.2.1 // indirect
go.opentelemetry.io/contrib/instrumentation/google.golang.org/grpc/otelgrpc v0.46.1 // indirect
go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp v0.46.1 // indirect
go.opentelemetry.io/otel v1.21.0 // indirect
go.opentelemetry.io/otel/metric v1.21.0 // indirect
go.opentelemetry.io/otel/trace v1.21.0 // indirect
go.uber.org/atomic v1.11.0 // indirect
go.uber.org/goleak v1.3.0 // indirect
go.uber.org/multierr v1.11.0 // indirect
go.uber.org/zap v1.24.0 // indirect
go.viam.com/api v0.1.113 // indirect
go.uber.org/zap v1.26.0 // indirect
go.viam.com/api v0.1.242 // indirect
go.viam.com/test v1.1.1-0.20220913152726-5da9916c08a2 // indirect
goji.io v2.0.2+incompatible // indirect
golang.org/x/crypto v0.8.0 // indirect
golang.org/x/exp v0.0.0-20230420155640-133eef4313cb // indirect
golang.org/x/image v0.7.0 // indirect
golang.org/x/mod v0.10.0 // indirect
golang.org/x/net v0.9.0 // indirect
golang.org/x/oauth2 v0.7.0 // indirect
golang.org/x/sync v0.1.0 // indirect
golang.org/x/sys v0.7.0 // indirect
golang.org/x/text v0.9.0 // indirect
golang.org/x/tools v0.8.0 // indirect
golang.org/x/xerrors v0.0.0-20220907171357-04be3eba64a2 // indirect
gonum.org/v1/gonum v0.12.0 // indirect
gonum.org/v1/plot v0.12.0 // indirect
google.golang.org/api v0.119.0 // indirect
google.golang.org/appengine v1.6.7 // indirect
google.golang.org/genproto v0.0.0-20230410155749-daa745c078e1 // indirect
google.golang.org/grpc v1.54.0 // indirect
google.golang.org/protobuf v1.30.0 // indirect
golang.org/x/crypto v0.17.0 // indirect
golang.org/x/exp v0.0.0-20231219180239-dc181d75b848 // indirect
golang.org/x/image v0.14.0 // indirect
golang.org/x/mod v0.14.0 // indirect
golang.org/x/net v0.19.0 // indirect
golang.org/x/oauth2 v0.15.0 // indirect
golang.org/x/sync v0.5.0 // indirect
golang.org/x/text v0.14.0 // indirect
golang.org/x/time v0.5.0 // indirect
golang.org/x/tools v0.16.1 // indirect
golang.org/x/xerrors v0.0.0-20231012003039-104605ab7028 // indirect
gonum.org/v1/gonum v0.14.0 // indirect
gonum.org/v1/plot v0.14.0 // indirect
google.golang.org/api v0.154.0 // indirect
google.golang.org/appengine v1.6.8 // indirect
google.golang.org/genproto v0.0.0-20231212172506-995d672761c0 // indirect
google.golang.org/genproto/googleapis/api v0.0.0-20231212172506-995d672761c0 // indirect
google.golang.org/genproto/googleapis/rpc v0.0.0-20231212172506-995d672761c0 // indirect
google.golang.org/grpc v1.60.1 // indirect
google.golang.org/protobuf v1.31.1-0.20231027082548-f4a6c1f6e5c1 // indirect
gopkg.in/square/go-jose.v2 v2.6.0 // indirect
gopkg.in/src-d/go-billy.v4 v4.3.2 // indirect
gopkg.in/yaml.v3 v3.0.1 // indirect
nhooyr.io/websocket v1.8.7 // indirect
nhooyr.io/websocket v1.8.10 // indirect
)
Loading