Esempio n. 1
0
File: fan.py Progetto: hiyoku/ccd10
 def set_fan_on(self):
     self.lock.set_acquire()
     try:
         SbigDriver.start_fan()
     except Exception as e:
         self.console.raise_text("Error off/on the Fan.\n{}".format(e))
     finally:
         self.lock.set_release()
         self.fanField.setText(self.fan_status())
Esempio n. 2
0
 def set_fan_on(self):
     self.lock.set_acquire()
     try:
         SbigDriver.start_fan()
     except Exception as e:
         self.console.raise_text("Error off/on the Fan.\n{}".format(e))
     finally:
         self.lock.set_release()
         self.fanField.setText(self.fan_status())
Esempio n. 3
0
    def run(self):
        try:
            tempo = datetime.utcnow().strftime('%Y%m%d_%H%M%S')
            data = tempo[0:4] + "_" + tempo[4:6] + tempo[6:8]

            data_log = datetime.utcnow().strftime('[%Y-%m-%d @ %H:%M:%S UTC]')

            from src.business.configuration.configSystem import ConfigSystem
            log_folder = ConfigSystem()

            if str(log_folder.get_log_path()) == "None":
                if log_folder():
                    name_log_folder = str(log_folder.get_log_path())
                else:
                    name_log_folder = 'Log_folder'
                    os.mkdir(name_log_folder)
            else:
                name_log_folder = str(log_folder.get_log_path())

            from src.business.configuration.configProject import ConfigProject
            ci = ConfigProject()
            name_observatory = str(ci.get_site_settings())
            name_observatory = SbigDriver.get_observatory(name_observatory)

            if int(tempo[9:11]) > 12:
                name_log = name_log_folder + "/LOG_" + name_observatory + "_" + data + '.txt'
                log = open(str(name_log), 'a')
                log.write(str(data_log) + " - " + str(self.text) + "\n")
                log.close()
            else:
                tempo = datetime.utcnow().strftime('%Y%m%d_%H%M%S')
                ano = tempo[0:4]
                mes = tempo[4:6]
                dia = tempo[6:8]
                abs_julian_day = SbigDriver.jd_to_date(
                    SbigDriver.date_to_jd(ano, mes, int(dia)) - 1)

                if 0 < abs_julian_day[2] < 10:
                    name_log = name_log_folder + "/LOG_" + name_observatory + "_" + str(
                        abs_julian_day[0]) + "_" + str(
                            abs_julian_day[1]) + "0" + str(
                                abs_julian_day[2]) + '.txt'
                    log = open(str(name_log), 'a')
                    log.write(str(data_log) + " - " + str(self.text) + "\n")
                    log.close()
                else:
                    name_log = name_log_folder + "/LOG_" + name_observatory + "_" + str(
                        abs_julian_day[0]) + "_" + str(
                            abs_julian_day[1]) + str(
                                abs_julian_day[2]) + '.txt'
                    log = open(str(name_log), 'a')
                    log.write(str(data_log) + " - " + str(self.text) + "\n")
                    log.close()
        except Exception as e:
            print(e)
Esempio n. 4
0
File: fan.py Progetto: hiyoku/ccd10
 def s_fan(self):
     self.lock.set_acquire()
     try:
         if SbigDriver.is_fanning():
             SbigDriver.stop_fan()
             self.fanField.setText('Fan Off')
         else:
             SbigDriver.start_fan()
             self.fanField.setText('Fan On')
     except Exception as e:
         self.console.raise_text("Error off/on the Fan.\n{}".format(e))
     finally:
         self.lock.set_release()
         self.fanField.setText(self.fan_status())
Esempio n. 5
0
 def s_fan(self):
     self.lock.set_acquire()
     try:
         if SbigDriver.is_fanning():
             SbigDriver.stop_fan()
             self.fanField.setText('Fan Off')
         else:
             SbigDriver.start_fan()
             self.fanField.setText('Fan On')
     except Exception as e:
         self.console.raise_text("Error off/on the Fan.\n{}".format(e))
     finally:
         self.lock.set_release()
         self.fanField.setText(self.fan_status())
Esempio n. 6
0
 def check_fan(self):
     if SbigDriver.is_fanning():
         self.console.raise_text("Fan: ON", 2)
         time.sleep(1)
     else:
         self.console.raise_text("Fan: OFF", 2)
         time.sleep(1)
Esempio n. 7
0
 def run(self):
     self.set_etime_pre_binning()
     self.lock.set_acquire()
     try:
         self.info = SbigDriver.photoshoot(self.etime * 100, self.pre, self.b)
         self.init_image()
     except Exception as e:
         print(e)
     finally:
         self.lock.set_release()
