AOG without wheel angle sensor

Isn’t that called cheating :rofl:

You could do something similar with hydraulics using the estimated flow from the valve?

1 Like

There is a possibility of buying an encoder of a car steering angle sensor.
Something like this:
image

Mounting it to the steering shaft of the tractor…

1 Like

Well yes absolutely! :rofl:. I’m determined to keep playing with this thing, definitely with no encoder to see how good I can get it. Maize drilling, which I’m doing very soon, is a really good test for auto steer as any deviations are instantly visible in the drill roller lines.

It’s a strange system to play with and interesting to see what affects it and what it’s good at. Steer is not quite as smooth unless you filter but this adds lag, which is REALLY bad, but response to field conditions seems faster as it picks up and deals with unwanted rotations really quickly.

Speed related variable parameters may well be the way to go. Slow speed, add more filtering to soften things, higher speed drop the filtering for response time.

The WAS is working again now in the 716 so I can write a small Arduino sketch to directly compare the two systems. That will be useful for testing.

CAT 6 cable doesn’t like oil, I have learned! :joy: :grimacing:

2 Likes

Do you mean Freeplay? Like the distance you have to turn before you get a reaction?

Yes, that is what he means.

Basically what it does at the moment is use angular velocity over speed, attempt to reject rogue values and applies a tiny amount of Kalman filtering (almost none), just to soften it very slightly.

I don’t think WAS less steering has to be any different to WAS steer really. There is no delay in the system. If your steering wheels are rotated to the right you are immediately rotating to the right. Whether you measure the steer wheel angle or actual vehicle rotation, you are indirectly effectively measuring the same thing. The only difference is one is speed dependant, whilst the other isn’t.

I’ve been out maize drilling today and after using the standard setup for most of the day I gave the WAS less a try in the real world. The resulting job was indistinguishable. My code is still simple, crude and not really up to much but the BNO085 is absolutely up to the job as far as I can see.

…and to be clear, I haven’t modified AOG at all. Only the Arduino code.

I did have a video of a U turn but cocked it up because I’d got the U turn parameters wrong for the job I was doing so had to abort filming and rescue my drilling!!

12 Likes

So would this code work for a tracked tractor that does not have wheels to put a WAS on?

1 Like

I can’t see why not really. It just monitors your rotation. Tracked or wheeled the steering has the same effect. Rotation. The speed relationship may or may not be different depending on how the steering system is set up, but that is not a critical parameter given AOG is altering steer indirectly anyway. Via a motor or some sort of steer valve.

The one scenario I do think the WAS less code would need to be more closely coded is direct angle sending CAN BUS steer. But these systems, by their very nature already have a WAS and reading it is not even particularly necessary.

What frequency are you reading the gyro?

25Hz at the moment. I still don’t fully understand the interactions between BNO085 modes. Running the gyro faster than GameRotationVector causes me issues with IMU data availability. So both running at 25Hz, and so is the timed loop.

Where do you put your f9p antennA?

1 Like

it’s on the front of the roof. 126cm ahead of the rear axle. None of the hardware is changed from my normal setup. Slightly different steer settings but that’s it.

Well it’s had a test today! Leaving my first job I drove over some strong brash and ripped my WAS wiring off so I’ve just done 7 hours solid maize drilling with no WAS. 3 hours in the dark. It showed me I need to make the rogue value dumping more sensitive. Rough headlands made steer less stable but VERY rough ground didn’t upset it anywhere near as much.

[Edit…]

Sorry to add yet another video, but this shows an initial headland boundary pass then a second auto steered pass and the third pass being made. It seems to deal with curves just fine.

Now I’ve used it for an extended period I think I might have come up with a method of using reasonably heavy filtering, not as a direct filter but as a means of value rejection or limiting, based on comparison.

8 Likes

This is very awesome.

I think just having the option of WAS, no WAS is handy. Might make swather integration a snap. I get the pros of a WAS, but this steers good enough it will save much time deploying AOG on more units that may not absolutely need or are too impractical to mount a WAS.

3 Likes

I don’t actually have an application for it myself ( although it saved my day on friday!!) but it seems to me the WAS installation is a bit of a sticking point for both the less mechanically minded and also more obscure machinery. Also it’s vulnerable, even when you’ve tried your best!!

Watching the heading output of the BNO085 closely convinced me it was plenty good enough to at least try, and the basic concept is extremely simple. I originally used Game Rotation Vector yaw over time but testing on the bench it had exactly the same output as gyro rotational velocity, so I’ve used that since as I don’t need to factor in reading interval variances. I might try the GRVector method again and test it’s performance under noisy conditions.

It probably needs some more maths to refine it a bit once the concept is running as well as I can, but I want it as simple as possible for now so I know how well my filtering is doing.

3 Likes

Alan can you share with us your code to tryout?
Thanks.

1 Like

It’s basically very simple but yes, I will share the code. Just want to refine it a little bit if I can first. I’ve changed it that many times, around the same basic concept!! Testing time has been an issue but having to use it for 7 hours solid has helped quite a lot!!

3 Likes

Thanks,

I always think that multiple people have different aproach to problem,maybe some one will have idea how to improve code.

Just post it lol - even right here. It will always need tweaking, others can help and make it better 10x faster. That is the power of the open source community.

7 Likes

Yes, finally received my parts from digi key for the AOG V2 board, and already smitten with wanting to build @GoRoNb 's smd teensy 4.1 variant. Also watched version 4 get blasted into version 5. That’s just since January, you guys move very fast.