reseting Arduino Uno using sketch

I’m having an occassional problem with a sketch I’m running that controls switching between a heat pump & a gas boiler in a domestic setting.
I’m using a DS18B20 temp sensor to monitor inside room temp.
Occassionally, the inside room temp reported by the sensor jumps from around 24 degrees C to 85 degrees C!!
Sometimes it’s a transient that returns to normal during the next pass through the the Dallas Temperature routine & at other times it stays at the 85 degree C level.
The only way I can clear this non-transient problem currently is by a manual reset of the Arduino Uno; which is not convenient if there’s no PC connected to the Arduino, which there isn’t when running normally.
The only way I can see this problem is when I’m monitoring the sketch using a PC.

Is there any way to reset the Uno from within the sketch from within either the Dallas Temperature routine or from within an ‘IF’ loop?

Not exactly, no. This question is asked fairly frequently so a search of the forums will net you more detail but you can fake it with a jump to address zero. The problem is that that will restart the arduino's software, but it doesn't reset the atmel chip to its startup state. You need external hardware to perform a true reset. That issue should be solvable by less extreme means though - IIRC 85 degrees is the default that the DS18B20 chip returns if it hasn't read the temperature - are you running it in parasitic mode?

In any event, please post your code, and possibly a schematic so people can offer more focussed advice.

The only way I can clear this non-transient problem currently is by a manual reset of the Arduino Uno; which is not convenient if there's no PC connected to the Arduino, which there isn't when running normally.

What is the PC doing to reset the Arduino? Why not just push the reset button on the Arduino?

I agree with wildbill, though. Resetting the Arduino to correct a problem with your code is not the answer.

The DS18B20 I have only returned 85°C when I didn't have a good pull-up resistor. (I wasn't using parasitic mode.)

dominator99: The only way I can clear this non-transient problem currently is by a manual reset of the Arduino Uno; which is not convenient if there's no PC connected to the Arduino, which there isn't when running normally.

Won't powering it off and back on do it? You just need a power switch. Also, you could ignore ridiculous temperatures, like over 50 degrees. If you are reading that, you are dead.