Esempio n. 8
0
 def run(self):
     self.set_etime_pre_binning()
     self.lock.set_acquire()
     try:
         self.info = SbigDriver.photoshoot(self.etime, self.pre, self.b, self.dark_photo, self.get_level1,\
                                           self.get_level2)
         self.init_image()
     except Exception as e:
         print(e)
     finally:
         self.lock.set_release()
Esempio n. 9
0
    def create_image_open(self):
        self.roda_filtros.open_shutter()
        self.set_config_take_image()
        self.lock.set_acquire()

        my_list = get_wish_filters_settings()  # list of schedule

        try:
            if self.count_aux < len(my_list):
                if self.one_photo:
                    index_of_dic = self.selected_filter
                else:
                    index_of_dic = str(my_list[self.count_aux])
                self.valores_principais_wish_filter(index_of_dic)
                self.count_aux += 1

            else:
                self.count_aux = 0
                if self.one_photo:
                    index_of_dic = self.selected_filter
                else:
                    index_of_dic = str(my_list[self.count_aux])
                self.valores_principais_wish_filter(index_of_dic)
                self.count_aux += 1

        except Exception as e:
            print("Try filter ini -> {}".format(e))

        project_infos = get_project_settings()

        name_observatory = project_infos[2][1]

        self.path, self.tempo = set_path()

        self.new_image_name = str(
            self.prefix) + "_" + str(name_observatory) + "_" + str(self.tempo)

        new_image_name = self.path + str(self.new_image_name)

        try:
            self.info_matrix = SbigDriver.photoshoot(self.exposure_time,
                                                     self.binning, 0)
        except Exception as e:
            print("self.info_matrix = SbigDriver.photoshoot ERROR -> " +
                  str(e))

        self.for_headers_dic['Open or close shutter'] = "OPEN"

        self.save_image_format(new_image_name)

        self.for_headers_dic = {}
        self.one_photo = False
        self.init_image()
        self.lock.set_release()
Esempio n. 10
0
 def log_ephem_infos(self):
     elevations = make_elevations_info()
     headers_camera = get_camera_settings()
     temp = SbigDriver.get_temperature()[3]
     set_temp = headers_camera[0]
     ephem_infos_1 = "Sun Elevation: " + str(elevations[2]) + "; Moon Elevation: " + str(elevations[1]) +\
                     "; Moon Phase: " + str(elevations[0])
     self.console.save_log(ephem_infos_1)
     time.sleep(1)
     ephem_infos_2 = "Camera Temperature: " + "{0:.2f}".format(temp) + "; Set Temperature: " +\
                     set_temp + "; Status Temp. Filtro: 25ºC"
     self.console.save_log(ephem_infos_2)
Esempio n. 11
0
 def take_dark(self):
     '''
     manda instrução para o SbigDriver para tirar uma foto dark
     '''
     try:
         self.set_etime_pre_binning()
         self.lock.set_acquire()
         self.info = SbigDriver.photoshoot(self.etime, self.pre, self.b, 1, self.get_level1, self.get_level2)
         self.init_image()
     except Exception as e:
         print(e)
     finally:
         time.sleep(1)
         self.lock.set_release()
Esempio n. 12
0
 def run(self):
     self.set_etime_pre_binning()
     self.lock.set_acquire()
     try:
         self.info = SbigDriver.photoshoot(
             self.etime, self.pre, self.b, self.dark_photo, self.get_level1,
             self.get_level2, self.get_axis_xi, self.get_axis_xf,
             self.get_axis_yi, self.get_axis_yf, self.get_ignore_crop,
             self.get_image_tif, self.get_image_fit)
         self.init_image()
     except Exception as e:
         print(e)
     finally:
         self.lock.set_release()
Esempio n. 13
0
    def create_image_close(self):
        self.roda_filtros.close_shutter()

        my_list = get_wish_filters_settings()  # list of schedule
        my_list = set(my_list)
        my_list = sorted(my_list)
        count_aux = 0

        while count_aux < len(my_list):
            self.set_config_take_image()
            self.lock.set_acquire()

            if self.one_photo:
                index_of_dic = self.selected_filter
                count_aux = 100
            else:
                index_of_dic = str(my_list[count_aux])

            self.valores_principais_wish_filter(index_of_dic)

            project_infos = get_project_settings()

            name_observatory = project_infos[2][1]

            self.path, self.tempo = set_path()

            self.new_image_name = "DARK-" + str(
                self.prefix) + "_" + str(name_observatory) + "_" + str(
                    self.tempo)

            new_image_name = self.path + str(self.new_image_name)

            try:
                self.info_matrix = SbigDriver.photoshoot(
                    self.exposure_time, self.binning, 1)
            except Exception as e:
                print("self.info_matrix = SbigDriver.photoshoot ERROR -> " +
                      str(e))

            self.for_headers_dic['Open or close shutter'] = "CLOSED"

            self.save_image_format(new_image_name)

            self.for_headers_dic = {}
            count_aux += 1
            self.init_image()
            self.lock.set_release()

            self.one_photo = False
