It’s very raw and unfinished, but already running. So I’m imitating a couple of CAN sensors, the PVEA-CI valve and a rudimentary steering cylinder. This will allow me to run the “tractor” on the python code and hook up the Teensy board that’s actually running the AOG code on the desktop. Just need to add a routine for the steering geometry to close the loop to the wheel angle sensor. Here some screenies from the test program, first it runs some random angles for the SASAIID steering wheel angle sensor and sends out the traffic to CAN, then the same thing for the WAS. Next, it’s waiting for user input so when I’m manually sending the valve flow command to bus, it gets parsed, converted to flow value and ultimately to piston movement, in the code it’s just advancing with a fixed timestep of 0.1 sec.
And now with the steering rack added, takes as input the pin, rod end and rack end positions to calculate the steering angle from cylinder displacement, this is for the right wheel so you’ll get the asymmetry as you get with the actual steering. It also picks the angle and sends the message back to CAN now. Git updated, also added a 20 Hz loop so the “steering” runs in the background in the demo.
I have done Project one succesfully. Project two i can’t do because a don’t have a autosteer-ready tractor. So i used the Show_All_CAN_Messages.ino to read the canbus of my Fendt 926 gen3. Now the problem is that i can read the G-bus, but not the K-bus. If i connect can_low left and can_high right on the K-bus the screen of the tractor gives the message ‘Can-bus shut off’ and the software from the tractor reboots. So i tested voltage and had negative right and positive left. (In the manual it is the other way around.) Then i connected Can_low right and Can_high left, but that gave no can-messages.
Can someone tell me what’s wrong?
The virtual test setup is alive - now true hardware in the loop. Need to do some tidying up, teensy is running modified ino to read was from can and send commands to pvea-ci valve.
Successful day yesterday trailing shoe tanking on steep ground with AOG via teensy can bus doing a brilliant job of following the line as can be seen on the video. No gaps. No overlap.
Section controlling the tanker is more a proof of concept. In reality it’s unnecessary and OTT for the tanker. Manual operation with work switch actuated by the go and end buttons would be better. Easy enough to implement with only a few lines of code.
Steer is direct AOG steerAngleSetPoint sent to the Fendt steer angle. Requires taming of the AOG settings but works quite well. I did implement another method on 4.3.10 with the arduino setup. Running a steer variable that was sent to the fendt. This variable was then incremented or decremented by the AOG pwmDrive value. Unfortunately I’m really struggling to re implement this and can’t understand why!! There are some volatile interactions with WAS reading, steer variable and variable types that my head is struggling with!!
The beauty of this type of installation is it can all be easily packaged within the radius of the antenna ground plane and plugged into the fendt via a single plug, with just USB or Ethernet to the tablet. Neat.
Hello nice work?
So what is your Basic Configuration?
Was your Tractor before GPS prepared with Valve Block and so on? What have you done? Put GPS Signal to Tractor? Telling the Tractor where to drive? Is it not Normally locked by the OEM that the Feature does not work if you dont buy it?
Would be cool when you explain a little bit.