Recent Changes - Search:

Menu

editer le Menu

Sandbackup

(:translatelink style=horizontal :)

SAND v1.0 Light pollution spectrometer/photometer control

Introduction

The aim of this project is to develop a system capable of remotely controlling a spectrometer or a five filter wheel radiometer for measuring light pollution.

SAND-4 spectrometer is the result of several years of development and was preceded by various version more or less effective. The first version was developed as part of a research project of the Groupe de Recherche et d'applications en physique du CÉGEP de Sherbrooke (GRAPHYCS, http://cegepsherbrooke.qc.ca/~graphycs/site/html) but it is mainly the private society Memo Environnement (http://www.memoenvironnement.com) which supported subsequent developments. In 2008, the society gave back the system to GRAPHYCS and it was under this that SAND-3 and SAND-4 has emerged. That project is led by Martin Aubé, principal researcher at GRAPHYCS. Among other changes from SAND-2 to SAND-3, we decided to replace our spectroscopic head with the SBIG DSS-7 spectrometer but kept the SBIG ST-7MEI CCD camera. In SAND-4, we replaced ST-7MEI by ST-402 camera. This version of the SAND package do not support newer SBIG cameras nor newer linux distributions.

LPRad-1 is our first attempt to use a combination of filters to estimate light pollution levels.

We chosed a development philosophy based on a complete control from the Linux command line. The system can be controlled simply with a low speed remote connection provided by a SSH client installed on the user workstation. The computer connected to the system act as a server.

From internet:

ssh -p 2022 sand@routers_public_ip

or

inside a private network

ssh sand@servers_local_ip

From the internet, port 2022 is used instead of standard port 22 to reduce risk of attacks by hackers. A password and user name is required. The standard username is sand. The system administrator should be able to provide you the password for sand.

In addition to this SSH control, a Web interface was designed to allow remote control with a more user-friendly graphical interface. This interface can be accessed by logging into your favorite web browser:

http://routers_public_ip:2080/~sand

Once again, a password and username will be required. The username is sand. The system administrator should be able to provide the password.

Unfortunately, not all commands and options are available from the web interface. The various web browsers have not been systematically tested, so the user should carry out preliminary tests before using this interface with confidence.

Installing and configuring subsystems

Hardware profile

The system consists of the following but it would certainly be adapted to a different list of items with minor corrections.

  1. One X86 based (32 bit) computer with a minimum of 3 USB ports, 1 serial port and 1 ethernet port
    • Hardware tested:
      • Intel based desktop computer: good support
      • Netbook ASPIRE ONE : suitable but computer thermal sensors not working, also control of the mount is not possible as long as no serial port is available.
      • Acer veriton nettop : very convenient, include a serial port
  2. D-LINK router model DIR-601 or DI-604 or EBR-2310 or equivalent
  3. Web camera server D-LINK DCS-930L or DCS-920 or LINKSYS WVC54GC or WVC54GCA
  4. Security camera CCTV-PL1401 (www.camera2000.com)
  5. Camera webserver IP Video 9100A
  6. 1.8mm CCTV lens for fixed board camera 1/3 in
  7. SBIG CCD camera ST-402 or ST-7XMEI
    • ST-7XMEI: Make sure you have the top plate with a thickness of 12/64 inches because some units produced by SBIG seem to possess 16/64 inches thick top plate.
    • ST-7XMEI: Make sure to have a D-block with integreted T-mount thread.
  8. SBIG DSS-7 SBIG spectrometer
  9. SBIG CLA-7 Nikon adaptor
  10. AF Nikkor 28mm F/2.8 lens
  11. PowerUSB computer controlled power bar
  12. APC ups battery backup
  13. GPS USB BU-353 usb from GlobalSat

Environmental constraints

