It sounds like a faulty sensor or corroded rings. I had a customers car do exactly the same - start up - self check all fine light goes out drive it over 30ish and the light would come back on.
I changed the drivers sensor becuase it snapped when i removed it and cleaned the sensor hole on the hub because the sensor gap was too big. Be careful when you bolt the sensors back in make sure they are properly seated before starting to put the bolt in don't expect the bolt to pull the sensor down because it will deform and look like its seated but it's not.