int Pin12 = 12;
Do you really has a 12 connected to this pin? I seriously doubt that. The purpose of using names is so that they mean something. If you decide, in the future that you need an Ethernet shield, and can no longer use pin 12, then when you assign a new value, like 8 for the pin, then pin12 will have a value of 8, and look really stupid.
Give this variable a meaningful name, like augerPin.
int val = analogRead(sensorPin);
Here's another case where a better name is needed. Two, in fact. First, it is unlikely that you have a sensor connected to the pin. In generic terms, yes, it is a sensor. But, it is an almost certainty that it did not come in a white box that said nothing more than "Sensor" on it.
Certainly, the VALUE read from the pin means something that deserves a better name.
if (analogRead(sensorPin)< 100)
if (analogRead(sensorPin)> 244)
Why is it necessary to read the pin three times? You have the value read the first time in the variable misnamed val. Use that variable instead of reading the pin twice more.
pinMode (sensorPin, INPUT);
This function, because analog pins can not be output pins, knows nothing about analog pins. So, it sets the mode for digital pin 1 to INPUT. That pin is controlled by the Serial instance. You should NOT be diddling with it. Get rid of this call.
I would like to turn pin12 off if it has been on longer then 5 min
You need to record when you turned the pin on. Use millis().
You need to clear the time when you turn the pin off (set it to 0).
On each pass through loop, you compare the current time to the time you turned on, if it is on, to see if it has been on longer than is safe. If so, turn it off.
and stay off until pin14 reads high.
This requirement needs clarification. Should the pin not turn on again only if it was shut down for safety reasons? If so, it is easy to set a flag (bool shutOffForSafety) to true when the pin is shut off for safety reasons. If that flag is set, don't turn the pin on. Clear the flag when pin 14 reads HIGH.
pin15 will activate a light that lets me know that the system is empty.
No. A variable with a meaningful name, assigned the value 15, will be used in the digitalWrite() call to activate/deactivate the pin. That variable will NOT be called pin15, will it?
In the future I would like to use send a text or an email instead of just turning on a light but one thing at a time.
Which is precisely why pin12 is a lousy name.