Esempio n. 14
0
File: fan.py Progetto: hiyoku/ccd10
    def fan_status(self):
        # Acquiring the Lock
        self.lock.set_acquire()
        status = True

        try:
            # Doing requisition to Driver
            status = SbigDriver.is_fanning()
        except Exception as e:
            self.console.raise_text("Error acquiring the status of Fan.\n{}".format(e))

        # Release the Lock
        self.lock.set_release()

        return "ON" if status else "OFF"
Esempio n. 15
0
    def fan_status(self):
        # Acquiring the Lock
        self.lock.set_acquire()
        status = True

        try:
            # Doing requisition to Driver
            status = SbigDriver.is_fanning()
        except Exception as e:
            self.console.raise_text("Error acquiring the status of Fan.\n{}".format(e))

        # Release the Lock
        self.lock.set_release()

        return "ON" if status else "OFF"
Esempio n. 16
0
    def save_image_format(self, new_image_name):
        if not os.path.isdir(self.path):
            os.makedirs(self.path)

        if self.one_photo:
            print(self.path)

        self.for_headers_dic['Start Time'] = self.tempo

        try:
            self.temperatura = SbigDriver.get_temperature()
            self.temperatura = "{0:.2f}".format(float(self.temperatura[3]))
            # self.temperatura = "25"
            self.for_headers_dic['Temperature'] = self.temperatura
        except Exception as e:
            print("Exception self.temperatura -> {}".format(e))
            self.for_headers_dic['Temperature'] = "???"

        if self.get_image_png:
            try:
                save_png(self.info_matrix, new_image_name,
                         self.for_headers_dic)
            except Exception as e:
                print("Exception save_png() -> {}".format(e))
        if self.get_image_tif:
            try:
                save_tif(self.info_matrix, new_image_name)
                if self.one_photo:
                    print(new_image_name)
            except Exception as e:
                print("Exception save_tif() -> {}".format(e))
        if self.get_image_fit:
            try:
                save_fit(self.info_matrix, new_image_name,
                         self.for_headers_dic)
            except Exception as e:
                print("Exception save_fit() -> {}".format(e))
        if not self.get_image_fit and not self.get_image_tif and not self.get_image_fit:
            try:
                save_png(self.info_matrix, new_image_name,
                         self.for_headers_dic)
            except Exception as e:
                print("Exception save_png() -> {}".format(e))
Esempio n. 17
0
 def take_dark(self):
     '''
     Manda instrução para o SbigDriver para tirar uma foto dark(shooter fechado)\
     com os valores na info[]
     '''
     try:
         self.set_etime_pre_binning()
         self.lock.set_acquire()
         self.info = SbigDriver.photoshoot(
             self.etime, self.pre, self.b, 1, self.get_level1,
             self.get_level2, self.get_axis_xi, self.get_axis_xf,
             self.get_axis_yi, self.get_axis_yf, self.get_ignore_crop,
             self.get_image_tif, self.get_image_fit)
         self.init_image()
     except Exception as e:
         print(e)
     finally:
         time.sleep(1)
         self.lock.set_release()
Esempio n. 18
0
def set_headers(for_headers_dic):

    headers_camera = get_camera_settings()
    headers_project = get_project_settings()
    elevations = make_elevations_info()
    for_headers_dic['Start Time'] = Image_Path.set_path()[1]
    for_headers_dic['Binning'] = headers_camera[3]
    for_headers_dic['Set Temperature'] = headers_camera[0]
    for_headers_dic['Temperature'] = SbigDriver.get_temperature()[2]
    for_headers_dic['Imager ID'] = headers_project[2][2]
    for_headers_dic['Exposure'] = headers_camera[2]
    for_headers_dic['Filter Label'] = headers_camera[1]
    for_headers_dic['Filter Wavelength'] = get_filters_settings()[1]
    for_headers_dic['Latitude'] = headers_project[0][0]
    for_headers_dic['Longitude'] = headers_project[0][1]
    for_headers_dic['Moon Elevation'] = str(elevations[1])
    for_headers_dic['Moon Phase'] = str(elevations[0])
    for_headers_dic['Observatory'] = headers_project[2][1]
    for_headers_dic['Sun Elevation'] = str(elevations[2])

    return for_headers_dic
Esempio n. 19
0
 def check_connection():
     return SbigDriver.getlinkstatus()
Esempio n. 20
0
 def reconnect():
     return SbigDriver.open_driver(), SbigDriver.open_deviceusb(
     ), SbigDriver.establishinglink()