Ace.cafe: What you say certainly makes sense, although Wikipedia seems to imply that the lambda sensor generates the voltage itself, rather than having (essentially) a variable resistance.
To understand oxygen sensor readings, it is helpful to know what is it made of and how it works.
Binary Type Oxygen Sensors There are two types of Binary oxygen sensors i) Zirconia sensor and ii) Titania sensor. They use different types of ceramic element and function differently but achieve same goal of complete combustion of fuel.
Zirconia type are made of Zirconium dioxide ceramic hollow body, that holds ambient air as reference. A thin porous layer of platinum is applied on either side of body that function as electrodes to carry signal. At temperatures of 300C, zirconia transfers oxygen ions that create voltage. The greater the difference of oxygen concentration between exhaust gas and reference air, the higher the voltage produced.
The voltage production is thus a property of this element used to make them. In lean conditions, voltage is about 0.1V and in fuel rich (no oxygen) it is 0.9V.
Here is important part - There is VERY SHARP change in voltage around the stoichiometric point. So the readings are always in a big flux from high to low quickly and back up as fuel injector adjusts fuel.
Titania Type sensors look the same as above but these sensors do NOT generate voltage.
They offer electrical resistance which changes with oxygen concentration. In a lean mixture (lots of oxygen), the resistance increases. When there is rich mixture (no oxygen), the resistance decreases.
Titania sensors alter the voltage of signal that is supplied by computer ECU.
At the stoichiometric point there is a LARGE change in resistance. These sensors respond faster and are smaller than zirconia type. They have internal heating element.
Essentially the system oscillates between 'Oxygen' and 'No Oxygen' which is read as either 0.9V or 0.1V. The intermediate values quickly slide up or down because of steep slope of the curve as the fuel is altered back and forth.
Pause here because RE has Binary Lambda sensor.