Commit a13875a2 authored by Achim Morschhauser's avatar Achim Morschhauser
Browse files

Calibrate ADC #2

parent 8942b29f
# !01<ObsDaq V5.6.0>!01<Apr 1 2017 20:38:27>
# !01SNOD-56A17021
# PROBLEM DESCRIPTION:
# --------------------
# Data is received in blocks of 38 records (see example below). A time lag
# of ~60 ms is observed after each of these blocks until new data arrives.
# INFO:
# -----
# Was running in free-run mode ($01CB) at 640 Hz (dd=92). Internal trigger is
# switched off (#01PP00000000).
# ObsDAQ is connected to laptop via RS485 and RS485-USB converter.
# Time is time of first byte of record arriving at serial port. Serial port is
# noncanonical and provides data as it becomes available. I have carefully
# checked no other part of the code is blocking code execution.
2018 11 09 10 19 41.79071 -0.00417 -0.00386 -0.00091 -99999.00 -99999.00
2018 11 09 10 19 41.79088 -0.00418 -0.00385 -0.00091 -99999.00 -99999.00
2018 11 09 10 19 41.79091 -0.00417 -0.00385 -0.00091 -99999.00 -99999.00
2018 11 09 10 19 41.85007 -0.00414 -0.00383 -0.00092 -99999.00 -99999.00
2018 11 09 10 19 41.85009 -0.00416 -0.00386 -0.00091 -99999.00 -99999.00
2018 11 09 10 19 41.85011 -0.00417 -0.00386 -0.00091 -99999.00 -99999.00
2018 11 09 10 19 41.85012 -0.00416 -0.00385 -0.00088 -99999.00 -99999.00
2018 11 09 10 19 41.85014 -0.00416 -0.00384 -0.00090 -99999.00 -99999.00
2018 11 09 10 19 41.85016 -0.00417 -0.00385 -0.00092 -99999.00 -99999.00
2018 11 09 10 19 41.85017 -0.00417 -0.00385 -0.00092 -99999.00 -99999.00
2018 11 09 10 19 41.85019 -0.00416 -0.00385 -0.00092 -99999.00 -99999.00
2018 11 09 10 19 41.85021 -0.00416 -0.00385 -0.00091 -99999.00 -99999.00
2018 11 09 10 19 41.85023 -0.00417 -0.00387 -0.00091 -99999.00 -99999.00
2018 11 09 10 19 41.85024 -0.00416 -0.00386 -0.00091 -99999.00 -99999.00
2018 11 09 10 19 41.85026 -0.00417 -0.00385 -0.00089 -99999.00 -99999.00
2018 11 09 10 19 41.85028 -0.00417 -0.00385 -0.00092 -99999.00 -99999.00
2018 11 09 10 19 41.85029 -0.00417 -0.00385 -0.00091 -99999.00 -99999.00
2018 11 09 10 19 41.85031 -0.00417 -0.00384 -0.00093 -99999.00 -99999.00
2018 11 09 10 19 41.85033 -0.00417 -0.00385 -0.00091 -99999.00 -99999.00
2018 11 09 10 19 41.85034 -0.00415 -0.00384 -0.00090 -99999.00 -99999.00
2018 11 09 10 19 41.85036 -0.00416 -0.00384 -0.00090 -99999.00 -99999.00
2018 11 09 10 19 41.85038 -0.00416 -0.00385 -0.00090 -99999.00 -99999.00
2018 11 09 10 19 41.85039 -0.00416 -0.00385 -0.00092 -99999.00 -99999.00
2018 11 09 10 19 41.85041 -0.00416 -0.00385 -0.00093 -99999.00 -99999.00
2018 11 09 10 19 41.85043 -0.00418 -0.00384 -0.00093 -99999.00 -99999.00
2018 11 09 10 19 41.85045 -0.00418 -0.00384 -0.00093 -99999.00 -99999.00
2018 11 09 10 19 41.85046 -0.00417 -0.00385 -0.00092 -99999.00 -99999.00
2018 11 09 10 19 41.85049 -0.00416 -0.00385 -0.00090 -99999.00 -99999.00
2018 11 09 10 19 41.85051 -0.00417 -0.00385 -0.00090 -99999.00 -99999.00
2018 11 09 10 19 41.85054 -0.00416 -0.00386 -0.00091 -99999.00 -99999.00
2018 11 09 10 19 41.85056 -0.00416 -0.00384 -0.00092 -99999.00 -99999.00
2018 11 09 10 19 41.85058 -0.00417 -0.00384 -0.00091 -99999.00 -99999.00
2018 11 09 10 19 41.85060 -0.00417 -0.00384 -0.00090 -99999.00 -99999.00
2018 11 09 10 19 41.85061 -0.00415 -0.00385 -0.00089 -99999.00 -99999.00
2018 11 09 10 19 41.85063 -0.00418 -0.00385 -0.00091 -99999.00 -99999.00
2018 11 09 10 19 41.85065 -0.00417 -0.00383 -0.00090 -99999.00 -99999.00
2018 11 09 10 19 41.85067 -0.00416 -0.00385 -0.00093 -99999.00 -99999.00
2018 11 09 10 19 41.85068 -0.00418 -0.00385 -0.00092 -99999.00 -99999.00
2018 11 09 10 19 41.85070 -0.00418 -0.00385 -0.00091 -99999.00 -99999.00
2018 11 09 10 19 41.85072 -0.00417 -0.00385 -0.00091 -99999.00 -99999.00
2018 11 09 10 19 41.85074 -0.00417 -0.00385 -0.00089 -99999.00 -99999.00
2018 11 09 10 19 41.90968 -0.00419 -0.00385 -0.00090 -99999.00 -99999.00
2018 11 09 10 19 41.90971 -0.00416 -0.00384 -0.00090 -99999.00 -99999.00
2018 11 09 10 19 41.90973 -0.00417 -0.00385 -0.00091 -99999.00 -99999.00
2018 11 09 10 19 41.90974 -0.00416 -0.00385 -0.00092 -99999.00 -99999.00
2018 11 09 10 19 41.90976 -0.00416 -0.00384 -0.00088 -99999.00 -99999.00
2018 11 09 10 19 41.90978 -0.00415 -0.00385 -0.00089 -99999.00 -99999.00
2018 11 09 10 19 41.90979 -0.00417 -0.00385 -0.00090 -99999.00 -99999.00
2018 11 09 10 19 41.90981 -0.00416 -0.00384 -0.00092 -99999.00 -99999.00
2018 11 09 10 19 41.90983 -0.00416 -0.00385 -0.00093 -99999.00 -99999.00
2018 11 09 10 19 41.90985 -0.00417 -0.00383 -0.00093 -99999.00 -99999.00
2018 11 09 10 19 41.90987 -0.00417 -0.00385 -0.00092 -99999.00 -99999.00
2018 11 09 10 19 41.90989 -0.00417 -0.00386 -0.00090 -99999.00 -99999.00
2018 11 09 10 19 41.90990 -0.00418 -0.00386 -0.00090 -99999.00 -99999.00
2018 11 09 10 19 41.90992 -0.00417 -0.00385 -0.00090 -99999.00 -99999.00
2018 11 09 10 19 41.90994 -0.00415 -0.00384 -0.00091 -99999.00 -99999.00
2018 11 09 10 19 41.90996 -0.00417 -0.00385 -0.00093 -99999.00 -99999.00
2018 11 09 10 19 41.90997 -0.00418 -0.00384 -0.00092 -99999.00 -99999.00
2018 11 09 10 19 41.90999 -0.00416 -0.00386 -0.00091 -99999.00 -99999.00
2018 11 09 10 19 41.91001 -0.00416 -0.00386 -0.00090 -99999.00 -99999.00
2018 11 09 10 19 41.91003 -0.00419 -0.00384 -0.00089 -99999.00 -99999.00
2018 11 09 10 19 41.91004 -0.00416 -0.00386 -0.00091 -99999.00 -99999.00
2018 11 09 10 19 41.91006 -0.00415 -0.00385 -0.00092 -99999.00 -99999.00
2018 11 09 10 19 41.91008 -0.00418 -0.00386 -0.00093 -99999.00 -99999.00
2018 11 09 10 19 41.91009 -0.00417 -0.00384 -0.00092 -99999.00 -99999.00
2018 11 09 10 19 41.91011 -0.00416 -0.00385 -0.00092 -99999.00 -99999.00
2018 11 09 10 19 41.91013 -0.00418 -0.00384 -0.00091 -99999.00 -99999.00
2018 11 09 10 19 41.91014 -0.00418 -0.00384 -0.00089 -99999.00 -99999.00
2018 11 09 10 19 41.91016 -0.00417 -0.00384 -0.00091 -99999.00 -99999.00
2018 11 09 10 19 41.91018 -0.00417 -0.00384 -0.00091 -99999.00 -99999.00
2018 11 09 10 19 41.91020 -0.00417 -0.00385 -0.00092 -99999.00 -99999.00
2018 11 09 10 19 41.91021 -0.00417 -0.00386 -0.00092 -99999.00 -99999.00
2018 11 09 10 19 41.91023 -0.00417 -0.00385 -0.00091 -99999.00 -99999.00
2018 11 09 10 19 41.91025 -0.00418 -0.00385 -0.00091 -99999.00 -99999.00
2018 11 09 10 19 41.91027 -0.00417 -0.00387 -0.00089 -99999.00 -99999.00
2018 11 09 10 19 41.91028 -0.00417 -0.00384 -0.00092 -99999.00 -99999.00
2018 11 09 10 19 41.91030 -0.00417 -0.00386 -0.00093 -99999.00 -99999.00
2018 11 09 10 19 41.91032 -0.00418 -0.00386 -0.00092 -99999.00 -99999.00
2018 11 09 10 19 41.91034 -0.00417 -0.00385 -0.00092 -99999.00 -99999.00
2018 11 09 10 19 41.96923 -0.00418 -0.00387 -0.00092 -99999.00 -99999.00
2018 11 09 10 19 41.96926 -0.00417 -0.00385 -0.00091 -99999.00 -99999.00
2018 11 09 10 19 41.96927 -0.00417 -0.00385 -0.00090 -99999.00 -99999.00
2018 11 09 10 19 41.96929 -0.00418 -0.00384 -0.00090 -99999.00 -99999.00
2018 11 09 10 19 41.96931 -0.00416 -0.00385 -0.00092 -99999.00 -99999.00
2018 11 09 10 19 41.96932 -0.00417 -0.00384 -0.00092 -99999.00 -99999.00
2018 11 09 10 19 41.96934 -0.00417 -0.00384 -0.00091 -99999.00 -99999.00
2018 11 09 10 19 41.96936 -0.00417 -0.00385 -0.00090 -99999.00 -99999.00
2018 11 09 10 19 41.96938 -0.00418 -0.00384 -0.00090 -99999.00 -99999.00
2018 11 09 10 19 41.96939 -0.00417 -0.00383 -0.00090 -99999.00 -99999.00
2018 11 09 10 19 41.96941 -0.00418 -0.00384 -0.00091 -99999.00 -99999.00
2018 11 09 10 19 41.96943 -0.00419 -0.00385 -0.00092 -99999.00 -99999.00
2018 11 09 10 19 41.96944 -0.00416 -0.00386 -0.00093 -99999.00 -99999.00
2018 11 09 10 19 41.96946 -0.00417 -0.00385 -0.00091 -99999.00 -99999.00
2018 11 09 10 19 41.96948 -0.00417 -0.00385 -0.00092 -99999.00 -99999.00
2018 11 09 10 19 41.96949 -0.00416 -0.00385 -0.00090 -99999.00 -99999.00
2018 11 09 10 19 41.96951 -0.00417 -0.00383 -0.00092 -99999.00 -99999.00
2018 11 09 10 19 41.96953 -0.00416 -0.00383 -0.00093 -99999.00 -99999.00
2018 11 09 10 19 41.96955 -0.00417 -0.00385 -0.00093 -99999.00 -99999.00
2018 11 09 10 19 41.96956 -0.00417 -0.00385 -0.00092 -99999.00 -99999.00
2018 11 09 10 19 41.96958 -0.00417 -0.00385 -0.00092 -99999.00 -99999.00
2018 11 09 10 19 41.96961 -0.00418 -0.00384 -0.00090 -99999.00 -99999.00
2018 11 09 10 19 41.96962 -0.00416 -0.00385 -0.00092 -99999.00 -99999.00
2018 11 09 10 19 41.96964 -0.00418 -0.00384 -0.00093 -99999.00 -99999.00
2018 11 09 10 19 41.96966 -0.00419 -0.00384 -0.00092 -99999.00 -99999.00
2018 11 09 10 19 41.96968 -0.00417 -0.00385 -0.00092 -99999.00 -99999.00
2018 11 09 10 19 41.96969 -0.00416 -0.00386 -0.00093 -99999.00 -99999.00
2018 11 09 10 19 41.96971 -0.00419 -0.00384 -0.00091 -99999.00 -99999.00
2018 11 09 10 19 41.96973 -0.00416 -0.00385 -0.00090 -99999.00 -99999.00
2018 11 09 10 19 41.96976 -0.00416 -0.00386 -0.00091 -99999.00 -99999.00
2018 11 09 10 19 41.96978 -0.00419 -0.00384 -0.00090 -99999.00 -99999.00
2018 11 09 10 19 41.96980 -0.00416 -0.00383 -0.00092 -99999.00 -99999.00
2018 11 09 10 19 41.96981 -0.00416 -0.00384 -0.00092 -99999.00 -99999.00
2018 11 09 10 19 41.96983 -0.00417 -0.00384 -0.00092 -99999.00 -99999.00
2018 11 09 10 19 41.96985 -0.00418 -0.00386 -0.00090 -99999.00 -99999.00
2018 11 09 10 19 41.96987 -0.00416 -0.00386 -0.00091 -99999.00 -99999.00
2018 11 09 10 19 41.96989 -0.00419 -0.00385 -0.00091 -99999.00 -99999.00
2018 11 09 10 19 41.96990 -0.00417 -0.00386 -0.00091 -99999.00 -99999.00
2018 11 09 10 19 42.02850 -0.00417 -0.00385 -0.00093 -99999.00 -99999.00
2018 11 09 10 19 42.02852 -0.00417 -0.00384 -0.00095 -99999.00 -99999.00
2018 11 09 10 19 42.02855 -0.00419 -0.00385 -0.00091 -99999.00 -99999.00
2018 11 09 10 19 42.02858 -0.00417 -0.00385 -0.00090 -99999.00 -99999.00
2018 11 09 10 19 42.02861 -0.00415 -0.00384 -0.00090 -99999.00 -99999.00
2018 11 09 10 19 42.02863 -0.00417 -0.00384 -0.00088 -99999.00 -99999.00
2018 11 09 10 19 42.02866 -0.00416 -0.00386 -0.00091 -99999.00 -99999.00
2018 11 09 10 19 42.02868 -0.00417 -0.00384 -0.00090 -99999.00 -99999.00
2018 11 09 10 19 42.02871 -0.00418 -0.00386 -0.00092 -99999.00 -99999.00
2018 11 09 10 19 42.02874 -0.00418 -0.00385 -0.00090 -99999.00 -99999.00
2018 11 09 10 19 42.02876 -0.00416 -0.00385 -0.00091 -99999.00 -99999.00
2018 11 09 10 19 42.02879 -0.00417 -0.00385 -0.00090 -99999.00 -99999.00
2018 11 09 10 19 42.02882 -0.00418 -0.00386 -0.00091 -99999.00 -99999.00
2018 11 09 10 19 42.02884 -0.00417 -0.00385 -0.00091 -99999.00 -99999.00
2018 11 09 10 19 42.02887 -0.00417 -0.00384 -0.00092 -99999.00 -99999.00
2018 11 09 10 19 42.02890 -0.00417 -0.00386 -0.00092 -99999.00 -99999.00
2018 11 09 10 19 42.02893 -0.00416 -0.00385 -0.00092 -99999.00 -99999.00
2018 11 09 10 19 42.02896 -0.00415 -0.00384 -0.00090 -99999.00 -99999.00
2018 11 09 10 19 42.02899 -0.00415 -0.00384 -0.00089 -99999.00 -99999.00
2018 11 09 10 19 42.02901 -0.00416 -0.00384 -0.00090 -99999.00 -99999.00
2018 11 09 10 19 42.02902 -0.00416 -0.00384 -0.00092 -99999.00 -99999.00
2018 11 09 10 19 42.02904 -0.00418 -0.00383 -0.00092 -99999.00 -99999.00
2018 11 09 10 19 42.02906 -0.00417 -0.00384 -0.00089 -99999.00 -99999.00
2018 11 09 10 19 42.02908 -0.00417 -0.00385 -0.00090 -99999.00 -99999.00
2018 11 09 10 19 42.02909 -0.00419 -0.00385 -0.00091 -99999.00 -99999.00
2018 11 09 10 19 42.02912 -0.00416 -0.00385 -0.00090 -99999.00 -99999.00
2018 11 09 10 19 42.02915 -0.00415 -0.00385 -0.00091 -99999.00 -99999.00
2018 11 09 10 19 42.02917 -0.00417 -0.00384 -0.00092 -99999.00 -99999.00
2018 11 09 10 19 42.02919 -0.00418 -0.00385 -0.00091 -99999.00 -99999.00
2018 11 09 10 19 42.02920 -0.00418 -0.00383 -0.00093 -99999.00 -99999.00
2018 11 09 10 19 42.02922 -0.00414 -0.00383 -0.00090 -99999.00 -99999.00
2018 11 09 10 19 42.02924 -0.00418 -0.00384 -0.00089 -99999.00 -99999.00
2018 11 09 10 19 42.02926 -0.00416 -0.00384 -0.00089 -99999.00 -99999.00
2018 11 09 10 19 42.02928 -0.00416 -0.00386 -0.00093 -99999.00 -99999.00
2018 11 09 10 19 42.02930 -0.00416 -0.00384 -0.00093 -99999.00 -99999.00
2018 11 09 10 19 42.02932 -0.00418 -0.00385 -0.00093 -99999.00 -99999.00
2018 11 09 10 19 42.02934 -0.00416 -0.00385 -0.00091 -99999.00 -99999.00
2018 11 09 10 19 42.02935 -0.00417 -0.00385 -0.00091 -99999.00 -99999.00
2018 11 09 10 19 42.08807 -0.00418 -0.00385 -0.00090 -99999.00 -99999.00
2018 11 09 10 19 42.08809 -0.00416 -0.00385 -0.00090 -99999.00 -99999.00
2018 11 09 10 19 42.08810 -0.00417 -0.00386 -0.00092 -99999.00 -99999.00
2018 11 09 10 19 42.08812 -0.00418 -0.00386 -0.00092 -99999.00 -99999.00
2018 11 09 10 19 42.08814 -0.00416 -0.00385 -0.00092 -99999.00 -99999.00
2018 11 09 10 19 42.08815 -0.00416 -0.00385 -0.00089 -99999.00 -99999.00
2018 11 09 10 19 42.08817 -0.00417 -0.00385 -0.00090 -99999.00 -99999.00
2018 11 09 10 19 42.08819 -0.00418 -0.00385 -0.00088 -99999.00 -99999.00
2018 11 09 10 19 42.08821 -0.00416 -0.00384 -0.00090 -99999.00 -99999.00
2018 11 09 10 19 42.08822 -0.00418 -0.00383 -0.00093 -99999.00 -99999.00
2018 11 09 10 19 42.08824 -0.00417 -0.00385 -0.00093 -99999.00 -99999.00
2018 11 09 10 19 42.08826 -0.00417 -0.00385 -0.00091 -99999.00 -99999.00
2018 11 09 10 19 42.08828 -0.00417 -0.00384 -0.00090 -99999.00 -99999.00
2018 11 09 10 19 42.08829 -0.00416 -0.00384 -0.00088 -99999.00 -99999.00
2018 11 09 10 19 42.08831 -0.00415 -0.00385 -0.00090 -99999.00 -99999.00
2018 11 09 10 19 42.08833 -0.00417 -0.00384 -0.00090 -99999.00 -99999.00
2018 11 09 10 19 42.08834 -0.00418 -0.00384 -0.00093 -99999.00 -99999.00
2018 11 09 10 19 42.08836 -0.00416 -0.00386 -0.00091 -99999.00 -99999.00
2018 11 09 10 19 42.08838 -0.00417 -0.00384 -0.00092 -99999.00 -99999.00
2018 11 09 10 19 42.08840 -0.00417 -0.00385 -0.00089 -99999.00 -99999.00
2018 11 09 10 19 42.08841 -0.00416 -0.00385 -0.00089 -99999.00 -99999.00
2018 11 09 10 19 42.08843 -0.00417 -0.00384 -0.00091 -99999.00 -99999.00
2018 11 09 10 19 42.08845 -0.00418 -0.00386 -0.00090 -99999.00 -99999.00
2018 11 09 10 19 42.08847 -0.00417 -0.00384 -0.00092 -99999.00 -99999.00
2018 11 09 10 19 42.08848 -0.00417 -0.00384 -0.00092 -99999.00 -99999.00
2018 11 09 10 19 42.08850 -0.00418 -0.00384 -0.00090 -99999.00 -99999.00
2018 11 09 10 19 42.08852 -0.00418 -0.00385 -0.00090 -99999.00 -99999.00
2018 11 09 10 19 42.08853 -0.00417 -0.00385 -0.00090 -99999.00 -99999.00
2018 11 09 10 19 42.08855 -0.00417 -0.00385 -0.00090 -99999.00 -99999.00
2018 11 09 10 19 42.08857 -0.00418 -0.00386 -0.00089 -99999.00 -99999.00
2018 11 09 10 19 42.08859 -0.00416 -0.00383 -0.00093 -99999.00 -99999.00
2018 11 09 10 19 42.08860 -0.00415 -0.00385 -0.00090 -99999.00 -99999.00
2018 11 09 10 19 42.08862 -0.00416 -0.00384 -0.00091 -99999.00 -99999.00
2018 11 09 10 19 42.08864 -0.00416 -0.00386 -0.00090 -99999.00 -99999.00
2018 11 09 10 19 42.08866 -0.00418 -0.00384 -0.00090 -99999.00 -99999.00
2018 11 09 10 19 42.08867 -0.00417 -0.00385 -0.00090 -99999.00 -99999.00
2018 11 09 10 19 42.08869 -0.00419 -0.00384 -0.00092 -99999.00 -99999.00
2018 11 09 10 19 42.08871 -0.00416 -0.00386 -0.00092 -99999.00 -99999.00
2018 11 09 10 19 42.14737 -0.00417 -0.00386 -0.00091 -99999.00 -99999.00
2018 11 09 10 19 42.14741 -0.00417 -0.00385 -0.00090 -99999.00 -99999.00
2018 11 09 10 19 42.14743 -0.00416 -0.00384 -0.00089 -99999.00 -99999.00
2018 11 09 10 19 42.14744 -0.00417 -0.00385 -0.00089 -99999.00 -99999.00
2018 11 09 10 19 42.14746 -0.00417 -0.00386 -0.00091 -99999.00 -99999.00
2018 11 09 10 19 42.14748 -0.00416 -0.00384 -0.00092 -99999.00 -99999.00
2018 11 09 10 19 42.14750 -0.00415 -0.00384 -0.00091 -99999.00 -99999.00
2018 11 09 10 19 42.14752 -0.00417 -0.00385 -0.00092 -99999.00 -99999.00
2018 11 09 10 19 42.14754 -0.00416 -0.00385 -0.00092 -99999.00 -99999.00
2018 11 09 10 19 42.14755 -0.00415 -0.00385 -0.00090 -99999.00 -99999.00
2018 11 09 10 19 42.14757 -0.00417 -0.00383 -0.00090 -99999.00 -99999.00
2018 11 09 10 19 42.14759 -0.00419 -0.00385 -0.00092 -99999.00 -99999.00
2018 11 09 10 19 42.14761 -0.00417 -0.00385 -0.00093 -99999.00 -99999.00
2018 11 09 10 19 42.14762 -0.00417 -0.00384 -0.00092 -4.08 -99999.00
2018 11 09 10 19 42.14764 -0.00418 -0.00385 -0.00090 -99999.00 -99999.00
2018 11 09 10 19 42.14766 -0.00416 -0.00385 -0.00090 -99999.00 -99999.00
2018 11 09 10 19 42.14768 -0.00415 -0.00385 -0.00089 -99999.00 -99999.00
2018 11 09 10 19 42.14770 -0.00417 -0.00384 -0.00090 -99999.00 -99999.00
2018 11 09 10 19 42.14771 -0.00417 -0.00383 -0.00091 -99999.00 -99999.00
2018 11 09 10 19 42.14773 -0.00416 -0.00385 -0.00093 -99999.00 -99999.00
2018 11 09 10 19 42.14775 -0.00417 -0.00385 -0.00091 -99999.00 -99999.00
2018 11 09 10 19 42.14776 -0.00415 -0.00385 -0.00090 -99999.00 -99999.00
2018 11 09 10 19 42.14778 -0.00417 -0.00385 -0.00090 -99999.00 -99999.00
2018 11 09 10 19 42.14780 -0.00418 -0.00384 -0.00090 -99999.00 -99999.00
2018 11 09 10 19 42.14782 -0.00418 -0.00386 -0.00091 -99999.00 -99999.00
2018 11 09 10 19 42.14783 -0.00416 -0.00385 -0.00093 -99999.00 -99999.00
2018 11 09 10 19 42.14785 -0.00418 -0.00384 -0.00093 -99999.00 -99999.00
2018 11 09 10 19 42.14787 -0.00417 -0.00384 -0.00092 -99999.00 -99999.00
2018 11 09 10 19 42.14788 -0.00416 -0.00384 -0.00091 -99999.00 -99999.00
2018 11 09 10 19 42.14790 -0.00417 -0.00385 -0.00090 -99999.00 -99999.00
2018 11 09 10 19 42.14792 -0.00417 -0.00385 -0.00090 -99999.00 -99999.00
2018 11 09 10 19 42.14794 -0.00416 -0.00384 -0.00089 -99999.00 -99999.00
2018 11 09 10 19 42.14796 -0.00416 -0.00384 -0.00089 -99999.00 -99999.00
2018 11 09 10 19 42.14798 -0.00417 -0.00384 -0.00090 -99999.00 -99999.00
2018 11 09 10 19 42.14799 -0.00419 -0.00385 -0.00091 -99999.00 -99999.00
2018 11 09 10 19 42.14801 -0.00415 -0.00384 -0.00090 -99999.00 -99999.00
2018 11 09 10 19 42.14803 -0.00417 -0.00384 -0.00089 -99999.00 -99999.00
2018 11 09 10 19 42.14805 -0.00416 -0.00386 -0.00091 -99999.00 -99999.00
......@@ -11,7 +11,7 @@
//#include <driver_serial_emulate.hpp>
#include <driver_serial.hpp>
#include <driver_obs.hpp>
#include "Obs_Calibration.hpp"
#include "Obs_Calibration_Vector.hpp"
class Driver_Obs_Serial: protected driver_obs {
......@@ -35,7 +35,7 @@ Driver_Obs_Serial(std::string port, buffer_obs* buffer);
/** Constructor with calibration */
Driver_Obs_Serial(std::string port, buffer_obs* buffer,
Obs_Calibration* cal);
Obs_Calibration_Vector* cal);
/**
* Constructors of derived classes must call [set_term(term,termlen)]
......
......@@ -2,13 +2,14 @@
#define INCLUDE_OBS_CALIBRATION_VECTOR_HPP_
#include <vector>
#include <string> // String
#include <data_obs_vector.hpp>
#include <data_obs_scalar.hpp>
#include <Obs_Calibration.hpp>
#include <unordered_map>
class Obs_Calibration_Vector: public Obs_Calibration {
class Obs_Calibration_Vector {
//
// Private class variables
......@@ -25,6 +26,15 @@ private:
/** Non-zero calibration constants */
char do_cal;
/** ADC calibration constant */
struct adc_cal {
std::string offset;
std::string scale;
};
/** Map containing the ADC calibration key-value pairs */
std::unordered_map<std::string, struct adc_cal> map_ADC;
/** ADC Offsets */
std::vector<int> adc_offset;
/** ADC scale values */
......@@ -44,6 +54,7 @@ public:
/** Constructor with vector values */
Obs_Calibration_Vector(double* offset, double* scale);
/** Constructor with individual values */
Obs_Calibration_Vector(double scale_X, double scale_Y, double scale_Z,
double offset_X=0, double offset_Y=0, double offset_Z=0);
......@@ -61,10 +72,18 @@ public:
int calibrate(data_obs_scalar* sdata);
/** Get the calibration constants for the ADC */
int get_adc_calibrate(int* offset, int* scale, int config);
int get_adc_calibrate(std::string config, std::string &offset,
std::string &scale);
/** Add a calibration constant for the ADC */
int add_adc_calibrate(int offset, int scale, int config);
int add_adc_calibrate(std::string config, std::string offset,
std::string scale);
/** Save the calibration constants to file */
int save_adc_calibrate(std::string filename);
/** Read the calibration constants from file */
int read_adc_calibrate(std::string filename);
};
......
......@@ -23,13 +23,13 @@ class data_obs
//
// Time
protected: int year;
protected: int mon;
protected: int day;
protected: int hour;
protected: int min;
protected: int sec;
protected: int msec;
protected: int year;
protected: int mon;
protected: int day;
protected: int hour;
protected: int min;
protected: int sec;
protected: long msec;
//
// Constructors
......@@ -40,7 +40,8 @@ public: data_obs();
/** Copy Constructor */
public: data_obs(data_obs* data);
/** Initialize with given time */
public: data_obs(int year, int mon, int day, int hour, int min, int sec, int msec);
public: data_obs(int year, int mon, int day, int hour, int min, int sec,
long msec);
//
// Operators
......@@ -58,25 +59,27 @@ bool operator < (const data_obs data1) const {
public: int smooth_msec(int prec);
/** Set the time of the data */
public: int set_time(int year, int mon, int day, int hour, int min, int sec, int msec);
public: int set_time(int year, int mon, int day, int hour, int min, int sec,
long msec);
/** Set the time of the data */
public: int set_time(struct timespec *time);
/** Set the time of the data */
public: int set_time(data_obs* data);
/** Get the time of the data */
public: int get_time(int* year, int* mon, int* day, int* hour, int* min, int* sec, int* msec);
public: int get_time(int* year, int* mon, int* day, int* hour, int* min, int* sec,
long* msec);
/** Get time as timespec */
public: int get_time(struct timespec* time) const;
/** Get single parts of the time */
public: int get_year();
public: int get_mon ();
public: int get_day ();
public: int get_hour();
public: int get_min ();
public: int get_sec ();
public: int get_msec();
public: int get_year();
public: int get_mon ();
public: int get_day ();
public: int get_hour();
public: int get_min ();
public: int get_sec ();
public: long get_msec();
/** Get a string representation */
......
......@@ -15,7 +15,7 @@
// Custom C++ Headers
#include <buffer_obs.hpp> // Buffer of observatory data
#include <data_obs_scalar.hpp> // Scalar observatory data
#include <Obs_Calibration.hpp> // Calibration constants
#include <Obs_Calibration_Vector.hpp> // Calibration constants
class driver_obs
{
......@@ -30,7 +30,7 @@ protected:
buffer_obs* buffer;
/** The calibration constants of the instrument */
Obs_Calibration* cal;
Obs_Calibration_Vector* cal;
/** The selected sampling frequency */
double freq;
......
......@@ -29,7 +29,7 @@ Driver_Obs_Serial::Driver_Obs_Serial(std::string port, buffer_obs* buffer) :
}
Driver_Obs_Serial::Driver_Obs_Serial(std::string port, buffer_obs* buffer,
Obs_Calibration* cal) :
Obs_Calibration_Vector* cal) :
serial(port) {
this->buffer = buffer;
......
// C++ headers
#include <string> // String
#include <iostream> // String streams
#include <fstream> // File operations
#include <unordered_map>
#include <Obs_Calibration_Vector.hpp>
#include <stdio.h>
......@@ -51,20 +57,6 @@ Obs_Calibration_Vector::Obs_Calibration_Vector(
}
}
/*
adc_config.push_back(0x000203);
adc_scale.push_back(0x324944);
adc_offset.push_back(0xFFF35B);
adc_config.push_back(0x010203);
adc_scale.push_back(0x323260);
adc_offset.push_back(0xFFF001);
adc_config.push_back(0x020203);
adc_scale.push_back(0x32427C);
adc_offset.push_back(0xFFF598);
*/
}
/****************************************************************************
......@@ -136,18 +128,21 @@ int Obs_Calibration_Vector::calibrate(data_obs_scalar* sdata){
* Calibration constants for the ADC *
* *
***************************************************************************/
int Obs_Calibration_Vector::get_adc_calibrate(int* offset, int* scale, int config){
for (int i=0; i<adc_config.size(); i++){
//printf("------------ TEST %d: %06X %06X\n",i,adc_config.at(i),config);
if (adc_config.at(i)==config){
*offset=adc_offset.at(i);
*scale =adc_scale.at(i);
return(0);
}
}
return(-1);
int Obs_Calibration_Vector::get_adc_calibrate(std::string config,
std::string &offset, std::string &scale){
std::unordered_map<std::string, struct adc_cal>::iterator it;
struct adc_cal cal;
it = map_ADC.find(config);
if (it != map_ADC.end()) {
cal = it->second;
scale = cal.scale;
offset = cal.offset;
}
return(-1);
}
......@@ -156,8 +151,80 @@ int Obs_Calibration_Vector::get_adc_calibrate(int* offset, int* scale, int confi
* Calibration constants for the ADC *
* *
***************************************************************************/
int Obs_Calibration_Vector::add_adc_calibrate(int offset, int scale, int config){
int Obs_Calibration_Vector::add_adc_calibrate(std::string config,
std::string offset, std::string scale){
return(0);
struct adc_cal cal;
cal.offset = offset;
cal.scale = scale;
map_ADC[config]=cal;
return(0);
}
/****************************************************************************
*
* Save the calibration constants to file
*
***************************************************************************/
int Obs_Calibration_Vector::save_adc_calibrate(std::string filename) {
/* PROBLEM: Save the comments in ADC file when new configurations are
* stored.
* SOLUTION: Save whole file in string before writing. Then, rewrite
* file. Comment out duplicates instead of overwriting.
*/
return(0);
}
/****************************************************************************
*
* Read the calibration constants to file
*
***************************************************************************/
int Obs_Calibration_Vector::read_adc_calibrate(std::string filename) {
std::ifstream file;
std::string line;
std::string config; // configuration string used as key
struct adc_cal cal; // calibration constants used as value
size_t pos_c;
// Open file
file.open(filename,std::ios::out);
// Read from file
if (file.is_open()) {
while ( getline (file,line) ) {
// Find comment token ("#")
pos_c = line.find('#');
line=line.substr(0,pos_c);
if (line.size()==0) continue;
// Find configuration string
pos_c=line.find(',');
config=line.substr(0,pos_c);
// Find calibration string
line=line.substr(pos_c+1);
pos_c=line.find(',');
cal.offset = line.substr(0,pos_c);
cal.scale = line.substr(pos_c+1);
// Save key-value pair
map_ADC[config]=cal;
std::cout << "Read ADC: " << config << " " << cal.offset <<
" " << cal.scale << std::endl;
}
file.close();
} else {
std::cout << "Unable to open file: " << filename << std::endl;
}
return 0;
}
<
......@@ -36,7 +36,7 @@ data_obs::data_obs() {
// Copy Constructor
data_obs::data_obs(int year, int mon, int day, int hour, int min, int sec,
int msec) {
long msec) {
set_time(year, mon, day, hour, min, sec, msec);
......@@ -96,7 +96,7 @@ int data_obs::set_time(data_obs* data) {
* *
********************************************************************************/
int data_obs::set_time(int year, int mon, int day, int hour, int min, int sec,
int msec) {
long msec) {
// Set the time of the data
data_obs::year = year;
......@@ -131,7 +131,7 @@ int data_obs::set_time(struct timespec* time) {
hour = t.tm_hour;
min = t.tm_min;
sec = t.tm_sec;
msec = (int) (time->tv_nsec / 1e6);
msec = time->tv_nsec;
return (0);
......@@ -143,7 +143,7 @@ int data_obs::set_time(struct timespec* time) {
* *
********************************************************************************/
int data_obs::get_time(int* year, int* mon, int* day, int* hour, int* min,
int* sec, int* msec) {
int* sec, long* msec) {
*year = data_obs::year;
*mon = data_obs::mon;
......@@ -170,12 +170,11 @@ int data_obs::get_time(struct timespec* time) const{
tm.tm_mon = mon - 1;
tm.tm_mday = day;
tm.tm_hour = hour;
;
tm.tm_min = min;
tm.tm_sec = sec;
time->tv_sec = timegm(&tm);
time->tv_nsec = (time_t) msec * 1e6;
time->tv_sec = timegm(&tm);
time->tv_nsec = msec;
return (0);
......@@ -210,7 +209,7 @@ int data_obs::get_sec() {
return (sec);