Solution:
basedir
is a server path, but baseurl
is URL to upload directory.
Try this:
$uploads = wp_upload_dir();
$path = $uploads['baseurl'] . '/12hours/';
date_default_timezone_set('Africa/Johannesburg');
$hour = date("H");
if ($hour == 10) {
echo 'it is 10am <br>';
echo '<img src="' . $path . '6-60.jpg" data-src="' . $path . '6-60.jpg" class="img-fluid lazy" alt="something" />';
}