Last time , looking at the functions of PyEphem, I wondered if I could predict the date and time when I could see the ISS. But what are the conditions under which the ISS can be seen?
I was worried about the physical positional relationship, and it was impossible to make it more difficult than I thought! It was a moment, but I think that I should think carefully and meet the following three conditions.
--The elevation angle of the ISS as seen by the observer is positive --The elevation angle of the sun as seen by the observer is negative ――ISS is not food
import ephem
import requests
import datetime
from math import degrees as deg
tle_url = 'https://spaceflight.nasa.gov/realdata/sightings/SSapplications/Post/JavaSSOP/orbit/ISS/SVPOST.html'
loc = ('35.689922','139.692122',41) #Tokyo Metropolitan Government
home = ephem.Observer()
home.lat = loc[0]
home.lon = loc[1]
home.elevation = loc[2]
sun = ephem.Sun()
doc = requests.get(tle_url).text
lines = doc.split('\n')
for idx in range(len(lines)):
if lines[idx].strip() == 'TWO LINE MEAN ELEMENT SET':
iss = ephem.readtle(lines[idx+2], lines[idx+3], lines[idx+4])
break
utcnow = datetime.datetime.utcnow().replace(second=0,microsecond=0)
utcnow += datetime.timedelta(days=0) #For confirmation
for after in range(0, 60*24*10, 1): #Prediction interval(m),Predicted interval(m)
when = utcnow + datetime.timedelta(minutes=after)
home.date = when
sun.compute(home)
alt_sun = deg(sun.alt)
iss.compute(home)
alt_iss = deg(iss.alt)
az_iss = deg(iss.az)
iss.compute(when)
ecl = iss.eclipsed
if alt_sun <= -4 and alt_iss >= 10 and not(ecl):
jst = when+datetime.timedelta(hours=9)
print('%s - %.2f %.2f' % (jst, alt_iss, az_iss))
Predicting the last 10 days,
2020-03-07 05:38:00 - 11.98 9.07
2020-03-07 05:39:00 - 12.73 27.92
2020-03-07 05:40:00 - 11.22 46.14
2020-03-09 05:38:00 - 12.83 338.71
2020-03-09 05:39:00 - 19.49 353.95
2020-03-09 05:40:00 - 25.41 19.47
2020-03-09 05:41:00 - 24.90 51.33
--About 3 minutes from 5:38 on March 7 (maximum 12.73 degrees) --About 4 minutes from 5:38 on March 9 (maximum 25.41 degrees)
Was predicted.
Check the forecast site below.
https://spotthestation.nasa.gov/sightings/view.cfm?country=Japan®ion=None&city=Fuchu#.XlcICsvng2x
Considering the position and the error of TLE update skipping, it seems to be almost correct. (The ISS elevation angle of 10 and the sun elevation angle of -4 were tuned according to NASA's predictions. Maybe it's not so low or bright.)
Now you won't miss the ISS anymore.
Recommended Posts