V5.2 Teaser

v5.2 is released officially now. Just download it and remove whatever you have been using as there are many fixes and features.

Especially reverse guidance and heading compensation for single antenna etc.

Some have used current sensor ACS712, analog output. 0 A at 2.5V
3 versions (5A, 20A and 30A)
Also search for torque disengagement.
Edit: seems ACS725 is a better choice, does DC current (10, 20 and 30 A) where 0A is 0.5 V and max around 5V
Edit 2: I did not check the code, but it seems that code is made for 0A at 2,5 V as Math writes in post 59
So when mounted between motor driver and motor, it could turn off both when detecting positive and negative current?
But I think AOG only does it for positive current, so I believe sensor must be before motor driver.

Another new Button i came across, what is the update response in the machine relay board settings for?

Regards,

JB

When off it checks the sections at 1/2 the gps fix rate, when on it is every fix update. Most of the time off is good - half the processing. unless you need super fast section response, then turn it on

I already ordered ACS712, 20A.

You would not happen to know the stall amps of the phidgets motor? Or what the trip amps usually used in AOG is?

Trying to build the motor mount so that a solenoid can operate the steering wheel gears. So if you turn off the auto steering or the ACS gets triggered the gears decouple.

I dont have a phidget, but you could set it at the point where it disengage when trying to hold steering wheel by hand. As light as you want it but still able to steer automatic.

The Phidgets 3269 motor stall current should be 10.8 A.

Thank you, 20A ACS712 will give plenty of room if the worst happens.

Only a couple last items left and I can take AOG for a rip, the Ez Guide 150 is looking sad now in a cardboard box on the sidelines.

Roger that!
Thanks Brian!

That is because you have to write the code for it. As mentioned - it isnā€™t working software.

I was playing with something like that, but need proper change in udpcommdesigner.cs in order to read this ino for external CMPS 14 .

IMU_USB_v5_0_MOD_YAWRATE.ino (5,8 KB)

                        //Angular velocity
                        ahrs.angVel = (Int16)((data[10] << 8) + data[9]);
                        ahrs.angVel /= -2;

The code is already in udpcomm as above. Send it from the imu module as 200 times the value you want to send (and the wrong way also).

Or just modify the code in udp to do what you need it to do and factor. It comes in as a short so cast to a double if you need fancy math.

I never thought about using the Z accelerometer - does it work nice and quietly?
I have been sampling the gyro at 100hz and converting that to radians per sec. Add up 10 readings and then sending that at 10 hz.

Change your ino to send on 9, 10

    Wire.requestFrom(CMPS14_ADDRESS, 2);
    while (Wire.available() < 2);
     data[14] = Wire.read();
    data[13] = Wire.read();

to

    Wire.requestFrom(CMPS14_ADDRESS, 2);
    while (Wire.available() < 2);
     data[10] = Wire.read();
    data[9] = Wire.read();

We should probably move this discussion to this topic:

I have been playing around with it as well as of late. I get the feeling it will be next level frustratingā€¦

I have never actually used it with automatic driving, but only to view the reading in the Aog screen for future development. I donā€™t have much time to try as in winter I risk ending up in a ditch. :joy:

1 Like

Do you mean like this Brian, is it correct or Iā€™m wrong?

//Angular velocity
for (int i = 0; i <= 9; i++)
{

                            ahrs.SumAngVel = (Int16)((data[10] << 8) + data[9]);
                        }
                        System.Int32 SumAngVel = ahrs.SumAngVel / 10;
                        ahrs.angVel = Convert.ToInt16(SumAngVel);

No, all that sampling needs to be done in the ino since AOG runs at 10 hz.

This is on 5.2.0, in AgIO, when configuring serial ports, I tap on the drop down for GPS serial port and if I tap elsewhere without selecting a port I get a unhandled exception, ā€œThe PortName cannot be emptyā€.

Canā€™t seem to replicate the error at all.

Hello,

The code seems to be design for a current sensor of 0A = 2.5V, with a centering of counts:

      if (steerConfig.CurrentSensor)
      {
        int16_t analogValue = analogRead(ANALOG_SENSOR_PIN);

        // When the current sensor is reading current high enough, shut off
        if (abs(((analogValue - 512)) / 10.24) >= steerConfig.PulseCountMax) //amp current limit switch off
        {
          steerSwitch = 1; // reset values like it turned off
          currentState = 1;
          previous = 0;
        }
      }

So if we want to try with USB, we shall modified the .ino to send angular velocity into data[10] and data[9] ?

Math

yes. But there is a lot to AV steering.