while (Serial.available() != 0 )
{
TankVal[i] = Serial.read();
i++;
}
Suppose you read two characters.
LeftTankReadVal = 0;
LeftTankReadVal = LeftTankReadVal + TankVal[0];
RightTankReadVal = 0;
RightTankReadVal = RightTankReadVal + TankVal[1];
Now, why you feel it necessary to set the value to 0 and then add a new value to it escapes me, but you did not read two ints from the serial port. You read two characters.
LeftTank.write(LeftTankVal);
delay(10);
RightTank.write(RightTankVal);
delay(10);
Why are you delaying BETWEEN moving one side and moving the other side?