View Issue Details

IDProjectCategoryView StatusLast Update
0002097CCdciel[All Projects] Generalpublic19-03-30 22:26
ReporterhanAssigned ToPatrick Chevalley 
PrioritynormalSeveritytrivialReproducibilityhave not tried
Status resolvedResolutionfixed 
Product Version 
Target Version1.0Fixed in Version 
Summary0002097: Focuser temperature compensation from relative to absolute
DescriptionWhen I start imaging the focus is normally far off. The temperature at the beginning of the evening is much higher then the last temperature of previous clear night. So the difference is maybe 10 degrees C. This is typical for APO's including the expensive ones since the glass-> air diffraction coefficient changes.

I would suggest to modify the temperature compensation from a relative one to an absolute one. So that the focus is maintained between the last cold session and a new one. It the CCDCiel program is started, the focuser takes a new position.

Currently only the FocuserTempCoeff="100" is stored. I would suggest to add something like FocuserRefTemp="10" (or FocusLastTemp) This should replace the variable FocuserLastTemp in the routine below.

The focuser temperature should be stored as focuserRefTemp as soon the program is closes. This value could also be used for "focus on temp change"

Existing code:
  // check focuser temperature compensation
  if focuser.hasTemperature and (FocuserTempCoeff<>0.0) and (FocuserLastTemp<>NullCoord) and (camera.FrameType=LIGHT) then begin
    // only if temperature change by more than 0.5 C
    if abs(FocuserLastTemp-FocuserTemp)>0.5 then begin
      p:=f_focuser.TempOffset(FocuserLastTemp,FocuserTemp);
      if focuser.hasAbsolutePosition and (p<>0) then begin
        NewMessage(Format(rsFocuserTempe2, [FormatFloat(f1, TempDisplay(TemperatureScale,FocuserTemp))+TempLabel, IntToStr(p)]),2);
        focuser.Position:=focuser.Position+p;
      end
      else if focuser.hasRelativePosition and (p<>0) then begin
        NewMessage(Format(rsFocuserTempe2, [FormatFloat(f1, TempDisplay(TemperatureScale,FocuserTemp))+TempLabel, IntToStr(p)]),2);
        if p>0 then focuser.FocusOut else focuser.FocusIn;
        focuser.RelPosition:=abs(p);
      end;
      wait(1);
    end;
  end;


TagsNo tags attached.

Activities

Patrick Chevalley

19-03-12 21:25

administrator   ~0005471

If I understand correctly you want the focuser to move to a new position immediately after it is connected.
This new position must be based on the temperature difference between the time of last focus done the previous night and the current temperature.

Do you really expect this can replace the first auto-focus at the beginning of the night?
If a first auto-focus run is still necessary, what is the interest to do that?

I also see a risk the focuser temperature probe react much more quickly than the optic when the equipment is put outside. If the program is started at this time, before temperature are stabilized, the applied compensation can be totally wrong.

han

19-03-12 22:41

reporter   ~0005472

This is intended for a permanent setup but will also work for a mobile setup. When I start imaging the focus is pretty far off from the V-curve since focus position it based on last temperature of previous night and requires sometimes some manual tweaking and often 3 auto-focus runs. When I would start with a new imaging exercise, the temperature compensation will immediately move to the best predictable position, making the first auto focus easier. So it is only an improvement of the initial focus position. After the initial correction the temperature compensation will behave exactly the same as in the existing setup.

>>I also see a risk the focuser temperature probe react much more quickly than the optic when the equipment is put outside.
>>If the program is started at this time, before temperature are stabilized, the applied compensation can be totally wrong.

That doesn't change in the new setup . The proposal will only introduce a first rough correction which should be fully adequate if the temp compensation factor is set correctly. If the focus drift is linear with temperature then the delta t (measured temperature - temperature previous night) will be the best indication how to set the focuser even in a mobile setup.

It will be a small correction. My temp compensation setting is about 120 steps/degree. With a range 0..65535. So 10 degrees difference will result in 1200 steps or about 1.8% of the range, so relative a small correction. but my V-curve is maybe 600 steps wide, so 1200 steps is significant improvement.

Patrick Chevalley

19-03-13 09:38

administrator   ~0005473

Thank you for the explanation and the numerical values, I have not imagined this can be so large.

So a solution is simply to save and restore FocuserLastTemp and move by the offset at initialization, this way the temperature compensation is applied immediately for the first autofocus.

The only problem is if another profile is loaded I must skip this value. For example if you load a profile for another camera, last used 6 month ago, you not want to apply this correction.
Maybe also skip if the value is too old, maybe the limit can be one week or one month.

han

19-03-13 17:16

reporter   ~0005474

I would not bother for other cameras. If I swap cameras, the focus will be totally off anyhow due to the different dimensions.

For other profiles, yes that will disturb the focus but the influence is limited The offset in the resulting focus will be in same range (<=1.8% of focuser range) as the current setup so I think it is easier to ignore. So I would not make it too complicated and keep it simple and just use the last temperature recorded.

One of the local club members has an very expensive Takahashi FSQ-106 and complains about the same temperature problems. He is using the program SGP and has also problems to find the focus again after an cold night. Any newton will have a more stable focus.

Patrick Chevalley

19-03-13 19:23

administrator   ~0005475

This is implemented, but untested because I am not at home.
Can you test and tell me if this look OK.
https://github.com/pchev/ccdciel/commit/3838f020b326c4891b638a33ce56871bb9a366c3

han

19-03-13 23:53

reporter   ~0005476

Did a test by by manipulating the FocuserLastTemp="" in the *.conf file and functionality looks good. In addition already doing the first field trial by imaging under clear sky conditions. I will need some more clear nights for a final verdict but this looks a good feature for APO owners.

han

19-03-30 20:55

reporter   ~0005520

This mod works very well for me. The telescope is in focus after a large temperature difference. No issues.

Patrick Chevalley

19-03-30 22:26

administrator   ~0005524

Good, thank you.
I close the issue now.

Issue History

Date Modified Username Field Change
19-03-12 15:00 han New Issue
19-03-12 21:25 Patrick Chevalley Assigned To => Patrick Chevalley
19-03-12 21:25 Patrick Chevalley Status new => feedback
19-03-12 21:25 Patrick Chevalley Note Added: 0005471
19-03-12 22:41 han Note Added: 0005472
19-03-12 22:41 han Status feedback => assigned
19-03-13 09:38 Patrick Chevalley Note Added: 0005473
19-03-13 17:16 han Note Added: 0005474
19-03-13 19:23 Patrick Chevalley Note Added: 0005475
19-03-13 23:53 han Note Added: 0005476
19-03-30 20:55 han Note Added: 0005520
19-03-30 22:26 Patrick Chevalley Status assigned => resolved
19-03-30 22:26 Patrick Chevalley Resolution open => fixed
19-03-30 22:26 Patrick Chevalley Target Version => 1.0
19-03-30 22:26 Patrick Chevalley Note Added: 0005524