The critical element is the hard drive because it does not support very high nor very low temperatures. For now in the case of the installation in the observatory protected by an acrylic dome, we integrated bathroom ceiling fan (50 CFM) controlled by a thermodisc that switch on at 43 C and off at 32 deg C. For cold weather, the field test show that thermal equilibrium is reached at a differential of 16 deg C above the outside temperature. The plywood surface is 1.25 m2 while the acrylic dome covers about 0.55 m2 (a total of 1.8 m2). We can assume a mean R value of 1 (Rsi = 0.17) and estimate the heat power dissipation of 170W. A heating wire is installed in the observatory. The wire automatically starts at a temperature of 3 deg C and switch off at 7 deg C. With a 82W heating wire, we can maintain the critical temperature of ~5 deg C when outside temperature is above -18 C. With 210W heating wire, the temperature limit is -31 C. Our test at -18 C gave a stable temperature around 5 C. The heating wire of 82 W is probably working intermittently in that situation.

Table 1: Thermal constraints of the hard disk western digital WD800

Temperature
On5 C to 55 C
Off-40 C to 65 C

Basic packages installation and dependancies

  1. Install Mandriva free 2010.2 for X86 arch (mandriva-linux-free-2010.2-i586.iso)
    1. Download Mandriva free 2010.2 iso image here:
      1. ftp://195.220.108.108/linux/Mandriva/official/iso/2010.2/mandriva-linux-free-2010.2-i586.iso
    2. Burn iso image on a DVD
    3. Boot the computer from the DVD
    4. Select Install option
    5. Set basic configs
      1. Choose language
      2. Accept the license
      3. Select the keyboard layout
      4. Create a ext3 or ext4 partition mounted on / ~ 10 Gb, one swap partition of ~1 Gb, and another ext3 or ext4 partition mounted on /home (remaining disk space)
      5. Select the media - None
      6. Chose KDE
      7. Chose the root password and create at least one user account with login name = sand and chose a password
      8. Set timezone to GMT , select NTP option from all servers
      9. Configure the network settings (Wired, Manual configuration, IP 192.168.1.100, Gateway 192.168.1.1, DNS server 1 192.168.1.1, Allow users to manage the connection
      10. Do not update the system
      11. Reboot the computer when asked
    6. Login as sand
    7. Insert the installation DVD in the DVD reader
    8. Start drakconf
    9. In boot menu remove autologin option
    10. Install the following packages
      1. Search in All package (default is Packages with GUI)
      2. gcc-gfortran OR gcc3.3-g77 (download here)
      3. gcc-c++
      4. make
      5. fxload
      6. apache-base
      7. apache-mod_userdir
      8. openssh-server
      9. gnuplot
      10. libusb1.0-devel
      11. mono
      12. libpython2.6-devel
    11. Install the following packages by clicking on the links
      1. cfitsio (download here)
      2. libcfitsio-devel (download here)
      3. apache-mod_suexec (download here)
      4. mercurial (download here)
      5. OPTIONAL apcupsd (download here)
      6. libxy (download here)
      7. libwxgtk2 (download here)
      8. libfityk (download here)
      9. fityk (download here)
      10. mono-basic (download here)
      11. OPTIONAL gpsd-python (download here)
      12. OPTIONAL gpsd (download here)
      13. OPTIONAL gpsd-clients (download here)
    12. Restart the computer

SSH

SSH server allows any remote SSH client to connect to the server to remotely control system programs from the command line or to download (upstream / downstream) data. Most operations shall be also accessible via the web interface.

  • We must first be sure that the SSH server start automatically when you start the computer. Go to drakconf-> system-> manage system services, click On boot for the sshd line. Then click on Start. Go to the security-> set up your personal firewall section to allow the SSH connection to pass through the firewall (click on ssh server). Also add in advanced configuration, port 2022/tcp.

Installing SAND applications

Latest available package release on bitbucket mercurial repository

  • link gfortran to g77 if gfortran is not available, as root:
cd /usr/bin/
ln -s g77 gfortran
  • To download SAND apps. Open the konsole as sand DrakMenu>Tools>Konsole Terminal:
cd
mkdir hg
cd hg
hg clone  https://aubema@bitbucket.org/aubema/sand
cd sand
bash makeSAND
  • Copy apps to system directory as root:
cp -f /home/sand/hg/sand/* /usr/local/bin/
chmod a+x /usr/local/bin/*
  • Copy configuration file as sand:
cp -f /home/sand/hg/sand/localconfig /home/sand

Fits utility programs

Our spectra extraction scripts are using fits utilities developed by HEASARC at NASA. Some other scripts were added, but all rely on LIBFITSIO. These utilities are placed in /home/sand/hg/sand/fits-utils/ .

To install, do as root:

cd /home/sand/hg/sand/fits-utils
./fits-utility

Access to serial port ttyS0 and usb port in order to control mounts (Meade LXD-75 or Servo-city PT785-S) and to ports video0 or video1 for the mount webcam

It seems that the serial port is not available by default to a user in the terminal and the remote web control can not access it. A patch to remedy to this is to put the port in the sand group. But we must ensure that the group sand has the writing and reading permissions. All users of the system must be able to access the serial port, so you have to give permissions to read and write to all.

As root, create the script «openserial» in /etc/init.d/ with execution permission

echo '#!/bin/bash' > /etc/init.d/openserial
echo "chgrp sand /dev/ttyS0" >> /etc/init.d/openserial
echo "chmod g+rw /dev/ttyS0" >> /etc/init.d/openserial
echo "chmod a+rwx /dev/video0" >> /etc/init.d/openserial
echo "chmod a+rwx /dev/video1" >> /etc/init.d/openserial
echo "chgrp -R sand /dev/bus" >> /etc/init.d/openserial
echo "chmod -R g+rwx /dev/bus" >> /etc/init.d/openserial
chmod u+x /etc/init.d/openserial

N.B. If the computer have its builtin webcam (sometimes the case for laptops), the external mount webcam will be available on the USB device /dev/video1 instead of /dev/video0 .

As root do

cd /etc/rc5.d
ln -s ../init.d/openserial S93openserial

Nightview

Nightview is based on the SBIG driver for linux that allows to operate the CCD camera and the filter wheel. It was developed by Filip Hroch, Institute of Theoretical Physics and Astrophysics, Masaryk University, Brno, Czech Republic

  • Download and save nightview version 2009-07-08 modified by our team to integrate Jan Soldan's PUBLIC_SOFTWARE (personnal communication, october 6 2010) nightview.tar.gz
The modification concern the install_sbig_firmware.sh program located in libsbig directory. This program will automatically download the driver (PUBLIC_SOFTWARE.tar.gz) from our website.
  • As root from downloaded nightview directory (probably /home/sand/Downloads):
cd /home/sand/Downloads
gzip -d nightview*.tar.gz
tar -xvf nightview*.tar
mkdir /lib/udev/devices
  • Install sbig driver
echo "usbfs /proc/bus/usb/ usbfs defaults 0 0" >> /etc/fstab
cd nightview*/libsbig
./install_sbig_firmware.sh
  • Compile nightview without graphical interface
cd ..
./configure --without-xnightview --without-xmove
make install
  • Create the configuration file
nightview-conf /usr/local/etc/nightview.conf

Active archive

Learn more about that

Skycalc

Skycalc allows ephemeris calculations that provide, among other time of the astronomical twilight ans sunset. These data will be used to manage the launch of observation requests. However a number of additional information will also be archived in the execution log file as the percentage of the lunar disk illuminated.

  1. Download skycalc.c from link below and save file (probably in /home/sand/Downloads)
  2. As root do:
cd /home/sand/Downloads
gzip -d skycalc.c.gz
cc skycalc.c -o skycalc -lm
cp skycalc /usr/local/bin/

Lear more

skycalc manual

pyephem

Another ephemeris library using python.

cd /$HOME/Downloads
gzip -d pyephem-3.7.5.1.tar.gz
tar -xvf pyephem-3.7.5.1.tar
  • As root, compile the library
cd pyephem-3.7.5.1
python setup.py install

Servo city PT785-S Pan / Tilt mount with pololu Micro Maestro 6-Channel USB Servo Controller

Only do this step if you have this hardware. The default is the Meade's LXD-75 mount via autostar handpad 497. PT785-S is clearly less accurate (of the order of 1 deg) but it could be enough as light pollution do not varry at high angular frequencies.

  1. As sand do:
cd /home/sand/Downloads
gzip -d maestro-linux.tar.gz
tar -xvf maestro-linux.tar
cd maestro_linux
  1. As root do:
cd /home/sand/Downloads/maestro_linux
cp * /usr/local/bin

D-LINK router configuration

The router is useful when SAND is connected to the Internet and that the appropriate ports are open to take control of the instrument remotely. If the system is not connected to the internet, a simple network switch or hub is sufficient.

  • Router local IP: 192.168.1.1
  • Disable DHCP server and attribute Fixed IP as follow:
    • 192.168.1.100 = control computer
    • 192.168.1.101 = Webcam server ambiant luminosity
    • 192.168.1.102 = Webcam server night sky
    • 192.168.1.other = any other computer connected temporarily or permanently to the router
  • Create a virtual server to redirect port 2022 of the router toward SSH port 22 of 192.168.1.100
  • Do the same for port 2080 to allow web access redirection (port 80)
  • Create virtual server from port 2180 toward 192.168.1.101 port 80 (webcam server). This redirection will allow a user to see the luminosity webcam image from the web even if the computer is off.
  • Create virtual server from port 2280 toward 192.168.1.102 port 80 (webcam server). This redirection will allow a user to see the nightsky webcam image from the web even if the computer is off.

Apache server

We are using the Apache web server. This server allow the remote control from a web interface. It allow also browsing the database.

To activate the web server, we must:

  • Start httpd service and click on Boot startup (use drakconf via system-> Manage system services)
  • Move to the security section and allow http (web server) from the firewall rules. Allow also port 2080/tcp (advanced config).
  • As root, modify /etc/httpd/conf/httpd.conf .
echo "UserDir public_html" >>/etc/httpd/conf/httpd.conf
echo "<Directory /home/*/public_html>" >>/etc/httpd/conf/httpd.conf
echo " AllowOverride All " >>/etc/httpd/conf/httpd.conf
echo " Options MultiViews -Indexes Includes FollowSymLinks" >>/etc/httpd/conf/httpd.conf
echo " <IfModule mod_access.c> " >>/etc/httpd/conf/httpd.conf
echo " Order allow,deny " >>/etc/httpd/conf/httpd.conf
echo " Allow from all " >>/etc/httpd/conf/httpd.conf
echo " </IfModule> " >>/etc/httpd/conf/httpd.conf
echo "</Directory> " >>/etc/httpd/conf/httpd.conf
echo "<Directory /home/sand/public_html/cgi-bin>" >>/etc/httpd/conf/httpd.conf
echo " AllowOverride All " >>/etc/httpd/conf/httpd.conf
echo " Options +Indexes FollowSymLinks ExecCGI " >>/etc/httpd/conf/httpd.conf
echo " <IfModule mod_access.c> " >>/etc/httpd/conf/httpd.conf
echo " Order allow,deny " >>/etc/httpd/conf/httpd.conf
echo " Allow from all " >>/etc/httpd/conf/httpd.conf
echo " </IfModule> " >>/etc/httpd/conf/httpd.conf
echo "</Directory>" >>/etc/httpd/conf/httpd.conf
echo "<Directory /home/sand/public_html/data> " >>/etc/httpd/conf/httpd.conf
echo " Options +Indexes " >>/etc/httpd/conf/httpd.conf
echo "</Directory>" >>/etc/httpd/conf/httpd.conf
  • Restart httpd. As root do
service httpd restart
  • Be shure that the directory /home/sand is executable by all. As root do:
cd /home
chmod a+x sand
  • As sand, create the directory /home/sand/public_html modify the permissions by doing:
mkdir /home/sand/public_html
cd
chmod a+rx /home/sand/public_html
  • As sand do:
mkdir /home/sand/public_html/cgi-bin
mkdir /home/sand/public_html/data
cd /home/sand/public_html/cgi-bin
ln -s /home/sand/public_html/data data
  • Into /home/sand/public_html as sand, create the file .htaccess:
cd /home/sand/public_html
echo "AuthUserFile /home/sand/.htpasswd" > .htaccess
echo "AuthGroupFile /dev/null" >> .htaccess
echo "AuthName \"Acces securise au site\"" >> .htaccess
echo "AuthType Basic" >> .htaccess
echo "<LIMIT GET POST>" >> .htaccess
echo " Require valid-user" >> .htaccess
echo "</LIMIT>" >> .htaccess
  • Goto /home/sand/public_html/data , as sand, create the file .htaccess with this content:
cd /home/sand/public_html/data
echo "AuthUserFile /home/sand/.htpasswd" > .htaccess
echo " AuthGroupFile /dev/null" >> .htaccess
echo " AuthName \"Acces securise au site\"" >> .htaccess
echo " AuthType Basic" >> .htaccess
echo " <LIMIT GET POST>" >> .htaccess
echo " Require valid-user" >> .htaccess
echo " </LIMIT>" >> .htaccess
  • Go to /home/sand/ as sand do:
cd /home/sand
/usr/sbin/htpasswd -c /home/sand/.htpasswd sand
  • As sand, install cgi scripts and thml pages:
cp /home/sand/hg/sand/cgi-bin/* /home/sand/public_html/cgi-bin/
cp /home/sand/hg/sand/html/* /home/sand/public_html/
  • As sand, remove write permissions for other and group of all cgi scripts located in /home/sand/cgi-bin :
chmod go-w /home/sand/public_html/cgi-bin/*
  • Then if some files are not accessibles via the web interface, do as sand
chmod -R a+r /home/sand/public_html

Luminosity Webcam server LINKSYS WVC54GC ou D-LINK DCS-920 et IPVideo9100A

We are using 2 webcam server to track cloudiness and transparency of the window during day time and clear sky during night. The first webcam server is also usefull to measure the ambiant luminosity. This is obtained by taking the mean grey level of the image. If the mean grey level is higher that a given treshold (typically 10 or 20) then the observe script will pause for 15 min before make another verification of the mean grey level. Observe can also decide to begin observation if the ambiant luminosity is under the threshold when the starting observation time is more than 12 hours later.

Luminosity camera

  • Giving that we can choose between many webcam server models, it is absolutely necessary to specify the model in the /home/sand/localconfig file.
  • It is also required to set the network setting so that the DHCP is disabled. We are using fixed address 192.168.1.101 for the Luminosity webcam server.
  • You should add the sand user in the webcam configuration interface with password that fit the one in the /usr/local/bin/webcamimg script.

Night Sky camera

  • Another webcam server may be used to monitor the night sky. This device should have ip address 192.168.1.102. The user should use the web interface to see this image.
  • Again giving that we can choose webcam server model, it is absolutely necessary to specify the model in the /home/sand/localconfig.

Configuring a IPVideo9100A webcam server

  • To configure this server, you need to use internet explorer on a windows7 system of lower connected to the local network.
  • Look to the router client list to find the IP address of the server and enter the address in the browser.
  • Configure an administrator password. The factory default are often username administrator passwd 1234
  • Create the sand account passwd that fit the content of /usr/local/bin/webcamimg
  • Set image quality to high, resolution to 640*480, frequency to outdoor
  • Set Sprits=1, Source=1 connect the camera port in the video connector opposite to the power connector.
  • Set the network config as follow: Lan=manually , IP address=192.168.1.102 Subnet mask=255.255.255.0 Default gateway=192.168.1.1 DNS1=192.168.1.1

crontab

The crond daemon is scheduling repetitive task on lilux system. Users who have the right to use crond can schedule their own tasks to crond. We are using crond to schedule a webcam acquisition every 15 min and to create an animated gif with the last 6 hours images.

Allow sand user to use crond

As root, allow sand to use cron by doing:

echo sand >>/etc/cron.allow

Add program webcamimg to the crond schedule

As sand, edit crontab

cd
crontab -e

Add the following content:

*/15 * * * * /usr/local/bin/webcamimg

Add program checkmysystem.bash and restartskycam.bash to the root crond schedule

As root, edit crontab

cd
crontab -e

Add the following content:

30 10 * * * /usr/local/bin/checkmysystem.bash >> /home/sand/checkmysystem.log
13,28,43,58 * * * * /usr/local/bin/restartskycam.bash
13,28,43,58 * * * * /etc/init.d/openserial

USB GPS BU-353 from GlobalSat

The GPS is controlled by the gpsd server. The GPS startup may easily take 45 seconds (time to connect to available satallites). Sometime, the GPS do not succeed to connect to satellites. Most of the time this occur when satellites are masked by obstacles like mountains or buildings. The observe script is able to extract latitude and longitude from the GPS and use them for ephemeris calculations. To be shure that the gpsd server will startup with the system do the following steps.

As root create the script gpsstart into /etc/init.d .

cd /etc/init.d
echo "#!/bin/bash" > gpsstart
echo "/usr/sbin/gpsd /dev/ttyUSB0" >> gpsstart

As root do:

cd /etc/init.d
chmod a+x gpsstart

As root do:

cd /etc/rc5.d
ln -s ../init.d/gpsstart S94gpsstart

UPS control

The UPS is a power battery backup. It will protect the system against power fluctuations and will allow the system to continue its ongoing tasks during short power failure.

  • Use an APC UPS
  • As root do:
service apcupsd start
  • In drakconf->system->services and deamons et enable the apcupsd deamon on startup. Then startup the deamon.
  • As root be shure that everything is working proberly by doing:
apcaccess

Monitoring system sensors

On a regular pc, we can use thermal sensors to monitor the internal temperature of obsand.

  • As root do:
sensors-detect
  • The user sand can obtain sensors readout by doing:
sensors
  • It is also possible to do the readout from the web interface.

System reboot

Now all the relevant software are installed, in order to activate all newly added functionalities, restart the computer.

Configuring the spectrometer

Opto-mechanical alignment and focussing

The spectrometer may be aligned following the procedure described in the document titled Operating instructions for the Santa Brabara Instrument Group Deep Space Spectrograph (DSS-7). In that case, it may be usefull to keep a windows partition since CCDOPS is convenient to make alignment with the focus mode.

We suggest here an alternative step by step procedure to make the optical alingment and focussion in linux.

The DSS-7 have a set of 4 air slits of various width. We are using the thinnest (the one giving the darkest spectrum and thinnest spectral lines). This slit possess a width of 50 microns of 1.45 mm in length.

Table 3: Field of view of the spectrometer:

Objective focal length Field of view
(deg.)
Slit: 1.45 mm x 50 microns
28 mm 2.967 x 0.102 deg
35 mm 2.374 x 0.082 deg
50 mm 1.662 x 0.057 deg

SAND-4 version

To get the proper spectral image orientation on the CCd matrix (UV to the left and IR at right), the DSS-7 should be attached to the ST-402 camera according to the image below.

Figure 1: Proper orientation of the ST-402 relative to DSS-7

  • Remove the top plate of the spectrometer and remove the rose foam inside. Then put back the top plate. *Point the spectrometer toward a white target illuminated with a fluocompact lamp.
  • Focus the slit image on the camera. Unscrew the 2 screws on a small rectangle plate on top of the spectrometre (top defined according to Figure 1 orientation). Take a picture by doing:
night_exposure -b 1 -t 0.121 -pn
display nightview.fits &
rm -f nightview.fits

Then move the small plate in a given way and take another picture. Repeat this step as long as the image of the slit is not the sharpest you can have. At the end, thighten the 2 screws.

  • Open the top plate again and move the grating in the imaging position and turn the slit assembly to remove the slits from the field of view. Then put back the top plate.
  • Attach the camera lens to tha CLA-7 adaptor and screw the adaptor into the DSS-7 spectrometer.
  • Set the camera distace to infinity and apperture to F2.8
  • Focus the image at infinity by reproducing the commands given in step 3 above. That time you want to obtain the sharpest image you can of a remote scenery located in front of the lens.
  • When the image is sharp, tighten the 6 small screws of the CLA-7 adaptor.
  • Open once again the top plate and move back the grating to spectral position and turn back the slits. Then put some hot glue on the arm of the grating assembly and on the slit assembly. Those two components should not move in the future. Put back the top plate.

Figure 2

  • Now it is time to center the spectrum on the image. Ideally you should place the spectrometre in the orientation illustrated in fig 3 below.

Take note that at this step you should have the camera lens attached even if it is not shown on figure 3.

  • Turn the DSS-7 relatively to the camera to obtain spectrum almost horizontal.
  • Then unscrew the 3 brass screws and move the spectrometer in the camera lens direction and then in ist perpendicular direction. At the end of this step, the darkest spectrum should be more or less centered in the vertical axis of the image, and you should see two the two spectral lines at the left of the image. Thighten the 3 brass screw and glue that moving part to the rest of the spectrometer.
  • Now we have to be shure that a spectral line is totally vertical on the image. To do so, you can rotate the spectrometer relatively to the camera. This step is very important since it will determine the signal to noise ratio. You can use the vertical edge of another window to be shure that the spectral line is really vertical on the image. When it is totally vertical, tighten the 3 screws attaching the DSS-7 to the camera D block and put some glue between the camera and the spectrometer.

At the end of the alignment procedure, the image of a white surface lighted by a fluocompact lamp, should be similar to image of table 4. We can clearly see on this image the 4 slits dispersion. These slits allow to cover a large span of sensitivity/spectral resolution. We are normally using the highest resolution that keep the signal to noise ratio at a reasonable level. On the same figure, we can notice that the spectral dispersion is correctly alligned horizontally (relative to the red rectangle). But the most important is to be shure that a given spectral line is precisely vertical on the image. This vertical alignment is crutial to get a maximum signal to noise ratio and an optimal spectral resolution. Sometimes the optical assembly is not perfectly done by SBIG and this may result in non perfect orthogonality between the spectral line and the spectral dispersion. This is not a big problem.

Securing moving components

The DSS-7 spectrometer contain some moving components (the air slit and the grating). Moreover, the grating is supported on a flexible shaft. These moving parts have the disadvantage that if we move the orientation of the spectrometer, there is some small change in grating orientation and then the spectrum moves on the CCD image. We decided to glue those moving parts. We used melted glue applied with a glue gun. That kind of glue may be remove (not without pain...) if required. Refer to figure 2 above to see where the glued spots should be applied. It should be also a good idea to glue the coupling fo the camera and the spectrometer and the spectrometer plate if you plan to travel with the instrument. This will prevent unwanted spectral calibration shifts.

Parameters for spectral calibration

In order to extract the spectral information of the desired air slit from the CCD image we should specify the line numbers of the beginning and end of the spectrum. As an example, on the image show in table 4, we had measured 136 and 218. This information have to appear in the spectral calibration file. There will be different values for different spectrometers units. More over these values may change if the instrument is violently shocked. It could be a good idea to keep an image of a uniform surface lighted by a fluocompact bulb as a reference. This image may be used later to confirm that the spectral calibration had not changed. The spectral calibration file name should allow to clearly identify the spectrometer unit and should contain the date of the calibration process.

Here is an example of a spectral calibration file

gain= .54442 oorigin= 400.7 quad= 0.
lineup= 91 linedown= 175

The conversion pixel to wavelength is done by doing: {#Wavelength(nm)=quad \times {pixel}^2 + gain \times pixel + oorigin #}

Table 4: Spectral alignment and calibration

Typical spectrum of a fluo-compact Spetral line wavelength
(nm)
405.4
436.6
487.7
542.4
546.5
593.4
599.7
611.6
631.1
650.8
662.6
687.7
693.7
707 et 709
712.3
760.0
source

Note that the wavelengths provided in table above are for the peak of the spectral line as observed with a real fluocompact light bulb. This is why it is equal to the nominal wavelength of the given chemical element

To determine the spectral calibration parameters, you will need to identify the pixel position on the CCD image of spectral lines identified in table 4 above. The you can use a fitting application like fityk to fit a second order polynomial on the data assuming that x are the pixel position and y the wavelength in nm. But it is important to note that for us, the first pixel of the image is at position 1 (not 0 as it is in display program).

Figure 3: Example of spectral calibration with OpenOffice Calc. For that case we set the curve to linear since OpenOffice is not able to fit 2nd order polynomials Download openoffice calc file.

For the case presented in figure 3, gain= 0.54056, oorigin= 397.8097 and quad= 0. .

OBSAND-2 automated observatory

The OBSAND-2 observatory is a protecting structure that keeps the spectrometer safe from the outdoor elements and from the extreme temperature variations. OBSAND-2’s objective is to allow the system to be continually operating with its robotized mounting. OBSAND-2 follows a first version called OBSAND and developed by mechanical engineering students (Université de Sherbrooke) and electrical engineering students (Cégep de Sherbrooke) supervised by Martin Aubé (Cégep/Université de Sherbrooke) and Chloé Legris (AstroLab du Mont-Mégantic). Due to the complexity of the construction and the maintenance of the OBSAND, we decided here to design a simplified observatory called OBSAND-2.

Figure 4: OBSAND-2 at Sherbrooke University, Quebec, Canada with SAND-3A inside

SAND-3A spectrometer

SAND-3A was optimized for a fixed installation but can be easily carried on a plane. It consists in a smaller box than OBSAND-2. It has the dimensions of a hand-luggage and can be carried in the cabin. SAND-3 is provided with a starphire glass that can be washed more times. This version was conceived for its installation in China. It has a power of 45 Watt, and can reach 65 Watt when its heating cable is in operation (less than 5 C). The system is controlled by an Acer Aspire One netbook. OBSAND-3 doesn’t include any mounting, and must be aligned in order to point at the zenith. SAND-3A includes less components than OBSAND-2. Here is a list of the revoved components:

  • LXD-75 mount
  • UPS
  • The computer is substituted by a netbook (ASPIRE ONE de Acer).
  • GPS
  • Mount WEBcam
  • The bathroom fan is substituted by a 1 1/2'' computer fan working on 12 V.
  • Dessicant.

Img:obsand3-00.jpg Δ

Figure 5: SAND-3A at AIOFM center Hefei, Anhui, China

For now, SAND-3 isn’t adapted to the very cold climatic conditions because its provided with a heating cable of 21 Watt only.

External size of the box:

height=13 po
width=9 po
depth=22 po

Mass:

SAND-3B spectrometer

This SAND version is intended for ponctual measurements but can be installed permanently. The main idea is to localize the computer-router tandem far from the webcam server and the spectrometer. The computer and the router are then safely set indoor, while only the spectrometer and the webcam server are exposed to the outdoor elements. In order to assure the communication between the outdoor unit and the indoor control center, we use a network cable for the webcam server and a USB->CAT5 converter for the spectrometer. The outdoor unit must also be powered by electricity. Here is a list of the non present components :

  • LXD-75 mount
  • GPS
  • Mount WEBcam
  • Fan
  • Dessicant

The box protecting the spectrometer is the 516-0010 HAMMOND MFG model. Its dimensions are 8.5po x 14.38po x 9.25po (height). It has its own natural ventilating slits. A mosquito net has been placed on the interior side in front of those slits in order to repeal as much insects as possible.

  
  
  

Figure 6: SAND-3B at Sherbrooke University, Quebec, Canada

Development documentation

Here

Todo list

Tâche Date de réalisation
Explorer HEASOFT http://heasarc.gsfc.nasa.gov/docs/software/lheasoft/download.html
Mettre des limit switch pour la monture
Ajouter une commande "panic button" pour tout tuer ce qui a trait au mouvement de la monture (auto-obs, observe, movetoel, movetoaz, moveup, movedown, moveeast, movewest, night...
Ajouter le bouton panique dans l'interface web

User's guide

Jump to SAND user's guide

Edit - History - Print - Recent Changes - Search
Page last modified on April 11, 2016, at 02:38 pm UTC